fix: Add actor type to password reset event (#9301)

This commit is contained in:
Stevche Radevski
2024-09-25 12:26:45 +02:00
committed by GitHub
parent 358435d715
commit 7c4960a4d1
3 changed files with 14 additions and 6 deletions

View File

@@ -184,6 +184,7 @@ medusaIntegrationTestRunner({
).run({
input: {
entityId: "test@medusa-commerce.com",
actorType: "user",
provider: "emailpass",
secret: "test",
},
@@ -236,6 +237,7 @@ medusaIntegrationTestRunner({
).run({
input: {
entityId: "test@medusa-commerce.com",
actorType: "user",
provider: "emailpass",
secret: "test",
},

View File

@@ -2,17 +2,22 @@ import {
AuthWorkflowEvents,
generateJwtToken,
MedusaError,
} from "@medusajs/utils";
} from "@medusajs/utils"
import {
createWorkflow,
transform,
WorkflowResponse,
} from "@medusajs/workflows-sdk";
import { emitEventStep, useRemoteQueryStep } from "../../common";
} from "@medusajs/workflows-sdk"
import { emitEventStep, useRemoteQueryStep } from "../../common"
export const generateResetPasswordTokenWorkflow = createWorkflow(
"generate-reset-password-token",
(input: { entityId: string; provider: string; secret: string }) => {
(input: {
entityId: string
actorType: string
provider: string
secret: string
}) => {
const providerIdentities = useRemoteQueryStep({
entry_point: "provider_identity",
fields: ["auth_identity_id", "provider_metadata"],
@@ -53,7 +58,7 @@ export const generateResetPasswordTokenWorkflow = createWorkflow(
emitEventStep({
eventName: AuthWorkflowEvents.PASSWORD_RESET,
data: { entity_id: input.entityId, token },
data: { entity_id: input.entityId, actorType: input.actorType, token },
})
return new WorkflowResponse(token)

View File

@@ -9,7 +9,7 @@ export const POST = async (
req: AuthenticatedMedusaRequest,
res: MedusaResponse
) => {
const { auth_provider } = req.params
const { auth_provider, actor_type } = req.params
const { identifier } = req.body
const { http } = req.scope.resolve(
@@ -19,6 +19,7 @@ export const POST = async (
await generateResetPasswordTokenWorkflow(req.scope).run({
input: {
entityId: identifier,
actorType: actor_type,
provider: auth_provider,
secret: http.jwtSecret as string,
},