feat: add draft logout

This commit is contained in:
Bolaji Ayodeji 2021-09-02 12:32:26 +01:00 committed by Alessandro Casazza
parent 8f2b7695e6
commit e26a1497a8
No known key found for this signature in database
GPG Key ID: 3AF41B06C6495D3D
3 changed files with 20 additions and 10 deletions

View File

@ -1,5 +1,7 @@
import { useCallback } from 'react'
import { MutationHook } from '@commerce/utils/types'
import useLogout, { UseLogout } from '@commerce/auth/use-logout'
import Cookies from 'js-cookie'
export default useLogout as UseLogout<typeof handler>
@ -10,8 +12,15 @@ export const handler: MutationHook<any> = {
async fetcher() {
return null
},
useHook:
({ fetch }) =>
() =>
async () => {},
useHook: ({ fetch }) => () => {
return useCallback(
async function logout() {
Cookies.remove('CL_CUSTOMER_ID')
Cookies.remove('CL_CUSTOMER_TOKEN')
alert("Logout successful!")
},
[fetch]
)
},
}

View File

@ -1,6 +1,6 @@
import * as React from 'react'
import { ReactNode } from 'react'
import { localProvider } from './provider'
import { CommercelayerProvider } from './provider'
import {
CommerceConfig,
CommerceProvider as CoreCommerceProvider,
@ -8,7 +8,7 @@ import {
} from '@commerce'
import useToken from './auth/use-token'
export const localConfig: CommerceConfig = {
export const commercelayerConfig: CommerceConfig = {
locale: 'en-us',
cartCookie: 'session',
}
@ -24,8 +24,8 @@ export function CommerceProvider({
if (token) config.cartCookie = token
return (
<CoreCommerceProvider
provider={localProvider}
config={{ ...localConfig, ...config }}
provider={CommercelayerProvider}
config={{ ...commercelayerConfig, ...config }}
>
{children}
</CoreCommerceProvider>

View File

@ -9,8 +9,7 @@ import { handler as useLogin } from './auth/use-login'
import { handler as useLogout } from './auth/use-logout'
import { handler as useSignup } from './auth/use-signup'
export type Provider = typeof localProvider
export const localProvider = {
export const CommercelayerProvider = {
locale: 'en-us',
cartCookie: 'session',
fetcher: fetcher,
@ -20,3 +19,5 @@ export const localProvider = {
products: { useSearch },
auth: { useLogin, useLogout, useSignup },
}
export type Provider = typeof CommercelayerProvider