@sbb-esta/lyne-elements 2.4.1 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/button/common/button-common.d.ts +1 -2
  2. package/button/common/button-common.d.ts.map +1 -1
  3. package/button/common.js +4 -4
  4. package/clock/clock.d.ts +8 -0
  5. package/clock/clock.d.ts.map +1 -1
  6. package/clock.js +40 -31
  7. package/core/a11y/focus.d.ts.map +1 -1
  8. package/core/base-elements.js +36 -36
  9. package/core/controllers/inert-controller.d.ts +3 -3
  10. package/core/controllers/inert-controller.d.ts.map +1 -1
  11. package/core/controllers.js +13 -12
  12. package/core/decorators/force-type.d.ts +1 -1
  13. package/core/decorators/force-type.d.ts.map +1 -1
  14. package/core/decorators.js +39 -40
  15. package/core/i18n/i18n.d.ts +1 -0
  16. package/core/i18n/i18n.d.ts.map +1 -1
  17. package/core/i18n.js +95 -89
  18. package/core/mixins/animation-complete-mixin.d.ts +13 -0
  19. package/core/mixins/animation-complete-mixin.d.ts.map +1 -0
  20. package/core/mixins.d.ts +1 -0
  21. package/core/mixins.d.ts.map +1 -1
  22. package/core/mixins.js +192 -152
  23. package/core/styles/core.scss +81 -0
  24. package/core/styles/mixins/link.scss +14 -0
  25. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +3 -0
  26. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +4 -1
  27. package/core.css +51 -1
  28. package/custom-elements.json +3542 -393
  29. package/date-input/date-input.d.ts +11 -3
  30. package/date-input/date-input.d.ts.map +1 -1
  31. package/date-input.js +44 -38
  32. package/datepicker/datepicker/datepicker.d.ts.map +1 -1
  33. package/datepicker/datepicker.js +12 -12
  34. package/development/button/common/button-common.d.ts +1 -2
  35. package/development/button/common/button-common.d.ts.map +1 -1
  36. package/development/button/common.js +26 -24
  37. package/development/clock/clock.d.ts +8 -0
  38. package/development/clock/clock.d.ts.map +1 -1
  39. package/development/clock.js +20 -2
  40. package/development/core/a11y/focus.d.ts.map +1 -1
  41. package/development/core/a11y.js +1 -1
  42. package/development/core/base-elements.js +6 -6
  43. package/development/core/controllers/inert-controller.d.ts +3 -3
  44. package/development/core/controllers/inert-controller.d.ts.map +1 -1
  45. package/development/core/controllers.js +6 -7
  46. package/development/core/decorators/force-type.d.ts +1 -1
  47. package/development/core/decorators/force-type.d.ts.map +1 -1
  48. package/development/core/decorators.js +5 -5
  49. package/development/core/i18n/i18n.d.ts +1 -0
  50. package/development/core/i18n/i18n.d.ts.map +1 -1
  51. package/development/core/i18n.js +8 -1
  52. package/development/core/mixins/animation-complete-mixin.d.ts +13 -0
  53. package/development/core/mixins/animation-complete-mixin.d.ts.map +1 -0
  54. package/development/core/mixins.d.ts +1 -0
  55. package/development/core/mixins.d.ts.map +1 -1
  56. package/development/core/mixins.js +50 -1
  57. package/development/date-input/date-input.d.ts +11 -3
  58. package/development/date-input/date-input.d.ts.map +1 -1
  59. package/development/date-input.js +26 -18
  60. package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
  61. package/development/datepicker/datepicker.js +2 -1
  62. package/development/dialog/dialog-title/dialog-title.d.ts +3 -1
  63. package/development/dialog/dialog-title/dialog-title.d.ts.map +1 -1
  64. package/development/dialog/dialog-title.js +7 -2
  65. package/development/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
  66. package/development/flip-card/flip-card-details.js +5 -3
  67. package/development/header/common.js +2 -2
  68. package/development/link/common.js +13 -1
  69. package/development/menu/menu/menu.d.ts.map +1 -1
  70. package/development/menu/menu.js +4 -1
  71. package/development/navigation/navigation/navigation.d.ts.map +1 -1
  72. package/development/navigation/navigation.js +4 -1
  73. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  74. package/development/overlay.js +4 -1
  75. package/development/sbb-tokens-CSAKTXUi.js +1 -1
  76. package/development/sidebar/common.d.ts +1 -0
  77. package/development/sidebar/common.d.ts.map +1 -0
  78. package/development/sidebar/common.js +114 -0
  79. package/development/sidebar/icon-sidebar/icon-sidebar.d.ts +23 -0
  80. package/development/sidebar/icon-sidebar/icon-sidebar.d.ts.map +1 -0
  81. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.d.ts +19 -0
  82. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.d.ts.map +1 -0
  83. package/development/sidebar/icon-sidebar-button.d.ts +2 -0
  84. package/development/sidebar/icon-sidebar-button.d.ts.map +1 -0
  85. package/development/sidebar/icon-sidebar-button.js +28 -0
  86. package/development/sidebar/icon-sidebar-container/icon-sidebar-container.d.ts +23 -0
  87. package/development/sidebar/icon-sidebar-container/icon-sidebar-container.d.ts.map +1 -0
  88. package/development/sidebar/icon-sidebar-container.d.ts +2 -0
  89. package/development/sidebar/icon-sidebar-container.d.ts.map +1 -0
  90. package/development/sidebar/icon-sidebar-container.js +45 -0
  91. package/development/sidebar/icon-sidebar-content/icon-sidebar-content.d.ts +17 -0
  92. package/development/sidebar/icon-sidebar-content/icon-sidebar-content.d.ts.map +1 -0
  93. package/development/sidebar/icon-sidebar-content.d.ts +2 -0
  94. package/development/sidebar/icon-sidebar-content.d.ts.map +1 -0
  95. package/development/sidebar/icon-sidebar-content.js +34 -0
  96. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.d.ts +19 -0
  97. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.d.ts.map +1 -0
  98. package/development/sidebar/icon-sidebar-link.d.ts +2 -0
  99. package/development/sidebar/icon-sidebar-link.d.ts.map +1 -0
  100. package/development/sidebar/icon-sidebar-link.js +28 -0
  101. package/development/sidebar/icon-sidebar.d.ts +2 -0
  102. package/development/sidebar/icon-sidebar.d.ts.map +1 -0
  103. package/development/sidebar/icon-sidebar.js +85 -0
  104. package/development/sidebar/sidebar/sidebar.d.ts +76 -0
  105. package/development/sidebar/sidebar/sidebar.d.ts.map +1 -0
  106. package/development/sidebar/sidebar-close-button/sidebar-close-button.d.ts +22 -0
  107. package/development/sidebar/sidebar-close-button/sidebar-close-button.d.ts.map +1 -0
  108. package/development/sidebar/sidebar-close-button.d.ts +2 -0
  109. package/development/sidebar/sidebar-close-button.d.ts.map +1 -0
  110. package/development/sidebar/sidebar-close-button.js +55 -0
  111. package/development/sidebar/sidebar-container/sidebar-container.d.ts +34 -0
  112. package/development/sidebar/sidebar-container/sidebar-container.d.ts.map +1 -0
  113. package/development/sidebar/sidebar-container.d.ts +2 -0
  114. package/development/sidebar/sidebar-container.d.ts.map +1 -0
  115. package/development/sidebar/sidebar-container.js +153 -0
  116. package/development/sidebar/sidebar-content/sidebar-content.d.ts +18 -0
  117. package/development/sidebar/sidebar-content/sidebar-content.d.ts.map +1 -0
  118. package/development/sidebar/sidebar-content.d.ts +2 -0
  119. package/development/sidebar/sidebar-content.d.ts.map +1 -0
  120. package/development/sidebar/sidebar-content.js +37 -0
  121. package/development/sidebar/sidebar-title/sidebar-title.d.ts +17 -0
  122. package/development/sidebar/sidebar-title/sidebar-title.d.ts.map +1 -0
  123. package/development/sidebar/sidebar-title.d.ts +2 -0
  124. package/development/sidebar/sidebar-title.d.ts.map +1 -0
  125. package/development/sidebar/sidebar-title.js +63 -0
  126. package/development/sidebar/sidebar.d.ts +2 -0
  127. package/development/sidebar/sidebar.d.ts.map +1 -0
  128. package/development/sidebar/sidebar.js +523 -0
  129. package/development/sidebar.d.ts +12 -0
  130. package/development/sidebar.d.ts.map +1 -0
  131. package/development/sidebar.js +12 -0
  132. package/development/stepper/step.js +19 -8
  133. package/development/time-input/time-input.d.ts +3 -2
  134. package/development/time-input/time-input.d.ts.map +1 -1
  135. package/development/time-input.js +19 -10
  136. package/development/title/title-base.d.ts +2 -4
  137. package/development/title/title-base.d.ts.map +1 -1
  138. package/development/title/title.d.ts +3 -1
  139. package/development/title/title.d.ts.map +1 -1
  140. package/development/title.js +8 -8
  141. package/dialog/dialog-title/dialog-title.d.ts +3 -1
  142. package/dialog/dialog-title/dialog-title.d.ts.map +1 -1
  143. package/dialog/dialog-title.js +16 -15
  144. package/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
  145. package/flip-card/flip-card-details.js +14 -13
  146. package/header/common.js +6 -6
  147. package/index.d.ts +20 -0
  148. package/index.js +20 -0
  149. package/link/common.js +12 -12
  150. package/menu/menu/menu.d.ts.map +1 -1
  151. package/menu/menu.js +1 -1
  152. package/navigation/navigation/navigation.d.ts.map +1 -1
  153. package/navigation/navigation.js +7 -7
  154. package/overlay/overlay-base-element.d.ts.map +1 -1
  155. package/overlay.js +1 -1
  156. package/package.json +61 -1
  157. package/sidebar/common.d.ts +1 -0
  158. package/sidebar/common.d.ts.map +1 -0
  159. package/sidebar/common.js +7 -0
  160. package/sidebar/icon-sidebar/icon-sidebar.d.ts +23 -0
  161. package/sidebar/icon-sidebar/icon-sidebar.d.ts.map +1 -0
  162. package/sidebar/icon-sidebar-button/icon-sidebar-button.d.ts +19 -0
  163. package/sidebar/icon-sidebar-button/icon-sidebar-button.d.ts.map +1 -0
  164. package/sidebar/icon-sidebar-button.d.ts +2 -0
  165. package/sidebar/icon-sidebar-button.d.ts.map +1 -0
  166. package/sidebar/icon-sidebar-button.js +20 -0
  167. package/sidebar/icon-sidebar-container/icon-sidebar-container.d.ts +23 -0
  168. package/sidebar/icon-sidebar-container/icon-sidebar-container.d.ts.map +1 -0
  169. package/sidebar/icon-sidebar-container.d.ts +2 -0
  170. package/sidebar/icon-sidebar-container.d.ts.map +1 -0
  171. package/sidebar/icon-sidebar-container.js +35 -0
  172. package/sidebar/icon-sidebar-content/icon-sidebar-content.d.ts +17 -0
  173. package/sidebar/icon-sidebar-content/icon-sidebar-content.d.ts.map +1 -0
  174. package/sidebar/icon-sidebar-content.d.ts +2 -0
  175. package/sidebar/icon-sidebar-content.d.ts.map +1 -0
  176. package/sidebar/icon-sidebar-content.js +23 -0
  177. package/sidebar/icon-sidebar-link/icon-sidebar-link.d.ts +19 -0
  178. package/sidebar/icon-sidebar-link/icon-sidebar-link.d.ts.map +1 -0
  179. package/sidebar/icon-sidebar-link.d.ts +2 -0
  180. package/sidebar/icon-sidebar-link.d.ts.map +1 -0
  181. package/sidebar/icon-sidebar-link.js +20 -0
  182. package/sidebar/icon-sidebar.d.ts +2 -0
  183. package/sidebar/icon-sidebar.d.ts.map +1 -0
  184. package/sidebar/icon-sidebar.js +47 -0
  185. package/sidebar/sidebar/sidebar.d.ts +76 -0
  186. package/sidebar/sidebar/sidebar.d.ts.map +1 -0
  187. package/sidebar/sidebar-close-button/sidebar-close-button.d.ts +22 -0
  188. package/sidebar/sidebar-close-button/sidebar-close-button.d.ts.map +1 -0
  189. package/sidebar/sidebar-close-button.d.ts +2 -0
  190. package/sidebar/sidebar-close-button.d.ts.map +1 -0
  191. package/sidebar/sidebar-close-button.js +29 -0
  192. package/sidebar/sidebar-container/sidebar-container.d.ts +34 -0
  193. package/sidebar/sidebar-container/sidebar-container.d.ts.map +1 -0
  194. package/sidebar/sidebar-container.d.ts +2 -0
  195. package/sidebar/sidebar-container.d.ts.map +1 -0
  196. package/sidebar/sidebar-container.js +78 -0
  197. package/sidebar/sidebar-content/sidebar-content.d.ts +18 -0
  198. package/sidebar/sidebar-content/sidebar-content.d.ts.map +1 -0
  199. package/sidebar/sidebar-content.d.ts +2 -0
  200. package/sidebar/sidebar-content.d.ts.map +1 -0
  201. package/sidebar/sidebar-content.js +23 -0
  202. package/sidebar/sidebar-title/sidebar-title.d.ts +17 -0
  203. package/sidebar/sidebar-title/sidebar-title.d.ts.map +1 -0
  204. package/sidebar/sidebar-title.d.ts +2 -0
  205. package/sidebar/sidebar-title.d.ts.map +1 -0
  206. package/sidebar/sidebar-title.js +37 -0
  207. package/sidebar/sidebar.d.ts +2 -0
  208. package/sidebar/sidebar.d.ts.map +1 -0
  209. package/sidebar/sidebar.js +214 -0
  210. package/sidebar.d.ts +12 -0
  211. package/sidebar.d.ts.map +1 -0
  212. package/sidebar.js +11 -0
  213. package/standard-theme.css +51 -1
  214. package/stepper/step.js +13 -13
  215. package/time-input/time-input.d.ts +3 -2
  216. package/time-input/time-input.d.ts.map +1 -1
  217. package/time-input.js +44 -36
  218. package/title/title-base.d.ts +2 -4
  219. package/title/title-base.d.ts.map +1 -1
  220. package/title/title.d.ts +3 -1
  221. package/title/title.d.ts.map +1 -1
  222. package/title.js +11 -11
@@ -1,13 +1,12 @@
1
1
  import { LitElement, CSSResultGroup, PropertyDeclaration } from 'lit';
2
2
  import { FormRestoreReason, FormRestoreState } from '../core/mixins.js';
3
+ import { SbbDatepickerElement } from '../datepicker.js';
3
4
  declare const SbbDateInputElement_base: import('../core/mixins.js').Constructor<import('../core/mixins.js').SbbFormAssociatedInputMixinType> & typeof LitElement;
4
5
  /**
5
6
  * Custom input for a date.
6
7
  */
7
8
  export declare class SbbDateInputElement<T = Date> extends SbbDateInputElement_base {
8
9
  static styles: CSSResultGroup;
9
- private _dateAdapter;
10
- private _placeholderMutable;
11
10
  /**
12
11
  * The value of the date input. Reflects the current text value
13
12
  * of this input.
@@ -22,7 +21,8 @@ export declare class SbbDateInputElement<T = Date> extends SbbDateInputElement_b
22
21
  accessor min: T | null;
23
22
  accessor max: T | null;
24
23
  /** A function used to filter out dates. */
25
- accessor dateFilter: (date: T | null) => boolean;
24
+ set dateFilter(value: (date: T | null) => boolean);
25
+ get dateFilter(): (date: T | null) => boolean;
26
26
  /**
27
27
  * How to format the displayed date.
28
28
  * `short`: Two letter abbreviation of the week day (e.g. Fr).
@@ -34,7 +34,15 @@ export declare class SbbDateInputElement<T = Date> extends SbbDateInputElement_b
34
34
  * parsing of the string value.
35
35
  */
36
36
  private _valueCache?;
37
+ private _dateAdapter;
38
+ private _placeholderMutable;
39
+ /**
40
+ * Gets the associated datepicker, if any.
41
+ * The sbb-date-input and the sbb-datepicker are assumed to be in the same parent container.
42
+ */
43
+ get datepicker(): SbbDatepickerElement<T> | null;
37
44
  constructor();
45
+ private _dateFilter;
38
46
  connectedCallback(): void;
39
47
  requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
40
48
  /**
@@ -1 +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"}
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;AAC3B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;;AAY7D;;GAEG;AACH,qBAEM,mBAAmB,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,wBAAuC;IACjF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;;;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,IACW,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,OAAO,EAKvD;IACD,IAAW,UAAU,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,OAAO,CAEnD;IAED;;;;OAIG;IACH,SACgB,YAAY,EAAE,OAAO,GAAG,MAAM,CAAW;IAEzD;;;OAGG;IACH,OAAO,CAAC,WAAW,CAAC,CAAqB;IACzC,OAAO,CAAC,YAAY,CAA4E;IAChG,OAAO,CAAC,mBAAmB,CAAS;IAEpC;;;OAGG;IACH,IAAW,UAAU,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAEtD;;IAOD,OAAO,CAAC,WAAW,CAA2C;IAE9C,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"}
package/date-input.js CHANGED
@@ -1,34 +1,33 @@
1
- var P = (a) => {
1
+ var z = (a) => {
2
2
  throw TypeError(a);
3
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}}`;
4
+ var M = (a, s, i) => s.has(a) || z("Cannot " + i);
5
+ var p = (a, s, i) => (M(a, s, "read from private field"), i ? i.call(a) : s.get(a)), f = (a, s, i) => s.has(a) ? z("Cannot add the same private member more than once") : s instanceof WeakSet ? s.add(a) : s.set(a, i), d = (a, s, i, o) => (M(a, s, "write to private field"), o ? o.call(a, i) : s.set(a, i), i);
6
+ import { __esDecorate as m, __runInitializers as n } from "tslib";
7
+ import { css as U, LitElement as j, isServer as q } from "lit";
8
+ import { customElement as L, property as _ } from "lit/decorators.js";
9
+ import { readConfig as G } from "./core/config.js";
10
+ import { defaultDateAdapter as R } from "./core/datetime.js";
11
+ import { forceType as v, DateOnlyType as D, dateConverter as O } from "./core/decorators.js";
12
+ import { i18nDatePickerPlaceholder as P, i18nDateInvalid as T, i18nDateMin as B, i18nDateMax as H } from "./core/i18n.js";
13
+ import { SbbFormAssociatedInputMixin as J } from "./core/mixins.js";
14
+ const K = U`: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
15
  Object.assign(ValidityState.prototype, {
16
16
  get sbbDateFilter() {
17
17
  return !1;
18
18
  }
19
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 {
20
+ let se = (() => {
21
+ var h, u, c, l;
22
+ let a = [L("sbb-date-input")], s, i = [], o, b = J(j), y = [], g, A, k = [], x = [], F, S = [], w = [], V, I, E = [], C = [];
23
+ return l = class extends b {
24
24
  constructor() {
25
25
  var e, t;
26
26
  super();
27
27
  f(this, h);
28
28
  f(this, u);
29
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 });
30
+ this._valueAsDate = n(this, y), d(this, h, n(this, k, null)), d(this, u, (n(this, x), n(this, S, null))), d(this, c, (n(this, w), n(this, E, "short"))), this._valueCache = n(this, C), this._dateAdapter = ((e = G().datetime) == null ? void 0 : e.dateAdapter) ?? R, this._placeholderMutable = !1, this._dateFilter = () => !0, (t = this.addEventListener) == null || t.call(this, "change", () => this._updateValueDateFormat(), { capture: !0 });
32
31
  }
33
32
  /**
34
33
  * The value of the date input. Reflects the current text value
@@ -37,7 +36,7 @@ let re = (() => {
37
36
  * formatted according to the current locale.
38
37
  */
39
38
  set value(e) {
40
- this._tryParseValue(e), !R && !this.matches(":focus") && this.valueAsDate !== null && (e = this._formatDate()), super.value = e;
39
+ this._tryParseValue(e), !q && !this.matches(":focus") && this.valueAsDate !== null && (e = this._formatDate()), super.value = e;
41
40
  }
42
41
  get value() {
43
42
  return super.value ?? "";
@@ -67,11 +66,11 @@ let re = (() => {
67
66
  d(this, u, e);
68
67
  }
69
68
  /** A function used to filter out dates. */
70
- get dateFilter() {
71
- return p(this, c);
72
- }
73
69
  set dateFilter(e) {
74
- d(this, c, e);
70
+ this._dateFilter = e, this.datepicker && (this.datepicker.dateFilter = e);
71
+ }
72
+ get dateFilter() {
73
+ return this._dateFilter;
75
74
  }
76
75
  /**
77
76
  * How to format the displayed date.
@@ -79,16 +78,23 @@ let re = (() => {
79
78
  * `none`: The weekday is not displayed.
80
79
  */
81
80
  get weekdayStyle() {
82
- return p(this, m);
81
+ return p(this, c);
83
82
  }
84
83
  set weekdayStyle(e) {
85
- d(this, m, e);
84
+ d(this, c, e);
85
+ }
86
+ /**
87
+ * Gets the associated datepicker, if any.
88
+ * The sbb-date-input and the sbb-datepicker are assumed to be in the same parent container.
89
+ */
90
+ get datepicker() {
91
+ return this.parentElement.querySelector("sbb-datepicker");
86
92
  }
87
93
  connectedCallback() {
88
- super.connectedCallback(), this.placeholder || (this._placeholderMutable = !0, this.placeholder = j[this.language.current]);
94
+ super.connectedCallback(), this.placeholder || (this._placeholderMutable = !0, this.placeholder = P[this.language.current]);
89
95
  }
90
96
  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();
97
+ super.requestUpdate(e, t, r), this.hasUpdated && !e ? (this._updateValueDateFormat(), this._placeholderMutable && (this.placeholder = P[this.language.current])) : e === "weekdayStyle" && this._updateValueDateFormat();
92
98
  }
93
99
  /**
94
100
  * Called when the browser is trying to restore element’s state to state in which case
@@ -124,26 +130,26 @@ let re = (() => {
124
130
  return super.shouldValidate(e) || ["valueAsDate", "min", "max"].includes(e);
125
131
  }
126
132
  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();
133
+ 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", B(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", H(this._dateAdapter.format(this.max, { weekdayStyle: "none" }))[this.language.current]) : this.dateFilter && !this.dateFilter(this.valueAsDate) ? this.setValidityFlag("sbbDateFilter", T[this.language.current]) : this._removeValidityErrors() : this.setValidityFlag("badInput", T[this.language.current]) : this._removeValidityErrors();
128
134
  }
129
135
  _removeValidityErrors() {
130
136
  ["badInput", "rangeUnderflow", "rangeOverflow", "sbbDateFilter"].forEach((e) => this.removeValidityFlag(e));
131
137
  }
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) => {
138
+ }, h = new WeakMap(), u = new WeakMap(), c = new WeakMap(), o = l, (() => {
139
+ const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(b[Symbol.metadata] ?? null) : void 0;
140
+ g = [v(), _({ attribute: !1, type: D })], A = [v(), _({ converter: O, reflect: !0, type: D })], F = [v(), _({ converter: O, reflect: !0, type: D })], V = [_({ attribute: !1 })], I = [_({ attribute: "weekday-style" })], m(l, null, g, { kind: "setter", name: "valueAsDate", static: !1, private: !1, access: { has: (t) => "valueAsDate" in t, set: (t, r) => {
135
141
  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) => {
142
+ } }, metadata: e }, null, y), m(l, null, A, { kind: "accessor", name: "min", static: !1, private: !1, access: { has: (t) => "min" in t, get: (t) => t.min, set: (t, r) => {
137
143
  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) => {
144
+ } }, metadata: e }, k, x), m(l, null, F, { kind: "accessor", name: "max", static: !1, private: !1, access: { has: (t) => "max" in t, get: (t) => t.max, set: (t, r) => {
139
145
  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) => {
146
+ } }, metadata: e }, S, w), m(l, null, V, { kind: "setter", name: "dateFilter", static: !1, private: !1, access: { has: (t) => "dateFilter" in t, set: (t, r) => {
141
147
  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) => {
148
+ } }, metadata: e }, null, y), m(l, null, I, { kind: "accessor", name: "weekdayStyle", static: !1, private: !1, access: { has: (t) => "weekdayStyle" in t, get: (t) => t.weekdayStyle, set: (t, r) => {
143
149
  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;
150
+ } }, metadata: e }, E, C), m(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 });
151
+ })(), l.styles = K, n(o, i), o;
146
152
  })();
147
153
  export {
148
- re as SbbDateInputElement
154
+ se as SbbDateInputElement
149
155
  };
@@ -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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"}
@@ -2,7 +2,7 @@ var T = (i) => {
2
2
  throw TypeError(i);
3
3
  };
4
4
  var L = (i, n, r) => n.has(i) || T("Cannot " + r);
5
- var D = (i, n, r) => (L(i, n, "read from private field"), r ? r.call(i) : n.get(i)), g = (i, n, r) => n.has(i) ? T("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(i) : n.set(i, r), o = (i, n, r, d) => (L(i, n, "write to private field"), d ? d.call(i, r) : n.set(i, r), r);
5
+ var D = (i, n, r) => (L(i, n, "read from private field"), r ? r.call(i) : n.get(i)), g = (i, n, r) => n.has(i) ? T("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(i) : n.set(i, r), p = (i, n, r, d) => (L(i, n, "write to private field"), d ? d.call(i, r) : n.set(i, r), r);
6
6
  import { __esDecorate as h, __runInitializers as u } from "tslib";
7
7
  import { css as j, LitElement as $, isServer as H, html as B } from "lit";
8
8
  import { customElement as G, property as b, state as J } from "lit/decorators.js";
@@ -35,7 +35,7 @@ let Et = (() => {
35
35
  g(this, m);
36
36
  g(this, v);
37
37
  g(this, f);
38
- o(this, m, (u(this, A), u(this, k, !1))), this._dateFilter = u(this, I), o(this, v, u(this, U, null)), this._now = u(this, z), o(this, f, u(this, P, null)), this._change = (u(this, S), new w(this, _.events.change, {
38
+ p(this, m, (u(this, A), u(this, k, !1))), this._dateFilter = u(this, I), p(this, v, u(this, U, null)), this._now = u(this, z), p(this, f, u(this, P, null)), this._change = (u(this, S), new w(this, _.events.change, {
39
39
  bubbles: !0
40
40
  })), this._inputUpdated = new w(this, _.events.inputUpdated, { bubbles: !0, cancelable: !0 }), this._datePickerUpdated = new w(this, _.events.datePickerUpdated, {
41
41
  bubbles: !0,
@@ -53,7 +53,7 @@ let Et = (() => {
53
53
  return D(this, m);
54
54
  }
55
55
  set wide(t) {
56
- o(this, m, t);
56
+ p(this, m, t);
57
57
  }
58
58
  /**
59
59
  * A function used to filter out dates.
@@ -75,7 +75,7 @@ let Et = (() => {
75
75
  return D(this, v);
76
76
  }
77
77
  set input(t) {
78
- o(this, v, t);
78
+ p(this, v, t);
79
79
  }
80
80
  /**
81
81
  * A configured date which acts as the current date instead of the real current date.
@@ -109,7 +109,7 @@ let Et = (() => {
109
109
  return D(this, f);
110
110
  }
111
111
  set _inputElement(t) {
112
- o(this, f, t);
112
+ p(this, f, t);
113
113
  }
114
114
  connectedCallback() {
115
115
  this.id || (this.id = `sbb-datepicker-${++st}`), super.connectedCallback(), this._attachInput();
@@ -118,7 +118,7 @@ let Et = (() => {
118
118
  super.requestUpdate(t, e, a), this.hasUpdated && !t && this.inputElement && (this._inputElementPlaceholderMutable && (this.inputElement.placeholder = q[this._language.current]), this.valueAsDate && (this.inputElement.value = this._dateAdapter.format(this.valueAsDate)));
119
119
  }
120
120
  willUpdate(t) {
121
- super.willUpdate(t), t.has("input") && this._attachInput(), (t.has("wide") || t.has("dateFilter") || t.has("now")) && this._datePickerUpdated.emit(), t.has("valueAsDate") && this._setAriaLiveMessage();
121
+ super.willUpdate(t), t.has("input") && this._attachInput(), (t.has("wide") || t.has("dateFilter") || t.has("now")) && (this._associationController.updateControls(), this._datePickerUpdated.emit()), t.has("valueAsDate") && this._setAriaLiveMessage();
122
122
  }
123
123
  disconnectedCallback() {
124
124
  var t, e;
@@ -135,14 +135,14 @@ let Et = (() => {
135
135
  return !!this._now;
136
136
  }
137
137
  _attachInput() {
138
- var a, s, p, E;
138
+ var a, s, o, E;
139
139
  const t = Y(this, this.input, "input,sbb-date-input");
140
140
  if (this.inputElement === t)
141
141
  return;
142
142
  this.inputElement && ((a = this._datePickerController) == null || a.abort(), (s = this._inputObserver) == null || s.disconnect());
143
143
  const e = !c(t);
144
144
  if (this._inputElement = t, t) {
145
- this._datePickerController = new AbortController(), (p = this._inputObserver) == null || p.observe(t, {
145
+ this._datePickerController = new AbortController(), (o = this._inputObserver) == null || o.observe(t, {
146
146
  attributeFilter: ["disabled", "readonly", "min", "max", "value"]
147
147
  }), e && (this._inputElementPlaceholderMutable = !t.placeholder, t.type = "text", this._inputElementPlaceholderMutable && (t.placeholder = q[this._language.current]));
148
148
  const N = { signal: this._datePickerController.signal };
@@ -152,8 +152,8 @@ let Et = (() => {
152
152
  }
153
153
  }
154
154
  _emitInputUpdated() {
155
- const { disabled: t, readOnly: e, min: a, max: s } = this.inputElement ?? {}, p = a && typeof a != "string" ? this._dateAdapter.toIso8601(a) : a, E = s && typeof s != "string" ? this._dateAdapter.toIso8601(s) : s;
156
- this._inputUpdated.emit({ disabled: t, readonly: e, min: p, max: E });
155
+ const { disabled: t, readOnly: e, min: a, max: s } = this.inputElement ?? {}, o = a && typeof a != "string" ? this._dateAdapter.toIso8601(a) : a, E = s && typeof s != "string" ? this._dateAdapter.toIso8601(s) : s;
156
+ this._inputUpdated.emit({ disabled: t, readonly: e, min: o, max: E });
157
157
  }
158
158
  _handleInputChange() {
159
159
  var t;
@@ -229,11 +229,11 @@ let Et = (() => {
229
229
  * and `min` and `max` parameters (e.g. from the self-named input's attributes).
230
230
  */
231
231
  _isDateAvailable() {
232
- var a, s, p;
232
+ var a, s, o;
233
233
  if (!this.valueAsDate)
234
234
  return !1;
235
235
  const t = this._dateAdapter.deserialize((a = this.inputElement) == null ? void 0 : a.min), e = this._dateAdapter.deserialize((s = this.inputElement) == null ? void 0 : s.max);
236
- return this._dateAdapter.isValid(t) && this._dateAdapter.compareDate(this.valueAsDate, t) < 0 || this._dateAdapter.isValid(e) && this._dateAdapter.compareDate(this.valueAsDate, e) > 0 ? !1 : ((p = this.dateFilter) == null ? void 0 : p.call(this, this.valueAsDate)) ?? !0;
236
+ return this._dateAdapter.isValid(t) && this._dateAdapter.compareDate(this.valueAsDate, t) < 0 || this._dateAdapter.isValid(e) && this._dateAdapter.compareDate(this.valueAsDate, e) > 0 ? !1 : ((o = this.dateFilter) == null ? void 0 : o.call(this, this.valueAsDate)) ?? !0;
237
237
  }
238
238
  }, m = new WeakMap(), v = new WeakMap(), f = new WeakMap(), d = l, (() => {
239
239
  const t = typeof Symbol == "function" && Symbol.metadata ? Object.create(y[Symbol.metadata] ?? null) : void 0;
@@ -3,10 +3,9 @@ import { AbstractConstructor, SbbDisabledMixinType, SbbNegativeMixinType } from
3
3
  import { SbbIconNameMixinType } from '../../icon.js';
4
4
  export type SbbButtonCommonElement = SbbButtonCommonElementMixinType & SbbActionBaseElement;
5
5
  export type SbbButtonSize = 'l' | 'm' | 's';
6
- export declare class SbbButtonCommonElementMixinType implements SbbNegativeMixinType, Partial<SbbDisabledMixinType>, Partial<SbbIconNameMixinType> {
6
+ export declare class SbbButtonCommonElementMixinType extends SbbIconNameMixinType implements SbbNegativeMixinType, Partial<SbbDisabledMixinType> {
7
7
  accessor size: SbbButtonSize;
8
8
  accessor disabled: boolean;
9
- accessor iconName: string;
10
9
  accessor negative: boolean;
11
10
  }
12
11
  export declare const SbbButtonCommonElementMixin: <T extends AbstractConstructor<SbbActionBaseElement>>(superClass: T) => AbstractConstructor<SbbButtonCommonElementMixinType> & T;
@@ -1 +1 @@
1
- {"version":3,"file":"button-common.d.ts","sourceRoot":"","sources":["../../../../../src/elements/button/common/button-common.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGxE,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE5E,MAAM,MAAM,sBAAsB,GAAG,+BAA+B,GAAG,oBAAoB,CAAC;AAE5F,MAAM,MAAM,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,+BACnB,YAAW,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC;IAE7F,SAAgB,IAAI,EAAE,aAAa,CAAC;IACpC,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAClC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,QAAQ,EAAE,OAAO,CAAC;CACnC;AAGD,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,mBAAmB,CAAC,oBAAoB,CAAC,EAC7F,YAAY,CAAC,KACZ,mBAAmB,CAAC,+BAA+B,CAAC,GAAG,CA0BzD,CAAC"}
1
+ {"version":3,"file":"button-common.d.ts","sourceRoot":"","sources":["../../../../../src/elements/button/common/button-common.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGxE,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE5E,MAAM,MAAM,sBAAsB,GAAG,+BAA+B,GAAG,oBAAoB,CAAC;AAE5F,MAAM,MAAM,aAAa,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,+BACnB,SAAQ,oBACR,YAAW,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC;IAE9D,SAAgB,IAAI,EAAE,aAAa,CAAC;IACpC,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAClC,SAAgB,QAAQ,EAAE,OAAO,CAAC;CACnC;AAGD,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,mBAAmB,CAAC,oBAAoB,CAAC,EAC7F,YAAY,CAAC,KACZ,mBAAmB,CAAC,+BAA+B,CAAC,GAAG,CA0BzD,CAAC"}
@@ -297,17 +297,17 @@ const primaryButton = css`:host {
297
297
  }
298
298
 
299
299
  :host([negative]) {
300
- --sbb-button-color-active-background: var(--sbb-color-cloud);
301
- --sbb-button-color-active-border: var(--sbb-color-cloud);
302
- --sbb-button-color-active-text: var(--sbb-color-red150);
303
- --sbb-button-color-default-background: var(--sbb-color-white);
304
- --sbb-button-color-default-border: var(--sbb-color-white);
305
- --sbb-button-color-default-text: var(--sbb-color-red);
306
- --sbb-button-color-hover-background: var(--sbb-color-milk);
307
- --sbb-button-color-hover-border: var(--sbb-color-milk);
308
- --sbb-button-color-hover-text: var(--sbb-color-red125);
309
- --sbb-button-shadow-1-color: var(--sbb-color-smoke-alpha-20);
310
- --sbb-button-shadow-2-color: var(--sbb-color-metal-alpha-20);
300
+ --sbb-button-color-active-background: var(--sbb-color-red150);
301
+ --sbb-button-color-active-border: var(--sbb-color-red150);
302
+ --sbb-button-color-active-text: var(--sbb-color-cloud);
303
+ --sbb-button-color-default-background: var(--sbb-color-red);
304
+ --sbb-button-color-default-border: var(--sbb-color-red);
305
+ --sbb-button-color-default-text: var(--sbb-color-white);
306
+ --sbb-button-color-hover-background: var(--sbb-color-red125);
307
+ --sbb-button-color-hover-border: var(--sbb-color-red125);
308
+ --sbb-button-color-hover-text: var(--sbb-color-milk);
309
+ --sbb-button-shadow-1-color: var(--sbb-color-red-alpha-60);
310
+ --sbb-button-shadow-2-color: var(--sbb-color-red125-alpha-60);
311
311
  }
312
312
 
313
313
  :host(:not([disabled], :disabled, [disabled-interactive], :active, [data-active])) {
@@ -329,18 +329,20 @@ const secondaryButton = css`:host {
329
329
  }
330
330
 
331
331
  :host([negative]) {
332
- --sbb-button-color-active-background: transparent;
333
- --sbb-button-color-active-border: var(--sbb-color-cloud);
334
- --sbb-button-color-active-text: var(--sbb-color-cloud);
335
- --sbb-button-color-default-background: transparent;
336
- --sbb-button-color-default-border: var(--sbb-color-white);
332
+ --sbb-button-color-active-background: var(--sbb-color-charcoal);
333
+ --sbb-button-color-active-border: var(--sbb-color-iron);
334
+ --sbb-button-color-active-text: var(--sbb-color-graphite);
335
+ --sbb-button-color-default-background: var(--sbb-color-midnight);
336
+ --sbb-button-color-default-border: var(--sbb-color-iron);
337
337
  --sbb-button-color-default-text: var(--sbb-color-white);
338
- --sbb-button-color-hover-background: transparent;
339
- --sbb-button-color-hover-border: var(--sbb-color-milk);
340
- --sbb-button-color-hover-text: var(--sbb-color-milk);
338
+ --sbb-button-color-hover-background: var(--sbb-color-midnight);
339
+ --sbb-button-color-hover-border: var(--sbb-color-iron);
340
+ --sbb-button-color-hover-text: var(--sbb-color-cloud);
341
+ --sbb-button-shadow-1-color: var(--sbb-color-black-alpha-30);
342
+ --sbb-button-shadow-2-color: var(--sbb-color-black-alpha-30);
341
343
  }
342
344
 
343
- :host(:not([disabled], :disabled, [disabled-interactive], [negative], :active, [data-active])) {
345
+ :host(:not([disabled], :disabled, [disabled-interactive], :active, [data-active])) {
344
346
  --sbb-button-box-shadow: var(--sbb-button-box-shadow-definition);
345
347
  }`;
346
348
  const accentButton = css`:host {
@@ -377,13 +379,13 @@ const accentButton = css`:host {
377
379
  const transparentButton = css`:host {
378
380
  --sbb-button-color-active-background: var(--sbb-color-cloud);
379
381
  --sbb-button-color-active-border: var(--sbb-color-cloud);
380
- --sbb-button-color-active-text: var(--sbb-color-black);
382
+ --sbb-button-color-active-text: var(--sbb-color-midnight);
381
383
  --sbb-button-color-default-background: transparent;
382
384
  --sbb-button-color-default-border: transparent;
383
- --sbb-button-color-default-text: var(--sbb-color-black);
385
+ --sbb-button-color-default-text: var(--sbb-color-midnight);
384
386
  --sbb-button-color-hover-background: var(--sbb-color-milk);
385
387
  --sbb-button-color-hover-border: var(--sbb-color-milk);
386
- --sbb-button-color-hover-text: var(--sbb-color-black);
388
+ --sbb-button-color-hover-text: var(--sbb-color-midnight);
387
389
  }
388
390
 
389
391
  :host([negative]) {
@@ -405,4 +407,4 @@ export {
405
407
  secondaryButton as buttonSecondaryStyle,
406
408
  transparentButton as buttonTransparentStyle
407
409
  };
408
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvYnV0dG9uL2NvbW1vbi9idXR0b24tY29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBY3Rpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcywgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzTGVhbiB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgQWJzdHJhY3RDb25zdHJ1Y3RvcixcbiAgU2JiRGlzYWJsZWRNaXhpblR5cGUsXG4gIFNiYk5lZ2F0aXZlTWl4aW5UeXBlLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBTYmJOZWdhdGl2ZU1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHsgU2JiSWNvbk5hbWVNaXhpbiwgdHlwZSBTYmJJY29uTmFtZU1peGluVHlwZSB9IGZyb20gJy4uLy4uL2ljb24uanMnO1xuXG5leHBvcnQgdHlwZSBTYmJCdXR0b25Db21tb25FbGVtZW50ID0gU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluVHlwZSAmIFNiYkFjdGlvbkJhc2VFbGVtZW50O1xuXG5leHBvcnQgdHlwZSBTYmJCdXR0b25TaXplID0gJ2wnIHwgJ20nIHwgJ3MnO1xuXG5leHBvcnQgZGVjbGFyZSBjbGFzcyBTYmJCdXR0b25Db21tb25FbGVtZW50TWl4aW5UeXBlXG4gIGltcGxlbWVudHMgU2JiTmVnYXRpdmVNaXhpblR5cGUsIFBhcnRpYWw8U2JiRGlzYWJsZWRNaXhpblR5cGU+LCBQYXJ0aWFsPFNiYkljb25OYW1lTWl4aW5UeXBlPlxue1xuICBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogU2JiQnV0dG9uU2l6ZTtcbiAgcHVibGljIGFjY2Vzc29yIGRpc2FibGVkOiBib29sZWFuO1xuICBwdWJsaWMgYWNjZXNzb3IgaWNvbk5hbWU6IHN0cmluZztcbiAgcHVibGljIGFjY2Vzc29yIG5lZ2F0aXZlOiBib29sZWFuO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluID0gPFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkFjdGlvbkJhc2VFbGVtZW50Pj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpblR5cGU+ICYgVCA9PiB7XG4gIEBob3N0QXR0cmlidXRlcyh7XG4gICAgJ2RhdGEtc2JiLWJ1dHRvbic6ICcnLFxuICB9KVxuICBAc2xvdFN0YXRlKClcbiAgYWJzdHJhY3QgY2xhc3MgU2JiQnV0dG9uQ29tbW9uRWxlbWVudENsYXNzXG4gICAgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluKFNiYkljb25OYW1lTWl4aW4oc3VwZXJDbGFzcykpXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpblR5cGU+XG4gIHtcbiAgICAvKipcbiAgICAgKiBTaXplIHZhcmlhbnQsIGVpdGhlciBsLCBtIG9yIHMuXG4gICAgICogQGRlZmF1bHQgJ2wnIC8gJ3MnIChsZWFuKVxuICAgICAqL1xuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYkJ1dHRvblNpemUgPSBpc0xlYW4oKSA/ICdzJyA6ICdsJztcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgJHtzdXBlci5yZW5kZXJJY29uU2xvdCgpfVxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1idXR0b25fX2xhYmVsXCI+XG4gICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICA8L3NwYW4+XG4gICAgICBgO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiQnV0dG9uQ29tbW9uRWxlbWVudENsYXNzIGFzIHVua25vd24gYXMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJCdXR0b25Db21tb25FbGVtZW50TWl4aW5UeXBlPiAmXG4gICAgVDtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBNkJhLE1BQUEsOEJBQThCLENBQ3pDLGVBQzREO01BSzdDLCtCQUEyQixNQUFBOztBQUp6QyxRQUFBLG1CQUFBLENBQUEsZUFBZTtBQUFBLE1BQ2QsbUJBQW1CO0FBQUEsSUFBQSxDQUNwQixHQUNBLFVBQUEsQ0FBVzs7OztBQUVGLFFBQUEsY0FBQSxpQkFBaUIsaUJBQWlCLFVBQVUsQ0FBQzs7OztBQUFyRCxJQUFBLG1CQUFRLFlBQThDO0FBQUE7O0FBT3pCLG1EQUFzQyxrQkFBQSxNQUFBLG9CQUFBLE9BQVEsSUFBRyxNQUFNLEdBQUc7Ozs7Ozs7TUFBMUQsSUFBZ0IsT0FBMkM7QUFBQSxlQUFBLG1CQUFBO0FBQUEsTUFBQTtBQUFBLE1BQTNELElBQWdCLEtBQTJDLE9BQUE7QUFBQSwyQkFBQSx3QkFBQTtBQUFBLE1BQUE7QUFBQSxNQUVyRSxpQkFBYztBQUN4QixlQUFBO0FBQUEsVUFDSCxNQUFNLGVBQWdCLENBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BQUE7QUFBQSxPQUpDOztBQUE1Qix5QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQU0sQ0FBQSxDQUFDO0FBQWlCLG1CQUFBLElBQUEsTUFBQSxrQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFFBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsVUFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsTUFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsWUFBQSxPQUEyQztBQUFBLFdBQUEsVUFBQSxhQUFBLG9CQUFBLHVCQUFBO0FBUjFGLG1CQWtCQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBbEJjLHdCQUEyQixZQUFBLHVCQUFBO0FBQUEsSUFBQSxNQUN4Qzs7O0FBa0JLLFNBQUE7QUFFVDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9
410
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvYnV0dG9uL2NvbW1vbi9idXR0b24tY29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBY3Rpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcywgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzTGVhbiB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgQWJzdHJhY3RDb25zdHJ1Y3RvcixcbiAgU2JiRGlzYWJsZWRNaXhpblR5cGUsXG4gIFNiYk5lZ2F0aXZlTWl4aW5UeXBlLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBTYmJOZWdhdGl2ZU1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHsgU2JiSWNvbk5hbWVNaXhpbiwgdHlwZSBTYmJJY29uTmFtZU1peGluVHlwZSB9IGZyb20gJy4uLy4uL2ljb24uanMnO1xuXG5leHBvcnQgdHlwZSBTYmJCdXR0b25Db21tb25FbGVtZW50ID0gU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluVHlwZSAmIFNiYkFjdGlvbkJhc2VFbGVtZW50O1xuXG5leHBvcnQgdHlwZSBTYmJCdXR0b25TaXplID0gJ2wnIHwgJ20nIHwgJ3MnO1xuXG5leHBvcnQgZGVjbGFyZSBjbGFzcyBTYmJCdXR0b25Db21tb25FbGVtZW50TWl4aW5UeXBlXG4gIGV4dGVuZHMgU2JiSWNvbk5hbWVNaXhpblR5cGVcbiAgaW1wbGVtZW50cyBTYmJOZWdhdGl2ZU1peGluVHlwZSwgUGFydGlhbDxTYmJEaXNhYmxlZE1peGluVHlwZT5cbntcbiAgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYkJ1dHRvblNpemU7XG4gIHB1YmxpYyBhY2Nlc3NvciBkaXNhYmxlZDogYm9vbGVhbjtcbiAgcHVibGljIGFjY2Vzc29yIG5lZ2F0aXZlOiBib29sZWFuO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluID0gPFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkFjdGlvbkJhc2VFbGVtZW50Pj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpblR5cGU+ICYgVCA9PiB7XG4gIEBob3N0QXR0cmlidXRlcyh7XG4gICAgJ2RhdGEtc2JiLWJ1dHRvbic6ICcnLFxuICB9KVxuICBAc2xvdFN0YXRlKClcbiAgYWJzdHJhY3QgY2xhc3MgU2JiQnV0dG9uQ29tbW9uRWxlbWVudENsYXNzXG4gICAgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluKFNiYkljb25OYW1lTWl4aW4oc3VwZXJDbGFzcykpXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpblR5cGU+XG4gIHtcbiAgICAvKipcbiAgICAgKiBTaXplIHZhcmlhbnQsIGVpdGhlciBsLCBtIG9yIHMuXG4gICAgICogQGRlZmF1bHQgJ2wnIC8gJ3MnIChsZWFuKVxuICAgICAqL1xuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYkJ1dHRvblNpemUgPSBpc0xlYW4oKSA/ICdzJyA6ICdsJztcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgJHtzdXBlci5yZW5kZXJJY29uU2xvdCgpfVxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1idXR0b25fX2xhYmVsXCI+XG4gICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICA8L3NwYW4+XG4gICAgICBgO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiQnV0dG9uQ29tbW9uRWxlbWVudENsYXNzIGFzIHVua25vd24gYXMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJCdXR0b25Db21tb25FbGVtZW50TWl4aW5UeXBlPiAmXG4gICAgVDtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBNkJhLE1BQUEsOEJBQThCLENBQ3pDLGVBQzREO01BSzdDLCtCQUEyQixNQUFBOztBQUp6QyxRQUFBLG1CQUFBLENBQUEsZUFBZTtBQUFBLE1BQ2QsbUJBQW1CO0FBQUEsSUFBQSxDQUNwQixHQUNBLFVBQUEsQ0FBVzs7OztBQUVGLFFBQUEsY0FBQSxpQkFBaUIsaUJBQWlCLFVBQVUsQ0FBQzs7OztBQUFyRCxJQUFBLG1CQUFRLFlBQThDO0FBQUE7O0FBT3pCLG1EQUFzQyxrQkFBQSxNQUFBLG9CQUFBLE9BQVEsSUFBRyxNQUFNLEdBQUc7Ozs7Ozs7TUFBMUQsSUFBZ0IsT0FBMkM7QUFBQSxlQUFBLG1CQUFBO0FBQUEsTUFBQTtBQUFBLE1BQTNELElBQWdCLEtBQTJDLE9BQUE7QUFBQSwyQkFBQSx3QkFBQTtBQUFBLE1BQUE7QUFBQSxNQUVyRSxpQkFBYztBQUN4QixlQUFBO0FBQUEsVUFDSCxNQUFNLGVBQWdCLENBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BQUE7QUFBQSxPQUpDOztBQUE1Qix5QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQU0sQ0FBQSxDQUFDO0FBQWlCLG1CQUFBLElBQUEsTUFBQSxrQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFFBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsVUFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsTUFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsWUFBQSxPQUEyQztBQUFBLFdBQUEsVUFBQSxhQUFBLG9CQUFBLHVCQUFBO0FBUjFGLG1CQWtCQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBbEJjLHdCQUEyQixZQUFBLHVCQUFBO0FBQUEsSUFBQSxNQUN4Qzs7O0FBa0JLLFNBQUE7QUFFVDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7In0=
@@ -10,6 +10,8 @@ export declare class SbbClockElement extends LitElement {
10
10
  * @param value HH:MM:ss
11
11
  */
12
12
  accessor now: SbbTime | null;
13
+ /** Whether the clock is ticking or not */
14
+ private _state;
13
15
  /** Reference to the hour hand. */
14
16
  private _clockHandHours;
15
17
  /** Reference to the minute hand. */
@@ -24,10 +26,12 @@ export declare class SbbClockElement extends LitElement {
24
26
  private _seconds;
25
27
  /** Move the minutes hand every minute. */
26
28
  private _handMovement?;
29
+ private _resetIntervalId?;
27
30
  /** Callback function for hours hand. */
28
31
  private _moveHoursHandFn;
29
32
  /** Callback function for minutes hand. */
30
33
  private _moveMinutesHandFn;
34
+ connectedCallback(): void;
31
35
  protected willUpdate(changedProperties: PropertyValues<this>): void;
32
36
  protected firstUpdated(changedProperties: PropertyValues<this>): Promise<void>;
33
37
  disconnectedCallback(): void;
@@ -37,6 +41,10 @@ export declare class SbbClockElement extends LitElement {
37
41
  private _startClock;
38
42
  /** Stops the clock by removing all the animations. */
39
43
  private _stopClock;
44
+ /**
45
+ * As a fallback measure to prevent de-sync, reset the clock to the system time.
46
+ */
47
+ private _resetClock;
40
48
  /** Set the starting position for the three hands on the clock face. */
41
49
  private _setHandsStartingPosition;
42
50
  /** Given the current date, calculates the hh/mm/ss values and the hh/mm/ss left to the next midnight. */
@@ -1 +1 @@
1
- {"version":3,"file":"clock.d.ts","sourceRoot":"","sources":["../../../../src/elements/clock/clock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAE,MAAM,KAAK,CAAC;AAIjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AA2CrD;;GAEG;AACH,qBAEM,eAAgB,SAAQ,UAAU;IACtC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;OAGG;IACH,SAA4B,GAAG,EAAE,OAAO,GAAG,IAAI,CAAQ;IAEvD,kCAAkC;IAClC,OAAO,CAAC,eAAe,CAAe;IAEtC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAAU;IAExB,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,0CAA0C;IAC1C,OAAO,CAAC,aAAa,CAAC,CAAiC;IAEvD,wCAAwC;IACxC,OAAO,CAAC,gBAAgB,CAAqC;IAE7D,0CAA0C;IAC1C,OAAO,CAAC,kBAAkB,CAAuC;cAE9C,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAQnD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7E,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,2BAA2B,CAMjC;YAEY,sBAAsB;IAUpC,6FAA6F;YAC/E,WAAW;IAsBzB,sDAAsD;YACxC,UAAU;IAcxB,uEAAuE;IACvE,OAAO,CAAC,yBAAyB;IA4CjC,yGAAyG;IACzG,OAAO,CAAC,kBAAkB;IAW1B,sDAAsD;IACtD,OAAO,CAAC,eAAe;IAOvB,6CAA6C;IAC7C,OAAO,CAAC,cAAc;IAYtB,+CAA+C;IAC/C,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,sBAAsB;IAK9B;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,6BAA6B;cAOlB,MAAM,IAAI,cAAc;CA4B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
1
+ {"version":3,"file":"clock.d.ts","sourceRoot":"","sources":["../../../../src/elements/clock/clock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAE,MAAM,KAAK,CAAC;AAIjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AA8CrD;;GAEG;AACH,qBAEM,eAAgB,SAAQ,UAAU;IACtC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;OAGG;IACH,SAA4B,GAAG,EAAE,OAAO,GAAG,IAAI,CAAQ;IAEvD,0CAA0C;IAC1C,OAAO,CAAC,MAAM,CAAkC;IAEhD,kCAAkC;IAClC,OAAO,CAAC,eAAe,CAAe;IAEtC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAAU;IAExB,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,0CAA0C;IAC1C,OAAO,CAAC,aAAa,CAAC,CAAiC;IAEvD,OAAO,CAAC,gBAAgB,CAAC,CAAiC;IAE1D,wCAAwC;IACxC,OAAO,CAAC,gBAAgB,CAAqC;IAE7D,0CAA0C;IAC1C,OAAO,CAAC,kBAAkB,CAAuC;IAEjD,iBAAiB,IAAI,IAAI;cAMtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAQnD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7E,oBAAoB,IAAI,IAAI;IAM5C,OAAO,CAAC,2BAA2B,CAMjC;YAEY,sBAAsB;IAUpC,6FAA6F;YAC/E,WAAW;IAuBzB,sDAAsD;YACxC,UAAU;IAexB;;OAEG;YACW,WAAW;IAQzB,uEAAuE;IACvE,OAAO,CAAC,yBAAyB;IA4CjC,yGAAyG;IACzG,OAAO,CAAC,kBAAkB;IAW1B,sDAAsD;IACtD,OAAO,CAAC,eAAe;IAOvB,6CAA6C;IAC7C,OAAO,CAAC,cAAc;IAYtB,+CAA+C;IAC/C,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,sBAAsB;IAK9B;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,6BAA6B;cAOlB,MAAM,IAAI,cAAc;CA4B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}