@gem-sdk/core 1.14.0-next.256 → 1.14.0-next.267
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var products_generated=require("../../graphql/queries/products.generated.js"),getCollection=require("./get-collection.js"),getProduct=require("./get-product.js");const getProducts=async(e,{ids:t,isSample:r,isStorefront:d})=>{let
|
|
1
|
+
"use strict";var products_generated=require("../../graphql/queries/products.generated.js"),getCollection=require("./get-collection.js"),getProduct=require("./get-product.js");const getProducts=async(e,{ids:t,isSample:r,isStorefront:d,defaultSelectedProductCount:s})=>{let o=await loopFetchProducts(e,{ids:t,isSample:r,isStorefront:d,defaultSelectedProductCount:s});if(!o)throw Error("Product not found");let[a,c]=await Promise.all([mergeVariantsToProducts({fetcher:e,products:o,isSample:r,isStorefront:d}),mergeMediasToProducts({fetcher:e,products:o,isSample:r,isStorefront:d})]);return{...o,products:{...o.products,edges:o.products?.edges.map(e=>{let t=c.find(t=>t.productId===e.node?.baseID),r=a.find(t=>t.productId===e.node?.baseID);return e.node?{...e,node:{...e.node,variants:{...e.node?.variants,edges:r?.items??[]},medias:{...e.node?.medias,edges:t?.items??[]}}}:e})??[]}}},fetchProducts=async(e,t)=>e([products_generated.ProductsDocument,t]),loopFetchProducts=async(e,{ids:t,isSample:r,isStorefront:d,defaultSelectedProductCount:s})=>{let o,a,c,n,u;let i=s||4,g=(t?.length==0?i:t?.length)??i,l=1,p=Math.ceil(g/8);for(;l<=p&&!1!==n;){o={first:getCollection.calculateFirstProduct(g,l,8),firstMedia:1,firstVariant:1,orderBy:{field:"PLATFORM_CREATED_AT",direction:"DESC"},orderByMedia:{field:"POSITION",direction:"ASC"},where:{status:"ACTIVE",isSample:r,...d&&{isStorefront:d},...t?.length?{baseIDIn:t}:{}},after:a};let s=await fetchProducts(e,o);if(a=s?.products?.pageInfo?.endCursor,1===l?(c=s,u=s):u?.products&&s?.products?.edges.length&&(u.products={edges:u.products.edges.concat(s?.products?.edges),pageInfo:s?.products?.pageInfo}),l++,!u){n=!1;break}}return c},mergeVariantsToProducts=async({fetcher:e,products:t,isSample:r,isStorefront:d})=>{let s=await Promise.all(t?.products?.edges?.map(async t=>{let s=await getProduct.fetchVariants(e,{id:t?.node?.baseID,isSample:r,isStorefront:d});return{productId:t?.node?.baseID,items:s}})??[]);return s},mergeMediasToProducts=async({fetcher:e,products:t,isSample:r,isStorefront:d})=>{let s=await Promise.all(t?.products?.edges?.map(async t=>{let s=await getProduct.fetchMedias(e,{id:t?.node?.baseID,isSample:r,isStorefront:d});return{productId:t?.node?.baseID,items:s}})??[]);return s};exports.getProducts=getProducts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var useSWR=require("swr"),getProducts=require("../../helpers/queries/get-products.js"),query=require("../../helpers/query.js"),shop=require("../shop.js"),useFetchHandle=require("../useFetchHandle.js");const useProductsQuery=(e,r)=>{let
|
|
1
|
+
"use strict";var useSWR=require("swr"),getProducts=require("../../helpers/queries/get-products.js"),query=require("../../helpers/query.js"),shop=require("../shop.js"),useFetchHandle=require("../useFetchHandle.js");const useProductsQuery=(e,r,s)=>{let u=useFetchHandle.useFetchHandle(),t=shop.useIsSampleProduct(),o=shop.useIsStorefrontProduct();return useSWR(e?query.generateProductsQueryKey({ids:e,isSample:t,isStorefront:o,defaultSelectedProductCount:s}):null,async([,e])=>getProducts.getProducts(u,e),r)};exports.useProductsQuery=useProductsQuery;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ProductsDocument as e}from"../../graphql/queries/products.generated.js";import{calculateFirstProduct as t}from"./get-collection.js";import{fetchVariants as r,fetchMedias as o}from"./get-product.js";let getProducts=async(e,{ids:t,isSample:r,isStorefront:o})=>{let
|
|
1
|
+
import{ProductsDocument as e}from"../../graphql/queries/products.generated.js";import{calculateFirstProduct as t}from"./get-collection.js";import{fetchVariants as r,fetchMedias as o}from"./get-product.js";let getProducts=async(e,{ids:t,isSample:r,isStorefront:o,defaultSelectedProductCount:d})=>{let s=await loopFetchProducts(e,{ids:t,isSample:r,isStorefront:o,defaultSelectedProductCount:d});if(!s)throw Error("Product not found");let[a,n]=await Promise.all([mergeVariantsToProducts({fetcher:e,products:s,isSample:r,isStorefront:o}),mergeMediasToProducts({fetcher:e,products:s,isSample:r,isStorefront:o})]);return{...s,products:{...s.products,edges:s.products?.edges.map(e=>{let t=n.find(t=>t.productId===e.node?.baseID),r=a.find(t=>t.productId===e.node?.baseID);return e.node?{...e,node:{...e.node,variants:{...e.node?.variants,edges:r?.items??[]},medias:{...e.node?.medias,edges:t?.items??[]}}}:e})??[]}}},fetchProducts=async(t,r)=>t([e,r]),loopFetchProducts=async(e,{ids:r,isSample:o,isStorefront:d,defaultSelectedProductCount:s})=>{let a,n,c,i,u;let p=s||4,l=(r?.length==0?p:r?.length)??p,g=1,m=Math.ceil(l/8);for(;g<=m&&!1!==i;){a={first:t(l,g,8),firstMedia:1,firstVariant:1,orderBy:{field:"PLATFORM_CREATED_AT",direction:"DESC"},orderByMedia:{field:"POSITION",direction:"ASC"},where:{status:"ACTIVE",isSample:o,...d&&{isStorefront:d},...r?.length?{baseIDIn:r}:{}},after:n};let s=await fetchProducts(e,a);if(n=s?.products?.pageInfo?.endCursor,1===g?(c=s,u=s):u?.products&&s?.products?.edges.length&&(u.products={edges:u.products.edges.concat(s?.products?.edges),pageInfo:s?.products?.pageInfo}),g++,!u){i=!1;break}}return c},mergeVariantsToProducts=async({fetcher:e,products:t,isSample:o,isStorefront:d})=>{let s=await Promise.all(t?.products?.edges?.map(async t=>{let s=await r(e,{id:t?.node?.baseID,isSample:o,isStorefront:d});return{productId:t?.node?.baseID,items:s}})??[]);return s},mergeMediasToProducts=async({fetcher:e,products:t,isSample:r,isStorefront:d})=>{let s=await Promise.all(t?.products?.edges?.map(async t=>{let s=await o(e,{id:t?.node?.baseID,isSample:r,isStorefront:d});return{productId:t?.node?.baseID,items:s}})??[]);return s};export{getProducts};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import r from"swr";import{getProducts as e}from"../../helpers/queries/get-products.js";import{generateProductsQueryKey as s}from"../../helpers/query.js";import{useIsSampleProduct as o,useIsStorefrontProduct as t}from"../shop.js";import{useFetchHandle as u}from"../useFetchHandle.js";let useProductsQuery=(m,p)=>{let
|
|
1
|
+
import r from"swr";import{getProducts as e}from"../../helpers/queries/get-products.js";import{generateProductsQueryKey as s}from"../../helpers/query.js";import{useIsSampleProduct as o,useIsStorefrontProduct as t}from"../shop.js";import{useFetchHandle as u}from"../useFetchHandle.js";let useProductsQuery=(m,p,l)=>{let i=u(),c=o(),f=t();return r(m?s({ids:m,isSample:c,isStorefront:f,defaultSelectedProductCount:l}):null,async([,r])=>e(i,r),p)};export{useProductsQuery};
|
package/dist/types/index.d.ts
CHANGED
|
@@ -988,6 +988,7 @@ type ComponentPreset = {
|
|
|
988
988
|
mobile?: string;
|
|
989
989
|
};
|
|
990
990
|
components: InitComponentType[];
|
|
991
|
+
hideTextContent?: boolean;
|
|
991
992
|
};
|
|
992
993
|
|
|
993
994
|
type Maybe<T> = T | undefined;
|
|
@@ -9500,6 +9501,7 @@ type FetchProductsParams = {
|
|
|
9500
9501
|
ids: string[];
|
|
9501
9502
|
isSample?: boolean;
|
|
9502
9503
|
isStorefront?: boolean;
|
|
9504
|
+
defaultSelectedProductCount?: number;
|
|
9503
9505
|
};
|
|
9504
9506
|
|
|
9505
9507
|
declare const generateProductQueryKey: (args: FetchProductParams) => ['query/product', FetchProductParams];
|
|
@@ -9588,7 +9590,7 @@ declare const useCollectionsQuery: (variable: CollectionsQueryVariables, options
|
|
|
9588
9590
|
|
|
9589
9591
|
declare const useProductQuery: (productId?: string, options?: SWRConfiguration<ProductSelectFragment>) => swr__internal.SWRResponse<ProductSelectFragment, any, Partial<swr__internal.PublicConfiguration<ProductSelectFragment, any, (arg: ["query/product", FetchProductParams]) => swr__internal.FetcherResponse<ProductSelectFragment>>> | undefined>;
|
|
9590
9592
|
|
|
9591
|
-
declare const useProductsQuery: (ids?: string[], options?: SWRConfiguration<ProductsQueryResponse
|
|
9593
|
+
declare const useProductsQuery: (ids?: string[], options?: SWRConfiguration<ProductsQueryResponse>, defaultSelectedProductCount?: number) => swr__internal.SWRResponse<ProductsQueryResponse, any, Partial<swr__internal.PublicConfiguration<ProductsQueryResponse, any, (arg: ["query/products", FetchProductsParams]) => swr__internal.FetcherResponse<ProductsQueryResponse>>> | undefined>;
|
|
9592
9594
|
|
|
9593
9595
|
declare const useCurrentDevice: () => NameDevices;
|
|
9594
9596
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gem-sdk/core",
|
|
3
|
-
"version": "1.14.0-next.
|
|
3
|
+
"version": "1.14.0-next.267",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@gem-sdk/adapter-shopify": "1.12.0",
|
|
28
|
-
"@gem-sdk/styles": "1.14.0-next.
|
|
28
|
+
"@gem-sdk/styles": "1.14.0-next.262"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"react-error-boundary": "4.0.10",
|