import { useMutation, useQuery } from "react-query"; import type { MutationOptions } from "@/@types/types/query.types"; import { useHttp } from "@/hooks/useHttp"; import { getEnvs } from "@/libs/environment/env"; import { checkMasterpassAndUserResultSerializer } from "./check-masterpass-and-user-services.serializer"; import type { CheckMasterpassAndUserPayload } from "./check-masterpass-and-user-services.types"; export const useCheckMasterpassAndUserQuery = ( variables: CheckMasterpassAndUserPayload, queryOptions?: MutationOptions, ) => { const http = useHttp("masterpass-api"); const env = getEnvs(); const service = () => http .post("/checkMasterPassEndUser", { sendSms: env.masterpassSendSms, fp: "", referenceNo: "", dateTime: new Date().toISOString(), token: variables.token, msisdn: variables.msisdn, serviceUrl: env.masterpassUrl, clientId: env.masterpassClientId, version: env.masterpassVersion, clientType: env.masterpassClientType, sendSmsLanguage: env.masterpassSendSmsLanguage, clientIp: "", }) .then((res) => checkMasterpassAndUserResultSerializer(res.data)); return useQuery({ queryFn: service, queryKey: "check-masterpass-and-user", ...queryOptions, }); }; export const useCheckMasterPassAndUserMutation = ( options?: MutationOptions, ) => { const http = useHttp("masterpass-api"); const env = getEnvs(); const service = (variables: CheckMasterpassAndUserPayload) => http .post("/checkMasterPassEndUser", { sendSms: env.masterpassSendSms, fp: "", referenceNo: "", dateTime: new Date().toISOString(), token: variables.token, msisdn: variables.msisdn, serviceUrl: env.masterpassUrl, clientId: env.masterpassClientId, version: env.masterpassVersion, clientType: env.masterpassClientType, sendSmsLanguage: env.masterpassSendSmsLanguage, clientIp: "", }) .then((res) => checkMasterpassAndUserResultSerializer(res.data)); return useMutation({ mutationFn: service, mutationKey: "check-masterpass-and-user-mutation", ...options, }); };