saleor-dashboard/src/auth/mutations.ts

101 lines
2.2 KiB
TypeScript
Raw Normal View History

2019-06-19 14:40:52 +00:00
import gql from "graphql-tag";
2020-03-10 13:33:43 +00:00
import { accountFragmentError } from "@saleor/customers/mutations";
2019-06-19 14:40:52 +00:00
import { TypedMutation } from "../mutations";
2019-09-02 19:23:37 +00:00
import {
RequestPasswordReset,
RequestPasswordResetVariables
} from "./types/RequestPasswordReset";
2019-09-03 13:42:15 +00:00
import { SetPassword, SetPasswordVariables } from "./types/SetPassword";
2019-06-19 14:40:52 +00:00
import { TokenAuth, TokenAuthVariables } from "./types/TokenAuth";
import { VerifyToken, VerifyTokenVariables } from "./types/VerifyToken";
export const fragmentUser = gql`
fragment User on User {
id
email
firstName
lastName
permissions {
code
name
}
2019-08-09 11:14:35 +00:00
avatar {
url
}
2019-06-19 14:40:52 +00:00
}
`;
export const tokenAuthMutation = gql`
${fragmentUser}
mutation TokenAuth($email: String!, $password: String!) {
tokenCreate(email: $email, password: $password) {
token
errors {
field
message
}
user {
...User
}
}
}
`;
export const TypedTokenAuthMutation = TypedMutation<
TokenAuth,
TokenAuthVariables
>(tokenAuthMutation);
export const tokenVerifyMutation = gql`
${fragmentUser}
mutation VerifyToken($token: String!) {
tokenVerify(token: $token) {
payload
user {
...User
}
}
}
`;
export const TypedVerifyTokenMutation = TypedMutation<
VerifyToken,
VerifyTokenVariables
>(tokenVerifyMutation);
2019-09-02 19:23:37 +00:00
export const requestPasswordReset = gql`
2020-03-10 13:33:43 +00:00
${accountFragmentError}
2019-09-02 19:23:37 +00:00
mutation RequestPasswordReset($email: String!, $redirectUrl: String!) {
requestPasswordReset(email: $email, redirectUrl: $redirectUrl) {
2020-03-10 13:33:43 +00:00
errors: accountErrors {
...AccountErrorFragment
2019-09-02 19:23:37 +00:00
}
}
}
`;
export const RequestPasswordResetMutation = TypedMutation<
RequestPasswordReset,
RequestPasswordResetVariables
>(requestPasswordReset);
2019-09-03 13:42:15 +00:00
export const setPassword = gql`
2020-03-10 13:33:43 +00:00
${accountFragmentError}
2019-09-03 13:42:15 +00:00
${fragmentUser}
mutation SetPassword($email: String!, $password: String!, $token: String!) {
setPassword(email: $email, password: $password, token: $token) {
2020-03-10 13:33:43 +00:00
errors: accountErrors {
...AccountErrorFragment
2019-09-03 13:42:15 +00:00
}
2020-03-10 13:33:43 +00:00
token
2019-09-03 13:42:15 +00:00
user {
...User
}
}
}
`;
export const SetPasswordMutation = TypedMutation<
SetPassword,
SetPasswordVariables
>(setPassword);