mirror of
https://github.com/vercel/commerce.git
synced 2025-07-22 20:26:49 +00:00
initial provider
This commit is contained in:
30
framework/medusa/api/index.ts
Normal file
30
framework/medusa/api/index.ts
Normal file
@@ -0,0 +1,30 @@
|
||||
import type { CommerceAPIConfig } from '@commerce/api'
|
||||
import { CommerceAPI, getCommerceApi as commerceApi } from '@commerce/api'
|
||||
import fetchApi from './utils/fetch-medusa-api'
|
||||
import { MEDUSA_CART_ID_COOKIE } from '../const'
|
||||
|
||||
import * as operations from './operations'
|
||||
|
||||
export interface MedusaConfig extends CommerceAPIConfig {
|
||||
fetch: any
|
||||
}
|
||||
|
||||
const config: MedusaConfig = {
|
||||
commerceUrl: '',
|
||||
apiToken: '',
|
||||
cartCookie: MEDUSA_CART_ID_COOKIE,
|
||||
customerCookie: '',
|
||||
cartCookieMaxAge: 60 * 60 * 24 * 30,
|
||||
fetch: fetchApi,
|
||||
}
|
||||
|
||||
export const provider = { config, operations }
|
||||
|
||||
export type Provider = typeof provider
|
||||
export type MedusaAPI<P extends Provider = Provider> = CommerceAPI<P | any>
|
||||
|
||||
export function getCommerceApi<P extends Provider>(
|
||||
customProvider: P = provider as any
|
||||
): MedusaAPI<P> {
|
||||
return commerceApi(customProvider as any)
|
||||
}
|
Reference in New Issue
Block a user