diff --git a/packages/sylius/src/auth/use-login.tsx b/packages/sylius/src/auth/use-login.tsx index 6a20c0996..d887b9e16 100644 --- a/packages/sylius/src/auth/use-login.tsx +++ b/packages/sylius/src/auth/use-login.tsx @@ -4,21 +4,22 @@ import { useCallback } from 'react' import useCustomer from '@vercel/commerce/customer/use-customer' import { setCustomerToken } from '../utils/token/customer-token' import { setCustomerRoute } from '../utils/token/customer-route' +import { LoginHook } from '@vercel/commerce/types/login' export default useLogin as UseLogin -export const handler: MutationHook = { +export const handler: MutationHook = { fetchOptions: { url: '/api/v2/shop/authentication-token', method: 'POST', }, - fetcher: async ({ input: { email, password }, options, fetch }) => { + fetcher: async ({ input, options, fetch }) => { const authReturn = await fetch({ url: options.url, method: options.method, body: { - email: email, - password: password, + email: input.email, + password: input.password, }, variables: { useToken: false, @@ -27,6 +28,8 @@ export const handler: MutationHook = { setCustomerToken(authReturn.token) setCustomerRoute(authReturn.customer) + + return authReturn }, useHook: ({ fetch }) => @@ -43,3 +46,8 @@ export const handler: MutationHook = { ) }, } + +interface LoginInput { + email: string + password: string +} diff --git a/packages/sylius/src/customer/use-customer.tsx b/packages/sylius/src/customer/use-customer.tsx index 77da6e93b..d56f99f62 100644 --- a/packages/sylius/src/customer/use-customer.tsx +++ b/packages/sylius/src/customer/use-customer.tsx @@ -4,10 +4,11 @@ import useCustomer, { } from '@vercel/commerce/customer/use-customer' import { getCustomerRoute } from '../utils/token/customer-route' import { normalizeCustomer } from '../utils/normalize/normalize-customer' +import { CustomerHook } from '@vercel/commerce/types/customer' export default useCustomer as UseCustomer -export const handler: SWRHook = { +export const handler: SWRHook = { fetchOptions: { url: `/customers/`, method: 'GET', diff --git a/packages/sylius/src/utils/normalize/normalize-customer.ts b/packages/sylius/src/utils/normalize/normalize-customer.ts index 58482a3f4..36e25b256 100644 --- a/packages/sylius/src/utils/normalize/normalize-customer.ts +++ b/packages/sylius/src/utils/normalize/normalize-customer.ts @@ -1,7 +1,7 @@ import { Customer } from '@vercel/commerce/types/customer' -import { SyliusCustomer } from '../../types/customer' -export const normalizeCustomer = (syliusCustomer: SyliusCustomer): Customer => { +//customer has no type in commerce - SyliusCustomer type is defined in types/customer.ts +export const normalizeCustomer = (syliusCustomer: any): Customer => { return { firstName: syliusCustomer.firstName, lastName: syliusCustomer.lastName,