@siemens/ix 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (892) hide show
  1. package/components/a11y.js +1 -1
  2. package/components/a11y.js.map +1 -1
  3. package/components/application-header.js +51 -15
  4. package/components/application-header.js.map +1 -1
  5. package/components/avatar.js +1 -1
  6. package/components/avatar.js.map +1 -1
  7. package/components/card-accordion.js +1 -1
  8. package/components/card-accordion.js.map +1 -1
  9. package/components/card-content.js +1 -1
  10. package/components/card-title.js +1 -1
  11. package/components/card.js +3 -3
  12. package/components/card.js.map +1 -1
  13. package/components/col.js.map +1 -1
  14. package/components/context.js +1 -1
  15. package/components/context.js.map +1 -1
  16. package/components/divider.js +1 -1
  17. package/components/dropdown-controller.js +140 -0
  18. package/components/dropdown-controller.js.map +1 -0
  19. package/components/dropdown-item.js +4 -4
  20. package/components/dropdown-item.js.map +1 -1
  21. package/components/dropdown.js +13 -145
  22. package/components/dropdown.js.map +1 -1
  23. package/components/filter-chip.js +1 -1
  24. package/components/floating-ui.dom.esm.js +533 -60
  25. package/components/floating-ui.dom.esm.js.map +1 -1
  26. package/components/group-context-menu.js +1 -1
  27. package/components/group-context-menu.js.map +1 -1
  28. package/components/group-item.js +4 -8
  29. package/components/group-item.js.map +1 -1
  30. package/components/index.js +1 -0
  31. package/components/index.js.map +1 -1
  32. package/components/ix-action-card.js +1 -1
  33. package/components/ix-action-card.js.map +1 -1
  34. package/components/ix-application-sidebar.js +1 -1
  35. package/components/ix-application-switch-modal.js +1 -1
  36. package/components/ix-application.js +2 -2
  37. package/components/ix-application.js.map +1 -1
  38. package/components/ix-basic-navigation.js +18 -12
  39. package/components/ix-basic-navigation.js.map +1 -1
  40. package/components/ix-blind.js.map +1 -1
  41. package/components/ix-breadcrumb.js +2 -2
  42. package/components/ix-card-list.js +6 -6
  43. package/components/ix-card-list.js.map +1 -1
  44. package/components/ix-category-filter.js +8 -4
  45. package/components/ix-category-filter.js.map +1 -1
  46. package/components/ix-chip.js +4 -4
  47. package/components/ix-chip.js.map +1 -1
  48. package/components/ix-content.js +3 -3
  49. package/components/ix-css-grid-item.js +1 -1
  50. package/components/ix-drawer.js +2 -2
  51. package/components/ix-dropdown-header.js +1 -1
  52. package/components/ix-dropdown-quick-actions.js +1 -1
  53. package/components/ix-event-list-item.js +4 -4
  54. package/components/ix-event-list.js +2 -2
  55. package/components/ix-expanding-search.js +4 -4
  56. package/components/ix-flip-tile-content.js +1 -1
  57. package/components/ix-flip-tile.js +4 -4
  58. package/components/ix-form-field.js +1 -1
  59. package/components/ix-group.js +69 -44
  60. package/components/ix-group.js.map +1 -1
  61. package/components/ix-icon-toggle-button.js +1 -1
  62. package/components/ix-input-group.js +1 -1
  63. package/components/ix-key-value-list.js +1 -1
  64. package/components/ix-kpi.js +3 -3
  65. package/components/ix-kpi.js.map +1 -1
  66. package/components/ix-link-button.js +3 -3
  67. package/components/ix-map-navigation.js +21 -15
  68. package/components/ix-map-navigation.js.map +1 -1
  69. package/components/ix-menu-about-item.js +1 -1
  70. package/components/ix-menu-about-news.js +4 -4
  71. package/components/ix-menu-avatar.js +2 -2
  72. package/components/ix-menu-category.js +5 -5
  73. package/components/ix-menu-settings-item.js +1 -1
  74. package/components/ix-menu.js +12 -12
  75. package/components/ix-menu.js.map +1 -1
  76. package/components/ix-message-bar.js +1 -1
  77. package/components/ix-modal-example.js +1 -1
  78. package/components/ix-modal-footer.js +2 -2
  79. package/components/ix-modal-footer.js.map +1 -1
  80. package/components/ix-modal-loading.js +1 -1
  81. package/components/ix-modal.js +1 -1
  82. package/components/ix-modal.js.map +1 -1
  83. package/components/ix-pagination.js +3 -3
  84. package/components/ix-pagination.js.map +1 -1
  85. package/components/ix-pane-layout.js +1 -1
  86. package/components/ix-pane.js.map +1 -1
  87. package/components/ix-pill.js +4 -4
  88. package/components/ix-pill.js.map +1 -1
  89. package/components/ix-playground-internal.js +1 -1
  90. package/components/ix-playground-internal.js.map +1 -1
  91. package/components/ix-push-card.js +1 -1
  92. package/components/ix-push-card.js.map +1 -1
  93. package/components/ix-slider.js +20 -13
  94. package/components/ix-slider.js.map +1 -1
  95. package/components/ix-split-button-item.js +1 -1
  96. package/components/ix-tile.js +4 -4
  97. package/components/ix-tile.js.map +1 -1
  98. package/components/ix-toast-container.js.map +1 -1
  99. package/components/ix-toggle-button.js +2 -2
  100. package/components/ix-toggle.js +2 -2
  101. package/components/ix-tree.js +21 -7
  102. package/components/ix-tree.js.map +1 -1
  103. package/components/ix-upload.js +3 -3
  104. package/components/ix-upload.js.map +1 -1
  105. package/components/ix-validation-tooltip.js +2 -2
  106. package/components/ix-workflow-step.js +3 -3
  107. package/components/ix-workflow-step.js.map +1 -1
  108. package/components/ix-workflow-steps.js +1 -1
  109. package/components/ix-workflow-steps.js.map +1 -1
  110. package/components/layout-grid.js +2 -2
  111. package/components/layout-grid.js.map +1 -1
  112. package/components/listener.js +1 -1
  113. package/components/listener.js.map +1 -1
  114. package/components/logical-filter-operator.js +1 -1
  115. package/components/logical-filter-operator.js.map +1 -1
  116. package/components/map-navigation-overlay.js +2 -2
  117. package/components/menu-avatar-item.js +1 -1
  118. package/components/menu-expand-icon.js +1 -1
  119. package/components/menu-expand-icon.js.map +1 -1
  120. package/components/menu-item.js +14 -14
  121. package/components/menu-item.js.map +1 -1
  122. package/components/modal-content.js +1 -1
  123. package/components/modal-content.js.map +1 -1
  124. package/components/modal-header.js +1 -1
  125. package/components/modal-header.js.map +1 -1
  126. package/components/row.js +1 -1
  127. package/components/row.js.map +1 -1
  128. package/components/select-item.js +1 -1
  129. package/components/select.js +27 -30
  130. package/components/select.js.map +1 -1
  131. package/components/service.js +2 -2
  132. package/components/service.js.map +1 -1
  133. package/components/shadow-dom.js +1 -1
  134. package/components/shadow-dom.js.map +1 -1
  135. package/components/spinner.js +1 -1
  136. package/components/tab-item.js +3 -3
  137. package/components/tab-item.js.map +1 -1
  138. package/components/tabs.js +77 -43
  139. package/components/tabs.js.map +1 -1
  140. package/components/toast.js +2 -2
  141. package/components/toast.js.map +1 -1
  142. package/components/tooltip.js +24 -22
  143. package/components/tooltip.js.map +1 -1
  144. package/components/tree-item.js +8 -8
  145. package/components/tree-item.js.map +1 -1
  146. package/dist/cjs/{a11y-d3ce56d1.js → a11y-eba397e8.js} +2 -2
  147. package/dist/cjs/{a11y-d3ce56d1.js.map → a11y-eba397e8.js.map} +1 -1
  148. package/dist/cjs/{context-98f4a0b3.js → context-938f7470.js} +2 -2
  149. package/dist/cjs/{context-98f4a0b3.js.map → context-938f7470.js.map} +1 -1
  150. package/dist/cjs/dropdown-controller-5ef3d018.js +144 -0
  151. package/dist/cjs/dropdown-controller-5ef3d018.js.map +1 -0
  152. package/dist/cjs/{floating-ui.dom.esm-94b4d17c.js → floating-ui.dom.esm-9dde6cd6.js} +534 -60
  153. package/dist/cjs/floating-ui.dom.esm-9dde6cd6.js.map +1 -0
  154. package/dist/cjs/index.cjs.js +3 -2
  155. package/dist/cjs/index.cjs.js.map +1 -1
  156. package/dist/cjs/ix-action-card.cjs.entry.js +1 -1
  157. package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
  158. package/dist/cjs/ix-application-header.cjs.entry.js +35 -9
  159. package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
  160. package/dist/cjs/ix-application-sidebar.cjs.entry.js +1 -1
  161. package/dist/cjs/ix-application-switch-modal.cjs.entry.js +1 -1
  162. package/dist/cjs/ix-application.cjs.entry.js +5 -5
  163. package/dist/cjs/ix-application.cjs.entry.js.map +1 -1
  164. package/dist/cjs/ix-avatar_2.cjs.entry.js +3 -3
  165. package/dist/cjs/ix-avatar_2.cjs.entry.js.map +1 -1
  166. package/dist/cjs/ix-basic-navigation.cjs.entry.js +4 -4
  167. package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
  168. package/dist/cjs/ix-blind.cjs.entry.js +1 -1
  169. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  170. package/dist/cjs/ix-breadcrumb-item.cjs.entry.js +1 -1
  171. package/dist/cjs/ix-breadcrumb.cjs.entry.js +3 -3
  172. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +2 -2
  173. package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
  174. package/dist/cjs/ix-card-list.cjs.entry.js +6 -6
  175. package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
  176. package/dist/cjs/ix-card_2.cjs.entry.js +4 -4
  177. package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
  178. package/dist/cjs/ix-category-filter.cjs.entry.js +9 -5
  179. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  180. package/dist/cjs/ix-chip.cjs.entry.js +4 -4
  181. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
  182. package/dist/cjs/ix-col_4.cjs.entry.js +4 -4
  183. package/dist/cjs/ix-col_4.cjs.entry.js.map +1 -1
  184. package/dist/cjs/ix-content.cjs.entry.js +4 -4
  185. package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
  186. package/dist/cjs/ix-divider.cjs.entry.js +1 -1
  187. package/dist/cjs/ix-drawer.cjs.entry.js +2 -2
  188. package/dist/cjs/ix-dropdown-header.cjs.entry.js +1 -1
  189. package/dist/cjs/ix-dropdown-item.cjs.entry.js +4 -4
  190. package/dist/cjs/ix-dropdown-item.cjs.entry.js.map +1 -1
  191. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
  192. package/dist/cjs/ix-dropdown.cjs.entry.js +26 -158
  193. package/dist/cjs/ix-dropdown.cjs.entry.js.map +1 -1
  194. package/dist/cjs/ix-event-list-item.cjs.entry.js +5 -5
  195. package/dist/cjs/ix-event-list.cjs.entry.js +2 -2
  196. package/dist/cjs/ix-expanding-search.cjs.entry.js +4 -4
  197. package/dist/cjs/ix-filter-chip_2.cjs.entry.js +2 -2
  198. package/dist/cjs/ix-flip-tile-content.cjs.entry.js +1 -1
  199. package/dist/cjs/ix-flip-tile.cjs.entry.js +4 -4
  200. package/dist/cjs/ix-form-field.cjs.entry.js +1 -1
  201. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js +6 -10
  202. package/dist/cjs/ix-group-context-menu_2.cjs.entry.js.map +1 -1
  203. package/dist/cjs/ix-group.cjs.entry.js +68 -44
  204. package/dist/cjs/ix-group.cjs.entry.js.map +1 -1
  205. package/dist/cjs/ix-icon-button_2.cjs.entry.js +2 -2
  206. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +2 -2
  207. package/dist/cjs/ix-input-group.cjs.entry.js +2 -2
  208. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  209. package/dist/cjs/ix-kpi.cjs.entry.js +3 -3
  210. package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
  211. package/dist/cjs/ix-link-button.cjs.entry.js +3 -3
  212. package/dist/cjs/ix-map-navigation-overlay.cjs.entry.js +2 -2
  213. package/dist/cjs/ix-map-navigation.cjs.entry.js +4 -4
  214. package/dist/cjs/ix-map-navigation.cjs.entry.js.map +1 -1
  215. package/dist/cjs/ix-menu-about-item.cjs.entry.js +1 -1
  216. package/dist/cjs/ix-menu-about-news.cjs.entry.js +4 -4
  217. package/dist/cjs/ix-menu-avatar.cjs.entry.js +3 -3
  218. package/dist/cjs/ix-menu-category.cjs.entry.js +6 -6
  219. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js +2 -2
  220. package/dist/cjs/ix-menu-expand-icon.cjs.entry.js.map +1 -1
  221. package/dist/cjs/ix-menu-item.cjs.entry.js +13 -13
  222. package/dist/cjs/ix-menu-item.cjs.entry.js.map +1 -1
  223. package/dist/cjs/ix-menu-settings-item.cjs.entry.js +1 -1
  224. package/dist/cjs/ix-menu.cjs.entry.js +14 -14
  225. package/dist/cjs/ix-menu.cjs.entry.js.map +1 -1
  226. package/dist/cjs/ix-message-bar.cjs.entry.js +1 -1
  227. package/dist/cjs/ix-modal-content_2.cjs.entry.js +3 -3
  228. package/dist/cjs/ix-modal-content_2.cjs.entry.js.map +1 -1
  229. package/dist/cjs/ix-modal-example.cjs.entry.js +1 -1
  230. package/dist/cjs/ix-modal-footer.cjs.entry.js +2 -2
  231. package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -1
  232. package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
  233. package/dist/cjs/ix-modal.cjs.entry.js +3 -3
  234. package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
  235. package/dist/cjs/ix-pagination.cjs.entry.js +4 -4
  236. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  237. package/dist/cjs/ix-pane-layout.cjs.entry.js +2 -2
  238. package/dist/cjs/ix-pane.cjs.entry.js +1 -1
  239. package/dist/cjs/ix-pane.cjs.entry.js.map +1 -1
  240. package/dist/cjs/ix-pill.cjs.entry.js +4 -4
  241. package/dist/cjs/ix-pill.cjs.entry.js.map +1 -1
  242. package/dist/cjs/ix-playground-internal.cjs.entry.js +1 -1
  243. package/dist/cjs/ix-playground-internal.cjs.entry.js.map +1 -1
  244. package/dist/cjs/ix-push-card.cjs.entry.js +1 -1
  245. package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
  246. package/dist/cjs/ix-select.cjs.entry.js +28 -31
  247. package/dist/cjs/ix-select.cjs.entry.js.map +1 -1
  248. package/dist/cjs/ix-slider.cjs.entry.js +22 -15
  249. package/dist/cjs/ix-slider.cjs.entry.js.map +1 -1
  250. package/dist/cjs/ix-split-button-item.cjs.entry.js +1 -1
  251. package/dist/cjs/ix-tab-item_2.cjs.entry.js +74 -44
  252. package/dist/cjs/ix-tab-item_2.cjs.entry.js.map +1 -1
  253. package/dist/cjs/ix-tile.cjs.entry.js +4 -4
  254. package/dist/cjs/ix-tile.cjs.entry.js.map +1 -1
  255. package/dist/cjs/ix-toast-container.cjs.entry.js.map +1 -1
  256. package/dist/cjs/ix-toast.cjs.entry.js +2 -2
  257. package/dist/cjs/ix-toast.cjs.entry.js.map +1 -1
  258. package/dist/cjs/ix-toggle-button.cjs.entry.js +3 -3
  259. package/dist/cjs/ix-toggle.cjs.entry.js +3 -3
  260. package/dist/cjs/ix-tooltip.cjs.entry.js +25 -23
  261. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
  262. package/dist/cjs/ix-tree-item.cjs.entry.js +8 -8
  263. package/dist/cjs/ix-tree-item.cjs.entry.js.map +1 -1
  264. package/dist/cjs/ix-tree.cjs.entry.js +21 -7
  265. package/dist/cjs/ix-tree.cjs.entry.js.map +1 -1
  266. package/dist/cjs/ix-upload.cjs.entry.js +3 -3
  267. package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
  268. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +3 -3
  269. package/dist/cjs/ix-workflow-step.cjs.entry.js +3 -3
  270. package/dist/cjs/ix-workflow-step.cjs.entry.js.map +1 -1
  271. package/dist/cjs/ix-workflow-steps.cjs.entry.js +1 -1
  272. package/dist/cjs/ix-workflow-steps.cjs.entry.js.map +1 -1
  273. package/dist/cjs/{listener-bc3e7c0c.js → listener-a124ed49.js} +2 -2
  274. package/dist/cjs/{listener-bc3e7c0c.js.map → listener-a124ed49.js.map} +1 -1
  275. package/dist/cjs/loader.cjs.js +1 -1
  276. package/dist/cjs/{logical-filter-operator-5564322e.js → logical-filter-operator-4917393f.js} +2 -2
  277. package/dist/cjs/{logical-filter-operator-5564322e.js.map → logical-filter-operator-4917393f.js.map} +1 -1
  278. package/dist/cjs/{service-a42add5f.js → service-39a8e5fe.js} +3 -3
  279. package/dist/cjs/service-39a8e5fe.js.map +1 -0
  280. package/dist/cjs/{shadow-dom-73f9d553.js → shadow-dom-454acc38.js} +2 -2
  281. package/dist/cjs/{shadow-dom-73f9d553.js.map → shadow-dom-454acc38.js.map} +1 -1
  282. package/dist/cjs/siemens-ix.cjs.js +1 -1
  283. package/dist/collection/components/action-card/action-card.js +6 -3
  284. package/dist/collection/components/action-card/action-card.js.map +1 -1
  285. package/dist/collection/components/application/application.css +26 -6
  286. package/dist/collection/components/application/application.js +1 -1
  287. package/dist/collection/components/application/application.js.map +1 -1
  288. package/dist/collection/components/application-header/application-header.css +9 -7
  289. package/dist/collection/components/application-header/application-header.js +78 -6
  290. package/dist/collection/components/application-header/application-header.js.map +1 -1
  291. package/dist/collection/components/application-header/application-switch-modal/application-switch-modal.js +1 -1
  292. package/dist/collection/components/application-sidebar/application-sidebar.js +1 -1
  293. package/dist/collection/components/avatar/avatar.css +42 -0
  294. package/dist/collection/components/basic-navigation/basic-navigation.js +7 -4
  295. package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
  296. package/dist/collection/components/blind/blind.css +1 -1
  297. package/dist/collection/components/blind/blind.js +2 -2
  298. package/dist/collection/components/blind/blind.js.map +1 -1
  299. package/dist/collection/components/blind/test/blind.ct.js +1 -1
  300. package/dist/collection/components/blind/test/blind.ct.js.map +1 -1
  301. package/dist/collection/components/breadcrumb/breadcrumb.js +2 -2
  302. package/dist/collection/components/card/card.css +3 -3
  303. package/dist/collection/components/card/card.js +7 -4
  304. package/dist/collection/components/card/card.js.map +1 -1
  305. package/dist/collection/components/card-accordion/card-accordion.css +4 -4
  306. package/dist/collection/components/card-content/card-content.js +1 -1
  307. package/dist/collection/components/card-list/card-list.css +6 -0
  308. package/dist/collection/components/card-list/card-list.js +5 -5
  309. package/dist/collection/components/card-list/card-list.js.map +1 -1
  310. package/dist/collection/components/card-title/card-title.js +1 -1
  311. package/dist/collection/components/category-filter/category-filter.js +18 -13
  312. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  313. package/dist/collection/components/category-filter/logical-filter-operator.js +1 -1
  314. package/dist/collection/components/category-filter/logical-filter-operator.js.map +1 -1
  315. package/dist/collection/components/category-filter/test/category-filter.ct.js +52 -0
  316. package/dist/collection/components/category-filter/test/category-filter.ct.js.map +1 -0
  317. package/dist/collection/components/chip/chip.css +2 -2
  318. package/dist/collection/components/chip/chip.js +5 -5
  319. package/dist/collection/components/chip/chip.js.map +1 -1
  320. package/dist/collection/components/col/col.css +1 -1
  321. package/dist/collection/components/col/col.js +1 -1
  322. package/dist/collection/components/col/col.js.map +1 -1
  323. package/dist/collection/components/content/content.js +3 -3
  324. package/dist/collection/components/css-grid/css-grid-item.js +1 -1
  325. package/dist/collection/components/divider/divider.js +1 -1
  326. package/dist/collection/components/drawer/drawer.js +2 -2
  327. package/dist/collection/components/dropdown/dropdown.js +10 -6
  328. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  329. package/dist/collection/components/dropdown-header/dropdown-header.js +1 -1
  330. package/dist/collection/components/dropdown-item/dropdown-item.css +3 -3
  331. package/dist/collection/components/dropdown-item/dropdown-item.js +5 -5
  332. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  333. package/dist/collection/components/dropdown-quick-actions/dropdown-quick-actions.js +1 -1
  334. package/dist/collection/components/event-list/event-list.js +2 -2
  335. package/dist/collection/components/event-list-item/event-list-item.js +4 -4
  336. package/dist/collection/components/expanding-search/expanding-search.js +4 -4
  337. package/dist/collection/components/filter-chip/filter-chip.js +1 -1
  338. package/dist/collection/components/flip-tile/flip-tile.js +4 -4
  339. package/dist/collection/components/flip-tile-content/flip-tile-content.js +1 -1
  340. package/dist/collection/components/form-field/form-field.js +1 -1
  341. package/dist/collection/components/grid/layout-grid.css +1 -1
  342. package/dist/collection/components/grid/layout-grid.js +3 -3
  343. package/dist/collection/components/grid/layout-grid.js.map +1 -1
  344. package/dist/collection/components/group/group-context-menu.css +1 -1
  345. package/dist/collection/components/group/group-context-menu.js +2 -2
  346. package/dist/collection/components/group/group-context-menu.js.map +1 -1
  347. package/dist/collection/components/group/group.css +3 -2
  348. package/dist/collection/components/group/group.js +84 -48
  349. package/dist/collection/components/group/group.js.map +1 -1
  350. package/dist/collection/components/group/test/group.ct.js +70 -2
  351. package/dist/collection/components/group/test/group.ct.js.map +1 -1
  352. package/dist/collection/components/group-item/group-item.css +0 -4
  353. package/dist/collection/components/group-item/group-item.js +9 -12
  354. package/dist/collection/components/group-item/group-item.js.map +1 -1
  355. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +1 -1
  356. package/dist/collection/components/input-group/input-group.js +1 -1
  357. package/dist/collection/components/key-value-list/key-value-list.js +1 -1
  358. package/dist/collection/components/kpi/kpi.css +1 -1
  359. package/dist/collection/components/kpi/kpi.js +4 -4
  360. package/dist/collection/components/kpi/kpi.js.map +1 -1
  361. package/dist/collection/components/link-button/link-button.js +3 -3
  362. package/dist/collection/components/map-navigation/map-navigation.css +3 -3
  363. package/dist/collection/components/map-navigation/map-navigation.js +2 -2
  364. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +2 -2
  365. package/dist/collection/components/menu/menu-expand-icon.css +1 -1
  366. package/dist/collection/components/menu/menu-expand-icon.js +3 -3
  367. package/dist/collection/components/menu/menu-expand-icon.js.map +1 -1
  368. package/dist/collection/components/menu/menu.css +4 -3
  369. package/dist/collection/components/menu/menu.js +12 -12
  370. package/dist/collection/components/menu/menu.js.map +1 -1
  371. package/dist/collection/components/menu/test/menu.ct.js +1 -1
  372. package/dist/collection/components/menu/test/menu.ct.js.map +1 -1
  373. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  374. package/dist/collection/components/menu-about-news/menu-about-news.js +4 -4
  375. package/dist/collection/components/menu-avatar/menu-avatar.js +2 -2
  376. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +1 -1
  377. package/dist/collection/components/menu-category/menu-category.js +5 -5
  378. package/dist/collection/components/menu-item/menu-item.js +24 -21
  379. package/dist/collection/components/menu-item/menu-item.js.map +1 -1
  380. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  381. package/dist/collection/components/message-bar/message-bar.js +1 -1
  382. package/dist/collection/components/modal/modal.css +18 -8
  383. package/dist/collection/components/modal/modal.js +1 -1
  384. package/dist/collection/components/modal/modal.js.map +1 -1
  385. package/dist/collection/components/modal/test/modal.ct.js +1 -1
  386. package/dist/collection/components/modal/test/modal.ct.js.map +1 -1
  387. package/dist/collection/components/modal-content/modal-content.css +1 -1
  388. package/dist/collection/components/modal-content/modal-content.js +1 -1
  389. package/dist/collection/components/modal-footer/modal-footer.css +1 -0
  390. package/dist/collection/components/modal-footer/modal-footer.js +1 -1
  391. package/dist/collection/components/modal-header/modal-header.js +2 -2
  392. package/dist/collection/components/modal-header/modal-header.js.map +1 -1
  393. package/dist/collection/components/modal-loading/modal-loading.js +1 -1
  394. package/dist/collection/components/pagination/pagination.js +5 -4
  395. package/dist/collection/components/pagination/pagination.js.map +1 -1
  396. package/dist/collection/components/pane/pane.css +1 -1
  397. package/dist/collection/components/pane/pane.js +1 -1
  398. package/dist/collection/components/pane/pane.js.map +1 -1
  399. package/dist/collection/components/pane/test/panes.ct.js +1 -1
  400. package/dist/collection/components/pane/test/panes.ct.js.map +1 -1
  401. package/dist/collection/components/pane-layout/pane-layout.js +1 -1
  402. package/dist/collection/components/pill/pill.css +2 -2
  403. package/dist/collection/components/pill/pill.js +5 -5
  404. package/dist/collection/components/pill/pill.js.map +1 -1
  405. package/dist/collection/components/playground/example-modal.js +1 -1
  406. package/dist/collection/components/playground/playground.js +2 -2
  407. package/dist/collection/components/playground/playground.js.map +1 -1
  408. package/dist/collection/components/push-card/push-card.js +9 -6
  409. package/dist/collection/components/push-card/push-card.js.map +1 -1
  410. package/dist/collection/components/row/row.css +1 -1
  411. package/dist/collection/components/row/row.js +2 -2
  412. package/dist/collection/components/row/row.js.map +1 -1
  413. package/dist/collection/components/select/select.js +27 -30
  414. package/dist/collection/components/select/select.js.map +1 -1
  415. package/dist/collection/components/select/test/select.ct.js +45 -1
  416. package/dist/collection/components/select/test/select.ct.js.map +1 -1
  417. package/dist/collection/components/select-item/select-item.js +1 -1
  418. package/dist/collection/components/slider/slider.css +1 -1
  419. package/dist/collection/components/slider/slider.js +23 -15
  420. package/dist/collection/components/slider/slider.js.map +1 -1
  421. package/dist/collection/components/slider/test/slider.ct.js +15 -6
  422. package/dist/collection/components/slider/test/slider.ct.js.map +1 -1
  423. package/dist/collection/components/spinner/spinner.js +1 -1
  424. package/dist/collection/components/split-button-item/split-button-item.js +1 -1
  425. package/dist/collection/components/tab-item/tab-item.js +4 -4
  426. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  427. package/dist/collection/components/tabs/tabs.css +1 -1
  428. package/dist/collection/components/tabs/tabs.js +78 -43
  429. package/dist/collection/components/tabs/tabs.js.map +1 -1
  430. package/dist/collection/components/tabs/test/tabs.ct.js +35 -9
  431. package/dist/collection/components/tabs/test/tabs.ct.js.map +1 -1
  432. package/dist/collection/components/tile/tile.css +1 -1
  433. package/dist/collection/components/tile/tile.js +5 -5
  434. package/dist/collection/components/tile/tile.js.map +1 -1
  435. package/dist/collection/components/toast/styles/toast-container.css +1 -1
  436. package/dist/collection/components/toast/toast-container.js +1 -1
  437. package/dist/collection/components/toast/toast-container.js.map +1 -1
  438. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  439. package/dist/collection/components/toast/toast.css +1 -1
  440. package/dist/collection/components/toast/toast.js +3 -3
  441. package/dist/collection/components/toast/toast.js.map +1 -1
  442. package/dist/collection/components/toggle/toggle.js +2 -2
  443. package/dist/collection/components/toggle-button/toggle-button.js +2 -2
  444. package/dist/collection/components/tooltip/tooltip.css +15 -5
  445. package/dist/collection/components/tooltip/tooltip.js +33 -26
  446. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  447. package/dist/collection/components/tree/test/tree.ct.js +37 -1
  448. package/dist/collection/components/tree/test/tree.ct.js.map +1 -1
  449. package/dist/collection/components/tree/tree-model.js.map +1 -1
  450. package/dist/collection/components/tree/tree.css +1 -1
  451. package/dist/collection/components/tree/tree.js +26 -11
  452. package/dist/collection/components/tree/tree.js.map +1 -1
  453. package/dist/collection/components/tree-item/tree-item.css +9 -0
  454. package/dist/collection/components/tree-item/tree-item.js +13 -12
  455. package/dist/collection/components/tree-item/tree-item.js.map +1 -1
  456. package/dist/collection/components/upload/upload.js +4 -4
  457. package/dist/collection/components/upload/upload.js.map +1 -1
  458. package/dist/collection/components/utils/application-layout/service.js +2 -2
  459. package/dist/collection/components/utils/application-layout/service.js.map +1 -1
  460. package/dist/collection/components/utils/condition-checks.js +1 -1
  461. package/dist/collection/components/utils/condition-checks.js.map +1 -1
  462. package/dist/collection/components/utils/context.js +1 -1
  463. package/dist/collection/components/utils/context.js.map +1 -1
  464. package/dist/collection/components/utils/listener.js +1 -1
  465. package/dist/collection/components/utils/listener.js.map +1 -1
  466. package/dist/collection/components/utils/notification-color.js.map +1 -1
  467. package/dist/collection/components/utils/shadow-dom.js +1 -1
  468. package/dist/collection/components/utils/shadow-dom.js.map +1 -1
  469. package/dist/collection/components/validation-tooltip/validation-tooltip.js +2 -2
  470. package/dist/collection/components/workflow-step/workflow-step.css +1 -1
  471. package/dist/collection/components/workflow-step/workflow-step.js +4 -4
  472. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  473. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js +2 -2
  474. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js.map +1 -1
  475. package/dist/collection/components/workflow-steps/workflow-steps.css +1 -1
  476. package/dist/collection/components/workflow-steps/workflow-steps.js +2 -2
  477. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
  478. package/dist/collection/index.js +1 -0
  479. package/dist/collection/index.js.map +1 -1
  480. package/dist/collection/tests/application-header/application-header.e2e.js +9 -0
  481. package/dist/collection/tests/application-header/application-header.e2e.js.map +1 -1
  482. package/dist/collection/tests/avatar/avatar.e2e.js +6 -0
  483. package/dist/collection/tests/avatar/avatar.e2e.js.map +1 -1
  484. package/dist/collection/tests/card-list/card-list.e2e.js +7 -1
  485. package/dist/collection/tests/card-list/card-list.e2e.js.map +1 -1
  486. package/dist/collection/tests/dropdown/dropdown.e2e.js +6 -0
  487. package/dist/collection/tests/dropdown/dropdown.e2e.js.map +1 -1
  488. package/dist/collection/tests/group/group.e2e.js +12 -3
  489. package/dist/collection/tests/group/group.e2e.js.map +1 -1
  490. package/dist/collection/tests/slider/slider.e2e.js +14 -0
  491. package/dist/collection/tests/slider/slider.e2e.js.map +1 -1
  492. package/dist/collection/tests/tabs/tabs.e2e.js +1 -1
  493. package/dist/collection/tests/tabs/tabs.e2e.js.map +1 -1
  494. package/dist/collection/tests/tooltip/tooltip.e2e.js +22 -0
  495. package/dist/collection/tests/tooltip/tooltip.e2e.js.map +1 -1
  496. package/dist/collection/tests/tree/tree.e2e.js +12 -0
  497. package/dist/collection/tests/tree/tree.e2e.js.map +1 -1
  498. package/dist/esm/{a11y-d5444a76.js → a11y-2e34777f.js} +2 -2
  499. package/dist/esm/{a11y-d5444a76.js.map → a11y-2e34777f.js.map} +1 -1
  500. package/dist/esm/{context-c9078420.js → context-82a1ccf8.js} +2 -2
  501. package/dist/esm/{context-c9078420.js.map → context-82a1ccf8.js.map} +1 -1
  502. package/dist/esm/dropdown-controller-95bd6750.js +140 -0
  503. package/dist/esm/dropdown-controller-95bd6750.js.map +1 -0
  504. package/dist/esm/{floating-ui.dom.esm-6e7c098f.js → floating-ui.dom.esm-d4ad786a.js} +534 -61
  505. package/dist/esm/floating-ui.dom.esm-d4ad786a.js.map +1 -0
  506. package/dist/esm/index.js +2 -2
  507. package/dist/esm/index.js.map +1 -1
  508. package/dist/esm/ix-action-card.entry.js +1 -1
  509. package/dist/esm/ix-action-card.entry.js.map +1 -1
  510. package/dist/esm/ix-application-header.entry.js +36 -10
  511. package/dist/esm/ix-application-header.entry.js.map +1 -1
  512. package/dist/esm/ix-application-sidebar.entry.js +1 -1
  513. package/dist/esm/ix-application-switch-modal.entry.js +1 -1
  514. package/dist/esm/ix-application.entry.js +5 -5
  515. package/dist/esm/ix-application.entry.js.map +1 -1
  516. package/dist/esm/ix-avatar_2.entry.js +3 -3
  517. package/dist/esm/ix-avatar_2.entry.js.map +1 -1
  518. package/dist/esm/ix-basic-navigation.entry.js +4 -4
  519. package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
  520. package/dist/esm/ix-blind.entry.js +1 -1
  521. package/dist/esm/ix-blind.entry.js.map +1 -1
  522. package/dist/esm/ix-breadcrumb-item.entry.js +1 -1
  523. package/dist/esm/ix-breadcrumb.entry.js +3 -3
  524. package/dist/esm/ix-card-accordion_2.entry.js +2 -2
  525. package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
  526. package/dist/esm/ix-card-list.entry.js +6 -6
  527. package/dist/esm/ix-card-list.entry.js.map +1 -1
  528. package/dist/esm/ix-card_2.entry.js +4 -4
  529. package/dist/esm/ix-card_2.entry.js.map +1 -1
  530. package/dist/esm/ix-category-filter.entry.js +9 -5
  531. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  532. package/dist/esm/ix-chip.entry.js +4 -4
  533. package/dist/esm/ix-chip.entry.js.map +1 -1
  534. package/dist/esm/ix-col_4.entry.js +4 -4
  535. package/dist/esm/ix-col_4.entry.js.map +1 -1
  536. package/dist/esm/ix-content.entry.js +4 -4
  537. package/dist/esm/ix-css-grid-item.entry.js +1 -1
  538. package/dist/esm/ix-divider.entry.js +1 -1
  539. package/dist/esm/ix-drawer.entry.js +2 -2
  540. package/dist/esm/ix-dropdown-header.entry.js +1 -1
  541. package/dist/esm/ix-dropdown-item.entry.js +4 -4
  542. package/dist/esm/ix-dropdown-item.entry.js.map +1 -1
  543. package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
  544. package/dist/esm/ix-dropdown.entry.js +12 -144
  545. package/dist/esm/ix-dropdown.entry.js.map +1 -1
  546. package/dist/esm/ix-event-list-item.entry.js +5 -5
  547. package/dist/esm/ix-event-list.entry.js +2 -2
  548. package/dist/esm/ix-expanding-search.entry.js +4 -4
  549. package/dist/esm/ix-filter-chip_2.entry.js +2 -2
  550. package/dist/esm/ix-flip-tile-content.entry.js +1 -1
  551. package/dist/esm/ix-flip-tile.entry.js +4 -4
  552. package/dist/esm/ix-form-field.entry.js +1 -1
  553. package/dist/esm/ix-group-context-menu_2.entry.js +6 -10
  554. package/dist/esm/ix-group-context-menu_2.entry.js.map +1 -1
  555. package/dist/esm/ix-group.entry.js +68 -44
  556. package/dist/esm/ix-group.entry.js.map +1 -1
  557. package/dist/esm/ix-icon-button_2.entry.js +2 -2
  558. package/dist/esm/ix-icon-toggle-button.entry.js +2 -2
  559. package/dist/esm/ix-input-group.entry.js +2 -2
  560. package/dist/esm/ix-key-value-list.entry.js +1 -1
  561. package/dist/esm/ix-kpi.entry.js +3 -3
  562. package/dist/esm/ix-kpi.entry.js.map +1 -1
  563. package/dist/esm/ix-link-button.entry.js +3 -3
  564. package/dist/esm/ix-map-navigation-overlay.entry.js +2 -2
  565. package/dist/esm/ix-map-navigation.entry.js +4 -4
  566. package/dist/esm/ix-map-navigation.entry.js.map +1 -1
  567. package/dist/esm/ix-menu-about-item.entry.js +1 -1
  568. package/dist/esm/ix-menu-about-news.entry.js +4 -4
  569. package/dist/esm/ix-menu-avatar.entry.js +3 -3
  570. package/dist/esm/ix-menu-category.entry.js +6 -6
  571. package/dist/esm/ix-menu-expand-icon.entry.js +2 -2
  572. package/dist/esm/ix-menu-expand-icon.entry.js.map +1 -1
  573. package/dist/esm/ix-menu-item.entry.js +14 -14
  574. package/dist/esm/ix-menu-item.entry.js.map +1 -1
  575. package/dist/esm/ix-menu-settings-item.entry.js +1 -1
  576. package/dist/esm/ix-menu.entry.js +14 -14
  577. package/dist/esm/ix-menu.entry.js.map +1 -1
  578. package/dist/esm/ix-message-bar.entry.js +1 -1
  579. package/dist/esm/ix-modal-content_2.entry.js +3 -3
  580. package/dist/esm/ix-modal-content_2.entry.js.map +1 -1
  581. package/dist/esm/ix-modal-example.entry.js +1 -1
  582. package/dist/esm/ix-modal-footer.entry.js +2 -2
  583. package/dist/esm/ix-modal-footer.entry.js.map +1 -1
  584. package/dist/esm/ix-modal-loading.entry.js +1 -1
  585. package/dist/esm/ix-modal.entry.js +3 -3
  586. package/dist/esm/ix-modal.entry.js.map +1 -1
  587. package/dist/esm/ix-pagination.entry.js +4 -4
  588. package/dist/esm/ix-pagination.entry.js.map +1 -1
  589. package/dist/esm/ix-pane-layout.entry.js +2 -2
  590. package/dist/esm/ix-pane.entry.js +1 -1
  591. package/dist/esm/ix-pane.entry.js.map +1 -1
  592. package/dist/esm/ix-pill.entry.js +4 -4
  593. package/dist/esm/ix-pill.entry.js.map +1 -1
  594. package/dist/esm/ix-playground-internal.entry.js +1 -1
  595. package/dist/esm/ix-playground-internal.entry.js.map +1 -1
  596. package/dist/esm/ix-push-card.entry.js +1 -1
  597. package/dist/esm/ix-push-card.entry.js.map +1 -1
  598. package/dist/esm/ix-select.entry.js +28 -31
  599. package/dist/esm/ix-select.entry.js.map +1 -1
  600. package/dist/esm/ix-slider.entry.js +22 -15
  601. package/dist/esm/ix-slider.entry.js.map +1 -1
  602. package/dist/esm/ix-split-button-item.entry.js +1 -1
  603. package/dist/esm/ix-tab-item_2.entry.js +74 -44
  604. package/dist/esm/ix-tab-item_2.entry.js.map +1 -1
  605. package/dist/esm/ix-tile.entry.js +4 -4
  606. package/dist/esm/ix-tile.entry.js.map +1 -1
  607. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  608. package/dist/esm/ix-toast.entry.js +2 -2
  609. package/dist/esm/ix-toast.entry.js.map +1 -1
  610. package/dist/esm/ix-toggle-button.entry.js +3 -3
  611. package/dist/esm/ix-toggle.entry.js +3 -3
  612. package/dist/esm/ix-tooltip.entry.js +25 -23
  613. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  614. package/dist/esm/ix-tree-item.entry.js +8 -8
  615. package/dist/esm/ix-tree-item.entry.js.map +1 -1
  616. package/dist/esm/ix-tree.entry.js +21 -7
  617. package/dist/esm/ix-tree.entry.js.map +1 -1
  618. package/dist/esm/ix-upload.entry.js +3 -3
  619. package/dist/esm/ix-upload.entry.js.map +1 -1
  620. package/dist/esm/ix-validation-tooltip.entry.js +3 -3
  621. package/dist/esm/ix-workflow-step.entry.js +3 -3
  622. package/dist/esm/ix-workflow-step.entry.js.map +1 -1
  623. package/dist/esm/ix-workflow-steps.entry.js +1 -1
  624. package/dist/esm/ix-workflow-steps.entry.js.map +1 -1
  625. package/dist/esm/{listener-4f3baab5.js → listener-2c562054.js} +2 -2
  626. package/dist/esm/{listener-4f3baab5.js.map → listener-2c562054.js.map} +1 -1
  627. package/dist/esm/loader.js +1 -1
  628. package/dist/esm/{logical-filter-operator-f6701df5.js → logical-filter-operator-d793d1c3.js} +2 -2
  629. package/dist/esm/{logical-filter-operator-f6701df5.js.map → logical-filter-operator-d793d1c3.js.map} +1 -1
  630. package/dist/esm/{service-02cc9011.js → service-c7fc628b.js} +3 -3
  631. package/dist/esm/service-c7fc628b.js.map +1 -0
  632. package/dist/esm/{shadow-dom-60e9243d.js → shadow-dom-cc0bc152.js} +2 -2
  633. package/dist/esm/{shadow-dom-60e9243d.js.map → shadow-dom-cc0bc152.js.map} +1 -1
  634. package/dist/esm/siemens-ix.js +1 -1
  635. package/dist/siemens-ix/index.esm.js +1 -1
  636. package/dist/siemens-ix/index.esm.js.map +1 -1
  637. package/dist/siemens-ix/p-04af3853.entry.js +2 -0
  638. package/dist/siemens-ix/p-04ec538b.entry.js +2 -0
  639. package/dist/siemens-ix/p-04ec538b.entry.js.map +1 -0
  640. package/dist/siemens-ix/{p-68644ee1.entry.js → p-05dc6b2d.entry.js} +2 -2
  641. package/dist/siemens-ix/{p-68644ee1.entry.js.map → p-05dc6b2d.entry.js.map} +1 -1
  642. package/dist/siemens-ix/{p-af099ca4.entry.js → p-0632731e.entry.js} +2 -2
  643. package/dist/siemens-ix/{p-6af4415c.entry.js → p-085d5ec2.entry.js} +2 -2
  644. package/dist/siemens-ix/{p-6af4415c.entry.js.map → p-085d5ec2.entry.js.map} +1 -1
  645. package/dist/siemens-ix/{p-0d2a6886.entry.js → p-091b036d.entry.js} +2 -2
  646. package/dist/siemens-ix/{p-453fa360.entry.js → p-0ef97555.entry.js} +2 -2
  647. package/dist/siemens-ix/{p-453fa360.entry.js.map → p-0ef97555.entry.js.map} +1 -1
  648. package/dist/siemens-ix/{p-2946fd70.entry.js → p-0fafba48.entry.js} +2 -2
  649. package/dist/siemens-ix/{p-7076210b.entry.js → p-1483f65d.entry.js} +2 -2
  650. package/dist/siemens-ix/{p-4f8ac3bf.js → p-157b1b28.js} +1 -1
  651. package/dist/siemens-ix/{p-4f8ac3bf.js.map → p-157b1b28.js.map} +1 -1
  652. package/dist/siemens-ix/p-15f44099.entry.js +2 -0
  653. package/dist/siemens-ix/{p-87e692d9.entry.js.map → p-15f44099.entry.js.map} +1 -1
  654. package/dist/siemens-ix/{p-2908cacd.entry.js → p-17a8aab2.entry.js} +2 -2
  655. package/dist/siemens-ix/{p-2908cacd.entry.js.map → p-17a8aab2.entry.js.map} +1 -1
  656. package/dist/siemens-ix/{p-c1968b80.entry.js → p-1bd98772.entry.js} +2 -2
  657. package/dist/siemens-ix/p-1c3a0b1f.js +2 -0
  658. package/dist/siemens-ix/p-1c3a0b1f.js.map +1 -0
  659. package/dist/siemens-ix/{p-8629db91.entry.js → p-25f1749c.entry.js} +2 -2
  660. package/dist/siemens-ix/{p-5696bb62.entry.js → p-306269ae.entry.js} +2 -2
  661. package/dist/siemens-ix/{p-ae7a7af4.entry.js → p-33a7a26d.entry.js} +2 -2
  662. package/dist/siemens-ix/{p-ae7a7af4.entry.js.map → p-33a7a26d.entry.js.map} +1 -1
  663. package/dist/siemens-ix/{p-712e0ee0.js → p-345e1c73.js} +1 -1
  664. package/dist/siemens-ix/{p-712e0ee0.js.map → p-345e1c73.js.map} +1 -1
  665. package/dist/siemens-ix/p-35fff1e6.entry.js +2 -0
  666. package/dist/siemens-ix/{p-9ebc4fc3.entry.js → p-37229f30.entry.js} +2 -2
  667. package/dist/siemens-ix/{p-9ebc4fc3.entry.js.map → p-37229f30.entry.js.map} +1 -1
  668. package/dist/siemens-ix/p-3dc1294b.entry.js +2 -0
  669. package/dist/siemens-ix/{p-e9a3f58a.entry.js.map → p-3dc1294b.entry.js.map} +1 -1
  670. package/dist/siemens-ix/p-3f59a3c3.entry.js +2 -0
  671. package/dist/siemens-ix/p-3f59a3c3.entry.js.map +1 -0
  672. package/dist/siemens-ix/p-411f51c5.entry.js +2 -0
  673. package/dist/siemens-ix/{p-f78246bd.entry.js → p-44a27b29.entry.js} +2 -2
  674. package/dist/siemens-ix/{p-d03df401.entry.js → p-49d3fc15.entry.js} +2 -2
  675. package/dist/siemens-ix/{p-25ee1b62.js → p-4ac31849.js} +1 -1
  676. package/dist/siemens-ix/{p-25ee1b62.js.map → p-4ac31849.js.map} +1 -1
  677. package/dist/siemens-ix/{p-112069ca.entry.js → p-4e547dd3.entry.js} +2 -2
  678. package/dist/siemens-ix/p-4e547dd3.entry.js.map +1 -0
  679. package/dist/siemens-ix/p-5099c070.entry.js +2 -0
  680. package/dist/siemens-ix/p-5099c070.entry.js.map +1 -0
  681. package/dist/siemens-ix/{p-6b928634.entry.js → p-5351225b.entry.js} +2 -2
  682. package/dist/siemens-ix/p-5351225b.entry.js.map +1 -0
  683. package/dist/siemens-ix/p-5aa0b93c.entry.js.map +1 -1
  684. package/dist/siemens-ix/{p-113cc793.entry.js → p-5af99eaa.entry.js} +2 -2
  685. package/dist/siemens-ix/{p-e30ed20a.entry.js → p-62b089b6.entry.js} +2 -2
  686. package/dist/siemens-ix/{p-e30ed20a.entry.js.map → p-62b089b6.entry.js.map} +1 -1
  687. package/dist/siemens-ix/p-63f0755e.entry.js +2 -0
  688. package/dist/siemens-ix/{p-14a41c8c.entry.js → p-6618b2db.entry.js} +2 -2
  689. package/dist/siemens-ix/{p-0653a145.entry.js → p-67f44540.entry.js} +2 -2
  690. package/dist/siemens-ix/{p-15b3c17e.entry.js → p-6e4c9e3d.entry.js} +2 -2
  691. package/dist/siemens-ix/{p-15b3c17e.entry.js.map → p-6e4c9e3d.entry.js.map} +1 -1
  692. package/dist/siemens-ix/p-7402f42a.entry.js +2 -0
  693. package/dist/siemens-ix/p-7402f42a.entry.js.map +1 -0
  694. package/dist/siemens-ix/{p-53352bfb.entry.js → p-77273517.entry.js} +2 -2
  695. package/dist/siemens-ix/{p-882a0233.entry.js → p-78ac2ff1.entry.js} +2 -2
  696. package/dist/siemens-ix/p-7947ef3d.entry.js +2 -0
  697. package/dist/siemens-ix/{p-fb47546b.entry.js → p-7c2f34f0.entry.js} +2 -2
  698. package/dist/siemens-ix/p-82d33168.entry.js +2 -0
  699. package/dist/siemens-ix/p-82f9d976.entry.js +2 -0
  700. package/dist/siemens-ix/p-82f9d976.entry.js.map +1 -0
  701. package/dist/siemens-ix/{p-85423643.entry.js → p-86bbc005.entry.js} +2 -2
  702. package/dist/siemens-ix/p-86bbc005.entry.js.map +1 -0
  703. package/dist/siemens-ix/p-86fd5922.entry.js +2 -0
  704. package/dist/siemens-ix/p-86fd5922.entry.js.map +1 -0
  705. package/dist/siemens-ix/p-89e48bea.entry.js +2 -0
  706. package/dist/siemens-ix/p-89e48bea.entry.js.map +1 -0
  707. package/dist/siemens-ix/{p-052340f9.entry.js → p-8acc09aa.entry.js} +2 -2
  708. package/dist/siemens-ix/{p-6fd7ecd0.entry.js → p-9079f6c8.entry.js} +2 -2
  709. package/dist/siemens-ix/p-928209e1.entry.js +2 -0
  710. package/dist/siemens-ix/p-928209e1.entry.js.map +1 -0
  711. package/dist/siemens-ix/{p-e8d3cf35.entry.js → p-958c5970.entry.js} +2 -2
  712. package/dist/siemens-ix/{p-e8d3cf35.entry.js.map → p-958c5970.entry.js.map} +1 -1
  713. package/dist/siemens-ix/{p-16b923e9.entry.js → p-9bdda7ff.entry.js} +2 -2
  714. package/dist/siemens-ix/p-a08efce0.entry.js +2 -0
  715. package/dist/siemens-ix/p-a08efce0.entry.js.map +1 -0
  716. package/dist/siemens-ix/p-a4755205.entry.js +2 -0
  717. package/dist/siemens-ix/p-a4755205.entry.js.map +1 -0
  718. package/dist/siemens-ix/{p-2c4c03d4.entry.js → p-aa814811.entry.js} +2 -2
  719. package/dist/siemens-ix/{p-7c36d3fa.js → p-accec846.js} +1 -1
  720. package/dist/siemens-ix/{p-7c36d3fa.js.map → p-accec846.js.map} +1 -1
  721. package/dist/siemens-ix/{p-8d599677.entry.js → p-adee6045.entry.js} +2 -2
  722. package/dist/siemens-ix/{p-8d599677.entry.js.map → p-adee6045.entry.js.map} +1 -1
  723. package/dist/siemens-ix/{p-d95cbd1f.entry.js → p-ae31be0d.entry.js} +2 -2
  724. package/dist/siemens-ix/{p-d95cbd1f.entry.js.map → p-ae31be0d.entry.js.map} +1 -1
  725. package/dist/siemens-ix/{p-feac09bc.entry.js → p-ba24e694.entry.js} +2 -2
  726. package/dist/siemens-ix/p-ba6e955a.js +2 -0
  727. package/dist/siemens-ix/p-ba6e955a.js.map +1 -0
  728. package/dist/siemens-ix/p-c022d6cc.entry.js +2 -0
  729. package/dist/siemens-ix/{p-eb6268a6.entry.js.map → p-c022d6cc.entry.js.map} +1 -1
  730. package/dist/siemens-ix/p-c05a98c8.entry.js +2 -0
  731. package/dist/siemens-ix/{p-29df2e29.entry.js → p-c072ddb5.entry.js} +2 -2
  732. package/dist/siemens-ix/p-c072ddb5.entry.js.map +1 -0
  733. package/dist/siemens-ix/p-c1fe9f3d.entry.js +2 -0
  734. package/dist/siemens-ix/p-c1fe9f3d.entry.js.map +1 -0
  735. package/dist/siemens-ix/{p-c389de85.entry.js → p-c33cee36.entry.js} +2 -2
  736. package/dist/siemens-ix/{p-c389de85.entry.js.map → p-c33cee36.entry.js.map} +1 -1
  737. package/dist/siemens-ix/{p-0b4e398e.entry.js → p-c62966f8.entry.js} +2 -2
  738. package/dist/siemens-ix/{p-0b4e398e.entry.js.map → p-c62966f8.entry.js.map} +1 -1
  739. package/dist/siemens-ix/p-c7280736.entry.js +2 -0
  740. package/dist/siemens-ix/{p-0f7ef743.entry.js.map → p-c7280736.entry.js.map} +1 -1
  741. package/dist/siemens-ix/{p-8d0758c1.entry.js → p-c7e58e9e.entry.js} +2 -2
  742. package/dist/siemens-ix/{p-4430117a.entry.js → p-c81c4b9d.entry.js} +2 -2
  743. package/dist/siemens-ix/p-cc65617d.entry.js +2 -0
  744. package/dist/siemens-ix/p-cc65617d.entry.js.map +1 -0
  745. package/dist/siemens-ix/{p-1a122c76.entry.js → p-d300b332.entry.js} +2 -2
  746. package/dist/siemens-ix/p-d6fc0727.entry.js +2 -0
  747. package/dist/siemens-ix/p-d6fc0727.entry.js.map +1 -0
  748. package/dist/siemens-ix/p-df370362.entry.js +2 -0
  749. package/dist/siemens-ix/p-df370362.entry.js.map +1 -0
  750. package/dist/siemens-ix/{p-5f25e7fd.entry.js → p-e0d03d67.entry.js} +2 -2
  751. package/dist/siemens-ix/{p-5f25e7fd.entry.js.map → p-e0d03d67.entry.js.map} +1 -1
  752. package/dist/siemens-ix/{p-ff1ac5b3.entry.js → p-e14384df.entry.js} +2 -2
  753. package/dist/siemens-ix/{p-fb2b78f7.entry.js → p-e35805d0.entry.js} +2 -2
  754. package/dist/siemens-ix/p-e35805d0.entry.js.map +1 -0
  755. package/dist/siemens-ix/{p-0c8a98cd.js → p-e948bcb0.js} +1 -1
  756. package/dist/siemens-ix/{p-0c8a98cd.js.map → p-e948bcb0.js.map} +1 -1
  757. package/dist/siemens-ix/{p-96a3a750.entry.js → p-e95a5a97.entry.js} +2 -2
  758. package/dist/siemens-ix/p-e95a5a97.entry.js.map +1 -0
  759. package/dist/siemens-ix/p-ed7e76a3.entry.js +2 -0
  760. package/dist/siemens-ix/p-ed7e76a3.entry.js.map +1 -0
  761. package/dist/siemens-ix/{p-bea7c748.entry.js → p-ee96d1eb.entry.js} +2 -2
  762. package/dist/siemens-ix/p-f001ecc1.entry.js +2 -0
  763. package/dist/siemens-ix/p-f001ecc1.entry.js.map +1 -0
  764. package/dist/siemens-ix/p-f06b21f9.entry.js +2 -0
  765. package/dist/siemens-ix/p-f06b21f9.entry.js.map +1 -0
  766. package/dist/siemens-ix/{p-702f9349.js → p-fbe017b7.js} +2 -2
  767. package/dist/siemens-ix/p-fbe017b7.js.map +1 -0
  768. package/dist/siemens-ix/{p-7750e187.entry.js → p-fd5bee44.entry.js} +2 -2
  769. package/dist/siemens-ix/p-fefd5743.entry.js +2 -0
  770. package/dist/siemens-ix/p-fefd5743.entry.js.map +1 -0
  771. package/dist/siemens-ix/{p-dcb3e5be.entry.js → p-ffa856df.entry.js} +2 -2
  772. package/dist/siemens-ix/siemens-ix-core.css +1 -1
  773. package/dist/siemens-ix/siemens-ix.css +5 -1
  774. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  775. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  776. package/dist/types/components/action-card/action-card.d.ts +1 -0
  777. package/dist/types/components/application-header/application-header.d.ts +19 -1
  778. package/dist/types/components/basic-navigation/basic-navigation.d.ts +2 -1
  779. package/dist/types/components/card/card.d.ts +2 -1
  780. package/dist/types/components/category-filter/category-filter.d.ts +9 -9
  781. package/dist/types/components/category-filter/test/category-filter.ct.d.ts +1 -0
  782. package/dist/types/components/dropdown/dropdown.d.ts +1 -0
  783. package/dist/types/components/dropdown-item/dropdown-item.d.ts +2 -2
  784. package/dist/types/components/group/group.d.ts +7 -6
  785. package/dist/types/components/group-item/group-item.d.ts +4 -4
  786. package/dist/types/components/menu-item/menu-item.d.ts +6 -5
  787. package/dist/types/components/push-card/push-card.d.ts +4 -3
  788. package/dist/types/components/slider/slider.d.ts +3 -3
  789. package/dist/types/components/tab-item/tab-item.d.ts +1 -1
  790. package/dist/types/components/tabs/tabs.d.ts +7 -4
  791. package/dist/types/components/tooltip/tooltip.d.ts +9 -10
  792. package/dist/types/components/tree/tree.d.ts +1 -1
  793. package/dist/types/components/tree-item/tree-item.d.ts +3 -3
  794. package/dist/types/components.d.ts +83 -43
  795. package/dist/types/index.d.ts +1 -0
  796. package/hydrate/index.js +994 -416
  797. package/package.json +3 -2
  798. package/scss/_core.scss +5 -0
  799. package/dist/cjs/floating-ui.dom.esm-94b4d17c.js.map +0 -1
  800. package/dist/cjs/service-a42add5f.js.map +0 -1
  801. package/dist/esm/floating-ui.dom.esm-6e7c098f.js.map +0 -1
  802. package/dist/esm/service-02cc9011.js.map +0 -1
  803. package/dist/siemens-ix/p-0f7ef743.entry.js +0 -2
  804. package/dist/siemens-ix/p-112069ca.entry.js.map +0 -1
  805. package/dist/siemens-ix/p-1cff59db.entry.js +0 -2
  806. package/dist/siemens-ix/p-1cff59db.entry.js.map +0 -1
  807. package/dist/siemens-ix/p-1f4b8463.entry.js +0 -2
  808. package/dist/siemens-ix/p-1f4b8463.entry.js.map +0 -1
  809. package/dist/siemens-ix/p-29df2e29.entry.js.map +0 -1
  810. package/dist/siemens-ix/p-2ec7f841.entry.js +0 -2
  811. package/dist/siemens-ix/p-2ec7f841.entry.js.map +0 -1
  812. package/dist/siemens-ix/p-309ac3ad.entry.js +0 -2
  813. package/dist/siemens-ix/p-309ac3ad.entry.js.map +0 -1
  814. package/dist/siemens-ix/p-315f070d.entry.js +0 -2
  815. package/dist/siemens-ix/p-315f070d.entry.js.map +0 -1
  816. package/dist/siemens-ix/p-32375ddb.entry.js +0 -2
  817. package/dist/siemens-ix/p-427676f4.entry.js +0 -2
  818. package/dist/siemens-ix/p-427676f4.entry.js.map +0 -1
  819. package/dist/siemens-ix/p-4344ba99.entry.js +0 -2
  820. package/dist/siemens-ix/p-4344ba99.entry.js.map +0 -1
  821. package/dist/siemens-ix/p-44db3646.entry.js +0 -2
  822. package/dist/siemens-ix/p-4b3facea.entry.js +0 -2
  823. package/dist/siemens-ix/p-4b3facea.entry.js.map +0 -1
  824. package/dist/siemens-ix/p-52857629.entry.js +0 -2
  825. package/dist/siemens-ix/p-52857629.entry.js.map +0 -1
  826. package/dist/siemens-ix/p-60c16878.entry.js +0 -2
  827. package/dist/siemens-ix/p-60c16878.entry.js.map +0 -1
  828. package/dist/siemens-ix/p-6227e62b.entry.js +0 -2
  829. package/dist/siemens-ix/p-6227e62b.entry.js.map +0 -1
  830. package/dist/siemens-ix/p-6b928634.entry.js.map +0 -1
  831. package/dist/siemens-ix/p-702f9349.js.map +0 -1
  832. package/dist/siemens-ix/p-7bfd6cd2.entry.js +0 -2
  833. package/dist/siemens-ix/p-7bfd6cd2.entry.js.map +0 -1
  834. package/dist/siemens-ix/p-7faa148f.entry.js +0 -2
  835. package/dist/siemens-ix/p-85423643.entry.js.map +0 -1
  836. package/dist/siemens-ix/p-87e692d9.entry.js +0 -2
  837. package/dist/siemens-ix/p-92a18c10.entry.js +0 -2
  838. package/dist/siemens-ix/p-96a3a750.entry.js.map +0 -1
  839. package/dist/siemens-ix/p-a536adcb.entry.js +0 -2
  840. package/dist/siemens-ix/p-a536adcb.entry.js.map +0 -1
  841. package/dist/siemens-ix/p-b3b23af7.entry.js +0 -2
  842. package/dist/siemens-ix/p-b3f35666.js +0 -2
  843. package/dist/siemens-ix/p-b3f35666.js.map +0 -1
  844. package/dist/siemens-ix/p-c1222581.entry.js +0 -2
  845. package/dist/siemens-ix/p-c55db6c7.entry.js +0 -2
  846. package/dist/siemens-ix/p-c55db6c7.entry.js.map +0 -1
  847. package/dist/siemens-ix/p-d998415f.entry.js +0 -2
  848. package/dist/siemens-ix/p-d998415f.entry.js.map +0 -1
  849. package/dist/siemens-ix/p-e9a3f58a.entry.js +0 -2
  850. package/dist/siemens-ix/p-eb6268a6.entry.js +0 -2
  851. package/dist/siemens-ix/p-ebb277f0.entry.js +0 -2
  852. package/dist/siemens-ix/p-ebb277f0.entry.js.map +0 -1
  853. package/dist/siemens-ix/p-f07110c6.entry.js +0 -2
  854. package/dist/siemens-ix/p-f07110c6.entry.js.map +0 -1
  855. package/dist/siemens-ix/p-fa53933d.entry.js +0 -2
  856. package/dist/siemens-ix/p-fa53933d.entry.js.map +0 -1
  857. package/dist/siemens-ix/p-fb2b78f7.entry.js.map +0 -1
  858. package/dist/siemens-ix/p-fb4c79c6.entry.js +0 -2
  859. /package/dist/siemens-ix/{p-fb4c79c6.entry.js.map → p-04af3853.entry.js.map} +0 -0
  860. /package/dist/siemens-ix/{p-af099ca4.entry.js.map → p-0632731e.entry.js.map} +0 -0
  861. /package/dist/siemens-ix/{p-0d2a6886.entry.js.map → p-091b036d.entry.js.map} +0 -0
  862. /package/dist/siemens-ix/{p-2946fd70.entry.js.map → p-0fafba48.entry.js.map} +0 -0
  863. /package/dist/siemens-ix/{p-7076210b.entry.js.map → p-1483f65d.entry.js.map} +0 -0
  864. /package/dist/siemens-ix/{p-c1968b80.entry.js.map → p-1bd98772.entry.js.map} +0 -0
  865. /package/dist/siemens-ix/{p-8629db91.entry.js.map → p-25f1749c.entry.js.map} +0 -0
  866. /package/dist/siemens-ix/{p-5696bb62.entry.js.map → p-306269ae.entry.js.map} +0 -0
  867. /package/dist/siemens-ix/{p-b3b23af7.entry.js.map → p-35fff1e6.entry.js.map} +0 -0
  868. /package/dist/siemens-ix/{p-92a18c10.entry.js.map → p-411f51c5.entry.js.map} +0 -0
  869. /package/dist/siemens-ix/{p-f78246bd.entry.js.map → p-44a27b29.entry.js.map} +0 -0
  870. /package/dist/siemens-ix/{p-d03df401.entry.js.map → p-49d3fc15.entry.js.map} +0 -0
  871. /package/dist/siemens-ix/{p-113cc793.entry.js.map → p-5af99eaa.entry.js.map} +0 -0
  872. /package/dist/siemens-ix/{p-c1222581.entry.js.map → p-63f0755e.entry.js.map} +0 -0
  873. /package/dist/siemens-ix/{p-14a41c8c.entry.js.map → p-6618b2db.entry.js.map} +0 -0
  874. /package/dist/siemens-ix/{p-0653a145.entry.js.map → p-67f44540.entry.js.map} +0 -0
  875. /package/dist/siemens-ix/{p-53352bfb.entry.js.map → p-77273517.entry.js.map} +0 -0
  876. /package/dist/siemens-ix/{p-882a0233.entry.js.map → p-78ac2ff1.entry.js.map} +0 -0
  877. /package/dist/siemens-ix/{p-32375ddb.entry.js.map → p-7947ef3d.entry.js.map} +0 -0
  878. /package/dist/siemens-ix/{p-fb47546b.entry.js.map → p-7c2f34f0.entry.js.map} +0 -0
  879. /package/dist/siemens-ix/{p-7faa148f.entry.js.map → p-82d33168.entry.js.map} +0 -0
  880. /package/dist/siemens-ix/{p-052340f9.entry.js.map → p-8acc09aa.entry.js.map} +0 -0
  881. /package/dist/siemens-ix/{p-6fd7ecd0.entry.js.map → p-9079f6c8.entry.js.map} +0 -0
  882. /package/dist/siemens-ix/{p-16b923e9.entry.js.map → p-9bdda7ff.entry.js.map} +0 -0
  883. /package/dist/siemens-ix/{p-2c4c03d4.entry.js.map → p-aa814811.entry.js.map} +0 -0
  884. /package/dist/siemens-ix/{p-feac09bc.entry.js.map → p-ba24e694.entry.js.map} +0 -0
  885. /package/dist/siemens-ix/{p-44db3646.entry.js.map → p-c05a98c8.entry.js.map} +0 -0
  886. /package/dist/siemens-ix/{p-8d0758c1.entry.js.map → p-c7e58e9e.entry.js.map} +0 -0
  887. /package/dist/siemens-ix/{p-4430117a.entry.js.map → p-c81c4b9d.entry.js.map} +0 -0
  888. /package/dist/siemens-ix/{p-1a122c76.entry.js.map → p-d300b332.entry.js.map} +0 -0
  889. /package/dist/siemens-ix/{p-ff1ac5b3.entry.js.map → p-e14384df.entry.js.map} +0 -0
  890. /package/dist/siemens-ix/{p-bea7c748.entry.js.map → p-ee96d1eb.entry.js.map} +0 -0
  891. /package/dist/siemens-ix/{p-7750e187.entry.js.map → p-fd5bee44.entry.js.map} +0 -0
  892. /package/dist/siemens-ix/{p-dcb3e5be.entry.js.map → p-ffa856df.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["toastContainerCss","IxToastContainerStyle0","ToastContainer","this","PREFIX_POSITION_CLASS","hostContainer","Promise","resolve","interval","setInterval","containerElement","document","getElementById","containerId","clearInterval","componentDidLoad","toastContainer","createElement","id","classList","add","containerClass","position","body","appendChild","onPositionChange","newPosition","oldPosition","remove","showToast","config","toast","onClose","TypedEvent","removeToast","result","emit","toastTitle","title","type","autoClose","_a","autoCloseDelay","_b","icon","iconColor","addEventListener","event","detail","message","innerText","close","render","h","Host","key","class"],"sources":["src/components/toast/styles/toast-container.scss?tag=ix-toast-container&encapsulation=shadow","src/components/toast/toast-container.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n}\n\n#toast-container {\n > :not(:last-child) {\n margin-block-end: $default-space;\n }\n}\n\n.toast-container {\n display: block;\n position: fixed;\n}\n\n.toast-container--top-right {\n right: 1rem;\n top: 2rem;\n}\n\n.toast-container--bottom-right {\n right: 1rem;\n bottom: 2rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Method, Prop, Watch } from '@stencil/core';\nimport { TypedEvent } from '../utils/typed-event';\nimport { ToastConfig } from './toast-utils';\n\nexport type ShowToastResult = {\n onClose: TypedEvent<any | undefined>;\n close: (result?: any) => void;\n};\n\n@Component({\n tag: 'ix-toast-container',\n styleUrl: './styles/toast-container.scss',\n shadow: true,\n})\nexport class ToastContainer {\n /**\n */\n @Prop() containerId = 'toast-container';\n\n /**\n */\n @Prop() containerClass = 'toast-container';\n\n /**\n */\n @Prop() position: 'bottom-right' | 'top-right' = 'bottom-right';\n\n private readonly PREFIX_POSITION_CLASS = 'toast-container--';\n\n get hostContainer() {\n return new Promise<HTMLElement>((resolve) => {\n const interval = setInterval(() => {\n const containerElement = document.getElementById(this.containerId);\n if (containerElement) {\n clearInterval(interval);\n resolve(containerElement);\n }\n });\n });\n }\n\n componentDidLoad() {\n if (!document.getElementById(this.containerId)) {\n const toastContainer = document.createElement('div');\n toastContainer.id = this.containerId;\n toastContainer.classList.add(this.containerClass);\n toastContainer.classList.add(\n `${this.PREFIX_POSITION_CLASS}${this.position}`\n );\n document.body.appendChild(toastContainer);\n }\n }\n\n @Watch('position')\n onPositionChange(newPosition: string, oldPosition: string) {\n const toastContainer = document.getElementById(this.containerId);\n toastContainer.classList.remove(\n `${this.PREFIX_POSITION_CLASS}${oldPosition}`\n );\n toastContainer.classList.add(`${this.PREFIX_POSITION_CLASS}${newPosition}`);\n }\n\n /**\n * Display a toast message\n * @param config\n */\n @Method()\n async showToast(config: ToastConfig): Promise<ShowToastResult> {\n const toast = document.createElement('ix-toast');\n const onClose = new TypedEvent<any | undefined>();\n\n function removeToast(result?: any) {\n toast.remove();\n onClose.emit(result);\n }\n\n toast.toastTitle = config.title;\n toast.type = config.type;\n toast.autoClose = config.autoClose ?? true;\n toast.autoCloseDelay = config.autoCloseDelay ?? 5000;\n toast.icon = config.icon;\n toast.iconColor = config.iconColor;\n toast.addEventListener(\n 'closeToast',\n (event: CustomEvent<any | undefined>) => {\n const { detail } = event;\n removeToast(detail);\n }\n );\n\n if (typeof config.message === 'string') {\n toast.innerText = config.message;\n } else {\n toast.appendChild(config.message);\n }\n\n (await this.hostContainer).appendChild(toast);\n\n return {\n onClose,\n close: (result?: any) => {\n removeToast(result);\n },\n };\n }\n\n render() {\n return (\n <Host\n class={{\n 'toast-container--bottom-right': this.position === 'bottom-right',\n 'toast-container--top-right': this.position === 'top-right',\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAoB,+8BAC1B,MAAAC,EAAeD,E,MCsBFE,EAAc,M,yBAaRC,KAAAC,sBAAwB,oB,iBAVnB,kB,oBAIG,kB,cAIwB,c,CAIjD,iBAAIC,GACF,OAAO,IAAIC,SAAsBC,IAC/B,MAAMC,EAAWC,aAAY,KAC3B,MAAMC,EAAmBC,SAASC,eAAeT,KAAKU,aACtD,GAAIH,EAAkB,CACpBI,cAAcN,GACdD,EAAQG,E,IAEV,G,CAIN,gBAAAK,GACE,IAAKJ,SAASC,eAAeT,KAAKU,aAAc,CAC9C,MAAMG,EAAiBL,SAASM,cAAc,OAC9CD,EAAeE,GAAKf,KAAKU,YACzBG,EAAeG,UAAUC,IAAIjB,KAAKkB,gBAClCL,EAAeG,UAAUC,IACvB,GAAGjB,KAAKC,wBAAwBD,KAAKmB,YAEvCX,SAASY,KAAKC,YAAYR,E,EAK9B,gBAAAS,CAAiBC,EAAqBC,GACpC,MAAMX,EAAiBL,SAASC,eAAeT,KAAKU,aACpDG,EAAeG,UAAUS,OACvB,GAAGzB,KAAKC,wBAAwBuB,KAElCX,EAAeG,UAAUC,IAAI,GAAGjB,KAAKC,wBAAwBsB,I,CAQ/D,eAAMG,CAAUC,G,QACd,MAAMC,EAAQpB,SAASM,cAAc,YACrC,MAAMe,EAAU,IAAIC,EAEpB,SAASC,EAAYC,GACnBJ,EAAMH,SACNI,EAAQI,KAAKD,E,CAGfJ,EAAMM,WAAaP,EAAOQ,MAC1BP,EAAMQ,KAAOT,EAAOS,KACpBR,EAAMS,WAAYC,EAAAX,EAAOU,aAAS,MAAAC,SAAA,EAAAA,EAAI,KACtCV,EAAMW,gBAAiBC,EAAAb,EAAOY,kBAAc,MAAAC,SAAA,EAAAA,EAAI,IAChDZ,EAAMa,KAAOd,EAAOc,KACpBb,EAAMc,UAAYf,EAAOe,UACzBd,EAAMe,iBACJ,cACCC,IACC,MAAMC,OAAEA,GAAWD,EACnBb,EAAYc,EAAO,IAIvB,UAAWlB,EAAOmB,UAAY,SAAU,CACtClB,EAAMmB,UAAYpB,EAAOmB,O,KACpB,CACLlB,EAAMP,YAAYM,EAAOmB,Q,QAGpB9C,KAAKE,eAAemB,YAAYO,GAEvC,MAAO,CACLC,UACAmB,MAAQhB,IACND,EAAYC,EAAO,E,CAKzB,MAAAiB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,gCAAiCrD,KAAKmB,WAAa,eACnD,6BAA8BnB,KAAKmB,WAAa,cAGlD+B,EAAA,QAAAE,IAAA,6C"}
1
+ {"version":3,"names":["toastContainerCss","IxToastContainerStyle0","ToastContainer","this","PREFIX_POSITION_CLASS","hostContainer","Promise","resolve","interval","setInterval","containerElement","document","getElementById","containerId","clearInterval","componentDidLoad","toastContainer","createElement","id","classList","add","containerClass","position","body","appendChild","onPositionChange","newPosition","oldPosition","remove","showToast","config","toast","onClose","TypedEvent","removeToast","result","emit","toastTitle","title","type","autoClose","_a","autoCloseDelay","_b","icon","iconColor","addEventListener","event","detail","message","innerText","close","render","h","Host","key","class"],"sources":["src/components/toast/styles/toast-container.scss?tag=ix-toast-container&encapsulation=shadow","src/components/toast/toast-container.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n}\n\n#toast-container {\n > :not(:last-child) {\n margin-block-end: $default-space;\n }\n}\n\n.toast-container {\n display: block;\n position: fixed;\n}\n\n.toast-container--top-right {\n right: 1rem;\n top: 2rem;\n}\n\n.toast-container--bottom-right {\n right: 1rem;\n bottom: 2rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Method, Prop, Watch } from '@stencil/core';\nimport { TypedEvent } from '../utils/typed-event';\nimport { ToastConfig } from './toast-utils';\n\nexport type ShowToastResult = {\n onClose: TypedEvent<any | undefined>;\n close: (result?: any) => void;\n};\n\n@Component({\n tag: 'ix-toast-container',\n styleUrl: './styles/toast-container.scss',\n shadow: true,\n})\nexport class ToastContainer {\n /**\n */\n @Prop() containerId = 'toast-container';\n\n /**\n */\n @Prop() containerClass = 'toast-container';\n\n /**\n */\n @Prop() position: 'bottom-right' | 'top-right' = 'bottom-right';\n\n private readonly PREFIX_POSITION_CLASS = 'toast-container--';\n\n get hostContainer() {\n return new Promise<HTMLElement>((resolve) => {\n const interval = setInterval(() => {\n const containerElement = document.getElementById(this.containerId);\n if (containerElement) {\n clearInterval(interval);\n resolve(containerElement);\n }\n });\n });\n }\n\n componentDidLoad() {\n if (!document.getElementById(this.containerId)) {\n const toastContainer = document.createElement('div');\n toastContainer.id = this.containerId;\n toastContainer.classList.add(this.containerClass);\n toastContainer.classList.add(\n `${this.PREFIX_POSITION_CLASS}${this.position}`\n );\n document.body.appendChild(toastContainer);\n }\n }\n\n @Watch('position')\n onPositionChange(newPosition: string, oldPosition: string) {\n const toastContainer = document.getElementById(this.containerId);\n toastContainer.classList.remove(\n `${this.PREFIX_POSITION_CLASS}${oldPosition}`\n );\n toastContainer.classList.add(`${this.PREFIX_POSITION_CLASS}${newPosition}`);\n }\n\n /**\n * Display a toast message\n * @param config\n */\n @Method()\n async showToast(config: ToastConfig): Promise<ShowToastResult> {\n const toast = document.createElement('ix-toast');\n const onClose = new TypedEvent<any | undefined>();\n\n function removeToast(result?: any) {\n toast.remove();\n onClose.emit(result);\n }\n\n toast.toastTitle = config.title;\n toast.type = config.type;\n toast.autoClose = config.autoClose ?? true;\n toast.autoCloseDelay = config.autoCloseDelay ?? 5000;\n toast.icon = config.icon;\n toast.iconColor = config.iconColor;\n toast.addEventListener(\n 'closeToast',\n (event: CustomEvent<any | undefined>) => {\n const { detail } = event;\n removeToast(detail);\n }\n );\n\n if (typeof config.message === 'string') {\n toast.innerText = config.message;\n } else {\n toast.appendChild(config.message);\n }\n\n (await this.hostContainer).appendChild(toast);\n\n return {\n onClose,\n close: (result?: any) => {\n removeToast(result);\n },\n };\n }\n\n render() {\n return (\n <Host\n class={{\n 'toast-container--bottom-right': this.position === 'bottom-right',\n 'toast-container--top-right': this.position === 'top-right',\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAoB,+8BAC1B,MAAAC,EAAeD,E,MCsBFE,EAAc,M,yBAaRC,KAAAC,sBAAwB,oB,iBAVnB,kB,oBAIG,kB,cAIwB,c,CAIjD,iBAAIC,GACF,OAAO,IAAIC,SAAsBC,IAC/B,MAAMC,EAAWC,aAAY,KAC3B,MAAMC,EAAmBC,SAASC,eAAeT,KAAKU,aACtD,GAAIH,EAAkB,CACpBI,cAAcN,GACdD,EAAQG,E,IAEV,G,CAIN,gBAAAK,GACE,IAAKJ,SAASC,eAAeT,KAAKU,aAAc,CAC9C,MAAMG,EAAiBL,SAASM,cAAc,OAC9CD,EAAeE,GAAKf,KAAKU,YACzBG,EAAeG,UAAUC,IAAIjB,KAAKkB,gBAClCL,EAAeG,UAAUC,IACvB,GAAGjB,KAAKC,wBAAwBD,KAAKmB,YAEvCX,SAASY,KAAKC,YAAYR,E,EAK9B,gBAAAS,CAAiBC,EAAqBC,GACpC,MAAMX,EAAiBL,SAASC,eAAeT,KAAKU,aACpDG,EAAeG,UAAUS,OACvB,GAAGzB,KAAKC,wBAAwBuB,KAElCX,EAAeG,UAAUC,IAAI,GAAGjB,KAAKC,wBAAwBsB,I,CAQ/D,eAAMG,CAAUC,G,QACd,MAAMC,EAAQpB,SAASM,cAAc,YACrC,MAAMe,EAAU,IAAIC,EAEpB,SAASC,EAAYC,GACnBJ,EAAMH,SACNI,EAAQI,KAAKD,E,CAGfJ,EAAMM,WAAaP,EAAOQ,MAC1BP,EAAMQ,KAAOT,EAAOS,KACpBR,EAAMS,WAAYC,EAAAX,EAAOU,aAAS,MAAAC,SAAA,EAAAA,EAAI,KACtCV,EAAMW,gBAAiBC,EAAAb,EAAOY,kBAAc,MAAAC,SAAA,EAAAA,EAAI,IAChDZ,EAAMa,KAAOd,EAAOc,KACpBb,EAAMc,UAAYf,EAAOe,UACzBd,EAAMe,iBACJ,cACCC,IACC,MAAMC,OAAEA,GAAWD,EACnBb,EAAYc,EAAO,IAIvB,UAAWlB,EAAOmB,UAAY,SAAU,CACtClB,EAAMmB,UAAYpB,EAAOmB,O,KACpB,CACLlB,EAAMP,YAAYM,EAAOmB,Q,QAGpB9C,KAAKE,eAAemB,YAAYO,GAEvC,MAAO,CACLC,UACAmB,MAAQhB,IACND,EAAYC,EAAO,E,CAKzB,MAAAiB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,gCAAiCrD,KAAKmB,WAAa,eACnD,6BAA8BnB,KAAKmB,WAAa,cAGlD+B,EAAA,QAAAE,IAAA,6C"}
@@ -1,2 +1,2 @@
1
- import{r as e,c as r,h as o,H as t}from"./p-f87cd962.js";import{a as s}from"./p-71206084.js";const a=":host{margin:0.5rem 0.5rem 0rem 0.5rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .message-container{display:flex;flex-direction:row;align-items:flex-start;flex-wrap:nowrap;justify-content:space-between;min-height:3.375rem;padding:calc(0.75rem - var(--theme-message-bar--border-thickness)) 0.75rem calc(0.75rem - var(--theme-message-bar--border-thickness)) 1rem;border-radius:var(--theme-message-bar--border-radius);background-color:var(--theme-messagebar--background)}:host .danger{border:solid var(--theme-message-bar--border-thickness) var(--theme-color-alarm)}:host .warning{border:solid var(--theme-message-bar--border-thickness) var(--theme-color-warning)}:host .info{border:solid var(--theme-message-bar--border-thickness) var(--theme-color-info)}:host .message-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1;align-self:center;min-height:1.25rem;padding:0 1rem;font-weight:normal;white-space:normal}:host ix-icon{margin-top:0.25rem}";const i=a;const c=class{constructor(o){e(this,o);this.closedChange=r(this,"closedChange",7);this.type="info";this.dismissible=true;this.icon=undefined;this.color=undefined}componentWillRender(){if(this.type==="danger"){this.icon="error";this.color="color-alarm"}if(this.type==="info"){this.icon="info";this.color="color-info"}if(this.type==="warning"){this.icon="warning";this.color="color-warning"}}closeAlert(e){s({targets:e,duration:c.duration,opacity:[1,0],easing:"easeOutSine",complete:()=>{e.classList.add("d-none")}});this.closedChange.emit()}render(){return o(t,{key:"89f424843ed559d787f88edd431f1321086cbbb2"},o("div",{key:"3f450ca115c040e749a0926d896dc2bb7ad3648d",class:{"message-container":true,[this.type]:true},role:"alert",ref:e=>this.divElement=e},o("ix-icon",{key:"73dcaa37d965d84b754cb14e58c3442665fcca07",color:this.color,name:this.icon}),o("div",{key:"b5d5178e53c550320803ffa2ac4da925db284fc7",class:"message-content"},o("slot",{key:"e9d97812edc2c45d0c16f57d29352f5357312720"})),this.dismissible?o("ix-icon-button",{icon:"close",size:"24",ghost:true,onClick:()=>{this.closeAlert(this.divElement)},"data-testid":"close-btn"}):""))}};c.duration=300;c.style=i;export{c as ix_message_bar};
2
- //# sourceMappingURL=p-113cc793.entry.js.map
1
+ import{r as e,c as r,h as o,H as t}from"./p-f87cd962.js";import{a as s}from"./p-71206084.js";const a=":host{margin:0.5rem 0.5rem 0rem 0.5rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .message-container{display:flex;flex-direction:row;align-items:flex-start;flex-wrap:nowrap;justify-content:space-between;min-height:3.375rem;padding:calc(0.75rem - var(--theme-message-bar--border-thickness)) 0.75rem calc(0.75rem - var(--theme-message-bar--border-thickness)) 1rem;border-radius:var(--theme-message-bar--border-radius);background-color:var(--theme-messagebar--background)}:host .danger{border:solid var(--theme-message-bar--border-thickness) var(--theme-color-alarm)}:host .warning{border:solid var(--theme-message-bar--border-thickness) var(--theme-color-warning)}:host .info{border:solid var(--theme-message-bar--border-thickness) var(--theme-color-info)}:host .message-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1;align-self:center;min-height:1.25rem;padding:0 1rem;font-weight:normal;white-space:normal}:host ix-icon{margin-top:0.25rem}";const i=a;const c=class{constructor(o){e(this,o);this.closedChange=r(this,"closedChange",7);this.type="info";this.dismissible=true;this.icon=undefined;this.color=undefined}componentWillRender(){if(this.type==="danger"){this.icon="error";this.color="color-alarm"}if(this.type==="info"){this.icon="info";this.color="color-info"}if(this.type==="warning"){this.icon="warning";this.color="color-warning"}}closeAlert(e){s({targets:e,duration:c.duration,opacity:[1,0],easing:"easeOutSine",complete:()=>{e.classList.add("d-none")}});this.closedChange.emit()}render(){return o(t,{key:"5cfbf8a6f0410db0bce4d9313b67eeaca3fd7ee1"},o("div",{key:"0379523394cfcb8c662bfc1e9b4b6f22f1516d61",class:{"message-container":true,[this.type]:true},role:"alert",ref:e=>this.divElement=e},o("ix-icon",{key:"9b94770ff17de637c2dd4924fff67b04d537a137",color:this.color,name:this.icon}),o("div",{key:"e1144a9ccf300e73b3cba522db91966c9bf1b3f1",class:"message-content"},o("slot",{key:"bffed0ff54c91f4fcb836dbc706931372b3fb42e"})),this.dismissible?o("ix-icon-button",{icon:"close",size:"24",ghost:true,onClick:()=>{this.closeAlert(this.divElement)},"data-testid":"close-btn"}):""))}};c.duration=300;c.style=i;export{c as ix_message_bar};
2
+ //# sourceMappingURL=p-5af99eaa.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as e,f as t,h as r,H as i,c as o,F as a,g as s}from"./p-f87cd962.js";import{m as d}from"./p-68a274e7.js";import{D as n,I as c}from"./p-f5e574da.js";import{O as h}from"./p-0c8a98cd.js";const l=":host{position:relative;flex-basis:0;flex-grow:1;width:100%;max-width:100%;min-height:1px;padding:calc(var(--ix-layout-grid-gutter) * 0.5)}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const u=l;const b=class{constructor(t){e(this,t);this.size=undefined;this.sizeSm=undefined;this.sizeMd=undefined;this.sizeLg=undefined}onResize(){t(this)}getSize(e){if(e===""){return this.size}if(e==="sm"){return this.sizeSm}if(e==="md"){return this.sizeMd}if(e==="lg"){return this.sizeLg}}getColumnSize(){let e;b.Breakpoints.forEach((t=>{const r=t!==""?d(t):true;if(!r){return}const i=this.getSize(t);if(i){e=i}}));return e}getColumnSizeStyling(){const e=this.getColumnSize();if(!e){return}if(e==="auto"){return{flex:"0 0 auto",width:"auto","max-width":"auto"}}const t=`calc(calc(${e} / var(--ix-layout-grid-columns)) * 100%)`;return{flex:`0 0 ${t}`,width:`${t}`,"max-width":`${t}`}}render(){return r(i,{key:"7cbf750f0768a0a1db65aa2651605c89f82ce604",style:Object.assign({},this.getColumnSizeStyling())},r("slot",{key:"d83749089de332574097a8299c265d45b1fd8da7"}))}};b.Breakpoints=["","sm","md","lg"];b.style=u;const f=":host{display:block;position:relative;width:22rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .header{display:flex;align-items:center;justify-content:space-between}:host .disabled-item{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled);cursor:default}:host .selector{flex-basis:100%;display:flex;align-items:center;justify-content:center;padding:0.25rem 1rem}:host .selector .dropdown{color:var(--theme-menu-item--color);font-size:14px;line-height:20px}:host .selector .fontSize{font-size:16px}:host .selector .capitalize{text-transform:capitalize}:host .selector .month-dropdown-item{margin-left:4px;margin-right:4px}:host .selector .month-dropdown-item:focus-visible{outline:1px solid var(--theme-color-focus-bdr);outline-offset:var(--theme-btn--focus--outline-offset)}:host .selector .arrowYear{display:flex;position:relative;padding:0.75rem 2rem;align-items:center;cursor:pointer}:host .selector .arrowYear:hover{background-color:var(--theme-select-list-item--background--hover)}:host .selector .arrowYear.selected{background-color:var(--theme-select-list-item--background--selected)}:host .selector .arrowYear .arrowPosition{position:absolute;left:calc(1rem - 6px);top:calc(50% - 6px)}:host .selector .arrowYear .checkPosition{position:absolute;left:calc(1rem - 6px);top:calc(50% - 8px)}:host .selector .arrowYear .monthMargin{margin-left:10px}:host .wrapper{display:flex}:host .wrapper .overflow{overflow-y:scroll;max-height:250px}:host .grid{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)}:host .grid .calendar-item{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}:host .grid .calendar-item:focus-visible{outline:1px solid var(--theme-color-focus-bdr);outline-offset:var(--theme-btn--focus--outline-offset)}:host .grid .calendar-item.today{border:1px solid var(--theme-datepicker-today--border-color)}:host .grid .calendar-item.today:hover{background-color:var(--theme-datepicker-day--background--hover)}:host .grid .calendar-item.today:active{background-color:var(--theme-datepicker-day--background--active)}:host .grid .calendar-item.today.selected{box-shadow:inset 0 0 0 1px white}:host .grid .calendar-item.today.selected:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}:host .grid .calendar-item.today.selected:active{background-color:var(--theme-datepicker-day--background--selected-active)}:host .grid .calendar-item.today.selected.disabled{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)}:host .grid .calendar-item.today.range{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}:host .grid .calendar-item.today.range:hover{background-color:var(--theme-datepicker-day--background--range-hover);border:1px solid var(--theme-datepicker-today--border-color--range-hover)}:host .grid .calendar-item.today.range:active{background-color:var(--theme-datepicker-day--background--range-active);border:1px solid var(--theme-datepicker-today--border-color--range-active)}:host .grid .calendar-item.today.range.disabled{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)}:host .grid .calendar-item.today.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled);cursor:default}:host .grid .calendar-item:hover{background-color:var(--theme-datepicker-day--background--hover)}:host .grid .calendar-item:active{background-color:var(--theme-datepicker-day--background--active)}:host .grid .calendar-item.selected{background-color:var(--theme-datepicker-day--background--selected);color:var(--theme-datepicker-day--color--selected);border:1px solid var(--theme-datepicker-day--background--selected)}:host .grid .calendar-item.selected:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}:host .grid .calendar-item.selected:active{background-color:var(--theme-datepicker-day--background--selected-active)}:host .grid .calendar-item.selected.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--selected-disabled);color:var(--theme-datepicker-day--color--selected-disabled)}:host .grid .calendar-item.range{background-color:var(--theme-datepicker-day--background--range);color:var(--theme-datepicker-day--color--range)}:host .grid .calendar-item.range:hover{background-color:var(--theme-datepicker-day--background--range-hover)}:host .grid .calendar-item.range:active{background-color:var(--theme-datepicker-day--background--range-active)}:host .grid .calendar-item.range.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--range-disabled);color:var(--theme-datepicker-day--color--range-disabled)}:host .grid .calendar-item.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled)}:host .grid .calendar-item.week-day{color:var(--theme-datepicker-weekday--color);font-size:12px;line-height:20px;border:none;background:none;cursor:initial}:host .grid .calendar-item.empty-day{border:none;background:none;cursor:initial}:host .grid .calendar-item.week-number{font-size:10px;line-height:14px;color:var(--theme-datepicker-weekday--color);border:none;background:none;cursor:initial}:host .grid .calendar-item: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}:host .button{display:flex;justify-content:flex-end}:host .hidden{display:none}";const g=f;var m=undefined&&undefined.__decorate||function(e,t,r,i){var o=arguments.length,a=o<3?t:i===null?i=Object.getOwnPropertyDescriptor(t,r):i,s;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")a=Reflect.decorate(e,t,r,i);else for(var d=e.length-1;d>=0;d--)if(s=e[d])a=(o<3?s(a):o>3?s(t,r,a):s(t,r))||a;return o>3&&a&&Object.defineProperty(t,r,a),a};const k=class{constructor(t){e(this,t);this.dateChange=o(this,"dateChange",7);this.dateRangeChange=o(this,"dateRangeChange",7);this.dateSelect=o(this,"dateSelect",7);this.done=o(this,"done",7);this.DAYS_IN_WEEK=7;this.format="yyyy/LL/dd";this.range=true;this.corners="rounded";this.from=undefined;this.to=undefined;this.minDate=undefined;this.maxDate=undefined;this.textSelectDate=undefined;this.i18nDone="Done";this.weekStartIndex=0;this.locale=undefined;this.individual=true;this.eventDelimiter=" - ";this.standaloneAppearance=true;this.today=n.now().toISO();this.currFromDate=undefined;this.currToDate=undefined;this.selectedYear=undefined;this.tempYear=undefined;this.startYear=undefined;this.endYear=undefined;this.selectedMonth=undefined;this.tempMonth=undefined;this.dropdownButtonRef=undefined;this.yearContainerRef=undefined;this.dayNames=undefined;this.monthNames=undefined;this.firstMonthRef=undefined;this.focusedDay=1;this.focusedDayElem=undefined}watchFromPropHandler(e){var t;this.currFromDate=e?n.fromFormat(e,this.format):undefined;if((t=this.currFromDate)===null||t===void 0?void 0:t.isValid){this.selectedYear=this.currFromDate.year;this.selectedMonth=this.currFromDate.month-1}}watchToPropHandler(e){var t;this.currToDate=e?n.fromFormat(e,this.format):undefined;if((t=this.currToDate)===null||t===void 0?void 0:t.isValid){this.selectedYear=this.currToDate.year;this.selectedMonth=this.currToDate.month-1}}onLocaleChange(){this.setTranslations()}async getCurrentDate(){var e,t,r,i;const o=((e=this.currFromDate)===null||e===void 0?void 0:e.isValid)?(t=this.currFromDate)===null||t===void 0?void 0:t.toFormat(this.format):undefined;const a=((r=this.currToDate)===null||r===void 0?void 0:r.isValid)?(i=this.currToDate)===null||i===void 0?void 0:i.toFormat(this.format):undefined;if(this.range){return{from:o,to:a}}return{from:o,to:undefined}}handleKeyUp(e){if(!this.isDayFocus){return}let t=this.focusedDay;switch(e.key){case"ArrowLeft":t--;break;case"ArrowRight":t++;break;case"ArrowUp":t=t-7;break;case"ArrowDown":t=t+7;break;default:return}if(t>this.getDaysInCurrentMonth()){t=t-this.getDaysInCurrentMonth();this.changeToAdjacentMonth(1);this.monthChangedFromFocus=true}else if(t<1){this.changeToAdjacentMonth(-1);t=t+this.getDaysInCurrentMonth();this.monthChangedFromFocus=true}this.focusedDay=t}getDaysInCurrentMonth(){return n.utc(this.selectedYear,this.selectedMonth+1).daysInMonth}getDateTimeNow(){return n.fromISO(this.today)}onDayBlur(){this.isDayFocus=false}onDayFocus(){this.isDayFocus=true}componentWillLoad(){var e,t,r,i;this.setTranslations();this.currFromDate=this.from?n.fromFormat(this.from,this.format):undefined;this.currToDate=this.to?n.fromFormat(this.to,this.format):undefined;const o=(t=(e=this.currFromDate)===null||e===void 0?void 0:e.year)!==null&&t!==void 0?t:this.getDateTimeNow().year;this.startYear=o-5;this.endYear=o+5;this.selectedMonth=((i=(r=this.currFromDate)===null||r===void 0?void 0:r.month)!==null&&i!==void 0?i:this.getDateTimeNow().month)-1;this.selectedYear=o;this.tempMonth=this.selectedMonth;this.tempYear=this.selectedYear}componentWillRender(){this.calculateCalendar()}componentDidRender(){if(!this.monthChangedFromFocus&&!this.isDayFocus){return}const e=this.hostElement.shadowRoot.querySelector(`[id=day-cell-${this.focusedDay}]`);e.focus()}setTranslations(){this.dayNames=this.rotateWeekDayNames(c.weekdays("long",{locale:this.locale}),this.weekStartIndex);this.monthNames=c.months("long",{locale:this.locale})}rotateWeekDayNames(e,t){const r=[...e];if(t===0){return r}t=-t;const i=e.length;r.push(...r.splice(0,(-t%i+i)%i));return r}async onDone(){const e=await this.getCurrentDate();this.dateSelect.emit(e)}calculateCalendar(){const e=[];const t=n.utc(this.selectedYear,this.selectedMonth+1);const r=t.startOf("month");const i=t.endOf("month");let o=r.weekNumber;let a=i.weekNumber;let s=r.weekday-1;let d=i.weekday-1;if(this.weekStartIndex!==0){const e=c.weekdays();const t=e[r.weekday];s=this.dayNames.findIndex((e=>e===t));const o=e[i.weekday];d=this.dayNames.findIndex((e=>e===o))}let h=false;if(a===1){a=i.weeksInWeekYear+1;h=true}let l=false;if(o===r.weeksInWeekYear){o=1;a++;l=true}let u=1;for(let t=o;t<=a&&u<=31;t++){const n=[];for(let e=0;e<this.DAYS_IN_WEEK&&u<=31;e++){if(t===o&&e<s||t===a&&e>d){n.push(undefined)}else{n.push(u++)}}if(l||h){if(t===1){e.push({weekNumber:r.weeksInWeekYear,dayNumbers:n})}else if(t===i.weekNumber){e.push({weekNumber:1,dayNumbers:n})}else{e.push({weekNumber:t-1,dayNumbers:n})}continue}e.push({weekNumber:t,dayNumbers:n})}this.calendar=e}selectTempYear(e,t){e===null||e===void 0?void 0:e.stopPropagation();this.tempYear=t}focusMonth(){this.firstMonthRef.focus()}infiniteScrollYears(){const e=this.yearContainerRef.scrollTop;const t=this.yearContainerRef.scrollHeight;const r=e===0;const i=Math.round(e+this.yearContainerRef.offsetHeight)>=t;const o=200;if(this.endYear-this.startYear>o)return;if(r){const e=this.yearContainerRef.firstElementChild;this.startYear-=5;this.yearContainerRef.scrollTo(0,e.offsetTop);return}if(i){const e=this.yearContainerRef.lastElementChild;this.endYear+=5;this.yearContainerRef.scrollTo(0,e.offsetTop)}}selectMonth(e){this.selectedMonth=e;this.selectedYear=this.tempYear;this.tempMonth=e;this.hostElement.shadowRoot.querySelector("ix-dropdown").show=false}changeToAdjacentMonth(e){if(this.selectedMonth+e<0){this.selectedYear--;this.selectedMonth=11}else if(this.selectedMonth+e>11){this.selectedYear++;this.selectedMonth=0}else{this.selectedMonth+=e}}selectDay(e){const t=n.fromJSDate(new Date(this.selectedYear,this.selectedMonth,e));if(!this.range||this.currFromDate===undefined){this.currFromDate=t;this.onDateChange();return}if(this.currToDate!==undefined){this.currFromDate=t;this.currToDate=undefined;this.onDateChange();return}if(t<this.currFromDate){this.currToDate=this.currFromDate;this.currFromDate=t;this.onDateChange();return}this.currToDate=t;this.onDateChange()}onDateChange(){this.getCurrentDate().then((e=>{this.dateChange.emit(e);if(this.range){this.dateRangeChange.emit(e)}}))}getDayClasses(e){var t,r,i,o;if(!e){return}const a=this.getDateTimeNow();const s=n.fromJSDate(new Date(this.selectedYear,this.selectedMonth,e));return{"calendar-item":true,"empty-day":e===undefined,today:a.hasSame(s,"day"),selected:((t=this.currFromDate)===null||t===void 0?void 0:t.hasSame(s,"day"))||((r=this.currToDate)===null||r===void 0?void 0:r.hasSame(s,"day")),range:s.startOf("day")>((i=this.currFromDate)===null||i===void 0?void 0:i.startOf("day"))&&this.currToDate!==undefined&&s.startOf("day")<((o=this.currToDate)===null||o===void 0?void 0:o.startOf("day")),disabled:!this.isWithinMinMaxDate(s)}}isWithinMinMaxYear(e){const t=this.minDate?n.fromFormat(this.minDate,this.format).year:undefined;const r=this.maxDate?n.fromFormat(this.maxDate,this.format).year:undefined;const i=t?e<t:false;const o=r?e>r:false;return!i&&!o}isWithinMinMaxMonth(e){const t=this.minDate?n.fromFormat(this.minDate,this.format):undefined;const r=this.maxDate?n.fromFormat(this.maxDate,this.format):undefined;const i=t===null||t===void 0?void 0:t.month;const o=r===null||r===void 0?void 0:r.month;const a=i?this.tempYear===t.year&&e<i:false;const s=o?this.tempYear===r.year&&e>o:false;return!a&&!s}isWithinMinMaxDate(e){const t=this.minDate?n.fromFormat(this.minDate,this.format):undefined;const r=this.maxDate?n.fromFormat(this.maxDate,this.format):undefined;const i=t?e.startOf("day")<t.startOf("day"):false;const o=r?e.startOf("day")>r.startOf("day"):false;return!i&&!o}renderYears(){const e=[];for(let t=this.startYear;t<=this.endYear;t++){e.push(r("div",{key:t,class:{arrowYear:true,"month-dropdown-item":true,"disabled-item":!this.isWithinMinMaxYear(t)},onClick:e=>this.selectTempYear(e,t),onKeyUp:e=>{if(e.key==="Enter"){this.selectTempYear(null,t);this.focusMonth()}},tabIndex:0},r("ix-icon",{class:{hidden:this.tempYear!==t,arrowPosition:true},name:"chevron-right",size:"12"}),r("div",{style:{"min-width":"max-content"}},`${t}`)))}return e}render(){return r(i,{key:"559881c8673da97e842398f4bcfe67ef5ff27794"},r("ix-date-time-card",{key:"4550d5f5a242be0ff07110cc400ef12795475c5c",corners:this.corners,standaloneAppearance:this.standaloneAppearance},r("div",{key:"f10ccab02142ae7461ac4b4ba4e8a8eb57123438",class:"header",slot:"header"},r("ix-icon-button",{key:"52b171c5e04a5bbcb0832f0e6033947735521601",onClick:()=>this.changeToAdjacentMonth(-1),ghost:true,icon:"chevron-left",variant:"primary",class:"arrows"}),r("div",{key:"c48d51b3f22c9862c8006520530559ed44d16372",class:"selector"},r("ix-button",{key:"8c155fcbafb7c3f32dab3c9ebc912153813ce207",ghost:true,ref:e=>this.dropdownButtonRef=e,"data-testid":"year-month-button"},r("span",{key:"74c9634e13886d26238b4ee2262314914b1e8cf8",class:"fontSize capitalize"},this.monthNames[this.selectedMonth]," ",this.selectedYear)),r("ix-dropdown",{key:"ba249019d78a59e65f3a479a3ea8315b5990bcac","data-testid":"year-month-dropdown",class:"dropdown",trigger:this.dropdownButtonRef,ignoreRelatedSubmenu:true,placement:"bottom-start"},r("div",{key:"39365087bbb4c4dd4e0329828f61a90a1247b744",class:"wrapper"},r("div",{key:"017d16a032a473b0e791c8dc342b5e62481212e3","data-testid":"year-container",class:"overflow",onScroll:()=>this.infiniteScrollYears(),ref:e=>this.yearContainerRef=e},this.renderYears()),r("div",{key:"1bef58292da8545924f53fdbeddbc864936a56ef",class:"overflow","data-testid":"month-container"},this.monthNames.map(((e,t)=>r("div",{key:e,ref:t=>{if(e===this.monthNames[0]){this.firstMonthRef=t}},class:{arrowYear:true,"month-dropdown-item":true,selected:this.tempYear===this.selectedYear&&this.tempMonth===t,"disabled-item":!this.isWithinMinMaxMonth(t)},onClick:()=>this.selectMonth(t),onKeyUp:e=>e.key==="Enter"&&this.selectMonth(t),tabIndex:0},r("ix-icon",{class:{hidden:this.tempYear!==this.selectedYear||this.tempMonth!==t,checkPosition:true},name:"single-check",size:"16"}),r("div",null,r("span",{class:"capitalize monthMargin"},`${e} ${this.tempYear}`))))))))),r("ix-icon-button",{key:"f414faea937a05dd2690e82d01daf1f444fbce25",onClick:()=>this.changeToAdjacentMonth(1),ghost:true,icon:"chevron-right",variant:"primary",class:"arrows"})),r("div",{key:"b79a961fbfc8c8dd821a83ab172dd7146acc5ade",class:"grid"},r("div",{key:"7651643c6320b8598b52ffaa45dc70498854d1ad",class:"calendar-item week-day"}),this.dayNames.map((e=>r("div",{key:e,class:"calendar-item week-day"},e.slice(0,3)))),this.calendar.map((e=>r(a,null,r("div",{class:"calendar-item week-number"},e.weekNumber),e.dayNumbers.map((e=>r("div",{key:e,id:`day-cell-${e}`,"date-calender-day":true,class:this.getDayClasses(e),onClick:()=>this.selectDay(e),onKeyUp:t=>t.key==="Enter"&&this.selectDay(e),tabIndex:e===this.focusedDay?0:-1,onFocus:()=>this.onDayFocus(),onBlur:()=>this.onDayBlur()},e))))))),r("div",{key:"0e6b9845bfdb760777cbd0f2f8419aeb5b667799",class:{button:true,hidden:!this.range||!this.standaloneAppearance}},r("ix-button",{key:"bb02236b3e41f3168aa2d5aad2c8e4aa9af90a49",onClick:()=>this.onDone()},this.textSelectDate||this.i18nDone))))}get hostElement(){return s(this)}static get watchers(){return{from:["watchFromPropHandler"],to:["watchToPropHandler"],locale:["onLocaleChange"]}}};m([h("keydown")],k.prototype,"handleKeyUp",null);k.style=g;const p=":host{--ix-layout-grid-gutter:24px;display:block;flex:1 1 0%;width:100%;padding-left:calc(var(--ix-layout-grid-gutter) * 0.5);padding-right:calc(var(--ix-layout-grid-gutter) * 0.5)}:host(.no-margin){padding-left:0;padding-right:0}";const v=p;const y=class{constructor(t){e(this,t);this.noMargin=false;this.gap="24";this.columns=12}render(){return r(i,{key:"d77291cf3cca2fd4a61c8998a095923f195b3d8f",class:{"no-margin":this.noMargin},style:{"--ix-layout-grid-columns":`${this.columns}`,"--ix-layout-grid-gutter":`${this.gap}px`}},r("slot",{key:"c149d8a794c75e48d748cccbc3cb9aada30c30ef"}))}};y.style=v;const x=":host{display:flex;flex-wrap:wrap}:host(:not(:first-of-type)){margin-block-start:var(--ix-layout-grid-row-margin, 0)}";const w=x;const z=class{constructor(t){e(this,t)}render(){return r(i,{key:"b8813e92c151d3f0a6d063a4f03b50f384ef1127"},r("slot",{key:"5246811d7fb18593758b07a32e58fee15ba34d51"}))}};z.style=w;export{b as ix_col,k as ix_date_picker,y as ix_layout_grid,z as ix_row};
2
- //# sourceMappingURL=p-e30ed20a.entry.js.map
1
+ import{r as e,f as t,h as r,H as i,c as o,F as a,g as s}from"./p-f87cd962.js";import{m as d}from"./p-68a274e7.js";import{D as n,I as c}from"./p-f5e574da.js";import{O as h}from"./p-e948bcb0.js";const l=":host{position:relative;flex-basis:0;flex-grow:1;width:100%;max-width:100%;min-height:1px;padding:calc(var(--ix-layout-grid-gutter) * 0.5)}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const u=l;const b=class{constructor(t){e(this,t);this.size=undefined;this.sizeSm=undefined;this.sizeMd=undefined;this.sizeLg=undefined}onResize(){t(this)}getSize(e){if(e===""){return this.size}if(e==="sm"){return this.sizeSm}if(e==="md"){return this.sizeMd}if(e==="lg"){return this.sizeLg}}getColumnSize(){let e;b.Breakpoints.forEach((t=>{const r=t!==""?d(t):true;if(!r){return}const i=this.getSize(t);if(i){e=i}}));return e}getColumnSizeStyling(){const e=this.getColumnSize();if(!e){return}if(e==="auto"){return{flex:"0 0 auto",width:"auto","max-width":"auto"}}const t=`calc(calc(${e} / var(--ix-layout-grid-columns)) * 100%)`;return{flex:`0 0 ${t}`,width:`${t}`,"max-width":`${t}`}}render(){return r(i,{key:"7cbf750f0768a0a1db65aa2651605c89f82ce604",style:Object.assign({},this.getColumnSizeStyling())},r("slot",{key:"d83749089de332574097a8299c265d45b1fd8da7"}))}};b.Breakpoints=["","sm","md","lg"];b.style=u;const f=":host{display:block;position:relative;width:22rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .header{display:flex;align-items:center;justify-content:space-between}:host .disabled-item{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled);cursor:default}:host .selector{flex-basis:100%;display:flex;align-items:center;justify-content:center;padding:0.25rem 1rem}:host .selector .dropdown{color:var(--theme-menu-item--color);font-size:14px;line-height:20px}:host .selector .fontSize{font-size:16px}:host .selector .capitalize{text-transform:capitalize}:host .selector .month-dropdown-item{margin-left:4px;margin-right:4px}:host .selector .month-dropdown-item:focus-visible{outline:1px solid var(--theme-color-focus-bdr);outline-offset:var(--theme-btn--focus--outline-offset)}:host .selector .arrowYear{display:flex;position:relative;padding:0.75rem 2rem;align-items:center;cursor:pointer}:host .selector .arrowYear:hover{background-color:var(--theme-select-list-item--background--hover)}:host .selector .arrowYear.selected{background-color:var(--theme-select-list-item--background--selected)}:host .selector .arrowYear .arrowPosition{position:absolute;left:calc(1rem - 6px);top:calc(50% - 6px)}:host .selector .arrowYear .checkPosition{position:absolute;left:calc(1rem - 6px);top:calc(50% - 8px)}:host .selector .arrowYear .monthMargin{margin-left:10px}:host .wrapper{display:flex}:host .wrapper .overflow{overflow-y:scroll;max-height:250px}:host .grid{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)}:host .grid .calendar-item{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}:host .grid .calendar-item:focus-visible{outline:1px solid var(--theme-color-focus-bdr);outline-offset:var(--theme-btn--focus--outline-offset)}:host .grid .calendar-item.today{border:1px solid var(--theme-datepicker-today--border-color)}:host .grid .calendar-item.today:hover{background-color:var(--theme-datepicker-day--background--hover)}:host .grid .calendar-item.today:active{background-color:var(--theme-datepicker-day--background--active)}:host .grid .calendar-item.today.selected{box-shadow:inset 0 0 0 1px white}:host .grid .calendar-item.today.selected:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}:host .grid .calendar-item.today.selected:active{background-color:var(--theme-datepicker-day--background--selected-active)}:host .grid .calendar-item.today.selected.disabled{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)}:host .grid .calendar-item.today.range{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}:host .grid .calendar-item.today.range:hover{background-color:var(--theme-datepicker-day--background--range-hover);border:1px solid var(--theme-datepicker-today--border-color--range-hover)}:host .grid .calendar-item.today.range:active{background-color:var(--theme-datepicker-day--background--range-active);border:1px solid var(--theme-datepicker-today--border-color--range-active)}:host .grid .calendar-item.today.range.disabled{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)}:host .grid .calendar-item.today.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled);cursor:default}:host .grid .calendar-item:hover{background-color:var(--theme-datepicker-day--background--hover)}:host .grid .calendar-item:active{background-color:var(--theme-datepicker-day--background--active)}:host .grid .calendar-item.selected{background-color:var(--theme-datepicker-day--background--selected);color:var(--theme-datepicker-day--color--selected);border:1px solid var(--theme-datepicker-day--background--selected)}:host .grid .calendar-item.selected:hover{background-color:var(--theme-datepicker-day--background--selected-hover)}:host .grid .calendar-item.selected:active{background-color:var(--theme-datepicker-day--background--selected-active)}:host .grid .calendar-item.selected.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--selected-disabled);color:var(--theme-datepicker-day--color--selected-disabled)}:host .grid .calendar-item.range{background-color:var(--theme-datepicker-day--background--range);color:var(--theme-datepicker-day--color--range)}:host .grid .calendar-item.range:hover{background-color:var(--theme-datepicker-day--background--range-hover)}:host .grid .calendar-item.range:active{background-color:var(--theme-datepicker-day--background--range-active)}:host .grid .calendar-item.range.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--range-disabled);color:var(--theme-datepicker-day--color--range-disabled)}:host .grid .calendar-item.disabled{pointer-events:none;background-color:var(--theme-datepicker-day--background--disabled);color:var(--theme-datepicker-day--color--disabled)}:host .grid .calendar-item.week-day{color:var(--theme-datepicker-weekday--color);font-size:12px;line-height:20px;border:none;background:none;cursor:initial}:host .grid .calendar-item.empty-day{border:none;background:none;cursor:initial}:host .grid .calendar-item.week-number{font-size:10px;line-height:14px;color:var(--theme-datepicker-weekday--color);border:none;background:none;cursor:initial}:host .grid .calendar-item: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}:host .button{display:flex;justify-content:flex-end}:host .hidden{display:none}";const g=f;var m=undefined&&undefined.__decorate||function(e,t,r,i){var o=arguments.length,a=o<3?t:i===null?i=Object.getOwnPropertyDescriptor(t,r):i,s;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")a=Reflect.decorate(e,t,r,i);else for(var d=e.length-1;d>=0;d--)if(s=e[d])a=(o<3?s(a):o>3?s(t,r,a):s(t,r))||a;return o>3&&a&&Object.defineProperty(t,r,a),a};const k=class{constructor(t){e(this,t);this.dateChange=o(this,"dateChange",7);this.dateRangeChange=o(this,"dateRangeChange",7);this.dateSelect=o(this,"dateSelect",7);this.done=o(this,"done",7);this.DAYS_IN_WEEK=7;this.format="yyyy/LL/dd";this.range=true;this.corners="rounded";this.from=undefined;this.to=undefined;this.minDate=undefined;this.maxDate=undefined;this.textSelectDate=undefined;this.i18nDone="Done";this.weekStartIndex=0;this.locale=undefined;this.individual=true;this.eventDelimiter=" - ";this.standaloneAppearance=true;this.today=n.now().toISO();this.currFromDate=undefined;this.currToDate=undefined;this.selectedYear=undefined;this.tempYear=undefined;this.startYear=undefined;this.endYear=undefined;this.selectedMonth=undefined;this.tempMonth=undefined;this.dropdownButtonRef=undefined;this.yearContainerRef=undefined;this.dayNames=undefined;this.monthNames=undefined;this.firstMonthRef=undefined;this.focusedDay=1;this.focusedDayElem=undefined}watchFromPropHandler(e){var t;this.currFromDate=e?n.fromFormat(e,this.format):undefined;if((t=this.currFromDate)===null||t===void 0?void 0:t.isValid){this.selectedYear=this.currFromDate.year;this.selectedMonth=this.currFromDate.month-1}}watchToPropHandler(e){var t;this.currToDate=e?n.fromFormat(e,this.format):undefined;if((t=this.currToDate)===null||t===void 0?void 0:t.isValid){this.selectedYear=this.currToDate.year;this.selectedMonth=this.currToDate.month-1}}onLocaleChange(){this.setTranslations()}async getCurrentDate(){var e,t,r,i;const o=((e=this.currFromDate)===null||e===void 0?void 0:e.isValid)?(t=this.currFromDate)===null||t===void 0?void 0:t.toFormat(this.format):undefined;const a=((r=this.currToDate)===null||r===void 0?void 0:r.isValid)?(i=this.currToDate)===null||i===void 0?void 0:i.toFormat(this.format):undefined;if(this.range){return{from:o,to:a}}return{from:o,to:undefined}}handleKeyUp(e){if(!this.isDayFocus){return}let t=this.focusedDay;switch(e.key){case"ArrowLeft":t--;break;case"ArrowRight":t++;break;case"ArrowUp":t=t-7;break;case"ArrowDown":t=t+7;break;default:return}if(t>this.getDaysInCurrentMonth()){t=t-this.getDaysInCurrentMonth();this.changeToAdjacentMonth(1);this.monthChangedFromFocus=true}else if(t<1){this.changeToAdjacentMonth(-1);t=t+this.getDaysInCurrentMonth();this.monthChangedFromFocus=true}this.focusedDay=t}getDaysInCurrentMonth(){return n.utc(this.selectedYear,this.selectedMonth+1).daysInMonth}getDateTimeNow(){return n.fromISO(this.today)}onDayBlur(){this.isDayFocus=false}onDayFocus(){this.isDayFocus=true}componentWillLoad(){var e,t,r,i;this.setTranslations();this.currFromDate=this.from?n.fromFormat(this.from,this.format):undefined;this.currToDate=this.to?n.fromFormat(this.to,this.format):undefined;const o=(t=(e=this.currFromDate)===null||e===void 0?void 0:e.year)!==null&&t!==void 0?t:this.getDateTimeNow().year;this.startYear=o-5;this.endYear=o+5;this.selectedMonth=((i=(r=this.currFromDate)===null||r===void 0?void 0:r.month)!==null&&i!==void 0?i:this.getDateTimeNow().month)-1;this.selectedYear=o;this.tempMonth=this.selectedMonth;this.tempYear=this.selectedYear}componentWillRender(){this.calculateCalendar()}componentDidRender(){if(!this.monthChangedFromFocus&&!this.isDayFocus){return}const e=this.hostElement.shadowRoot.querySelector(`[id=day-cell-${this.focusedDay}]`);e.focus()}setTranslations(){this.dayNames=this.rotateWeekDayNames(c.weekdays("long",{locale:this.locale}),this.weekStartIndex);this.monthNames=c.months("long",{locale:this.locale})}rotateWeekDayNames(e,t){const r=[...e];if(t===0){return r}t=-t;const i=e.length;r.push(...r.splice(0,(-t%i+i)%i));return r}async onDone(){const e=await this.getCurrentDate();this.dateSelect.emit(e)}calculateCalendar(){const e=[];const t=n.utc(this.selectedYear,this.selectedMonth+1);const r=t.startOf("month");const i=t.endOf("month");let o=r.weekNumber;let a=i.weekNumber;let s=r.weekday-1;let d=i.weekday-1;if(this.weekStartIndex!==0){const e=c.weekdays();const t=e[r.weekday];s=this.dayNames.findIndex((e=>e===t));const o=e[i.weekday];d=this.dayNames.findIndex((e=>e===o))}let h=false;if(a===1){a=i.weeksInWeekYear+1;h=true}let l=false;if(o===r.weeksInWeekYear){o=1;a++;l=true}let u=1;for(let t=o;t<=a&&u<=31;t++){const n=[];for(let e=0;e<this.DAYS_IN_WEEK&&u<=31;e++){if(t===o&&e<s||t===a&&e>d){n.push(undefined)}else{n.push(u++)}}if(l||h){if(t===1){e.push({weekNumber:r.weeksInWeekYear,dayNumbers:n})}else if(t===i.weekNumber){e.push({weekNumber:1,dayNumbers:n})}else{e.push({weekNumber:t-1,dayNumbers:n})}continue}e.push({weekNumber:t,dayNumbers:n})}this.calendar=e}selectTempYear(e,t){e===null||e===void 0?void 0:e.stopPropagation();this.tempYear=t}focusMonth(){this.firstMonthRef.focus()}infiniteScrollYears(){const e=this.yearContainerRef.scrollTop;const t=this.yearContainerRef.scrollHeight;const r=e===0;const i=Math.round(e+this.yearContainerRef.offsetHeight)>=t;const o=200;if(this.endYear-this.startYear>o)return;if(r){const e=this.yearContainerRef.firstElementChild;this.startYear-=5;this.yearContainerRef.scrollTo(0,e.offsetTop);return}if(i){const e=this.yearContainerRef.lastElementChild;this.endYear+=5;this.yearContainerRef.scrollTo(0,e.offsetTop)}}selectMonth(e){this.selectedMonth=e;this.selectedYear=this.tempYear;this.tempMonth=e;this.hostElement.shadowRoot.querySelector("ix-dropdown").show=false}changeToAdjacentMonth(e){if(this.selectedMonth+e<0){this.selectedYear--;this.selectedMonth=11}else if(this.selectedMonth+e>11){this.selectedYear++;this.selectedMonth=0}else{this.selectedMonth+=e}}selectDay(e){const t=n.fromJSDate(new Date(this.selectedYear,this.selectedMonth,e));if(!this.range||this.currFromDate===undefined){this.currFromDate=t;this.onDateChange();return}if(this.currToDate!==undefined){this.currFromDate=t;this.currToDate=undefined;this.onDateChange();return}if(t<this.currFromDate){this.currToDate=this.currFromDate;this.currFromDate=t;this.onDateChange();return}this.currToDate=t;this.onDateChange()}onDateChange(){this.getCurrentDate().then((e=>{this.dateChange.emit(e);if(this.range){this.dateRangeChange.emit(e)}}))}getDayClasses(e){var t,r,i,o;if(!e){return}const a=this.getDateTimeNow();const s=n.fromJSDate(new Date(this.selectedYear,this.selectedMonth,e));return{"calendar-item":true,"empty-day":e===undefined,today:a.hasSame(s,"day"),selected:((t=this.currFromDate)===null||t===void 0?void 0:t.hasSame(s,"day"))||((r=this.currToDate)===null||r===void 0?void 0:r.hasSame(s,"day")),range:s.startOf("day")>((i=this.currFromDate)===null||i===void 0?void 0:i.startOf("day"))&&this.currToDate!==undefined&&s.startOf("day")<((o=this.currToDate)===null||o===void 0?void 0:o.startOf("day")),disabled:!this.isWithinMinMaxDate(s)}}isWithinMinMaxYear(e){const t=this.minDate?n.fromFormat(this.minDate,this.format).year:undefined;const r=this.maxDate?n.fromFormat(this.maxDate,this.format).year:undefined;const i=t?e<t:false;const o=r?e>r:false;return!i&&!o}isWithinMinMaxMonth(e){const t=this.minDate?n.fromFormat(this.minDate,this.format):undefined;const r=this.maxDate?n.fromFormat(this.maxDate,this.format):undefined;const i=t===null||t===void 0?void 0:t.month;const o=r===null||r===void 0?void 0:r.month;const a=i?this.tempYear===t.year&&e<i:false;const s=o?this.tempYear===r.year&&e>o:false;return!a&&!s}isWithinMinMaxDate(e){const t=this.minDate?n.fromFormat(this.minDate,this.format):undefined;const r=this.maxDate?n.fromFormat(this.maxDate,this.format):undefined;const i=t?e.startOf("day")<t.startOf("day"):false;const o=r?e.startOf("day")>r.startOf("day"):false;return!i&&!o}renderYears(){const e=[];for(let t=this.startYear;t<=this.endYear;t++){e.push(r("div",{key:t,class:{arrowYear:true,"month-dropdown-item":true,"disabled-item":!this.isWithinMinMaxYear(t)},onClick:e=>this.selectTempYear(e,t),onKeyUp:e=>{if(e.key==="Enter"){this.selectTempYear(null,t);this.focusMonth()}},tabIndex:0},r("ix-icon",{class:{hidden:this.tempYear!==t,arrowPosition:true},name:"chevron-right",size:"12"}),r("div",{style:{"min-width":"max-content"}},`${t}`)))}return e}render(){return r(i,{key:"559881c8673da97e842398f4bcfe67ef5ff27794"},r("ix-date-time-card",{key:"4550d5f5a242be0ff07110cc400ef12795475c5c",corners:this.corners,standaloneAppearance:this.standaloneAppearance},r("div",{key:"f10ccab02142ae7461ac4b4ba4e8a8eb57123438",class:"header",slot:"header"},r("ix-icon-button",{key:"52b171c5e04a5bbcb0832f0e6033947735521601",onClick:()=>this.changeToAdjacentMonth(-1),ghost:true,icon:"chevron-left",variant:"primary",class:"arrows"}),r("div",{key:"c48d51b3f22c9862c8006520530559ed44d16372",class:"selector"},r("ix-button",{key:"8c155fcbafb7c3f32dab3c9ebc912153813ce207",ghost:true,ref:e=>this.dropdownButtonRef=e,"data-testid":"year-month-button"},r("span",{key:"74c9634e13886d26238b4ee2262314914b1e8cf8",class:"fontSize capitalize"},this.monthNames[this.selectedMonth]," ",this.selectedYear)),r("ix-dropdown",{key:"ba249019d78a59e65f3a479a3ea8315b5990bcac","data-testid":"year-month-dropdown",class:"dropdown",trigger:this.dropdownButtonRef,ignoreRelatedSubmenu:true,placement:"bottom-start"},r("div",{key:"39365087bbb4c4dd4e0329828f61a90a1247b744",class:"wrapper"},r("div",{key:"017d16a032a473b0e791c8dc342b5e62481212e3","data-testid":"year-container",class:"overflow",onScroll:()=>this.infiniteScrollYears(),ref:e=>this.yearContainerRef=e},this.renderYears()),r("div",{key:"1bef58292da8545924f53fdbeddbc864936a56ef",class:"overflow","data-testid":"month-container"},this.monthNames.map(((e,t)=>r("div",{key:e,ref:t=>{if(e===this.monthNames[0]){this.firstMonthRef=t}},class:{arrowYear:true,"month-dropdown-item":true,selected:this.tempYear===this.selectedYear&&this.tempMonth===t,"disabled-item":!this.isWithinMinMaxMonth(t)},onClick:()=>this.selectMonth(t),onKeyUp:e=>e.key==="Enter"&&this.selectMonth(t),tabIndex:0},r("ix-icon",{class:{hidden:this.tempYear!==this.selectedYear||this.tempMonth!==t,checkPosition:true},name:"single-check",size:"16"}),r("div",null,r("span",{class:"capitalize monthMargin"},`${e} ${this.tempYear}`))))))))),r("ix-icon-button",{key:"f414faea937a05dd2690e82d01daf1f444fbce25",onClick:()=>this.changeToAdjacentMonth(1),ghost:true,icon:"chevron-right",variant:"primary",class:"arrows"})),r("div",{key:"b79a961fbfc8c8dd821a83ab172dd7146acc5ade",class:"grid"},r("div",{key:"7651643c6320b8598b52ffaa45dc70498854d1ad",class:"calendar-item week-day"}),this.dayNames.map((e=>r("div",{key:e,class:"calendar-item week-day"},e.slice(0,3)))),this.calendar.map((e=>r(a,null,r("div",{class:"calendar-item week-number"},e.weekNumber),e.dayNumbers.map((e=>r("div",{key:e,id:`day-cell-${e}`,"date-calender-day":true,class:this.getDayClasses(e),onClick:()=>this.selectDay(e),onKeyUp:t=>t.key==="Enter"&&this.selectDay(e),tabIndex:e===this.focusedDay?0:-1,onFocus:()=>this.onDayFocus(),onBlur:()=>this.onDayBlur()},e))))))),r("div",{key:"0e6b9845bfdb760777cbd0f2f8419aeb5b667799",class:{button:true,hidden:!this.range||!this.standaloneAppearance}},r("ix-button",{key:"bb02236b3e41f3168aa2d5aad2c8e4aa9af90a49",onClick:()=>this.onDone()},this.textSelectDate||this.i18nDone))))}get hostElement(){return s(this)}static get watchers(){return{from:["watchFromPropHandler"],to:["watchToPropHandler"],locale:["onLocaleChange"]}}};m([h("keydown")],k.prototype,"handleKeyUp",null);k.style=g;const p=":host{--ix-layout-grid-gutter:24px;display:block;flex:1 1 0%;width:100%;padding-left:calc(var(--ix-layout-grid-gutter) * 0.5);padding-right:calc(var(--ix-layout-grid-gutter) * 0.5)}:host(.no-margin){padding-left:0;padding-right:0}";const v=p;const y=class{constructor(t){e(this,t);this.noMargin=false;this.gap="24";this.columns=12}render(){return r(i,{key:"af1bab1dee014e6675fe2a2304802a5767a76624",class:{"no-margin":this.noMargin},style:{"--ix-layout-grid-columns":`${this.columns}`,"--ix-layout-grid-gutter":`${this.gap}px`}},r("slot",{key:"db8de47b0e374e37dad532533c503f4129ecc75b"}))}};y.style=v;const x=":host{display:flex;flex-wrap:wrap}:host(:not(:first-of-type)){margin-block-start:var(--ix-layout-grid-row-margin, 0)}";const w=x;const z=class{constructor(t){e(this,t)}render(){return r(i,{key:"a550981bb86cb6a4ddad9d8cb7b3e4e08c7efa7b"},r("slot",{key:"6c8d68477bf64d068ad8de922191f6dad6c4d2e1"}))}};z.style=w;export{b as ix_col,k as ix_date_picker,y as ix_layout_grid,z as ix_row};
2
+ //# sourceMappingURL=p-62b089b6.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["colCss","IxColStyle0","Col","onResize","forceUpdate","this","getSize","breakpoint","size","sizeSm","sizeMd","sizeLg","getColumnSize","Breakpoints","forEach","isMediaQueryActive","matchBreakpoint","currentSize","getColumnSizeStyling","flex","width","colSize","render","h","Host","key","style","Object","assign","datePickerCss","IxDatePickerStyle0","DatePicker","DAYS_IN_WEEK","undefined","DateTime","now","toISO","watchFromPropHandler","newValue","currFromDate","fromFormat","format","_a","isValid","selectedYear","year","selectedMonth","month","watchToPropHandler","currToDate","onLocaleChange","setTranslations","getCurrentDate","_from","_b","toFormat","_to","_c","_d","range","from","to","handleKeyUp","event","isDayFocus","_focusedDay","focusedDay","getDaysInCurrentMonth","changeToAdjacentMonth","monthChangedFromFocus","utc","daysInMonth","getDateTimeNow","fromISO","today","onDayBlur","onDayFocus","componentWillLoad","startYear","endYear","tempMonth","tempYear","componentWillRender","calculateCalendar","componentDidRender","dayElem","hostElement","shadowRoot","querySelector","focus","dayNames","rotateWeekDayNames","Info","weekdays","locale","weekStartIndex","monthNames","months","index","clone","len","length","push","splice","onDone","date","dateSelect","emit","calendar","monthStart","startOf","monthEnd","endOf","startWeek","weekNumber","endWeek","monthStartWeekDayIndex","weekday","monthEndWeekDayIndex","monthStartWeekDayName","findIndex","d","monthEndWeekDayName","correctLastWeek","weeksInWeekYear","correctFirstWeek","currDayNumber","weekIndex","daysArr","j","dayNumbers","selectTempYear","stopPropagation","focusMonth","firstMonthRef","infiniteScrollYears","scroll","yearContainerRef","scrollTop","maxScroll","scrollHeight","atTop","atBottom","Math","round","offsetHeight","limit","first","firstElementChild","scrollTo","offsetTop","last","lastElementChild","selectMonth","show","number","selectDay","selectedDay","fromJSDate","Date","onDateChange","then","dateChange","dateRangeChange","getDayClasses","day","todayObj","selectedDayObj","hasSame","selected","disabled","isWithinMinMaxDate","isWithinMinMaxYear","minDateYear","minDate","maxDateYear","maxDate","isBefore","isAfter","isWithinMinMaxMonth","minDateObj","maxDateObj","minDateMonth","maxDateMonth","_minDate","_maxDate","renderYears","rows","class","arrowYear","onClick","onKeyUp","tabIndex","hidden","arrowPosition","name","corners","standaloneAppearance","slot","ghost","icon","variant","ref","dropdownButtonRef","trigger","ignoreRelatedSubmenu","placement","onScroll","map","checkPosition","slice","week","Fragment","id","e","onFocus","onBlur","button","textSelectDate","i18nDone","__decorate","OnListener","layoutGridCss","IxLayoutGridStyle0","LayoutGrid","noMargin","columns","gap","rowCss","IxRowStyle0","Row"],"sources":["src/components/col/col.scss?tag=ix-col&encapsulation=shadow","src/components/col/col.tsx","src/components/date-picker/date-picker.scss?tag=ix-date-picker&encapsulation=shadow","src/components/date-picker/date-picker.tsx","src/components/grid/layout-grid.scss?tag=ix-layout-grid&encapsulation=shadow","src/components/grid/layout-grid.tsx","src/components/row/row.scss?tag=ix-row&encapsulation=shadow","src/components/row/row.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n position: relative;\n flex-basis: 0;\n flex-grow: 1;\n width: 100%;\n max-width: 100%;\n min-height: 1px;\n\n padding: calc(var(--ix-layout-grid-gutter) * 0.5);\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, forceUpdate, h, Host, Listen, Prop } from '@stencil/core';\nimport { Breakpoint, matchBreakpoint } from '../utils/breakpoints';\n\ntype GridBreakpoint = Breakpoint | '';\n\nexport type ColumnSize =\n | '1'\n | '2'\n | '3'\n | '4'\n | '5'\n | '6'\n | '7'\n | '8'\n | '9'\n | '10'\n | '11'\n | '12'\n | 'auto';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-col',\n styleUrl: 'col.scss',\n shadow: true,\n})\nexport class Col {\n static Breakpoints: GridBreakpoint[] = ['', 'sm', 'md', 'lg'];\n\n /**\n * Size of the column\n */\n @Prop() size?: ColumnSize;\n\n /**\n * Size of the column for sm screens\n */\n @Prop() sizeSm?: ColumnSize;\n\n /**\n * Size of the column for md screens\n */\n @Prop() sizeMd?: ColumnSize;\n\n /**\n * Size of the column for lg screens\n */\n @Prop() sizeLg?: ColumnSize;\n\n @Listen('resize', { target: 'window' })\n onResize() {\n forceUpdate(this);\n }\n\n private getSize(breakpoint: GridBreakpoint) {\n if (breakpoint === '') {\n return this.size;\n }\n\n if (breakpoint === 'sm') {\n return this.sizeSm;\n }\n\n if (breakpoint === 'md') {\n return this.sizeMd;\n }\n\n if (breakpoint === 'lg') {\n return this.sizeLg;\n }\n }\n\n private getColumnSize() {\n let size: ColumnSize;\n Col.Breakpoints.forEach((breakpoint) => {\n const isMediaQueryActive =\n breakpoint !== '' ? matchBreakpoint(breakpoint) : true;\n\n if (!isMediaQueryActive) {\n return;\n }\n\n const currentSize = this.getSize(breakpoint);\n\n if (currentSize) {\n size = currentSize;\n }\n });\n\n return size;\n }\n\n private getColumnSizeStyling() {\n const size = this.getColumnSize();\n\n if (!size) {\n return;\n }\n\n if (size === 'auto') {\n return {\n flex: '0 0 auto',\n width: 'auto',\n 'max-width': 'auto',\n };\n }\n\n const colSize = `calc(calc(${size} / var(--ix-layout-grid-columns)) * 100%)`;\n\n return {\n flex: `0 0 ${colSize}`,\n width: `${colSize}`,\n 'max-width': `${colSize}`,\n };\n }\n\n render() {\n return (\n <Host\n style={{\n ...this.getColumnSizeStyling(),\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n width: 22rem;\n\n .header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n\n .disabled-item {\n pointer-events: none;\n background-color: var(--theme-datepicker-day--background--disabled);\n color: var(--theme-datepicker-day--color--disabled);\n cursor: default;\n }\n\n .selector {\n flex-basis: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: $tiny-space $default-space;\n\n .dropdown {\n color: var(--theme-menu-item--color);\n font-size: 14px;\n line-height: 20px;\n }\n\n .fontSize {\n font-size: 16px;\n }\n\n .capitalize {\n text-transform: capitalize;\n }\n\n .month-dropdown-item {\n margin-left: 4px;\n margin-right: 4px;\n\n &:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: var(--theme-btn--focus--outline-offset);\n }\n }\n\n .arrowYear {\n display: flex;\n position: relative;\n padding: $medium-space $x-large-space;\n align-items: center;\n cursor: pointer;\n\n &:hover {\n background-color: var(--theme-select-list-item--background--hover);\n }\n\n &.selected {\n background-color: var(--theme-select-list-item--background--selected);\n }\n\n .arrowPosition {\n position: absolute;\n left: calc(($x-large-space / 2) - 6px);\n top: calc(50% - 6px);\n }\n\n .checkPosition {\n position: absolute;\n left: calc(($x-large-space / 2) - 6px);\n top: calc(50% - 8px);\n }\n\n .monthMargin {\n margin-left: 10px;\n }\n }\n }\n\n .wrapper {\n display: flex;\n\n .overflow {\n overflow-y: scroll;\n max-height: 250px;\n }\n }\n\n .grid {\n display: grid;\n grid-template-columns: repeat(8, 40px);\n grid-template-rows: repeat(7, 40px);\n align-items: center;\n justify-items: center;\n justify-content: center;\n color: var(--theme-datepicker-today--color);\n\n .calendar-item {\n position: relative;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: var(--theme-datepicker-day--background);\n border: 1px solid var(--theme-datepicker-day--background);\n width: 40px;\n height: 40px;\n cursor: pointer;\n\n &:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: var(--theme-btn--focus--outline-offset);\n }\n\n &.today {\n border: 1px solid var(--theme-datepicker-today--border-color);\n\n &:hover {\n background-color: var(--theme-datepicker-day--background--hover);\n }\n\n &:active {\n background-color: var(--theme-datepicker-day--background--active);\n }\n\n &.selected {\n box-shadow: inset 0 0 0 1px white;\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--selected-hover\n );\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--selected-active\n );\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(\n --theme-datepicker-day--background--selected-disabled\n );\n border: 1px solid\n var(--theme-datepicker-day--background--selected-disabled);\n color: var(--theme-datepicker-day--color--selected-disabled);\n }\n }\n\n &.range {\n background-color: var(--theme-datepicker-day--background--range);\n color: var(--theme-datepicker-day--color--range);\n border: 1px solid var(--theme-datepicker-today--border-color--range);\n box-shadow: inset 0 0 0 1px white;\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--range-hover\n );\n border: 1px solid\n var(--theme-datepicker-today--border-color--range-hover);\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--range-active\n );\n border: 1px solid\n var(--theme-datepicker-today--border-color--range-active);\n }\n\n &.disabled {\n background-color: var(\n --theme-datepicker-day--background--range-disabled\n );\n color: var(--theme-datepicker-day--color--range-disabled);\n border: 1px solid\n var(--theme-datepicker-today--border-color--range-disabled);\n }\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(--theme-datepicker-day--background--disabled);\n color: var(--theme-datepicker-day--color--disabled);\n cursor: default;\n }\n }\n\n &:hover {\n background-color: var(--theme-datepicker-day--background--hover);\n }\n\n &:active {\n background-color: var(--theme-datepicker-day--background--active);\n }\n\n &.selected {\n background-color: var(--theme-datepicker-day--background--selected);\n color: var(--theme-datepicker-day--color--selected);\n border: 1px solid var(--theme-datepicker-day--background--selected);\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--selected-hover\n );\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--selected-active\n );\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(\n --theme-datepicker-day--background--selected-disabled\n );\n color: var(--theme-datepicker-day--color--selected-disabled);\n }\n }\n\n &.range {\n background-color: var(--theme-datepicker-day--background--range);\n color: var(--theme-datepicker-day--color--range);\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--range-hover\n );\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--range-active\n );\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(\n --theme-datepicker-day--background--range-disabled\n );\n color: var(--theme-datepicker-day--color--range-disabled);\n }\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(--theme-datepicker-day--background--disabled);\n color: var(--theme-datepicker-day--color--disabled);\n }\n\n &.week-day {\n color: var(--theme-datepicker-weekday--color);\n font-size: 12px;\n line-height: 20px;\n border: none;\n background: none;\n cursor: initial;\n }\n\n &.empty-day {\n border: none;\n background: none;\n cursor: initial;\n }\n\n &.week-number {\n font-size: 10px;\n line-height: 14px;\n color: var(--theme-datepicker-weekday--color);\n border: none;\n background: none;\n cursor: initial;\n }\n\n &:focus-visible {\n background-color: var(--theme-datepicker-day--background--selected);\n border: inset 1px solid\n var(--theme-datepicker-day--border-color--selected);\n color: var(--theme-datepicker-day--color--selected);\n font-size: 14px;\n line-height: 20px;\n letter-spacing: 0;\n }\n }\n }\n\n .button {\n display: flex;\n justify-content: flex-end;\n }\n\n .hidden {\n display: none;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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","/*\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:host {\n --ix-layout-grid-gutter: 24px;\n\n display: block;\n flex: 1 1 0%;\n width: 100%;\n\n padding-left: calc(var(--ix-layout-grid-gutter) * 0.5);\n padding-right: calc(var(--ix-layout-grid-gutter) * 0.5);\n}\n\n:host(.no-margin) {\n padding-left: 0;\n padding-right: 0;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-layout-grid',\n styleUrl: 'layout-grid.scss',\n shadow: true,\n})\nexport class LayoutGrid {\n /**\n * The grid will not have any horizontal padding\n */\n @Prop() noMargin = false;\n\n /**\n * Grid gap\n */\n @Prop() gap: '8' | '12' | '16' | '24' = '24';\n\n /**\n * Overwrite the default number of columns. Choose between 2 and 12 columns.\n */\n @Prop() columns = 12;\n\n render() {\n return (\n <Host\n class={{\n 'no-margin': this.noMargin,\n }}\n style={{\n '--ix-layout-grid-columns': `${this.columns}`,\n '--ix-layout-grid-gutter': `${this.gap}px`,\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: flex;\n flex-wrap: wrap;\n}\n\n:host(:not(:first-of-type)) {\n margin-block-start: var(--ix-layout-grid-row-margin, 0);\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-row',\n styleUrl: 'row.scss',\n shadow: true,\n})\nexport class Row {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"iMAAA,MAAMA,EAAS,s4BACf,MAAAC,EAAeD,E,MCoCFE,EAAG,M,+GAwBd,QAAAC,GACEC,EAAYC,K,CAGN,OAAAC,CAAQC,GACd,GAAIA,IAAe,GAAI,CACrB,OAAOF,KAAKG,I,CAGd,GAAID,IAAe,KAAM,CACvB,OAAOF,KAAKI,M,CAGd,GAAIF,IAAe,KAAM,CACvB,OAAOF,KAAKK,M,CAGd,GAAIH,IAAe,KAAM,CACvB,OAAOF,KAAKM,M,EAIR,aAAAC,GACN,IAAIJ,EACJN,EAAIW,YAAYC,SAASP,IACvB,MAAMQ,EACJR,IAAe,GAAKS,EAAgBT,GAAc,KAEpD,IAAKQ,EAAoB,CACvB,M,CAGF,MAAME,EAAcZ,KAAKC,QAAQC,GAEjC,GAAIU,EAAa,CACfT,EAAOS,C,KAIX,OAAOT,C,CAGD,oBAAAU,GACN,MAAMV,EAAOH,KAAKO,gBAElB,IAAKJ,EAAM,CACT,M,CAGF,GAAIA,IAAS,OAAQ,CACnB,MAAO,CACLW,KAAM,WACNC,MAAO,OACP,YAAa,O,CAIjB,MAAMC,EAAU,aAAab,6CAE7B,MAAO,CACLW,KAAM,OAAOE,IACbD,MAAO,GAAGC,IACV,YAAa,GAAGA,I,CAIpB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAKC,OAAAC,OAAA,GACAvB,KAAKa,yBAGVK,EAAA,QAAAE,IAAA,6C,GAhGCvB,EAAAW,YAAgC,CAAC,GAAI,KAAM,KAAM,M,UCtC1D,MAAMgB,EAAgB,qgOACtB,MAAAC,EAAeD,E,iXC2CFE,EAAU,M,mLA8MJ1B,KAAA2B,aAAe,E,YAvMP,a,WAKA,K,aAKc,U,gIAuEM,O,oBAQpB,E,YAQAC,U,gBASK,K,oBASL,M,0BAGM,K,WAGfC,EAASC,MAAMC,Q,gXAyED,E,8BA7K9B,oBAAAC,CAAqBC,G,MACnBjC,KAAKkC,aAAeD,EAChBJ,EAASM,WAAWF,EAAUjC,KAAKoC,QACnCR,UAEJ,IAAIS,EAAArC,KAAKkC,gBAAY,MAAAG,SAAA,SAAAA,EAAEC,QAAS,CAC9BtC,KAAKuC,aAAevC,KAAKkC,aAAaM,KACtCxC,KAAKyC,cAAgBzC,KAAKkC,aAAaQ,MAAQ,C,EAanD,kBAAAC,CAAmBV,G,MACjBjC,KAAK4C,WAAaX,EACdJ,EAASM,WAAWF,EAAUjC,KAAKoC,QACnCR,UAEJ,IAAIS,EAAArC,KAAK4C,cAAU,MAAAP,SAAA,SAAAA,EAAEC,QAAS,CAC5BtC,KAAKuC,aAAevC,KAAK4C,WAAWJ,KACpCxC,KAAKyC,cAAgBzC,KAAK4C,WAAWF,MAAQ,C,EAmDjD,cAAAG,GACE7C,KAAK8C,iB,CAyDP,oBAAMC,G,YACJ,MAAMC,IAAQX,EAAArC,KAAKkC,gBAAY,MAAAG,SAAA,SAAAA,EAAEC,UAC7BW,EAAAjD,KAAKkC,gBAAY,MAAAe,SAAA,SAAAA,EAAEC,SAASlD,KAAKoC,QACjCR,UACJ,MAAMuB,IAAMC,EAAApD,KAAK4C,cAAU,MAAAQ,SAAA,SAAAA,EAAEd,UACzBe,EAAArD,KAAK4C,cAAU,MAAAS,SAAA,SAAAA,EAAEH,SAASlD,KAAKoC,QAC/BR,UAEJ,GAAI5B,KAAKsD,MAAO,CACd,MAAO,CACLC,KAAMP,EACNQ,GAAIL,E,CAIR,MAAO,CACLI,KAAMP,EACNQ,GAAI5B,U,CA6BR,WAAA6B,CAAYC,GACV,IAAK1D,KAAK2D,WAAY,CACpB,M,CAGF,IAAIC,EAAc5D,KAAK6D,WAEvB,OAAQH,EAAMtC,KACZ,IAAK,YACHwC,IACA,MACF,IAAK,aACHA,IACA,MACF,IAAK,UACHA,EAAcA,EAAc,EAC5B,MACF,IAAK,YACHA,EAAcA,EAAc,EAC5B,MACF,QACE,OAGJ,GAAIA,EAAc5D,KAAK8D,wBAAyB,CAC9CF,EAAcA,EAAc5D,KAAK8D,wBACjC9D,KAAK+D,sBAAsB,GAC3B/D,KAAKgE,sBAAwB,I,MACxB,GAAIJ,EAAc,EAAG,CAC1B5D,KAAK+D,uBAAuB,GAC5BH,EAAcA,EAAc5D,KAAK8D,wBACjC9D,KAAKgE,sBAAwB,I,CAG/BhE,KAAK6D,WAAaD,C,CAGZ,qBAAAE,GACN,OAAOjC,EAASoC,IAAIjE,KAAKuC,aAAcvC,KAAKyC,cAAgB,GAAGyB,W,CAGzD,cAAAC,GACN,OAAOtC,EAASuC,QAAQpE,KAAKqE,M,CAG/B,SAAAC,GACEtE,KAAK2D,WAAa,K,CAGpB,UAAAY,GACEvE,KAAK2D,WAAa,I,CAGpB,iBAAAa,G,YACExE,KAAK8C,kBAEL9C,KAAKkC,aAAelC,KAAKuD,KACrB1B,EAASM,WAAWnC,KAAKuD,KAAMvD,KAAKoC,QACpCR,UACJ5B,KAAK4C,WAAa5C,KAAKwD,GACnB3B,EAASM,WAAWnC,KAAKwD,GAAIxD,KAAKoC,QAClCR,UAEJ,MAAMY,GAAOS,GAAAZ,EAAArC,KAAKkC,gBAAY,MAAAG,SAAA,SAAAA,EAAEG,QAAI,MAAAS,SAAA,EAAAA,EAAIjD,KAAKmE,iBAAiB3B,KAC9DxC,KAAKyE,UAAYjC,EAAO,EACxBxC,KAAK0E,QAAUlC,EAAO,EAEtBxC,KAAKyC,gBACFY,GAAAD,EAAApD,KAAKkC,gBAAY,MAAAkB,SAAA,SAAAA,EAAEV,SAAK,MAAAW,SAAA,EAAAA,EAAIrD,KAAKmE,iBAAiBzB,OAAS,EAC9D1C,KAAKuC,aAAeC,EACpBxC,KAAK2E,UAAY3E,KAAKyC,cACtBzC,KAAK4E,SAAW5E,KAAKuC,Y,CAGvB,mBAAAsC,GACE7E,KAAK8E,mB,CAGP,kBAAAC,GACE,IAAK/E,KAAKgE,wBAA0BhE,KAAK2D,WAAY,CACnD,M,CAGF,MAAMqB,EAAUhF,KAAKiF,YAAYC,WAAWC,cAC1C,gBAAgBnF,KAAK6D,eAEvBmB,EAAQI,O,CAGF,eAAAtC,GACN9C,KAAKqF,SAAWrF,KAAKsF,mBACnBC,EAAKC,SAAS,OAAQ,CACpBC,OAAQzF,KAAKyF,SAEfzF,KAAK0F,gBAGP1F,KAAK2F,WAAaJ,EAAKK,OAAO,OAAQ,CACpCH,OAAQzF,KAAKyF,Q,CAQT,kBAAAH,CAAmBE,EAAoBK,GAC7C,MAAMC,EAAQ,IAAIN,GAElB,GAAIK,IAAU,EAAG,CACf,OAAOC,C,CAGTD,GAASA,EACT,MAAME,EAAMP,EAASQ,OAErBF,EAAMG,QAAQH,EAAMI,OAAO,IAAML,EAAQE,EAAOA,GAAOA,IACvD,OAAOD,C,CAGD,YAAMK,GACZ,MAAMC,QAAapG,KAAK+C,iBACxB/C,KAAKqG,WAAWC,KAAKF,E,CAGf,iBAAAtB,GACN,MAAMyB,EAA2B,GACjC,MAAM7D,EAAQb,EAASoC,IAAIjE,KAAKuC,aAAcvC,KAAKyC,cAAgB,GACnE,MAAM+D,EAAa9D,EAAM+D,QAAQ,SACjC,MAAMC,EAAWhE,EAAMiE,MAAM,SAC7B,IAAIC,EAAYJ,EAAWK,WAC3B,IAAIC,EAAUJ,EAASG,WACvB,IAAIE,EAAyBP,EAAWQ,QAAU,EAClD,IAAIC,EAAuBP,EAASM,QAAU,EAE9C,GAAIhH,KAAK0F,iBAAmB,EAAG,CAE7B,MAAMF,EAAWD,EAAKC,WACtB,MAAM0B,EAAwB1B,EAASgB,EAAWQ,SAElDD,EAAyB/G,KAAKqF,SAAS8B,WACpCC,GAAMA,IAAMF,IAEf,MAAMG,EAAsB7B,EAASkB,EAASM,SAC9CC,EAAuBjH,KAAKqF,SAAS8B,WAClCC,GAAMA,IAAMC,G,CAIjB,IAAIC,EAAkB,MACtB,GAAIR,IAAY,EAAG,CACjBA,EAAUJ,EAASa,gBAAkB,EACrCD,EAAkB,I,CAGpB,IAAIE,EAAmB,MACvB,GAAIZ,IAAcJ,EAAWe,gBAAiB,CAC5CX,EAAY,EACZE,IAEAU,EAAmB,I,CAGrB,IAAIC,EAAgB,EACpB,IACE,IAAIC,EAAYd,EAChBc,GAAaZ,GAAWW,GAAiB,GACzCC,IACA,CACA,MAAMC,EAAoB,GAE1B,IAAK,IAAIC,EAAI,EAAGA,EAAI5H,KAAK2B,cAAgB8F,GAAiB,GAAIG,IAAK,CAEjE,GACGF,IAAcd,GAAagB,EAAIb,GAC/BW,IAAcZ,GAAWc,EAAIX,EAC9B,CACAU,EAAQ1B,KAAKrE,U,KACR,CACL+F,EAAQ1B,KAAKwB,I,EAIjB,GAAID,GAAoBF,EAAiB,CACvC,GAAII,IAAc,EAAG,CACnBnB,EAASN,KAAK,CACZY,WAAYL,EAAWe,gBACvBM,WAAYF,G,MAET,GAAID,IAAchB,EAASG,WAAY,CAC5CN,EAASN,KAAK,CACZY,WAAY,EACZgB,WAAYF,G,KAET,CACLpB,EAASN,KAAK,CACZY,WAAYa,EAAY,EACxBG,WAAYF,G,CAGhB,Q,CAGFpB,EAASN,KAAK,CACZY,WAAYa,EACZG,WAAYF,G,CAIhB3H,KAAKuG,SAAWA,C,CAGV,cAAAuB,CAAepE,EAAmBlB,GACxCkB,IAAK,MAALA,SAAK,SAALA,EAAOqE,kBACP/H,KAAK4E,SAAWpC,C,CAGV,UAAAwF,GACNhI,KAAKiI,cAAc7C,O,CAGb,mBAAA8C,GACN,MAAMC,EAASnI,KAAKoI,iBAAiBC,UACrC,MAAMC,EAAYtI,KAAKoI,iBAAiBG,aACxC,MAAMC,EAAQL,IAAW,EACzB,MAAMM,EACJC,KAAKC,MAAMR,EAASnI,KAAKoI,iBAAiBQ,eAAiBN,EAC7D,MAAMO,EAAQ,IAEd,GAAI7I,KAAK0E,QAAU1E,KAAKyE,UAAYoE,EAAO,OAE3C,GAAIL,EAAO,CACT,MAAMM,EAAQ9I,KAAKoI,iBAAiBW,kBACpC/I,KAAKyE,WAAa,EAClBzE,KAAKoI,iBAAiBY,SAAS,EAAGF,EAAMG,WAExC,M,CAGF,GAAIR,EAAU,CACZ,MAAMS,EAAOlJ,KAAKoI,iBAAiBe,iBACnCnJ,KAAK0E,SAAW,EAChB1E,KAAKoI,iBAAiBY,SAAS,EAAGE,EAAKD,U,EAInC,WAAAG,CAAY1G,GAClB1C,KAAKyC,cAAgBC,EACrB1C,KAAKuC,aAAevC,KAAK4E,SACzB5E,KAAK2E,UAAYjC,EAEjB1C,KAAKiF,YAAYC,WAAWC,cAAc,eAAekE,KAAO,K,CAG1D,qBAAAtF,CAAsBuF,GAC5B,GAAItJ,KAAKyC,cAAgB6G,EAAS,EAAG,CACnCtJ,KAAKuC,eACLvC,KAAKyC,cAAgB,E,MAChB,GAAIzC,KAAKyC,cAAgB6G,EAAS,GAAI,CAC3CtJ,KAAKuC,eACLvC,KAAKyC,cAAgB,C,KAChB,CACLzC,KAAKyC,eAAiB6G,C,EAIlB,SAAAC,CAAUC,GAChB,MAAMpD,EAAOvE,EAAS4H,WACpB,IAAIC,KAAK1J,KAAKuC,aAAcvC,KAAKyC,cAAe+G,IAGlD,IAAKxJ,KAAKsD,OAAStD,KAAKkC,eAAiBN,UAAW,CAClD5B,KAAKkC,aAAekE,EACpBpG,KAAK2J,eAEL,M,CAIF,GAAI3J,KAAK4C,aAAehB,UAAW,CACjC5B,KAAKkC,aAAekE,EACpBpG,KAAK4C,WAAahB,UAClB5B,KAAK2J,eAEL,M,CAIF,GAAIvD,EAAOpG,KAAKkC,aAAc,CAC5BlC,KAAK4C,WAAa5C,KAAKkC,aACvBlC,KAAKkC,aAAekE,EACpBpG,KAAK2J,eAEL,M,CAIF3J,KAAK4C,WAAawD,EAClBpG,KAAK2J,c,CAGC,YAAAA,GACN3J,KAAK+C,iBAAiB6G,MAAMxD,IAC1BpG,KAAK6J,WAAWvD,KAAKF,GACrB,GAAIpG,KAAKsD,MAAO,CACdtD,KAAK8J,gBAAgBxD,KAAKF,E,KAKxB,aAAA2D,CAAcC,G,YACpB,IAAKA,EAAK,CACR,M,CAGF,MAAMC,EAAWjK,KAAKmE,iBACtB,MAAM+F,EAAiBrI,EAAS4H,WAC9B,IAAIC,KAAK1J,KAAKuC,aAAcvC,KAAKyC,cAAeuH,IAGlD,MAAO,CACL,gBAAiB,KACjB,YAAaA,IAAQpI,UACrByC,MAAO4F,EAASE,QAAQD,EAAgB,OACxCE,WACE/H,EAAArC,KAAKkC,gBAAY,MAAAG,SAAA,SAAAA,EAAE8H,QAAQD,EAAgB,WAC3CjH,EAAAjD,KAAK4C,cAAU,MAAAK,SAAA,SAAAA,EAAEkH,QAAQD,EAAgB,QAC3C5G,MACE4G,EAAezD,QAAQ,SAASrD,EAAApD,KAAKkC,gBAAY,MAAAkB,SAAA,SAAAA,EAAEqD,QAAQ,SAC3DzG,KAAK4C,aAAehB,WACpBsI,EAAezD,QAAQ,SAASpD,EAAArD,KAAK4C,cAAU,MAAAS,SAAA,SAAAA,EAAEoD,QAAQ,QAC3D4D,UAAWrK,KAAKsK,mBAAmBJ,G,CAI/B,kBAAAK,CAAmB/H,GACzB,MAAMgI,EAAcxK,KAAKyK,QACrB5I,EAASM,WAAWnC,KAAKyK,QAASzK,KAAKoC,QAAQI,KAC/CZ,UACJ,MAAM8I,EAAc1K,KAAK2K,QACrB9I,EAASM,WAAWnC,KAAK2K,QAAS3K,KAAKoC,QAAQI,KAC/CZ,UACJ,MAAMgJ,EAAWJ,EAAchI,EAAOgI,EAAc,MACpD,MAAMK,EAAUH,EAAclI,EAAOkI,EAAc,MAEnD,OAAQE,IAAaC,C,CAGf,mBAAAC,CAAoBpI,GAC1B,MAAMqI,EAAa/K,KAAKyK,QACpB5I,EAASM,WAAWnC,KAAKyK,QAASzK,KAAKoC,QACvCR,UACJ,MAAMoJ,EAAahL,KAAK2K,QACpB9I,EAASM,WAAWnC,KAAK2K,QAAS3K,KAAKoC,QACvCR,UACJ,MAAMqJ,EAAeF,IAAU,MAAVA,SAAU,SAAVA,EAAYrI,MACjC,MAAMwI,EAAeF,IAAU,MAAVA,SAAU,SAAVA,EAAYtI,MACjC,MAAMkI,EAAWK,EACbjL,KAAK4E,WAAamG,EAAWvI,MAAQE,EAAQuI,EAC7C,MACJ,MAAMJ,EAAUK,EACZlL,KAAK4E,WAAaoG,EAAWxI,MAAQE,EAAQwI,EAC7C,MAEJ,OAAQN,IAAaC,C,CAGf,kBAAAP,CAAmBlE,GACzB,MAAM+E,EAAWnL,KAAKyK,QAClB5I,EAASM,WAAWnC,KAAKyK,QAASzK,KAAKoC,QACvCR,UACJ,MAAMwJ,EAAWpL,KAAK2K,QAClB9I,EAASM,WAAWnC,KAAK2K,QAAS3K,KAAKoC,QACvCR,UACJ,MAAMgJ,EAAWO,EACb/E,EAAKK,QAAQ,OAAS0E,EAAS1E,QAAQ,OACvC,MACJ,MAAMoE,EAAUO,EACZhF,EAAKK,QAAQ,OAAS2E,EAAS3E,QAAQ,OACvC,MAEJ,OAAQmE,IAAaC,C,CAGf,WAAAQ,GACN,MAAMC,EAAO,GAEb,IAAK,IAAI9I,EAAOxC,KAAKyE,UAAWjC,GAAQxC,KAAK0E,QAASlC,IAAQ,CAC5D8I,EAAKrF,KACH/E,EAAA,OACEE,IAAKoB,EACL+I,MAAO,CACLC,UAAW,KACX,sBAAuB,KACvB,iBAAkBxL,KAAKuK,mBAAmB/H,IAE5CiJ,QAAU/H,GAAU1D,KAAK8H,eAAepE,EAAOlB,GAC/CkJ,QAAUhI,IACR,GAAIA,EAAMtC,MAAQ,QAAS,CACzBpB,KAAK8H,eAAe,KAAMtF,GAC1BxC,KAAKgI,Y,GAGT2D,SAAU,GAEVzK,EAAA,WACEqK,MAAO,CACLK,OAAQ5L,KAAK4E,WAAapC,EAC1BqJ,cAAe,MAEjBC,KAAK,gBACL3L,KAAK,OAEPe,EAAA,OAAKG,MAAO,CAAE,YAAa,gBAAkB,GAAGmB,M,CAKtD,OAAO8I,C,CAGT,MAAArK,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,qBAAAE,IAAA,2CACE2K,QAAS/L,KAAK+L,QACdC,qBAAsBhM,KAAKgM,sBAE3B9K,EAAA,OAAAE,IAAA,2CAAKmK,MAAM,SAASU,KAAK,UACvB/K,EAAA,kBAAAE,IAAA,2CACEqK,QAAS,IAAMzL,KAAK+D,uBAAuB,GAC3CmI,MAAK,KACLC,KAAK,eACLC,QAAQ,UACRb,MAAM,WAERrK,EAAA,OAAAE,IAAA,2CAAKmK,MAAM,YACTrK,EAAA,aAAAE,IAAA,2CACE8K,MAAK,KACLG,IAAMA,GAASrM,KAAKsM,kBAAoBD,EAAI,cAChC,qBAEZnL,EAAA,QAAAE,IAAA,2CAAMmK,MAAM,uBACTvL,KAAK2F,WAAW3F,KAAKyC,eAAc,IAAGzC,KAAKuC,eAGhDrB,EAAA,eAAAE,IAAA,yDACc,sBACZmK,MAAM,WACNgB,QAASvM,KAAKsM,kBACdE,qBAAoB,KACpBC,UAAU,gBAEVvL,EAAA,OAAAE,IAAA,2CAAKmK,MAAM,WACTrK,EAAA,OAAAE,IAAA,yDACc,iBACZmK,MAAM,WACNmB,SAAU,IAAM1M,KAAKkI,sBACrBmE,IAAMA,GAASrM,KAAKoI,iBAAmBiE,GAEtCrM,KAAKqL,eAERnK,EAAA,OAAAE,IAAA,2CAAKmK,MAAM,WAAU,cAAa,mBAC/BvL,KAAK2F,WAAWgH,KAAI,CAACjK,EAAOmD,IAC3B3E,EAAA,OACEE,IAAKsB,EACL2J,IAAMA,IACJ,GAAI3J,IAAU1C,KAAK2F,WAAW,GAAI,CAChC3F,KAAKiI,cAAgBoE,C,GAGzBd,MAAO,CACLC,UAAW,KACX,sBAAuB,KACvBpB,SACEpK,KAAK4E,WAAa5E,KAAKuC,cACvBvC,KAAK2E,YAAckB,EACrB,iBAAkB7F,KAAK8K,oBAAoBjF,IAE7C4F,QAAS,IAAMzL,KAAKoJ,YAAYvD,GAChC6F,QAAUhI,GACRA,EAAMtC,MAAQ,SAAWpB,KAAKoJ,YAAYvD,GAE5C8F,SAAU,GAEVzK,EAAA,WACEqK,MAAO,CACLK,OACE5L,KAAK4E,WAAa5E,KAAKuC,cACvBvC,KAAK2E,YAAckB,EACrB+G,cAAe,MAEjBd,KAAK,eACL3L,KAAK,OAEPe,EAAA,WACEA,EAAA,QAAMqK,MAAM,0BAA0B,GAAG7I,KAAS1C,KAAK4E,oBAQrE1D,EAAA,kBAAAE,IAAA,2CACEqK,QAAS,IAAMzL,KAAK+D,sBAAsB,GAC1CmI,MAAK,KACLC,KAAK,gBACLC,QAAQ,UACRb,MAAM,YAGVrK,EAAA,OAAAE,IAAA,2CAAKmK,MAAM,QACTrK,EAAA,OAAAE,IAAA,2CAAKmK,MAAM,2BACVvL,KAAKqF,SAASsH,KAAKb,GAClB5K,EAAA,OAAKE,IAAK0K,EAAMP,MAAM,0BACnBO,EAAKe,MAAM,EAAG,MAGlB7M,KAAKuG,SAASoG,KAAKG,GAEhB5L,EAAC6L,EAAQ,KACP7L,EAAA,OAAKqK,MAAM,6BAA6BuB,EAAKjG,YAC5CiG,EAAKjF,WAAW8E,KAAK3C,GACpB9I,EAAA,OACEE,IAAK4I,EACLgD,GAAI,YAAYhD,IAAK,yBAErBuB,MAAOvL,KAAK+J,cAAcC,GAC1ByB,QAAS,IAAMzL,KAAKuJ,UAAUS,GAC9B0B,QAAUuB,GAAMA,EAAE7L,MAAQ,SAAWpB,KAAKuJ,UAAUS,GACpD2B,SAAU3B,IAAQhK,KAAK6D,WAAa,GAAK,EACzCqJ,QAAS,IAAMlN,KAAKuE,aACpB4I,OAAQ,IAAMnN,KAAKsE,aAElB0F,SAOb9I,EAAA,OAAAE,IAAA,2CACEmK,MAAO,CACL6B,OAAQ,KACRxB,QAAS5L,KAAKsD,QAAUtD,KAAKgM,uBAG/B9K,EAAA,aAAAE,IAAA,2CAAWqK,QAAS,IAAMzL,KAAKmG,UAC5BnG,KAAKqN,gBAAkBrN,KAAKsN,Y,oJAriBzCC,EAAA,CADCC,EAAuB,Y,0CC7P1B,MAAMC,EAAgB,yOACtB,MAAAC,EAAeD,E,MCkBFE,EAAU,M,uCAIF,M,SAKqB,K,aAKtB,E,CAElB,MAAA1M,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHmK,MAAO,CACL,YAAavL,KAAK4N,UAEpBvM,MAAO,CACL,2BAA4B,GAAGrB,KAAK6N,UACpC,0BAA2B,GAAG7N,KAAK8N,UAGrC5M,EAAA,QAAAE,IAAA,6C,aC9CR,MAAM2M,EAAS,wHACf,MAAAC,EAAeD,E,MCkBFE,EAAG,M,yBACd,MAAAhN,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C"}
1
+ {"version":3,"names":["colCss","IxColStyle0","Col","onResize","forceUpdate","this","getSize","breakpoint","size","sizeSm","sizeMd","sizeLg","getColumnSize","Breakpoints","forEach","isMediaQueryActive","matchBreakpoint","currentSize","getColumnSizeStyling","flex","width","colSize","render","h","Host","key","style","Object","assign","datePickerCss","IxDatePickerStyle0","DatePicker","DAYS_IN_WEEK","undefined","DateTime","now","toISO","watchFromPropHandler","newValue","currFromDate","fromFormat","format","_a","isValid","selectedYear","year","selectedMonth","month","watchToPropHandler","currToDate","onLocaleChange","setTranslations","getCurrentDate","_from","_b","toFormat","_to","_c","_d","range","from","to","handleKeyUp","event","isDayFocus","_focusedDay","focusedDay","getDaysInCurrentMonth","changeToAdjacentMonth","monthChangedFromFocus","utc","daysInMonth","getDateTimeNow","fromISO","today","onDayBlur","onDayFocus","componentWillLoad","startYear","endYear","tempMonth","tempYear","componentWillRender","calculateCalendar","componentDidRender","dayElem","hostElement","shadowRoot","querySelector","focus","dayNames","rotateWeekDayNames","Info","weekdays","locale","weekStartIndex","monthNames","months","index","clone","len","length","push","splice","onDone","date","dateSelect","emit","calendar","monthStart","startOf","monthEnd","endOf","startWeek","weekNumber","endWeek","monthStartWeekDayIndex","weekday","monthEndWeekDayIndex","monthStartWeekDayName","findIndex","d","monthEndWeekDayName","correctLastWeek","weeksInWeekYear","correctFirstWeek","currDayNumber","weekIndex","daysArr","j","dayNumbers","selectTempYear","stopPropagation","focusMonth","firstMonthRef","infiniteScrollYears","scroll","yearContainerRef","scrollTop","maxScroll","scrollHeight","atTop","atBottom","Math","round","offsetHeight","limit","first","firstElementChild","scrollTo","offsetTop","last","lastElementChild","selectMonth","show","number","selectDay","selectedDay","fromJSDate","Date","onDateChange","then","dateChange","dateRangeChange","getDayClasses","day","todayObj","selectedDayObj","hasSame","selected","disabled","isWithinMinMaxDate","isWithinMinMaxYear","minDateYear","minDate","maxDateYear","maxDate","isBefore","isAfter","isWithinMinMaxMonth","minDateObj","maxDateObj","minDateMonth","maxDateMonth","_minDate","_maxDate","renderYears","rows","class","arrowYear","onClick","onKeyUp","tabIndex","hidden","arrowPosition","name","corners","standaloneAppearance","slot","ghost","icon","variant","ref","dropdownButtonRef","trigger","ignoreRelatedSubmenu","placement","onScroll","map","checkPosition","slice","week","Fragment","id","e","onFocus","onBlur","button","textSelectDate","i18nDone","__decorate","OnListener","layoutGridCss","IxLayoutGridStyle0","LayoutGrid","noMargin","columns","gap","rowCss","IxRowStyle0","Row"],"sources":["src/components/col/col.scss?tag=ix-col&encapsulation=shadow","src/components/col/col.tsx","src/components/date-picker/date-picker.scss?tag=ix-date-picker&encapsulation=shadow","src/components/date-picker/date-picker.tsx","src/components/grid/layout-grid.scss?tag=ix-layout-grid&encapsulation=shadow","src/components/grid/layout-grid.tsx","src/components/row/row.scss?tag=ix-row&encapsulation=shadow","src/components/row/row.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n position: relative;\n flex-basis: 0;\n flex-grow: 1;\n width: 100%;\n max-width: 100%;\n min-height: 1px;\n\n padding: calc(var(--ix-layout-grid-gutter) * 0.5);\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, forceUpdate, h, Host, Listen, Prop } from '@stencil/core';\nimport { Breakpoint, matchBreakpoint } from '../utils/breakpoints';\n\ntype GridBreakpoint = Breakpoint | '';\n\nexport type ColumnSize =\n | '1'\n | '2'\n | '3'\n | '4'\n | '5'\n | '6'\n | '7'\n | '8'\n | '9'\n | '10'\n | '11'\n | '12'\n | 'auto';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-col',\n styleUrl: 'col.scss',\n shadow: true,\n})\nexport class Col {\n static Breakpoints: GridBreakpoint[] = ['', 'sm', 'md', 'lg'];\n\n /**\n * Size of the column\n */\n @Prop() size?: ColumnSize;\n\n /**\n * Size of the column for sm screens\n */\n @Prop() sizeSm?: ColumnSize;\n\n /**\n * Size of the column for md screens\n */\n @Prop() sizeMd?: ColumnSize;\n\n /**\n * Size of the column for lg screens\n */\n @Prop() sizeLg?: ColumnSize;\n\n @Listen('resize', { target: 'window' })\n onResize() {\n forceUpdate(this);\n }\n\n private getSize(breakpoint: GridBreakpoint) {\n if (breakpoint === '') {\n return this.size;\n }\n\n if (breakpoint === 'sm') {\n return this.sizeSm;\n }\n\n if (breakpoint === 'md') {\n return this.sizeMd;\n }\n\n if (breakpoint === 'lg') {\n return this.sizeLg;\n }\n }\n\n private getColumnSize() {\n let size: ColumnSize;\n Col.Breakpoints.forEach((breakpoint) => {\n const isMediaQueryActive =\n breakpoint !== '' ? matchBreakpoint(breakpoint) : true;\n\n if (!isMediaQueryActive) {\n return;\n }\n\n const currentSize = this.getSize(breakpoint);\n\n if (currentSize) {\n size = currentSize;\n }\n });\n\n return size;\n }\n\n private getColumnSizeStyling() {\n const size = this.getColumnSize();\n\n if (!size) {\n return;\n }\n\n if (size === 'auto') {\n return {\n flex: '0 0 auto',\n width: 'auto',\n 'max-width': 'auto',\n };\n }\n\n const colSize = `calc(calc(${size} / var(--ix-layout-grid-columns)) * 100%)`;\n\n return {\n flex: `0 0 ${colSize}`,\n width: `${colSize}`,\n 'max-width': `${colSize}`,\n };\n }\n\n render() {\n return (\n <Host\n style={{\n ...this.getColumnSizeStyling(),\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: block;\n position: relative;\n width: 22rem;\n\n .header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n\n .disabled-item {\n pointer-events: none;\n background-color: var(--theme-datepicker-day--background--disabled);\n color: var(--theme-datepicker-day--color--disabled);\n cursor: default;\n }\n\n .selector {\n flex-basis: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: $tiny-space $default-space;\n\n .dropdown {\n color: var(--theme-menu-item--color);\n font-size: 14px;\n line-height: 20px;\n }\n\n .fontSize {\n font-size: 16px;\n }\n\n .capitalize {\n text-transform: capitalize;\n }\n\n .month-dropdown-item {\n margin-left: 4px;\n margin-right: 4px;\n\n &:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: var(--theme-btn--focus--outline-offset);\n }\n }\n\n .arrowYear {\n display: flex;\n position: relative;\n padding: $medium-space $x-large-space;\n align-items: center;\n cursor: pointer;\n\n &:hover {\n background-color: var(--theme-select-list-item--background--hover);\n }\n\n &.selected {\n background-color: var(--theme-select-list-item--background--selected);\n }\n\n .arrowPosition {\n position: absolute;\n left: calc(($x-large-space / 2) - 6px);\n top: calc(50% - 6px);\n }\n\n .checkPosition {\n position: absolute;\n left: calc(($x-large-space / 2) - 6px);\n top: calc(50% - 8px);\n }\n\n .monthMargin {\n margin-left: 10px;\n }\n }\n }\n\n .wrapper {\n display: flex;\n\n .overflow {\n overflow-y: scroll;\n max-height: 250px;\n }\n }\n\n .grid {\n display: grid;\n grid-template-columns: repeat(8, 40px);\n grid-template-rows: repeat(7, 40px);\n align-items: center;\n justify-items: center;\n justify-content: center;\n color: var(--theme-datepicker-today--color);\n\n .calendar-item {\n position: relative;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: var(--theme-datepicker-day--background);\n border: 1px solid var(--theme-datepicker-day--background);\n width: 40px;\n height: 40px;\n cursor: pointer;\n\n &:focus-visible {\n outline: 1px solid var(--theme-color-focus-bdr);\n outline-offset: var(--theme-btn--focus--outline-offset);\n }\n\n &.today {\n border: 1px solid var(--theme-datepicker-today--border-color);\n\n &:hover {\n background-color: var(--theme-datepicker-day--background--hover);\n }\n\n &:active {\n background-color: var(--theme-datepicker-day--background--active);\n }\n\n &.selected {\n box-shadow: inset 0 0 0 1px white;\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--selected-hover\n );\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--selected-active\n );\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(\n --theme-datepicker-day--background--selected-disabled\n );\n border: 1px solid\n var(--theme-datepicker-day--background--selected-disabled);\n color: var(--theme-datepicker-day--color--selected-disabled);\n }\n }\n\n &.range {\n background-color: var(--theme-datepicker-day--background--range);\n color: var(--theme-datepicker-day--color--range);\n border: 1px solid var(--theme-datepicker-today--border-color--range);\n box-shadow: inset 0 0 0 1px white;\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--range-hover\n );\n border: 1px solid\n var(--theme-datepicker-today--border-color--range-hover);\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--range-active\n );\n border: 1px solid\n var(--theme-datepicker-today--border-color--range-active);\n }\n\n &.disabled {\n background-color: var(\n --theme-datepicker-day--background--range-disabled\n );\n color: var(--theme-datepicker-day--color--range-disabled);\n border: 1px solid\n var(--theme-datepicker-today--border-color--range-disabled);\n }\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(--theme-datepicker-day--background--disabled);\n color: var(--theme-datepicker-day--color--disabled);\n cursor: default;\n }\n }\n\n &:hover {\n background-color: var(--theme-datepicker-day--background--hover);\n }\n\n &:active {\n background-color: var(--theme-datepicker-day--background--active);\n }\n\n &.selected {\n background-color: var(--theme-datepicker-day--background--selected);\n color: var(--theme-datepicker-day--color--selected);\n border: 1px solid var(--theme-datepicker-day--background--selected);\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--selected-hover\n );\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--selected-active\n );\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(\n --theme-datepicker-day--background--selected-disabled\n );\n color: var(--theme-datepicker-day--color--selected-disabled);\n }\n }\n\n &.range {\n background-color: var(--theme-datepicker-day--background--range);\n color: var(--theme-datepicker-day--color--range);\n\n &:hover {\n background-color: var(\n --theme-datepicker-day--background--range-hover\n );\n }\n\n &:active {\n background-color: var(\n --theme-datepicker-day--background--range-active\n );\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(\n --theme-datepicker-day--background--range-disabled\n );\n color: var(--theme-datepicker-day--color--range-disabled);\n }\n }\n\n &.disabled {\n pointer-events: none;\n background-color: var(--theme-datepicker-day--background--disabled);\n color: var(--theme-datepicker-day--color--disabled);\n }\n\n &.week-day {\n color: var(--theme-datepicker-weekday--color);\n font-size: 12px;\n line-height: 20px;\n border: none;\n background: none;\n cursor: initial;\n }\n\n &.empty-day {\n border: none;\n background: none;\n cursor: initial;\n }\n\n &.week-number {\n font-size: 10px;\n line-height: 14px;\n color: var(--theme-datepicker-weekday--color);\n border: none;\n background: none;\n cursor: initial;\n }\n\n &:focus-visible {\n background-color: var(--theme-datepicker-day--background--selected);\n border: inset 1px solid\n var(--theme-datepicker-day--border-color--selected);\n color: var(--theme-datepicker-day--color--selected);\n font-size: 14px;\n line-height: 20px;\n letter-spacing: 0;\n }\n }\n }\n\n .button {\n display: flex;\n justify-content: flex-end;\n }\n\n .hidden {\n display: none;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\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","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n:host {\n --ix-layout-grid-gutter: 24px;\n\n display: block;\n flex: 1 1 0%;\n width: 100%;\n\n padding-left: calc(var(--ix-layout-grid-gutter) * 0.5);\n padding-right: calc(var(--ix-layout-grid-gutter) * 0.5);\n}\n\n:host(.no-margin) {\n padding-left: 0;\n padding-right: 0;\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-layout-grid',\n styleUrl: 'layout-grid.scss',\n shadow: true,\n})\nexport class LayoutGrid {\n /**\n * The grid will not have any horizontal padding\n */\n @Prop() noMargin = false;\n\n /**\n * Grid gap\n */\n @Prop() gap: '8' | '12' | '16' | '24' = '24';\n\n /**\n * Overwrite the default number of columns. Choose between 2 and 12 columns.\n */\n @Prop() columns = 12;\n\n render() {\n return (\n <Host\n class={{\n 'no-margin': this.noMargin,\n }}\n style={{\n '--ix-layout-grid-columns': `${this.columns}`,\n '--ix-layout-grid-gutter': `${this.gap}px`,\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: flex;\n flex-wrap: wrap;\n}\n\n:host(:not(:first-of-type)) {\n margin-block-start: var(--ix-layout-grid-row-margin, 0);\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-row',\n styleUrl: 'row.scss',\n shadow: true,\n})\nexport class Row {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as a,h as t,H as s}from"./p-f87cd962.js";const c=":host{display:block}";const n=c;const o=class{constructor(t){e(this,t);this.labelChange=a(this,"labelChange",7);this.label=undefined}watchLabel(e,a){this.labelChange.emit({name:"ix-menu-about-item",oldLabel:a,newLabel:e})}render(){return t(s,{key:"50457bcc0164d0923b4a360819e4759583d4f535"},t("slot",{key:"1f5acfdce0e58ab137145a7322e8a0348456a81e"}))}static get watchers(){return{label:["watchLabel"]}}};o.style=n;export{o as ix_menu_about_item};
2
+ //# sourceMappingURL=p-63f0755e.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r,h as t,H as o,g as s}from"./p-f87cd962.js";import{a as e}from"./p-71206084.js";import{A as a}from"./p-46a6cd9d.js";const i=":host{display:block;position:relative;width:22rem;height:100%;padding:0}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host(.visible){border-right:2px solid var(--theme-color-soft-bdr);padding:1.5rem 0.5rem 0}";const l=i;const b=class{constructor(t){r(this,t);this.visible=true}listenToggleEvent(){const r=!this.visible;const t={targets:this.hostElement,width:r?["0","22rem"]:["22rem","0"],opacity:r?[0,1]:[1,0],easing:"easeInSine",duration:a.defaultTime};const o=()=>{this.visible=r};if(r){t.begin=o.bind(this)}else{t.complete=o.bind(this)}e(t)}render(){return t(o,{key:"fe0f54c79115877bac6d0032320550ad2e3fe089",slot:"application-sidebar",class:{visible:this.visible}},this.visible?t("slot",null):null)}get hostElement(){return s(this)}};b.style=l;export{b as ix_application_sidebar};
2
- //# sourceMappingURL=p-14a41c8c.entry.js.map
1
+ import{r,h as t,H as o,g as s}from"./p-f87cd962.js";import{a as e}from"./p-71206084.js";import{A as a}from"./p-46a6cd9d.js";const i=":host{display:block;position:relative;width:22rem;height:100%;padding:0}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host(.visible){border-right:2px solid var(--theme-color-soft-bdr);padding:1.5rem 0.5rem 0}";const l=i;const b=class{constructor(t){r(this,t);this.visible=true}listenToggleEvent(){const r=!this.visible;const t={targets:this.hostElement,width:r?["0","22rem"]:["22rem","0"],opacity:r?[0,1]:[1,0],easing:"easeInSine",duration:a.defaultTime};const o=()=>{this.visible=r};if(r){t.begin=o.bind(this)}else{t.complete=o.bind(this)}e(t)}render(){return t(o,{key:"58452e01549d1141ba862068da508cf9cb57ce39",slot:"application-sidebar",class:{visible:this.visible}},this.visible?t("slot",null):null)}get hostElement(){return s(this)}};b.style=l;export{b as ix_application_sidebar};
2
+ //# sourceMappingURL=p-6618b2db.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as e,c as t,h as i,H as r}from"./p-f87cd962.js";import{a as o}from"./p-4f8ac3bf.js";const s=":host{}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .event-list-item{display:flex;align-items:center;position:relative;height:var(--event-list-item-height, 2.5rem);max-height:var(--event-list-item-height, 2.5rem);border-radius:var(--event-list-item-border-radius, 0.25rem);background-color:var(--theme-event-item--background);overflow:hidden;transition:var(--theme-default-time);cursor:pointer;margin-bottom:var(--event-list-item-margin-bottom, 0.5rem)}:host .event-list-item .indicator{height:100%;width:0.5rem;max-width:0.5rem;min-width:0.5rem;border-top-left-radius:var(--event-list-item-border-radius, 0.25rem);border-bottom-left-radius:var(--event-list-item-border-radius, 0.25rem)}:host .event-list-item .indicator-empty{border:var(--theme-weak-bdr-1);border-right:none}:host .event-list-item .event-list-item-container{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-grow:1;width:calc(100% - (1rem + 0.5rem));height:100%;border:0.062rem solid;border-color:var(--theme-event-item--border);border-top-left-radius:0;border-top-right-radius:var(--event-list-item-border-radius, 0.25rem);border-bottom-left-radius:0;border-bottom-right-radius:var(--event-list-item-border-radius, 0.25rem);border-left:none;padding-left:1rem}:host .event-list-item .event-content{display:flex;align-items:center;width:100%;height:var(--event-list-item-height, 100%);max-height:var(--event-list-item-height, 100%);white-space:var(--event-list-item-content-white-space, inherit);overflow:hidden;padding-inline-end:0.5rem}:host .event-list-item .chevron-icon{margin-left:auto;margin-right:0.5rem;opacity:0.6;align-self:center}:host .event-list-item:not(.selected):not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected):not(.disabled):not(:disabled):hover{background-color:var(--theme-event-item--background--hover)}:host .event-list-item:not(.selected):not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected):not(.disabled):not(:disabled):active,:host .event-list-item:not(.selected):not(.disabled):not(:disabled).active{background-color:var(--theme-event-item--background--active)}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled):hover{border-color:var(--theme-event-item--border--hover)}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled):active,:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled).active{border-color:var(--theme-event-item--border--active)}:host .event-list-item.selected .event-list-item-container{background-color:var(--theme-event-item--background--selected);border-color:var(--theme-event-item--border--selected)}:host .event-list-item[disabled],:host .event-list-item.disabled{pointer-events:none}:host .event-list-item[disabled] .event-list-item-container,:host .event-list-item.disabled .event-list-item-container{background-color:var(--theme-event-item--background--disabled);border-color:var(--theme-event-item--border--disabled)}:host(.disabled){pointer-events:none}";const n=s;const a=class{constructor(i){e(this,i);this.itemClick=t(this,"itemClick",7);this.color=undefined;this.itemColor=undefined;this.selected=undefined;this.disabled=undefined;this.chevron=undefined}handleItemClick(){this.itemClick.emit()}render(){var e,t,s,n;let a=((e=this.itemColor)===null||e===void 0?void 0:e.startsWith("--theme"))?`var(${this.itemColor})`:`var(--theme-${this.itemColor})`;if(this.color){a=((t=this.color)===null||t===void 0?void 0:t.startsWith("--theme"))?`var(${this.color})`:`var(--theme-${this.color})`}return i(r,{key:"f4867d7f68254b7f4929ce6746172eb03aa5caea",class:{disabled:this.disabled}},i("li",{key:"325588cc80c9b8988b37aaeb72a8d9c7affc088e","aria-disabled":o(this.disabled),class:{"event-list-item":true,selected:this.selected,disabled:this.disabled}},i("div",{key:"24ef52d3c26ccb528934fa0366c9ebdce05ca38d",class:`indicator ${!((s=this.itemColor)!==null&&s!==void 0?s:this.color)?"indicator-empty":""}`,style:{"background-color":((n=this.itemColor)!==null&&n!==void 0?n:this.color)?a:"inherit",opacity:`${this.disabled?.4:1}`}}),i("div",{key:"74fac568b74471bcd6051f25d13bbac6d3aaadb4",class:"event-list-item-container"},i("div",{key:"47d69475c3d448ca417b1892b30f22e7de77b19f",class:"event-content"},i("slot",{key:"c87d4fc509bdbc2041122e274caa2860a2530843"})),this.chevron&&i("ix-icon",{key:"8626b6e5ff1f23163d4a75d5c3a114adc3942c2c",name:"chevron-right",size:"16",class:"chevron-icon"}))))}};a.style=n;export{a as ix_event_list_item};
2
- //# sourceMappingURL=p-0653a145.entry.js.map
1
+ import{r as e,c as t,h as i,H as r}from"./p-f87cd962.js";import{a as o}from"./p-157b1b28.js";const s=":host{}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .event-list-item{display:flex;align-items:center;position:relative;height:var(--event-list-item-height, 2.5rem);max-height:var(--event-list-item-height, 2.5rem);border-radius:var(--event-list-item-border-radius, 0.25rem);background-color:var(--theme-event-item--background);overflow:hidden;transition:var(--theme-default-time);cursor:pointer;margin-bottom:var(--event-list-item-margin-bottom, 0.5rem)}:host .event-list-item .indicator{height:100%;width:0.5rem;max-width:0.5rem;min-width:0.5rem;border-top-left-radius:var(--event-list-item-border-radius, 0.25rem);border-bottom-left-radius:var(--event-list-item-border-radius, 0.25rem)}:host .event-list-item .indicator-empty{border:var(--theme-weak-bdr-1);border-right:none}:host .event-list-item .event-list-item-container{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-grow:1;width:calc(100% - (1rem + 0.5rem));height:100%;border:0.062rem solid;border-color:var(--theme-event-item--border);border-top-left-radius:0;border-top-right-radius:var(--event-list-item-border-radius, 0.25rem);border-bottom-left-radius:0;border-bottom-right-radius:var(--event-list-item-border-radius, 0.25rem);border-left:none;padding-left:1rem}:host .event-list-item .event-content{display:flex;align-items:center;width:100%;height:var(--event-list-item-height, 100%);max-height:var(--event-list-item-height, 100%);white-space:var(--event-list-item-content-white-space, inherit);overflow:hidden;padding-inline-end:0.5rem}:host .event-list-item .chevron-icon{margin-left:auto;margin-right:0.5rem;opacity:0.6;align-self:center}:host .event-list-item:not(.selected):not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected):not(.disabled):not(:disabled):hover{background-color:var(--theme-event-item--background--hover)}:host .event-list-item:not(.selected):not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected):not(.disabled):not(:disabled):active,:host .event-list-item:not(.selected):not(.disabled):not(:disabled).active{background-color:var(--theme-event-item--background--active)}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled):hover{border-color:var(--theme-event-item--border--hover)}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled):active,:host .event-list-item:not(.selected) .event-list-item-container:not(.disabled):not(:disabled).active{border-color:var(--theme-event-item--border--active)}:host .event-list-item.selected .event-list-item-container{background-color:var(--theme-event-item--background--selected);border-color:var(--theme-event-item--border--selected)}:host .event-list-item[disabled],:host .event-list-item.disabled{pointer-events:none}:host .event-list-item[disabled] .event-list-item-container,:host .event-list-item.disabled .event-list-item-container{background-color:var(--theme-event-item--background--disabled);border-color:var(--theme-event-item--border--disabled)}:host(.disabled){pointer-events:none}";const n=s;const d=class{constructor(i){e(this,i);this.itemClick=t(this,"itemClick",7);this.color=undefined;this.itemColor=undefined;this.selected=undefined;this.disabled=undefined;this.chevron=undefined}handleItemClick(){this.itemClick.emit()}render(){var e,t,s,n;let d=((e=this.itemColor)===null||e===void 0?void 0:e.startsWith("--theme"))?`var(${this.itemColor})`:`var(--theme-${this.itemColor})`;if(this.color){d=((t=this.color)===null||t===void 0?void 0:t.startsWith("--theme"))?`var(${this.color})`:`var(--theme-${this.color})`}return i(r,{key:"115c40df6986d283ac53ecc1ef7d5cfbe751864e",class:{disabled:this.disabled}},i("li",{key:"431cc4b56030d9f5db39923380067fdb98e77b88","aria-disabled":o(this.disabled),class:{"event-list-item":true,selected:this.selected,disabled:this.disabled}},i("div",{key:"44cc672e3416136a20c4f256c6c6ffd9f82097d5",class:`indicator ${!((s=this.itemColor)!==null&&s!==void 0?s:this.color)?"indicator-empty":""}`,style:{"background-color":((n=this.itemColor)!==null&&n!==void 0?n:this.color)?d:"inherit",opacity:`${this.disabled?.4:1}`}}),i("div",{key:"d894014deacd0fd725c0e88e57e5d40a4d329113",class:"event-list-item-container"},i("div",{key:"3a016426709b4abc7853bc67aeca4a3e11e5d6c1",class:"event-content"},i("slot",{key:"c5cdf2b4a04834d540af8d8df19a8889ee6e0ffb"})),this.chevron&&i("ix-icon",{key:"9646e270e1496247c2ab8223452eb76d2f9f902e",name:"chevron-right",size:"16",class:"chevron-icon"}))))}};d.style=n;export{d as ix_event_list_item};
2
+ //# sourceMappingURL=p-67f44540.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r,h as o,H as t,c as e,g as a}from"./p-f87cd962.js";import{a as s}from"./p-712e0ee0.js";const c=":host{display:block;position:relative;overflow:auto;padding:0.25rem 0.75rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const l=c;const b=class{constructor(o){r(this,o)}render(){return o(t,{key:"709b6b9fda6d3560e4a8b2703f8c72f271490a4c"},o("slot",{key:"900625af9e6dbb6b0254fb13fc6acc8cb4e98fc4"}))}};b.style=l;const i=":host{display:flex;padding:0.5rem;align-items:center;align-self:stretch}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .modal-close{margin-left:auto;margin-right:-1rem}:host .modal-icon{margin-right:1rem}";const h=i;const n=class{constructor(o){r(this,o);this.closeClick=e(this,"closeClick",7);this.hideClose=false;this.icon=undefined;this.iconColor=undefined}onIconChange(r){if(this.parentDialog){if(r){this.parentDialog.classList.add("with-icon")}else{this.parentDialog.classList.remove("with-icon")}}}componentDidLoad(){this.parentDialog=s(this.hostElement,"ix-modal");this.onIconChange(this.icon)}onCloseClick(r){const o=this.closeClick.emit(r);if(o.defaultPrevented||r.defaultPrevented){return}this.parentDialog.dismissModal()}render(){return o(t,{key:"e0edc0b5eca59209ecbe32b5777383244e6e1153"},this.icon?o("ix-icon",{class:"modal-icon",name:this.icon,color:this.iconColor}):null,o("ix-typography",{key:"4981a025990dfc2776afed400aba5cf9114bc44d",variant:"default-title"},o("slot",{key:"d9915d27dbccf15f71b97b6c7e34e294c07e31e7"})),!this.hideClose?o("ix-icon-button",{onClick:r=>this.onCloseClick(r),ghost:true,icon:"close",class:"modal-close"}):null)}get hostElement(){return a(this)}static get watchers(){return{icon:["onIconChange"]}}};n.style=h;export{b as ix_modal_content,n as ix_modal_header};
2
- //# sourceMappingURL=p-15b3c17e.entry.js.map
1
+ import{r,h as o,H as t,c as e,g as a}from"./p-f87cd962.js";import{a as s}from"./p-345e1c73.js";const c=":host{display:block;position:relative;overflow:auto;padding:0.25rem 0.75rem}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}";const l=c;const b=class{constructor(o){r(this,o)}render(){return o(t,{key:"c44dbc0e48d38a350ee7194196bfb28317bd08fb"},o("slot",{key:"de26d99ab3ff09cff42810d985580a225d1d5167"}))}};b.style=l;const i=":host{display:flex;padding:0.5rem;align-items:center;align-self:stretch}:host *,:host *::after,:host *::before{box-sizing:border-box}:host ::-webkit-scrollbar-button{display:none}@-moz-document url-prefix(){:host *{scrollbar-color:var(--theme-scrollbar-thumb--background) var(--theme-scrollbar-track--background);scrollbar-width:thin}}:host ::-webkit-scrollbar{width:0.5rem;height:0.5rem}:host ::-webkit-scrollbar-track{border-radius:5px;background:var(--theme-scrollbar-track--background)}:host ::-webkit-scrollbar-track:hover{background:var(--theme-scrollbar-track--background--hover)}:host ::-webkit-scrollbar-thumb{border-radius:5px;background:var(--theme-scrollbar-thumb--background)}:host ::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb--background--hover)}:host ::-webkit-scrollbar-corner{display:none}:host .modal-close{margin-left:auto;margin-right:-1rem}:host .modal-icon{margin-right:1rem}";const h=i;const n=class{constructor(o){r(this,o);this.closeClick=e(this,"closeClick",7);this.hideClose=false;this.icon=undefined;this.iconColor=undefined}onIconChange(r){if(this.parentDialog){if(r){this.parentDialog.classList.add("with-icon")}else{this.parentDialog.classList.remove("with-icon")}}}componentDidLoad(){this.parentDialog=s(this.hostElement,"ix-modal");this.onIconChange(this.icon)}onCloseClick(r){const o=this.closeClick.emit(r);if(o.defaultPrevented||r.defaultPrevented){return}this.parentDialog.dismissModal()}render(){return o(t,{key:"0e31772ecc258bed3aabc881736a5a55b8e2dcf8"},this.icon?o("ix-icon",{class:"modal-icon",name:this.icon,color:this.iconColor}):null,o("ix-typography",{key:"1d821172c63942206ba76f4a46cce6b89a3dd451",variant:"default-title"},o("slot",{key:"6b7225b02d3f34a3c9ee4e8d7378d09acebd701a"})),!this.hideClose?o("ix-icon-button",{onClick:r=>this.onCloseClick(r),ghost:true,icon:"close",class:"modal-close"}):null)}get hostElement(){return a(this)}static get watchers(){return{icon:["onIconChange"]}}};n.style=h;export{b as ix_modal_content,n as ix_modal_header};
2
+ //# sourceMappingURL=p-6e4c9e3d.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["modalContentCss","IxModalContentStyle0","ModalContent","render","h","Host","key","modalHeaderCss","IxModalHeaderStyle0","ModalHeader","onIconChange","icon","this","parentDialog","classList","add","remove","componentDidLoad","closestPassShadow","hostElement","onCloseClick","event","ce","closeClick","emit","defaultPrevented","dismissModal","class","name","color","iconColor","variant","hideClose","onClick","ghost"],"sources":["src/components/modal-content/modal-content.scss?tag=ix-modal-content&encapsulation=shadow","src/components/modal-content/modal-content.tsx","src/components/modal-header/modal-header.scss?tag=ix-modal-header&encapsulation=shadow","src/components/modal-header/modal-header.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: block;\n position: relative;\n overflow: auto;\n padding: 0.25rem 0.75rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-content',\n styleUrl: 'modal-content.scss',\n shadow: true,\n})\nexport class ModalContent {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: flex;\n padding: 0.5rem;\n align-items: center;\n align-self: stretch;\n\n .modal-close {\n margin-left: auto;\n margin-right: -1rem;\n }\n\n .modal-icon {\n margin-right: 1rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { closestPassShadow } from '../utils/shadow-dom';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-header',\n styleUrl: 'modal-header.scss',\n shadow: true,\n})\nexport class ModalHeader {\n @Element() hostElement!: HTMLIxModalHeaderElement;\n\n /**\n * Hide the close button\n */\n @Prop() hideClose = false;\n\n /**\n * Icon of the Header\n */\n @Prop() icon: string;\n\n @Watch('icon')\n onIconChange(icon: string) {\n if (this.parentDialog) {\n if (icon) {\n this.parentDialog.classList.add('with-icon');\n } else {\n this.parentDialog.classList.remove('with-icon');\n }\n }\n }\n\n /**\n * Icon color\n */\n @Prop() iconColor: string;\n\n /**\n * Emits when close icon is clicked and closes the modal\n * Can be prevented, in which case only the event is triggered, and the modal remains open\n */\n @Event() closeClick: EventEmitter<MouseEvent>;\n\n private parentDialog: HTMLIxModalElement;\n\n componentDidLoad() {\n this.parentDialog = closestPassShadow(\n this.hostElement,\n 'ix-modal'\n ) as HTMLIxModalElement;\n this.onIconChange(this.icon);\n }\n\n private onCloseClick(event: MouseEvent) {\n const ce = this.closeClick.emit(event);\n if (ce.defaultPrevented || event.defaultPrevented) {\n return;\n }\n\n this.parentDialog.dismissModal();\n }\n\n render() {\n return (\n <Host>\n {this.icon ? (\n <ix-icon\n class={'modal-icon'}\n name={this.icon}\n color={this.iconColor}\n ></ix-icon>\n ) : null}\n <ix-typography variant={'default-title'}>\n <slot></slot>\n </ix-typography>\n {!this.hideClose ? (\n <ix-icon-button\n onClick={(event) => this.onCloseClick(event)}\n ghost\n icon=\"close\"\n class={'modal-close'}\n ></ix-icon-button>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"+FAAA,MAAMA,EAAkB,u0BACxB,MAAAC,EAAeD,E,MCkBFE,EAAY,M,yBACvB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C,aCvBR,MAAMC,EAAiB,85BACvB,MAAAC,EAAeD,E,MC4BFE,EAAW,M,+EAMF,M,6CAQpB,YAAAC,CAAaC,GACX,GAAIC,KAAKC,aAAc,CACrB,GAAIF,EAAM,CACRC,KAAKC,aAAaC,UAAUC,IAAI,Y,KAC3B,CACLH,KAAKC,aAAaC,UAAUE,OAAO,Y,GAkBzC,gBAAAC,GACEL,KAAKC,aAAeK,EAClBN,KAAKO,YACL,YAEFP,KAAKF,aAAaE,KAAKD,K,CAGjB,YAAAS,CAAaC,GACnB,MAAMC,EAAKV,KAAKW,WAAWC,KAAKH,GAChC,GAAIC,EAAGG,kBAAoBJ,EAAMI,iBAAkB,CACjD,M,CAGFb,KAAKC,aAAaa,c,CAGpB,MAAAvB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACFM,KAAKD,KACJP,EAAA,WACEuB,MAAO,aACPC,KAAMhB,KAAKD,KACXkB,MAAOjB,KAAKkB,YAEZ,KACJ1B,EAAA,iBAAAE,IAAA,2CAAeyB,QAAS,iBACtB3B,EAAA,QAAAE,IAAA,+CAEAM,KAAKoB,UACL5B,EAAA,kBACE6B,QAAUZ,GAAUT,KAAKQ,aAAaC,GACtCa,MAAK,KACLvB,KAAK,QACLgB,MAAO,gBAEP,K"}
1
+ {"version":3,"names":["modalContentCss","IxModalContentStyle0","ModalContent","render","h","Host","key","modalHeaderCss","IxModalHeaderStyle0","ModalHeader","onIconChange","icon","this","parentDialog","classList","add","remove","componentDidLoad","closestPassShadow","hostElement","onCloseClick","event","ce","closeClick","emit","defaultPrevented","dismissModal","class","name","color","iconColor","variant","hideClose","onClick","ghost"],"sources":["src/components/modal-content/modal-content.scss?tag=ix-modal-content&encapsulation=shadow","src/components/modal-content/modal-content.tsx","src/components/modal-header/modal-header.scss?tag=ix-modal-header&encapsulation=shadow","src/components/modal-header/modal-header.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n\n display: block;\n position: relative;\n overflow: auto;\n padding: 0.25rem 0.75rem;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host } from '@stencil/core';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-content',\n styleUrl: 'modal-content.scss',\n shadow: true,\n})\nexport class ModalContent {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n@import 'mixins/shadow-dom/component';\n\n:host {\n @include ix-component;\n display: flex;\n padding: 0.5rem;\n align-items: center;\n align-self: stretch;\n\n .modal-close {\n margin-left: auto;\n margin-right: -1rem;\n }\n\n .modal-icon {\n margin-right: 1rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport { closestPassShadow } from '../utils/shadow-dom';\n\n/**\n * @since 2.0.0\n */\n@Component({\n tag: 'ix-modal-header',\n styleUrl: 'modal-header.scss',\n shadow: true,\n})\nexport class ModalHeader {\n @Element() hostElement!: HTMLIxModalHeaderElement;\n\n /**\n * Hide the close button\n */\n @Prop() hideClose = false;\n\n /**\n * Icon of the Header\n */\n @Prop() icon: string;\n\n @Watch('icon')\n onIconChange(icon: string) {\n if (this.parentDialog) {\n if (icon) {\n this.parentDialog.classList.add('with-icon');\n } else {\n this.parentDialog.classList.remove('with-icon');\n }\n }\n }\n\n /**\n * Icon color\n */\n @Prop() iconColor: string;\n\n /**\n * Emits when close icon is clicked and closes the modal\n * Can be prevented, in which case only the event is triggered, and the modal remains open\n */\n @Event() closeClick: EventEmitter<MouseEvent>;\n\n private parentDialog: HTMLIxModalElement;\n\n componentDidLoad() {\n this.parentDialog = closestPassShadow(\n this.hostElement,\n 'ix-modal'\n ) as HTMLIxModalElement;\n this.onIconChange(this.icon);\n }\n\n private onCloseClick(event: MouseEvent) {\n const ce = this.closeClick.emit(event);\n if (ce.defaultPrevented || event.defaultPrevented) {\n return;\n }\n\n this.parentDialog.dismissModal();\n }\n\n render() {\n return (\n <Host>\n {this.icon ? (\n <ix-icon\n class={'modal-icon'}\n name={this.icon}\n color={this.iconColor}\n ></ix-icon>\n ) : null}\n <ix-typography variant={'default-title'}>\n <slot></slot>\n </ix-typography>\n {!this.hideClose ? (\n <ix-icon-button\n onClick={(event) => this.onCloseClick(event)}\n ghost\n icon=\"close\"\n class={'modal-close'}\n ></ix-icon-button>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"+FAAA,MAAMA,EAAkB,u0BACxB,MAAAC,EAAeD,E,MCkBFE,EAAY,M,yBACvB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,QAAAE,IAAA,6C,aCvBR,MAAMC,EAAiB,85BACvB,MAAAC,EAAeD,E,MC4BFE,EAAW,M,+EAMF,M,6CAQpB,YAAAC,CAAaC,GACX,GAAIC,KAAKC,aAAc,CACrB,GAAIF,EAAM,CACRC,KAAKC,aAAaC,UAAUC,IAAI,Y,KAC3B,CACLH,KAAKC,aAAaC,UAAUE,OAAO,Y,GAkBzC,gBAAAC,GACEL,KAAKC,aAAeK,EAClBN,KAAKO,YACL,YAEFP,KAAKF,aAAaE,KAAKD,K,CAGjB,YAAAS,CAAaC,GACnB,MAAMC,EAAKV,KAAKW,WAAWC,KAAKH,GAChC,GAAIC,EAAGG,kBAAoBJ,EAAMI,iBAAkB,CACjD,M,CAGFb,KAAKC,aAAaa,c,CAGpB,MAAAvB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACFM,KAAKD,KACJP,EAAA,WACEuB,MAAO,aACPC,KAAMhB,KAAKD,KACXkB,MAAOjB,KAAKkB,YAEZ,KACJ1B,EAAA,iBAAAE,IAAA,2CAAeyB,QAAS,iBACtB3B,EAAA,QAAAE,IAAA,+CAEAM,KAAKoB,UACL5B,EAAA,kBACE6B,QAAUZ,GAAUT,KAAKQ,aAAaC,GACtCa,MAAK,KACLvB,KAAK,QACLgB,MAAO,gBAEP,K"}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as e,H as o,g as i}from"./p-f87cd962.js";import{c as s}from"./p-e898862b.js";import{m as a}from"./p-64c3fa3d.js";import{m as r}from"./p-c146af8e.js";import"./p-c4749812.js";const h=':host{position:relative;display:block;cursor:pointer;height:var(--ix-menu-item-height, 3rem);min-height:var(--ix-menu-item-height, 3rem);max-height:var(--ix-menu-item-height, 3rem)}:host .tab{all:unset;box-sizing:border-box;display:flex;position:relative;align-items:center;height:var(--ix-menu-item-height, 3rem);width:100%;z-index:500;padding-left:0.875rem}:host .tab:not(.disabled):not(:disabled).hover,:host .tab:not(.disabled):not(:disabled):hover{background-color:var(--theme-ghost--background--hover)}:host .tab:not(.disabled):not(:disabled).active,:host .tab:not(.disabled):not(:disabled):active{background-color:var(--theme-ghost--background--active)}:host .tab-icon{color:var(--theme-nav-item-primary-icon--color);position:relative;pointer-events:none}:host .tab:focus-visible{outline:1px solid var(--theme-color-focus-bdr);outline-offset:-1px}:host .notification{display:inline-flex;position:absolute;top:0.25rem;left:1.5rem}:host .notification .pill{display:inline-flex;justify-content:center;align-items:center;height:0.5rem;min-width:1rem;position:relative;border-radius:6.25rem;background-color:var(--theme-color-primary);font-size:0.75rem;font-weight:bold;line-height:1;font-family:Siemens Sans, Arial, sans-serif;color:var(--theme-color-primary--contrast);padding:0.25rem}:host .tab-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--theme-nav-item-primary--color);margin:0 1rem 0 1.25rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}:host(.active) .tab,:host(.selected) .tab{background-color:var(--theme-nav-item-primary--background--selected)}:host(.active) .tab::before,:host(.selected) .tab::before{content:"";background-color:var(--theme-nav-item-primary--border-color--selected);height:var(--ix-menu-item-height, 3rem);width:0.25rem;left:0;position:absolute}:host(.active) .tab>.glyph,:host(.selected) .tab>.glyph{color:var(--theme-nav-item-primary-icon--color--selected)}:host(.disabled){color:var(--theme-color-weak-text);pointer-events:none;cursor:default}:host(.disabled) .tab>.tab-icon{color:var(--theme-color-weak-text)}:host(.disabled) .tab-text{color:var(--theme-color-weak-text)}:host(.bottom-tab),:host([slot=bottom]){min-height:2.25rem;height:2.25rem;max-height:2.25rem}:host(.bottom-tab) .tab,:host([slot=bottom]) .tab{height:2.25rem}:host(.bottom-tab) .tab::before,:host([slot=bottom]) .tab::before{height:2.25rem;background-color:transparent}:host(.bottom-tab).active:hover,:host(.bottom-tab).selected:hover,:host([slot=bottom]).active:hover,:host([slot=bottom]).selected:hover{background-color:var(--theme-nav-item-secondary--background--selected)}:host(.bottom-tab).active:active,:host(.bottom-tab).selected:active,:host([slot=bottom]).active:active,:host([slot=bottom]).selected:active{background-color:var(--theme-nav-item-secondary--background--selected)}:host(.bottom-tab.active) .tab,:host(.bottom-tab.selected) .tab,:host(.active[slot=bottom]) .tab,:host(.selected[slot=bottom]) .tab{background-color:var(--theme-nav-item-secondary--background--selected)}:host(.tab-nested) .tab{flex-direction:row;padding-left:1.375rem}:host(.tab-nested) .tab .notification{position:relative;top:0;left:0;padding-left:0.5rem}:host(.tab-nested) .tab .tab-icon{padding-left:0.5rem;padding-right:0.5rem}:host(.tab-nested) .tab .tab-text{margin-left:0.5rem}:host(.tab-nested) .tab::before{display:none}';const n=h;const c=class{constructor(e){t(this,e);this.buttonRef=a();this.isHostedInsideCategory=false;this.observer=s((()=>{this.setTooltip()}));this.label=undefined;this.home=false;this.bottom=false;this.tabIcon=undefined;this.icon=undefined;this.notifications=undefined;this.active=false;this.disabled=false;this.isCategory=false;this.tooltip=undefined;this.menuExpanded=false}componentWillLoad(){this.isHostedInsideCategory=!!this.hostElement.closest("ix-menu-category");this.onIconChange();this.onTabIconChange();this.menuExpanded=r.nativeElement.expand;this.menuExpandedDisposer=r.expandChange.on((t=>this.menuExpanded=t))}componentWillRender(){this.setTooltip()}setTooltip(){var t;this.tooltip=(t=this.label)!==null&&t!==void 0?t:this.hostElement.textContent}connectedCallback(){this.observer.observe(this.hostElement,{subtree:true,childList:true,characterData:true})}disconnectedCallback(){if(this.observer){this.observer.disconnect()}if(this.menuExpandedDisposer){this.menuExpandedDisposer.dispose()}}onIconChange(){if(!this.isHostedInsideCategory&&!this.hostElement.icon&&!this.hostElement.tabIcon){this.icon="document"}}onTabIconChange(){if(!this.isHostedInsideCategory&&!this.hostElement.icon&&!this.hostElement.tabIcon){this.tabIcon="document"}}render(){var t;let i={};if(this.home){i={slot:"home"}}if(this.bottom){i={slot:"bottom"}}return e(o,Object.assign({key:"44759af10c986ca08135dae3ab3b2258c933d8ef",class:{disabled:this.disabled,"home-tab":this.home,"bottom-tab":this.bottom,active:this.active,"tab-nested":this.isHostedInsideCategory}},i),e("button",{key:"e30dbc8b43973f06f0d1f387ca886f11c088c0b9",class:"tab",tabIndex:this.disabled?-1:0,role:"listitem",ref:this.buttonRef},(this.icon||this.tabIcon)&&e("ix-icon",{key:"11163d983423f020b14de4bcae24dbf55068e645",class:"tab-icon",name:(t=this.icon)!==null&&t!==void 0?t:this.tabIcon}),this.notifications?e("div",{class:"notification"},e("div",{class:"pill"},this.notifications)):null,e("span",{key:"3a62db4c5e965a9fec6d5e4648a9587b7ff6271d",class:"tab-text text-default"},this.label,e("slot",{key:"1c9c5c22c13da93176d68f93c516e4005506d43e"}))),!this.isCategory&&!this.isHostedInsideCategory&&!this.menuExpanded&&e("ix-tooltip",{key:"ec5fd96cbe7c0937202a70ebfba24abc66afd203",for:this.buttonRef.waitForCurrent(),placement:"right",showDelay:1e3},this.tooltip))}get hostElement(){return i(this)}static get watchers(){return{icon:["onIconChange"],tabIcon:["onTabIconChange"]}}};c.style=n;export{c as ix_menu_item};
2
+ //# sourceMappingURL=p-7402f42a.entry.js.map