@anker-in/shopify-react 0.1.1-beta.0 → 0.1.1-beta.1

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,5 +1,5 @@
1
- export { A as AddCartLinesInput, b as AddToCartInput, f as ApplyCartCodesInput, w as AutoFreeGift, y as AutoFreeGiftConfig, Q as AutoFreeGiftItem, T as AutoFreeGiftList, x as AutoFreeGiftMainProduct, B as BuyNowInput, K as BuyRuleType, a5 as CODE_AMOUNT_KEY, a3 as CUSTOMER_ATTRIBUTE_KEY, a4 as CUSTOMER_SCRIPT_GIFT_KEY, P as CartLineInput, E as Config, C as CreateCartInput, bb as Customer, ba as CustomerOrder, D as DiscountLabel, N as FormattedGift, L as FunctionGiftResult, bo as GeoLocationData, G as GiftProduct, I as GiftProductItem, F as GiftTier, bg as HasPlusMemberInCartResult, ax as ImageMedia, bp as LocaleMapping, a7 as MAIN_PRODUCT_CODE, M as MainProductInfo, aq as Options, X as OrderBasePriceType, Z as OrderDiscountConfig, O as OrderDiscountResult, W as OrderDiscountType, a$ as PlusMemberContext, a_ as PlusMemberContextValue, bj as PlusMemberProvider, bi as PlusMemberProviderProps, $ as PriceBasePriceType, a0 as PriceDiscountConfig, _ as PriceDiscountType, h as RemoveCartCodesInput, R as RemoveCartLinesInput, H as RewardItem, z as RuleCondition, J as RuleType, a6 as SCRIPT_CODE_AMOUNT_KEY, aT as SearchResult, aS as SearchResultItem, aR as SearchResultType, aj as SelectedOptionsResult, aZ as ShippingMethodsContext, aW as SiteInfo, S as SpendMoneyType, Y as TieredDiscount, j as UpdateCartAttributesInput, U as UseAddToCartOptions, aJ as UseAllBlogsOptions, aD as UseAllCollectionsOptions, am as UseAllProductsOptions, aL as UseArticleOptions, aP as UseArticlesInBlogOptions, aN as UseArticlesOptions, bd as UseAutoRemovePlusMemberInCartProps, aH as UseBlogOptions, l as UseBuyNowOptions, aB as UseCollectionOptions, aF as UseCollectionsOptions, bm as UseExposureOptions, bq as UseGeoLocationOptions, bf as UseHasPlusMemberInCartProps, bk as UseIntersectionOptions, as as UsePriceOptions, at as UsePriceResult, ak as UseProductOptions, ao as UseProductsByHandlesOptions, s as UseScriptAutoFreeGiftResult, aU as UseSearchOptions, b3 as UseShippingMethodsOptions, b4 as UseShippingMethodsResult, aX as UseSiteOptions, V as VariantItem, az as VariantMedia, ay as VideoMedia, a9 as atobID, aa as btoaID, bt as clearGeoLocationCache, a1 as currencyCodeMapping, a2 as defaultSWRMutationConfiguration, ah as formatFunctionAutoFreeGift, ag as formatScriptAutoFreeGift, bs as getCachedGeoLocation, ac as getDiscountEnvAttributeValue, ab as getMatchedMainProductSubTotal, a8 as getQuery, p as getReferralAttributes, ad as isAttributesEqual, af as preCheck, ae as safeParseJson, a as useAddCartLines, c as useAddToCart, aK as useAllBlogs, aE as useAllCollections, an as useAllProducts, g as useApplyCartCodes, aM as useArticle, aO as useArticles, aQ as useArticlesInBlog, be as useAutoRemovePlusMemberInCart, aI as useBlog, m as useBuyNow, n as useCalcAutoFreeGift, o as useCalcOrderDiscount, q as useCartAttributes, r as useCartItemQuantityLimit, aC as useCollection, aG as useCollections, u as useCreateCart, bn as useExposure, br as useGeoLocation, bh as useHasPlusMemberInCart, bl as useIntersection, b2 as usePlusAnnualProductVariant, bc as usePlusMemberCheckoutCustomAttributes, b0 as usePlusMemberContext, b8 as usePlusMemberDeliveryCodes, b9 as usePlusMemberItemCustomAttributes, b1 as usePlusMonthlyProductVariant, au as usePrice, al as useProduct, av as useProductUrl, ap as useProductsByHandles, i as useRemoveCartCodes, e as useRemoveCartLines, b7 as useReplaceCartPlusMember, t as useScriptAutoFreeGift, aV as useSearch, ai as useSelectedOptions, b6 as useShippingMethodAvailableCheck, b5 as useShippingMethods, aY as useSite, k as useUpdateCartAttributes, d as useUpdateCartLines, v as useUpdateLineCodeAmountAttributes, aw as useUpdateVariantQuery, ar as useVariant, aA as useVariantMedia } from '../index-DenyuVGJ.mjs';
2
- export { g as DeliveryCustomData, h as DeliveryData, f as DeliveryOption, D as DeliveryPlusType, M as MailingAddress, P as PLUS_MEMBER_TYPE, a as PlusMemberMode, d as PlusMemberSettingsMetafields, c as PlusMemberShippingMethodConfig, b as PlusMemberShippingMethodMetafields, e as SelectedPlusMemberProduct, S as ShippingMethodMode } from '../types-CMA6_FML.mjs';
1
+ export { A as AddCartLinesInput, d as ApplyCartCodesInput, s as AutoFreeGift, v as AutoFreeGiftConfig, L as AutoFreeGiftItem, N as AutoFreeGiftList, t as AutoFreeGiftMainProduct, B as BuyNowInput, H as BuyRuleType, a2 as CODE_AMOUNT_KEY, a0 as CUSTOMER_ATTRIBUTE_KEY, a1 as CUSTOMER_SCRIPT_GIFT_KEY, K as CartLineInput, x as Config, C as CreateCartInput, b8 as Customer, b7 as CustomerOrder, D as DiscountLabel, J as FormattedGift, I as FunctionGiftResult, bl as GeoLocationData, G as GiftProduct, E as GiftProductItem, y as GiftTier, bd as HasPlusMemberInCartResult, au as ImageMedia, bm as LocaleMapping, a4 as MAIN_PRODUCT_CODE, M as MainProductInfo, an as Options, Q as OrderBasePriceType, W as OrderDiscountConfig, O as OrderDiscountResult, P as OrderDiscountType, aY as PlusMemberContext, aX as PlusMemberContextValue, bg as PlusMemberProvider, bf as PlusMemberProviderProps, Y as PriceBasePriceType, Z as PriceDiscountConfig, X as PriceDiscountType, f as RemoveCartCodesInput, R as RemoveCartLinesInput, z as RewardItem, w as RuleCondition, F as RuleType, a3 as SCRIPT_CODE_AMOUNT_KEY, aQ as SearchResult, aP as SearchResultItem, aO as SearchResultType, ag as SelectedOptionsResult, aW as ShippingMethodsContext, aT as SiteInfo, S as SpendMoneyType, T as TieredDiscount, U as UpdateCartAttributesInput, aG as UseAllBlogsOptions, aA as UseAllCollectionsOptions, aj as UseAllProductsOptions, aI as UseArticleOptions, aM as UseArticlesInBlogOptions, aK as UseArticlesOptions, ba as UseAutoRemovePlusMemberInCartProps, aE as UseBlogOptions, i as UseBuyNowOptions, ay as UseCollectionOptions, aC as UseCollectionsOptions, bj as UseExposureOptions, bn as UseGeoLocationOptions, bc as UseHasPlusMemberInCartProps, bh as UseIntersectionOptions, ap as UsePriceOptions, aq as UsePriceResult, ah as UseProductOptions, al as UseProductsByHandlesOptions, p as UseScriptAutoFreeGiftResult, aR as UseSearchOptions, b0 as UseShippingMethodsOptions, b1 as UseShippingMethodsResult, aU as UseSiteOptions, V as VariantItem, aw as VariantMedia, av as VideoMedia, a6 as atobID, a7 as btoaID, bq as clearGeoLocationCache, _ as currencyCodeMapping, $ as defaultSWRMutationConfiguration, ae as formatFunctionAutoFreeGift, ad as formatScriptAutoFreeGift, bp as getCachedGeoLocation, a9 as getDiscountEnvAttributeValue, a8 as getMatchedMainProductSubTotal, a5 as getQuery, m as getReferralAttributes, aa as isAttributesEqual, ac as preCheck, ab as safeParseJson, a as useAddCartLines, aH as useAllBlogs, aB as useAllCollections, ak as useAllProducts, e as useApplyCartCodes, aJ as useArticle, aL as useArticles, aN as useArticlesInBlog, bb as useAutoRemovePlusMemberInCart, aF as useBlog, j as useBuyNow, k as useCalcAutoFreeGift, l as useCalcOrderDiscount, n as useCartAttributes, o as useCartItemQuantityLimit, az as useCollection, aD as useCollections, u as useCreateCart, bk as useExposure, bo as useGeoLocation, be as useHasPlusMemberInCart, bi as useIntersection, a$ as usePlusAnnualProductVariant, b9 as usePlusMemberCheckoutCustomAttributes, aZ as usePlusMemberContext, b5 as usePlusMemberDeliveryCodes, b6 as usePlusMemberItemCustomAttributes, a_ as usePlusMonthlyProductVariant, ar as usePrice, ai as useProduct, as as useProductUrl, am as useProductsByHandles, g as useRemoveCartCodes, c as useRemoveCartLines, b4 as useReplaceCartPlusMember, q as useScriptAutoFreeGift, aS as useSearch, af as useSelectedOptions, b3 as useShippingMethodAvailableCheck, b2 as useShippingMethods, aV as useSite, h as useUpdateCartAttributes, b as useUpdateCartLines, r as useUpdateLineCodeAmountAttributes, at as useUpdateVariantQuery, ao as useVariant, ax as useVariantMedia } from '../index-RevQokdZ.mjs';
2
+ export { a as AddToCartInput, A as AddToCartLineItem, h as DeliveryCustomData, i as DeliveryData, g as DeliveryOption, D as DeliveryPlusType, M as MailingAddress, P as PLUS_MEMBER_TYPE, b as PlusMemberMode, e as PlusMemberSettingsMetafields, d as PlusMemberShippingMethodConfig, c as PlusMemberShippingMethodMetafields, f as SelectedPlusMemberProduct, S as ShippingMethodMode, U as UseAddToCartOptions, u as useAddToCart } from '../types-CICUnw0v.mjs';
3
3
  import 'swr/mutation';
4
4
  import '@anker-in/shopify-sdk';
5
5
  import 'decimal.js';
@@ -1,5 +1,5 @@
1
- export { A as AddCartLinesInput, b as AddToCartInput, f as ApplyCartCodesInput, w as AutoFreeGift, y as AutoFreeGiftConfig, Q as AutoFreeGiftItem, T as AutoFreeGiftList, x as AutoFreeGiftMainProduct, B as BuyNowInput, K as BuyRuleType, a5 as CODE_AMOUNT_KEY, a3 as CUSTOMER_ATTRIBUTE_KEY, a4 as CUSTOMER_SCRIPT_GIFT_KEY, P as CartLineInput, E as Config, C as CreateCartInput, bb as Customer, ba as CustomerOrder, D as DiscountLabel, N as FormattedGift, L as FunctionGiftResult, bo as GeoLocationData, G as GiftProduct, I as GiftProductItem, F as GiftTier, bg as HasPlusMemberInCartResult, ax as ImageMedia, bp as LocaleMapping, a7 as MAIN_PRODUCT_CODE, M as MainProductInfo, aq as Options, X as OrderBasePriceType, Z as OrderDiscountConfig, O as OrderDiscountResult, W as OrderDiscountType, a$ as PlusMemberContext, a_ as PlusMemberContextValue, bj as PlusMemberProvider, bi as PlusMemberProviderProps, $ as PriceBasePriceType, a0 as PriceDiscountConfig, _ as PriceDiscountType, h as RemoveCartCodesInput, R as RemoveCartLinesInput, H as RewardItem, z as RuleCondition, J as RuleType, a6 as SCRIPT_CODE_AMOUNT_KEY, aT as SearchResult, aS as SearchResultItem, aR as SearchResultType, aj as SelectedOptionsResult, aZ as ShippingMethodsContext, aW as SiteInfo, S as SpendMoneyType, Y as TieredDiscount, j as UpdateCartAttributesInput, U as UseAddToCartOptions, aJ as UseAllBlogsOptions, aD as UseAllCollectionsOptions, am as UseAllProductsOptions, aL as UseArticleOptions, aP as UseArticlesInBlogOptions, aN as UseArticlesOptions, bd as UseAutoRemovePlusMemberInCartProps, aH as UseBlogOptions, l as UseBuyNowOptions, aB as UseCollectionOptions, aF as UseCollectionsOptions, bm as UseExposureOptions, bq as UseGeoLocationOptions, bf as UseHasPlusMemberInCartProps, bk as UseIntersectionOptions, as as UsePriceOptions, at as UsePriceResult, ak as UseProductOptions, ao as UseProductsByHandlesOptions, s as UseScriptAutoFreeGiftResult, aU as UseSearchOptions, b3 as UseShippingMethodsOptions, b4 as UseShippingMethodsResult, aX as UseSiteOptions, V as VariantItem, az as VariantMedia, ay as VideoMedia, a9 as atobID, aa as btoaID, bt as clearGeoLocationCache, a1 as currencyCodeMapping, a2 as defaultSWRMutationConfiguration, ah as formatFunctionAutoFreeGift, ag as formatScriptAutoFreeGift, bs as getCachedGeoLocation, ac as getDiscountEnvAttributeValue, ab as getMatchedMainProductSubTotal, a8 as getQuery, p as getReferralAttributes, ad as isAttributesEqual, af as preCheck, ae as safeParseJson, a as useAddCartLines, c as useAddToCart, aK as useAllBlogs, aE as useAllCollections, an as useAllProducts, g as useApplyCartCodes, aM as useArticle, aO as useArticles, aQ as useArticlesInBlog, be as useAutoRemovePlusMemberInCart, aI as useBlog, m as useBuyNow, n as useCalcAutoFreeGift, o as useCalcOrderDiscount, q as useCartAttributes, r as useCartItemQuantityLimit, aC as useCollection, aG as useCollections, u as useCreateCart, bn as useExposure, br as useGeoLocation, bh as useHasPlusMemberInCart, bl as useIntersection, b2 as usePlusAnnualProductVariant, bc as usePlusMemberCheckoutCustomAttributes, b0 as usePlusMemberContext, b8 as usePlusMemberDeliveryCodes, b9 as usePlusMemberItemCustomAttributes, b1 as usePlusMonthlyProductVariant, au as usePrice, al as useProduct, av as useProductUrl, ap as useProductsByHandles, i as useRemoveCartCodes, e as useRemoveCartLines, b7 as useReplaceCartPlusMember, t as useScriptAutoFreeGift, aV as useSearch, ai as useSelectedOptions, b6 as useShippingMethodAvailableCheck, b5 as useShippingMethods, aY as useSite, k as useUpdateCartAttributes, d as useUpdateCartLines, v as useUpdateLineCodeAmountAttributes, aw as useUpdateVariantQuery, ar as useVariant, aA as useVariantMedia } from '../index-BUWkkUdh.js';
2
- export { g as DeliveryCustomData, h as DeliveryData, f as DeliveryOption, D as DeliveryPlusType, M as MailingAddress, P as PLUS_MEMBER_TYPE, a as PlusMemberMode, d as PlusMemberSettingsMetafields, c as PlusMemberShippingMethodConfig, b as PlusMemberShippingMethodMetafields, e as SelectedPlusMemberProduct, S as ShippingMethodMode } from '../types-CMA6_FML.js';
1
+ export { A as AddCartLinesInput, d as ApplyCartCodesInput, s as AutoFreeGift, v as AutoFreeGiftConfig, L as AutoFreeGiftItem, N as AutoFreeGiftList, t as AutoFreeGiftMainProduct, B as BuyNowInput, H as BuyRuleType, a2 as CODE_AMOUNT_KEY, a0 as CUSTOMER_ATTRIBUTE_KEY, a1 as CUSTOMER_SCRIPT_GIFT_KEY, K as CartLineInput, x as Config, C as CreateCartInput, b8 as Customer, b7 as CustomerOrder, D as DiscountLabel, J as FormattedGift, I as FunctionGiftResult, bl as GeoLocationData, G as GiftProduct, E as GiftProductItem, y as GiftTier, bd as HasPlusMemberInCartResult, au as ImageMedia, bm as LocaleMapping, a4 as MAIN_PRODUCT_CODE, M as MainProductInfo, an as Options, Q as OrderBasePriceType, W as OrderDiscountConfig, O as OrderDiscountResult, P as OrderDiscountType, aY as PlusMemberContext, aX as PlusMemberContextValue, bg as PlusMemberProvider, bf as PlusMemberProviderProps, Y as PriceBasePriceType, Z as PriceDiscountConfig, X as PriceDiscountType, f as RemoveCartCodesInput, R as RemoveCartLinesInput, z as RewardItem, w as RuleCondition, F as RuleType, a3 as SCRIPT_CODE_AMOUNT_KEY, aQ as SearchResult, aP as SearchResultItem, aO as SearchResultType, ag as SelectedOptionsResult, aW as ShippingMethodsContext, aT as SiteInfo, S as SpendMoneyType, T as TieredDiscount, U as UpdateCartAttributesInput, aG as UseAllBlogsOptions, aA as UseAllCollectionsOptions, aj as UseAllProductsOptions, aI as UseArticleOptions, aM as UseArticlesInBlogOptions, aK as UseArticlesOptions, ba as UseAutoRemovePlusMemberInCartProps, aE as UseBlogOptions, i as UseBuyNowOptions, ay as UseCollectionOptions, aC as UseCollectionsOptions, bj as UseExposureOptions, bn as UseGeoLocationOptions, bc as UseHasPlusMemberInCartProps, bh as UseIntersectionOptions, ap as UsePriceOptions, aq as UsePriceResult, ah as UseProductOptions, al as UseProductsByHandlesOptions, p as UseScriptAutoFreeGiftResult, aR as UseSearchOptions, b0 as UseShippingMethodsOptions, b1 as UseShippingMethodsResult, aU as UseSiteOptions, V as VariantItem, aw as VariantMedia, av as VideoMedia, a6 as atobID, a7 as btoaID, bq as clearGeoLocationCache, _ as currencyCodeMapping, $ as defaultSWRMutationConfiguration, ae as formatFunctionAutoFreeGift, ad as formatScriptAutoFreeGift, bp as getCachedGeoLocation, a9 as getDiscountEnvAttributeValue, a8 as getMatchedMainProductSubTotal, a5 as getQuery, m as getReferralAttributes, aa as isAttributesEqual, ac as preCheck, ab as safeParseJson, a as useAddCartLines, aH as useAllBlogs, aB as useAllCollections, ak as useAllProducts, e as useApplyCartCodes, aJ as useArticle, aL as useArticles, aN as useArticlesInBlog, bb as useAutoRemovePlusMemberInCart, aF as useBlog, j as useBuyNow, k as useCalcAutoFreeGift, l as useCalcOrderDiscount, n as useCartAttributes, o as useCartItemQuantityLimit, az as useCollection, aD as useCollections, u as useCreateCart, bk as useExposure, bo as useGeoLocation, be as useHasPlusMemberInCart, bi as useIntersection, a$ as usePlusAnnualProductVariant, b9 as usePlusMemberCheckoutCustomAttributes, aZ as usePlusMemberContext, b5 as usePlusMemberDeliveryCodes, b6 as usePlusMemberItemCustomAttributes, a_ as usePlusMonthlyProductVariant, ar as usePrice, ai as useProduct, as as useProductUrl, am as useProductsByHandles, g as useRemoveCartCodes, c as useRemoveCartLines, b4 as useReplaceCartPlusMember, q as useScriptAutoFreeGift, aS as useSearch, af as useSelectedOptions, b3 as useShippingMethodAvailableCheck, b2 as useShippingMethods, aV as useSite, h as useUpdateCartAttributes, b as useUpdateCartLines, r as useUpdateLineCodeAmountAttributes, at as useUpdateVariantQuery, ao as useVariant, ax as useVariantMedia } from '../index-CCMIeIUh.js';
2
+ export { a as AddToCartInput, A as AddToCartLineItem, h as DeliveryCustomData, i as DeliveryData, g as DeliveryOption, D as DeliveryPlusType, M as MailingAddress, P as PLUS_MEMBER_TYPE, b as PlusMemberMode, e as PlusMemberSettingsMetafields, d as PlusMemberShippingMethodConfig, c as PlusMemberShippingMethodMetafields, f as SelectedPlusMemberProduct, S as ShippingMethodMode, U as UseAddToCartOptions, u as useAddToCart } from '../types-CICUnw0v.js';
3
3
  import 'swr/mutation';
4
4
  import '@anker-in/shopify-sdk';
5
5
  import 'decimal.js';
@@ -606,8 +606,6 @@ function useAddCartLines(options) {
606
606
  );
607
607
  return useSWRMutation__default.default("add-cart-lines", addLines, options);
608
608
  }
609
-
610
- // src/tracking/ga.ts
611
609
  var gaTrack = (data) => {
612
610
  if (typeof window === "undefined") {
613
611
  return;
@@ -625,18 +623,15 @@ var gaTrack = (data) => {
625
623
  };
626
624
  var trackAddToCartGA = ({
627
625
  lineItems = [],
628
- gtmParams = {},
629
- brand
626
+ gtmParams = {}
630
627
  }) => {
631
628
  if (!lineItems.length || !lineItems[0]?.variant) {
632
629
  return;
633
630
  }
634
631
  const { variant } = lineItems[0];
635
- const currencyCode = variant?.price?.currencyCode;
636
- const totalPrice = lineItems.reduce((sum, item) => {
637
- const price = parseFloat(item.variant?.price?.amount || "0");
638
- return sum + price;
639
- }, 0);
632
+ const currencyCode = variant.product?.price?.currencyCode;
633
+ const price = variant.compareAtPrice?.amount ?? (variant.price?.amount || 0);
634
+ const totalPrice = lineItems?.reduce((prev, { variant: variant2 }) => prev.plus(variant2?.finalPrice?.amount ?? price), new Decimal2__default.default(0)).toNumber();
640
635
  gaTrack({
641
636
  event: "ga4Event",
642
637
  event_name: "add_to_cart",
@@ -647,11 +642,11 @@ var trackAddToCartGA = ({
647
642
  position: gtmParams?.position || "",
648
643
  items: lineItems.map(({ variant: variant2, quantity }) => ({
649
644
  item_id: variant2?.sku,
650
- item_name: variant2?.product?.title || variant2?.product?.name,
651
- item_brand: brand || gtmParams?.brand || "",
645
+ item_name: variant2?.product?.title || variant2?.product?.title,
646
+ item_brand: gtmParams?.brand || "",
652
647
  item_category: variant2?.product?.productType || "",
653
- item_variant: variant2?.title || variant2?.name,
654
- price: variant2?.finalPrice?.amount ?? variant2?.price?.amount,
648
+ item_variant: variant2?.title || variant2?.title,
649
+ price,
655
650
  quantity: quantity || 1
656
651
  })),
657
652
  ...gtmParams?.ga4Params
@@ -660,19 +655,15 @@ var trackAddToCartGA = ({
660
655
  };
661
656
  var trackBuyNowGA = ({
662
657
  lineItems = [],
663
- gtmParams = {},
664
- brand
658
+ gtmParams = {}
665
659
  }) => {
666
660
  if (!lineItems.length || !lineItems[0]?.variant) {
667
661
  return;
668
662
  }
669
663
  const { variant } = lineItems[0];
670
664
  const currencyCode = variant.price?.currencyCode;
671
- const totalPrice = lineItems.reduce((sum, item) => {
672
- const price = parseFloat(item.finalPrice?.amount || item.variant?.price?.amount || "0");
673
- const quantity = item.quantity || 1;
674
- return sum + price * quantity;
675
- }, 0);
665
+ const price = variant.compareAtPrice?.amount ?? (variant.price?.amount || 0);
666
+ const totalPrice = lineItems?.reduce((prev, { variant: variant2 }) => prev.plus(variant2?.finalPrice?.amount ?? price), new Decimal2__default.default(0)).toNumber();
676
667
  gaTrack({
677
668
  event: "ga4Event",
678
669
  event_name: "begin_checkout",
@@ -684,10 +675,10 @@ var trackBuyNowGA = ({
684
675
  items: lineItems.map((item) => ({
685
676
  item_id: item.variant?.sku,
686
677
  item_name: item.variant?.product?.title || item.variant?.title,
687
- item_brand: item.variant?.product?.vendor || brand || gtmParams?.brand || "",
678
+ item_brand: gtmParams?.brand || "",
688
679
  item_category: item.variant?.product?.productType || "",
689
680
  item_variant: item.variant?.title,
690
- price: item.finalPrice?.amount || item.variant?.price?.amount,
681
+ price,
691
682
  quantity: item.quantity || 1
692
683
  })),
693
684
  ...gtmParams?.ga4Params
@@ -701,10 +692,10 @@ var trackAddToCartFBQ = ({ lineItems = [] }) => {
701
692
  return;
702
693
  }
703
694
  if (lineItems.length && lineItems[0]?.variant) {
704
- const { variant, quantity, finalPrice } = lineItems[0];
695
+ const { variant, quantity } = lineItems[0];
705
696
  try {
706
697
  window.fbq("track", "AddToCart", {
707
- value: finalPrice?.amount || variant?.price?.amount,
698
+ value: variant?.compareAtPrice?.amount ?? (variant?.price?.amount || variant?.price || 0),
708
699
  num_items: quantity,
709
700
  currency: variant?.price?.currencyCode,
710
701
  content_name: variant?.product?.title,
@@ -791,9 +782,9 @@ function useRemoveCartCodes(options) {
791
782
  }
792
783
 
793
784
  // src/hooks/cart/use-add-to-cart.ts
794
- function useAddToCart({ withTrack = true, brand } = {}, swrOptions) {
795
- const { client, locale, cartCookieAdapter, userAdapter } = useShopify();
796
- const { mutateCart, cart, metafieldIdentifiers } = useCartContext();
785
+ function useAddToCart({ withTrack = true } = {}, swrOptions) {
786
+ const { client, config, locale, cartCookieAdapter, userAdapter } = useShopify();
787
+ const { cart } = useCartContext();
797
788
  const { trigger: applyCartCodes } = useApplyCartCodes();
798
789
  const { trigger: removeInvalidCodes } = useRemoveCartCodes();
799
790
  const { trigger: addCartLines2 } = useAddCartLines();
@@ -815,7 +806,8 @@ function useAddToCart({ withTrack = true, brand } = {}, swrOptions) {
815
806
  const lines = lineItems.map((item) => ({
816
807
  merchandiseId: item.variant?.id || "",
817
808
  quantity: item.quantity || 1,
818
- attributes: item.attributes
809
+ attributes: item.attributes,
810
+ sellingPlanId: item.sellingPlanId
819
811
  })).filter((item) => item.merchandiseId && item.quantity);
820
812
  if (lines.length === 0) {
821
813
  return;
@@ -850,34 +842,16 @@ function useAddToCart({ withTrack = true, brand } = {}, swrOptions) {
850
842
  discountCodes
851
843
  });
852
844
  }
853
- if (withTrack && resultCart.lineItems) {
854
- const trackingLineItems = resultCart.lineItems.map((line) => ({
855
- variant: {
856
- id: line.variant.id,
857
- sku: line.variant.sku || "",
858
- title: line.variant.name,
859
- price: {
860
- amount: String(line.variant.price),
861
- currencyCode: resultCart.currency.code
862
- },
863
- product: line.product ? {
864
- title: line.product.title || line.name,
865
- productType: line.product.productType,
866
- vendor: line.product.vendor
867
- } : void 0
868
- },
869
- quantity: line.quantity
870
- }));
845
+ if (withTrack) {
871
846
  trackAddToCartGA({
872
- lineItems: trackingLineItems,
873
- gtmParams: { ...gtmParams, brand },
874
- brand
847
+ lineItems,
848
+ gtmParams: { ...gtmParams, brand: config.getBrand() }
875
849
  });
876
- trackAddToCartFBQ({ lineItems: trackingLineItems });
850
+ trackAddToCartFBQ({ lineItems });
877
851
  }
878
852
  return resultCart;
879
853
  },
880
- [client, locale, cartCookieAdapter, userAdapter, cart, withTrack, brand]
854
+ [client, locale, cartCookieAdapter, userAdapter, cart, withTrack]
881
855
  );
882
856
  return useSWRMutation__default.default("add-to-cart", addToCart, swrOptions);
883
857
  }
@@ -958,8 +932,8 @@ function useUpdateCartAttributes(mutate, metafieldIdentifiers, options) {
958
932
  );
959
933
  return useSWRMutation__default.default("update-cart-attributes", updateAttributes, options);
960
934
  }
961
- function useBuyNow({ withTrack = true, brand } = {}, swrOptions) {
962
- const { client, locale, cartCookieAdapter, userAdapter } = useShopify();
935
+ function useBuyNow({ withTrack = true } = {}, swrOptions) {
936
+ const { client, config, locale, cartCookieAdapter, userAdapter } = useShopify();
963
937
  const isLoggedIn = userAdapter?.isLoggedIn || false;
964
938
  const buyNow = react.useCallback(
965
939
  async (_key, { arg }) => {
@@ -977,9 +951,10 @@ function useBuyNow({ withTrack = true, brand } = {}, swrOptions) {
977
951
  return;
978
952
  }
979
953
  const lines = lineItems.map((item) => ({
980
- merchandiseId: item.variant?.id || item.variantId || "",
954
+ merchandiseId: item.variant?.id || "",
981
955
  quantity: item.quantity || 1,
982
- attributes: item.attributes
956
+ attributes: item.attributes,
957
+ sellingPlanId: item.sellingPlanId
983
958
  })).filter((item) => item.merchandiseId && item.quantity);
984
959
  if (lines.length === 0) {
985
960
  return;
@@ -996,27 +971,9 @@ function useBuyNow({ withTrack = true, brand } = {}, swrOptions) {
996
971
  throw new Error("Failed to create cart for buy now");
997
972
  }
998
973
  if (withTrack && resultCart.lineItems) {
999
- const trackingLineItems = resultCart.lineItems.map((line) => ({
1000
- variant: {
1001
- id: line.variantId,
1002
- sku: line.variant.sku || "",
1003
- title: line.variant.name,
1004
- price: {
1005
- amount: String(line.variant.price),
1006
- currencyCode: resultCart.currency.code
1007
- },
1008
- product: line.product ? {
1009
- title: line.product.title || line.name,
1010
- productType: line.product.productType,
1011
- vendor: line.product.vendor
1012
- } : void 0
1013
- },
1014
- quantity: line.quantity
1015
- }));
1016
974
  trackBuyNowGA({
1017
- lineItems: trackingLineItems,
1018
- gtmParams: { ...gtmParams, brand },
1019
- brand
975
+ lineItems,
976
+ gtmParams: { ...gtmParams, brand: config.getBrand() }
1020
977
  });
1021
978
  if (fbqTrackConfig) {
1022
979
  trackBuyNowFBQ({ trackConfig: fbqTrackConfig });
@@ -1033,7 +990,7 @@ function useBuyNow({ withTrack = true, brand } = {}, swrOptions) {
1033
990
  }
1034
991
  return resultCart;
1035
992
  },
1036
- [client, locale, isLoggedIn, cartCookieAdapter, withTrack, brand]
993
+ [client, locale, isLoggedIn, cartCookieAdapter, withTrack]
1037
994
  );
1038
995
  return useSWRMutation__default.default("buy-now", buyNow, swrOptions);
1039
996
  }