Make sure the button's shadowdom is ready before starting any animations.

This commit is contained in:
trading_peter 2025-05-02 22:47:16 +02:00
parent d4e9235deb
commit 7878a60bf8
2 changed files with 9 additions and 3 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@tp/tp-button",
"version": "1.3.0",
"version": "1.3.2",
"description": "",
"main": "tp-button.js",
"scripts": {

View File

@ -1,6 +1,6 @@
/**
@license
Copyright (c) 2022 trading_peter
Copyright (c) 2025 trading_peter
This program is available under Apache License Version 2.0
*/
@ -234,6 +234,8 @@ class TpButton extends EventHelpers(LitElement) {
return;
}
await this.updateComplete;
if (this._isAnimating) {
this._queue.push('showSuccess');
return;
@ -253,6 +255,8 @@ class TpButton extends EventHelpers(LitElement) {
return;
}
await this.updateComplete;
if (this._isAnimating) {
this._queue.push('showError');
return;
@ -266,12 +270,14 @@ class TpButton extends EventHelpers(LitElement) {
this.locked = false;
}
showSpinner() {
async showSpinner() {
if (!this.extended) {
console.warn(this.tagName + ': Is not in extended mode!');
return;
}
await this.updateComplete;
if (this._isAnimating) {
this._queue.push('showSpinner');
return;