mirror of
https://github.com/vercel/commerce.git
synced 2025-07-22 12:24:18 +00:00
changed list products so it does not rely on unreleased version of medusa-js
This commit is contained in:
parent
4a48e40aca
commit
739e2730e6
@ -20,8 +20,8 @@ export default function getAllProductPathsOperation({
|
|||||||
|
|
||||||
const results = await config.fetch('products', 'list', {})
|
const results = await config.fetch('products', 'list', {})
|
||||||
|
|
||||||
const productHandles = results.data?.products
|
const productHandles = results.products
|
||||||
? results.data.products.map(({ handle }: MedusaProduct) => ({
|
? results.products.map(({ handle }: MedusaProduct) => ({
|
||||||
path: `/${handle}`,
|
path: `/${handle}`,
|
||||||
}))
|
}))
|
||||||
: []
|
: []
|
||||||
|
@ -27,8 +27,8 @@ export default function getAllProductsOperation({
|
|||||||
query ? { query: query } : {}
|
query ? { query: query } : {}
|
||||||
)
|
)
|
||||||
|
|
||||||
const products: Product[] = results.data?.products
|
const products: Product[] = results.products
|
||||||
? results.data.products.map((product: MedusaProduct) =>
|
? results.products.map((product: MedusaProduct) =>
|
||||||
normalizeProduct(product)
|
normalizeProduct(product)
|
||||||
)
|
)
|
||||||
: []
|
: []
|
||||||
|
@ -10,16 +10,17 @@ export const handler: SWRHook<any> = {
|
|||||||
method: 'list',
|
method: 'list',
|
||||||
},
|
},
|
||||||
async fetcher({ input, options, fetch }) {
|
async fetcher({ input, options, fetch }) {
|
||||||
const { products } = await fetch({
|
// NOOP
|
||||||
...options,
|
// const results = await fetch({
|
||||||
variables: { query: null },
|
// ...options,
|
||||||
})
|
// variables: { query: null },
|
||||||
|
// })
|
||||||
|
|
||||||
|
// console.warn(results)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
products: products
|
products: [],
|
||||||
? products.map((product: MedusaProduct) => normalizeProduct(product))
|
found: 0,
|
||||||
: [],
|
|
||||||
found: products.length,
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
useHook:
|
useHook:
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
import { CommerceError } from '@commerce/utils/errors'
|
import { CommerceError } from '@commerce/utils/errors'
|
||||||
import { MEDUSA_PUBLIC_STORE_URL } from '@framework/const'
|
import { MEDUSA_PUBLIC_STORE_URL } from '@framework/const'
|
||||||
import medusa from '../medusa'
|
import medusa from '../medusa'
|
||||||
|
import fetch from 'node-fetch'
|
||||||
|
import axios from 'axios'
|
||||||
|
|
||||||
export const callMedusa = async (
|
export const callMedusa = async (
|
||||||
method: string,
|
method: string,
|
||||||
@ -313,13 +315,28 @@ export const callMedusa = async (
|
|||||||
return await medusa.products.variants.retrieve(variant_id)
|
return await medusa.products.variants.retrieve(variant_id)
|
||||||
} else if (method === 'list') {
|
} else if (method === 'list') {
|
||||||
const { query } = variables
|
const { query } = variables
|
||||||
|
let path = '/store/products'
|
||||||
|
|
||||||
return await medusa.products.list(
|
if (query) {
|
||||||
query && {
|
const formattedQuery = {
|
||||||
limit: query.limit || null,
|
offset: query.offset || 0,
|
||||||
offset: query.offset || null,
|
limit: query.limit || 100,
|
||||||
}
|
}
|
||||||
)
|
|
||||||
|
const queryString = Object.entries(formattedQuery).map(
|
||||||
|
([key, value]) => {
|
||||||
|
return `${key}=${value}`
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
path = `/store/products?${queryString.join('&')}`
|
||||||
|
}
|
||||||
|
|
||||||
|
const res = await fetch(`${MEDUSA_PUBLIC_STORE_URL}${path}`, {
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
|
||||||
|
return await res.json()
|
||||||
} else if (method === 'retrieve') {
|
} else if (method === 'retrieve') {
|
||||||
const { product_id } = variables
|
const { product_id } = variables
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user