Skip to content

Commit 6c217e9

Browse files
authored
fix(sbb-toggle): initial animation glitch (#2321)
1 parent 2fda05f commit 6c217e9

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/components/toggle/toggle/toggle.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ export class SbbToggleElement extends LitElement {
6767
@property({ attribute: 'disable-animation', reflect: true, type: Boolean })
6868
public disableAnimation = false;
6969

70+
private _loaded = false;
7071
private _toggleElement: HTMLElement;
7172
private _toggleResizeObserver = new AgnosticResizeObserver(() =>
7273
this._setCheckedPillPosition(true),
@@ -145,6 +146,10 @@ export class SbbToggleElement extends LitElement {
145146
}
146147

147148
private _setCheckedPillPosition(resizing: boolean): void {
149+
if (!this._loaded) {
150+
return;
151+
}
152+
148153
const options = this._options;
149154

150155
if (options.every((o) => !o.checked) || !this._toggleElement) {
@@ -187,9 +192,10 @@ export class SbbToggleElement extends LitElement {
187192
}
188193
}
189194

190-
protected override firstUpdated(changedProperties: PropertyValues): void {
195+
protected override async firstUpdated(changedProperties: PropertyValues): Promise<void> {
191196
super.firstUpdated(changedProperties);
192-
this._setCheckedPillPosition(false);
197+
await this.updateComplete;
198+
this._loaded = true;
193199
}
194200

195201
public override disconnectedCallback(): void {

0 commit comments

Comments
 (0)