@anker-in/shopify-react 0.1.1-beta.7 → 0.1.1-beta.9
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.
- package/dist/hooks/index.d.mts +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.js +71 -5
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +72 -7
- package/dist/hooks/index.mjs.map +1 -1
- package/dist/{index-AJXjqRBR.d.ts → index-DMLI1Lh0.d.ts} +36 -3
- package/dist/{index-B9HdNo3a.d.mts → index-DyExTsmO.d.mts} +36 -3
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +71 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +72 -7
- package/dist/index.mjs.map +1 -1
- package/dist/provider/index.js +9 -5
- package/dist/provider/index.js.map +1 -1
- package/dist/provider/index.mjs +9 -5
- package/dist/provider/index.mjs.map +1 -1
- package/package.json +5 -5
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createContext, useMemo, useContext, useRef, useState, useEffect, useCallback } from 'react';
|
|
2
|
-
import { createShopifyClient, getProductsByHandles, createCart, updateCartCodes, addCartLines, updateCartLines, removeCartLines, updateCartAttributes, getProduct, getAllProducts, getCollection, getAllCollections, getCollections, getBlog, getAllBlogs, getArticle, getArticles, getArticlesInBlog, getLocalStorage, getCart, setLocalStorage } from '@anker-in/shopify-sdk';
|
|
2
|
+
import { createShopifyClient, getProductsByHandles, createCart, updateCartCodes, addCartLines, updateCartLines, removeCartLines, updateCartAttributes, getProduct, getAllProducts, getCollection, getAllCollections, getCollections, getBlog, getAllBlogs, getArticle, getArticles, getArticlesInBlog, getLocalStorage, getCart, setLocalStorage, updateCartDeliveryOptions } from '@anker-in/shopify-sdk';
|
|
3
3
|
export { ShopifyConfig, clearLocalStorage, createShopifyClient, getLocalStorage, removeLocalStorage, setLocalStorage } from '@anker-in/shopify-sdk';
|
|
4
4
|
import Cookies5 from 'js-cookie';
|
|
5
5
|
import { jsx } from 'react/jsx-runtime';
|
|
@@ -195,7 +195,7 @@ function createMockCartFromLines(lines, existingCart) {
|
|
|
195
195
|
currency: existingCart?.currency || { code: "USD" },
|
|
196
196
|
taxesIncluded: existingCart?.taxesIncluded,
|
|
197
197
|
lineItems: normalizedLines,
|
|
198
|
-
|
|
198
|
+
totalLineItemsDiscount: 0,
|
|
199
199
|
orderDiscounts: 0,
|
|
200
200
|
lineItemsSubtotalPrice: subtotalPrice,
|
|
201
201
|
subtotalPrice,
|
|
@@ -1439,15 +1439,19 @@ var useCartAttributes = ({
|
|
|
1439
1439
|
];
|
|
1440
1440
|
}, [profile?.memberType, profile?.token, userType, hasPlusMember]);
|
|
1441
1441
|
const functionAttributes = useMemo(() => {
|
|
1442
|
-
|
|
1443
|
-
|
|
1442
|
+
const hasFunctionEnvAttribute = cart?.lineItems.some(
|
|
1443
|
+
(item) => item.customAttributes?.some((attr) => attr.key === CUSTOMER_ATTRIBUTE_KEY)
|
|
1444
|
+
);
|
|
1445
|
+
const discountCodes = cart?.discountCodes.map((item) => item.code).filter((code) => code) || [];
|
|
1446
|
+
return hasFunctionEnvAttribute ? [
|
|
1447
|
+
{
|
|
1444
1448
|
key: "_discounts_function_env",
|
|
1445
1449
|
value: JSON.stringify({
|
|
1446
|
-
discount_code:
|
|
1450
|
+
discount_code: discountCodes,
|
|
1447
1451
|
user_tags: customer?.tags || []
|
|
1448
1452
|
})
|
|
1449
1453
|
}
|
|
1450
|
-
];
|
|
1454
|
+
] : [];
|
|
1451
1455
|
}, [cart]);
|
|
1452
1456
|
const presellAttributes = useMemo(() => {
|
|
1453
1457
|
return [
|
|
@@ -2624,6 +2628,67 @@ var usePlusMemberDeliveryCodes = ({
|
|
|
2624
2628
|
[deliveryData]
|
|
2625
2629
|
);
|
|
2626
2630
|
};
|
|
2631
|
+
function useUpdateCartDeliveryOptions(mutate, metafieldIdentifiers, options) {
|
|
2632
|
+
const { client, locale, cartCookieAdapter } = useShopify();
|
|
2633
|
+
const updateDeliveryOptions = useCallback(
|
|
2634
|
+
async (_key, { arg }) => {
|
|
2635
|
+
const updatedCart = await updateCartDeliveryOptions(client, {
|
|
2636
|
+
...arg,
|
|
2637
|
+
metafieldIdentifiers,
|
|
2638
|
+
cookieAdapter: cartCookieAdapter
|
|
2639
|
+
});
|
|
2640
|
+
console.log("useUpdateCartDeliveryOptions updatedCart", updatedCart);
|
|
2641
|
+
if (updatedCart) {
|
|
2642
|
+
mutate(updatedCart);
|
|
2643
|
+
}
|
|
2644
|
+
return updatedCart;
|
|
2645
|
+
},
|
|
2646
|
+
[client, locale, cartCookieAdapter, mutate]
|
|
2647
|
+
);
|
|
2648
|
+
return useSWRMutation("update-cart-delivery-options", updateDeliveryOptions, options);
|
|
2649
|
+
}
|
|
2650
|
+
|
|
2651
|
+
// src/hooks/member/plus/use-update-plus-member-delivery-options.ts
|
|
2652
|
+
var useUpdatePlusMemberDeliveryOptions = ({
|
|
2653
|
+
deliveryData,
|
|
2654
|
+
options
|
|
2655
|
+
}) => {
|
|
2656
|
+
const { cart, mutateCart: mutate, metafieldIdentifiers } = useCartContext();
|
|
2657
|
+
const { trigger: updateCartDeliveryOptions2, isMutating } = useUpdateCartDeliveryOptions(
|
|
2658
|
+
mutate,
|
|
2659
|
+
metafieldIdentifiers
|
|
2660
|
+
);
|
|
2661
|
+
const deliveryOptions = useMemo(() => {
|
|
2662
|
+
const deliveryGroupId = cart?.deliveryGroups?.[0]?.id;
|
|
2663
|
+
const selectedOptionCode = deliveryData?.deliveryCustomData?.selected_delivery_option;
|
|
2664
|
+
if (!deliveryGroupId || !selectedOptionCode) {
|
|
2665
|
+
return [];
|
|
2666
|
+
}
|
|
2667
|
+
const deliveryGroup = cart?.deliveryGroups?.find((group) => group?.id === deliveryGroupId);
|
|
2668
|
+
const matchedOption = deliveryGroup?.deliveryOptions?.find(
|
|
2669
|
+
(option) => option?.code === selectedOptionCode
|
|
2670
|
+
);
|
|
2671
|
+
if (!matchedOption?.handle) {
|
|
2672
|
+
return [];
|
|
2673
|
+
}
|
|
2674
|
+
return [
|
|
2675
|
+
{
|
|
2676
|
+
deliveryGroupId,
|
|
2677
|
+
deliveryOptionHandle: matchedOption.handle
|
|
2678
|
+
}
|
|
2679
|
+
];
|
|
2680
|
+
}, [deliveryData, cart]);
|
|
2681
|
+
const handler = useCallback(async () => {
|
|
2682
|
+
const updatedCart = await updateCartDeliveryOptions2({
|
|
2683
|
+
selectedDeliveryOptions: deliveryOptions
|
|
2684
|
+
});
|
|
2685
|
+
if (updatedCart && mutate) {
|
|
2686
|
+
mutate(updatedCart);
|
|
2687
|
+
}
|
|
2688
|
+
return updatedCart;
|
|
2689
|
+
}, [deliveryOptions, mutate, updateCartDeliveryOptions2]);
|
|
2690
|
+
return useSWRMutation("update-cart-delivery-options", handler, options);
|
|
2691
|
+
};
|
|
2627
2692
|
var usePlusMemberItemCustomAttributes = ({
|
|
2628
2693
|
deliveryData
|
|
2629
2694
|
}) => {
|
|
@@ -3244,6 +3309,6 @@ function useCartContext() {
|
|
|
3244
3309
|
return context;
|
|
3245
3310
|
}
|
|
3246
3311
|
|
|
3247
|
-
export { BuyRuleType, CODE_AMOUNT_KEY, CUSTOMER_ATTRIBUTE_KEY, CUSTOMER_SCRIPT_GIFT_KEY, CartProvider, DeliveryPlusType, MAIN_PRODUCT_CODE, OrderBasePriceType, OrderDiscountType, PLUS_MEMBER_TYPE, PlusMemberContext, PlusMemberMode, PlusMemberProvider, PriceBasePriceType, PriceDiscountType, RuleType, SCRIPT_CODE_AMOUNT_KEY, ShippingMethodMode, ShopifyContext, ShopifyProvider, SpendMoneyType, atobID, browserCartCookieAdapter, browserCookieAdapter, btoaID, checkAttributesUpdateNeeded, clearGeoLocationCache, createMockCartFromLines, currencyCodeMapping, defaultSWRMutationConfiguration, formatFunctionAutoFreeGift, formatScriptAutoFreeGift, gaTrack, getCachedGeoLocation, getDiscountEnvAttributeValue, getMatchedMainProductSubTotal, getQuery, getReferralAttributes, normalizeAddToCartLines, preCheck, safeParse, trackAddToCartFBQ, trackAddToCartGA, trackBeginCheckoutGA, trackBuyNowFBQ, trackBuyNowGA, useAddCartLines, useAddPlusMemberProductsToCart, useAddToCart, useAllBlogs, useAllCollections, useAllProducts, useApplyCartCodes, useArticle, useArticles, useArticlesInBlog, useAutoRemovePlusMemberInCart, useBlog, useBuyNow, useCalcAutoFreeGift, useCalcGiftsFromLines, useCalcOrderDiscount, useCartAttributes, useCartContext, useCartItemQuantityLimit, useCollection, useCollections, useCreateCart, useExposure, useGeoLocation, useHasPlusMemberInCart, useIntersection, usePlusAnnualProductVariant, usePlusMemberCheckoutCustomAttributes, usePlusMemberContext, usePlusMemberDeliveryCodes, usePlusMemberItemCustomAttributes, usePlusMonthlyProductVariant, usePrice, useProduct, useProductUrl, useProductsByHandles, useRemoveCartCodes, useRemoveCartLines, useReplaceCartPlusMember, useScriptAutoFreeGift, useSearch, useSelectedOptions, useShippingMethodAvailableCheck, useShippingMethods, useShopify, useSite, useUpdateCartAttributes, useUpdateCartLines, useUpdateLineCodeAmountAttributes, useUpdateVariantQuery, useVariant, useVariantMedia };
|
|
3312
|
+
export { BuyRuleType, CODE_AMOUNT_KEY, CUSTOMER_ATTRIBUTE_KEY, CUSTOMER_SCRIPT_GIFT_KEY, CartProvider, DeliveryPlusType, MAIN_PRODUCT_CODE, OrderBasePriceType, OrderDiscountType, PLUS_MEMBER_TYPE, PlusMemberContext, PlusMemberMode, PlusMemberProvider, PriceBasePriceType, PriceDiscountType, RuleType, SCRIPT_CODE_AMOUNT_KEY, ShippingMethodMode, ShopifyContext, ShopifyProvider, SpendMoneyType, atobID, browserCartCookieAdapter, browserCookieAdapter, btoaID, checkAttributesUpdateNeeded, clearGeoLocationCache, createMockCartFromLines, currencyCodeMapping, defaultSWRMutationConfiguration, formatFunctionAutoFreeGift, formatScriptAutoFreeGift, gaTrack, getCachedGeoLocation, getDiscountEnvAttributeValue, getMatchedMainProductSubTotal, getQuery, getReferralAttributes, normalizeAddToCartLines, preCheck, safeParse, trackAddToCartFBQ, trackAddToCartGA, trackBeginCheckoutGA, trackBuyNowFBQ, trackBuyNowGA, useAddCartLines, useAddPlusMemberProductsToCart, useAddToCart, useAllBlogs, useAllCollections, useAllProducts, useApplyCartCodes, useArticle, useArticles, useArticlesInBlog, useAutoRemovePlusMemberInCart, useBlog, useBuyNow, useCalcAutoFreeGift, useCalcGiftsFromLines, useCalcOrderDiscount, useCartAttributes, useCartContext, useCartItemQuantityLimit, useCollection, useCollections, useCreateCart, useExposure, useGeoLocation, useHasPlusMemberInCart, useIntersection, usePlusAnnualProductVariant, usePlusMemberCheckoutCustomAttributes, usePlusMemberContext, usePlusMemberDeliveryCodes, usePlusMemberItemCustomAttributes, usePlusMonthlyProductVariant, usePrice, useProduct, useProductUrl, useProductsByHandles, useRemoveCartCodes, useRemoveCartLines, useReplaceCartPlusMember, useScriptAutoFreeGift, useSearch, useSelectedOptions, useShippingMethodAvailableCheck, useShippingMethods, useShopify, useSite, useUpdateCartAttributes, useUpdateCartLines, useUpdateLineCodeAmountAttributes, useUpdatePlusMemberDeliveryOptions, useUpdateVariantQuery, useVariant, useVariantMedia };
|
|
3248
3313
|
//# sourceMappingURL=index.mjs.map
|
|
3249
3314
|
//# sourceMappingURL=index.mjs.map
|