commerce/lib/shopify/queries/collection.ts
Chloe 8f0801689c
feat: homepage and integrate with shopify page
Signed-off-by: Chloe <pinkcloudvnn@gmail.com>
2024-05-27 16:48:22 +07:00

75 lines
1.4 KiB
TypeScript

import productFragment from '../fragments/product';
import seoFragment from '../fragments/seo';
const collectionFragment = /* GraphQL */ `
fragment collection on Collection {
handle
title
description
seo {
...seo
}
updatedAt
}
${seoFragment}
`;
export const getCollectionQuery = /* GraphQL */ `
query getCollection($handle: String, $id: ID) {
collection(handle: $handle, id: $id) {
...collection
}
}
${collectionFragment}
`;
export const getCollectionsQuery = /* GraphQL */ `
query getCollections {
collections(first: 100, sortKey: TITLE) {
edges {
node {
...collection
}
}
}
}
${collectionFragment}
`;
export const getCollectionProductsQuery = /* GraphQL */ `
query getCollectionProducts(
$handle: String!
$sortKey: ProductCollectionSortKeys
$reverse: Boolean
$filters: [ProductFilter!]
$after: String
) {
collection(handle: $handle) {
products(sortKey: $sortKey, filters: $filters, reverse: $reverse, first: 50, after: $after) {
edges {
node {
...product
}
}
filters {
id
label
type
values {
id
count
input
label
}
}
pageInfo {
endCursor
startCursor
hasNextPage
}
}
}
}
${productFragment}
`;