@sbb-esta/lyne-elements 3.0.0-next.1 → 3.0.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/accordion/accordion.component.js +19 -22
  2. package/action-group/action-group.component.js +3 -5
  3. package/alert/alert/alert.component.d.ts +5 -7
  4. package/alert/alert/alert.component.d.ts.map +1 -1
  5. package/alert/alert/alert.component.js +69 -84
  6. package/alert/alert-group/alert-group.component.js +2 -3
  7. package/autocomplete/autocomplete-base-element.js +83 -95
  8. package/autocomplete/autocomplete.component.js +28 -33
  9. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +42 -50
  10. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -1
  11. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  12. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +4 -5
  13. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +17 -20
  14. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +1 -1
  15. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  16. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +21 -24
  17. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +5 -5
  18. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +27 -31
  19. package/button/mini-button/mini-button.component.js +1 -1
  20. package/button/mini-button-group/mini-button-group.component.js +1 -2
  21. package/calendar/calendar.component.d.ts +0 -5
  22. package/calendar/calendar.component.d.ts.map +1 -1
  23. package/calendar/calendar.component.js +129 -147
  24. package/card/card/card.component.js +12 -12
  25. package/card/card-badge/card-badge.component.js +17 -17
  26. package/card/common/card-action-common.js +20 -22
  27. package/checkbox/checkbox/checkbox.component.js +17 -20
  28. package/checkbox/checkbox-group/checkbox-group.component.js +39 -52
  29. package/checkbox/checkbox-panel/checkbox-panel.component.js +18 -21
  30. package/checkbox/common/checkbox-common.js +13 -15
  31. package/chip/chip-group/chip-group.component.js +66 -80
  32. package/clock/clock.component.js +50 -60
  33. package/container/container/container.component.js +28 -29
  34. package/container/sticky-bar/sticky-bar.component.js +25 -26
  35. package/core/a11y/focus-trap-controller.js +11 -14
  36. package/core/a11y/input-modality-detector.js +15 -16
  37. package/core/a11y/interactivity-checker.js +10 -10
  38. package/core/a11y/live-announcer.js +12 -14
  39. package/core/base-elements/button-base-element.js +58 -63
  40. package/core/base-elements/link-base-element.js +3 -6
  41. package/core/base-elements/open-close-base-element.js +1 -1
  42. package/core/config/config.d.ts.map +1 -1
  43. package/core/controllers/escapable-overlay-controller.js +10 -12
  44. package/core/controllers/id-reference-controller.js +13 -14
  45. package/core/controllers/inert-controller.js +8 -10
  46. package/core/controllers/slot-state-controller.js +16 -26
  47. package/core/datetime/date-adapter.d.ts +1 -1
  48. package/core/datetime/date-adapter.d.ts.map +1 -1
  49. package/core/datetime/date-adapter.js +21 -21
  50. package/core/datetime/native-date-adapter.d.ts +1 -1
  51. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  52. package/core/datetime/native-date-adapter.js +28 -28
  53. package/core/decorators/force-type.js +4 -5
  54. package/core/decorators/id-reference.js +34 -37
  55. package/core/decorators/plain-date.js +16 -19
  56. package/core/dom/breakpoint.js +8 -8
  57. package/core/eventing/event-emitter.js +4 -5
  58. package/core/i18n/i18n.js +41 -41
  59. package/core/mixins/element-internals-mixin.d.ts +21 -0
  60. package/core/mixins/element-internals-mixin.d.ts.map +1 -1
  61. package/core/mixins/element-internals-mixin.js +109 -23
  62. package/core/mixins/form-associated-checkbox-mixin.js +32 -37
  63. package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  64. package/core/mixins/form-associated-input-mixin.js +69 -93
  65. package/core/mixins/form-associated-mixin.js +32 -35
  66. package/core/mixins/form-associated-radio-button-mixin.js +3 -5
  67. package/core/mixins/hydration-mixin.js +12 -13
  68. package/core/mixins/named-slot-list-mixin.js +32 -37
  69. package/core/mixins/panel-mixin.js +26 -27
  70. package/core/mixins/readonly-mixin.d.ts.map +1 -1
  71. package/core/mixins/readonly-mixin.js +10 -11
  72. package/core/mixins.js +27 -25
  73. package/core/overlay/position.js +23 -23
  74. package/core/styles/core/mediaqueries.scss +1 -1
  75. package/core/styles/core.scss +70 -35
  76. package/core/styles/mixins/table.scss +1 -24
  77. package/core/testing/event-spy.js +2 -4
  78. package/core/testing/wait-for-image-ready.js +8 -9
  79. package/core/testing/wait-for-render.js +8 -9
  80. package/core.css +29 -0
  81. package/custom-elements.json +5233 -2636
  82. package/date-input/date-input.component.d.ts +16 -1
  83. package/date-input/date-input.component.d.ts.map +1 -1
  84. package/date-input/date-input.component.js +71 -58
  85. package/datepicker/common/datepicker-button.d.ts +31 -20
  86. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  87. package/datepicker/common/datepicker-button.js +79 -74
  88. package/datepicker/common.d.ts +0 -1
  89. package/datepicker/common.d.ts.map +1 -1
  90. package/datepicker/common.js +3 -5
  91. package/datepicker/datepicker/datepicker.component.d.ts +23 -102
  92. package/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  93. package/datepicker/datepicker/datepicker.component.js +91 -233
  94. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -2
  95. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  96. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +27 -18
  97. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -2
  98. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  99. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +27 -18
  100. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +6 -26
  101. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  102. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +36 -145
  103. package/datepicker.js +9 -11
  104. package/development/accordion/accordion.component.js +4 -7
  105. package/development/action-group/action-group.component.js +3 -5
  106. package/development/alert/alert/alert.component.d.ts +5 -7
  107. package/development/alert/alert/alert.component.d.ts.map +1 -1
  108. package/development/alert/alert/alert.component.js +34 -52
  109. package/development/alert/alert-group/alert-group.component.js +2 -3
  110. package/development/autocomplete/autocomplete-base-element.js +20 -32
  111. package/development/autocomplete/autocomplete.component.js +7 -12
  112. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +10 -18
  113. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -1
  114. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  115. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +4 -9
  116. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  117. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +4 -7
  118. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +1 -1
  119. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  120. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +4 -7
  121. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -2
  122. package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  123. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -9
  124. package/development/button/accent-button/accent-button.component.js +1 -1
  125. package/development/button/accent-button-link/accent-button-link.component.js +1 -1
  126. package/development/button/accent-button-static/accent-button-static.component.js +1 -1
  127. package/development/button/button/button.component.js +1 -1
  128. package/development/button/button-link/button-link.component.js +1 -1
  129. package/development/button/button-static/button-static.component.js +1 -1
  130. package/development/button/common/button-common.js +1 -1
  131. package/development/button/mini-button/mini-button.component.js +1 -1
  132. package/development/button/mini-button-group/mini-button-group.component.js +2 -3
  133. package/development/button/secondary-button/secondary-button.component.js +1 -1
  134. package/development/button/secondary-button-link/secondary-button-link.component.js +1 -1
  135. package/development/button/secondary-button-static/secondary-button-static.component.js +1 -1
  136. package/development/button/transparent-button/transparent-button.component.js +1 -1
  137. package/development/button/transparent-button-link/transparent-button-link.component.js +1 -1
  138. package/development/button/transparent-button-static/transparent-button-static.component.js +1 -1
  139. package/development/calendar/calendar.component.d.ts +0 -5
  140. package/development/calendar/calendar.component.d.ts.map +1 -1
  141. package/development/calendar/calendar.component.js +20 -44
  142. package/development/card/card/card.component.js +1 -1
  143. package/development/card/card-badge/card-badge.component.js +2 -2
  144. package/development/card/card-button/card-button.component.js +1 -1
  145. package/development/card/card-link/card-link.component.js +1 -1
  146. package/development/card/common/card-action-common.js +4 -6
  147. package/development/checkbox/checkbox/checkbox.component.js +2 -5
  148. package/development/checkbox/checkbox-group/checkbox-group.component.js +8 -21
  149. package/development/checkbox/checkbox-panel/checkbox-panel.component.js +2 -5
  150. package/development/checkbox/common/checkbox-common.js +3 -5
  151. package/development/chip/chip/chip.component.js +1 -1
  152. package/development/chip/chip-group/chip-group.component.js +18 -32
  153. package/development/chip-label/chip-label.component.js +1 -1
  154. package/development/clock/clock.component.js +23 -33
  155. package/development/container/container/container.component.js +2 -3
  156. package/development/container/sticky-bar/sticky-bar.component.js +3 -4
  157. package/development/core/a11y/arrow-navigation.js +1 -1
  158. package/development/core/a11y/fake-event-detection.js +1 -1
  159. package/development/core/a11y/focus-trap-controller.js +6 -9
  160. package/development/core/a11y/focus-visible-within-controller.js +1 -1
  161. package/development/core/a11y/input-modality-detector.js +2 -3
  162. package/development/core/a11y/interactivity-checker.js +2 -2
  163. package/development/core/a11y/live-announcer.js +6 -8
  164. package/development/core/base-elements/action-base-element.js +2 -3
  165. package/development/core/base-elements/button-base-element.js +6 -11
  166. package/development/core/base-elements/link-base-element.js +4 -7
  167. package/development/core/base-elements/open-close-base-element.js +2 -2
  168. package/development/core/config/config.d.ts.map +1 -1
  169. package/development/core/config/config.js +1 -1
  170. package/development/core/controllers/escapable-overlay-controller.js +3 -5
  171. package/development/core/controllers/id-reference-controller.js +2 -3
  172. package/development/core/controllers/inert-controller.js +4 -6
  173. package/development/core/controllers/language-controller.js +1 -1
  174. package/development/core/controllers/media-matchers-controller.js +1 -1
  175. package/development/core/controllers/slot-state-controller.js +8 -18
  176. package/development/core/datetime/date-adapter.d.ts +1 -1
  177. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  178. package/development/core/datetime/date-adapter.js +5 -5
  179. package/development/core/datetime/native-date-adapter.d.ts +1 -1
  180. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  181. package/development/core/datetime/native-date-adapter.js +4 -4
  182. package/development/core/decorators/force-type.js +3 -4
  183. package/development/core/decorators/get-override.js +1 -1
  184. package/development/core/decorators/handle-distinct-change.js +1 -1
  185. package/development/core/decorators/host-attributes.js +1 -1
  186. package/development/core/decorators/id-reference.js +4 -7
  187. package/development/core/decorators/plain-date.js +5 -8
  188. package/development/core/decorators/slot-state.js +1 -1
  189. package/development/core/dom/animation.js +1 -1
  190. package/development/core/dom/breakpoint.js +2 -2
  191. package/development/core/dom/host-context.js +1 -1
  192. package/development/core/dom/platform.js +1 -1
  193. package/development/core/dom/scroll.js +1 -1
  194. package/development/core/dom/set-or-remove-attribute.js +1 -1
  195. package/development/core/eventing/composed-path-has-attribute.js +1 -1
  196. package/development/core/eventing/event-emitter.js +2 -3
  197. package/development/core/eventing/form-element-handlers.js +1 -1
  198. package/development/core/eventing/forward-event.js +1 -1
  199. package/development/core/eventing/throttle.js +1 -1
  200. package/development/core/i18n/i18n.js +18 -18
  201. package/development/core/mixins/animation-complete-mixin.js +1 -1
  202. package/development/core/mixins/disabled-mixin.js +1 -1
  203. package/development/core/mixins/element-internals-mixin.d.ts +21 -0
  204. package/development/core/mixins/element-internals-mixin.d.ts.map +1 -1
  205. package/development/core/mixins/element-internals-mixin.js +123 -2
  206. package/development/core/mixins/form-associated-checkbox-mixin.js +6 -9
  207. package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  208. package/development/core/mixins/form-associated-input-mixin.js +29 -59
  209. package/development/core/mixins/form-associated-mixin.js +6 -9
  210. package/development/core/mixins/form-associated-radio-button-mixin.js +7 -9
  211. package/development/core/mixins/hydration-mixin.js +3 -4
  212. package/development/core/mixins/named-slot-list-mixin.js +4 -7
  213. package/development/core/mixins/negative-mixin.js +1 -1
  214. package/development/core/mixins/panel-mixin.js +2 -3
  215. package/development/core/mixins/readonly-mixin.d.ts.map +1 -1
  216. package/development/core/mixins/readonly-mixin.js +4 -6
  217. package/development/core/mixins/required-mixin.js +1 -1
  218. package/development/core/mixins/update-scheduler-mixin.js +1 -1
  219. package/development/core/mixins.js +4 -2
  220. package/development/core/overlay/overlay-option-panel.js +1 -1
  221. package/development/core/overlay/overlay-trigger-attributes.js +1 -1
  222. package/development/core/overlay/overlay.js +1 -1
  223. package/development/core/overlay/position.js +5 -5
  224. package/development/core/testing/event-spy.js +3 -5
  225. package/development/core/testing/mocha-extensions.js +1 -1
  226. package/development/core/testing/wait-for-condition.js +1 -1
  227. package/development/core/testing/wait-for-image-ready.js +2 -3
  228. package/development/core/testing/wait-for-render.js +2 -3
  229. package/development/date-input/date-input.component.d.ts +16 -1
  230. package/development/date-input/date-input.component.d.ts.map +1 -1
  231. package/development/date-input/date-input.component.js +28 -11
  232. package/development/datepicker/common/datepicker-button.d.ts +31 -20
  233. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  234. package/development/datepicker/common/datepicker-button.js +103 -90
  235. package/development/datepicker/common.d.ts +0 -1
  236. package/development/datepicker/common.d.ts.map +1 -1
  237. package/development/datepicker/common.js +4 -6
  238. package/development/datepicker/datepicker/datepicker.component.d.ts +23 -102
  239. package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  240. package/development/datepicker/datepicker/datepicker.component.js +94 -337
  241. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -2
  242. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  243. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +18 -6
  244. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -2
  245. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  246. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +18 -6
  247. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +6 -26
  248. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  249. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +137 -224
  250. package/development/datepicker.js +3 -5
  251. package/development/dialog/dialog/dialog.component.d.ts +7 -16
  252. package/development/dialog/dialog/dialog.component.d.ts.map +1 -1
  253. package/development/dialog/dialog/dialog.component.js +78 -149
  254. package/development/dialog/dialog-actions/dialog-actions.component.d.ts +2 -2
  255. package/development/dialog/dialog-actions/dialog-actions.component.d.ts.map +1 -1
  256. package/development/dialog/dialog-actions/dialog-actions.component.js +20 -17
  257. package/development/dialog/dialog-content/dialog-content.component.d.ts.map +1 -1
  258. package/development/dialog/dialog-content/dialog-content.component.js +5 -46
  259. package/development/dialog/dialog-title/dialog-title.component.d.ts +2 -26
  260. package/development/dialog/dialog-title/dialog-title.component.d.ts.map +1 -1
  261. package/development/dialog/dialog-title/dialog-title.component.js +12 -179
  262. package/development/divider/divider.component.js +2 -2
  263. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +9 -13
  264. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +2 -2
  265. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +5 -6
  266. package/development/file-selector/common/file-selector-common.js +2 -3
  267. package/development/file-selector/file-selector/file-selector.component.js +1 -1
  268. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  269. package/development/flip-card/flip-card/flip-card.component.js +7 -13
  270. package/development/flip-card/flip-card-details/flip-card-details.component.js +3 -4
  271. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +3 -4
  272. package/development/footer/footer.component.js +1 -1
  273. package/development/form-error/form-error.component.js +3 -4
  274. package/development/form-field/form-field/form-field.component.d.ts +1 -1
  275. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  276. package/development/form-field/form-field/form-field.component.js +39 -67
  277. package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  278. package/development/form-field/form-field-clear/form-field-clear.component.js +6 -8
  279. package/development/header/common/header-action-common.js +1 -1
  280. package/development/header/header/header.component.js +5 -8
  281. package/development/header/header-button/header-button.component.js +1 -1
  282. package/development/header/header-link/header-link.component.js +1 -1
  283. package/development/icon/icon-base.d.ts +5 -3
  284. package/development/icon/icon-base.d.ts.map +1 -1
  285. package/development/icon/icon-base.js +4 -7
  286. package/development/icon/icon-name-mixin.js +1 -1
  287. package/development/icon/icon-request.js +2 -3
  288. package/development/icon/icon-validate.js +1 -1
  289. package/development/icon/icon.component.d.ts +1 -2
  290. package/development/icon/icon.component.d.ts.map +1 -1
  291. package/development/icon/icon.component.js +8 -19
  292. package/development/image/image.component.js +7 -9
  293. package/development/journey-header/journey-header.component.d.ts +5 -5
  294. package/development/journey-header/journey-header.component.d.ts.map +1 -1
  295. package/development/journey-header/journey-header.component.js +26 -40
  296. package/development/lead-container/lead-container.component.js +1 -1
  297. package/development/link/block-link/block-link.component.js +1 -1
  298. package/development/link/block-link-button/block-link-button.component.js +1 -1
  299. package/development/link/block-link-static/block-link-static.component.js +1 -1
  300. package/development/link/common/block-link-common.js +1 -1
  301. package/development/link/common/inline-link-common.js +1 -1
  302. package/development/link/link/link.component.js +1 -1
  303. package/development/link/link-button/link-button.component.js +1 -1
  304. package/development/link/link-static/link-static.component.js +1 -1
  305. package/development/link-common-DPLJx5Uo.js +1 -1
  306. package/development/link-list/common/link-list-base.js +1 -1
  307. package/development/link-list/link-list/link-list.component.js +1 -1
  308. package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
  309. package/development/loading-indicator/loading-indicator.component.js +1 -1
  310. package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  311. package/development/logo/logo.component.js +1 -1
  312. package/development/map-container/map-container.component.js +2 -3
  313. package/development/menu/common/menu-action-common.js +1 -1
  314. package/development/menu/menu/menu.component.js +17 -25
  315. package/development/menu/menu-button/menu-button.component.js +1 -1
  316. package/development/menu/menu-link/menu-link.component.js +1 -1
  317. package/development/message/message.component.d.ts +4 -8
  318. package/development/message/message.component.d.ts.map +1 -1
  319. package/development/message/message.component.js +12 -54
  320. package/development/navigation/common/navigation-action-common.js +3 -5
  321. package/development/navigation/navigation/navigation.component.js +19 -35
  322. package/development/navigation/navigation-button/navigation-button.component.js +1 -1
  323. package/development/navigation/navigation-link/navigation-link.component.js +1 -1
  324. package/development/navigation/navigation-list/navigation-list.component.js +1 -1
  325. package/development/navigation/navigation-marker/navigation-marker.component.js +4 -6
  326. package/development/navigation/navigation-section/navigation-section.component.d.ts +1 -1
  327. package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  328. package/development/navigation/navigation-section/navigation-section.component.js +27 -37
  329. package/development/notification/notification.component.d.ts +7 -9
  330. package/development/notification/notification.component.d.ts.map +1 -1
  331. package/development/notification/notification.component.js +47 -77
  332. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  333. package/development/option/optgroup/optgroup-base-element.js +8 -14
  334. package/development/option/optgroup/optgroup.component.js +6 -10
  335. package/development/option/option/option-base-element.js +3 -4
  336. package/development/option/option/option.component.js +7 -10
  337. package/development/overlay/overlay-base-element.d.ts +24 -6
  338. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  339. package/development/overlay/overlay-base-element.js +114 -15
  340. package/development/overlay/overlay.component.d.ts +2 -12
  341. package/development/overlay/overlay.component.d.ts.map +1 -1
  342. package/development/overlay/overlay.component.js +33 -98
  343. package/development/paginator/common/paginator-common.js +1 -1
  344. package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
  345. package/development/paginator/paginator/paginator.component.js +2 -3
  346. package/development/popover/popover/popover.component.d.ts +45 -34
  347. package/development/popover/popover/popover.component.d.ts.map +1 -1
  348. package/development/popover/popover/popover.component.js +215 -172
  349. package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
  350. package/development/popover/popover.js +2 -1
  351. package/development/popover.js +2 -1
  352. package/development/radio-button/common/radio-button-common.js +6 -10
  353. package/development/radio-button/radio-button/radio-button.component.js +2 -5
  354. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts +1 -1
  355. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  356. package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -24
  357. package/development/radio-button/radio-button-panel/radio-button-panel.component.js +3 -7
  358. package/development/screen-reader-only/screen-reader-only.component.js +1 -1
  359. package/development/select/select.component.js +26 -49
  360. package/development/selection-expansion-panel/selection-expansion-panel.component.js +7 -11
  361. package/development/sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  362. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
  363. package/development/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +4 -7
  364. package/development/sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  365. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +1 -1
  366. package/development/sidebar/sidebar/sidebar.component.js +9 -16
  367. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +0 -1
  368. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  369. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +3 -8
  370. package/development/sidebar/sidebar-container/sidebar-container.component.js +9 -13
  371. package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  372. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts +2 -0
  373. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  374. package/development/sidebar/sidebar-title/sidebar-title.component.js +3 -9
  375. package/development/signet/signet.component.js +1 -1
  376. package/development/skiplink-list/skiplink-list.component.d.ts.map +1 -1
  377. package/development/skiplink-list/skiplink-list.component.js +19 -10
  378. package/development/slider/slider.component.js +4 -6
  379. package/development/status/status.component.d.ts +4 -7
  380. package/development/status/status.component.d.ts.map +1 -1
  381. package/development/status/status.component.js +23 -57
  382. package/development/stepper/step/step.component.d.ts +2 -1
  383. package/development/stepper/step/step.component.d.ts.map +1 -1
  384. package/development/stepper/step/step.component.js +16 -15
  385. package/development/stepper/step-label/step-label.component.d.ts +3 -3
  386. package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
  387. package/development/stepper/step-label/step-label.component.js +16 -17
  388. package/development/stepper/stepper/stepper.component.js +16 -29
  389. package/development/table/table-wrapper/table-wrapper.component.js +2 -7
  390. package/development/tabs/tab/tab.component.js +1 -1
  391. package/development/tabs/tab-group/tab-group.component.js +23 -38
  392. package/development/tabs/tab-label/tab-label.component.js +1 -1
  393. package/development/tag/tag/tag.component.js +7 -13
  394. package/development/tag/tag-group/tag-group.component.js +5 -13
  395. package/development/teaser/teaser.component.d.ts +6 -10
  396. package/development/teaser/teaser.component.d.ts.map +1 -1
  397. package/development/teaser/teaser.component.js +48 -76
  398. package/development/teaser-hero/teaser-hero.component.js +1 -1
  399. package/development/teaser-product/common/teaser-product-common.js +1 -1
  400. package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
  401. package/development/teaser-product/teaser-product-static/teaser-product-static.component.js +1 -1
  402. package/development/time-input/time-input.component.js +10 -14
  403. package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
  404. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +1 -1
  405. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +2 -5
  406. package/development/title/title-base.d.ts +0 -8
  407. package/development/title/title-base.d.ts.map +1 -1
  408. package/development/title/title-base.js +17 -49
  409. package/development/title/title.component.d.ts +2 -0
  410. package/development/title/title.component.d.ts.map +1 -1
  411. package/development/title/title.component.js +9 -14
  412. package/development/toast/toast.component.d.ts.map +1 -1
  413. package/development/toast/toast.component.js +7 -16
  414. package/development/toggle/toggle/toggle.component.js +8 -12
  415. package/development/toggle/toggle-option/toggle-option.component.d.ts +1 -1
  416. package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  417. package/development/toggle/toggle-option/toggle-option.component.js +10 -17
  418. package/development/toggle-check/toggle-check.component.js +1 -1
  419. package/development/train/train/train.component.js +1 -1
  420. package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  421. package/development/train/train-formation/train-formation.component.js +5 -7
  422. package/development/train/train-wagon/train-wagon.component.js +1 -1
  423. package/development/visual-checkbox/visual-checkbox.component.js +1 -1
  424. package/dialog/dialog/dialog.component.d.ts +7 -16
  425. package/dialog/dialog/dialog.component.d.ts.map +1 -1
  426. package/dialog/dialog/dialog.component.js +57 -87
  427. package/dialog/dialog-actions/dialog-actions.component.d.ts +2 -2
  428. package/dialog/dialog-actions/dialog-actions.component.d.ts.map +1 -1
  429. package/dialog/dialog-actions/dialog-actions.component.js +16 -16
  430. package/dialog/dialog-content/dialog-content.component.d.ts.map +1 -1
  431. package/dialog/dialog-content/dialog-content.component.js +14 -19
  432. package/dialog/dialog-title/dialog-title.component.d.ts +2 -26
  433. package/dialog/dialog-title/dialog-title.component.d.ts.map +1 -1
  434. package/dialog/dialog-title/dialog-title.component.js +16 -111
  435. package/divider/divider.component.js +3 -3
  436. package/expansion-panel/expansion-panel/expansion-panel.component.js +5 -9
  437. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  438. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +30 -31
  439. package/file-selector/common/file-selector-common.js +1 -2
  440. package/flip-card/flip-card/flip-card.component.js +48 -54
  441. package/flip-card/flip-card-details/flip-card-details.component.js +15 -16
  442. package/flip-card/flip-card-summary/flip-card-summary.component.js +19 -20
  443. package/form-error/form-error.component.js +13 -14
  444. package/form-field/form-field/form-field.component.d.ts +1 -1
  445. package/form-field/form-field/form-field.component.d.ts.map +1 -1
  446. package/form-field/form-field/form-field.component.js +149 -168
  447. package/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  448. package/form-field/form-field-clear/form-field-clear.component.js +19 -21
  449. package/header/header/header.component.js +26 -29
  450. package/icon/icon-base.d.ts +5 -3
  451. package/icon/icon-base.d.ts.map +1 -1
  452. package/icon/icon-base.js +32 -34
  453. package/icon/icon-request.js +10 -11
  454. package/icon/icon.component.d.ts +1 -2
  455. package/icon/icon.component.d.ts.map +1 -1
  456. package/icon/icon.component.js +37 -37
  457. package/icon-sidebar-button-common-CM-ueEhH.js +7 -0
  458. package/image/image.component.js +4 -6
  459. package/journey-header/journey-header.component.d.ts +5 -5
  460. package/journey-header/journey-header.component.d.ts.map +1 -1
  461. package/journey-header/journey-header.component.js +50 -63
  462. package/map-container/map-container.component.js +1 -2
  463. package/menu/menu/menu.component.js +47 -55
  464. package/message/message.component.d.ts +4 -8
  465. package/message/message.component.d.ts.map +1 -1
  466. package/message/message.component.js +18 -47
  467. package/navigation/common/navigation-action-common.js +19 -21
  468. package/navigation/navigation/navigation.component.js +73 -92
  469. package/navigation/navigation-marker/navigation-marker.component.js +26 -28
  470. package/navigation/navigation-section/navigation-section.component.d.ts +1 -1
  471. package/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  472. package/navigation/navigation-section/navigation-section.component.js +72 -82
  473. package/notification/notification.component.d.ts +7 -9
  474. package/notification/notification.component.d.ts.map +1 -1
  475. package/notification/notification.component.js +77 -95
  476. package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  477. package/option/optgroup/optgroup-base-element.js +36 -38
  478. package/option/optgroup/optgroup.component.js +16 -20
  479. package/option/option/option-base-element.js +3 -4
  480. package/option/option/option.component.js +26 -29
  481. package/overlay/overlay-base-element.d.ts +24 -6
  482. package/overlay/overlay-base-element.d.ts.map +1 -1
  483. package/overlay/overlay-base-element.js +98 -51
  484. package/overlay/overlay.component.d.ts +2 -12
  485. package/overlay/overlay.component.d.ts.map +1 -1
  486. package/overlay/overlay.component.js +57 -95
  487. package/package.json +1 -1
  488. package/paginator/paginator/paginator.component.js +3 -4
  489. package/popover/popover/popover.component.d.ts +45 -34
  490. package/popover/popover/popover.component.d.ts.map +1 -1
  491. package/popover/popover/popover.component.js +194 -168
  492. package/popover/popover-trigger/popover-trigger.component.js +1 -1
  493. package/popover/popover.js +2 -1
  494. package/popover.js +5 -4
  495. package/radio-button/common/radio-button-common.js +11 -15
  496. package/radio-button/radio-button/radio-button.component.js +16 -19
  497. package/radio-button/radio-button-group/radio-button-group.component.d.ts +1 -1
  498. package/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  499. package/radio-button/radio-button-group/radio-button-group.component.js +27 -43
  500. package/radio-button/radio-button-panel/radio-button-panel.component.js +33 -37
  501. package/select/select.component.js +94 -117
  502. package/selection-expansion-panel/selection-expansion-panel.component.js +35 -39
  503. package/sidebar/common.js +1 -1
  504. package/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +10 -13
  505. package/sidebar/sidebar/sidebar.component.js +62 -69
  506. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +0 -1
  507. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  508. package/sidebar/sidebar-close-button/sidebar-close-button.component.js +18 -18
  509. package/sidebar/sidebar-container/sidebar-container.component.js +29 -33
  510. package/sidebar/sidebar-title/sidebar-title.component.d.ts +2 -0
  511. package/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  512. package/sidebar/sidebar-title/sidebar-title.component.js +16 -16
  513. package/sidebar.js +1 -1
  514. package/skiplink-list/skiplink-list.component.d.ts.map +1 -1
  515. package/skiplink-list/skiplink-list.component.js +36 -39
  516. package/slider/slider.component.js +11 -13
  517. package/standard-theme.css +29 -25
  518. package/status/status.component.d.ts +4 -7
  519. package/status/status.component.d.ts.map +1 -1
  520. package/status/status.component.js +34 -50
  521. package/stepper/step/step.component.d.ts +2 -1
  522. package/stepper/step/step.component.d.ts.map +1 -1
  523. package/stepper/step/step.component.js +26 -24
  524. package/stepper/step-label/step-label.component.d.ts +3 -3
  525. package/stepper/step-label/step-label.component.d.ts.map +1 -1
  526. package/stepper/step-label/step-label.component.js +15 -15
  527. package/stepper/stepper/stepper.component.js +72 -86
  528. package/table/table-wrapper/table-wrapper.component.js +17 -18
  529. package/table.css +0 -25
  530. package/tabs/tab-group/tab-group.component.js +77 -92
  531. package/tabs/tab-label/tab-label.component.js +12 -12
  532. package/tag/tag/tag.component.js +49 -55
  533. package/tag/tag-group/tag-group.component.js +37 -45
  534. package/teaser/teaser.component.d.ts +6 -10
  535. package/teaser/teaser.component.d.ts.map +1 -1
  536. package/teaser/teaser.component.js +45 -68
  537. package/teaser-product/common.js +1 -1
  538. package/teaser-product/teaser-product/teaser-product.component.js +1 -1
  539. package/teaser-product-common-C8oSkIxy.js +5 -0
  540. package/teaser-product.js +1 -1
  541. package/time-input/time-input.component.js +29 -33
  542. package/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +1 -1
  543. package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +22 -25
  544. package/title/title-base.d.ts +0 -8
  545. package/title/title-base.d.ts.map +1 -1
  546. package/title/title-base.js +34 -53
  547. package/title/title.component.d.ts +2 -0
  548. package/title/title.component.d.ts.map +1 -1
  549. package/title/title.component.js +9 -9
  550. package/toast/toast.component.d.ts.map +1 -1
  551. package/toast/toast.component.js +6 -9
  552. package/toggle/toggle/toggle.component.js +27 -31
  553. package/toggle/toggle-option/toggle-option.component.d.ts +1 -1
  554. package/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  555. package/toggle/toggle-option/toggle-option.component.js +44 -51
  556. package/train/train-formation/train-formation.component.js +41 -43
  557. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +0 -530
  558. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +0 -1123
  559. package/datepicker/common/datepicker-association-controllers.d.ts +0 -21
  560. package/datepicker/common/datepicker-association-controllers.d.ts.map +0 -1
  561. package/datepicker/common/datepicker-association-controllers.js +0 -58
  562. package/development/datepicker/common/datepicker-association-controllers.d.ts +0 -21
  563. package/development/datepicker/common/datepicker-association-controllers.d.ts.map +0 -1
  564. package/development/datepicker/common/datepicker-association-controllers.js +0 -82
  565. package/icon-sidebar-button-common-DG8bnrBu.js +0 -7
  566. package/teaser-product-common-CpMAlYEp.js +0 -5
@@ -130,12 +130,24 @@ let SbbDatepickerNextDayElement = (() => {
130
130
  this.i18nOffBoundaryDay = i18nNextDay;
131
131
  this.i18nSelectOffBoundaryDay = i18nSelectNextDay;
132
132
  }
133
- connectedCallback() {
134
- super.connectedCallback();
135
- this.slot || (this.slot = "suffix");
136
- }
137
133
  findAvailableDate(date) {
138
- return this.datepicker.findNextAvailableDate(date);
134
+ let availableDate = this.dateAdapter.addCalendarDays(date, 1);
135
+ if (this._isAfterMaxDate(availableDate)) {
136
+ return null;
137
+ }
138
+ const dateFilter = this.input.dateFilter;
139
+ if (dateFilter) {
140
+ while (!dateFilter(availableDate)) {
141
+ availableDate = this.dateAdapter.addCalendarDays(availableDate, 1);
142
+ if (this._isAfterMaxDate(availableDate)) {
143
+ return null;
144
+ }
145
+ }
146
+ }
147
+ return availableDate;
148
+ }
149
+ _isAfterMaxDate(date) {
150
+ return !!this.input.max && this.dateAdapter.compareDate(date, this.input.max) > 0;
139
151
  }
140
152
  }, _classThis = _a, (() => {
141
153
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
@@ -148,4 +160,4 @@ let SbbDatepickerNextDayElement = (() => {
148
160
  export {
149
161
  SbbDatepickerNextDayElement
150
162
  };
151
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1uZXh0LWRheS5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9kYXRlcGlja2VyL2RhdGVwaWNrZXItbmV4dC1kYXkvZGF0ZXBpY2tlci1uZXh0LWRheS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBpMThuTmV4dERheSwgaTE4blNlbGVjdE5leHREYXkgfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHsgU2JiRGF0ZXBpY2tlckJ1dHRvbiB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RhdGVwaWNrZXItbmV4dC1kYXkuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1kYXRlcGlja2VyYCwgaXQgY2FuIGJlIHVzZWQgdG8gbW92ZSB0aGUgZGF0ZSBhaGVhZC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSBzdHJpbmdcbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLWRhdGVwaWNrZXItbmV4dC1kYXknKVxuY2xhc3MgU2JiRGF0ZXBpY2tlck5leHREYXlFbGVtZW50PFQgPSBEYXRlPiBleHRlbmRzIFNiYkRhdGVwaWNrZXJCdXR0b248VD4ge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcm90ZWN0ZWQgaWNvbk5hbWU6IHN0cmluZyA9ICdjaGV2cm9uLXNtYWxsLXJpZ2h0LXNtYWxsJztcbiAgcHJvdGVjdGVkIGkxOG5PZmZCb3VuZGFyeURheTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IGkxOG5OZXh0RGF5O1xuICBwcm90ZWN0ZWQgaTE4blNlbGVjdE9mZkJvdW5kYXJ5RGF5ID0gaTE4blNlbGVjdE5leHREYXk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5zbG90IHx8PSAnc3VmZml4JztcbiAgfVxuXG4gIHByb3RlY3RlZCBmaW5kQXZhaWxhYmxlRGF0ZShkYXRlOiBUKTogVCB7XG4gICAgLy8gV2hlbiBjYWxsaW5nIGZpbmRBdmFpbGFibGVEYXRlLCBkYXRlcGlja2VyRWxlbWVudCBpcyBhbHdheXMgZGVmaW5lZC5cbiAgICByZXR1cm4gdGhpcy5kYXRlcGlja2VyIS5maW5kTmV4dEF2YWlsYWJsZURhdGUoZGF0ZSk7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1kYXRlcGlja2VyLW5leHQtZGF5JzogU2JiRGF0ZXBpY2tlck5leHREYXlFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWNNLCtCQUEyQixNQUFBOzswQkFEaEMsY0FBYyx5QkFBeUIsQ0FBQzs7OztvQkFDVztBQUFSLEVBQUEsbUJBQVEsWUFBc0I7QUFBQTs7QUFHOUQsV0FBUSxXQUFXO0FBQ25CLFdBQWtCLHFCQUEyQjtBQUM3QyxXQUF3QiwyQkFBRztBQUFBLElBQUE7QUFBQSxJQUVyQixvQkFBaUI7QUFDL0IsWUFBTSxrQkFBaUI7QUFDdkIsV0FBSyxTQUFMLEtBQUssT0FBUztBQUFBLElBQUE7QUFBQSxJQUdOLGtCQUFrQixNQUFPO0FBRTFCLGFBQUEsS0FBSyxXQUFZLHNCQUFzQixJQUFJO0FBQUEsSUFBQTtBQUFBOztBQWR0RCxpQkFnQkMsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQWZ3QixHQUFNLFNBQW1CLE9BRDVDLGtCQUEyQixZQUFBLHVCQUFBLEdBQVc7OzsifQ==
163
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1uZXh0LWRheS5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9kYXRlcGlja2VyL2RhdGVwaWNrZXItbmV4dC1kYXkvZGF0ZXBpY2tlci1uZXh0LWRheS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBpMThuTmV4dERheSwgaTE4blNlbGVjdE5leHREYXkgfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHsgU2JiRGF0ZXBpY2tlckJ1dHRvbiB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RhdGVwaWNrZXItbmV4dC1kYXkuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1kYXRlcGlja2VyYCwgaXQgY2FuIGJlIHVzZWQgdG8gbW92ZSB0aGUgZGF0ZSBhaGVhZC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSBzdHJpbmdcbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLWRhdGVwaWNrZXItbmV4dC1kYXknKVxuY2xhc3MgU2JiRGF0ZXBpY2tlck5leHREYXlFbGVtZW50PFQgPSBEYXRlPiBleHRlbmRzIFNiYkRhdGVwaWNrZXJCdXR0b248VD4ge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcm90ZWN0ZWQgaWNvbk5hbWU6IHN0cmluZyA9ICdjaGV2cm9uLXNtYWxsLXJpZ2h0LXNtYWxsJztcbiAgcHJvdGVjdGVkIGkxOG5PZmZCb3VuZGFyeURheTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IGkxOG5OZXh0RGF5O1xuICBwcm90ZWN0ZWQgaTE4blNlbGVjdE9mZkJvdW5kYXJ5RGF5ID0gaTE4blNlbGVjdE5leHREYXk7XG5cbiAgcHJvdGVjdGVkIGZpbmRBdmFpbGFibGVEYXRlKGRhdGU6IFQpOiBUIHwgbnVsbCB7XG4gICAgbGV0IGF2YWlsYWJsZURhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLmFkZENhbGVuZGFyRGF5cyhkYXRlLCAxKTtcbiAgICBpZiAodGhpcy5faXNBZnRlck1heERhdGUoYXZhaWxhYmxlRGF0ZSkpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGRhdGVGaWx0ZXIgPSB0aGlzLmlucHV0IS5kYXRlRmlsdGVyO1xuICAgIGlmIChkYXRlRmlsdGVyKSB7XG4gICAgICB3aGlsZSAoIWRhdGVGaWx0ZXIoYXZhaWxhYmxlRGF0ZSkpIHtcbiAgICAgICAgYXZhaWxhYmxlRGF0ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIuYWRkQ2FsZW5kYXJEYXlzKGF2YWlsYWJsZURhdGUsIDEpO1xuICAgICAgICBpZiAodGhpcy5faXNBZnRlck1heERhdGUoYXZhaWxhYmxlRGF0ZSkpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhdmFpbGFibGVEYXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNBZnRlck1heERhdGUoZGF0ZTogVCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuaW5wdXQhLm1heCAmJiB0aGlzLmRhdGVBZGFwdGVyLmNvbXBhcmVEYXRlKGRhdGUsIHRoaXMuaW5wdXQhLm1heCkgPiAwO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZGF0ZXBpY2tlci1uZXh0LWRheSc6IFNiYkRhdGVwaWNrZXJOZXh0RGF5RWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFjTSwrQkFBMkIsTUFBQTs7MEJBRGhDLGNBQWMseUJBQXlCLENBQUM7Ozs7b0JBQ1c7QUFBUixFQUFBLG1CQUFRLFlBQXNCO0FBQUE7O0FBRzlELFdBQUEsV0FBbUI7QUFDbkIsV0FBQSxxQkFBNkM7QUFDN0MsV0FBQSwyQkFBMkI7QUFBQSxJQUFBO0FBQUEsSUFFM0Isa0JBQWtCLE1BQU87QUFDakMsVUFBSSxnQkFBZ0IsS0FBSyxZQUFZLGdCQUFnQixNQUFNLENBQUM7QUFDNUQsVUFBSSxLQUFLLGdCQUFnQixhQUFhLEdBQUc7QUFDdkMsZUFBTztBQUFBLE1BQUE7QUFHVCxZQUFNLGFBQWEsS0FBSyxNQUFPO0FBQy9CLFVBQUksWUFBWTtBQUNkLGVBQU8sQ0FBQyxXQUFXLGFBQWEsR0FBRztBQUNqQywwQkFBZ0IsS0FBSyxZQUFZLGdCQUFnQixlQUFlLENBQUM7QUFDakUsY0FBSSxLQUFLLGdCQUFnQixhQUFhLEdBQUc7QUFDdkMsbUJBQU87QUFBQSxVQUFBO0FBQUEsUUFDVDtBQUFBLE1BQ0Y7QUFHRixhQUFPO0FBQUEsSUFBQTtBQUFBLElBR0QsZ0JBQWdCLE1BQU87QUFDN0IsYUFBTyxDQUFDLENBQUMsS0FBSyxNQUFPLE9BQU8sS0FBSyxZQUFZLFlBQVksTUFBTSxLQUFLLE1BQU8sR0FBRyxJQUFJO0FBQUEsSUFBQTtBQUFBOztBQTNCdEYsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUN5QixHQUFBLFNBQXlCLE9BRDVDLGtCQUFBLFlBQUEsdUJBQUEsR0FBc0M7OzsifQ==
@@ -9,8 +9,8 @@ export declare class SbbDatepickerPreviousDayElement<T = Date> extends SbbDatepi
9
9
  protected iconName: string;
10
10
  protected i18nOffBoundaryDay: Record<string, string>;
11
11
  protected i18nSelectOffBoundaryDay: (currentDate: string) => Record<string, string>;
12
- connectedCallback(): void;
13
- protected findAvailableDate(date: T): T;
12
+ protected findAvailableDate(date: T): T | null;
13
+ private _isBeforeMinDate;
14
14
  }
15
15
  declare global {
16
16
  interface HTMLElementTagNameMap {
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-previous-day.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/datepicker/datepicker-previous-day/datepicker-previous-day.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAInD;;;GAGG;AACH,qBAEM,+BAA+B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC5E,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAA8B;IACxD,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAmB;IACvE,SAAS,CAAC,wBAAwB,kDAAyB;IAE3C,iBAAiB,IAAI,IAAI;IAKzC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;CAIxC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,6BAA6B,EAAE,+BAA+B,CAAC;KAChE;CACF"}
1
+ {"version":3,"file":"datepicker-previous-day.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/datepicker/datepicker-previous-day/datepicker-previous-day.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAInD;;;GAGG;AACH,qBAEM,+BAA+B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC5E,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAA8B;IACxD,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAmB;IACvE,SAAS,CAAC,wBAAwB,kDAAyB;IAE3D,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI;IAmB9C,OAAO,CAAC,gBAAgB;CAGzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,6BAA6B,EAAE,+BAA+B,CAAC;KAChE;CACF"}
@@ -130,12 +130,24 @@ let SbbDatepickerPreviousDayElement = (() => {
130
130
  this.i18nOffBoundaryDay = i18nPreviousDay;
131
131
  this.i18nSelectOffBoundaryDay = i18nSelectPreviousDay;
132
132
  }
133
- connectedCallback() {
134
- super.connectedCallback();
135
- this.slot || (this.slot = "prefix");
136
- }
137
133
  findAvailableDate(date) {
138
- return this.datepicker.findPreviousAvailableDate(date);
134
+ let availableDate = this.dateAdapter.addCalendarDays(date, -1);
135
+ if (this._isBeforeMinDate(availableDate)) {
136
+ return null;
137
+ }
138
+ const dateFilter = this.input.dateFilter;
139
+ if (dateFilter) {
140
+ while (!dateFilter(availableDate)) {
141
+ availableDate = this.dateAdapter.addCalendarDays(availableDate, -1);
142
+ if (this._isBeforeMinDate(availableDate)) {
143
+ return null;
144
+ }
145
+ }
146
+ }
147
+ return availableDate;
148
+ }
149
+ _isBeforeMinDate(date) {
150
+ return !!this.input.min && this.dateAdapter.compareDate(date, this.input.min) < 0;
139
151
  }
140
152
  }, _classThis = _a, (() => {
141
153
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
@@ -148,4 +160,4 @@ let SbbDatepickerPreviousDayElement = (() => {
148
160
  export {
149
161
  SbbDatepickerPreviousDayElement
150
162
  };
151
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1wcmV2aW91cy1kYXkuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXByZXZpb3VzLWRheS9kYXRlcGlja2VyLXByZXZpb3VzLWRheS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBpMThuUHJldmlvdXNEYXksIGkxOG5TZWxlY3RQcmV2aW91c0RheSB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJEYXRlcGlja2VyQnV0dG9uIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZGF0ZXBpY2tlci1wcmV2aW91cy1kYXkuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1kYXRlcGlja2VyYCwgaXQgY2FuIGJlIHVzZWQgdG8gbW92ZSB0aGUgZGF0ZSBiYWNrLlxuICogQG92ZXJyaWRlVHlwZSB2YWx1ZSAtIHN0cmluZ1xuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItZGF0ZXBpY2tlci1wcmV2aW91cy1kYXknKVxuY2xhc3MgU2JiRGF0ZXBpY2tlclByZXZpb3VzRGF5RWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJEYXRlcGlja2VyQnV0dG9uPFQ+IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgcHJvdGVjdGVkIGljb25OYW1lOiBzdHJpbmcgPSAnY2hldnJvbi1zbWFsbC1sZWZ0LXNtYWxsJztcbiAgcHJvdGVjdGVkIGkxOG5PZmZCb3VuZGFyeURheTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IGkxOG5QcmV2aW91c0RheTtcbiAgcHJvdGVjdGVkIGkxOG5TZWxlY3RPZmZCb3VuZGFyeURheSA9IGkxOG5TZWxlY3RQcmV2aW91c0RheTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnNsb3QgfHw9ICdwcmVmaXgnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGZpbmRBdmFpbGFibGVEYXRlKGRhdGU6IFQpOiBUIHtcbiAgICAvLyBXaGVuIGNhbGxpbmcgZmluZEF2YWlsYWJsZURhdGUsIGRhdGVwaWNrZXJFbGVtZW50IGlzIGFsd2F5cyBkZWZpbmVkLlxuICAgIHJldHVybiB0aGlzLmRhdGVwaWNrZXIhLmZpbmRQcmV2aW91c0F2YWlsYWJsZURhdGUoZGF0ZSk7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1kYXRlcGlja2VyLXByZXZpb3VzLWRheSc6IFNiYkRhdGVwaWNrZXJQcmV2aW91c0RheUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBY00sbUNBQStCLE1BQUE7OzBCQURwQyxjQUFjLDZCQUE2QixDQUFDOzs7O29CQUNXO0FBQVIsRUFBQSxtQkFBUSxZQUFzQjtBQUFBOztBQUdsRSxXQUFRLFdBQVc7QUFDbkIsV0FBa0IscUJBQTJCO0FBQzdDLFdBQXdCLDJCQUFHO0FBQUEsSUFBQTtBQUFBLElBRXJCLG9CQUFpQjtBQUMvQixZQUFNLGtCQUFpQjtBQUN2QixXQUFLLFNBQUwsS0FBSyxPQUFTO0FBQUEsSUFBQTtBQUFBLElBR04sa0JBQWtCLE1BQU87QUFFMUIsYUFBQSxLQUFLLFdBQVksMEJBQTBCLElBQUk7QUFBQSxJQUFBO0FBQUE7O0FBZDFELGlCQWdCQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBZndCLEdBQU0sU0FBbUIsT0FENUMsa0JBQStCLFlBQUEsdUJBQUEsR0FBVzs7OyJ9
163
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1wcmV2aW91cy1kYXkuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXByZXZpb3VzLWRheS9kYXRlcGlja2VyLXByZXZpb3VzLWRheS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBpMThuUHJldmlvdXNEYXksIGkxOG5TZWxlY3RQcmV2aW91c0RheSB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJEYXRlcGlja2VyQnV0dG9uIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZGF0ZXBpY2tlci1wcmV2aW91cy1kYXkuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1kYXRlcGlja2VyYCwgaXQgY2FuIGJlIHVzZWQgdG8gbW92ZSB0aGUgZGF0ZSBiYWNrLlxuICogQG92ZXJyaWRlVHlwZSB2YWx1ZSAtIHN0cmluZ1xuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItZGF0ZXBpY2tlci1wcmV2aW91cy1kYXknKVxuY2xhc3MgU2JiRGF0ZXBpY2tlclByZXZpb3VzRGF5RWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJEYXRlcGlja2VyQnV0dG9uPFQ+IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgcHJvdGVjdGVkIGljb25OYW1lOiBzdHJpbmcgPSAnY2hldnJvbi1zbWFsbC1sZWZ0LXNtYWxsJztcbiAgcHJvdGVjdGVkIGkxOG5PZmZCb3VuZGFyeURheTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IGkxOG5QcmV2aW91c0RheTtcbiAgcHJvdGVjdGVkIGkxOG5TZWxlY3RPZmZCb3VuZGFyeURheSA9IGkxOG5TZWxlY3RQcmV2aW91c0RheTtcblxuICBwcm90ZWN0ZWQgZmluZEF2YWlsYWJsZURhdGUoZGF0ZTogVCk6IFQgfCBudWxsIHtcbiAgICBsZXQgYXZhaWxhYmxlRGF0ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIuYWRkQ2FsZW5kYXJEYXlzKGRhdGUsIC0xKTtcbiAgICBpZiAodGhpcy5faXNCZWZvcmVNaW5EYXRlKGF2YWlsYWJsZURhdGUpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBkYXRlRmlsdGVyID0gdGhpcy5pbnB1dCEuZGF0ZUZpbHRlcjtcbiAgICBpZiAoZGF0ZUZpbHRlcikge1xuICAgICAgd2hpbGUgKCFkYXRlRmlsdGVyKGF2YWlsYWJsZURhdGUpKSB7XG4gICAgICAgIGF2YWlsYWJsZURhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLmFkZENhbGVuZGFyRGF5cyhhdmFpbGFibGVEYXRlLCAtMSk7XG4gICAgICAgIGlmICh0aGlzLl9pc0JlZm9yZU1pbkRhdGUoYXZhaWxhYmxlRGF0ZSkpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhdmFpbGFibGVEYXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNCZWZvcmVNaW5EYXRlKGRhdGU6IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmlucHV0IS5taW4gJiYgdGhpcy5kYXRlQWRhcHRlci5jb21wYXJlRGF0ZShkYXRlLCB0aGlzLmlucHV0IS5taW4pIDwgMDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWRhdGVwaWNrZXItcHJldmlvdXMtZGF5JzogU2JiRGF0ZXBpY2tlclByZXZpb3VzRGF5RWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFjTSxtQ0FBK0IsTUFBQTs7MEJBRHBDLGNBQWMsNkJBQTZCLENBQUM7Ozs7b0JBQ1c7QUFBUixFQUFBLG1CQUFRLFlBQXNCO0FBQUE7O0FBR2xFLFdBQUEsV0FBbUI7QUFDbkIsV0FBQSxxQkFBNkM7QUFDN0MsV0FBQSwyQkFBMkI7QUFBQSxJQUFBO0FBQUEsSUFFM0Isa0JBQWtCLE1BQU87QUFDakMsVUFBSSxnQkFBZ0IsS0FBSyxZQUFZLGdCQUFnQixNQUFNLEVBQUU7QUFDN0QsVUFBSSxLQUFLLGlCQUFpQixhQUFhLEdBQUc7QUFDeEMsZUFBTztBQUFBLE1BQUE7QUFHVCxZQUFNLGFBQWEsS0FBSyxNQUFPO0FBQy9CLFVBQUksWUFBWTtBQUNkLGVBQU8sQ0FBQyxXQUFXLGFBQWEsR0FBRztBQUNqQywwQkFBZ0IsS0FBSyxZQUFZLGdCQUFnQixlQUFlLEVBQUU7QUFDbEUsY0FBSSxLQUFLLGlCQUFpQixhQUFhLEdBQUc7QUFDeEMsbUJBQU87QUFBQSxVQUFBO0FBQUEsUUFDVDtBQUFBLE1BQ0Y7QUFHRixhQUFPO0FBQUEsSUFBQTtBQUFBLElBR0QsaUJBQWlCLE1BQU87QUFDOUIsYUFBTyxDQUFDLENBQUMsS0FBSyxNQUFPLE9BQU8sS0FBSyxZQUFZLFlBQVksTUFBTSxLQUFLLE1BQU8sR0FBRyxJQUFJO0FBQUEsSUFBQTtBQUFBOztBQTNCdEYsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUN5QixHQUFBLFNBQXlCLE9BRDVDLGtCQUFBLFlBQUEsdUJBQUEsR0FBMEM7OzsifQ==
@@ -1,41 +1,21 @@
1
- import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
2
- import { CalendarView } from '../../calendar.js';
3
- import { SbbDatepickerControl } from '../common.js';
1
+ import { CSSResultGroup, PropertyDeclaration } from 'lit';
2
+ import { SbbDatepickerButtonBase } from '../common.js';
4
3
  import { SbbDatepickerElement } from '../datepicker.js';
5
- declare const SbbDatepickerToggleElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbNegativeMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
6
4
  /**
7
5
  * Combined with a `sbb-datepicker`, it can be used to select a date from a `sbb-calendar`.
8
6
  */
9
- export declare class SbbDatepickerToggleElement<T = Date> extends SbbDatepickerToggleElement_base implements SbbDatepickerControl<T> {
7
+ export declare class SbbDatepickerToggleElement<T = Date> extends SbbDatepickerButtonBase<T> {
10
8
  static styles: CSSResultGroup;
9
+ protected iconName: string;
11
10
  /** Datepicker reference. */
12
- set datepicker(value: SbbDatepickerElement<T> | null);
13
- get datepicker(): SbbDatepickerElement<T> | null;
14
- private _datepicker?;
15
- /** The initial view of calendar which should be displayed on opening. */
16
- accessor view: CalendarView;
17
- private accessor _disabled;
18
- private accessor _min;
19
- private accessor _max;
20
- private accessor _renderCalendar;
21
- private _calendarElement;
22
- private _language;
11
+ accessor datepicker: SbbDatepickerElement<T> | null;
23
12
  constructor();
24
- /**
25
- * Opens the calendar.
26
- */
27
- open(): void;
28
13
  connectedCallback(): void;
29
- protected willUpdate(changedProperties: PropertyValues<this>): void;
30
- private _configureCalendar;
31
- private _assignCalendar;
32
- private _nowOrNull;
33
- protected render(): TemplateResult;
14
+ requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
34
15
  }
35
16
  declare global {
36
17
  interface HTMLElementTagNameMap {
37
18
  'sbb-datepicker-toggle': SbbDatepickerToggleElement;
38
19
  }
39
20
  }
40
- export {};
41
21
  //# sourceMappingURL=datepicker-toggle.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-toggle.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/datepicker/datepicker-toggle/datepicker-toggle.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAW,MAAM,KAAK,CAAC;AAI1D,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,mBAAmB,CAAC;AAM1E,OAAO,EAA6C,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,mBAAmB,CAAC;AAC3B,OAAO,0BAA0B,CAAC;AAClC,OAAO,6BAA6B,CAAC;;AAMrC;;GAEG;AACH,qBAEM,0BAA0B,CAAC,CAAC,GAAG,IAAI,CACvC,SAAQ,+BACR,YAAW,oBAAoB,CAAC,CAAC,CAAC;IAElC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,4BAA4B;IAC5B,IACW,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAK1D;IACD,IAAW,UAAU,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAEtD;IACD,OAAO,CAAC,WAAW,CAAC,CAAiC;IAErD,yEAAyE;IACzE,SAA4B,IAAI,EAAE,YAAY,CAAS;IAE9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgD;IAErE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgD;IAErE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAElD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,SAAS,CAAmC;;IAepD;;OAEG;IACI,IAAI,IAAI,IAAI;IAIH,iBAAiB,IAAI,IAAI;cAStB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAmB5E,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,UAAU;cAIC,MAAM,IAAI,cAAc;CAoD5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
1
+ {"version":3,"file":"datepicker-toggle.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/datepicker/datepicker-toggle/datepicker-toggle.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,KAAK,CAAC;AAK/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D;;GAEG;AACH,qBAEM,0BAA0B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,uBAAuB,CAAC,CAAC,CAAC;IAC3E,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,UAAmB,QAAQ,SAAoB;IAE/C,4BAA4B;IAC5B,SAEgB,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAQ;;IAelD,iBAAiB,IAAI,IAAI;IASzB,aAAa,CAC3B,IAAI,CAAC,EAAE,WAAW,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;CAQR;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
@@ -6,17 +6,11 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
6
6
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
7
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
8
  import { __esDecorate, __runInitializers } from "tslib";
9
- import { css, LitElement, isServer, nothing, html } from "lit";
10
- import { customElement, property, state } from "lit/decorators.js";
11
- import { ref } from "lit/directives/ref.js";
12
- import { sbbInputModalityDetector } from "../../core/a11y.js";
13
- import { SbbLanguageController } from "../../core/controllers.js";
9
+ import { customElement, property } from "lit/decorators.js";
10
+ import { idReference } from "../../core/decorators.js";
14
11
  import { i18nShowCalendar } from "../../core/i18n.js";
15
- import { SbbNegativeMixin, SbbHydrationMixin } from "../../core/mixins.js";
16
- import { SbbDatepickerAssociationControlController } from "../common.js";
17
- import "../../calendar.js";
18
- import "../../popover/popover.js";
19
- import "../../button/mini-button.js";
12
+ import { SbbDatepickerButtonBase } from "../common.js";
13
+ import { css } from "lit";
20
14
  const style = css`*,
21
15
  ::before,
22
16
  ::after {
@@ -24,249 +18,168 @@ const style = css`*,
24
18
  }
25
19
 
26
20
  :host {
27
- --sbb-datepicker-control-radius: var(--sbb-border-radius-4x);
28
- --sbb-datepicker-control-color: var(--sbb-color-black);
29
- display: inline-flex;
21
+ display: inline-block;
22
+ -webkit-tap-highlight-color: transparent;
23
+ height: fit-content;
24
+ outline: none !important;
25
+ --sbb-button-color-text: var(--sbb-color-charcoal);
26
+ --sbb-button-color-default-background: var(--sbb-color-black-alpha-0);
27
+ --sbb-button-color-hover-background: var(--sbb-color-milk);
28
+ --sbb-button-color-active-background: var(--sbb-color-cloud);
29
+ --sbb-button-color-disabled-background: var(--sbb-color-milk);
30
+ --sbb-button-color-disabled-border: var(--sbb-color-smoke);
31
+ --sbb-button-color-disabled-text: var(--sbb-color-granite);
32
+ --sbb-button-border-disabled-width: var(--sbb-border-width-1x);
33
+ --sbb-button-border-disabled-style: dashed;
34
+ --sbb-button-border-radius: var(--sbb-border-radius-infinity);
35
+ --sbb-button-transition-duration: var(
36
+ --sbb-disable-animation-duration,
37
+ var(--sbb-animation-duration-2x)
38
+ );
39
+ --sbb-button-transition-easing-function: var(--sbb-animation-easing);
30
40
  }
31
-
32
- .sbb-datepicker-toggle__trigger {
33
- color: var(--sbb-datepicker-control-color);
34
- height: unset;
41
+ @media (forced-colors: active) {
42
+ :host {
43
+ --sbb-button-color-text: ButtonText !important;
44
+ --sbb-button-color-hover-background: Highlight !important;
45
+ --sbb-button-color-active-background: Highlight !important;
46
+ --sbb-button-color-disabled-background: Canvas !important;
47
+ --sbb-button-color-disabled-border: GrayText !important;
48
+ --sbb-button-color-disabled-text: GrayText !important;
49
+ }
50
+ }
51
+ :host .sbb-datepicker-toggle {
52
+ position: relative;
53
+ transition-duration: var(--sbb-button-transition-duration);
54
+ transition-timing-function: var(--sbb-button-transition-easing-function);
55
+ transition-property: color;
56
+ border-radius: var(--sbb-button-border-radius);
57
+ color: var(--sbb-button-color-text);
58
+ cursor: pointer;
59
+ user-select: none;
60
+ display: flex;
61
+ }
62
+ :host .sbb-datepicker-toggle::before {
63
+ position: absolute;
64
+ content: "";
65
+ inset: 0;
66
+ border-radius: var(--sbb-button-border-radius);
67
+ background-color: var(--sbb-button-color-default-background);
68
+ transition-duration: var(--sbb-button-transition-duration);
69
+ transition-timing-function: var(--sbb-button-transition-easing-function);
70
+ transition-property: inset, background-color;
35
71
  }
36
72
 
37
73
  sbb-icon {
38
- color: var(--sbb-color-graphite);
74
+ transition: transform var(--sbb-button-transition-duration) var(--sbb-button-transition-easing-function);
75
+ transform: translateY(var(--sbb-button-translate-y-content-hover, 0rem));
76
+ display: flex;
39
77
  }
40
78
 
41
- sbb-popover {
42
- margin: 0;
43
- padding: 0;
44
- border: none;
45
- width: auto;
46
- height: auto;
47
- background-color: transparent;
79
+ :host([negative]) {
80
+ --sbb-button-color-text: var(--sbb-color-milk);
81
+ --sbb-button-color-default-background: var(--sbb-color-black-alpha-0);
82
+ --sbb-button-color-hover-background: var(--sbb-color-charcoal);
83
+ --sbb-button-color-active-background: var(--sbb-color-iron);
84
+ --sbb-button-color-disabled-background: var(--sbb-color-charcoal);
85
+ --sbb-button-color-disabled-border: var(--sbb-color-smoke);
86
+ --sbb-button-color-disabled-text: var(--sbb-color-smoke);
87
+ }
88
+
89
+ :host(:is([disabled], :disabled, [disabled-interactive], [data-disabled], [data-group-disabled])) .sbb-datepicker-toggle {
90
+ color: var(--sbb-button-color-disabled-text);
91
+ cursor: default;
92
+ pointer-events: none;
93
+ }
94
+ :host(:is([disabled], :disabled, [disabled-interactive], [data-disabled], [data-group-disabled])) .sbb-datepicker-toggle::before {
95
+ background-color: var(--sbb-button-color-disabled-background);
96
+ border: var(--sbb-button-border-disabled-width) var(--sbb-button-border-disabled-style) var(--sbb-button-color-disabled-border);
97
+ }
98
+
99
+ :host(:is([data-focus-visible], :focus-visible)) .sbb-datepicker-toggle::before {
100
+ outline-offset: var(--sbb-focus-outline-offset);
101
+ outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);
102
+ }
103
+
104
+ :host([data-focus-visible]) {
105
+ --sbb-focus-outline-style: initial;
106
+ }
107
+
108
+ @media (any-hover: hover) {
109
+ :host(:not([disabled], :disabled, [disabled-interactive], [data-disabled], [data-group-disabled], :active, [data-active]):hover) {
110
+ --sbb-button-translate-y-content-hover: -0.0625rem;
111
+ }
112
+ }
113
+ @media (any-hover: hover) {
114
+ :host(:not([disabled], :disabled, [disabled-interactive], [data-disabled], [data-group-disabled], :active, [data-active]):hover) .sbb-datepicker-toggle::before {
115
+ background-color: var(--sbb-button-color-hover-background);
116
+ }
117
+ }
118
+
119
+ :host(:not([disabled], :disabled, [disabled-interactive], [data-disabled], [data-group-disabled]):is(:active, [data-active])) .sbb-datepicker-toggle::before {
120
+ background-color: var(--sbb-button-color-active-background);
121
+ }
122
+
123
+ .sbb-datepicker-toggle {
124
+ margin: auto;
125
+ -webkit-tap-highlight-color: transparent;
48
126
  }`;
49
- const isDateInput = (element) => (element == null ? void 0 : element.localName) === "sbb-date-input";
50
127
  let SbbDatepickerToggleElement = (() => {
51
- var _view_accessor_storage, __disabled_accessor_storage, __min_accessor_storage, __max_accessor_storage, __renderCalendar_accessor_storage, _a;
128
+ var _datepicker_accessor_storage, _a;
52
129
  let _classDecorators = [customElement("sbb-datepicker-toggle")];
53
130
  let _classDescriptor;
54
131
  let _classExtraInitializers = [];
55
132
  let _classThis;
56
- let _classSuper = SbbNegativeMixin(SbbHydrationMixin(LitElement));
57
- let _instanceExtraInitializers = [];
58
- let _set_datepicker_decorators;
59
- let _view_decorators;
60
- let _view_initializers = [];
61
- let _view_extraInitializers = [];
62
- let __disabled_decorators;
63
- let __disabled_initializers = [];
64
- let __disabled_extraInitializers = [];
65
- let __min_decorators;
66
- let __min_initializers = [];
67
- let __min_extraInitializers = [];
68
- let __max_decorators;
69
- let __max_initializers = [];
70
- let __max_extraInitializers = [];
71
- let __renderCalendar_decorators;
72
- let __renderCalendar_initializers = [];
73
- let __renderCalendar_extraInitializers = [];
133
+ let _classSuper = SbbDatepickerButtonBase;
134
+ let _datepicker_decorators;
135
+ let _datepicker_initializers = [];
136
+ let _datepicker_extraInitializers = [];
74
137
  _a = class extends _classSuper {
75
138
  constructor() {
76
- var _a2;
77
139
  super();
78
- __privateAdd(this, _view_accessor_storage);
79
- __privateAdd(this, __disabled_accessor_storage);
80
- __privateAdd(this, __min_accessor_storage);
81
- __privateAdd(this, __max_accessor_storage);
82
- __privateAdd(this, __renderCalendar_accessor_storage);
83
- this._datepicker = __runInitializers(this, _instanceExtraInitializers);
84
- __privateSet(this, _view_accessor_storage, __runInitializers(this, _view_initializers, "day"));
85
- __privateSet(this, __disabled_accessor_storage, (__runInitializers(this, _view_extraInitializers), __runInitializers(this, __disabled_initializers, false)));
86
- __privateSet(this, __min_accessor_storage, (__runInitializers(this, __disabled_extraInitializers), __runInitializers(this, __min_initializers, null)));
87
- __privateSet(this, __max_accessor_storage, (__runInitializers(this, __min_extraInitializers), __runInitializers(this, __max_initializers, null)));
88
- __privateSet(this, __renderCalendar_accessor_storage, (__runInitializers(this, __max_extraInitializers), __runInitializers(this, __renderCalendar_initializers, false)));
89
- this._calendarElement = __runInitializers(this, __renderCalendar_extraInitializers);
90
- this._language = new SbbLanguageController(this);
91
- this.addController(new SbbDatepickerAssociationControlController(this));
92
- (_a2 = this.addEventListener) == null ? void 0 : _a2.call(this, "click", (event) => {
93
- if (event.composedPath()[0] === this) {
94
- this.open();
140
+ __privateAdd(this, _datepicker_accessor_storage);
141
+ this.iconName = "calendar-small";
142
+ __privateSet(this, _datepicker_accessor_storage, __runInitializers(this, _datepicker_initializers, null));
143
+ __runInitializers(this, _datepicker_extraInitializers);
144
+ this.addEventListener?.("click", () => {
145
+ if (!this.datepicker) {
146
+ console.warn("sbb-datepicker-toggle: No datepicker connected.");
147
+ console.log(this);
148
+ }
149
+ if (!this.datepicker?.isOpen) {
150
+ this.datepicker?.open();
95
151
  }
96
152
  });
97
- if (!isServer) {
98
- this.hydrationComplete.then(() => this._renderCalendar = true);
99
- }
100
153
  }
101
154
  /** Datepicker reference. */
102
- set datepicker(value) {
103
- var _a2, _b, _c;
104
- this._datepicker = typeof value === "string" ? ((_c = (_b = (_a2 = this.getRootNode) == null ? void 0 : _a2.call(this)) == null ? void 0 : _b.querySelector) == null ? void 0 : _c.call(_b, `#${value}`)) ?? null : value;
105
- }
106
155
  get datepicker() {
107
- return this._datepicker ?? null;
156
+ return __privateGet(this, _datepicker_accessor_storage);
108
157
  }
109
- /** The initial view of calendar which should be displayed on opening. */
110
- get view() {
111
- return __privateGet(this, _view_accessor_storage);
112
- }
113
- set view(value) {
114
- __privateSet(this, _view_accessor_storage, value);
115
- }
116
- get _disabled() {
117
- return __privateGet(this, __disabled_accessor_storage);
118
- }
119
- set _disabled(value) {
120
- __privateSet(this, __disabled_accessor_storage, value);
121
- }
122
- get _min() {
123
- return __privateGet(this, __min_accessor_storage);
124
- }
125
- set _min(value) {
126
- __privateSet(this, __min_accessor_storage, value);
127
- }
128
- get _max() {
129
- return __privateGet(this, __max_accessor_storage);
130
- }
131
- set _max(value) {
132
- __privateSet(this, __max_accessor_storage, value);
133
- }
134
- get _renderCalendar() {
135
- return __privateGet(this, __renderCalendar_accessor_storage);
136
- }
137
- set _renderCalendar(value) {
138
- __privateSet(this, __renderCalendar_accessor_storage, value);
139
- }
140
- /**
141
- * Opens the calendar.
142
- */
143
- open() {
144
- this.shadowRoot.querySelector("sbb-mini-button").click();
158
+ set datepicker(value) {
159
+ __privateSet(this, _datepicker_accessor_storage, value);
145
160
  }
146
161
  connectedCallback() {
147
- var _a2, _b;
148
162
  super.connectedCallback();
149
- this.slot || (this.slot = "prefix");
150
- const formField = ((_a2 = this.closest) == null ? void 0 : _a2.call(this, "sbb-form-field")) ?? ((_b = this.closest) == null ? void 0 : _b.call(this, "[data-form-field]"));
151
- if (formField) {
152
- this.negative = formField.hasAttribute("negative");
163
+ this.internals.ariaLabel = i18nShowCalendar[this.language.current];
164
+ const formField = this.closest?.("sbb-form-field");
165
+ if (formField && !this.hasAttribute("datepicker")) {
166
+ this.datepicker ??= formField.querySelector("sbb-datepicker");
153
167
  }
154
168
  }
155
- willUpdate(changedProperties) {
156
- var _a2, _b, _c, _d;
157
- super.willUpdate(changedProperties);
158
- if (this.datepicker) {
159
- this._disabled = (((_a2 = this.datepicker.inputElement) == null ? void 0 : _a2.disabled) || ((_b = this.datepicker.inputElement) == null ? void 0 : _b.readOnly)) ?? true;
160
- this._min = (_c = this.datepicker.inputElement) == null ? void 0 : _c.min;
161
- this._max = (_d = this.datepicker.inputElement) == null ? void 0 : _d.max;
162
- this._configureCalendar();
163
- if (this._calendarElement) {
164
- this._calendarElement.selected = this.datepicker.valueAsDate ?? null;
165
- }
166
- } else {
167
- this._disabled = true;
168
- this._min = null;
169
- this._max = null;
170
- }
171
- }
172
- _configureCalendar() {
173
- if (!this._calendarElement || !this.datepicker) {
174
- return;
175
- }
176
- this._calendarElement.wide = this.datepicker.wide;
177
- this._calendarElement.now = this._nowOrNull();
178
- this._calendarElement.dateFilter = this.datepicker.dateFilter;
179
- }
180
- _assignCalendar(calendar) {
181
- var _a2;
182
- if (this._calendarElement && this._calendarElement === calendar) {
183
- return;
169
+ requestUpdate(name, oldValue, options) {
170
+ super.requestUpdate(name, oldValue, options);
171
+ if (name === "datepicker" && this.datepicker && this.datepicker.trigger !== this) {
172
+ this.datepicker.trigger = this;
173
+ } else if (!name && this.hasUpdated) {
174
+ this.internals.ariaLabel = i18nShowCalendar[this.language.current];
184
175
  }
185
- this._calendarElement = calendar;
186
- if (!("valueAsDate" in (this.datepicker ?? {})) || !((_a2 = this._calendarElement) == null ? void 0 : _a2.resetPosition)) {
187
- return;
188
- }
189
- this._calendarElement.selected = this.datepicker.valueAsDate ?? null;
190
- this._configureCalendar();
191
- this._calendarElement.resetPosition();
192
- }
193
- _nowOrNull() {
194
- var _a2;
195
- return ((_a2 = this.datepicker) == null ? void 0 : _a2.hasCustomNow()) ? this.datepicker.now : null;
196
- }
197
- render() {
198
- var _a2, _b;
199
- return html`
200
- <sbb-mini-button
201
- class="sbb-datepicker-toggle__trigger"
202
- icon-name="calendar-small"
203
- aria-label=${i18nShowCalendar[this._language.current]}
204
- ?disabled=${!isServer && (!this.datepicker || this._disabled)}
205
- ?negative=${this.negative}
206
- id="trigger"
207
- ></sbb-mini-button>
208
- <sbb-popover
209
- @willOpen=${() => this._calendarElement.resetPosition()}
210
- @didOpen=${() => {
211
- if (sbbInputModalityDetector.mostRecentModality === "keyboard") {
212
- this._calendarElement.focus();
213
- }
214
- }}
215
- trigger="trigger"
216
- hide-close-button
217
- >
218
- ${this._renderCalendar ? html`<sbb-calendar
219
- .view=${this.view}
220
- .min=${this._min}
221
- .max=${this._max}
222
- .now=${this._nowOrNull()}
223
- ?wide=${(_a2 = this.datepicker) == null ? void 0 : _a2.wide}
224
- .dateFilter=${((_b = this.datepicker) == null ? void 0 : _b.dateFilter) ?? null}
225
- @dateSelected=${(d) => {
226
- this._calendarElement.selected = d.detail;
227
- if (this.datepicker) {
228
- const input = this.datepicker.inputElement;
229
- if (isDateInput(input)) {
230
- input.valueAsDate = d.detail;
231
- input.dispatchEvent(new InputEvent("input", { bubbles: true, composed: true }));
232
- input.dispatchEvent(new Event("change", { bubbles: true, composed: true }));
233
- input.dispatchEvent(new Event("blur", { composed: true }));
234
- } else {
235
- this.datepicker.valueAsDate = d.detail;
236
- }
237
- }
238
- }}
239
- ${ref((calendar) => this._assignCalendar(calendar))}
240
- ></sbb-calendar>` : nothing}
241
- </sbb-popover>
242
- `;
243
176
  }
244
- }, _view_accessor_storage = new WeakMap(), __disabled_accessor_storage = new WeakMap(), __min_accessor_storage = new WeakMap(), __max_accessor_storage = new WeakMap(), __renderCalendar_accessor_storage = new WeakMap(), _classThis = _a, (() => {
177
+ }, _datepicker_accessor_storage = new WeakMap(), _classThis = _a, (() => {
245
178
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
246
- _set_datepicker_decorators = [property({ attribute: "datepicker" })];
247
- _view_decorators = [property()];
248
- __disabled_decorators = [state()];
249
- __min_decorators = [state()];
250
- __max_decorators = [state()];
251
- __renderCalendar_decorators = [state()];
252
- __esDecorate(_a, null, _set_datepicker_decorators, { kind: "setter", name: "datepicker", static: false, private: false, access: { has: (obj) => "datepicker" in obj, set: (obj, value) => {
179
+ _datepicker_decorators = [idReference(), property()];
180
+ __esDecorate(_a, null, _datepicker_decorators, { kind: "accessor", name: "datepicker", static: false, private: false, access: { has: (obj) => "datepicker" in obj, get: (obj) => obj.datepicker, set: (obj, value) => {
253
181
  obj.datepicker = value;
254
- } }, metadata: _metadata }, null, _instanceExtraInitializers);
255
- __esDecorate(_a, null, _view_decorators, { kind: "accessor", name: "view", static: false, private: false, access: { has: (obj) => "view" in obj, get: (obj) => obj.view, set: (obj, value) => {
256
- obj.view = value;
257
- } }, metadata: _metadata }, _view_initializers, _view_extraInitializers);
258
- __esDecorate(_a, null, __disabled_decorators, { kind: "accessor", name: "_disabled", static: false, private: false, access: { has: (obj) => "_disabled" in obj, get: (obj) => obj._disabled, set: (obj, value) => {
259
- obj._disabled = value;
260
- } }, metadata: _metadata }, __disabled_initializers, __disabled_extraInitializers);
261
- __esDecorate(_a, null, __min_decorators, { kind: "accessor", name: "_min", static: false, private: false, access: { has: (obj) => "_min" in obj, get: (obj) => obj._min, set: (obj, value) => {
262
- obj._min = value;
263
- } }, metadata: _metadata }, __min_initializers, __min_extraInitializers);
264
- __esDecorate(_a, null, __max_decorators, { kind: "accessor", name: "_max", static: false, private: false, access: { has: (obj) => "_max" in obj, get: (obj) => obj._max, set: (obj, value) => {
265
- obj._max = value;
266
- } }, metadata: _metadata }, __max_initializers, __max_extraInitializers);
267
- __esDecorate(_a, null, __renderCalendar_decorators, { kind: "accessor", name: "_renderCalendar", static: false, private: false, access: { has: (obj) => "_renderCalendar" in obj, get: (obj) => obj._renderCalendar, set: (obj, value) => {
268
- obj._renderCalendar = value;
269
- } }, metadata: _metadata }, __renderCalendar_initializers, __renderCalendar_extraInitializers);
182
+ } }, metadata: _metadata }, _datepicker_initializers, _datepicker_extraInitializers);
270
183
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
271
184
  _classThis = _classDescriptor.value;
272
185
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -276,4 +189,4 @@ let SbbDatepickerToggleElement = (() => {
276
189
  export {
277
190
  SbbDatepickerToggleElement
278
191
  };
279
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXRvZ2dsZS9kYXRlcGlja2VyLXRvZ2dsZS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIGlzU2VydmVyLCBMaXRFbGVtZW50LCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5cbmltcG9ydCB0eXBlIHsgQ2FsZW5kYXJWaWV3LCBTYmJDYWxlbmRhckVsZW1lbnQgfSBmcm9tICcuLi8uLi9jYWxlbmRhci5qcyc7XG5pbXBvcnQgeyBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBpMThuU2hvd0NhbGVuZGFyIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB7IFNiYkh5ZHJhdGlvbk1peGluLCBTYmJOZWdhdGl2ZU1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlSW5wdXRFbGVtZW50IH0gZnJvbSAnLi4vLi4vZGF0ZS1pbnB1dC5qcyc7XG5pbXBvcnQgeyBTYmJEYXRlcGlja2VyQXNzb2NpYXRpb25Db250cm9sQ29udHJvbGxlciwgdHlwZSBTYmJEYXRlcGlja2VyQ29udHJvbCB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkRhdGVwaWNrZXJFbGVtZW50IH0gZnJvbSAnLi4vZGF0ZXBpY2tlci5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RhdGVwaWNrZXItdG9nZ2xlLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vLi4vY2FsZW5kYXIuanMnO1xuaW1wb3J0ICcuLi8uLi9wb3BvdmVyL3BvcG92ZXIuanMnO1xuaW1wb3J0ICcuLi8uLi9idXR0b24vbWluaS1idXR0b24uanMnO1xuXG5jb25zdCBpc0RhdGVJbnB1dCA9IDxUPihcbiAgZWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IFNiYkRhdGVJbnB1dEVsZW1lbnQ8VD4gfCBudWxsLFxuKTogZWxlbWVudCBpcyBTYmJEYXRlSW5wdXRFbGVtZW50PFQ+ID0+IGVsZW1lbnQ/LmxvY2FsTmFtZSA9PT0gJ3NiYi1kYXRlLWlucHV0JztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1kYXRlcGlja2VyYCwgaXQgY2FuIGJlIHVzZWQgdG8gc2VsZWN0IGEgZGF0ZSBmcm9tIGEgYHNiYi1jYWxlbmRhcmAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1kYXRlcGlja2VyLXRvZ2dsZScpXG5jbGFzcyBTYmJEYXRlcGlja2VyVG9nZ2xlRWxlbWVudDxUID0gRGF0ZT5cbiAgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKVxuICBpbXBsZW1lbnRzIFNiYkRhdGVwaWNrZXJDb250cm9sPFQ+XG57XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBEYXRlcGlja2VyIHJlZmVyZW5jZS4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGF0ZXBpY2tlcicgfSlcbiAgcHVibGljIHNldCBkYXRlcGlja2VyKHZhbHVlOiBTYmJEYXRlcGlja2VyRWxlbWVudDxUPiB8IG51bGwpIHtcbiAgICB0aGlzLl9kYXRlcGlja2VyID1cbiAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZydcbiAgICAgICAgPyAoKHRoaXMuZ2V0Um9vdE5vZGU/LigpIGFzIFBhcmVudE5vZGUpPy5xdWVyeVNlbGVjdG9yPy4oYCMke3ZhbHVlfWApID8/IG51bGwpXG4gICAgICAgIDogdmFsdWU7XG4gIH1cbiAgcHVibGljIGdldCBkYXRlcGlja2VyKCk6IFNiYkRhdGVwaWNrZXJFbGVtZW50PFQ+IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGVwaWNrZXIgPz8gbnVsbDtcbiAgfVxuICBwcml2YXRlIF9kYXRlcGlja2VyPzogU2JiRGF0ZXBpY2tlckVsZW1lbnQ8VD4gfCBudWxsO1xuXG4gIC8qKiBUaGUgaW5pdGlhbCB2aWV3IG9mIGNhbGVuZGFyIHdoaWNoIHNob3VsZCBiZSBkaXNwbGF5ZWQgb24gb3BlbmluZy4gKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIGFjY2Vzc29yIHZpZXc6IENhbGVuZGFyVmlldyA9ICdkYXknO1xuXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfbWluOiBUIHwgc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCA9IG51bGw7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfbWF4OiBUIHwgc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCA9IG51bGw7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfcmVuZGVyQ2FsZW5kYXIgPSBmYWxzZTtcblxuICBwcml2YXRlIF9jYWxlbmRhckVsZW1lbnQhOiBTYmJDYWxlbmRhckVsZW1lbnQ8VD47XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIobmV3IFNiYkRhdGVwaWNrZXJBc3NvY2lhdGlvbkNvbnRyb2xDb250cm9sbGVyKHRoaXMpKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoZXZlbnQpID0+IHtcbiAgICAgIGlmIChldmVudC5jb21wb3NlZFBhdGgoKVswXSA9PT0gdGhpcykge1xuICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoIWlzU2VydmVyKSB7XG4gICAgICB0aGlzLmh5ZHJhdGlvbkNvbXBsZXRlLnRoZW4oKCkgPT4gKHRoaXMuX3JlbmRlckNhbGVuZGFyID0gdHJ1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgY2FsZW5kYXIuXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJ3NiYi1taW5pLWJ1dHRvbicpIS5jbGljaygpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5zbG90IHx8PSAncHJlZml4JztcbiAgICBjb25zdCBmb3JtRmllbGQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKSA/PyB0aGlzLmNsb3Nlc3Q/LignW2RhdGEtZm9ybS1maWVsZF0nKTtcbiAgICBpZiAoZm9ybUZpZWxkKSB7XG4gICAgICB0aGlzLm5lZ2F0aXZlID0gZm9ybUZpZWxkLmhhc0F0dHJpYnV0ZSgnbmVnYXRpdmUnKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBpZiAodGhpcy5kYXRlcGlja2VyKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9XG4gICAgICAgICh0aGlzLmRhdGVwaWNrZXIuaW5wdXRFbGVtZW50Py5kaXNhYmxlZCB8fCB0aGlzLmRhdGVwaWNrZXIuaW5wdXRFbGVtZW50Py5yZWFkT25seSkgPz8gdHJ1ZTtcbiAgICAgIHRoaXMuX21pbiA9IHRoaXMuZGF0ZXBpY2tlci5pbnB1dEVsZW1lbnQ/Lm1pbjtcbiAgICAgIHRoaXMuX21heCA9IHRoaXMuZGF0ZXBpY2tlci5pbnB1dEVsZW1lbnQ/Lm1heDtcblxuICAgICAgdGhpcy5fY29uZmlndXJlQ2FsZW5kYXIoKTtcbiAgICAgIGlmICh0aGlzLl9jYWxlbmRhckVsZW1lbnQpIHtcbiAgICAgICAgdGhpcy5fY2FsZW5kYXJFbGVtZW50LnNlbGVjdGVkID0gdGhpcy5kYXRlcGlja2VyLnZhbHVlQXNEYXRlID8/IG51bGw7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2Rpc2FibGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuX21pbiA9IG51bGw7XG4gICAgICB0aGlzLl9tYXggPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZUNhbGVuZGFyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fY2FsZW5kYXJFbGVtZW50IHx8ICF0aGlzLmRhdGVwaWNrZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fY2FsZW5kYXJFbGVtZW50LndpZGUgPSB0aGlzLmRhdGVwaWNrZXIud2lkZTtcbiAgICB0aGlzLl9jYWxlbmRhckVsZW1lbnQubm93ID0gdGhpcy5fbm93T3JOdWxsKCkhO1xuICAgIHRoaXMuX2NhbGVuZGFyRWxlbWVudC5kYXRlRmlsdGVyID0gdGhpcy5kYXRlcGlja2VyLmRhdGVGaWx0ZXI7XG4gIH1cblxuICBwcml2YXRlIF9hc3NpZ25DYWxlbmRhcihjYWxlbmRhcjogU2JiQ2FsZW5kYXJFbGVtZW50PFQ+KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2NhbGVuZGFyRWxlbWVudCAmJiB0aGlzLl9jYWxlbmRhckVsZW1lbnQgPT09IGNhbGVuZGFyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2NhbGVuZGFyRWxlbWVudCA9IGNhbGVuZGFyO1xuICAgIGlmICghKCd2YWx1ZUFzRGF0ZScgaW4gKHRoaXMuZGF0ZXBpY2tlciA/PyB7fSkpIHx8ICF0aGlzLl9jYWxlbmRhckVsZW1lbnQ/LnJlc2V0UG9zaXRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fY2FsZW5kYXJFbGVtZW50LnNlbGVjdGVkID0gdGhpcy5kYXRlcGlja2VyIS52YWx1ZUFzRGF0ZSA/PyBudWxsO1xuICAgIHRoaXMuX2NvbmZpZ3VyZUNhbGVuZGFyKCk7XG4gICAgdGhpcy5fY2FsZW5kYXJFbGVtZW50LnJlc2V0UG9zaXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgX25vd09yTnVsbCgpOiBUIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZXBpY2tlcj8uaGFzQ3VzdG9tTm93KCkgPyB0aGlzLmRhdGVwaWNrZXIubm93IDogbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNiYi1taW5pLWJ1dHRvblxuICAgICAgICBjbGFzcz1cInNiYi1kYXRlcGlja2VyLXRvZ2dsZV9fdHJpZ2dlclwiXG4gICAgICAgIGljb24tbmFtZT1cImNhbGVuZGFyLXNtYWxsXCJcbiAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5TaG93Q2FsZW5kYXJbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgID9kaXNhYmxlZD0keyFpc1NlcnZlciAmJiAoIXRoaXMuZGF0ZXBpY2tlciB8fCB0aGlzLl9kaXNhYmxlZCl9XG4gICAgICAgID9uZWdhdGl2ZT0ke3RoaXMubmVnYXRpdmV9XG4gICAgICAgIGlkPVwidHJpZ2dlclwiXG4gICAgICA+PC9zYmItbWluaS1idXR0b24+XG4gICAgICA8c2JiLXBvcG92ZXJcbiAgICAgICAgQHdpbGxPcGVuPSR7KCkgPT4gdGhpcy5fY2FsZW5kYXJFbGVtZW50LnJlc2V0UG9zaXRpb24oKX1cbiAgICAgICAgQGRpZE9wZW49JHsoKSA9PiB7XG4gICAgICAgICAgaWYgKHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5tb3N0UmVjZW50TW9kYWxpdHkgPT09ICdrZXlib2FyZCcpIHtcbiAgICAgICAgICAgIHRoaXMuX2NhbGVuZGFyRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfX1cbiAgICAgICAgdHJpZ2dlcj1cInRyaWdnZXJcIlxuICAgICAgICBoaWRlLWNsb3NlLWJ1dHRvblxuICAgICAgPlxuICAgICAgICAke3RoaXMuX3JlbmRlckNhbGVuZGFyXG4gICAgICAgICAgPyBodG1sYDxzYmItY2FsZW5kYXJcbiAgICAgICAgICAgICAgLnZpZXc9JHt0aGlzLnZpZXd9XG4gICAgICAgICAgICAgIC5taW49JHt0aGlzLl9taW59XG4gICAgICAgICAgICAgIC5tYXg9JHt0aGlzLl9tYXh9XG4gICAgICAgICAgICAgIC5ub3c9JHt0aGlzLl9ub3dPck51bGwoKX1cbiAgICAgICAgICAgICAgP3dpZGU9JHt0aGlzLmRhdGVwaWNrZXI/LndpZGV9XG4gICAgICAgICAgICAgIC5kYXRlRmlsdGVyPSR7dGhpcy5kYXRlcGlja2VyPy5kYXRlRmlsdGVyID8/IG51bGx9XG4gICAgICAgICAgICAgIEBkYXRlU2VsZWN0ZWQ9JHsoZDogQ3VzdG9tRXZlbnQ8VD4pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYWxlbmRhckVsZW1lbnQuc2VsZWN0ZWQgPSBkLmRldGFpbDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kYXRlcGlja2VyKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBpbnB1dCA9IHRoaXMuZGF0ZXBpY2tlci5pbnB1dEVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgICBpZiAoaXNEYXRlSW5wdXQoaW5wdXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0LnZhbHVlQXNEYXRlID0gZC5kZXRhaWw7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0LmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUsIGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gRW1pdCBibHVyIGV2ZW50IHdoZW4gdmFsdWUgaXMgY2hhbmdlZCBwcm9ncmFtbWF0aWNhbGx5IHRvIG5vdGlmeVxuICAgICAgICAgICAgICAgICAgICAvLyBmcmFtZXdvcmtzIHRoYXQgcmVseSBvbiB0aGF0IGV2ZW50IHRvIHVwZGF0ZSBmb3JtIHN0YXR1cy5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2JsdXInLCB7IGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZXBpY2tlci52YWx1ZUFzRGF0ZSA9IGQuZGV0YWlsO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgJHtyZWYoKGNhbGVuZGFyPzogRWxlbWVudCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLl9hc3NpZ25DYWxlbmRhcihjYWxlbmRhciBhcyBTYmJDYWxlbmRhckVsZW1lbnQ8VD4pLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPjwvc2JiLWNhbGVuZGFyPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICA8L3NiYi1wb3BvdmVyPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1kYXRlcGlja2VyLXRvZ2dsZSc6IFNiYkRhdGVwaWNrZXJUb2dnbGVFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQSxNQUFNLGNBQWMsQ0FDbEIsYUFDc0MsbUNBQVMsZUFBYztJQU96RCw4QkFBMEIsTUFBQTs7MEJBRC9CLGNBQWMsdUJBQXVCLENBQUM7Ozs7QUFFN0IsTUFBQSxjQUFBLGlCQUFpQixrQkFBa0IsVUFBVSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBdEQsRUFBQSxtQkFBUSxZQUErQztBQUFBLElBZ0N2RCxjQUFBOzs7QUFiWTtBQUVIO0FBRUE7QUFFQTtBQUVBO0FBWFUsV0FBQSxjQWpCZjtBQW9Cd0IseUJBQUEsd0JBQUEsa0JBQUEsTUFBQSxvQkFBcUIsS0FBSztBQUU1Qix5QkFBQSw4QkFBQSxrQkFBQSxNQUFBLHVCQUFBLEdBQUEsa0JBQUEsTUFBQSx5QkFBWSxLQUFLO0FBRWpCLHlCQUFBLHlCQUFBLGtCQUFBLE1BQUEsNEJBQUEsR0FBQSxrQkFBQSxNQUFBLG9CQUErQyxJQUFJO0FBRW5ELHlCQUFBLHlCQUFBLGtCQUFBLE1BQUEsdUJBQUEsR0FBQSxrQkFBQSxNQUFBLG9CQUErQyxJQUFJO0FBRW5ELHlCQUFBLG9DQUFBLGtCQUFBLE1BQUEsdUJBQUEsR0FBQSxrQkFBQSxNQUFBLCtCQUFrQixLQUFLO0FBRXpDLFdBQUEsbUJBQXlDLGtCQUFBLE1BQUEsa0NBQUE7QUFDekMsV0FBQSxZQUFZLElBQUksc0JBQXNCLElBQUk7QUFJaEQsV0FBSyxjQUFjLElB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
192
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXRvZ2dsZS9kYXRlcGlja2VyLXRvZ2dsZS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlEZWNsYXJhdGlvbiB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgaWRSZWZlcmVuY2UgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaTE4blNob3dDYWxlbmRhciB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJEYXRlcGlja2VyQnV0dG9uQmFzZSB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkRhdGVwaWNrZXJFbGVtZW50IH0gZnJvbSAnLi4vZGF0ZXBpY2tlci5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RhdGVwaWNrZXItdG9nZ2xlLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogQ29tYmluZWQgd2l0aCBhIGBzYmItZGF0ZXBpY2tlcmAsIGl0IGNhbiBiZSB1c2VkIHRvIHNlbGVjdCBhIGRhdGUgZnJvbSBhIGBzYmItY2FsZW5kYXJgLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItZGF0ZXBpY2tlci10b2dnbGUnKVxuY2xhc3MgU2JiRGF0ZXBpY2tlclRvZ2dsZUVsZW1lbnQ8VCA9IERhdGU+IGV4dGVuZHMgU2JiRGF0ZXBpY2tlckJ1dHRvbkJhc2U8VD4ge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaWNvbk5hbWUgPSAnY2FsZW5kYXItc21hbGwnO1xuXG4gIC8qKiBEYXRlcGlja2VyIHJlZmVyZW5jZS4gKi9cbiAgQGlkUmVmZXJlbmNlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGVwaWNrZXI6IFNiYkRhdGVwaWNrZXJFbGVtZW50PFQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYgJiYgIXRoaXMuZGF0ZXBpY2tlcikge1xuICAgICAgICBjb25zb2xlLndhcm4oJ3NiYi1kYXRlcGlja2VyLXRvZ2dsZTogTm8gZGF0ZXBpY2tlciBjb25uZWN0ZWQuJyk7XG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMpO1xuICAgICAgfVxuICAgICAgaWYgKCF0aGlzLmRhdGVwaWNrZXI/LmlzT3Blbikge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXI/Lm9wZW4oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFMYWJlbCA9IGkxOG5TaG93Q2FsZW5kYXJbdGhpcy5sYW5ndWFnZS5jdXJyZW50XTtcbiAgICBjb25zdCBmb3JtRmllbGQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKTtcbiAgICBpZiAoZm9ybUZpZWxkICYmICF0aGlzLmhhc0F0dHJpYnV0ZSgnZGF0ZXBpY2tlcicpKSB7XG4gICAgICB0aGlzLmRhdGVwaWNrZXIgPz89IGZvcm1GaWVsZC5xdWVyeVNlbGVjdG9yPFNiYkRhdGVwaWNrZXJFbGVtZW50PFQ+Pignc2JiLWRhdGVwaWNrZXInKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICBuYW1lPzogUHJvcGVydHlLZXksXG4gICAgb2xkVmFsdWU/OiB1bmtub3duLFxuICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICApOiB2b2lkIHtcbiAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKG5hbWUsIG9sZFZhbHVlLCBvcHRpb25zKTtcbiAgICBpZiAobmFtZSA9PT0gJ2RhdGVwaWNrZXInICYmIHRoaXMuZGF0ZXBpY2tlciAmJiB0aGlzLmRhdGVwaWNrZXIudHJpZ2dlciAhPT0gdGhpcykge1xuICAgICAgdGhpcy5kYXRlcGlja2VyLnRyaWdnZXIgPSB0aGlzO1xuICAgIH0gZWxzZSBpZiAoIW5hbWUgJiYgdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhTGFiZWwgPSBpMThuU2hvd0NhbGVuZGFyW3RoaXMubGFuZ3VhZ2UuY3VycmVudF07XG4gICAgfVxuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZGF0ZXBpY2tlci10b2dnbGUnOiBTYmJEYXRlcGlja2VyVG9nZ2xlRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWVNLDhCQUEwQixNQUFBOzswQkFEL0IsY0FBYyx1QkFBdUIsQ0FBQzs7OztvQkFDWTs7OztBQUFSLEVBQUEsbUJBQVEsWUFBMEI7QUFBQSxJQVUzRSxjQUFBO0FBQ0UsWUFBQTtBQUhGO0FBTG1CLFdBQUEsV0FBVztBQUtkLHlCQUFBLDhCQUFBLGtCQUFBLE1BQUEsMEJBQTZDLElBQUk7O0FBSS9ELFdBQUssbUJBQW1CLFNBQVMsTUFBSztBQUNwQyxZQUEyQixDQUFDLEtBQUssWUFBWTtBQUMzQyxrQkFBUSxLQUFLLGlEQUFpRDtBQUM5RCxrQkFBUSxJQUFJLElBQUk7QUFBQSxRQUFBO0FBRWxCLFlBQUksQ0FBQyxLQUFLLFlBQVksUUFBUTtBQUM1QixlQUFLLFlBQVksS0FBQTtBQUFBO01BQ25CLENBQ0Q7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQVpILElBQWdCLGFBQVU7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQTFCLElBQWdCLFdBQVUsT0FBQTtBQUFBLHlCQUFBLDhCQUFBO0FBQUEsSUFBQTtBQUFBLElBZVYsb0JBQWlCO0FBQy9CLFlBQU0sa0JBQUE7QUFDTixXQUFLLFVBQVUsWUFBWSxpQkFBaUIsS0FBSyxTQUFTLE9BQU87QUFDakUsWUFBTSxZQUFZLEtBQUssVUFBVSxnQkFBZ0I7QUFDakQsVUFBSSxhQUFhLENBQUMsS0FBSyxhQUFhLFlBQVksR0FBRztBQUNqRCxhQUFLLGVBQWUsVUFBVSxjQUF1QyxnQkFBZ0I7QUFBQSxNQUFBO0FBQUEsSUFDdkY7QUFBQSxJQUdjLGNBQ2QsTUFDQSxVQUNBLFNBQTZCO0FBRTdCLFlBQU0sY0FBYyxNQUFNLFVBQVUsT0FBTztBQUMzQyxVQUFJLFNBQVMsZ0JBQWdCLEtBQUssY0FBYyxLQUFLLFdBQVcsWUFBWSxNQUFNO0FBQ2hGLGFBQUssV0FBVyxVQUFVO0FBQUEsTUFBQSxXQUNqQixDQUFDLFFBQVEsS0FBSyxZQUFZO0FBQ25DLGFBQUssVUFBVSxZQUFZLGlCQUFpQixLQUFLLFNBQVMsT0FBTztBQUFBLE1BQUE7QUFBQSxJQUNuRTtBQUFBLEtBbENGOzs4QkFGQyxlQUNBLFVBQVU7QUFDWCxpQkFBQSxJQUFBLE1BQUEsd0JBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxjQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLGdCQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsWUFBVSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBVixhQUFVO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSwwQkFBQSw2QkFBQTtBQVI1QixpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBQ3lCLEdBQUEsU0FBeUIsT0FENUMsa0JBQUEsWUFBQSx1QkFBQSxHQUFxQzs7OyJ9