@gem-sdk/core 1.14.0-dev.718 → 1.14.0-dev.721

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,4 +1,4 @@
1
- "use strict";var colors=require("./colors.js"),makeStyle=require("./make-style.js");const genTypoClass=e=>`g-${e}`,composeTypographyCss=e=>{let o=e?.custom,{fontFamily:t,fontSize:p,fontStyle:s,fontWeight:a,lineHeight:y,letterSpacing:l}=o?.desktop??{};return`
1
+ "use strict";var colors=require("./colors.js"),makeStyle=require("./make-style.js");const genTypoClass=e=>`gp-g-${e}`,composeTypographyCss=e=>{let o=e?.custom,{fontFamily:t,fontSize:p,fontStyle:s,fontWeight:a,lineHeight:y,letterSpacing:l}=o?.desktop??{};return`
2
2
  ${t?`font-family: var(--g-font-${t}, ${t});`:""}
3
3
  ${p?`font-size: ${p};`:""}
4
4
  ${s?`font-style: ${s};`:""}
@@ -1 +1 @@
1
- "use strict";var react=require("react"),ProductContext=require("../contexts/ProductContext.js"),flattenConnection=require("../helpers/flatten-connection.js");require("react/jsx-runtime"),require("zustand"),require("swr");var PageContext=require("../contexts/PageContext.js");require("@gem-sdk/adapter-shopify"),require("swr/mutation"),require("vanilla-lazyload"),require("./useCartUI.js");var variant=require("../helpers/variant.js");require("react-transition-group"),require("@gem-sdk/core");var product=require("../helpers/product.js");require("../helpers/convert.js");const useUniqProductID=()=>ProductContext.useProductStore(e=>e.uiqueId),useProduct=()=>ProductContext.useProductStore(e=>e.product),useFeaturedImageGlobal=()=>ProductContext.useProductStore(e=>e.featuredImageGlobal),useProductProperties=()=>ProductContext.useProductStore(e=>e.properties),useIsSyncProduct=()=>ProductContext.useProductStore(e=>e.isSyncProduct),useQuantity=()=>{let e=ProductContext.useProductStore(e=>e.quantity),t=ProductContext.useProductStore(e=>e.decrementQuantity),r=ProductContext.useProductStore(e=>e.incrementQuantity),u=ProductContext.useProductStore(e=>e.setQuantity),o=ProductContext.useProductStore(e=>e.isSyncProduct),n=ProductContext.useProductStore(e=>e.product),s=n?.id,a=react.useCallback(()=>{u(1)},[u]);return react.useEffect(()=>{if(o){let t=new CustomEvent("set-product-quantity",{bubbles:!0,cancelable:!0,composed:!0,detail:{quantity:e,productId:s}});window.dispatchEvent(t)}},[e,o,s]),react.useMemo(()=>({quantity:e,increment:r,decrement:t,reset:a,setQuantity:u}),[t,r,e,a,u])},useSelectedOption=()=>{let e=ProductContext.useProductStore(e=>e.setSelectedOption),t=ProductContext.useProductStore(e=>e.selectedOptions),r=ProductContext.useProductStore(e=>e.forceSelectedOption),u=ProductContext.useProductStore(e=>e.isSyncProduct),o=react.useCallback((t,r,o,n)=>{if(!n&&u){let e=new CustomEvent("set-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{optionId:t,optionValue:r,productId:o}});window.dispatchEvent(e)}e(t,r)},[e,u]),n=react.useCallback((e,t,o)=>{if(!o&&u){let r=new CustomEvent("force-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{selectedOption:e,productId:t}});window.dispatchEvent(r)}r(e)},[r,u]);return react.useMemo(()=>({selectedOptions:t,setSelectedOption:o,forceSelectedOption:n}),[t,o,n])},useVariants=()=>{let e=ProductContext.useProductStore(e=>e.product?.variants);return flattenConnection.flattenConnection(e)},useVariant=e=>{let t=useVariants();return react.useMemo(()=>t?.find(t=>t?.id===e),[e,t])},useCurrentVariant=()=>{let{selectedOptions:e}=useSelectedOption(),t=useVariants();return react.useMemo(()=>product.getSelectedVariant(t,e),[e,t])},useCurrentVariantInStock=()=>{let e=useCurrentVariant(),t=useVariants();return variant.checkInStock(e,t)},useVariantOutStock=(e,t,r)=>{let{selectedOptions:u}=useSelectedOption(),o=useVariants(),n=r.optionNumber-1;if(r.position<n)return o.some(r=>{if(r){let{selectedOptions:u}=r,o=u?.some(r=>r?.name===e&&r.value===t),n=variant.checkInStock(r);return o&&n}});let s=product.getSelectedVariant(o,{...u,[e]:t});return variant.checkInStock(s)},useCheckAvailableVariantInStock=(e,t)=>{let r=useVariants();return!!r&&r.some(r=>{if(r){let{selectedOptions:u}=r,o=u?.some(r=>r?.name===e&&r.value===t),n=variant.checkInStock(r);return o&&n}return!1})},useProductOfferDiscount=()=>{let e=PageContext.usePageStore(e=>e.productOffers),t=useProduct(),r=useCurrentVariant(),u=e?.find(e=>e?.node?.objectBaseID===t?.baseID)?.node,o=u?.value;if(u&&"PERCENTAGE"===u.valueType&&o){let e=r?.price||0;o=o*e/100}return o||0};exports.useCheckAvailableVariantInStock=useCheckAvailableVariantInStock,exports.useCurrentVariant=useCurrentVariant,exports.useCurrentVariantInStock=useCurrentVariantInStock,exports.useFeaturedImageGlobal=useFeaturedImageGlobal,exports.useIsSyncProduct=useIsSyncProduct,exports.useProduct=useProduct,exports.useProductOfferDiscount=useProductOfferDiscount,exports.useProductProperties=useProductProperties,exports.useQuantity=useQuantity,exports.useSelectedOption=useSelectedOption,exports.useUniqProductID=useUniqProductID,exports.useVariant=useVariant,exports.useVariantOutStock=useVariantOutStock,exports.useVariants=useVariants;
1
+ "use strict";var react=require("react"),ProductContext=require("../contexts/ProductContext.js"),flattenConnection=require("../helpers/flatten-connection.js");require("react/jsx-runtime"),require("zustand"),require("swr");var PageContext=require("../contexts/PageContext.js");require("@gem-sdk/adapter-shopify"),require("swr/mutation"),require("vanilla-lazyload"),require("./useCartUI.js");var variant=require("../helpers/variant.js");require("react-transition-group"),require("@gem-sdk/core");var product=require("../helpers/product.js");require("../helpers/convert.js");const useUniqProductID=()=>ProductContext.useProductStore(e=>e.uiqueId),useProduct=()=>ProductContext.useProductStore(e=>e.product),useFeaturedImageGlobal=()=>ProductContext.useProductStore(e=>e.featuredImageGlobal),useProductProperties=()=>ProductContext.useProductStore(e=>e.properties),useIsSyncProduct=()=>ProductContext.useProductStore(e=>e.isSyncProduct),useQuantity=()=>{let e=ProductContext.useProductStore(e=>e.quantity),t=ProductContext.useProductStore(e=>e.decrementQuantity),r=ProductContext.useProductStore(e=>e.incrementQuantity),u=ProductContext.useProductStore(e=>e.setQuantity),o=ProductContext.useProductStore(e=>e.isSyncProduct),n=ProductContext.useProductStore(e=>e.product),s=n?.id,a=react.useCallback(()=>{u(1)},[u]);return react.useEffect(()=>{if(o){let t=new CustomEvent("set-product-quantity",{bubbles:!0,cancelable:!0,composed:!0,detail:{quantity:e,productId:s}});window.dispatchEvent(t)}},[e,o,s]),react.useMemo(()=>({quantity:e,increment:r,decrement:t,reset:a,setQuantity:u}),[t,r,e,a,u])},useSelectedOption=()=>{let e=ProductContext.useProductStore(e=>e.setSelectedOption),t=ProductContext.useProductStore(e=>e.selectedOptions),r=ProductContext.useProductStore(e=>e.forceSelectedOption),u=ProductContext.useProductStore(e=>e.isSyncProduct),o=react.useCallback((t,r,o,n)=>{if(!n&&u){let e=new CustomEvent("set-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{optionId:t,optionValue:r,productId:o}});window.dispatchEvent(e)}e(t,r)},[e,u]),n=react.useCallback((e,t,o)=>{if(!o&&u){let r=new CustomEvent("force-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{selectedOption:e,productId:t}});window.dispatchEvent(r)}r(e)},[r,u]);return react.useMemo(()=>({selectedOptions:t,setSelectedOption:o,forceSelectedOption:n}),[t,o,n])},useVariants=()=>{let e=ProductContext.useProductStore(e=>e.product?.variants);return flattenConnection.flattenConnection(e)},useVariant=e=>{let t=useVariants();return react.useMemo(()=>t?.find(t=>t?.id===e),[e,t])},useCurrentVariant=()=>{let{selectedOptions:e}=useSelectedOption(),t=useVariants();return react.useMemo(()=>product.getSelectedVariant(t,e),[e,t])},useCurrentVariantInStock=()=>{let e=useCurrentVariant(),t=useVariants();return variant.checkInStock(e,t)},useVariantOutStock=(e,t,r)=>{let{selectedOptions:u}=useSelectedOption(),o=useVariants(),n=r.optionNumber-1;if(r.position<n)return o.some(r=>{if(r){let{selectedOptions:u}=r,o=u?.some(r=>r?.name===e&&r.value===t),n=variant.checkInStock(r);return o&&n}});let s=product.getSelectedVariant(o,{...u,[e]:t});return variant.checkInStock(s)},useCheckAvailableVariantInStock=(e,t)=>{let r=useVariants();return!!r&&r.some(r=>{if(r){let{selectedOptions:u}=r,o=u?.some(r=>r?.name===e&&r.value===t),n=variant.checkInStock(r);return o&&n}return!1})},useProductOfferDiscount=()=>{let e=PageContext.usePageStore(e=>e.productOffers),t=useProduct(),r=useCurrentVariant(),u=e?.find(e=>e?.node?.objectBaseID===t?.baseID)?.node;if(!u||!u.isEnabled)return 0;let o=u?.value;if(u&&"PERCENTAGE"===u.valueType&&o){let e=r?.price||0;o=o*e/100}return o||0};exports.useCheckAvailableVariantInStock=useCheckAvailableVariantInStock,exports.useCurrentVariant=useCurrentVariant,exports.useCurrentVariantInStock=useCurrentVariantInStock,exports.useFeaturedImageGlobal=useFeaturedImageGlobal,exports.useIsSyncProduct=useIsSyncProduct,exports.useProduct=useProduct,exports.useProductOfferDiscount=useProductOfferDiscount,exports.useProductProperties=useProductProperties,exports.useQuantity=useQuantity,exports.useSelectedOption=useSelectedOption,exports.useUniqProductID=useUniqProductID,exports.useVariant=useVariant,exports.useVariantOutStock=useVariantOutStock,exports.useVariants=useVariants;
@@ -1,4 +1,4 @@
1
- import{getSingleColorVariable as o}from"./colors.js";import{removeNullUndefined as e,makeStyle as t,makeStyleResponsive as p}from"./make-style.js";let genTypoClass=o=>`g-${o}`,composeTypographyCss=o=>{let e=o?.custom,{fontFamily:t,fontSize:p,fontStyle:a,fontWeight:s,lineHeight:i,letterSpacing:y}=e?.desktop??{};return`
1
+ import{getSingleColorVariable as o}from"./colors.js";import{removeNullUndefined as e,makeStyle as t,makeStyleResponsive as p}from"./make-style.js";let genTypoClass=o=>`gp-g-${o}`,composeTypographyCss=o=>{let e=o?.custom,{fontFamily:t,fontSize:p,fontStyle:a,fontWeight:s,lineHeight:i,letterSpacing:y}=e?.desktop??{};return`
2
2
  ${t?`font-family: var(--g-font-${t}, ${t});`:""}
3
3
  ${p?`font-size: ${p};`:""}
4
4
  ${a?`font-style: ${a};`:""}
@@ -1 +1 @@
1
- import{useCallback as e,useEffect as t,useMemo as r}from"react";import{useProductStore as n}from"../contexts/ProductContext.js";import{flattenConnection as u}from"../helpers/flatten-connection.js";import"react/jsx-runtime";import"zustand";import"swr";import{usePageStore as o}from"../contexts/PageContext.js";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"./useCartUI.js";import{checkInStock as s}from"../helpers/variant.js";import"react-transition-group";import"@gem-sdk/core";import{getSelectedVariant as i}from"../helpers/product.js";import"../helpers/convert.js";let useUniqProductID=()=>n(e=>e.uiqueId),useProduct=()=>n(e=>e.product),useFeaturedImageGlobal=()=>n(e=>e.featuredImageGlobal),useProductProperties=()=>n(e=>e.properties),useIsSyncProduct=()=>n(e=>e.isSyncProduct),useQuantity=()=>{let u=n(e=>e.quantity),o=n(e=>e.decrementQuantity),s=n(e=>e.incrementQuantity),i=n(e=>e.setQuantity),a=n(e=>e.isSyncProduct),c=n(e=>e.product),l=c?.id,d=e(()=>{i(1)},[i]);return t(()=>{if(a){let e=new CustomEvent("set-product-quantity",{bubbles:!0,cancelable:!0,composed:!0,detail:{quantity:u,productId:l}});window.dispatchEvent(e)}},[u,a,l]),r(()=>({quantity:u,increment:s,decrement:o,reset:d,setQuantity:i}),[o,s,u,d,i])},useSelectedOption=()=>{let t=n(e=>e.setSelectedOption),u=n(e=>e.selectedOptions),o=n(e=>e.forceSelectedOption),s=n(e=>e.isSyncProduct),i=e((e,r,n,u)=>{if(!u&&s){let t=new CustomEvent("set-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{optionId:e,optionValue:r,productId:n}});window.dispatchEvent(t)}t(e,r)},[t,s]),a=e((e,t,r)=>{if(!r&&s){let r=new CustomEvent("force-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{selectedOption:e,productId:t}});window.dispatchEvent(r)}o(e)},[o,s]);return r(()=>({selectedOptions:u,setSelectedOption:i,forceSelectedOption:a}),[u,i,a])},useVariants=()=>{let e=n(e=>e.product?.variants);return u(e)},useVariant=e=>{let t=useVariants();return r(()=>t?.find(t=>t?.id===e),[e,t])},useCurrentVariant=()=>{let{selectedOptions:e}=useSelectedOption(),t=useVariants();return r(()=>i(t,e),[e,t])},useCurrentVariantInStock=()=>{let e=useCurrentVariant(),t=useVariants();return s(e,t)},useVariantOutStock=(e,t,r)=>{let{selectedOptions:n}=useSelectedOption(),u=useVariants(),o=r.optionNumber-1;if(r.position<o)return u.some(r=>{if(r){let{selectedOptions:n}=r,u=n?.some(r=>r?.name===e&&r.value===t),o=s(r);return u&&o}});let a=i(u,{...n,[e]:t});return s(a)},useCheckAvailableVariantInStock=(e,t)=>{let r=useVariants();return!!r&&r.some(r=>{if(r){let{selectedOptions:n}=r,u=n?.some(r=>r?.name===e&&r.value===t),o=s(r);return u&&o}return!1})},useProductOfferDiscount=()=>{let e=o(e=>e.productOffers),t=useProduct(),r=useCurrentVariant(),n=e?.find(e=>e?.node?.objectBaseID===t?.baseID)?.node,u=n?.value;if(n&&"PERCENTAGE"===n.valueType&&u){let e=r?.price||0;u=u*e/100}return u||0};export{useCheckAvailableVariantInStock,useCurrentVariant,useCurrentVariantInStock,useFeaturedImageGlobal,useIsSyncProduct,useProduct,useProductOfferDiscount,useProductProperties,useQuantity,useSelectedOption,useUniqProductID,useVariant,useVariantOutStock,useVariants};
1
+ import{useCallback as e,useEffect as t,useMemo as r}from"react";import{useProductStore as n}from"../contexts/ProductContext.js";import{flattenConnection as u}from"../helpers/flatten-connection.js";import"react/jsx-runtime";import"zustand";import"swr";import{usePageStore as o}from"../contexts/PageContext.js";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"./useCartUI.js";import{checkInStock as s}from"../helpers/variant.js";import"react-transition-group";import"@gem-sdk/core";import{getSelectedVariant as i}from"../helpers/product.js";import"../helpers/convert.js";let useUniqProductID=()=>n(e=>e.uiqueId),useProduct=()=>n(e=>e.product),useFeaturedImageGlobal=()=>n(e=>e.featuredImageGlobal),useProductProperties=()=>n(e=>e.properties),useIsSyncProduct=()=>n(e=>e.isSyncProduct),useQuantity=()=>{let u=n(e=>e.quantity),o=n(e=>e.decrementQuantity),s=n(e=>e.incrementQuantity),i=n(e=>e.setQuantity),a=n(e=>e.isSyncProduct),c=n(e=>e.product),l=c?.id,d=e(()=>{i(1)},[i]);return t(()=>{if(a){let e=new CustomEvent("set-product-quantity",{bubbles:!0,cancelable:!0,composed:!0,detail:{quantity:u,productId:l}});window.dispatchEvent(e)}},[u,a,l]),r(()=>({quantity:u,increment:s,decrement:o,reset:d,setQuantity:i}),[o,s,u,d,i])},useSelectedOption=()=>{let t=n(e=>e.setSelectedOption),u=n(e=>e.selectedOptions),o=n(e=>e.forceSelectedOption),s=n(e=>e.isSyncProduct),i=e((e,r,n,u)=>{if(!u&&s){let t=new CustomEvent("set-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{optionId:e,optionValue:r,productId:n}});window.dispatchEvent(t)}t(e,r)},[t,s]),a=e((e,t,r)=>{if(!r&&s){let r=new CustomEvent("force-selected-option",{bubbles:!0,cancelable:!0,composed:!0,detail:{selectedOption:e,productId:t}});window.dispatchEvent(r)}o(e)},[o,s]);return r(()=>({selectedOptions:u,setSelectedOption:i,forceSelectedOption:a}),[u,i,a])},useVariants=()=>{let e=n(e=>e.product?.variants);return u(e)},useVariant=e=>{let t=useVariants();return r(()=>t?.find(t=>t?.id===e),[e,t])},useCurrentVariant=()=>{let{selectedOptions:e}=useSelectedOption(),t=useVariants();return r(()=>i(t,e),[e,t])},useCurrentVariantInStock=()=>{let e=useCurrentVariant(),t=useVariants();return s(e,t)},useVariantOutStock=(e,t,r)=>{let{selectedOptions:n}=useSelectedOption(),u=useVariants(),o=r.optionNumber-1;if(r.position<o)return u.some(r=>{if(r){let{selectedOptions:n}=r,u=n?.some(r=>r?.name===e&&r.value===t),o=s(r);return u&&o}});let a=i(u,{...n,[e]:t});return s(a)},useCheckAvailableVariantInStock=(e,t)=>{let r=useVariants();return!!r&&r.some(r=>{if(r){let{selectedOptions:n}=r,u=n?.some(r=>r?.name===e&&r.value===t),o=s(r);return u&&o}return!1})},useProductOfferDiscount=()=>{let e=o(e=>e.productOffers),t=useProduct(),r=useCurrentVariant(),n=e?.find(e=>e?.node?.objectBaseID===t?.baseID)?.node;if(!n||!n.isEnabled)return 0;let u=n?.value;if(n&&"PERCENTAGE"===n.valueType&&u){let e=r?.price||0;u=u*e/100}return u||0};export{useCheckAvailableVariantInStock,useCurrentVariant,useCurrentVariantInStock,useFeaturedImageGlobal,useIsSyncProduct,useProduct,useProductOfferDiscount,useProductProperties,useQuantity,useSelectedOption,useUniqProductID,useVariant,useVariantOutStock,useVariants};
@@ -6171,6 +6171,7 @@ type SaleFunnelDiscount = {
6171
6171
  type?: Maybe<SaleFunnelDiscountType>;
6172
6172
  updatedAt?: Maybe<Scalars['Time']>;
6173
6173
  value?: Maybe<Scalars['Float']>;
6174
+ isEnabled?: Maybe<Scalars['Boolean']>;
6174
6175
  valueType?: Maybe<SaleFunnelDiscountValueType>;
6175
6176
  };
6176
6177
  type SaleFunnelDiscountEdge = {
@@ -6178,7 +6179,7 @@ type SaleFunnelDiscountEdge = {
6178
6179
  node?: Maybe<SaleFunnelDiscount>;
6179
6180
  };
6180
6181
  type ProductOffer = Maybe<Pick<SaleFunnelDiscountEdge, "cursor"> & {
6181
- node?: Maybe<Pick<SaleFunnelDiscount, "id" | "value" | "type" | "position" | "objectBaseID" | "objectType" | "title" | "valueType">>;
6182
+ node?: Maybe<Pick<SaleFunnelDiscount, "id" | "value" | "type" | "position" | "objectBaseID" | "objectType" | "title" | "valueType" | "isEnabled">>;
6182
6183
  }>;
6183
6184
 
6184
6185
  type InitComponentType<T = any> = {
@@ -8434,14 +8435,14 @@ declare function isColor(color: string): boolean;
8434
8435
  declare const getGlobalColorStyle: (data?: ColorValueType) => React.CSSProperties;
8435
8436
  declare const composeTextColorCss: (color?: ColorValueType) => string;
8436
8437
 
8437
- type TypographyClass = `g-${TypographyType}`;
8438
+ type TypographyClass = `gp-g-${TypographyType}`;
8438
8439
  declare const genTypoClass: (name: TypographyType) => TypographyClass;
8439
8440
  declare const composeTypographyCss: (typography: TypographySetting | undefined) => string;
8440
8441
  declare const composeTypographyV2Css: (typography: TypographySettingV2 | undefined, isImportant?: boolean) => string;
8441
8442
  declare const composeTypography: (typography?: ObjectDevices<TypographyProps>) => React.CSSProperties;
8442
8443
  declare const composeTypographyV2: (value?: TypographyV2Props, attrs?: TypographyV2Attrs) => React.CSSProperties;
8443
8444
  declare const composeTypographyAttr: (attrs?: TypographyV2Attrs) => React.CSSProperties;
8444
- declare const composeTypographyClassName: (typo?: TypographySettingV2, typography?: TypographySetting) => "" | "g-heading-1" | "g-heading-2" | "g-heading-3" | "g-subheading-1" | "g-subheading-2" | "g-subheading-3" | "g-paragraph-1" | "g-paragraph-2" | "g-paragraph-3" | undefined;
8445
+ declare const composeTypographyClassName: (typo?: TypographySettingV2, typography?: TypographySetting) => "" | "gp-g-heading-1" | "gp-g-heading-2" | "gp-g-heading-3" | "gp-g-subheading-1" | "gp-g-subheading-2" | "gp-g-subheading-3" | "gp-g-paragraph-1" | "gp-g-paragraph-2" | "gp-g-paragraph-3" | undefined;
8445
8446
  declare const composeFallbackTypographyStyle: (tag: string) => "var(--g-font-heading, heading)" | "var(--g-font-body, body)";
8446
8447
  declare const composeTypographyStyle: (typo?: TypographySettingV2, typography?: TypographySetting, disableAttr?: boolean) => {
8447
8448
  [x: string]: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/core",
3
- "version": "1.14.0-dev.718",
3
+ "version": "1.14.0-dev.721",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",