Skip to content

Commit fb5c82c

Browse files
feat(VCST-4297): replace deprecated query to mutation for reset password (#2060)
## Description ## References ### Jira-link: https://virtocommerce.atlassian.net/browse/VCST-4297 ### Artifact URL: https://vc3prerelease.blob.core.windows.net/packages/vc-theme-b2b-vue-2.35.0-pr-2060-d811-d811f4b9.zip Co-authored-by: Elena Mutykova <56412054+Lenajava1@users.noreply.github.com>
1 parent a64985c commit fb5c82c

6 files changed

Lines changed: 64 additions & 2 deletions

File tree

client-app/core/api/graphql/account/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ export * from "./mutations/registerAccount";
1515
export * from "./mutations/registerByInvitation";
1616
export * from "./mutations/removeAddressFromFavorites";
1717
export * from "./mutations/resetPasswordByToken";
18+
export * from "./mutations/sendPasswordResetEmail";
1819
export * from "./mutations/sendVerifyEmail";
1920
export * from "./mutations/updateContact";
2021
export * from "./mutations/updateMemberAddresses";
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import { globals } from "@/core/globals";
2+
import { graphqlClient } from "../../../client";
3+
import mutationDocument from "./sendPasswordResetEmail.graphql";
4+
import type {
5+
SendPasswordResetEmailCommandType,
6+
Mutations,
7+
MutationsSendPasswordResetEmailArgs,
8+
} from "@/core/api/graphql/types";
9+
10+
export async function sendPasswordResetEmail(payload: SendPasswordResetEmailCommandType): Promise<boolean | undefined> {
11+
const { storeId, cultureName } = globals;
12+
13+
const { data } = await graphqlClient.mutate<
14+
Required<Pick<Mutations, "sendPasswordResetEmail">>,
15+
MutationsSendPasswordResetEmailArgs
16+
>({
17+
mutation: mutationDocument,
18+
variables: {
19+
command: {
20+
cultureName,
21+
storeId,
22+
...payload,
23+
},
24+
},
25+
});
26+
27+
return data?.sendPasswordResetEmail;
28+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
mutation sendPasswordResetEmail($command: SendPasswordResetEmailCommandType!) {
2+
sendPasswordResetEmail(command: $command)
3+
}

client-app/core/api/graphql/account/queries/requestPasswordReset/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ import { graphqlClient } from "../../../client";
33
import requestPasswordResetDocument from "./requestPasswordReset.graphql";
44
import type { Query, QueryRequestPasswordResetArgs } from "@/core/api/graphql/types";
55

6+
/**
7+
* @deprecated Use sendPasswordResetEmail mutation instead
8+
*/
69
export async function requestPasswordReset(payload: QueryRequestPasswordResetArgs): Promise<boolean> {
710
const { storeId, cultureName } = globals;
811

client-app/core/api/graphql/types.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3282,6 +3282,7 @@ export type Mutations = {
32823282
saveSearchQuery?: Maybe<Scalars['Boolean']['output']>;
32833283
selectAllCartItems?: Maybe<CartType>;
32843284
selectCartItems?: Maybe<CartType>;
3285+
sendPasswordResetEmail?: Maybe<Scalars['Boolean']['output']>;
32853286
sendVerifyEmail?: Maybe<Scalars['Boolean']['output']>;
32863287
submitQuoteRequest?: Maybe<QuoteType>;
32873288
unSelectAllCartItems?: Maybe<CartType>;
@@ -3780,6 +3781,11 @@ export type MutationsSelectCartItemsArgs = {
37803781
};
37813782

37823783

3784+
export type MutationsSendPasswordResetEmailArgs = {
3785+
command: SendPasswordResetEmailCommandType;
3786+
};
3787+
3788+
37833789
export type MutationsSendVerifyEmailArgs = {
37843790
command?: InputMaybe<InputSendVerifyEmailType>;
37853791
};
@@ -5190,6 +5196,7 @@ export type Query = {
51905196
recentlyBrowsed?: Maybe<GetRecentlyBrowsedResponseType>;
51915197
recommendations?: Maybe<GetRecommendationsResponseType>;
51925198
regions: Array<CountryRegionType>;
5199+
/** @deprecated Deprecated. Use sendPasswordResetEmail command. */
51935200
requestPasswordReset?: Maybe<Scalars['Boolean']['output']>;
51945201
role?: Maybe<RoleType>;
51955202
searchHistory?: Maybe<SearchHistoryResultType>;
@@ -6228,6 +6235,13 @@ export type SearchProductFilterValue = {
62286235
value: Scalars['String']['output'];
62296236
};
62306237

6238+
export type SendPasswordResetEmailCommandType = {
6239+
cultureName?: InputMaybe<Scalars['String']['input']>;
6240+
loginOrEmail: Scalars['String']['input'];
6241+
storeId?: InputMaybe<Scalars['String']['input']>;
6242+
urlSuffix?: InputMaybe<Scalars['String']['input']>;
6243+
};
6244+
62316245
export type SeoInfo = {
62326246
id: Scalars['String']['output'];
62336247
imageAltDescription?: Maybe<Scalars['String']['output']>;
@@ -6385,6 +6399,8 @@ export type StoreResponseType = {
63856399
defaultCurrency: CurrencyType;
63866400
/** Language */
63876401
defaultLanguage: LanguageType;
6402+
/** Store dynamic property values */
6403+
dynamicProperties?: Maybe<Array<Maybe<DynamicPropertyValueType>>>;
63886404
/** GraphQL settings */
63896405
graphQLSettings: GraphQlSettingsType;
63906406
/** Store settings */
@@ -6943,6 +6959,13 @@ export type ResetPasswordByTokenMutationVariables = Exact<{
69436959

69446960
export type ResetPasswordByTokenMutation = { resetPasswordByToken?: { succeeded: boolean, errors?: Array<{ code: string, description?: string, parameter?: string }> } };
69456961

6962+
export type SendPasswordResetEmailMutationVariables = Exact<{
6963+
command: SendPasswordResetEmailCommandType;
6964+
}>;
6965+
6966+
6967+
export type SendPasswordResetEmailMutation = { sendPasswordResetEmail?: boolean };
6968+
69466969
export type SendVerifyEmailMutationVariables = Exact<{
69476970
command?: InputMaybe<InputSendVerifyEmailType>;
69486971
}>;
@@ -7852,6 +7875,7 @@ export const RequestRegistrationDocument = {"kind":"Document","definitions":[{"k
78527875
export const RegisterByInvitationDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"RegisterByInvitation"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"InputRegisterByInvitationType"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"registerByInvitation"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"succeeded"}},{"kind":"Field","name":{"kind":"Name","value":"errors"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"code"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"parameter"}}]}}]}}]}}]} as unknown as DocumentNode<RegisterByInvitationMutation, RegisterByInvitationMutationVariables>;
78537876
export const RemoveAddressFromFavoritesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"RemoveAddressFromFavorites"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"RemoveAddressFromFavoritesCommandType"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"removeAddressFromFavorites"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}]}]}}]} as unknown as DocumentNode<RemoveAddressFromFavoritesMutation, RemoveAddressFromFavoritesMutationVariables>;
78547877
export const ResetPasswordByTokenDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"ResetPasswordByToken"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"InputResetPasswordByTokenType"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"resetPasswordByToken"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"succeeded"}},{"kind":"Field","name":{"kind":"Name","value":"errors"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"code"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"parameter"}}]}}]}}]}}]} as unknown as DocumentNode<ResetPasswordByTokenMutation, ResetPasswordByTokenMutationVariables>;
7878+
export const SendPasswordResetEmailDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"sendPasswordResetEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"SendPasswordResetEmailCommandType"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sendPasswordResetEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}]}]}}]} as unknown as DocumentNode<SendPasswordResetEmailMutation, SendPasswordResetEmailMutationVariables>;
78557879
export const SendVerifyEmailDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"SendVerifyEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"InputSendVerifyEmailType"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sendVerifyEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}]}]}}]} as unknown as DocumentNode<SendVerifyEmailMutation, SendVerifyEmailMutationVariables>;
78567880
export const UpdateContactDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"updateContact"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"InputUpdateContactType"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"updateContact"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]} as unknown as DocumentNode<UpdateContactMutation, UpdateContactMutationVariables>;
78577881
export const UpdateMemberAddressesDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"UpdateMemberAddresses"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"command"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"InputUpdateMemberAddressType"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"updateMemberAddresses"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"command"},"value":{"kind":"Variable","name":{"kind":"Name","value":"command"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]} as unknown as DocumentNode<UpdateMemberAddressesMutation, UpdateMemberAddressesMutationVariables>;
@@ -8003,6 +8027,7 @@ export const OperationNames = {
80038027
RegisterByInvitation: 'RegisterByInvitation',
80048028
RemoveAddressFromFavorites: 'RemoveAddressFromFavorites',
80058029
ResetPasswordByToken: 'ResetPasswordByToken',
8030+
sendPasswordResetEmail: 'sendPasswordResetEmail',
80068031
SendVerifyEmail: 'SendVerifyEmail',
80078032
updateContact: 'updateContact',
80088033
UpdateMemberAddresses: 'UpdateMemberAddresses',

client-app/shared/account/composables/useUser.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {
77
inviteUser as _inviteUser,
88
registerAccount,
99
registerByInvitation,
10-
requestPasswordReset,
10+
sendPasswordResetEmail,
1111
resetPasswordByToken,
1212
updatePersonalData,
1313
changePassword as _changePassword,
@@ -268,10 +268,12 @@ export function _useUser() {
268268
try {
269269
loading.value = true;
270270

271-
return await requestPasswordReset({
271+
const data = await sendPasswordResetEmail({
272272
loginOrEmail: payload.email,
273273
urlSuffix: payload.resetPasswordUrlPath,
274274
});
275+
276+
return data ?? false;
275277
} catch (e) {
276278
Logger.error(`${useUser.name}.${forgotPassword.name}`, e);
277279
throw e;

0 commit comments

Comments
 (0)