@sbb-esta/lyne-elements 0.52.0 → 0.52.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
  2. package/breadcrumb/breadcrumb-group.js +32 -31
  3. package/core/base-elements.js +1 -2
  4. package/core/datetime.js +2 -4
  5. package/core/overlay/overlay.d.ts.map +1 -1
  6. package/core/overlay.js +55 -50
  7. package/core/testing/event-spy.d.ts +1 -1
  8. package/core/testing/wait-for-image-ready.d.ts +4 -0
  9. package/core/testing/wait-for-image-ready.d.ts.map +1 -0
  10. package/core/testing.d.ts +1 -0
  11. package/core/testing.d.ts.map +1 -1
  12. package/core/testing.js +28 -17
  13. package/custom-elements.json +70 -4
  14. package/development/accordion.js +2 -3
  15. package/development/action-group.js +2 -3
  16. package/development/alert/alert-group.js +2 -3
  17. package/development/alert/alert.js +2 -3
  18. package/development/autocomplete.js +2 -3
  19. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
  20. package/development/breadcrumb/breadcrumb-group.js +5 -5
  21. package/development/breadcrumb/breadcrumb.js +2 -3
  22. package/development/button/button-link.js +2 -3
  23. package/development/button/button-static.js +2 -3
  24. package/development/button/button.js +2 -3
  25. package/development/button/common.js +2 -3
  26. package/development/button/mini-button.js +2 -3
  27. package/development/button/secondary-button-link.js +2 -3
  28. package/development/button/secondary-button-static.js +2 -3
  29. package/development/button/secondary-button.js +2 -3
  30. package/development/button/tertiary-button-link.js +2 -3
  31. package/development/button/tertiary-button-static.js +2 -3
  32. package/development/button/tertiary-button.js +2 -3
  33. package/development/button/transparent-button-link.js +2 -3
  34. package/development/button/transparent-button-static.js +2 -3
  35. package/development/button/transparent-button.js +2 -3
  36. package/development/calendar.js +2 -3
  37. package/development/card/card-badge.js +2 -3
  38. package/development/card/card-button.js +2 -3
  39. package/development/card/card-link.js +2 -3
  40. package/development/card/card.js +2 -3
  41. package/development/card/common.js +2 -3
  42. package/development/checkbox/checkbox-group.js +2 -3
  43. package/development/checkbox/checkbox.js +2 -3
  44. package/development/chip.js +2 -3
  45. package/development/clock.js +2 -3
  46. package/development/container/container.js +2 -3
  47. package/development/container/sticky-bar.js +2 -3
  48. package/development/core/base-elements.js +4 -7
  49. package/development/core/mixins.js +7 -13
  50. package/development/core/overlay/overlay.d.ts.map +1 -1
  51. package/development/core/overlay.js +9 -3
  52. package/development/core/testing/event-spy.d.ts +1 -1
  53. package/development/core/testing/wait-for-image-ready.d.ts +4 -0
  54. package/development/core/testing/wait-for-image-ready.d.ts.map +1 -0
  55. package/development/core/testing.d.ts +1 -0
  56. package/development/core/testing.d.ts.map +1 -1
  57. package/development/core/testing.js +17 -1
  58. package/development/datepicker/common.js +2 -3
  59. package/development/datepicker/datepicker-next-day.js +2 -3
  60. package/development/datepicker/datepicker-previous-day.js +2 -3
  61. package/development/datepicker/datepicker-toggle.js +2 -3
  62. package/development/datepicker/datepicker.js +2 -3
  63. package/development/dialog/dialog-actions.js +2 -3
  64. package/development/dialog/dialog-content.js +2 -3
  65. package/development/dialog/dialog-title.js +2 -3
  66. package/development/dialog/dialog.js +2 -3
  67. package/development/divider.js +2 -3
  68. package/development/expansion-panel/expansion-panel-content.js +2 -3
  69. package/development/expansion-panel/expansion-panel-header.js +2 -3
  70. package/development/expansion-panel/expansion-panel.js +2 -3
  71. package/development/file-selector.js +2 -3
  72. package/development/footer.js +2 -3
  73. package/development/form-error.js +2 -3
  74. package/development/form-field/form-field-clear.js +2 -3
  75. package/development/form-field/form-field.js +2 -3
  76. package/development/header/common.js +2 -3
  77. package/development/header/header-button.js +2 -3
  78. package/development/header/header-link.js +2 -3
  79. package/development/header/header.js +2 -3
  80. package/development/icon.js +4 -7
  81. package/development/image/image.d.ts +12 -3
  82. package/development/image/image.d.ts.map +1 -1
  83. package/development/image.js +41 -24
  84. package/development/journey-header.js +2 -3
  85. package/development/lead-container.js +2 -3
  86. package/development/link/block-link-button.js +2 -3
  87. package/development/link/block-link-static.js +2 -3
  88. package/development/link/block-link.js +2 -3
  89. package/development/link/common.js +3 -5
  90. package/development/link/link-button.js +2 -3
  91. package/development/link/link-static.js +2 -3
  92. package/development/link/link.js +2 -3
  93. package/development/link-list.js +2 -3
  94. package/development/loading-indicator.js +2 -3
  95. package/development/logo.js +2 -3
  96. package/development/map-container.js +2 -3
  97. package/development/menu/common.js +2 -3
  98. package/development/menu/menu-button.js +2 -3
  99. package/development/menu/menu-link.js +2 -3
  100. package/development/menu/menu.js +2 -3
  101. package/development/message.js +2 -3
  102. package/development/navigation/common.js +2 -3
  103. package/development/navigation/navigation-button.js +2 -3
  104. package/development/navigation/navigation-link.js +2 -3
  105. package/development/navigation/navigation-list.js +2 -3
  106. package/development/navigation/navigation-marker.js +2 -3
  107. package/development/navigation/navigation-section.js +2 -3
  108. package/development/navigation/navigation.js +2 -3
  109. package/development/notification.js +2 -3
  110. package/development/option/optgroup.js +2 -3
  111. package/development/option/option.js +2 -3
  112. package/development/overlay.js +3 -5
  113. package/development/popover/popover-trigger.js +2 -3
  114. package/development/popover/popover.js +2 -3
  115. package/development/radio-button/radio-button-group.js +2 -3
  116. package/development/radio-button/radio-button.js +2 -3
  117. package/development/screen-reader-only.js +2 -3
  118. package/development/select.js +2 -3
  119. package/development/selection-panel.js +2 -3
  120. package/development/signet.js +2 -3
  121. package/development/skiplink-list.js +2 -3
  122. package/development/slider.js +2 -3
  123. package/development/status.js +2 -3
  124. package/development/stepper/step-label.js +2 -3
  125. package/development/stepper/step.js +2 -3
  126. package/development/stepper/stepper/stepper.d.ts +1 -1
  127. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  128. package/development/stepper/stepper.js +5 -6
  129. package/development/tabs/tab-group.js +2 -3
  130. package/development/tabs/tab-title.js +2 -3
  131. package/development/tag/tag-group.js +2 -3
  132. package/development/tag/tag.js +2 -3
  133. package/development/teaser-hero.js +2 -3
  134. package/development/teaser-paid.js +2 -3
  135. package/development/teaser.js +2 -3
  136. package/development/time-input.js +2 -3
  137. package/development/timetable-occupancy-icon.js +2 -3
  138. package/development/timetable-occupancy.js +2 -3
  139. package/development/title.js +3 -5
  140. package/development/toast.js +2 -3
  141. package/development/toggle/toggle-option.js +3 -5
  142. package/development/toggle/toggle.js +2 -3
  143. package/development/toggle-check.js +10 -3
  144. package/development/train/train-blocked-passage.js +2 -3
  145. package/development/train/train-formation.js +2 -3
  146. package/development/train/train-wagon.js +2 -3
  147. package/development/train/train.js +2 -3
  148. package/development/visual-checkbox.js +2 -3
  149. package/image/image.d.ts +12 -3
  150. package/image/image.d.ts.map +1 -1
  151. package/image.js +91 -78
  152. package/package.json +1 -1
  153. package/stepper/stepper/stepper.d.ts +1 -1
  154. package/stepper/stepper/stepper.d.ts.map +1 -1
  155. package/stepper/stepper.js +3 -3
  156. package/toggle-check.js +14 -14
  157. package/train/train-formation.js +1 -2
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb-group.d.ts","sourceRoot":"","sources":["../../../../src/elements/breadcrumb/breadcrumb-group/breadcrumb-group.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAYb,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,eAAe,CAAC;;AAEvB;;;;GAIG;AACH,qBAIa,yBAA0B,SAAQ,8BAGlC;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAAsB;IAIrE,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,CAAC,eAAe,CAAoE;IAC3F,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,cAAc;IAiBN,iBAAiB,IAAI,IAAI;cAMtB,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAM9D,oBAAoB,IAAI,IAAI;cAKzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;cAQ3E,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAa3F,2EAA2E;IAC3E,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,UAAU;IAYlB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAK1B,kGAAkG;IAClG,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,eAAe;cAgBJ,MAAM,IAAI,cAAc;CAQ5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,sBAAsB,EAAE,yBAAyB,CAAC;KACnD;CACF"}
1
+ {"version":3,"file":"breadcrumb-group.d.ts","sourceRoot":"","sources":["../../../../src/elements/breadcrumb/breadcrumb-group/breadcrumb-group.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAYb,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,eAAe,CAAC;;AAIvB;;;;GAIG;AACH,qBAIa,yBAA0B,SAAQ,8BAGlC;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAAsB;IAIrE,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,CAAC,eAAe,CAAoE;IAC3F,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,cAAc;IAiBN,iBAAiB,IAAI,IAAI;cAMtB,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAM9D,oBAAoB,IAAI,IAAI;cAKzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;cAQ3E,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAa3F,2EAA2E;IAC3E,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,UAAU;IAYlB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAK1B,kGAAkG;IAClG,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,eAAe;cAgBJ,MAAM,IAAI,cAAc;CAQ5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,sBAAsB,EAAE,yBAAyB,CAAC;KACnD;CACF"}
@@ -1,22 +1,23 @@
1
- import { css as d, LitElement as c, html as b, nothing as u } from "lit";
2
- import { state as p, customElement as h } from "lit/decorators.js";
3
- import { isArrowKeyPressed as m, sbbInputModalityDetector as g, getNextElementIndex as f } from "../core/a11y.js";
4
- import { SbbConnectedAbortController as v, SbbLanguageController as _ } from "../core/controllers.js";
5
- import { hostAttributes as x } from "../core/decorators.js";
1
+ import { css as c, LitElement as u, html as b, nothing as p } from "lit";
2
+ import { state as h, customElement as m } from "lit/decorators.js";
3
+ import { isArrowKeyPressed as g, sbbInputModalityDetector as f, getNextElementIndex as v } from "../core/a11y.js";
4
+ import { SbbConnectedAbortController as _, SbbLanguageController as x } from "../core/controllers.js";
5
+ import { hostAttributes as C } from "../core/decorators.js";
6
6
  import { setOrRemoveAttribute as y } from "../core/dom.js";
7
- import { i18nBreadcrumbEllipsisButtonLabel as C } from "../core/i18n.js";
8
- import { SbbNamedSlotListMixin as w } from "../core/mixins.js";
9
- import { AgnosticResizeObserver as k } from "../core/observers.js";
7
+ import { i18nBreadcrumbEllipsisButtonLabel as w } from "../core/i18n.js";
8
+ import { SbbNamedSlotListMixin as k } from "../core/mixins.js";
9
+ import { AgnosticResizeObserver as z } from "../core/observers.js";
10
10
  import "../icon.js";
11
- const z = d`*,:before,:after{box-sizing:border-box}:host{--sbb-breadcrumb-group-wrap: nowrap;--sbb-breadcrumb-group-visibility: hidden;display:block}:host([data-loaded]){--sbb-breadcrumb-group-visibility: visible}:host([data-state]){--sbb-breadcrumb-group-wrap: wrap}.sbb-breadcrumb-group{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;flex-wrap:var(--sbb-breadcrumb-group-wrap);column-gap:var(--sbb-spacing-fixed-1x);visibility:var(--sbb-breadcrumb-group-visibility)}.sbb-breadcrumb-group__item{flex:0 0 auto;display:flex;column-gap:var(--sbb-spacing-fixed-1x)}.sbb-breadcrumb-group__divider-icon{color:var(--sbb-color-granite)}#sbb-breadcrumb-ellipsis{--sbb-breadcrumb-group-ellipsis-color: var(--sbb-color-granite);--sbb-breadcrumb-group-ellipsis-background-color: transparent;--sbb-breadcrumb-group-ellipsis-border-width: var(--sbb-border-width-1x);--sbb-breadcrumb-group-ellipsis-border-color: var(--sbb-color-silver);-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box;margin:0;outline:none;border:none;padding:0;background:none;-webkit-tap-highlight-color:transparent;color:inherit;--sbb-text-font-size: var(--sbb-font-size-text-xxs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);line-height:0;letter-spacing:.01em;width:var(--sbb-size-icon-ui-small);height:var(--sbb-size-icon-ui-small);border:var(--sbb-breadcrumb-group-ellipsis-border-width) solid var(--sbb-breadcrumb-group-ellipsis-border-color);border-radius:50%;padding-block-end:.5em;cursor:pointer;color:var(--sbb-breadcrumb-group-ellipsis-color);background-color:var(--sbb-breadcrumb-group-ellipsis-background-color);overflow:hidden}@media (forced-colors: active){#sbb-breadcrumb-ellipsis{--sbb-breadcrumb-group-ellipsis-border-width: var(--sbb-border-width-2x);--sbb-breadcrumb-group-ellipsis-border-color: CanvasText}}@media (any-hover: hover){#sbb-breadcrumb-ellipsis:hover{--sbb-breadcrumb-group-ellipsis-color: var(--sbb-color-charcoal);--sbb-breadcrumb-group-ellipsis-background-color: var(--sbb-color-milk)}}@media (any-hover: hover) and (forced-colors: active){#sbb-breadcrumb-ellipsis:hover{--sbb-breadcrumb-group-ellipsis-border-color: Highlight}}#sbb-breadcrumb-ellipsis:focus-visible:not([data-focus-origin=mouse],[data-focus-origin=touch]){outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}`;
12
- var E = Object.defineProperty, S = Object.getOwnPropertyDescriptor, n = (e, r, t, i) => {
13
- for (var s = i > 1 ? void 0 : i ? S(r, t) : r, o = e.length - 1, l; o >= 0; o--)
14
- (l = e[o]) && (s = (i ? l(r, t, s) : l(s)) || s);
15
- return i && s && E(r, t, s), s;
11
+ const E = c`*,:before,:after{box-sizing:border-box}:host{--sbb-breadcrumb-group-wrap: nowrap;--sbb-breadcrumb-group-visibility: hidden;display:block}:host([data-loaded]){--sbb-breadcrumb-group-visibility: visible}:host([data-state]){--sbb-breadcrumb-group-wrap: wrap}.sbb-breadcrumb-group{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;flex-wrap:var(--sbb-breadcrumb-group-wrap);column-gap:var(--sbb-spacing-fixed-1x);visibility:var(--sbb-breadcrumb-group-visibility)}.sbb-breadcrumb-group__item{flex:0 0 auto;display:flex;column-gap:var(--sbb-spacing-fixed-1x)}.sbb-breadcrumb-group__divider-icon{color:var(--sbb-color-granite)}#sbb-breadcrumb-ellipsis{--sbb-breadcrumb-group-ellipsis-color: var(--sbb-color-granite);--sbb-breadcrumb-group-ellipsis-background-color: transparent;--sbb-breadcrumb-group-ellipsis-border-width: var(--sbb-border-width-1x);--sbb-breadcrumb-group-ellipsis-border-color: var(--sbb-color-silver);-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box;margin:0;outline:none;border:none;padding:0;background:none;-webkit-tap-highlight-color:transparent;color:inherit;--sbb-text-font-size: var(--sbb-font-size-text-xxs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);line-height:0;letter-spacing:.01em;width:var(--sbb-size-icon-ui-small);height:var(--sbb-size-icon-ui-small);border:var(--sbb-breadcrumb-group-ellipsis-border-width) solid var(--sbb-breadcrumb-group-ellipsis-border-color);border-radius:50%;padding-block-end:.5em;cursor:pointer;color:var(--sbb-breadcrumb-group-ellipsis-color);background-color:var(--sbb-breadcrumb-group-ellipsis-background-color);overflow:hidden}@media (forced-colors: active){#sbb-breadcrumb-ellipsis{--sbb-breadcrumb-group-ellipsis-border-width: var(--sbb-border-width-2x);--sbb-breadcrumb-group-ellipsis-border-color: CanvasText}}@media (any-hover: hover){#sbb-breadcrumb-ellipsis:hover{--sbb-breadcrumb-group-ellipsis-color: var(--sbb-color-charcoal);--sbb-breadcrumb-group-ellipsis-background-color: var(--sbb-color-milk)}}@media (any-hover: hover) and (forced-colors: active){#sbb-breadcrumb-ellipsis:hover{--sbb-breadcrumb-group-ellipsis-border-color: Highlight}}#sbb-breadcrumb-ellipsis:focus-visible:not([data-focus-origin=mouse],[data-focus-origin=touch]){outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}`;
12
+ var S = Object.defineProperty, A = Object.getOwnPropertyDescriptor, d = (e, r, t, i) => {
13
+ for (var s = i > 1 ? void 0 : i ? A(r, t) : r, o = e.length - 1, a; o >= 0; o--)
14
+ (a = e[o]) && (s = (i ? a(r, t, s) : a(s)) || s);
15
+ return i && s && S(r, t, s), s;
16
16
  };
17
- let a = class extends w(c) {
17
+ const n = 3;
18
+ let l = class extends k(u) {
18
19
  constructor() {
19
- super(...arguments), this.listChildLocalNames = ["sbb-breadcrumb"], this._resizeObserver = new k(() => this._evaluateCollapsedState()), this._abort = new v(this), this._language = new _(this), this._markForFocus = !1;
20
+ super(...arguments), this.listChildLocalNames = ["sbb-breadcrumb"], this._resizeObserver = new z(() => this._evaluateCollapsedState()), this._abort = new _(this), this._language = new x(this), this._markForFocus = !1;
20
21
  }
21
22
  set _state(e) {
22
23
  y(this, "data-state", e);
@@ -26,7 +27,7 @@ let a = class extends w(c) {
26
27
  }
27
28
  _handleKeyDown(e) {
28
29
  if (!(!this.listChildren.length || // don't trap nested handling
29
- e.target !== this && e.target.parentElement !== this) && m(e)) {
30
+ e.target !== this && e.target.parentElement !== this) && g(e)) {
30
31
  if (this._state === "collapsed")
31
32
  return this._focusNextCollapsed(e);
32
33
  this._focusNext(e);
@@ -48,12 +49,12 @@ let a = class extends w(c) {
48
49
  }
49
50
  updated(e) {
50
51
  var r;
51
- super.updated(e), e.has("listChildren") && Promise.resolve().then(() => this._evaluateCollapsedState()), this._markForFocus && g.mostRecentModality === "keyboard" && ((r = this.listChildren[1]) == null || r.focus(), this._markForFocus = !1);
52
+ super.updated(e), e.has("listChildren") && Promise.resolve().then(() => this._evaluateCollapsedState()), this._markForFocus && f.mostRecentModality === "keyboard" && ((r = this.listChildren[1]) == null || r.focus(), this._markForFocus = !1);
52
53
  }
53
54
  /** Apply the aria-current attribute to the last sbb-breadcrumb element. */
54
55
  _syncBreadcrumbs() {
55
56
  var e;
56
- this.listChildren.slice(0, -1).filter((r) => r.hasAttribute("aria-current")).forEach((r) => r.removeAttribute("aria-current")), (e = this.listChildren[this.listChildren.length - 1]) == null || e.setAttribute("aria-current", "page"), this.listChildren.length < 3 && (this._state = null);
57
+ this.listChildren.slice(0, -1).filter((r) => r.hasAttribute("aria-current")).forEach((r) => r.removeAttribute("aria-current")), (e = this.listChildren[this.listChildren.length - 1]) == null || e.setAttribute("aria-current", "page"), this.listChildren.length < n && (this._state = null);
57
58
  }
58
59
  /**
59
60
  * Sets the focus on the correct element when the ellipsis breadcrumb is displayed and the user is navigating with keyboard's arrows.
@@ -70,7 +71,7 @@ let a = class extends w(c) {
70
71
  var s;
71
72
  const t = r.findIndex(
72
73
  (o) => o === document.activeElement || o === this.shadowRoot.activeElement
73
- ), i = f(e, t, r.length);
74
+ ), i = v(e, t, r.length);
74
75
  (s = r[i]) == null || s.focus(), e.preventDefault();
75
76
  }
76
77
  /**
@@ -82,7 +83,7 @@ let a = class extends w(c) {
82
83
  }
83
84
  /** Evaluate if the expanded breadcrumb element fits in page width, otherwise it needs ellipsis */
84
85
  _evaluateCollapsedState() {
85
- !this._state && this.scrollWidth > this.offsetWidth && (this._state = "collapsed", this._resizeObserver.disconnect());
86
+ !this._state && this.scrollWidth > this.offsetWidth && this.listChildren.length >= n && (this._state = "collapsed", this._resizeObserver.disconnect());
86
87
  }
87
88
  _renderCollapsed() {
88
89
  return b`
@@ -97,7 +98,7 @@ let a = class extends w(c) {
97
98
  <button
98
99
  type="button"
99
100
  id="sbb-breadcrumb-ellipsis"
100
- aria-label=${C[this._language.current]}
101
+ aria-label=${w[this._language.current]}
101
102
  aria-expanded="false"
102
103
  @click=${() => this._expandBreadcrumbs()}
103
104
  >
@@ -121,7 +122,7 @@ let a = class extends w(c) {
121
122
  ${r !== t.length - 1 ? b`<sbb-icon
122
123
  name="chevron-small-right-small"
123
124
  class="sbb-breadcrumb-group__divider-icon"
124
- ></sbb-icon>` : u}
125
+ ></sbb-icon>` : p}
125
126
  </li>
126
127
  `
127
128
  );
@@ -135,16 +136,16 @@ let a = class extends w(c) {
135
136
  `;
136
137
  }
137
138
  };
138
- a.styles = z;
139
- n([
140
- p()
141
- ], a.prototype, "_state", 1);
142
- a = n([
143
- h("sbb-breadcrumb-group"),
144
- x({
139
+ l.styles = E;
140
+ d([
141
+ h()
142
+ ], l.prototype, "_state", 1);
143
+ l = d([
144
+ m("sbb-breadcrumb-group"),
145
+ C({
145
146
  role: "navigation"
146
147
  })
147
- ], a);
148
+ ], l);
148
149
  export {
149
- a as SbbBreadcrumbGroupElement
150
+ l as SbbBreadcrumbGroupElement
150
151
  };
@@ -59,8 +59,7 @@ let h = class extends m {
59
59
  const t = this.form ? this.ownerDocument.querySelector(`form#${this.form}`) : this.closest("form");
60
60
  if (t)
61
61
  this.type === "submit" ? t.requestSubmit() : this.type === "reset" && t.reset();
62
- else
63
- return;
62
+ else return;
64
63
  }, this._preventScrollOnSpaceKeydown = (e) => {
65
64
  e.key === " " && (e.preventDefault(), e.target.toggleAttribute("data-active", !0));
66
65
  }, this._removeActiveMarker = (e) => {
package/core/datetime.js CHANGED
@@ -188,10 +188,8 @@ class c extends l {
188
188
  if (Number.isNaN(+t)) {
189
189
  if (D.test(t))
190
190
  return this.getValidDateOrNull(new Date(t));
191
- } else
192
- return this.getValidDateOrNull(new Date(+t * 1e3));
193
- else
194
- return null;
191
+ } else return this.getValidDateOrNull(new Date(+t * 1e3));
192
+ else return null;
195
193
  else if (typeof t == "number")
196
194
  return this.getValidDateOrNull(new Date(t * 1e3));
197
195
  return super.deserialize(t);
@@ -1 +1 @@
1
- {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/overlay/overlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1C;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CASrD;AAqDD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAyB9D;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C;AACD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,2BAA2B;QACnC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3B,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KAC7B;CACF"}
1
+ {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/overlay/overlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1C;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CASrD;AA4DD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAyB9D;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C;AACD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,2BAA2B;QACnC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3B,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KAC7B;CACF"}
package/core/overlay.js CHANGED
@@ -1,7 +1,7 @@
1
- import { html as w } from "lit";
1
+ import { html as E } from "lit";
2
2
  const x = ":is(sbb-dialog, sbb-navigation, sbb-menu, sbb-overlay)[data-state='opened']";
3
- function R() {
4
- return w`
3
+ function $() {
4
+ return E`
5
5
  <div class="sbb-gap-fix-wrapper">
6
6
  <div class="sbb-gap-fix-corner" id="left"></div>
7
7
  </div>
@@ -10,41 +10,46 @@ function R() {
10
10
  </div>
11
11
  `;
12
12
  }
13
- const E = (t, e) => {
13
+ const O = (t, e) => {
14
14
  let n = t.parentElement;
15
- const o = [];
16
- for (; n && (o.push(n), n !== e); )
15
+ const i = [];
16
+ for (; n && (i.push(n), n !== e); )
17
17
  n = n.parentElement;
18
- return o;
18
+ return i;
19
+ }, w = (t) => {
20
+ t.setAttribute(
21
+ "data-sbb-inert",
22
+ `${+(t.getAttribute("data-sbb-inert") ?? void 0) + 1 || 0}`
23
+ );
19
24
  }, W = (t) => {
20
- t.inert || (t.inert = !0, t.matches(x) ? t.setAttribute("data-sbb-inert", `${+t.getAttribute("data-sbb-inert") + 1 || 0}`) : t.toggleAttribute("data-sbb-inert", !0)), t.hasAttribute("aria-hidden") || (t.setAttribute("aria-hidden", "true"), t.toggleAttribute("data-sbb-aria-hidden", !0));
25
+ t.inert || (t.inert = !0, t.matches(x) ? w(t) : t.toggleAttribute("data-sbb-inert", !0)), t.hasAttribute("aria-hidden") || (t.setAttribute("aria-hidden", "true"), t.toggleAttribute("data-sbb-aria-hidden", !0));
21
26
  }, y = (t) => {
22
27
  t.hasAttribute("data-sbb-inert") && (t.inert = !1, t.removeAttribute("data-sbb-inert")), t.hasAttribute("data-sbb-aria-hidden") && (t.removeAttribute("aria-hidden"), t.removeAttribute("data-sbb-aria-hidden"));
23
28
  };
24
- function $(t) {
29
+ function C(t) {
25
30
  y(t);
26
31
  const e = t.closest("body > *");
27
32
  Array.from(document.querySelectorAll("body > *")).filter(
28
- (i) => i !== e
29
- ).forEach((i) => W(i));
30
- let o = [];
31
- const a = E(t, e);
32
- for (const i of a)
33
- o = o.concat(
34
- Array.from(i.children).filter(
33
+ (o) => o !== e
34
+ ).forEach((o) => W(o));
35
+ let i = [];
36
+ const a = O(t, e);
37
+ for (const o of a)
38
+ i = i.concat(
39
+ Array.from(o.children).filter(
35
40
  (c) => c !== t && !a.includes(c)
36
41
  )
37
- ), i.matches(x) && i.setAttribute("data-sbb-inert", `${+i.getAttribute("data-sbb-inert") + 1 || 0}`);
38
- o.forEach((i) => W(i));
42
+ ), o.matches(x) && w(o);
43
+ i.forEach((o) => W(o));
39
44
  }
40
- function C() {
45
+ function z() {
41
46
  const t = Array.from(
42
47
  document.documentElement.querySelectorAll(x)
43
48
  );
44
49
  if (t.length) {
45
50
  t.forEach((e) => {
46
51
  const n = +e.getAttribute("data-sbb-inert") - 1;
47
- e.setAttribute("data-sbb-inert", `${n}`), n && n < 0 && (y(e), Array.from(e.children).forEach((o) => y(o)));
52
+ e.setAttribute("data-sbb-inert", `${n}`), n && n < 0 && (y(e), Array.from(e.children).forEach((i) => y(i)));
48
53
  });
49
54
  return;
50
55
  }
@@ -52,9 +57,9 @@ function C() {
52
57
  (e) => y(e)
53
58
  );
54
59
  }
55
- function O(t) {
56
- const e = window.getComputedStyle(t), n = e.display, o = parseInt(e.maxHeight, 10).toString();
57
- if (n !== "none" && o !== "0")
60
+ function S(t) {
61
+ const e = window.getComputedStyle(t), n = e.display, i = parseInt(e.maxHeight, 10).toString();
62
+ if (n !== "none" && i !== "0")
58
63
  return {
59
64
  scrollHeight: t.scrollHeight,
60
65
  clientHeight: t.clientHeight,
@@ -64,21 +69,21 @@ function O(t) {
64
69
  offsetWidth: t.offsetWidth
65
70
  };
66
71
  t.style.position = "absolute", t.style.visibility = "hidden", t.style.display = "block";
67
- const a = t.scrollHeight, i = t.clientHeight, c = t.offsetHeight, u = t.scrollWidth, r = t.clientWidth, s = t.offsetWidth;
68
- return t.style.display = "", t.style.position = "", t.style.visibility = "", { scrollHeight: a, clientHeight: i, offsetHeight: c, scrollWidth: u, clientWidth: r, offsetWidth: s };
72
+ const a = t.scrollHeight, o = t.clientHeight, c = t.offsetHeight, u = t.scrollWidth, r = t.clientWidth, s = t.offsetWidth;
73
+ return t.style.display = "", t.style.position = "", t.style.visibility = "", { scrollHeight: a, clientHeight: o, offsetHeight: c, scrollWidth: u, clientWidth: r, offsetWidth: s };
69
74
  }
70
- function z(t, e) {
75
+ function B(t, e) {
71
76
  if (!t || !e)
72
77
  return !1;
73
78
  const n = t.getBoundingClientRect();
74
79
  return n.top <= e.clientY && e.clientY <= n.top + n.height && n.left <= e.clientX && e.clientX <= n.left + n.width;
75
80
  }
76
- function S(t, e, n, o) {
77
- const i = (o == null ? void 0 : o.verticalOffset) || 0, c = (o == null ? void 0 : o.horizontalOffset) || 0, u = (o == null ? void 0 : o.responsiveHeight) || !1, r = e.getBoundingClientRect(), s = O(t), f = r.left, m = r.top, g = document.documentElement.clientWidth - (f + r.width), h = m - i, A = document.documentElement.clientHeight - (m + r.height + i);
78
- let l = f, p = m + r.height + i, b = s.offsetWidth - r.width;
81
+ function P(t, e, n, i) {
82
+ const o = (i == null ? void 0 : i.verticalOffset) || 0, c = (i == null ? void 0 : i.horizontalOffset) || 0, u = (i == null ? void 0 : i.responsiveHeight) || !1, r = e.getBoundingClientRect(), s = S(t), f = r.left, m = r.top, g = document.documentElement.clientWidth - (f + r.width), h = m - o, A = document.documentElement.clientHeight - (m + r.height + o);
83
+ let l = f, p = m + r.height + o, b = s.offsetWidth - r.width;
79
84
  const d = { horizontal: "start", vertical: "below" };
80
- let H = `${A - i}px`;
81
- o != null && o.centered && f - 16 + r.width / 2 > s.offsetWidth / 2 && g - 16 > b / 2 && (l -= b /= 2, d.horizontal = "center"), g < b && f > b && (l = l - b, d.horizontal = "end"), c && d.horizontal !== "center" && r.width / 2 < c && (l += c * (d.horizontal === "start" ? -1 : 1)), (f < b && g < b || document.documentElement.clientWidth < s.offsetWidth) && (l = document.documentElement.clientWidth / 2 - s.offsetWidth / 2), (A - i < s.scrollHeight && h - i > (u ? s.clientHeight : s.scrollHeight) || h > A && A - i < s.clientHeight && !u) && (p = h < s.scrollHeight ? p - r.height - h - i : m - s.clientHeight - i, H = `${h - i}px`, d.vertical = "above");
85
+ let H = `${A - o}px`;
86
+ i != null && i.centered && f - 16 + r.width / 2 > s.offsetWidth / 2 && g - 16 > b / 2 && (l -= b /= 2, d.horizontal = "center"), g < b && f > b && (l = l - b, d.horizontal = "end"), c && d.horizontal !== "center" && r.width / 2 < c && (l += c * (d.horizontal === "start" ? -1 : 1)), (f < b && g < b || document.documentElement.clientWidth < s.offsetWidth) && (l = document.documentElement.clientWidth / 2 - s.offsetWidth / 2), (A - o < s.scrollHeight && h - o > (u ? s.clientHeight : s.scrollHeight) || h > A && A - o < s.clientHeight && !u) && (p = h < s.scrollHeight ? p - r.height - h - o : m - s.clientHeight - o, H = `${h - o}px`, d.vertical = "above");
82
87
  const v = n.getBoundingClientRect();
83
88
  return v.left < 0 && (l -= v.left), v.top < 0 && (p -= v.top), {
84
89
  top: p,
@@ -87,35 +92,35 @@ function S(t, e, n, o) {
87
92
  alignment: d
88
93
  };
89
94
  }
90
- function B(t, e, n, o, a) {
95
+ function I(t, e, n, i, a) {
91
96
  if (!t || !e)
92
97
  return;
93
98
  a.style.setProperty("--sbb-options-panel-width", `${e.offsetWidth}px`), a.style.setProperty("--sbb-options-panel-origin-height", `${e.offsetHeight}px`);
94
- const i = S(n, e, o);
95
- a.style.setProperty("--sbb-options-panel-position-x", `${i.left}px`), a.style.setProperty("--sbb-options-panel-position-y", `${i.top}px`), a.style.setProperty("--sbb-options-panel-max-height", i.maxHeight), a.setAttribute("data-options-panel-position", i.alignment.vertical), e.setAttribute("data-options-panel-position", i.alignment.vertical);
99
+ const o = P(n, e, i);
100
+ a.style.setProperty("--sbb-options-panel-position-x", `${o.left}px`), a.style.setProperty("--sbb-options-panel-position-y", `${o.top}px`), a.style.setProperty("--sbb-options-panel-max-height", o.maxHeight), a.setAttribute("data-options-panel-position", o.alignment.vertical), e.setAttribute("data-options-panel-position", o.alignment.vertical);
96
101
  }
97
- function I(t, e, n, o) {
98
- t && (t.setAttribute("aria-haspopup", e), t.setAttribute("aria-controls", n), t.setAttribute("aria-expanded", `${o === "opening" || o === "opened"}`));
102
+ function Y(t, e, n, i) {
103
+ t && (t.setAttribute("aria-haspopup", e), t.setAttribute("aria-controls", n), t.setAttribute("aria-expanded", `${i === "opening" || i === "opened"}`));
99
104
  }
100
- function Y(t) {
105
+ function M(t) {
101
106
  t && (t.removeAttribute("aria-haspopup"), t.removeAttribute("aria-controls"), t.removeAttribute("aria-expanded"));
102
107
  }
103
- function M(t, e, n) {
108
+ function X(t, e, n) {
104
109
  t && (t.setAttribute("autocomplete", "off"), t.setAttribute("role", "combobox"), t.setAttribute("aria-autocomplete", "list"), t.setAttribute("aria-haspopup", "listbox"), t.setAttribute("aria-controls", e), t.setAttribute("aria-owns", e), t.setAttribute("aria-expanded", `${n}`));
105
110
  }
106
- function X(t) {
111
+ function q(t) {
107
112
  t && (t.removeAttribute("autocomplete"), t.removeAttribute("role"), t.removeAttribute("aria-autocomplete"), t.removeAttribute("aria-haspopup"), t.removeAttribute("aria-controls"), t.removeAttribute("aria-owns"), t.removeAttribute("aria-expanded"));
108
113
  }
109
114
  export {
110
- $ as applyInertMechanism,
111
- S as getElementPosition,
112
- O as getElementRectangle,
113
- z as isEventOnElement,
114
- R as overlayGapFixCorners,
115
- X as removeAriaComboBoxAttributes,
116
- Y as removeAriaOverlayTriggerAttributes,
117
- C as removeInertMechanism,
118
- M as setAriaComboBoxAttributes,
119
- I as setAriaOverlayTriggerAttributes,
120
- B as setOverlayPosition
115
+ C as applyInertMechanism,
116
+ P as getElementPosition,
117
+ S as getElementRectangle,
118
+ B as isEventOnElement,
119
+ $ as overlayGapFixCorners,
120
+ q as removeAriaComboBoxAttributes,
121
+ M as removeAriaOverlayTriggerAttributes,
122
+ z as removeInertMechanism,
123
+ X as setAriaComboBoxAttributes,
124
+ Y as setAriaOverlayTriggerAttributes,
125
+ I as setOverlayPosition
121
126
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This class exists to facilitate the E2E test migration from stencil to lit.
2
+ * This class exists to facilitate the test migration from stencil to lit.
3
3
  * It mimics the API that stencil provided to test events.
4
4
  *
5
5
  * TODO: Document me
@@ -0,0 +1,4 @@
1
+ import { SbbImageElement } from '../../image.js';
2
+
3
+ export declare function waitForImageReady(element: HTMLImageElement | SbbImageElement, timeoutInMilliseconds?: number): Promise<void>;
4
+ //# sourceMappingURL=wait-for-image-ready.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-for-image-ready.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/testing/wait-for-image-ready.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,gBAAgB,GAAG,eAAe,EAC3C,qBAAqB,SAAW,GAC/B,OAAO,CAAC,IAAI,CAAC,CAcf"}
package/core/testing.d.ts CHANGED
@@ -2,5 +2,6 @@ export * from './testing/event-spy.js';
2
2
  export * from './testing/mocha-extensions.js';
3
3
  export * from './testing/scroll.js';
4
4
  export * from './testing/wait-for-condition.js';
5
+ export * from './testing/wait-for-image-ready.js';
5
6
  export * from './testing/wait-for-render.js';
6
7
  //# sourceMappingURL=testing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../src/elements/core/testing.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../src/elements/core/testing.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC"}
package/core/testing.js CHANGED
@@ -21,42 +21,53 @@ class u {
21
21
  });
22
22
  }
23
23
  }
24
- const h = (t, n, e) => {
24
+ const m = (t, n, e) => {
25
25
  if (t)
26
26
  return Mocha.describe(n, e);
27
- }, m = (t, n, e) => {
27
+ }, h = (t, n, e) => {
28
28
  if (t)
29
29
  return Mocha.test(n, e);
30
30
  };
31
31
  function v(t) {
32
32
  window.scrollTo(t), document.dispatchEvent(new Event("scroll"));
33
33
  }
34
- async function g(t, n = 30, e = 2 * 1e3) {
35
- const s = /* @__PURE__ */ new Date();
36
- let i = 0;
34
+ async function d(t, n = 30, e = 2 * 1e3) {
35
+ const i = /* @__PURE__ */ new Date();
36
+ let o = 0;
37
37
  function r() {
38
- return i++, t();
38
+ return o++, t();
39
39
  }
40
- for (; !await r() && s.getTime() + e >= (/* @__PURE__ */ new Date()).getTime(); )
41
- await new Promise((o) => setTimeout(o, n));
42
- return s.getTime() + e < (/* @__PURE__ */ new Date()).getTime() ? Promise.reject(
43
- `waitForCondition timeout: ${t.toString()}, attempts: ${i}, start: ${s.getTime()}, end: ${(/* @__PURE__ */ new Date()).getTime()}`
40
+ for (; !await r() && i.getTime() + e >= (/* @__PURE__ */ new Date()).getTime(); )
41
+ await new Promise((s) => setTimeout(s, n));
42
+ return i.getTime() + e < (/* @__PURE__ */ new Date()).getTime() ? Promise.reject(
43
+ `waitForCondition timeout: ${t.toString()}, attempts: ${o}, start: ${i.getTime()}, end: ${(/* @__PURE__ */ new Date()).getTime()}`
44
44
  ) : Promise.resolve(!0);
45
45
  }
46
- const a = (t) => !!t.updateComplete, l = Promise.resolve(), c = async (t) => {
46
+ async function g(t, n = 2 * 1e3) {
47
+ t.complete || await new Promise((e, i) => {
48
+ const o = setTimeout(() => i("image loading timeout"), n);
49
+ t.addEventListener("load", () => {
50
+ clearTimeout(o), e();
51
+ }), t.addEventListener("error", () => {
52
+ clearTimeout(o), i("image error");
53
+ });
54
+ });
55
+ }
56
+ const a = (t) => !!t.updateComplete, c = Promise.resolve(), l = async (t) => {
47
57
  const n = [t, ...t.querySelectorAll("*")].filter(a).map((e) => [
48
58
  e.updateComplete,
49
- e.hydrationComplete ?? l,
50
- c(e.renderRoot)
59
+ e.hydrationComplete ?? c,
60
+ l(e.renderRoot)
51
61
  ]).flat(1 / 0);
52
62
  await Promise.all(n);
53
63
  };
54
64
  export {
55
65
  u as EventSpy,
56
- h as describeIf,
66
+ m as describeIf,
57
67
  a as isReactiveElement,
58
68
  v as mockScrollTo,
59
- m as testIf,
60
- g as waitForCondition,
61
- c as waitForLitRender
69
+ h as testIf,
70
+ d as waitForCondition,
71
+ g as waitForImageReady,
72
+ l as waitForLitRender
62
73
  };
@@ -5059,6 +5059,17 @@
5059
5059
  }
5060
5060
  ],
5061
5061
  "members": [
5062
+ {
5063
+ "kind": "field",
5064
+ "name": "events",
5065
+ "privacy": "public",
5066
+ "static": true,
5067
+ "readonly": true,
5068
+ "default": "{ error: 'error', load: 'load', }",
5069
+ "type": {
5070
+ "text": "{\n error: 'error',\n load: 'load',\n }"
5071
+ }
5072
+ },
5062
5073
  {
5063
5074
  "kind": "field",
5064
5075
  "name": "_captionElement",
@@ -5267,6 +5278,16 @@
5267
5278
  "attribute": "aspect-ratio",
5268
5279
  "reflects": true
5269
5280
  },
5281
+ {
5282
+ "kind": "field",
5283
+ "name": "complete",
5284
+ "type": {
5285
+ "text": "boolean"
5286
+ },
5287
+ "privacy": "public",
5288
+ "description": "Whether the image is finished loading or failed to load.",
5289
+ "readonly": true
5290
+ },
5270
5291
  {
5271
5292
  "kind": "method",
5272
5293
  "name": "_logPerformanceMarks",
@@ -5366,6 +5387,22 @@
5366
5387
  }
5367
5388
  }
5368
5389
  ],
5390
+ "events": [
5391
+ {
5392
+ "name": "load",
5393
+ "type": {
5394
+ "text": "Event"
5395
+ },
5396
+ "description": "Emits when the image has been loaded."
5397
+ },
5398
+ {
5399
+ "name": "error",
5400
+ "type": {
5401
+ "text": "Event"
5402
+ },
5403
+ "description": "Emits when the image loading ended in an error."
5404
+ }
5405
+ ],
5369
5406
  "attributes": [
5370
5407
  {
5371
5408
  "name": "alt",
@@ -29897,7 +29934,7 @@
29897
29934
  "declarations": [
29898
29935
  {
29899
29936
  "kind": "class",
29900
- "description": "This class exists to facilitate the E2E test migration from stencil to lit.\nIt mimics the API that stencil provided to test events.\n\nTODO: Document me",
29937
+ "description": "This class exists to facilitate the test migration from stencil to lit.\nIt mimics the API that stencil provided to test events.\n\nTODO: Document me",
29901
29938
  "name": "EventSpy",
29902
29939
  "members": [
29903
29940
  {
@@ -30073,6 +30110,27 @@
30073
30110
  }
30074
30111
  ]
30075
30112
  },
30113
+ {
30114
+ "kind": "function",
30115
+ "name": "waitForImageReady",
30116
+ "return": {
30117
+ "type": {
30118
+ "text": "Promise<void>"
30119
+ }
30120
+ },
30121
+ "parameters": [
30122
+ {
30123
+ "name": "element",
30124
+ "type": {
30125
+ "text": "HTMLImageElement | SbbImageElement"
30126
+ }
30127
+ },
30128
+ {
30129
+ "name": "timeoutInMilliseconds",
30130
+ "default": "2 * 1000"
30131
+ }
30132
+ ]
30133
+ },
30076
30134
  {
30077
30135
  "kind": "function",
30078
30136
  "name": "isReactiveElement",
@@ -30153,6 +30211,14 @@
30153
30211
  "module": "core/testing.js"
30154
30212
  }
30155
30213
  },
30214
+ {
30215
+ "kind": "js",
30216
+ "name": "waitForImageReady",
30217
+ "declaration": {
30218
+ "name": "waitForImageReady",
30219
+ "module": "core/testing.js"
30220
+ }
30221
+ },
30156
30222
  {
30157
30223
  "kind": "js",
30158
30224
  "name": "isReactiveElement",
@@ -47749,11 +47815,11 @@
47749
47815
  {
47750
47816
  "kind": "field",
47751
47817
  "name": "horizontalFrom",
47818
+ "privacy": "public",
47819
+ "description": "Overrides the behaviour of `orientation` property.",
47752
47820
  "type": {
47753
47821
  "text": "SbbHorizontalFrom | undefined"
47754
47822
  },
47755
- "privacy": "public",
47756
- "description": "Overrides the behaviour of `orientation` property.",
47757
47823
  "attribute": "horizontal-from",
47758
47824
  "reflects": true
47759
47825
  },
@@ -48009,10 +48075,10 @@
48009
48075
  },
48010
48076
  {
48011
48077
  "name": "horizontal-from",
48078
+ "description": "Overrides the behaviour of `orientation` property.",
48012
48079
  "type": {
48013
48080
  "text": "SbbHorizontalFrom | undefined"
48014
48081
  },
48015
- "description": "Overrides the behaviour of `orientation` property.",
48016
48082
  "fieldName": "horizontalFrom"
48017
48083
  },
48018
48084
  {