Files
authentik/web/src/elements/buttons/ActionButton.ts
T
Jens L 859cf2bd8f lib: move id and key generators to lib (#1286)
* lib: move generators to lib

Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>

* core: bump default token key size

Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>

* *: fix split being used for http basic auth instead of partition

Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>

* web/elements: don't rethrow error in ActionButton

Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
2021-08-23 20:27:38 +02:00

33 lines
1.0 KiB
TypeScript

import { customElement, property } from "lit-element";
import { SpinnerButton } from "./SpinnerButton";
import { showMessage } from "../messages/MessageContainer";
import { MessageLevel } from "../messages/Message";
@customElement("ak-action-button")
export class ActionButton extends SpinnerButton {
@property({ attribute: false })
// eslint-disable-next-line @typescript-eslint/no-explicit-any
apiRequest: () => Promise<any> = () => {
throw new Error();
};
callAction = (): Promise<void> => {
this.setLoading();
return this.apiRequest().catch((e: Error | Response) => {
if (e instanceof Error) {
showMessage({
level: MessageLevel.error,
message: e.toString(),
});
} else {
e.text().then((t) => {
showMessage({
level: MessageLevel.error,
message: t,
});
});
}
});
};
}