Some checks failed
CI / Run tests and lints (push) Failing after 29s
CI / Build CLI docs (push) Has been skipped
CI / Run Playwright end-to-end tests (mysql) (push) Failing after 3s
CI / Run Playwright end-to-end tests (postgres) (push) Failing after 2s
CI / Run Playwright end-to-end tests (sqlite) (push) Failing after 3s
CodeQL / Analyze (go) (push) Failing after 4s
CodeQL / Analyze (javascript) (push) Failing after 3s
Docker Image Scanners / scanners (push) Failing after 4s
Synchronize Issue Labels / Synchronize Issue Labels (push) Has been skipped
CI / Run end-to-end tests (postgres) (push) Failing after 19s
CI / Run end-to-end tests (sqlite) (push) Failing after 2s
CI / Run Playwright end-to-end tests (cockroach) (push) Failing after 2s
CI / Draft newsletter (push) Has been skipped
CI / Generate release (push) Has been skipped
CI / Pending approval Slack notification (push) Has been skipped
CI / Send newsletter (push) Has been skipped
28 lines
834 B
Jsonnet
28 lines
834 B
Jsonnet
local claims = std.extVar('claims');
|
|
local identity = std.extVar('identity');
|
|
|
|
// Keep the website if the user has set one.
|
|
local website = std.get(identity.traits, "website", std.get(claims, "website", ""));
|
|
|
|
if std.length(claims.sub) == 0 then
|
|
error 'claim sub not set'
|
|
else
|
|
{
|
|
identity: {
|
|
traits: {
|
|
subject: claims.sub,
|
|
[if website != "" then "website" else null]: website,
|
|
[if "groups" in claims.raw_claims then "groups" else null]: claims.raw_claims.groups,
|
|
},
|
|
metadata_public: {
|
|
[if "picture" in claims then "picture" else null]: claims.picture,
|
|
},
|
|
metadata_admin: {
|
|
[if "phone_number" in claims then "phone_number" else null]: claims.phone_number,
|
|
},
|
|
verified_addresses: [
|
|
{ via: "email", value: claims.sub },
|
|
],
|
|
},
|
|
}
|