@sbb-esta/lyne-elements 2.3.0 → 2.4.1

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 (255) hide show
  1. package/autocomplete/autocomplete-base-element.d.ts +1 -0
  2. package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  3. package/autocomplete/autocomplete.d.ts.map +1 -1
  4. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
  5. package/autocomplete-grid/autocomplete-grid.js +0 -1
  6. package/autocomplete.js +28 -28
  7. package/button/common/button-common.d.ts.map +1 -1
  8. package/calendar/calendar.d.ts +55 -11
  9. package/calendar/calendar.d.ts.map +1 -1
  10. package/calendar.js +374 -224
  11. package/card/common/card-action-common.d.ts.map +1 -1
  12. package/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  13. package/checkbox/checkbox-group.js +1 -1
  14. package/checkbox/common/checkbox-common.d.ts.map +1 -1
  15. package/core/controllers/escapable-overlay-controller.d.ts +11 -0
  16. package/core/controllers/escapable-overlay-controller.d.ts.map +1 -0
  17. package/core/controllers.d.ts +1 -0
  18. package/core/controllers.d.ts.map +1 -1
  19. package/core/controllers.js +73 -47
  20. package/core/datetime/date-adapter.d.ts +4 -2
  21. package/core/datetime/date-adapter.d.ts.map +1 -1
  22. package/core/datetime/native-date-adapter.d.ts +1 -1
  23. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  24. package/core/datetime.js +51 -43
  25. package/core/decorators/date-converter.d.ts +8 -0
  26. package/core/decorators/date-converter.d.ts.map +1 -0
  27. package/core/decorators/date-only-type.d.ts +8 -0
  28. package/core/decorators/date-only-type.d.ts.map +1 -0
  29. package/core/decorators/get-override.d.ts.map +1 -1
  30. package/core/decorators/handle-distinct-change.d.ts.map +1 -1
  31. package/core/decorators/host-attributes.d.ts.map +1 -1
  32. package/core/decorators/slot-state.d.ts.map +1 -1
  33. package/core/decorators.d.ts +2 -0
  34. package/core/decorators.d.ts.map +1 -1
  35. package/core/decorators.js +52 -31
  36. package/core/dom/input-element.d.ts +1 -1
  37. package/core/dom/input-element.d.ts.map +1 -1
  38. package/core/dom.js +5 -5
  39. package/core/eventing/throttle.d.ts.map +1 -1
  40. package/core/i18n/i18n.d.ts +4 -0
  41. package/core/i18n/i18n.d.ts.map +1 -1
  42. package/core/i18n.js +87 -63
  43. package/core/mixins/disabled-mixin.d.ts.map +1 -1
  44. package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  45. package/core/mixins/form-associated-input-mixin.d.ts +25 -0
  46. package/core/mixins/form-associated-input-mixin.d.ts.map +1 -0
  47. package/core/mixins/form-associated-mixin.d.ts +13 -0
  48. package/core/mixins/form-associated-mixin.d.ts.map +1 -1
  49. package/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
  50. package/core/mixins/hydration-mixin.d.ts.map +1 -1
  51. package/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
  52. package/core/mixins/negative-mixin.d.ts.map +1 -1
  53. package/core/mixins/panel-mixin.d.ts.map +1 -1
  54. package/core/mixins/required-mixin.d.ts.map +1 -1
  55. package/core/mixins/update-scheduler-mixin.d.ts.map +1 -1
  56. package/core/mixins.d.ts +1 -0
  57. package/core/mixins.d.ts.map +1 -1
  58. package/core/mixins.js +518 -333
  59. package/core/styles/core.scss +3 -1
  60. package/core/testing/mocha-extensions.d.ts.map +1 -1
  61. package/core/testing/wait-for-render.d.ts.map +1 -1
  62. package/core.css +2 -2
  63. package/custom-elements.json +18176 -14267
  64. package/date-input/date-input.d.ts +67 -0
  65. package/date-input/date-input.d.ts.map +1 -0
  66. package/date-input.d.ts +2 -0
  67. package/date-input.d.ts.map +1 -0
  68. package/date-input.js +149 -0
  69. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  70. package/datepicker/common.js +49 -45
  71. package/datepicker/datepicker/datepicker.d.ts +16 -6
  72. package/datepicker/datepicker/datepicker.d.ts.map +1 -1
  73. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  74. package/datepicker/datepicker-toggle.js +41 -38
  75. package/datepicker/datepicker.js +94 -76
  76. package/development/autocomplete/autocomplete-base-element.d.ts +1 -0
  77. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  78. package/development/autocomplete/autocomplete.d.ts.map +1 -1
  79. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
  80. package/development/autocomplete-grid/autocomplete-grid.js +1 -2
  81. package/development/autocomplete.js +9 -4
  82. package/development/button/common/button-common.d.ts.map +1 -1
  83. package/development/calendar/calendar.d.ts +55 -11
  84. package/development/calendar/calendar.d.ts.map +1 -1
  85. package/development/calendar.js +301 -87
  86. package/development/card/common/card-action-common.d.ts.map +1 -1
  87. package/development/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  88. package/development/checkbox/checkbox-group.js +2 -2
  89. package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
  90. package/development/core/controllers/escapable-overlay-controller.d.ts +11 -0
  91. package/development/core/controllers/escapable-overlay-controller.d.ts.map +1 -0
  92. package/development/core/controllers.d.ts +1 -0
  93. package/development/core/controllers.d.ts.map +1 -1
  94. package/development/core/controllers.js +36 -1
  95. package/development/core/datetime/date-adapter.d.ts +4 -2
  96. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  97. package/development/core/datetime/native-date-adapter.d.ts +1 -1
  98. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  99. package/development/core/datetime.js +14 -2
  100. package/development/core/decorators/date-converter.d.ts +8 -0
  101. package/development/core/decorators/date-converter.d.ts.map +1 -0
  102. package/development/core/decorators/date-only-type.d.ts +8 -0
  103. package/development/core/decorators/date-only-type.d.ts.map +1 -0
  104. package/development/core/decorators/get-override.d.ts.map +1 -1
  105. package/development/core/decorators/handle-distinct-change.d.ts.map +1 -1
  106. package/development/core/decorators/host-attributes.d.ts.map +1 -1
  107. package/development/core/decorators/slot-state.d.ts.map +1 -1
  108. package/development/core/decorators.d.ts +2 -0
  109. package/development/core/decorators.d.ts.map +1 -1
  110. package/development/core/decorators.js +23 -2
  111. package/development/core/dom/input-element.d.ts +1 -1
  112. package/development/core/dom/input-element.d.ts.map +1 -1
  113. package/development/core/dom.js +3 -3
  114. package/development/core/eventing/throttle.d.ts.map +1 -1
  115. package/development/core/i18n/i18n.d.ts +4 -0
  116. package/development/core/i18n/i18n.d.ts.map +1 -1
  117. package/development/core/i18n.js +29 -1
  118. package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
  119. package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  120. package/development/core/mixins/form-associated-input-mixin.d.ts +25 -0
  121. package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -0
  122. package/development/core/mixins/form-associated-mixin.d.ts +13 -0
  123. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  124. package/development/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
  125. package/development/core/mixins/hydration-mixin.d.ts.map +1 -1
  126. package/development/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
  127. package/development/core/mixins/negative-mixin.d.ts.map +1 -1
  128. package/development/core/mixins/panel-mixin.d.ts.map +1 -1
  129. package/development/core/mixins/required-mixin.d.ts.map +1 -1
  130. package/development/core/mixins/update-scheduler-mixin.d.ts.map +1 -1
  131. package/development/core/mixins.d.ts +1 -0
  132. package/development/core/mixins.d.ts.map +1 -1
  133. package/development/core/mixins.js +379 -88
  134. package/development/core/testing/mocha-extensions.d.ts.map +1 -1
  135. package/development/core/testing/wait-for-render.d.ts.map +1 -1
  136. package/development/date-input/date-input.d.ts +67 -0
  137. package/development/date-input/date-input.d.ts.map +1 -0
  138. package/development/date-input.d.ts +2 -0
  139. package/development/date-input.d.ts.map +1 -0
  140. package/development/date-input.js +259 -0
  141. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  142. package/development/datepicker/common.js +11 -2
  143. package/development/datepicker/datepicker/datepicker.d.ts +16 -6
  144. package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
  145. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  146. package/development/datepicker/datepicker-toggle.js +12 -3
  147. package/development/datepicker/datepicker.js +65 -39
  148. package/development/dialog/dialog/dialog.d.ts.map +1 -1
  149. package/development/dialog/dialog.js +3 -1
  150. package/development/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -1
  151. package/development/expansion-panel/expansion-panel.js +2 -2
  152. package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
  153. package/development/form-field/form-field/form-field.d.ts +1 -1
  154. package/development/form-field/form-field/form-field.d.ts.map +1 -1
  155. package/development/form-field/form-field.js +19 -13
  156. package/development/header/common/header-action-common.d.ts.map +1 -1
  157. package/development/icon/icon-name-mixin.d.ts.map +1 -1
  158. package/development/icon/icon-request.d.ts.map +1 -1
  159. package/development/icon/icon-validate.d.ts.map +1 -1
  160. package/development/link/common/block-link-common.d.ts.map +1 -1
  161. package/development/link/common/inline-link-common.d.ts.map +1 -1
  162. package/development/link/common/link-common.d.ts.map +1 -1
  163. package/development/menu/common/menu-action-common.d.ts.map +1 -1
  164. package/development/menu/menu/menu.d.ts +1 -1
  165. package/development/menu/menu/menu.d.ts.map +1 -1
  166. package/development/menu/menu.js +5 -15
  167. package/development/navigation/common/navigation-action-common.d.ts.map +1 -1
  168. package/development/navigation/navigation/navigation.d.ts +1 -3
  169. package/development/navigation/navigation/navigation.d.ts.map +1 -1
  170. package/development/navigation/navigation.js +8 -21
  171. package/development/overlay/overlay-base-element.d.ts +2 -2
  172. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  173. package/development/overlay/overlay.d.ts.map +1 -1
  174. package/development/overlay.js +6 -13
  175. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  176. package/development/popover/popover/popover.d.ts +1 -1
  177. package/development/popover/popover/popover.d.ts.map +1 -1
  178. package/development/popover/popover.js +5 -15
  179. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  180. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  181. package/development/radio-button/radio-button-group.js +2 -2
  182. package/development/select/select.d.ts +3 -1
  183. package/development/select/select.d.ts.map +1 -1
  184. package/development/select.js +12 -8
  185. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  186. package/development/selection-expansion-panel.js +2 -2
  187. package/development/stepper/step/step.d.ts +0 -2
  188. package/development/stepper/step/step.d.ts.map +1 -1
  189. package/development/stepper/step.js +1 -16
  190. package/development/stepper/stepper/stepper.d.ts +11 -0
  191. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  192. package/development/stepper/stepper.js +30 -3
  193. package/development/tag/tag/tag.d.ts +11 -0
  194. package/development/tag/tag/tag.d.ts.map +1 -1
  195. package/development/tag/tag-group/tag-group.d.ts +1 -1
  196. package/development/tag/tag-group/tag-group.d.ts.map +1 -1
  197. package/development/tag/tag-group.js +9 -3
  198. package/development/tag/tag.js +37 -10
  199. package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -1
  200. package/dialog/dialog/dialog.d.ts.map +1 -1
  201. package/dialog/dialog.js +2 -2
  202. package/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -1
  203. package/expansion-panel/expansion-panel.js +1 -1
  204. package/file-selector/common/file-selector-common.d.ts.map +1 -1
  205. package/form-field/form-field/form-field.d.ts +1 -1
  206. package/form-field/form-field/form-field.d.ts.map +1 -1
  207. package/form-field/form-field.js +30 -24
  208. package/header/common/header-action-common.d.ts.map +1 -1
  209. package/icon/icon-name-mixin.d.ts.map +1 -1
  210. package/icon/icon-request.d.ts.map +1 -1
  211. package/icon/icon-validate.d.ts.map +1 -1
  212. package/index.d.ts +2 -0
  213. package/index.js +2 -0
  214. package/link/common/block-link-common.d.ts.map +1 -1
  215. package/link/common/inline-link-common.d.ts.map +1 -1
  216. package/link/common/link-common.d.ts.map +1 -1
  217. package/menu/common/menu-action-common.d.ts.map +1 -1
  218. package/menu/menu/menu.d.ts +1 -1
  219. package/menu/menu/menu.d.ts.map +1 -1
  220. package/menu/menu.js +25 -34
  221. package/navigation/common/navigation-action-common.d.ts.map +1 -1
  222. package/navigation/navigation/navigation.d.ts +1 -3
  223. package/navigation/navigation/navigation.d.ts.map +1 -1
  224. package/navigation/navigation.js +45 -54
  225. package/overlay/overlay-base-element.d.ts +2 -2
  226. package/overlay/overlay-base-element.d.ts.map +1 -1
  227. package/overlay/overlay.d.ts.map +1 -1
  228. package/overlay.js +57 -63
  229. package/package.json +6 -1
  230. package/paginator/common/paginator-common.d.ts.map +1 -1
  231. package/popover/popover/popover.d.ts +1 -1
  232. package/popover/popover/popover.d.ts.map +1 -1
  233. package/popover/popover.js +101 -110
  234. package/radio-button/common/radio-button-common.d.ts.map +1 -1
  235. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  236. package/radio-button/radio-button-group.js +1 -1
  237. package/select/select.d.ts +3 -1
  238. package/select/select.d.ts.map +1 -1
  239. package/select.js +39 -37
  240. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  241. package/selection-expansion-panel.js +1 -1
  242. package/standard-theme.css +2 -2
  243. package/stepper/step/step.d.ts +0 -2
  244. package/stepper/step/step.d.ts.map +1 -1
  245. package/stepper/step.js +24 -36
  246. package/stepper/stepper/stepper.d.ts +11 -0
  247. package/stepper/stepper/stepper.d.ts.map +1 -1
  248. package/stepper/stepper.js +59 -41
  249. package/tag/tag/tag.d.ts +11 -0
  250. package/tag/tag/tag.d.ts.map +1 -1
  251. package/tag/tag-group/tag-group.d.ts +1 -1
  252. package/tag/tag-group/tag-group.d.ts.map +1 -1
  253. package/tag/tag-group.js +32 -29
  254. package/tag/tag.js +60 -41
  255. package/teaser-product/common/teaser-product-common.d.ts.map +1 -1
@@ -0,0 +1,67 @@
1
+ import { LitElement, CSSResultGroup, PropertyDeclaration } from 'lit';
2
+ import { FormRestoreReason, FormRestoreState } from '../core/mixins.js';
3
+ declare const SbbDateInputElement_base: import('../core/mixins.js').Constructor<import('../core/mixins.js').SbbFormAssociatedInputMixinType> & typeof LitElement;
4
+ /**
5
+ * Custom input for a date.
6
+ */
7
+ export declare class SbbDateInputElement<T = Date> extends SbbDateInputElement_base {
8
+ static styles: CSSResultGroup;
9
+ private _dateAdapter;
10
+ private _placeholderMutable;
11
+ /**
12
+ * The value of the date input. Reflects the current text value
13
+ * of this input.
14
+ * @attr Accepts ISO8601 formatted values, which will be
15
+ * formatted according to the current locale.
16
+ */
17
+ set value(value: string);
18
+ get value(): string;
19
+ set valueAsDate(value: T | null);
20
+ get valueAsDate(): T | null;
21
+ private _valueAsDate?;
22
+ accessor min: T | null;
23
+ accessor max: T | null;
24
+ /** A function used to filter out dates. */
25
+ accessor dateFilter: (date: T | null) => boolean;
26
+ /**
27
+ * How to format the displayed date.
28
+ * `short`: Two letter abbreviation of the week day (e.g. Fr).
29
+ * `none`: The weekday is not displayed.
30
+ */
31
+ accessor weekdayStyle: 'short' | 'none';
32
+ /**
33
+ * Stores the last string and parsed date object value to prevent repeated
34
+ * parsing of the string value.
35
+ */
36
+ private _valueCache?;
37
+ constructor();
38
+ connectedCallback(): void;
39
+ requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
40
+ /**
41
+ * Called when the browser is trying to restore element’s state to state in which case
42
+ * reason is "restore", or when the browser is trying to fulfill autofill on behalf of
43
+ * user in which case reason is "autocomplete".
44
+ * In the case of "restore", state is a string, File, or FormData object
45
+ * previously set as the second argument to setFormValue.
46
+ *
47
+ * @internal
48
+ */
49
+ formStateRestoreCallback(state: FormRestoreState | null, _reason: FormRestoreReason): void;
50
+ protected updateFormValue(): void;
51
+ private _tryParseValue;
52
+ private _updateValueDateFormat;
53
+ private _formatDate;
54
+ protected shouldValidate(name: PropertyKey | undefined): boolean;
55
+ protected validate(): void;
56
+ private _removeValidityErrors;
57
+ }
58
+ declare global {
59
+ interface HTMLElementTagNameMap {
60
+ 'sbb-date-input': SbbDateInputElement;
61
+ }
62
+ interface CustomValidityState {
63
+ sbbDateFilter: boolean;
64
+ }
65
+ }
66
+ export {};
67
+ //# sourceMappingURL=date-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-input.d.ts","sourceRoot":"","sources":["../../../src/elements/date-input/date-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,KAAK,CAAC;AAY1F,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,mBAAmB,CAAC;;AAY3B;;GAEG;AACH,qBAEM,mBAAmB,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,wBAAuC;IACjF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,OAAO,CAAC,YAAY,CAA4E;IAChG,OAAO,CAAC,mBAAmB,CAAS;IAEpC;;;;;OAKG;IACH,IAAoB,KAAK,CAAC,KAAK,EAAE,MAAM,EAQtC;IACD,IAAoB,KAAK,IAAI,MAAM,CAElC;IAED,IAEW,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAmBrC;IACD,IAAW,WAAW,IAAI,CAAC,GAAG,IAAI,CAEjC;IACD,OAAO,CAAC,YAAY,CAAC,CAAW;IAEhC,SAEgB,GAAG,EAAE,CAAC,GAAG,IAAI,CAAQ;IAErC,SAEgB,GAAG,EAAE,CAAC,GAAG,IAAI,CAAQ;IAErC,2CAA2C;IAC3C,SAAgD,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,OAAO,CAChF;IAEP;;;;OAIG;IACH,SACgB,YAAY,EAAE,OAAO,GAAG,MAAM,CAAW;IAEzD;;;OAGG;IACH,OAAO,CAAC,WAAW,CAAC,CAAqB;;IAOzB,iBAAiB,IAAI,IAAI;IAQzB,aAAa,CAC3B,IAAI,CAAC,EAAE,WAAW,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;IAYP;;;;;;;;OAQG;IACa,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,EAAE,iBAAiB,GACzB,IAAI;cAMY,eAAe,IAAI,IAAI;IAO1C,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,WAAW;cAIA,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO;cAItD,QAAQ,IAAI,IAAI;IAiCnC,OAAO,CAAC,qBAAqB;CAK9B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,mBAAmB,CAAC;KACvC;IAED,UAAU,mBAAmB;QAC3B,aAAa,EAAE,OAAO,CAAC;KACxB;CACF"}
@@ -0,0 +1,2 @@
1
+ export * from './date-input/date-input.js';
2
+ //# sourceMappingURL=date-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-input.d.ts","sourceRoot":"","sources":["../../src/elements/date-input.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
package/date-input.js ADDED
@@ -0,0 +1,149 @@
1
+ var P = (a) => {
2
+ throw TypeError(a);
3
+ };
4
+ var T = (a, s, i) => s.has(a) || P("Cannot " + i);
5
+ var p = (a, s, i) => (T(a, s, "read from private field"), i ? i.call(a) : s.get(a)), f = (a, s, i) => s.has(a) ? P("Cannot add the same private member more than once") : s instanceof WeakSet ? s.add(a) : s.set(a, i), d = (a, s, i, o) => (T(a, s, "write to private field"), o ? o.call(a, i) : s.set(a, i), i);
6
+ import { __esDecorate as _, __runInitializers as n } from "tslib";
7
+ import { css as L, LitElement as G, isServer as R } from "lit";
8
+ import { customElement as B, property as y } from "lit/decorators.js";
9
+ import { readConfig as H } from "./core/config.js";
10
+ import { defaultDateAdapter as J } from "./core/datetime.js";
11
+ import { forceType as v, DateOnlyType as D, dateConverter as U } from "./core/decorators.js";
12
+ import { i18nDatePickerPlaceholder as j, i18nDateInvalid as q, i18nDateMin as K, i18nDateMax as N } from "./core/i18n.js";
13
+ import { SbbFormAssociatedInputMixin as Q } from "./core/mixins.js";
14
+ const W = L`:host{display:inline-block;min-width:9.375rem;max-width:100%;cursor:text}@media (forced-colors: active){:host{color:FieldText}}:host(:disabled){cursor:default}:host(:focus){text-overflow:initial!important}:host(:empty):after{content:attr(placeholder);color:var(--sbb-color-metal);-webkit-text-fill-color:var(--sbb-color-metal);opacity:1}@media (forced-colors: active){:host(:empty):after{color:GrayText}}`;
15
+ Object.assign(ValidityState.prototype, {
16
+ get sbbDateFilter() {
17
+ return !1;
18
+ }
19
+ });
20
+ let re = (() => {
21
+ var h, u, c, m, l;
22
+ let a = [B("sbb-date-input")], s, i = [], o, g = Q(G), b = [], A, x, k = [], F = [], w, S = [], V = [], I, z = [], C = [], E, M = [], O = [];
23
+ return l = class extends g {
24
+ constructor() {
25
+ var e, t;
26
+ super();
27
+ f(this, h);
28
+ f(this, u);
29
+ f(this, c);
30
+ f(this, m);
31
+ this._dateAdapter = (n(this, b), ((e = H().datetime) == null ? void 0 : e.dateAdapter) ?? J), this._placeholderMutable = !1, d(this, h, n(this, k, null)), d(this, u, (n(this, F), n(this, S, null))), d(this, c, (n(this, V), n(this, z, () => !0))), d(this, m, (n(this, C), n(this, M, "short"))), this._valueCache = n(this, O), (t = this.addEventListener) == null || t.call(this, "change", () => this._updateValueDateFormat(), { capture: !0 });
32
+ }
33
+ /**
34
+ * The value of the date input. Reflects the current text value
35
+ * of this input.
36
+ * @attr Accepts ISO8601 formatted values, which will be
37
+ * formatted according to the current locale.
38
+ */
39
+ set value(e) {
40
+ this._tryParseValue(e), !R && !this.matches(":focus") && this.valueAsDate !== null && (e = this._formatDate()), super.value = e;
41
+ }
42
+ get value() {
43
+ return super.value ?? "";
44
+ }
45
+ set valueAsDate(e) {
46
+ if (!e)
47
+ this._valueAsDate = null, this._valueCache = ["", null], this.value = "";
48
+ else if (!this._dateAdapter.isDateInstance(this._valueAsDate) || this._dateAdapter.compareDate(this._valueAsDate, e) !== 0) {
49
+ this._valueAsDate = e;
50
+ const t = this._formatDate();
51
+ this._valueCache = [t, this._valueAsDate], this.value = t;
52
+ }
53
+ }
54
+ get valueAsDate() {
55
+ return this._valueAsDate ?? null;
56
+ }
57
+ get min() {
58
+ return p(this, h);
59
+ }
60
+ set min(e) {
61
+ d(this, h, e);
62
+ }
63
+ get max() {
64
+ return p(this, u);
65
+ }
66
+ set max(e) {
67
+ d(this, u, e);
68
+ }
69
+ /** A function used to filter out dates. */
70
+ get dateFilter() {
71
+ return p(this, c);
72
+ }
73
+ set dateFilter(e) {
74
+ d(this, c, e);
75
+ }
76
+ /**
77
+ * How to format the displayed date.
78
+ * `short`: Two letter abbreviation of the week day (e.g. Fr).
79
+ * `none`: The weekday is not displayed.
80
+ */
81
+ get weekdayStyle() {
82
+ return p(this, m);
83
+ }
84
+ set weekdayStyle(e) {
85
+ d(this, m, e);
86
+ }
87
+ connectedCallback() {
88
+ super.connectedCallback(), this.placeholder || (this._placeholderMutable = !0, this.placeholder = j[this.language.current]);
89
+ }
90
+ requestUpdate(e, t, r) {
91
+ super.requestUpdate(e, t, r), this.hasUpdated && !e ? (this._updateValueDateFormat(), this._placeholderMutable && (this.placeholder = j[this.language.current])) : e === "weekdayStyle" && this._updateValueDateFormat();
92
+ }
93
+ /**
94
+ * Called when the browser is trying to restore element’s state to state in which case
95
+ * reason is "restore", or when the browser is trying to fulfill autofill on behalf of
96
+ * user in which case reason is "autocomplete".
97
+ * In the case of "restore", state is a string, File, or FormData object
98
+ * previously set as the second argument to setFormValue.
99
+ *
100
+ * @internal
101
+ */
102
+ formStateRestoreCallback(e, t) {
103
+ e && typeof e == "string" && (this.value = e);
104
+ }
105
+ updateFormValue() {
106
+ this._tryParseValue();
107
+ const e = this.valueAsDate !== null ? this._dateAdapter.toIso8601(this.valueAsDate) : null;
108
+ this.internals.setFormValue(e, this.value);
109
+ }
110
+ _tryParseValue(e = this.value) {
111
+ var t;
112
+ ((t = this._valueCache) == null ? void 0 : t[0]) !== e && (this._valueAsDate = this._dateAdapter.parse(e), this._valueCache = [e, this._valueAsDate]);
113
+ }
114
+ _updateValueDateFormat() {
115
+ if (this.valueAsDate) {
116
+ const e = this._formatDate();
117
+ this.value !== e && (super.value = e);
118
+ }
119
+ }
120
+ _formatDate() {
121
+ return this._dateAdapter.format(this.valueAsDate, { weekdayStyle: this.weekdayStyle });
122
+ }
123
+ shouldValidate(e) {
124
+ return super.shouldValidate(e) || ["valueAsDate", "min", "max"].includes(e);
125
+ }
126
+ validate() {
127
+ super.validate(), this.value ? this._dateAdapter.isValid(this.valueAsDate) ? this._dateAdapter.isValid(this.min) && this._dateAdapter.compareDate(this.min, this.valueAsDate) > 0 ? this.setValidityFlag("rangeUnderflow", K(this._dateAdapter.format(this.min, { weekdayStyle: "none" }))[this.language.current]) : this._dateAdapter.isValid(this.max) && this._dateAdapter.compareDate(this.valueAsDate, this.max) > 0 ? this.setValidityFlag("rangeOverflow", N(this._dateAdapter.format(this.max, { weekdayStyle: "none" }))[this.language.current]) : this.dateFilter && !this.dateFilter(this.valueAsDate) ? this.setValidityFlag("sbbDateFilter", q[this.language.current]) : this._removeValidityErrors() : this.setValidityFlag("badInput", q[this.language.current]) : this._removeValidityErrors();
128
+ }
129
+ _removeValidityErrors() {
130
+ ["badInput", "rangeUnderflow", "rangeOverflow", "sbbDateFilter"].forEach((e) => this.removeValidityFlag(e));
131
+ }
132
+ }, h = new WeakMap(), u = new WeakMap(), c = new WeakMap(), m = new WeakMap(), o = l, (() => {
133
+ const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(g[Symbol.metadata] ?? null) : void 0;
134
+ A = [v(), y({ attribute: !1, type: D })], x = [v(), y({ converter: U, reflect: !0, type: D })], w = [v(), y({ converter: U, reflect: !0, type: D })], I = [y({ attribute: !1 })], E = [y({ attribute: "weekday-style" })], _(l, null, A, { kind: "setter", name: "valueAsDate", static: !1, private: !1, access: { has: (t) => "valueAsDate" in t, set: (t, r) => {
135
+ t.valueAsDate = r;
136
+ } }, metadata: e }, null, b), _(l, null, x, { kind: "accessor", name: "min", static: !1, private: !1, access: { has: (t) => "min" in t, get: (t) => t.min, set: (t, r) => {
137
+ t.min = r;
138
+ } }, metadata: e }, k, F), _(l, null, w, { kind: "accessor", name: "max", static: !1, private: !1, access: { has: (t) => "max" in t, get: (t) => t.max, set: (t, r) => {
139
+ t.max = r;
140
+ } }, metadata: e }, S, V), _(l, null, I, { kind: "accessor", name: "dateFilter", static: !1, private: !1, access: { has: (t) => "dateFilter" in t, get: (t) => t.dateFilter, set: (t, r) => {
141
+ t.dateFilter = r;
142
+ } }, metadata: e }, z, C), _(l, null, E, { kind: "accessor", name: "weekdayStyle", static: !1, private: !1, access: { has: (t) => "weekdayStyle" in t, get: (t) => t.weekdayStyle, set: (t, r) => {
143
+ t.weekdayStyle = r;
144
+ } }, metadata: e }, M, O), _(null, s = { value: o }, a, { kind: "class", name: o.name, metadata: e }, null, i), o = s.value, e && Object.defineProperty(o, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
145
+ })(), l.styles = W, n(o, i), o;
146
+ })();
147
+ export {
148
+ re as SbbDateInputElement
149
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-button.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/common/datepicker-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,eAAe,CAAC;;AAEvB,8BAAsB,mBAAmB,CAAC,CAAC,GAAG,IAAI,CAChD,SAAQ,wBACR,YAAW,oBAAoB,CAAC,CAAC,CAAC;IAElC;;;;OAIG;IACH,IACW,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAOnE;IACD,gBAAgB;IAChB,IAAW,UAAU,IAAI,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAE/D;IAED,4BAA4B;IAC5B,IACW,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAQ1D;IACD,IAAW,UAAU,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAEtD;IACD,OAAO,CAAC,WAAW,CAAC,CAAiC;IAErD,qEAAqE;IAC5D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAQ;IAEpE,0EAA0E;IAC1E,OAAO,CAAC,SAAS,CAAS;IAE1B,0EAA0E;IAC1E,OAAO,CAAC,cAAc,CAAS;IAE/B;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAQ;IACpE,OAAO,CAAC,YAAY,CAA4E;IAChG,OAAO,CAAC,SAAS,CAAmC;IAEpD,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;IAQ9F,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC;IAEjC,iBAAiB,IAAI,IAAI;cAQtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IA2B5E,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,4BAA4B;cAYjB,cAAc,IAAI,cAAc;CAGpD"}
1
+ {"version":3,"file":"datepicker-button.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/common/datepicker-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAOnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,eAAe,CAAC;;AAMvB,8BAAsB,mBAAmB,CAAC,CAAC,GAAG,IAAI,CAChD,SAAQ,wBACR,YAAW,oBAAoB,CAAC,CAAC,CAAC;IAElC;;;;OAIG;IACH,IACW,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAOnE;IACD,gBAAgB;IAChB,IAAW,UAAU,IAAI,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAE/D;IAED,4BAA4B;IAC5B,IACW,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAQ1D;IACD,IAAW,UAAU,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAEtD;IACD,OAAO,CAAC,WAAW,CAAC,CAAiC;IAErD,qEAAqE;IAC5D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAQ;IAEpE,0EAA0E;IAC1E,OAAO,CAAC,SAAS,CAAS;IAE1B,0EAA0E;IAC1E,OAAO,CAAC,cAAc,CAAS;IAE/B;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAQ;IACpE,OAAO,CAAC,YAAY,CAA4E;IAChG,OAAO,CAAC,SAAS,CAAmC;IAEpD,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;IAQ9F,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC;IAEjC,iBAAiB,IAAI,IAAI;cAQtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IA2B5E,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,4BAA4B;cAYjB,cAAc,IAAI,cAAc;CAGpD"}
@@ -5,12 +5,12 @@ var A = (a, t, e) => t.has(a) || g("Cannot " + e);
5
5
  var y = (a, t, e) => (A(a, t, "read from private field"), e ? e.call(a) : t.get(a)), D = (a, t, e) => t.has(a) ? g("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(a) : t.set(a, e), p = (a, t, e, o) => (A(a, t, "write to private field"), o ? o.call(a, e) : t.set(a, e), e);
6
6
  import { __esDecorate as b, __runInitializers as _ } from "tslib";
7
7
  import { html as x } from "lit";
8
- import { property as v, state as C } from "lit/decorators.js";
9
- import { SbbButtonBaseElement as w } from "../core/base-elements.js";
10
- import { readConfig as E } from "../core/config.js";
8
+ import { property as v, state as E } from "lit/decorators.js";
9
+ import { SbbButtonBaseElement as C } from "../core/base-elements.js";
10
+ import { readConfig as w } from "../core/config.js";
11
11
  import { SbbLanguageController as S } from "../core/controllers.js";
12
- import { defaultDateAdapter as P } from "../core/datetime.js";
13
- import { i18nToday as I } from "../core/i18n.js";
12
+ import { defaultDateAdapter as I } from "../core/datetime.js";
13
+ import { i18nToday as P } from "../core/i18n.js";
14
14
  import { SbbNegativeMixin as z } from "../core/mixins.js";
15
15
  import "../icon.js";
16
16
  const u = class u {
@@ -30,7 +30,7 @@ const u = class u {
30
30
  };
31
31
  u._registry = /* @__PURE__ */ new WeakMap();
32
32
  let h = u;
33
- class V {
33
+ class W {
34
34
  constructor(t) {
35
35
  this._host = t, this._host.addController(this);
36
36
  }
@@ -60,43 +60,44 @@ class R {
60
60
  const t = this._host.closest("sbb-form-field");
61
61
  let e = null;
62
62
  const o = this._host.getAttribute("datepicker") ?? this._host.getAttribute("date-picker");
63
- o ? e = Array.from(this._context.hosts).find((n) => n.id === o) ?? null : e = Array.from(this._context.hosts).find((n) => n.closest("sbb-form-field") === t) ?? null, e && (this._host.datepicker = e);
63
+ o ? e = Array.from(this._context.hosts).find((d) => d.id === o) ?? null : e = Array.from(this._context.hosts).find((d) => d.closest("sbb-form-field") === t) ?? null, e && (this._host.datepicker = e);
64
64
  }
65
65
  hostDisconnected() {
66
66
  var t, e;
67
67
  (t = this._context) == null || t.controls.delete(this._host), (e = this._context) == null || e.deleteIfEmpty();
68
68
  }
69
69
  }
70
- let W = (() => {
71
- var l, d;
72
- let a = z(w), t = [], e, o, n, f = [], m = [];
73
- return d = class extends a {
70
+ const O = (a) => (a == null ? void 0 : a.localName) === "sbb-date-input";
71
+ let G = (() => {
72
+ var l, n;
73
+ let a = z(C), t = [], e, o, d, f = [], m = [];
74
+ return n = class extends a {
74
75
  constructor() {
75
- var s, i;
76
+ var i, s;
76
77
  super();
77
78
  D(this, l);
78
- this._datepicker = _(this, t), p(this, l, _(this, f, null)), this._disabled = (_(this, m), !1), this._inputDisabled = !1, this.datePickerElement = null, this._dateAdapter = ((s = E().datetime) == null ? void 0 : s.dateAdapter) ?? P, this._language = new S(this), this.addController(new R(this)), (i = this.addEventListener) == null || i.call(this, "click", () => this._handleClick());
79
+ this._datepicker = _(this, t), p(this, l, _(this, f, null)), this._disabled = (_(this, m), !1), this._inputDisabled = !1, this.datePickerElement = null, this._dateAdapter = ((i = w().datetime) == null ? void 0 : i.dateAdapter) ?? I, this._language = new S(this), this.addController(new R(this)), (s = this.addEventListener) == null || s.call(this, "click", () => this._handleClick());
79
80
  }
80
81
  /**
81
82
  * Datepicker reference.
82
83
  * @internal
83
84
  * @deprecated Use property/attribute `datepicker` instead.
84
85
  */
85
- set datePicker(s) {
86
- this.datepicker = s;
86
+ set datePicker(i) {
87
+ this.datepicker = i;
87
88
  }
88
89
  /** @internal */
89
90
  get datePicker() {
90
91
  return this.datepicker;
91
92
  }
92
93
  /** Datepicker reference. */
93
- set datepicker(s) {
94
- var i, r, c;
95
- this._datepicker = typeof s == "string" ? (
94
+ set datepicker(i) {
95
+ var s, r, c;
96
+ this._datepicker = typeof i == "string" ? (
96
97
  // In case the value is a string, it should be treated as an id reference
97
98
  // and attempt to be resolved.
98
- ((c = (r = (i = this.getRootNode) == null ? void 0 : i.call(this)) == null ? void 0 : r.querySelector) == null ? void 0 : c.call(r, `#${s}`)) ?? null
99
- ) : s, this.datePickerElement = this._datepicker;
99
+ ((c = (r = (s = this.getRootNode) == null ? void 0 : s.call(this)) == null ? void 0 : r.querySelector) == null ? void 0 : c.call(r, `#${i}`)) ?? null
100
+ ) : i, this.datePickerElement = this._datepicker;
100
101
  }
101
102
  get datepicker() {
102
103
  return this._datepicker ?? null;
@@ -105,52 +106,55 @@ let W = (() => {
105
106
  get boundary() {
106
107
  return y(this, l);
107
108
  }
108
- set boundary(s) {
109
- p(this, l, s);
109
+ set boundary(i) {
110
+ p(this, l, i);
110
111
  }
111
112
  connectedCallback() {
112
- var i, r;
113
+ var s, r;
113
114
  super.connectedCallback();
114
- const s = ((i = this.closest) == null ? void 0 : i.call(this, "sbb-form-field")) ?? ((r = this.closest) == null ? void 0 : r.call(this, "[data-form-field]"));
115
- s && (this.negative = s.hasAttribute("negative"));
115
+ const i = ((s = this.closest) == null ? void 0 : s.call(this, "sbb-form-field")) ?? ((r = this.closest) == null ? void 0 : r.call(this, "[data-form-field]"));
116
+ i && (this.negative = i.hasAttribute("negative"));
116
117
  }
117
- willUpdate(s) {
118
+ willUpdate(i) {
118
119
  var c, k;
119
- if (super.willUpdate(s), !this.datepicker || !this._dateAdapter.isValid(this.datepicker.valueAsDate)) {
120
+ if (super.willUpdate(i), !this.datepicker || !this._dateAdapter.isValid(this.datepicker.valueAsDate)) {
120
121
  this._disabled = !0, this.setAttribute("aria-label", this.i18nOffBoundaryDay[this._language.current]), this._setDisabledRenderAttributes();
121
122
  return;
122
123
  }
123
- const i = this.findAvailableDate(this.datepicker.valueAsDate);
124
- this._disabled = this._dateAdapter.compareDate(i, this.datepicker.valueAsDate) === 0, this._inputDisabled = (((c = this.datepicker.inputElement) == null ? void 0 : c.disabled) || ((k = this.datepicker.inputElement) == null ? void 0 : k.readOnly)) ?? !0, this._setDisabledRenderAttributes();
125
- const r = this._dateAdapter.compareDate(this.datepicker.now, this.datepicker.valueAsDate) === 0 ? I[this._language.current].toLowerCase() : this._dateAdapter.getAccessibilityFormatDate(this.datepicker.valueAsDate);
124
+ const s = this.findAvailableDate(this.datepicker.valueAsDate);
125
+ this._disabled = this._dateAdapter.compareDate(s, this.datepicker.valueAsDate) === 0, this._inputDisabled = (((c = this.datepicker.inputElement) == null ? void 0 : c.disabled) || ((k = this.datepicker.inputElement) == null ? void 0 : k.readOnly)) ?? !0, this._setDisabledRenderAttributes();
126
+ const r = this._dateAdapter.compareDate(this.datepicker.now, this.datepicker.valueAsDate) === 0 ? P[this._language.current].toLowerCase() : this._dateAdapter.getAccessibilityFormatDate(this.datepicker.valueAsDate);
126
127
  this.setAttribute("aria-label", this.i18nSelectOffBoundaryDay(r)[this._language.current]);
127
128
  }
128
129
  _handleClick() {
129
130
  if (!this.datepicker || this.hasAttribute("data-disabled"))
130
131
  return;
131
- const s = this.datepicker.valueAsDate ?? this.datepicker.now, i = this.findAvailableDate(s);
132
- this._dateAdapter.compareDate(i, s) !== 0 && (this.datepicker.valueAsDate = i);
132
+ const i = this.datepicker.valueAsDate ?? this.datepicker.now, s = this.findAvailableDate(i);
133
+ if (this._dateAdapter.compareDate(s, i) !== 0) {
134
+ const r = this.datepicker.inputElement;
135
+ O(r) ? (r.valueAsDate = s, r.dispatchEvent(new InputEvent("input", { bubbles: !0, composed: !0 })), r.dispatchEvent(new Event("change", { bubbles: !0, composed: !0 })), r.dispatchEvent(new Event("blur", { composed: !0 }))) : this.datepicker.valueAsDate = s;
136
+ }
133
137
  }
134
138
  _setDisabledRenderAttributes() {
135
- const s = this._disabled || this._inputDisabled;
136
- this.toggleAttribute("data-disabled", s), s ? (this.setAttribute("aria-disabled", "true"), this.removeAttribute("tabindex")) : (this.removeAttribute("aria-disabled"), this.setAttribute("tabindex", "0"));
139
+ const i = this._disabled || this._inputDisabled;
140
+ this.toggleAttribute("data-disabled", i), i ? (this.setAttribute("aria-disabled", "true"), this.removeAttribute("tabindex")) : (this.removeAttribute("aria-disabled"), this.setAttribute("tabindex", "0"));
137
141
  }
138
142
  renderTemplate() {
139
143
  return x`<sbb-icon name=${this.iconName}></sbb-icon>`;
140
144
  }
141
145
  }, l = new WeakMap(), (() => {
142
- const s = typeof Symbol == "function" && Symbol.metadata ? Object.create(a[Symbol.metadata] ?? null) : void 0;
143
- e = [v({ attribute: "date-picker" })], o = [v({ attribute: "datepicker" })], n = [C()], b(d, null, e, { kind: "setter", name: "datePicker", static: !1, private: !1, access: { has: (i) => "datePicker" in i, set: (i, r) => {
144
- i.datePicker = r;
145
- } }, metadata: s }, null, t), b(d, null, o, { kind: "setter", name: "datepicker", static: !1, private: !1, access: { has: (i) => "datepicker" in i, set: (i, r) => {
146
- i.datepicker = r;
147
- } }, metadata: s }, null, t), b(d, null, n, { kind: "accessor", name: "boundary", static: !1, private: !1, access: { has: (i) => "boundary" in i, get: (i) => i.boundary, set: (i, r) => {
148
- i.boundary = r;
149
- } }, metadata: s }, f, m), s && Object.defineProperty(d, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: s });
150
- })(), d;
146
+ const i = typeof Symbol == "function" && Symbol.metadata ? Object.create(a[Symbol.metadata] ?? null) : void 0;
147
+ e = [v({ attribute: "date-picker" })], o = [v({ attribute: "datepicker" })], d = [E()], b(n, null, e, { kind: "setter", name: "datePicker", static: !1, private: !1, access: { has: (s) => "datePicker" in s, set: (s, r) => {
148
+ s.datePicker = r;
149
+ } }, metadata: i }, null, t), b(n, null, o, { kind: "setter", name: "datepicker", static: !1, private: !1, access: { has: (s) => "datepicker" in s, set: (s, r) => {
150
+ s.datepicker = r;
151
+ } }, metadata: i }, null, t), b(n, null, d, { kind: "accessor", name: "boundary", static: !1, private: !1, access: { has: (s) => "boundary" in s, get: (s) => s.boundary, set: (s, r) => {
152
+ s.boundary = r;
153
+ } }, metadata: i }, f, m), i && Object.defineProperty(n, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: i });
154
+ })(), n;
151
155
  })();
152
156
  export {
153
157
  R as SbbDatepickerAssociationControlController,
154
- V as SbbDatepickerAssociationHostController,
155
- W as SbbDatepickerButton
158
+ W as SbbDatepickerAssociationHostController,
159
+ G as SbbDatepickerButton
156
160
  };
@@ -1,5 +1,6 @@
1
- import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
1
+ import { CSSResultGroup, LitElement, PropertyDeclaration, PropertyValues, TemplateResult } from 'lit';
2
2
  import { SbbDateLike } from '../../core/interfaces.js';
3
+ import { SbbDateInputElement } from '../../date-input.js';
3
4
  import { SbbDatepickerButton } from '../common.js';
4
5
  import { SbbDatepickerToggleElement } from '../datepicker-toggle.js';
5
6
  export interface SbbInputUpdateEvent {
@@ -39,10 +40,15 @@ export declare class SbbDatepickerElement<T = Date> extends LitElement {
39
40
  };
40
41
  /** If set to true, two months are displayed. */
41
42
  accessor wide: boolean;
42
- /** A function used to filter out dates. */
43
- accessor dateFilter: (date: T | null) => boolean;
44
43
  /**
45
- * Reference of the native input connected to the datepicker.
44
+ * A function used to filter out dates.
45
+ * @deprecated Use dateFilter from SbbDateInputElement.
46
+ */
47
+ set dateFilter(value: (date: T | null) => boolean);
48
+ get dateFilter(): (date: T | null) => boolean;
49
+ private _dateFilter?;
50
+ /**
51
+ * Reference of the sbb-date-input instance or the native input connected to the datepicker.
46
52
  * If given a string, it will be treated as an id reference and an attempt is
47
53
  * made to be resolved for the containing document fragment.
48
54
  * If given a HTMLElement instance, it will be used as is.
@@ -55,12 +61,15 @@ export declare class SbbDatepickerElement<T = Date> extends LitElement {
55
61
  set now(value: SbbDateLike<T> | null);
56
62
  get now(): T;
57
63
  private _now?;
58
- /** The currently selected date as a Date or custom date provider instance. */
64
+ /**
65
+ * The currently selected date as a Date or custom date provider instance.
66
+ * @deprecated Use valueAsDate from SbbDateInputElement.
67
+ */
59
68
  set valueAsDate(value: SbbDateLike<T> | null);
60
69
  get valueAsDate(): T | null;
61
70
  private _valueAsDate?;
62
71
  /** The resolved associated input element, as defined by `input`. */
63
- get inputElement(): HTMLInputElement | null;
72
+ get inputElement(): HTMLInputElement | SbbDateInputElement<T> | null;
64
73
  private accessor _inputElement;
65
74
  /** Notifies that the connected input has changes. */
66
75
  private _change;
@@ -78,6 +87,7 @@ export declare class SbbDatepickerElement<T = Date> extends LitElement {
78
87
  private _associationController;
79
88
  constructor();
80
89
  connectedCallback(): void;
90
+ requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
81
91
  protected willUpdate(changedProperties: PropertyValues<this>): void;
82
92
  disconnectedCallback(): void;
83
93
  protected firstUpdated(changedProperties: PropertyValues<this>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/datepicker/datepicker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datepicker.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/datepicker/datepicker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-toggle.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/datepicker-toggle/datepicker-toggle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAW,MAAM,KAAK,CAAC;AAK1D,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;;AAErC;;GAEG;AACH,qBAEM,0BAA0B,CAAC,CAAC,GAAG,IAAI,CACvC,SAAQ,+BACR,YAAW,oBAAoB,CAAC,CAAC,CAAC;IAElC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;;OAIG;IACH,IACW,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAOnE;IACD,gBAAgB;IAChB,IAAW,UAAU,IAAI,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAE/D;IAED,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,CAA4C;IAEjE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA4C;IAEjE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAElD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,SAAS,CAAmC;;IAepD;;OAEG;IACI,IAAI,IAAI,IAAI;IAOH,iBAAiB,IAAI,IAAI;cAStB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAmB5E,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,eAAe;cAaJ,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAMzE,OAAO,CAAC,UAAU;cAIC,MAAM,IAAI,cAAc;CA2C5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
1
+ {"version":3,"file":"datepicker-toggle.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/datepicker-toggle/datepicker-toggle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAW,MAAM,KAAK,CAAC;AAK1D,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,mBAAmB,CAAC;AAO1E,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;;;;OAIG;IACH,IACW,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,EAOnE;IACD,gBAAgB;IAChB,IAAW,UAAU,IAAI,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAE/D;IAED,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,eAAe,CAAwB;IAC/C,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,SAAS,CAAmC;;IAepD;;OAEG;IACI,IAAI,IAAI,IAAI;IAOH,iBAAiB,IAAI,IAAI;cAStB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAmB5E,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,eAAe;cAaJ,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAMzE,OAAO,CAAC,UAAU;cAIC,MAAM,IAAI,cAAc;CAqD5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}