Revamp auth module to support multiple providers linked to a single auth identity (#7521)

This commit is contained in:
Stevche Radevski authored and GitHub committed 2024-06-05 07:47:16 +00:00
1 parent 20cd6a7b51
commit fafc92b875
23 files changed
+640 -216

No files matched your search

@@ -23,10 +23,14 @@ export class AuthServiceFixtures extends AbstractAuthModuleProvider {
try {
authIdentity = await service.retrieve({
entity_id: email,
provider: this.provider,
})
if (authIdentity.provider_metadata?.password === password) {
// The provider has to be present, guaranteed by the retrieve filter above.
const providerIdentity = authIdentity.provider_identities?.find(
(pi) => pi.provider === this.provider
)!
if (providerIdentity.provider_metadata?.password === password) {
return {
success: true,
authIdentity,
@@ -36,7 +40,6 @@ export class AuthServiceFixtures extends AbstractAuthModuleProvider {
if (error.type === MedusaError.Types.NOT_FOUND) {
const createdAuthIdentity = await service.create({
entity_id: email,
provider: this.provider,
provider_metadata: {
password,
},