@gem-sdk/core 8.0.0-dev.122 → 8.0.0-dev.123

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,2 +1,2 @@
1
1
  'use client';
2
- "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand");require("swr"),require("@gem-sdk/adapter-shopify"),require("swr/mutation"),require("swr/infinite"),require("vanilla-lazyload"),require("../hooks/useCartUI.js"),require("../hooks/useStickyStore.js");var variant=require("../helpers/variant.js");require("../types/builder.js"),require("../types/custom.js"),require("../types/animations.js"),require("react-transition-group"),require("@gem-sdk/core"),require("classnames"),require("dayjs");var flattenConnection=require("../helpers/flatten-connection.js");require("../helpers/convert.js");const ProductContext=react.createContext(null),createProductStoreProvider=e=>zustand.createStore((t,r)=>({...e,updateProperty:(e,r)=>{t(t=>({properties:t.properties?.map(t=>t.key===e?{...t,...r}:t)}))},setUseProductCompareAtPrice:e=>{t({useProductCompareAtPrice:e})},setShouldRequireUploadMessage:e=>{t({shouldRequireUploadMessage:e})},setRequireUpload:e=>{t({requireUpload:e})},addProperty:e=>{let i=r().properties;i?.some(t=>t.key===e.key)||t(t=>({properties:[...t.properties??[],e]}))},removeProperty:e=>{t(t=>({properties:t.properties?.filter(t=>t.key!==e)}))},setQuantity:e=>{t({quantity:e>0?e:1})},setProductFeaturedImage:e=>{t({featuredImageGlobal:e})},incrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t+1}})},decrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t>2?t-1:1}})},setSelectedOption:(e,r)=>{t(t=>e&&r?{selectedOptions:{...t?.selectedOptions,[e]:r}}:t)},forceSelectedOption:e=>{t(t=>({selectedOptions:{...t?.selectedOptions,...e}}))},updateIsSubmit:e=>{t({isSubmit:e})},setHasUpdatePriceFollowQuantity:e=>{t({updatePrice:e})},setHasPreSelected:e=>{t({hasPreSelected:e})},setIsChangeSelectedOption:e=>{t({isChangeSelectedOption:e})},setIsAgreeBuyWithSubscription:e=>{t({isAgreeBuyWithSubscription:e})},setSubscriptionSellingType:e=>{t({subscriptionSellingType:e})}})),ProductProvider=({children:e,product:t,initialVariantId:r,initialVariantBaseId:i,quantity:s=1,isSyncProduct:o,hasPreSelected:u})=>{let n=react.useId(),a=react.useMemo(()=>{let e,a={};if(t){let s=flattenConnection.flattenConnection(t.variants),o=s[0],u=s.find(e=>variant.checkInStock(e)),n=s.find(e=>e?.id===r||e?.baseID===i)??u??o;a=n?.selectedOptions?.reduce((e,t)=>t.name?{...e,[t.name]:t.value}:e,{}),e=t.medias?.edges.find(e=>e.node?.id===n?.mediaId)?.node??t.featuredImage}return createProductStoreProvider({product:t,quantity:s,selectedOptions:a,uiqueId:n,featuredImageGlobal:e,isSyncProduct:o,hasPreSelected:u,isAgreeBuyWithSubscription:!0})},[t,s,n,o,u,r]);return jsxRuntime.jsx(ProductContext.Provider,{value:a,children:jsxRuntime.jsx(jsxRuntime.Fragment,{children:e})})},useProductStore=(e,t)=>{let r=react.useContext(ProductContext);if(!r)throw Error("Element of product must be used inside a Product");return zustand.useStore(r,e,t)};exports.ProductProvider=ProductProvider,exports.useProductStore=useProductStore;
2
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand");require("swr"),require("@gem-sdk/adapter-shopify"),require("swr/mutation"),require("swr/infinite"),require("vanilla-lazyload"),require("../hooks/useCartUI.js"),require("../hooks/useStickyStore.js");var variant=require("../helpers/variant.js");require("../types/builder.js"),require("../types/custom.js"),require("../types/animations.js"),require("react-transition-group"),require("@gem-sdk/core"),require("classnames"),require("dayjs");var flattenConnection=require("../helpers/flatten-connection.js");require("../helpers/convert.js");const ProductContext=react.createContext(null),createProductStoreProvider=e=>zustand.createStore((t,r)=>({...e,updateProperty:(e,r)=>{t(t=>({properties:t.properties?.map(t=>t.key===e?{...t,...r}:t)}))},setUseProductCompareAtPrice:e=>{t({useProductCompareAtPrice:e})},setShouldRequireUploadMessage:e=>{t({shouldRequireUploadMessage:e})},setRequireUpload:e=>{t({requireUpload:e})},addProperty:e=>{let i=r().properties;i?.some(t=>t.key===e.key)||t(t=>({properties:[...t.properties??[],e]}))},removeProperty:e=>{t(t=>({properties:t.properties?.filter(t=>t.key!==e)}))},setQuantity:e=>{t({quantity:e>0?e:1})},setProductFeaturedImage:e=>{t({featuredImageGlobal:e})},incrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t+1}})},decrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t>2?t-1:1}})},setSelectedOption:(e,r)=>{t(t=>e&&r?{selectedOptions:{...t?.selectedOptions,[e]:r}}:t)},forceSelectedOption:e=>{t(t=>({selectedOptions:{...t?.selectedOptions,...e}}))},updateIsSubmit:e=>{t({isSubmit:e})},setHasUpdatePriceFollowQuantity:e=>{t({updatePrice:e})},setHasPreSelected:e=>{t({hasPreSelected:e})},setIsChangeSelectedOption:e=>{t({isChangeSelectedOption:e})},setIsAgreeBuyWithSubscription:e=>{t({isAgreeBuyWithSubscription:e})},setSubscriptionSellingType:e=>{t({subscriptionSellingType:e})},setSelectedSellingPlan:e=>{t({selectedSellingPlan:e})}})),ProductProvider=({children:e,product:t,initialVariantId:r,initialVariantBaseId:i,quantity:s=1,isSyncProduct:o,hasPreSelected:u})=>{let n=react.useId(),a=react.useMemo(()=>{let e,a={};if(t){let s=flattenConnection.flattenConnection(t.variants),o=s[0],u=s.find(e=>variant.checkInStock(e)),n=s.find(e=>e?.id===r||e?.baseID===i)??u??o;a=n?.selectedOptions?.reduce((e,t)=>t.name?{...e,[t.name]:t.value}:e,{}),e=t.medias?.edges.find(e=>e.node?.id===n?.mediaId)?.node??t.featuredImage}return createProductStoreProvider({product:t,quantity:s,selectedOptions:a,uiqueId:n,featuredImageGlobal:e,isSyncProduct:o,hasPreSelected:u,isAgreeBuyWithSubscription:!0})},[t,s,n,o,u,r]);return jsxRuntime.jsx(ProductContext.Provider,{value:a,children:jsxRuntime.jsx(jsxRuntime.Fragment,{children:e})})},useProductStore=(e,t)=>{let r=react.useContext(ProductContext);if(!r)throw Error("Element of product must be used inside a Product");return zustand.useStore(r,e,t)};exports.ProductProvider=ProductProvider,exports.useProductStore=useProductStore;
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e,Fragment as t}from"react/jsx-runtime";import{useId as r,useMemo as o,useContext as i,createContext as s}from"react";import{useStore as p,createStore as d}from"zustand";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"swr/infinite";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"../hooks/useStickyStore.js";import{checkInStock as n}from"../helpers/variant.js";import"../types/builder.js";import"../types/custom.js";import"../types/animations.js";import"react-transition-group";import"@gem-sdk/core";import"classnames";import"dayjs";import{flattenConnection as a}from"../helpers/flatten-connection.js";import"../helpers/convert.js";let ProductContext=s(null),createProductStoreProvider=e=>d((t,r)=>({...e,updateProperty:(e,r)=>{t(t=>({properties:t.properties?.map(t=>t.key===e?{...t,...r}:t)}))},setUseProductCompareAtPrice:e=>{t({useProductCompareAtPrice:e})},setShouldRequireUploadMessage:e=>{t({shouldRequireUploadMessage:e})},setRequireUpload:e=>{t({requireUpload:e})},addProperty:e=>{let o=r().properties;o?.some(t=>t.key===e.key)||t(t=>({properties:[...t.properties??[],e]}))},removeProperty:e=>{t(t=>({properties:t.properties?.filter(t=>t.key!==e)}))},setQuantity:e=>{t({quantity:e>0?e:1})},setProductFeaturedImage:e=>{t({featuredImageGlobal:e})},incrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t+1}})},decrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t>2?t-1:1}})},setSelectedOption:(e,r)=>{t(t=>e&&r?{selectedOptions:{...t?.selectedOptions,[e]:r}}:t)},forceSelectedOption:e=>{t(t=>({selectedOptions:{...t?.selectedOptions,...e}}))},updateIsSubmit:e=>{t({isSubmit:e})},setHasUpdatePriceFollowQuantity:e=>{t({updatePrice:e})},setHasPreSelected:e=>{t({hasPreSelected:e})},setIsChangeSelectedOption:e=>{t({isChangeSelectedOption:e})},setIsAgreeBuyWithSubscription:e=>{t({isAgreeBuyWithSubscription:e})},setSubscriptionSellingType:e=>{t({subscriptionSellingType:e})}})),ProductProvider=({children:i,product:s,initialVariantId:p,initialVariantBaseId:d,quantity:u=1,isSyncProduct:c,hasPreSelected:l})=>{let m=r(),y=o(()=>{let e,t={};if(s){let r=a(s.variants),o=r[0],i=r.find(e=>n(e)),u=r.find(e=>e?.id===p||e?.baseID===d)??i??o;t=u?.selectedOptions?.reduce((e,t)=>t.name?{...e,[t.name]:t.value}:e,{}),e=s.medias?.edges.find(e=>e.node?.id===u?.mediaId)?.node??s.featuredImage}return createProductStoreProvider({product:s,quantity:u,selectedOptions:t,uiqueId:m,featuredImageGlobal:e,isSyncProduct:c,hasPreSelected:l,isAgreeBuyWithSubscription:!0})},[s,u,m,c,l,p]);return e(ProductContext.Provider,{value:y,children:e(t,{children:i})})},useProductStore=(e,t)=>{let r=i(ProductContext);if(!r)throw Error("Element of product must be used inside a Product");return p(r,e,t)};export{ProductProvider,useProductStore};
2
+ import{jsx as e,Fragment as t}from"react/jsx-runtime";import{useId as r,useMemo as i,useContext as o,createContext as s}from"react";import{useStore as p,createStore as n}from"zustand";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"swr/infinite";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"../hooks/useStickyStore.js";import{checkInStock as d}from"../helpers/variant.js";import"../types/builder.js";import"../types/custom.js";import"../types/animations.js";import"react-transition-group";import"@gem-sdk/core";import"classnames";import"dayjs";import{flattenConnection as a}from"../helpers/flatten-connection.js";import"../helpers/convert.js";let ProductContext=s(null),createProductStoreProvider=e=>n((t,r)=>({...e,updateProperty:(e,r)=>{t(t=>({properties:t.properties?.map(t=>t.key===e?{...t,...r}:t)}))},setUseProductCompareAtPrice:e=>{t({useProductCompareAtPrice:e})},setShouldRequireUploadMessage:e=>{t({shouldRequireUploadMessage:e})},setRequireUpload:e=>{t({requireUpload:e})},addProperty:e=>{let i=r().properties;i?.some(t=>t.key===e.key)||t(t=>({properties:[...t.properties??[],e]}))},removeProperty:e=>{t(t=>({properties:t.properties?.filter(t=>t.key!==e)}))},setQuantity:e=>{t({quantity:e>0?e:1})},setProductFeaturedImage:e=>{t({featuredImageGlobal:e})},incrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t+1}})},decrementQuantity:()=>{t(e=>{let t=e.quantity??1;return{quantity:t>2?t-1:1}})},setSelectedOption:(e,r)=>{t(t=>e&&r?{selectedOptions:{...t?.selectedOptions,[e]:r}}:t)},forceSelectedOption:e=>{t(t=>({selectedOptions:{...t?.selectedOptions,...e}}))},updateIsSubmit:e=>{t({isSubmit:e})},setHasUpdatePriceFollowQuantity:e=>{t({updatePrice:e})},setHasPreSelected:e=>{t({hasPreSelected:e})},setIsChangeSelectedOption:e=>{t({isChangeSelectedOption:e})},setIsAgreeBuyWithSubscription:e=>{t({isAgreeBuyWithSubscription:e})},setSubscriptionSellingType:e=>{t({subscriptionSellingType:e})},setSelectedSellingPlan:e=>{t({selectedSellingPlan:e})}})),ProductProvider=({children:o,product:s,initialVariantId:p,initialVariantBaseId:n,quantity:u=1,isSyncProduct:l,hasPreSelected:c})=>{let m=r(),y=i(()=>{let e,t={};if(s){let r=a(s.variants),i=r[0],o=r.find(e=>d(e)),u=r.find(e=>e?.id===p||e?.baseID===n)??o??i;t=u?.selectedOptions?.reduce((e,t)=>t.name?{...e,[t.name]:t.value}:e,{}),e=s.medias?.edges.find(e=>e.node?.id===u?.mediaId)?.node??s.featuredImage}return createProductStoreProvider({product:s,quantity:u,selectedOptions:t,uiqueId:m,featuredImageGlobal:e,isSyncProduct:l,hasPreSelected:c,isAgreeBuyWithSubscription:!0})},[s,u,m,l,c,p]);return e(ProductContext.Provider,{value:y,children:e(t,{children:o})})},useProductStore=(e,t)=>{let r=o(ProductContext);if(!r)throw Error("Element of product must be used inside a Product");return p(r,e,t)};export{ProductProvider,useProductStore};
@@ -35464,6 +35464,8 @@ type ProductContextProps = {
35464
35464
  setIsAgreeBuyWithSubscription: (value: boolean) => void;
35465
35465
  subscriptionSellingType?: string;
35466
35466
  setSubscriptionSellingType: (value: string) => void;
35467
+ selectedSellingPlan?: string;
35468
+ setSelectedSellingPlan: (value: string) => void;
35467
35469
  };
35468
35470
  type ProductProviderProps = Pick<ProductContextProps, 'product' | 'quantity' | 'selectedOptions' | 'isSyncProduct' | 'hasPreSelected'> & {
35469
35471
  initialVariantId?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/core",
3
- "version": "8.0.0-dev.122",
3
+ "version": "8.0.0-dev.123",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",