@anker-in/shopify-react 0.1.1-beta.41 → 0.1.1-beta.43

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.
@@ -4,7 +4,7 @@ import { ShopifyClient, ShopifyConfig, CartCookieAdapter, NormalizedCart, Attrib
4
4
  import { C as CookieAdapter, R as RouterAdapter, U as UserContextAdapter, P as PerformanceAdapter } from '../types-SKDHauqk.mjs';
5
5
  import * as react_jsx_runtime from 'react/jsx-runtime';
6
6
  import { SWRConfiguration } from 'swr';
7
- import { e as PlusMemberSettingsMetafields } from '../types-y1Wa95P3.mjs';
7
+ import { e as PlusMemberSettingsMetafields } from '../types-CMMWxyUF.mjs';
8
8
 
9
9
  interface ShopifyContextValue {
10
10
  client: ShopifyClient;
@@ -4,7 +4,7 @@ import { ShopifyClient, ShopifyConfig, CartCookieAdapter, NormalizedCart, Attrib
4
4
  import { C as CookieAdapter, R as RouterAdapter, U as UserContextAdapter, P as PerformanceAdapter } from '../types-SKDHauqk.js';
5
5
  import * as react_jsx_runtime from 'react/jsx-runtime';
6
6
  import { SWRConfiguration } from 'swr';
7
- import { e as PlusMemberSettingsMetafields } from '../types-y1Wa95P3.js';
7
+ import { e as PlusMemberSettingsMetafields } from '../types-CMMWxyUF.js';
8
8
 
9
9
  interface ShopifyContextValue {
10
10
  client: ShopifyClient;
@@ -711,55 +711,72 @@ var useScriptAutoFreeGift = ({
711
711
  giftProductsResult: finalGiftProductsResult
712
712
  };
713
713
  };
714
- function useUpdateCartAttributes(mutate, metafieldIdentifiers, options) {
714
+ function useUpdateCartAttributes({
715
+ mutate,
716
+ metafieldIdentifiers,
717
+ disabled = false,
718
+ swrOptions
719
+ }) {
715
720
  const { client, locale, cartCookieAdapter } = useShopify();
716
721
  const updateAttributes = react.useCallback(
717
722
  async (_key, { arg }) => {
723
+ if (disabled || !cartCookieAdapter?.getCartId(locale)) {
724
+ return void 0;
725
+ }
718
726
  const updatedCart = await shopifySdk.updateCartAttributes(client, {
719
727
  ...arg,
720
728
  metafieldIdentifiers,
721
729
  cookieAdapter: cartCookieAdapter
722
730
  });
723
- console.log("useUpdateCartAttributes updatedCart", updatedCart);
724
731
  if (updatedCart) {
725
732
  mutate(updatedCart);
726
733
  }
727
734
  return updatedCart;
728
735
  },
729
- [client, locale, cartCookieAdapter, mutate, metafieldIdentifiers]
736
+ [client, locale, cartCookieAdapter, mutate, metafieldIdentifiers, disabled]
730
737
  );
731
- return useSWRMutation8__default.default("update-cart-attributes", updateAttributes, options);
738
+ return useSWRMutation8__default.default("update-cart-attributes", updateAttributes, swrOptions);
732
739
  }
733
- function useHasPlusMemberInCart({
740
+ function hasPlusMemberInCart({
734
741
  memberSetting,
735
742
  cart
736
743
  }) {
737
744
  const { plus_monthly_product, plus_annual_product } = memberSetting || {};
738
- return react.useMemo(() => {
739
- if (!cart?.lineItems) {
740
- return {
741
- hasPlusMember: false,
742
- hasMonthlyPlus: false,
743
- hasAnnualPlus: false
744
- };
745
- }
746
- const monthlyPlusItem = cart.lineItems.find(
747
- (item) => item.product?.handle === plus_monthly_product?.handle && item.variant?.sku === plus_monthly_product?.sku
748
- );
749
- const annualPlusItem = cart.lineItems.find(
750
- (item) => item.product?.handle === plus_annual_product?.handle && item.variant?.sku === plus_annual_product?.sku
751
- );
752
- const hasMonthlyPlus = !!monthlyPlusItem;
753
- const hasAnnualPlus = !!annualPlusItem;
754
- const hasPlusMember = hasMonthlyPlus || hasAnnualPlus;
745
+ if (!cart?.lineItems) {
755
746
  return {
756
- hasPlusMember,
757
- hasMonthlyPlus,
758
- hasAnnualPlus,
759
- monthlyPlusItem,
760
- annualPlusItem
747
+ hasPlusMember: false,
748
+ hasMonthlyPlus: false,
749
+ hasAnnualPlus: false
761
750
  };
762
- }, [cart?.lineItems, plus_monthly_product, plus_annual_product]);
751
+ }
752
+ const monthlyPlusItem = cart.lineItems.find(
753
+ (item) => item.product?.handle === plus_monthly_product?.handle && item.variant?.sku === plus_monthly_product?.sku
754
+ );
755
+ const annualPlusItem = cart.lineItems.find(
756
+ (item) => item.product?.handle === plus_annual_product?.handle && item.variant?.sku === plus_annual_product?.sku
757
+ );
758
+ const hasMonthlyPlus = !!monthlyPlusItem;
759
+ const hasAnnualPlus = !!annualPlusItem;
760
+ const hasPlusMember = hasMonthlyPlus || hasAnnualPlus;
761
+ return {
762
+ hasPlusMember,
763
+ hasMonthlyPlus,
764
+ hasAnnualPlus,
765
+ monthlyPlusItem,
766
+ annualPlusItem
767
+ };
768
+ }
769
+ function useHasPlusMemberInCart({
770
+ memberSetting,
771
+ cart
772
+ }) {
773
+ return react.useMemo(
774
+ () => hasPlusMemberInCart({
775
+ memberSetting,
776
+ cart
777
+ }),
778
+ [memberSetting, cart]
779
+ );
763
780
  }
764
781
  var getReferralAttributes = () => {
765
782
  const inviteCode = shopifySdk.getLocalStorage("inviteCode") || Cookies5__default.default.get("inviteCode");
@@ -856,7 +873,7 @@ var useCartAttributes = ({
856
873
  })
857
874
  }
858
875
  ] : [];
859
- }, [cart]);
876
+ }, [cart, customer]);
860
877
  const presellAttributes = react.useMemo(() => {
861
878
  return [
862
879
  {
@@ -920,9 +937,7 @@ var useCartAttributes = ({
920
937
  "_play_mode_id",
921
938
  "_popup"
922
939
  ];
923
- return cart?.customAttributes?.filter(
924
- (item) => !commonAttributeKeys.includes(item.key)
925
- ) || [];
940
+ return cart?.customAttributes?.filter((item) => !commonAttributeKeys.includes(item.key)) || [];
926
941
  }, [cart]);
927
942
  return react.useMemo(
928
943
  () => ({
@@ -1048,28 +1063,13 @@ var useUpdateLineCodeAmountAttributes = ({
1048
1063
  }, [loading, setLoadingState]);
1049
1064
  };
1050
1065
  var createInitialValue = () => ({
1051
- zipCode: "",
1052
1066
  plusMemberMetafields: {},
1053
- setZipCode: () => {
1054
- },
1055
- allowNextDayDelivery: false,
1056
- setAllowNextDayDelivery: () => {
1057
- },
1058
- allowThirdDayDelivery: false,
1059
- setAllowThirdDayDelivery: () => {
1060
- },
1061
1067
  selectedPlusMemberMode: "free",
1062
1068
  setSelectedPlusMemberMode: () => {
1063
1069
  },
1064
- showAreaCheckModal: false,
1065
- setShowAreaCheckModal: () => {
1066
- },
1067
1070
  selectedShippingMethod: void 0,
1068
1071
  setSelectedShippingMethod: () => {
1069
1072
  },
1070
- showTip: false,
1071
- setShowTip: () => {
1072
- },
1073
1073
  showMoreShippingMethod: false,
1074
1074
  setShowMoreShippingMethod: () => {
1075
1075
  },
@@ -1084,16 +1084,11 @@ var createInitialValue = () => ({
1084
1084
  tddCoupon: void 0,
1085
1085
  isLoadingCoupon: false
1086
1086
  },
1087
- selectedPlusMemberProduct: null,
1088
- plusMemberProducts: [],
1087
+ selectedPlusMemberVariant: void 0,
1089
1088
  showPlusMemberBenefit: false,
1090
1089
  setShowPlusMemberBenefit: () => {
1091
1090
  },
1092
- deleteMarginBottom: false,
1093
- setDeleteMarginBottom: () => {
1094
- },
1095
- profile: void 0,
1096
- locale: void 0
1091
+ profile: void 0
1097
1092
  });
1098
1093
  react.createContext(createInitialValue());
1099
1094
  var CartContext = react.createContext(null);
@@ -1138,7 +1133,11 @@ function CartProvider({
1138
1133
  refreshDeps: [locale]
1139
1134
  }
1140
1135
  );
1141
- const { trigger: updateAttributes } = useUpdateCartAttributes(mutateCart, metafieldIdentifiers);
1136
+ const { trigger: updateAttributes } = useUpdateCartAttributes({
1137
+ mutate: mutateCart,
1138
+ metafieldIdentifiers,
1139
+ disabled: isCartLoading
1140
+ });
1142
1141
  const { attributes } = useCartAttributes({ profile, customer, cart, memberSetting });
1143
1142
  ahooks.useRequest(
1144
1143
  () => {