web/admin: show warnings above tab bar
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
parent
d1b9f1e6b8
commit
0a413fe21a
|
@ -76,8 +76,7 @@ export class LDAPProviderViewPage extends LitElement {
|
||||||
if (!this.provider) {
|
if (!this.provider) {
|
||||||
return html``;
|
return html``;
|
||||||
}
|
}
|
||||||
return html`<ak-tabs>
|
return html` ${this.provider?.assignedApplicationName
|
||||||
${this.provider?.assignedApplicationName
|
|
||||||
? html``
|
? html``
|
||||||
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
||||||
${t`Warning: Provider is not used by an Application.`}
|
${t`Warning: Provider is not used by an Application.`}
|
||||||
|
@ -87,90 +86,91 @@ export class LDAPProviderViewPage extends LitElement {
|
||||||
${t`Warning: Provider is not used by any Outpost.`}
|
${t`Warning: Provider is not used by any Outpost.`}
|
||||||
</div>`
|
</div>`
|
||||||
: html``}
|
: html``}
|
||||||
<section
|
<ak-tabs>
|
||||||
slot="page-overview"
|
<section
|
||||||
data-tab-title="${t`Overview`}"
|
slot="page-overview"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
data-tab-title="${t`Overview`}"
|
||||||
>
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
<div class="pf-u-display-flex pf-u-justify-content-center">
|
>
|
||||||
<div class="pf-u-w-75">
|
<div class="pf-u-display-flex pf-u-justify-content-center">
|
||||||
<div class="pf-c-card">
|
<div class="pf-u-w-75">
|
||||||
<div class="pf-c-card__body">
|
<div class="pf-c-card">
|
||||||
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-description-list__group">
|
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Name`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Name`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${this.provider.name}
|
<div class="pf-c-description-list__text">
|
||||||
</div>
|
${this.provider.name}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Assigned to application`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Assigned to application`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
<ak-provider-related-application
|
<div class="pf-c-description-list__text">
|
||||||
.provider=${this.provider}
|
<ak-provider-related-application
|
||||||
></ak-provider-related-application>
|
.provider=${this.provider}
|
||||||
</div>
|
></ak-provider-related-application>
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Base DN`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Base DN`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${this.provider.baseDn}
|
<div class="pf-c-description-list__text">
|
||||||
</div>
|
${this.provider.baseDn}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
</dl>
|
</div>
|
||||||
</div>
|
</dl>
|
||||||
<div class="pf-c-card__footer">
|
</div>
|
||||||
<ak-forms-modal>
|
<div class="pf-c-card__footer">
|
||||||
<span slot="submit"> ${t`Update`} </span>
|
<ak-forms-modal>
|
||||||
<span slot="header"> ${t`Update LDAP Provider`} </span>
|
<span slot="submit"> ${t`Update`} </span>
|
||||||
<ak-provider-ldap-form
|
<span slot="header"> ${t`Update LDAP Provider`} </span>
|
||||||
slot="form"
|
<ak-provider-ldap-form
|
||||||
.instancePk=${this.provider.pk}
|
slot="form"
|
||||||
>
|
.instancePk=${this.provider.pk}
|
||||||
</ak-provider-ldap-form>
|
>
|
||||||
<button slot="trigger" class="pf-c-button pf-m-primary">
|
</ak-provider-ldap-form>
|
||||||
${t`Edit`}
|
<button slot="trigger" class="pf-c-button pf-m-primary">
|
||||||
</button>
|
${t`Edit`}
|
||||||
</ak-forms-modal>
|
</button>
|
||||||
|
</ak-forms-modal>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
<section
|
||||||
<section
|
slot="page-changelog"
|
||||||
slot="page-changelog"
|
data-tab-title="${t`Changelog`}"
|
||||||
data-tab-title="${t`Changelog`}"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
>
|
||||||
>
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-card__body">
|
<ak-object-changelog
|
||||||
<ak-object-changelog
|
targetModelPk=${this.provider.pk || ""}
|
||||||
targetModelPk=${this.provider.pk || ""}
|
targetModelApp="authentik_providers_ldap"
|
||||||
targetModelApp="authentik_providers_ldap"
|
targetModelName="LDAPProvider"
|
||||||
targetModelName="LDAPProvider"
|
>
|
||||||
>
|
</ak-object-changelog>
|
||||||
</ak-object-changelog>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
</ak-tabs>`;
|
||||||
</ak-tabs>`;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -85,233 +85,234 @@ export class OAuth2ProviderViewPage extends LitElement {
|
||||||
if (!this.provider) {
|
if (!this.provider) {
|
||||||
return html``;
|
return html``;
|
||||||
}
|
}
|
||||||
return html`<ak-tabs>
|
return html` ${this.provider?.assignedApplicationName
|
||||||
${this.provider?.assignedApplicationName
|
|
||||||
? html``
|
? html``
|
||||||
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
||||||
${t`Warning: Provider is not used by an Application.`}
|
${t`Warning: Provider is not used by an Application.`}
|
||||||
</div>`}
|
</div>`}<ak-tabs>
|
||||||
<section
|
<section
|
||||||
slot="page-overview"
|
slot="page-overview"
|
||||||
data-tab-title="${t`Overview`}"
|
data-tab-title="${t`Overview`}"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
>
|
>
|
||||||
<div class="pf-u-display-flex pf-u-justify-content-center">
|
<div class="pf-u-display-flex pf-u-justify-content-center">
|
||||||
<div class="pf-u-w-75">
|
<div class="pf-u-w-75">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card__body">
|
<div class="pf-c-card__body">
|
||||||
<dl class="pf-c-description-list pf-m-2-col-on-lg">
|
<dl class="pf-c-description-list pf-m-2-col-on-lg">
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Name`}</span
|
>${t`Name`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
${this.provider.name}
|
${this.provider.name}
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Assigned to application`}</span
|
>${t`Assigned to application`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
<ak-provider-related-application
|
<ak-provider-related-application
|
||||||
.provider=${this.provider}
|
.provider=${this.provider}
|
||||||
></ak-provider-related-application>
|
></ak-provider-related-application>
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Client type`}</span
|
>${t`Client type`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
${convertToTitle(this.provider.clientType || "")}
|
${convertToTitle(
|
||||||
</div>
|
this.provider.clientType || "",
|
||||||
</dd>
|
)}
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
</dd>
|
||||||
<dt class="pf-c-description-list__term">
|
</div>
|
||||||
<span class="pf-c-description-list__text"
|
<div class="pf-c-description-list__group">
|
||||||
>${t`Client ID`}</span
|
<dt class="pf-c-description-list__term">
|
||||||
>
|
<span class="pf-c-description-list__text"
|
||||||
</dt>
|
>${t`Client ID`}</span
|
||||||
<dd class="pf-c-description-list__description">
|
>
|
||||||
<div class="pf-c-description-list__text">
|
</dt>
|
||||||
${this.provider.clientId}
|
<dd class="pf-c-description-list__description">
|
||||||
</div>
|
<div class="pf-c-description-list__text">
|
||||||
</dd>
|
${this.provider.clientId}
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
</dd>
|
||||||
<dt class="pf-c-description-list__term">
|
</div>
|
||||||
<span class="pf-c-description-list__text"
|
<div class="pf-c-description-list__group">
|
||||||
>${t`Redirect URIs`}</span
|
<dt class="pf-c-description-list__term">
|
||||||
>
|
<span class="pf-c-description-list__text"
|
||||||
</dt>
|
>${t`Redirect URIs`}</span
|
||||||
<dd class="pf-c-description-list__description">
|
>
|
||||||
<div class="pf-c-description-list__text">
|
</dt>
|
||||||
${this.provider.redirectUris}
|
<dd class="pf-c-description-list__description">
|
||||||
</div>
|
<div class="pf-c-description-list__text">
|
||||||
</dd>
|
${this.provider.redirectUris}
|
||||||
</div>
|
</div>
|
||||||
</dl>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-card__footer">
|
</dl>
|
||||||
<ak-forms-modal>
|
</div>
|
||||||
<span slot="submit"> ${t`Update`} </span>
|
<div class="pf-c-card__footer">
|
||||||
<span slot="header"> ${t`Update OAuth2 Provider`} </span>
|
<ak-forms-modal>
|
||||||
<ak-provider-oauth2-form
|
<span slot="submit"> ${t`Update`} </span>
|
||||||
slot="form"
|
<span slot="header"> ${t`Update OAuth2 Provider`} </span>
|
||||||
.instancePk=${this.provider.pk || 0}
|
<ak-provider-oauth2-form
|
||||||
>
|
slot="form"
|
||||||
</ak-provider-oauth2-form>
|
.instancePk=${this.provider.pk || 0}
|
||||||
<button slot="trigger" class="pf-c-button pf-m-primary">
|
>
|
||||||
${t`Edit`}
|
</ak-provider-oauth2-form>
|
||||||
</button>
|
<button slot="trigger" class="pf-c-button pf-m-primary">
|
||||||
</ak-forms-modal>
|
${t`Edit`}
|
||||||
|
</button>
|
||||||
|
</ak-forms-modal>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
<section
|
||||||
<section
|
slot="page-changelog"
|
||||||
slot="page-changelog"
|
data-tab-title="${t`Changelog`}"
|
||||||
data-tab-title="${t`Changelog`}"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
>
|
||||||
>
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-card__body">
|
<ak-object-changelog
|
||||||
<ak-object-changelog
|
targetModelPk=${this.provider.pk || ""}
|
||||||
targetModelPk=${this.provider.pk || ""}
|
targetModelApp="authentik_providers_oauth2"
|
||||||
targetModelApp="authentik_providers_oauth2"
|
targetModelName="oauth2provider"
|
||||||
targetModelName="oauth2provider"
|
>
|
||||||
>
|
</ak-object-changelog>
|
||||||
</ak-object-changelog>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
<section
|
||||||
<section
|
slot="page-metadata"
|
||||||
slot="page-metadata"
|
data-tab-title="${t`Metadata`}"
|
||||||
data-tab-title="${t`Metadata`}"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
>
|
||||||
>
|
<div class="pf-u-display-flex pf-u-justify-content-center">
|
||||||
<div class="pf-u-display-flex pf-u-justify-content-center">
|
<div class="pf-u-w-75">
|
||||||
<div class="pf-u-w-75">
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-card__body">
|
<form class="pf-c-form">
|
||||||
<form class="pf-c-form">
|
<div class="pf-c-form__group">
|
||||||
<div class="pf-c-form__group">
|
<label
|
||||||
<label
|
class="pf-c-form__label"
|
||||||
class="pf-c-form__label"
|
for="help-text-simple-form-name"
|
||||||
for="help-text-simple-form-name"
|
|
||||||
>
|
|
||||||
<span class="pf-c-form__label-text"
|
|
||||||
>${t`OpenID Configuration URL`}</span
|
|
||||||
>
|
>
|
||||||
</label>
|
<span class="pf-c-form__label-text"
|
||||||
<input
|
>${t`OpenID Configuration URL`}</span
|
||||||
class="pf-c-form-control"
|
>
|
||||||
readonly
|
</label>
|
||||||
type="text"
|
<input
|
||||||
value="${this.providerUrls?.providerInfo || t`-`}"
|
class="pf-c-form-control"
|
||||||
/>
|
readonly
|
||||||
</div>
|
type="text"
|
||||||
<div class="pf-c-form__group">
|
value="${this.providerUrls?.providerInfo || t`-`}"
|
||||||
<label
|
/>
|
||||||
class="pf-c-form__label"
|
</div>
|
||||||
for="help-text-simple-form-name"
|
<div class="pf-c-form__group">
|
||||||
>
|
<label
|
||||||
<span class="pf-c-form__label-text"
|
class="pf-c-form__label"
|
||||||
>${t`OpenID Configuration Issuer`}</span
|
for="help-text-simple-form-name"
|
||||||
>
|
>
|
||||||
</label>
|
<span class="pf-c-form__label-text"
|
||||||
<input
|
>${t`OpenID Configuration Issuer`}</span
|
||||||
class="pf-c-form-control"
|
>
|
||||||
readonly
|
</label>
|
||||||
type="text"
|
<input
|
||||||
value="${this.providerUrls?.issuer || t`-`}"
|
class="pf-c-form-control"
|
||||||
/>
|
readonly
|
||||||
</div>
|
type="text"
|
||||||
<hr />
|
value="${this.providerUrls?.issuer || t`-`}"
|
||||||
<div class="pf-c-form__group">
|
/>
|
||||||
<label
|
</div>
|
||||||
class="pf-c-form__label"
|
<hr />
|
||||||
for="help-text-simple-form-name"
|
<div class="pf-c-form__group">
|
||||||
>
|
<label
|
||||||
<span class="pf-c-form__label-text"
|
class="pf-c-form__label"
|
||||||
>${t`Authorize URL`}</span
|
for="help-text-simple-form-name"
|
||||||
>
|
>
|
||||||
</label>
|
<span class="pf-c-form__label-text"
|
||||||
<input
|
>${t`Authorize URL`}</span
|
||||||
class="pf-c-form-control"
|
>
|
||||||
readonly
|
</label>
|
||||||
type="text"
|
<input
|
||||||
value="${this.providerUrls?.authorize || t`-`}"
|
class="pf-c-form-control"
|
||||||
/>
|
readonly
|
||||||
</div>
|
type="text"
|
||||||
<div class="pf-c-form__group">
|
value="${this.providerUrls?.authorize || t`-`}"
|
||||||
<label
|
/>
|
||||||
class="pf-c-form__label"
|
</div>
|
||||||
for="help-text-simple-form-name"
|
<div class="pf-c-form__group">
|
||||||
>
|
<label
|
||||||
<span class="pf-c-form__label-text"
|
class="pf-c-form__label"
|
||||||
>${t`Token URL`}</span
|
for="help-text-simple-form-name"
|
||||||
>
|
>
|
||||||
</label>
|
<span class="pf-c-form__label-text"
|
||||||
<input
|
>${t`Token URL`}</span
|
||||||
class="pf-c-form-control"
|
>
|
||||||
readonly
|
</label>
|
||||||
type="text"
|
<input
|
||||||
value="${this.providerUrls?.token || t`-`}"
|
class="pf-c-form-control"
|
||||||
/>
|
readonly
|
||||||
</div>
|
type="text"
|
||||||
<div class="pf-c-form__group">
|
value="${this.providerUrls?.token || t`-`}"
|
||||||
<label
|
/>
|
||||||
class="pf-c-form__label"
|
</div>
|
||||||
for="help-text-simple-form-name"
|
<div class="pf-c-form__group">
|
||||||
>
|
<label
|
||||||
<span class="pf-c-form__label-text"
|
class="pf-c-form__label"
|
||||||
>${t`Userinfo URL`}</span
|
for="help-text-simple-form-name"
|
||||||
>
|
>
|
||||||
</label>
|
<span class="pf-c-form__label-text"
|
||||||
<input
|
>${t`Userinfo URL`}</span
|
||||||
class="pf-c-form-control"
|
>
|
||||||
readonly
|
</label>
|
||||||
type="text"
|
<input
|
||||||
value="${this.providerUrls?.userInfo || t`-`}"
|
class="pf-c-form-control"
|
||||||
/>
|
readonly
|
||||||
</div>
|
type="text"
|
||||||
<div class="pf-c-form__group">
|
value="${this.providerUrls?.userInfo || t`-`}"
|
||||||
<label
|
/>
|
||||||
class="pf-c-form__label"
|
</div>
|
||||||
for="help-text-simple-form-name"
|
<div class="pf-c-form__group">
|
||||||
>
|
<label
|
||||||
<span class="pf-c-form__label-text"
|
class="pf-c-form__label"
|
||||||
>${t`Logout URL`}</span
|
for="help-text-simple-form-name"
|
||||||
>
|
>
|
||||||
</label>
|
<span class="pf-c-form__label-text"
|
||||||
<input
|
>${t`Logout URL`}</span
|
||||||
class="pf-c-form-control"
|
>
|
||||||
readonly
|
</label>
|
||||||
type="text"
|
<input
|
||||||
value="${this.providerUrls?.logout || t`-`}"
|
class="pf-c-form-control"
|
||||||
/>
|
readonly
|
||||||
</div>
|
type="text"
|
||||||
</form>
|
value="${this.providerUrls?.logout || t`-`}"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
</ak-tabs>`;
|
||||||
</ak-tabs>`;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,8 +73,7 @@ export class ProxyProviderViewPage extends LitElement {
|
||||||
if (!this.provider) {
|
if (!this.provider) {
|
||||||
return html``;
|
return html``;
|
||||||
}
|
}
|
||||||
return html` <ak-tabs>
|
return html` ${this.provider?.assignedApplicationName
|
||||||
${this.provider?.assignedApplicationName
|
|
||||||
? html``
|
? html``
|
||||||
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
||||||
${t`Warning: Provider is not used by an Application.`}
|
${t`Warning: Provider is not used by an Application.`}
|
||||||
|
@ -84,165 +83,166 @@ export class ProxyProviderViewPage extends LitElement {
|
||||||
${t`Warning: Provider is not used by any Outpost.`}
|
${t`Warning: Provider is not used by any Outpost.`}
|
||||||
</div>`
|
</div>`
|
||||||
: html``}
|
: html``}
|
||||||
<section
|
<ak-tabs>
|
||||||
slot="page-overview"
|
<section
|
||||||
data-tab-title="${t`Overview`}"
|
slot="page-overview"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
data-tab-title="${t`Overview`}"
|
||||||
>
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
<div class="pf-l-grid pf-m-gutter">
|
>
|
||||||
<div class="pf-l-grid__item pf-m-6-col">
|
<div class="pf-l-grid pf-m-gutter">
|
||||||
<div class="pf-c-card">
|
<div class="pf-l-grid__item pf-m-6-col">
|
||||||
<div class="pf-c-card__body">
|
<div class="pf-c-card">
|
||||||
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-description-list__group">
|
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Name`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Name`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${this.provider.name}
|
<div class="pf-c-description-list__text">
|
||||||
</div>
|
${this.provider.name}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Assigned to application`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Assigned to application`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
<ak-provider-related-application
|
<div class="pf-c-description-list__text">
|
||||||
.provider=${this.provider}
|
<ak-provider-related-application
|
||||||
></ak-provider-related-application>
|
.provider=${this.provider}
|
||||||
</div>
|
></ak-provider-related-application>
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Internal Host`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Internal Host`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${this.provider.internalHost}
|
<div class="pf-c-description-list__text">
|
||||||
</div>
|
${this.provider.internalHost}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`External Host`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`External Host`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${this.provider.externalHost}
|
<div class="pf-c-description-list__text">
|
||||||
</div>
|
${this.provider.externalHost}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Basic-Auth`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Basic-Auth`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${this.provider.basicAuthEnabled
|
<div class="pf-c-description-list__text">
|
||||||
? html`<span
|
${this.provider.basicAuthEnabled
|
||||||
class="pf-c-button__icon pf-m-start"
|
? html`<span
|
||||||
>
|
class="pf-c-button__icon pf-m-start"
|
||||||
<i
|
>
|
||||||
class="fas fa-check-circle"
|
<i
|
||||||
aria-hidden="true"
|
class="fas fa-check-circle"
|
||||||
></i
|
aria-hidden="true"
|
||||||
> </span
|
></i
|
||||||
>${t`Yes`}`
|
> </span
|
||||||
: html`<span
|
>${t`Yes`}`
|
||||||
class="pf-c-button__icon pf-m-start"
|
: html`<span
|
||||||
>
|
class="pf-c-button__icon pf-m-start"
|
||||||
<i
|
>
|
||||||
class="fas fa-times-circle"
|
<i
|
||||||
aria-hidden="true"
|
class="fas fa-times-circle"
|
||||||
></i
|
aria-hidden="true"
|
||||||
> </span
|
></i
|
||||||
>${t`No`}`}
|
> </span
|
||||||
</div>
|
>${t`No`}`}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
<div class="pf-c-description-list__group">
|
</div>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-description-list__group">
|
||||||
<span class="pf-c-description-list__text"
|
<dt class="pf-c-description-list__term">
|
||||||
>${t`Mode`}</span
|
<span class="pf-c-description-list__text"
|
||||||
>
|
>${t`Mode`}</span
|
||||||
</dt>
|
>
|
||||||
<dd class="pf-c-description-list__description">
|
</dt>
|
||||||
<div class="pf-c-description-list__text">
|
<dd class="pf-c-description-list__description">
|
||||||
${convertToTitle(this.provider.mode || "")}
|
<div class="pf-c-description-list__text">
|
||||||
</div>
|
${convertToTitle(this.provider.mode || "")}
|
||||||
</dd>
|
</div>
|
||||||
</div>
|
</dd>
|
||||||
</dl>
|
</div>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<div class="pf-c-card__footer">
|
||||||
|
<ak-forms-modal>
|
||||||
|
<span slot="submit"> ${t`Update`} </span>
|
||||||
|
<span slot="header"> ${t`Update Proxy Provider`} </span>
|
||||||
|
<ak-provider-proxy-form
|
||||||
|
slot="form"
|
||||||
|
.instancePk=${this.provider.pk || 0}
|
||||||
|
>
|
||||||
|
</ak-provider-proxy-form>
|
||||||
|
<button slot="trigger" class="pf-c-button pf-m-primary">
|
||||||
|
${t`Edit`}
|
||||||
|
</button>
|
||||||
|
</ak-forms-modal>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-card__footer">
|
</div>
|
||||||
<ak-forms-modal>
|
<div class="pf-l-grid__item pf-m-6-col">
|
||||||
<span slot="submit"> ${t`Update`} </span>
|
<div class="pf-c-card">
|
||||||
<span slot="header"> ${t`Update Proxy Provider`} </span>
|
<div class="pf-c-card__title">${t`Protocol Settings`}</div>
|
||||||
<ak-provider-proxy-form
|
<div class="pf-c-card__body">
|
||||||
slot="form"
|
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
||||||
.instancePk=${this.provider.pk || 0}
|
<div class="pf-c-description-list__group">
|
||||||
>
|
<dt class="pf-c-description-list__term">
|
||||||
</ak-provider-proxy-form>
|
<span class="pf-c-description-list__text"
|
||||||
<button slot="trigger" class="pf-c-button pf-m-primary">
|
>${t`Allowed Redirect URIs`}</span
|
||||||
${t`Edit`}
|
>
|
||||||
</button>
|
</dt>
|
||||||
</ak-forms-modal>
|
<dd class="pf-c-description-list__description">
|
||||||
|
<div class="pf-c-description-list__text">
|
||||||
|
${this.provider.redirectUris}
|
||||||
|
</div>
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-l-grid__item pf-m-6-col">
|
</section>
|
||||||
<div class="pf-c-card">
|
<section
|
||||||
<div class="pf-c-card__title">${t`Protocol Settings`}</div>
|
slot="page-changelog"
|
||||||
<div class="pf-c-card__body">
|
data-tab-title="${t`Changelog`}"
|
||||||
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
<div class="pf-c-description-list__group">
|
>
|
||||||
<dt class="pf-c-description-list__term">
|
<div class="pf-c-card">
|
||||||
<span class="pf-c-description-list__text"
|
<div class="pf-c-card__body">
|
||||||
>${t`Allowed Redirect URIs`}</span
|
<ak-object-changelog
|
||||||
>
|
targetModelPk=${this.provider.pk || ""}
|
||||||
</dt>
|
targetModelApp="authentik_providers_proxy"
|
||||||
<dd class="pf-c-description-list__description">
|
targetModelName="proxyprovider"
|
||||||
<div class="pf-c-description-list__text">
|
>
|
||||||
${this.provider.redirectUris}
|
</ak-object-changelog>
|
||||||
</div>
|
|
||||||
</dd>
|
|
||||||
</div>
|
|
||||||
</dl>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
</ak-tabs>`;
|
||||||
<section
|
|
||||||
slot="page-changelog"
|
|
||||||
data-tab-title="${t`Changelog`}"
|
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
|
||||||
>
|
|
||||||
<div class="pf-c-card">
|
|
||||||
<div class="pf-c-card__body">
|
|
||||||
<ak-object-changelog
|
|
||||||
targetModelPk=${this.provider.pk || ""}
|
|
||||||
targetModelApp="authentik_providers_proxy"
|
|
||||||
targetModelName="proxyprovider"
|
|
||||||
>
|
|
||||||
</ak-object-changelog>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</ak-tabs>`;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -79,168 +79,167 @@ export class SAMLProviderViewPage extends LitElement {
|
||||||
if (!this.provider) {
|
if (!this.provider) {
|
||||||
return html``;
|
return html``;
|
||||||
}
|
}
|
||||||
return html`<ak-tabs>
|
return html` ${this.provider?.assignedApplicationName
|
||||||
${this.provider?.assignedApplicationName
|
|
||||||
? html``
|
? html``
|
||||||
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
: html`<div slot="header" class="pf-c-banner pf-m-warning">
|
||||||
${t`Warning: Provider is not used by an Application.`}
|
${t`Warning: Provider is not used by an Application.`}
|
||||||
</div>`}
|
</div>`}<ak-tabs>
|
||||||
<section
|
<section
|
||||||
slot="page-overview"
|
slot="page-overview"
|
||||||
data-tab-title="${t`Overview`}"
|
data-tab-title="${t`Overview`}"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
>
|
>
|
||||||
<div class="pf-u-display-flex pf-u-justify-content-center">
|
<div class="pf-u-display-flex pf-u-justify-content-center">
|
||||||
<div class="pf-u-w-75">
|
<div class="pf-u-w-75">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card__body">
|
<div class="pf-c-card__body">
|
||||||
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
<dl class="pf-c-description-list pf-m-3-col-on-lg">
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Name`}</span
|
>${t`Name`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
${this.provider.name}
|
${this.provider.name}
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Assigned to application`}</span
|
>${t`Assigned to application`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
<ak-provider-related-application
|
<ak-provider-related-application
|
||||||
.provider=${this.provider}
|
.provider=${this.provider}
|
||||||
></ak-provider-related-application>
|
></ak-provider-related-application>
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`ACS URL`}</span
|
>${t`ACS URL`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
${this.provider.acsUrl}
|
${this.provider.acsUrl}
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Audience`}</span
|
>${t`Audience`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
${this.provider.audience || "-"}
|
${this.provider.audience || "-"}
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-description-list__group">
|
<div class="pf-c-description-list__group">
|
||||||
<dt class="pf-c-description-list__term">
|
<dt class="pf-c-description-list__term">
|
||||||
<span class="pf-c-description-list__text"
|
<span class="pf-c-description-list__text"
|
||||||
>${t`Issuer`}</span
|
>${t`Issuer`}</span
|
||||||
>
|
>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="pf-c-description-list__description">
|
<dd class="pf-c-description-list__description">
|
||||||
<div class="pf-c-description-list__text">
|
<div class="pf-c-description-list__text">
|
||||||
${this.provider.issuer}
|
${this.provider.issuer}
|
||||||
</div>
|
</div>
|
||||||
</dd>
|
</dd>
|
||||||
</div>
|
</div>
|
||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
<div class="pf-c-card__footer">
|
<div class="pf-c-card__footer">
|
||||||
<ak-forms-modal>
|
<ak-forms-modal>
|
||||||
<span slot="submit"> ${t`Update`} </span>
|
<span slot="submit"> ${t`Update`} </span>
|
||||||
<span slot="header"> ${t`Update SAML Provider`} </span>
|
<span slot="header"> ${t`Update SAML Provider`} </span>
|
||||||
<ak-provider-saml-form
|
<ak-provider-saml-form
|
||||||
slot="form"
|
slot="form"
|
||||||
.instancePk=${this.provider.pk || 0}
|
.instancePk=${this.provider.pk || 0}
|
||||||
>
|
>
|
||||||
</ak-provider-saml-form>
|
</ak-provider-saml-form>
|
||||||
<button slot="trigger" class="pf-c-button pf-m-primary">
|
<button slot="trigger" class="pf-c-button pf-m-primary">
|
||||||
${t`Edit`}
|
${t`Edit`}
|
||||||
</button>
|
</button>
|
||||||
</ak-forms-modal>
|
</ak-forms-modal>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
<section
|
||||||
<section
|
slot="page-changelog"
|
||||||
slot="page-changelog"
|
data-tab-title="${t`Changelog`}"
|
||||||
data-tab-title="${t`Changelog`}"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
>
|
||||||
>
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-card__body">
|
<ak-object-changelog
|
||||||
<ak-object-changelog
|
targetModelPk=${this.provider.pk || ""}
|
||||||
targetModelPk=${this.provider.pk || ""}
|
targetModelApp="authentik_providers_saml"
|
||||||
targetModelApp="authentik_providers_saml"
|
targetModelName="samlprovider"
|
||||||
targetModelName="samlprovider"
|
>
|
||||||
>
|
</ak-object-changelog>
|
||||||
</ak-object-changelog>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
</section>
|
${this.provider.assignedApplicationName
|
||||||
${this.provider.assignedApplicationName
|
? html` <section
|
||||||
? html` <section
|
slot="page-metadata"
|
||||||
slot="page-metadata"
|
data-tab-title="${t`Metadata`}"
|
||||||
data-tab-title="${t`Metadata`}"
|
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
||||||
class="pf-c-page__main-section pf-m-no-padding-mobile"
|
>
|
||||||
>
|
<div class="pf-u-display-flex pf-u-justify-content-center">
|
||||||
<div class="pf-u-display-flex pf-u-justify-content-center">
|
<div class="pf-u-w-75">
|
||||||
<div class="pf-u-w-75">
|
<div class="pf-c-card">
|
||||||
<div class="pf-c-card">
|
<div class="pf-c-card__body">
|
||||||
<div class="pf-c-card__body">
|
${until(
|
||||||
${until(
|
new ProvidersApi(DEFAULT_CONFIG)
|
||||||
new ProvidersApi(DEFAULT_CONFIG)
|
.providersSamlMetadataRetrieve({
|
||||||
.providersSamlMetadataRetrieve({
|
id: this.provider.pk || 0,
|
||||||
id: this.provider.pk || 0,
|
})
|
||||||
})
|
.then((m) => {
|
||||||
.then((m) => {
|
return html`<ak-codemirror
|
||||||
return html`<ak-codemirror
|
mode="xml"
|
||||||
mode="xml"
|
?readOnly=${true}
|
||||||
?readOnly=${true}
|
value="${ifDefined(m.metadata)}"
|
||||||
value="${ifDefined(m.metadata)}"
|
></ak-codemirror>`;
|
||||||
></ak-codemirror>`;
|
}),
|
||||||
}),
|
)}
|
||||||
)}
|
</div>
|
||||||
</div>
|
<div class="pf-c-card__footer">
|
||||||
<div class="pf-c-card__footer">
|
<a
|
||||||
<a
|
class="pf-c-button pf-m-primary"
|
||||||
class="pf-c-button pf-m-primary"
|
target="_blank"
|
||||||
target="_blank"
|
href=${this.provider.metadataDownloadUrl}
|
||||||
href=${this.provider.metadataDownloadUrl}
|
>
|
||||||
>
|
${t`Download`}
|
||||||
${t`Download`}
|
</a>
|
||||||
</a>
|
<ak-action-button
|
||||||
<ak-action-button
|
.apiRequest=${() => {
|
||||||
.apiRequest=${() => {
|
const fullUrl =
|
||||||
const fullUrl =
|
window.location.origin +
|
||||||
window.location.origin +
|
this.provider?.metadataDownloadUrl;
|
||||||
this.provider?.metadataDownloadUrl;
|
return navigator.clipboard.writeText(fullUrl);
|
||||||
return navigator.clipboard.writeText(fullUrl);
|
}}
|
||||||
}}
|
>
|
||||||
>
|
${t`Copy download URL`}
|
||||||
${t`Copy download URL`}
|
</ak-action-button>
|
||||||
</ak-action-button>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>`
|
||||||
</section>`
|
: html``}
|
||||||
: html``}
|
</ak-tabs>`;
|
||||||
</ak-tabs>`;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue