mirror of
https://github.com/vercel/commerce.git
synced 2025-07-26 11:41:23 +00:00
Merge branch 'main' into spree-framework-poc
This commit is contained in:
@@ -1,37 +1,11 @@
|
||||
import * as React from 'react'
|
||||
import { ReactNode } from 'react'
|
||||
import { getCommerceProvider, useCommerce as useCoreCommerce } from '@commerce'
|
||||
import { spreeProvider } from './provider'
|
||||
import type { SpreeProvider } from './provider'
|
||||
|
||||
import {
|
||||
CommerceConfig,
|
||||
CommerceProvider as CoreCommerceProvider,
|
||||
useCommerce as useCoreCommerce,
|
||||
} from '@commerce'
|
||||
export { spreeProvider }
|
||||
export type { SpreeProvider }
|
||||
|
||||
import { provider } from './provider'
|
||||
import type { Provider } from './provider'
|
||||
import { requireConfigValue } from './isomorphic-config'
|
||||
export const CommerceProvider =
|
||||
getCommerceProvider<SpreeProvider>(spreeProvider)
|
||||
|
||||
export type SpreeProps = {
|
||||
children: ReactNode
|
||||
locale: string
|
||||
}
|
||||
|
||||
export const spreeCommerceConfigDefaults: CommerceConfig = {
|
||||
locale: requireConfigValue('defaultLocale') as string,
|
||||
cartCookie: requireConfigValue('cartCookieName') as string,
|
||||
}
|
||||
|
||||
export type SpreeConfig = CommerceConfig
|
||||
|
||||
export function CommerceProvider({ children, ...restProps }: SpreeProps) {
|
||||
return (
|
||||
<CoreCommerceProvider<Provider>
|
||||
provider={provider}
|
||||
config={{ ...spreeCommerceConfigDefaults, ...restProps }}
|
||||
>
|
||||
{children}
|
||||
</CoreCommerceProvider>
|
||||
)
|
||||
}
|
||||
|
||||
export const useCommerce = () => useCoreCommerce<Provider>()
|
||||
export const useCommerce = () => useCoreCommerce<SpreeProvider>()
|
||||
|
Reference in New Issue
Block a user