web/admin: fix html error on oauth2 provider page (cherry-pick #7384) (#7424)

web/admin: fix html error on oauth2 provider page (#7384)

* web: break circular dependency between AKElement & Interface.

This commit changes the way the root node of the web application shell is
discovered by child components, such that the base class shared by both
no longer results in a circular dependency between the two models.

I've run this in isolation and have seen no failures of discovery; the identity
token exists as soon as the Interface is constructed and is found by every item
on the page.

* web: fix broken typescript references

This built... and then it didn't?  Anyway, the current fix is to
provide type information the AkInterface for the data that consumers
require.

* \# Details

Extra `>` symbol screwed up the reading of the rest of the component.  Unfortunately,
too many fields in an input are optional, so it was easy for this bug to bypass any
checks by the validators.  I should have caught it myself, though.

Co-authored-by: Ken Sternberg <133134217+kensternberg-authentik@users.noreply.github.com>
This commit is contained in:
gcp-cherry-pick-bot[bot] 2023-11-03 13:17:26 +01:00 committed by GitHub
parent 0fefd5f522
commit e4c251a178
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -334,13 +334,14 @@ export class OAuth2ProviderFormPage extends ModelForm<OAuth2Provider, number> {
)} )}
> >
</ak-radio-input> </ak-radio-input>
<ak-switch-input name="includeClaimsInIdToken"> <ak-switch-input
name="includeClaimsInIdToken"
label=${msg("Include claims in id_token")} label=${msg("Include claims in id_token")}
?checked=${first(provider?.includeClaimsInIdToken, true)} ?checked=${first(provider?.includeClaimsInIdToken, true)}
help=${msg( help=${msg(
"Include User claims from scopes in the id_token, for applications that don't access the userinfo endpoint.", "Include User claims from scopes in the id_token, for applications that don't access the userinfo endpoint.",
)}></ak-switch-input )}
> ></ak-switch-input>
<ak-radio-input <ak-radio-input
name="issuerMode" name="issuerMode"
label=${msg("Issuer mode")} label=${msg("Issuer mode")}