diff --git a/locale/defaultMessages.json b/locale/defaultMessages.json index 115047cf0..92fbc001a 100644 --- a/locale/defaultMessages.json +++ b/locale/defaultMessages.json @@ -2586,6 +2586,9 @@ "src_dot_home_dot_components_dot_HomeActivityCard_dot_draft": { "string": "Order #{orderId} was placed from draft by {userEmail}" }, + "src_dot_home_dot_components_dot_HomeActivityCard_dot_draft_no_email": { + "string": "Order #{orderId} was placed from draft" + }, "src_dot_home_dot_components_dot_HomeActivityCard_dot_paid": { "string": "Order #{orderId} was fully paid" }, diff --git a/src/home/components/HomeActivityCard/activityMessages.ts b/src/home/components/HomeActivityCard/activityMessages.ts index d89cb350c..045ceb413 100644 --- a/src/home/components/HomeActivityCard/activityMessages.ts +++ b/src/home/components/HomeActivityCard/activityMessages.ts @@ -7,6 +7,9 @@ const messages = defineMessages({ draft: { defaultMessage: "Order #{orderId} was placed from draft by {userEmail}" }, + draft_no_email: { + defaultMessage: "Order #{orderId} was placed from draft" + }, paid: { defaultMessage: "Order #{orderId} was fully paid" }, @@ -29,10 +32,17 @@ export const getActivityMessage = ( orderId: activity.orderNumber }); case OrderEventsEnum.PLACED_FROM_DRAFT: - return intl.formatMessage(messages.draft, { - orderId: activity.orderNumber, - userEmail: activity.user.email - }); + if (!!activity.user?.email) { + return intl.formatMessage(messages.draft, { + orderId: activity.orderNumber, + userEmail: activity.user?.email + }); + } else { + return intl.formatMessage(messages.draft_no_email, { + orderId: activity.orderNumber + }); + } + default: return activity.message; } diff --git a/src/home/fixtures.ts b/src/home/fixtures.ts index 580590de0..321c06a00 100644 --- a/src/home/fixtures.ts +++ b/src/home/fixtures.ts @@ -193,6 +193,28 @@ export const shop: (placeholderImage: string) => Home = ( } } }, + { + __typename: "OrderEventCountableEdge", + node: { + __typename: "OrderEvent", + amount: null, + composedId: null, + date: "2018-10-12T15:51:11.665838+00:00", + email: null, + emailType: null, + id: "T3JkZXJFdmVudDo3Nw==", + message: null, + orderNumber: "15", + oversoldItems: null, + quantity: null, + type: OrderEventsEnum.PLACED_FROM_DRAFT, + user: { + __typename: "User", + email: null, + id: "VXNlcjoyMQ==" + } + } + }, { __typename: "OrderEventCountableEdge", node: { diff --git a/src/storybook/__snapshots__/Stories.test.ts.snap b/src/storybook/__snapshots__/Stories.test.ts.snap index 63a1c7fbc..93ef683e4 100644 --- a/src/storybook/__snapshots__/Stories.test.ts.snap +++ b/src/storybook/__snapshots__/Stories.test.ts.snap @@ -64853,6 +64853,30 @@ exports[`Storyshots Views / HomePage default 1`] = ` +
  • +
    +
    + Order #15 was placed from draft +
    +
    + +
    +
    +
  • @@ -66158,6 +66182,30 @@ exports[`Storyshots Views / HomePage order permissions 1`] = `
  • +
  • +
    +
    + Order #15 was placed from draft +
    +
    + +
    +
    +