import { t } from "@lingui/macro"; import { TemplateResult, html } from "lit"; import { customElement } from "lit/decorators.js"; import { until } from "lit/directives/until.js"; import { FlowsApi, FlowsInstancesListDesignationEnum, ProvidersApi, SAMLProvider, } from "@goauthentik/api"; import { DEFAULT_CONFIG } from "../../../api/Config"; import { SentryIgnoredError } from "../../../common/errors"; import { Form } from "../../../elements/forms/Form"; import "../../../elements/forms/HorizontalFormElement"; @customElement("ak-provider-saml-import-form") export class SAMLProviderImportForm extends Form { getSuccessMessage(): string { return t`Successfully imported provider.`; } // eslint-disable-next-line send = (data: SAMLProvider): Promise => { const file = this.getFormFile(); if (!file) { throw new SentryIgnoredError("No form data"); } return new ProvidersApi(DEFAULT_CONFIG).providersSamlImportMetadataCreate({ file: file, name: data.name, authorizationFlow: data.authorizationFlow, }); }; renderForm(): TemplateResult { return html`

${t`Flow used when authorizing this provider.`}

`; } }