import { CSSResult, customElement, html, property, TemplateResult } from "lit-element"; import { t } from "@lingui/macro"; import { AuthenticatorsApi, WebAuthnDevice } from "authentik-api"; import { until } from "lit-html/directives/until"; import { FlowURLManager } from "../../../api/legacy"; import { DEFAULT_CONFIG } from "../../../api/Config"; import { BaseUserSettings } from "./BaseUserSettings"; import PFDataList from "@patternfly/patternfly/components/DataList/data-list.css"; import "../../../elements/buttons/ModalButton"; import "../../../elements/buttons/SpinnerButton"; import "../../../elements/forms/DeleteForm"; import "../../../elements/forms/Form"; import "../../../elements/forms/ModalForm"; import "../../../elements/forms/HorizontalFormElement"; import { ifDefined } from "lit-html/directives/if-defined"; @customElement("ak-user-settings-authenticator-webauthn") export class UserSettingsAuthenticatorWebAuthn extends BaseUserSettings { @property({type: Boolean}) configureFlow = false; static get styles(): CSSResult[] { return super.styles.concat(PFDataList); } renderDelete(device: WebAuthnDevice): TemplateResult { return html` { return new AuthenticatorsApi(DEFAULT_CONFIG).authenticatorsWebauthnDelete({ id: device.pk || 0 }); }}> `; } renderUpdate(device: WebAuthnDevice): TemplateResult { return html` ${t`Update`} ${t`Update`} { return new AuthenticatorsApi(DEFAULT_CONFIG).authenticatorsWebauthnUpdate({ id: device.pk || 0, data: data as WebAuthnDevice }); }}>
`; } render(): TemplateResult { return html`
${t`WebAuthn Devices`}
`; } }