@anker-in/lib 1.0.0 → 1.1.0
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/.turbo/turbo-build.log +15 -26
- package/.turbo/turbo-test.log +2 -11
- package/README.md +162 -1
- package/dist/cart/const.d.ts +6 -0
- package/dist/cart/const.d.ts.map +1 -0
- package/dist/cart/hooks/basic/useBuyNow.d.ts +21 -0
- package/dist/cart/hooks/basic/useBuyNow.d.ts.map +1 -0
- package/dist/cart/index.d.ts +6 -0
- package/dist/cart/index.d.ts.map +1 -0
- package/dist/cart/track/fbq.d.ts +23 -0
- package/dist/cart/track/fbq.d.ts.map +1 -0
- package/dist/cart/types/index.d.ts +23 -0
- package/dist/cart/types/index.d.ts.map +1 -0
- package/dist/cart/utils/index.d.ts +3 -0
- package/dist/cart/utils/index.d.ts.map +1 -0
- package/dist/cjs/cart/const.d.ts +6 -0
- package/dist/cjs/cart/const.d.ts.map +1 -0
- package/dist/cjs/cart/const.js +2 -0
- package/dist/cjs/cart/const.js.map +7 -0
- package/dist/cjs/cart/hooks/basic/useBuyNow.d.ts +21 -0
- package/dist/cjs/cart/hooks/basic/useBuyNow.d.ts.map +1 -0
- package/dist/cjs/cart/hooks/basic/useBuyNow.js +2 -0
- package/dist/cjs/cart/hooks/basic/useBuyNow.js.map +7 -0
- package/dist/cjs/cart/index.d.ts +6 -0
- package/dist/cjs/cart/index.d.ts.map +1 -0
- package/dist/cjs/cart/index.js +2 -0
- package/dist/cjs/cart/index.js.map +7 -0
- package/dist/cjs/cart/track/fbq.d.ts +21 -0
- package/dist/cjs/cart/track/fbq.d.ts.map +1 -0
- package/dist/cjs/cart/track/fbq.js +2 -0
- package/dist/cjs/cart/track/fbq.js.map +7 -0
- package/dist/cjs/cart/types/index.d.ts +23 -0
- package/dist/cjs/cart/types/index.d.ts.map +1 -0
- package/dist/cjs/cart/types/index.js +2 -0
- package/dist/cjs/cart/types/index.js.map +7 -0
- package/dist/cjs/cart/utils/index.d.ts +3 -0
- package/dist/cjs/cart/utils/index.d.ts.map +1 -0
- package/dist/cjs/cart/utils/index.js +2 -0
- package/dist/cjs/cart/utils/index.js.map +7 -0
- package/dist/cjs/context/HeadlessProvider.d.ts +10 -0
- package/dist/cjs/context/HeadlessProvider.d.ts.map +1 -0
- package/dist/cjs/context/HeadlessProvider.js +2 -0
- package/dist/cjs/context/HeadlessProvider.js.map +7 -0
- package/dist/cjs/context/config.d.ts +11 -0
- package/dist/cjs/context/config.d.ts.map +1 -0
- package/dist/cjs/context/config.js +2 -0
- package/dist/cjs/context/config.js.map +7 -0
- package/dist/cjs/context/index.d.ts +3 -0
- package/dist/cjs/context/index.d.ts.map +1 -0
- package/dist/cjs/context/index.js +2 -0
- package/dist/cjs/context/index.js.map +7 -0
- package/dist/cjs/index.d.ts +6 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/registration/context/index.d.ts +24 -0
- package/dist/cjs/registration/context/index.d.ts.map +1 -0
- package/dist/cjs/registration/context/index.js +2 -0
- package/dist/cjs/registration/context/index.js.map +7 -0
- package/dist/cjs/registration/hooks/index.d.ts +3 -0
- package/dist/cjs/registration/hooks/index.d.ts.map +1 -0
- package/dist/cjs/registration/hooks/index.js +2 -0
- package/dist/cjs/registration/hooks/index.js.map +7 -0
- package/dist/cjs/registration/hooks/useEmailValidation.d.ts +17 -0
- package/dist/cjs/registration/hooks/useEmailValidation.d.ts.map +1 -0
- package/dist/cjs/registration/hooks/useEmailValidation.js +2 -0
- package/dist/cjs/registration/hooks/useEmailValidation.js.map +7 -0
- package/dist/cjs/registration/hooks/useSendEmailValidation.d.ts +9 -0
- package/dist/cjs/registration/hooks/useSendEmailValidation.d.ts.map +1 -0
- package/dist/cjs/registration/hooks/useSendEmailValidation.js +2 -0
- package/dist/cjs/registration/hooks/useSendEmailValidation.js.map +7 -0
- package/dist/cjs/registration/index.d.ts +3 -0
- package/dist/cjs/registration/index.d.ts.map +1 -0
- package/dist/cjs/registration/index.js +2 -0
- package/dist/cjs/registration/index.js.map +7 -0
- package/dist/cjs/shopify/fetchers/add-cart-lines.d.ts +12 -0
- package/dist/cjs/shopify/fetchers/add-cart-lines.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/add-cart-lines.js +2 -0
- package/dist/cjs/shopify/fetchers/add-cart-lines.js.map +7 -0
- package/dist/cjs/shopify/fetchers/create-cart.d.ts +13 -0
- package/dist/cjs/shopify/fetchers/create-cart.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/create-cart.js +2 -0
- package/dist/cjs/shopify/fetchers/create-cart.js.map +7 -0
- package/dist/cjs/shopify/fetchers/get-cart.d.ts +16 -0
- package/dist/cjs/shopify/fetchers/get-cart.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/get-cart.js +2 -0
- package/dist/cjs/shopify/fetchers/get-cart.js.map +7 -0
- package/dist/cjs/shopify/fetchers/get-products-by-handles.d.ts +15 -0
- package/dist/cjs/shopify/fetchers/get-products-by-handles.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/get-products-by-handles.js +2 -0
- package/dist/cjs/shopify/fetchers/get-products-by-handles.js.map +7 -0
- package/dist/cjs/shopify/fetchers/index.d.ts +10 -0
- package/dist/cjs/shopify/fetchers/index.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/index.js +2 -0
- package/dist/cjs/shopify/fetchers/index.js.map +7 -0
- package/dist/cjs/shopify/fetchers/remove-cart-lines.d.ts +12 -0
- package/dist/cjs/shopify/fetchers/remove-cart-lines.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/remove-cart-lines.js +2 -0
- package/dist/cjs/shopify/fetchers/remove-cart-lines.js.map +7 -0
- package/dist/cjs/shopify/fetchers/update-cart-attributes.d.ts +12 -0
- package/dist/cjs/shopify/fetchers/update-cart-attributes.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/update-cart-attributes.js +2 -0
- package/dist/cjs/shopify/fetchers/update-cart-attributes.js.map +7 -0
- package/dist/cjs/shopify/fetchers/update-cart-buyer-identity.d.ts +12 -0
- package/dist/cjs/shopify/fetchers/update-cart-buyer-identity.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/update-cart-buyer-identity.js +2 -0
- package/dist/cjs/shopify/fetchers/update-cart-buyer-identity.js.map +7 -0
- package/dist/cjs/shopify/fetchers/update-cart-codes.d.ts +12 -0
- package/dist/cjs/shopify/fetchers/update-cart-codes.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/update-cart-codes.js +2 -0
- package/dist/cjs/shopify/fetchers/update-cart-codes.js.map +7 -0
- package/dist/cjs/shopify/fetchers/update-cart-lines.d.ts +12 -0
- package/dist/cjs/shopify/fetchers/update-cart-lines.d.ts.map +1 -0
- package/dist/cjs/shopify/fetchers/update-cart-lines.js +2 -0
- package/dist/cjs/shopify/fetchers/update-cart-lines.js.map +7 -0
- package/dist/cjs/shopify/fragments/article.d.ts +3 -0
- package/dist/cjs/shopify/fragments/article.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/article.js +50 -0
- package/dist/cjs/shopify/fragments/article.js.map +7 -0
- package/dist/cjs/shopify/fragments/blog.d.ts +2 -0
- package/dist/cjs/shopify/fragments/blog.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/blog.js +11 -0
- package/dist/cjs/shopify/fragments/blog.js.map +7 -0
- package/dist/cjs/shopify/fragments/cart.d.ts +2 -0
- package/dist/cjs/shopify/fragments/cart.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/cart.js +189 -0
- package/dist/cjs/shopify/fragments/cart.js.map +7 -0
- package/dist/cjs/shopify/fragments/collection.d.ts +2 -0
- package/dist/cjs/shopify/fragments/collection.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/collection.js +16 -0
- package/dist/cjs/shopify/fragments/collection.js.map +7 -0
- package/dist/cjs/shopify/fragments/image.d.ts +2 -0
- package/dist/cjs/shopify/fragments/image.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/image.js +9 -0
- package/dist/cjs/shopify/fragments/image.js.map +7 -0
- package/dist/cjs/shopify/fragments/index.d.ts +12 -0
- package/dist/cjs/shopify/fragments/index.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/index.js +2 -0
- package/dist/cjs/shopify/fragments/index.js.map +7 -0
- package/dist/cjs/shopify/fragments/metafields.d.ts +3 -0
- package/dist/cjs/shopify/fragments/metafields.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/metafields.js +16 -0
- package/dist/cjs/shopify/fragments/metafields.js.map +7 -0
- package/dist/cjs/shopify/fragments/page-info.d.ts +2 -0
- package/dist/cjs/shopify/fragments/page-info.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/page-info.js +9 -0
- package/dist/cjs/shopify/fragments/page-info.js.map +7 -0
- package/dist/cjs/shopify/fragments/page.d.ts +2 -0
- package/dist/cjs/shopify/fragments/page.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/page.js +13 -0
- package/dist/cjs/shopify/fragments/page.js.map +7 -0
- package/dist/cjs/shopify/fragments/product.d.ts +2 -0
- package/dist/cjs/shopify/fragments/product.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/product.js +72 -0
- package/dist/cjs/shopify/fragments/product.js.map +7 -0
- package/dist/cjs/shopify/fragments/seo.d.ts +2 -0
- package/dist/cjs/shopify/fragments/seo.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/seo.js +7 -0
- package/dist/cjs/shopify/fragments/seo.js.map +7 -0
- package/dist/cjs/shopify/fragments/variant.d.ts +2 -0
- package/dist/cjs/shopify/fragments/variant.d.ts.map +1 -0
- package/dist/cjs/shopify/fragments/variant.js +30 -0
- package/dist/cjs/shopify/fragments/variant.js.map +7 -0
- package/dist/cjs/shopify/gql/fragment-masking.d.ts +16 -0
- package/dist/cjs/shopify/gql/fragment-masking.d.ts.map +1 -0
- package/dist/cjs/shopify/gql/fragment-masking.js +2 -0
- package/dist/cjs/shopify/gql/fragment-masking.js.map +7 -0
- package/dist/cjs/shopify/gql/gql.d.ts +88 -0
- package/dist/cjs/shopify/gql/gql.d.ts.map +1 -0
- package/dist/cjs/shopify/gql/gql.js +2 -0
- package/dist/cjs/shopify/gql/gql.js.map +7 -0
- package/dist/cjs/shopify/gql/graphql.d.ts +7670 -0
- package/dist/cjs/shopify/gql/graphql.d.ts.map +1 -0
- package/dist/cjs/shopify/gql/graphql.js +2 -0
- package/dist/cjs/shopify/gql/graphql.js.map +7 -0
- package/dist/cjs/shopify/gql/index.d.ts +4 -0
- package/dist/cjs/shopify/gql/index.d.ts.map +1 -0
- package/dist/cjs/shopify/gql/index.js +2 -0
- package/dist/cjs/shopify/gql/index.js.map +7 -0
- package/dist/cjs/shopify/hooks/index.d.ts +2 -0
- package/dist/cjs/shopify/hooks/index.d.ts.map +1 -0
- package/dist/cjs/shopify/hooks/index.js +2 -0
- package/dist/cjs/shopify/hooks/index.js.map +7 -0
- package/dist/cjs/shopify/hooks/useProductsByHandles.d.ts +5 -0
- package/dist/cjs/shopify/hooks/useProductsByHandles.d.ts.map +1 -0
- package/dist/cjs/shopify/hooks/useProductsByHandles.js +2 -0
- package/dist/cjs/shopify/hooks/useProductsByHandles.js.map +7 -0
- package/dist/cjs/shopify/index.d.ts +6 -0
- package/dist/cjs/shopify/index.d.ts.map +1 -0
- package/dist/cjs/shopify/index.js +2 -0
- package/dist/cjs/shopify/index.js.map +7 -0
- package/dist/cjs/shopify/mutations/add-cart-lines.d.ts +2 -0
- package/dist/cjs/shopify/mutations/add-cart-lines.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/add-cart-lines.js +15 -0
- package/dist/cjs/shopify/mutations/add-cart-lines.js.map +7 -0
- package/dist/cjs/shopify/mutations/create-cart.d.ts +2 -0
- package/dist/cjs/shopify/mutations/create-cart.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/create-cart.js +21 -0
- package/dist/cjs/shopify/mutations/create-cart.js.map +7 -0
- package/dist/cjs/shopify/mutations/remove-cart-items.d.ts +2 -0
- package/dist/cjs/shopify/mutations/remove-cart-items.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/remove-cart-items.js +15 -0
- package/dist/cjs/shopify/mutations/remove-cart-items.js.map +7 -0
- package/dist/cjs/shopify/mutations/update-cart-attributes.d.ts +2 -0
- package/dist/cjs/shopify/mutations/update-cart-attributes.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/update-cart-attributes.js +15 -0
- package/dist/cjs/shopify/mutations/update-cart-attributes.js.map +7 -0
- package/dist/cjs/shopify/mutations/update-cart-buyer-identity.d.ts +2 -0
- package/dist/cjs/shopify/mutations/update-cart-buyer-identity.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/update-cart-buyer-identity.js +15 -0
- package/dist/cjs/shopify/mutations/update-cart-buyer-identity.js.map +7 -0
- package/dist/cjs/shopify/mutations/update-cart-discount-code.d.ts +2 -0
- package/dist/cjs/shopify/mutations/update-cart-discount-code.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/update-cart-discount-code.js +15 -0
- package/dist/cjs/shopify/mutations/update-cart-discount-code.js.map +7 -0
- package/dist/cjs/shopify/mutations/update-cart-items.d.ts +2 -0
- package/dist/cjs/shopify/mutations/update-cart-items.d.ts.map +1 -0
- package/dist/cjs/shopify/mutations/update-cart-items.js +15 -0
- package/dist/cjs/shopify/mutations/update-cart-items.js.map +7 -0
- package/dist/cjs/shopify/queries/get-cart.d.ts +2 -0
- package/dist/cjs/shopify/queries/get-cart.d.ts.map +1 -0
- package/dist/cjs/shopify/queries/get-cart.js +13 -0
- package/dist/cjs/shopify/queries/get-cart.js.map +7 -0
- package/dist/cjs/shopify/queries/get-product-by-handles.d.ts +2 -0
- package/dist/cjs/shopify/queries/get-product-by-handles.d.ts.map +1 -0
- package/dist/cjs/shopify/queries/get-product-by-handles.js +29 -0
- package/dist/cjs/shopify/queries/get-product-by-handles.js.map +7 -0
- package/dist/cjs/shopify/queries/index.d.ts +2 -0
- package/dist/cjs/shopify/queries/index.d.ts.map +1 -0
- package/dist/cjs/shopify/queries/index.js +2 -0
- package/dist/cjs/shopify/queries/index.js.map +7 -0
- package/dist/cjs/shopify/types/article.d.ts +49 -0
- package/dist/cjs/shopify/types/article.d.ts.map +1 -0
- package/dist/cjs/shopify/types/article.js +2 -0
- package/dist/cjs/shopify/types/article.js.map +7 -0
- package/dist/cjs/shopify/types/cart.d.ts +175 -0
- package/dist/cjs/shopify/types/cart.d.ts.map +1 -0
- package/dist/cjs/shopify/types/cart.js +2 -0
- package/dist/cjs/shopify/types/cart.js.map +7 -0
- package/dist/cjs/shopify/types/checkout.d.ts +43 -0
- package/dist/cjs/shopify/types/checkout.d.ts.map +1 -0
- package/dist/cjs/shopify/types/checkout.js +2 -0
- package/dist/cjs/shopify/types/checkout.js.map +7 -0
- package/dist/cjs/shopify/types/collection.d.ts +123 -0
- package/dist/cjs/shopify/types/collection.d.ts.map +1 -0
- package/dist/cjs/shopify/types/collection.js +2 -0
- package/dist/cjs/shopify/types/collection.js.map +7 -0
- package/dist/cjs/shopify/types/common.d.ts +43 -0
- package/dist/cjs/shopify/types/common.d.ts.map +1 -0
- package/dist/cjs/shopify/types/common.js +2 -0
- package/dist/cjs/shopify/types/common.js.map +7 -0
- package/dist/cjs/shopify/types/config.d.ts +13 -0
- package/dist/cjs/shopify/types/config.d.ts.map +1 -0
- package/dist/cjs/shopify/types/config.js +2 -0
- package/dist/cjs/shopify/types/config.js.map +7 -0
- package/dist/cjs/shopify/types/customer.d.ts +31 -0
- package/dist/cjs/shopify/types/customer.d.ts.map +1 -0
- package/dist/cjs/shopify/types/customer.js +2 -0
- package/dist/cjs/shopify/types/customer.js.map +7 -0
- package/dist/cjs/shopify/types/fetcher.d.ts +44 -0
- package/dist/cjs/shopify/types/fetcher.d.ts.map +1 -0
- package/dist/cjs/shopify/types/fetcher.js +2 -0
- package/dist/cjs/shopify/types/fetcher.js.map +7 -0
- package/dist/cjs/shopify/types/index.d.ts +12 -0
- package/dist/cjs/shopify/types/index.d.ts.map +1 -0
- package/dist/cjs/shopify/types/index.js +2 -0
- package/dist/cjs/shopify/types/index.js.map +7 -0
- package/dist/cjs/shopify/types/page.d.ts +34 -0
- package/dist/cjs/shopify/types/page.d.ts.map +1 -0
- package/dist/cjs/shopify/types/page.js +2 -0
- package/dist/cjs/shopify/types/page.js.map +7 -0
- package/dist/cjs/shopify/types/product.d.ts +175 -0
- package/dist/cjs/shopify/types/product.d.ts.map +1 -0
- package/dist/cjs/shopify/types/product.js +2 -0
- package/dist/cjs/shopify/types/product.js.map +7 -0
- package/dist/cjs/shopify/types/search.d.ts +55 -0
- package/dist/cjs/shopify/types/search.d.ts.map +1 -0
- package/dist/cjs/shopify/types/search.js +2 -0
- package/dist/cjs/shopify/types/search.js.map +7 -0
- package/dist/cjs/shopify/types/site.d.ts +34 -0
- package/dist/cjs/shopify/types/site.d.ts.map +1 -0
- package/dist/cjs/shopify/types/site.js +2 -0
- package/dist/cjs/shopify/types/site.js.map +7 -0
- package/dist/cjs/shopify/types/type-helper.d.ts +6 -0
- package/dist/cjs/shopify/types/type-helper.d.ts.map +1 -0
- package/dist/cjs/shopify/types/type-helper.js +2 -0
- package/dist/cjs/shopify/types/type-helper.js.map +7 -0
- package/dist/cjs/shopify/utils/colors.d.ts +4 -0
- package/dist/cjs/shopify/utils/colors.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/colors.js +2 -0
- package/dist/cjs/shopify/utils/colors.js.map +7 -0
- package/dist/cjs/shopify/utils/const.d.ts +77 -0
- package/dist/cjs/shopify/utils/const.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/const.js +2 -0
- package/dist/cjs/shopify/utils/const.js.map +7 -0
- package/dist/cjs/shopify/utils/cookie.d.ts +16 -0
- package/dist/cjs/shopify/utils/cookie.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/cookie.js +2 -0
- package/dist/cjs/shopify/utils/cookie.js.map +7 -0
- package/dist/cjs/shopify/utils/errors.d.ts +39 -0
- package/dist/cjs/shopify/utils/errors.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/errors.js +3 -0
- package/dist/cjs/shopify/utils/errors.js.map +7 -0
- package/dist/cjs/shopify/utils/fetch-graphql-api.d.ts +20 -0
- package/dist/cjs/shopify/utils/fetch-graphql-api.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/fetch-graphql-api.js +3 -0
- package/dist/cjs/shopify/utils/fetch-graphql-api.js.map +7 -0
- package/dist/cjs/shopify/utils/handle-fetch-response.d.ts +6 -0
- package/dist/cjs/shopify/utils/handle-fetch-response.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/handle-fetch-response.js +2 -0
- package/dist/cjs/shopify/utils/handle-fetch-response.js.map +7 -0
- package/dist/cjs/shopify/utils/helper.d.ts +29 -0
- package/dist/cjs/shopify/utils/helper.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/helper.js +2 -0
- package/dist/cjs/shopify/utils/helper.js.map +7 -0
- package/dist/cjs/shopify/utils/normalize/cart.d.ts +8 -0
- package/dist/cjs/shopify/utils/normalize/cart.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/normalize/cart.js +2 -0
- package/dist/cjs/shopify/utils/normalize/cart.js.map +7 -0
- package/dist/cjs/shopify/utils/normalize/customer.d.ts +4 -0
- package/dist/cjs/shopify/utils/normalize/customer.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/normalize/customer.js +2 -0
- package/dist/cjs/shopify/utils/normalize/customer.js.map +7 -0
- package/dist/cjs/shopify/utils/normalize/index.d.ts +3 -0
- package/dist/cjs/shopify/utils/normalize/index.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/normalize/index.js +2 -0
- package/dist/cjs/shopify/utils/normalize/index.js.map +7 -0
- package/dist/cjs/shopify/utils/normalize/metafield.d.ts +6 -0
- package/dist/cjs/shopify/utils/normalize/metafield.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/normalize/metafield.js +2 -0
- package/dist/cjs/shopify/utils/normalize/metafield.js.map +7 -0
- package/dist/cjs/shopify/utils/normalize/product.d.ts +17 -0
- package/dist/cjs/shopify/utils/normalize/product.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/normalize/product.js +2 -0
- package/dist/cjs/shopify/utils/normalize/product.js.map +7 -0
- package/dist/cjs/shopify/utils/store.d.ts +3 -0
- package/dist/cjs/shopify/utils/store.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/store.js +2 -0
- package/dist/cjs/shopify/utils/store.js.map +7 -0
- package/dist/cjs/shopify/utils/type-helper.d.ts +6 -0
- package/dist/cjs/shopify/utils/type-helper.d.ts.map +1 -0
- package/dist/cjs/shopify/utils/type-helper.js +2 -0
- package/dist/cjs/shopify/utils/type-helper.js.map +7 -0
- package/dist/cjs/utils/classnames.d.ts +3 -0
- package/dist/cjs/utils/classnames.d.ts.map +1 -0
- package/dist/cjs/utils/classnames.js +2 -0
- package/dist/cjs/utils/classnames.js.map +7 -0
- package/dist/cjs/utils/fetcher/fetchResponse.d.ts +14 -0
- package/dist/cjs/utils/fetcher/fetchResponse.d.ts.map +1 -0
- package/dist/cjs/utils/fetcher/fetchResponse.js +2 -0
- package/dist/cjs/utils/fetcher/fetchResponse.js.map +7 -0
- package/dist/cjs/utils/fetcher/fetcher.d.ts +2 -0
- package/dist/cjs/utils/fetcher/fetcher.d.ts.map +1 -0
- package/dist/cjs/utils/fetcher/fetcher.js +2 -0
- package/dist/cjs/utils/fetcher/fetcher.js.map +7 -0
- package/dist/cjs/utils/fetcher/index.d.ts +3 -0
- package/dist/cjs/utils/fetcher/index.d.ts.map +1 -0
- package/dist/cjs/utils/fetcher/index.js +2 -0
- package/dist/cjs/utils/fetcher/index.js.map +7 -0
- package/dist/cjs/utils/index.d.ts +5 -0
- package/dist/cjs/utils/index.d.ts.map +1 -0
- package/dist/cjs/utils/index.js +2 -0
- package/dist/cjs/utils/index.js.map +7 -0
- package/dist/cjs/utils/track.d.ts +16 -0
- package/dist/cjs/utils/track.d.ts.map +1 -0
- package/dist/cjs/utils/track.js +2 -0
- package/dist/cjs/utils/track.js.map +7 -0
- package/dist/cjs/utils/useCountDown.d.ts +6 -0
- package/dist/cjs/utils/useCountDown.d.ts.map +1 -0
- package/dist/cjs/utils/useCountDown.js +2 -0
- package/dist/cjs/utils/useCountDown.js.map +7 -0
- package/dist/context/HeadlessProvider.d.ts +10 -0
- package/dist/context/HeadlessProvider.d.ts.map +1 -0
- package/dist/context/config.d.ts +11 -0
- package/dist/context/config.d.ts.map +1 -0
- package/dist/context/index.d.ts +3 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/esm/cart/const.d.ts +6 -0
- package/dist/esm/cart/const.d.ts.map +1 -0
- package/dist/esm/cart/const.js +2 -0
- package/dist/esm/cart/const.js.map +7 -0
- package/dist/esm/cart/hooks/basic/useBuyNow.d.ts +21 -0
- package/dist/esm/cart/hooks/basic/useBuyNow.d.ts.map +1 -0
- package/dist/esm/cart/hooks/basic/useBuyNow.js +2 -0
- package/dist/esm/cart/hooks/basic/useBuyNow.js.map +7 -0
- package/dist/esm/cart/index.d.ts +6 -0
- package/dist/esm/cart/index.d.ts.map +1 -0
- package/dist/esm/cart/index.js +2 -0
- package/dist/esm/cart/index.js.map +7 -0
- package/dist/esm/cart/track/fbq.d.ts +21 -0
- package/dist/esm/cart/track/fbq.d.ts.map +1 -0
- package/dist/esm/cart/track/fbq.js +2 -0
- package/dist/esm/cart/track/fbq.js.map +7 -0
- package/dist/esm/cart/types/index.d.ts +23 -0
- package/dist/esm/cart/types/index.d.ts.map +1 -0
- package/dist/esm/cart/types/index.js +1 -0
- package/dist/esm/cart/types/index.js.map +7 -0
- package/dist/esm/cart/utils/index.d.ts +3 -0
- package/dist/esm/cart/utils/index.d.ts.map +1 -0
- package/dist/esm/cart/utils/index.js +2 -0
- package/dist/esm/cart/utils/index.js.map +7 -0
- package/dist/esm/context/HeadlessProvider.d.ts +10 -0
- package/dist/esm/context/HeadlessProvider.d.ts.map +1 -0
- package/dist/esm/context/HeadlessProvider.js +2 -0
- package/dist/esm/context/HeadlessProvider.js.map +7 -0
- package/dist/esm/context/config.d.ts +11 -0
- package/dist/esm/context/config.d.ts.map +1 -0
- package/dist/esm/context/config.js +1 -0
- package/dist/esm/context/config.js.map +7 -0
- package/dist/esm/context/index.d.ts +3 -0
- package/dist/esm/context/index.d.ts.map +1 -0
- package/dist/esm/context/index.js +2 -0
- package/dist/esm/context/index.js.map +7 -0
- package/dist/esm/index.d.ts +6 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/registration/context/index.d.ts +24 -0
- package/dist/esm/registration/context/index.d.ts.map +1 -0
- package/dist/esm/registration/context/index.js +2 -0
- package/dist/esm/registration/context/index.js.map +7 -0
- package/dist/esm/registration/hooks/index.d.ts +3 -0
- package/dist/esm/registration/hooks/index.d.ts.map +1 -0
- package/dist/esm/registration/hooks/index.js +2 -0
- package/dist/esm/registration/hooks/index.js.map +7 -0
- package/dist/esm/registration/hooks/useEmailValidation.d.ts +17 -0
- package/dist/esm/registration/hooks/useEmailValidation.d.ts.map +1 -0
- package/dist/esm/registration/hooks/useEmailValidation.js +2 -0
- package/dist/esm/registration/hooks/useEmailValidation.js.map +7 -0
- package/dist/esm/registration/hooks/useSendEmailValidation.d.ts +9 -0
- package/dist/esm/registration/hooks/useSendEmailValidation.d.ts.map +1 -0
- package/dist/esm/registration/hooks/useSendEmailValidation.js +2 -0
- package/dist/esm/registration/hooks/useSendEmailValidation.js.map +7 -0
- package/dist/esm/registration/index.d.ts +3 -0
- package/dist/esm/registration/index.d.ts.map +1 -0
- package/dist/esm/registration/index.js +2 -0
- package/dist/esm/registration/index.js.map +7 -0
- package/dist/esm/shopify/fetchers/add-cart-lines.d.ts +12 -0
- package/dist/esm/shopify/fetchers/add-cart-lines.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/add-cart-lines.js +2 -0
- package/dist/esm/shopify/fetchers/add-cart-lines.js.map +7 -0
- package/dist/esm/shopify/fetchers/create-cart.d.ts +13 -0
- package/dist/esm/shopify/fetchers/create-cart.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/create-cart.js +2 -0
- package/dist/esm/shopify/fetchers/create-cart.js.map +7 -0
- package/dist/esm/shopify/fetchers/get-cart.d.ts +16 -0
- package/dist/esm/shopify/fetchers/get-cart.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/get-cart.js +2 -0
- package/dist/esm/shopify/fetchers/get-cart.js.map +7 -0
- package/dist/esm/shopify/fetchers/get-products-by-handles.d.ts +15 -0
- package/dist/esm/shopify/fetchers/get-products-by-handles.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/get-products-by-handles.js +2 -0
- package/dist/esm/shopify/fetchers/get-products-by-handles.js.map +7 -0
- package/dist/esm/shopify/fetchers/index.d.ts +10 -0
- package/dist/esm/shopify/fetchers/index.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/index.js +2 -0
- package/dist/esm/shopify/fetchers/index.js.map +7 -0
- package/dist/esm/shopify/fetchers/remove-cart-lines.d.ts +12 -0
- package/dist/esm/shopify/fetchers/remove-cart-lines.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/remove-cart-lines.js +2 -0
- package/dist/esm/shopify/fetchers/remove-cart-lines.js.map +7 -0
- package/dist/esm/shopify/fetchers/update-cart-attributes.d.ts +12 -0
- package/dist/esm/shopify/fetchers/update-cart-attributes.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/update-cart-attributes.js +2 -0
- package/dist/esm/shopify/fetchers/update-cart-attributes.js.map +7 -0
- package/dist/esm/shopify/fetchers/update-cart-buyer-identity.d.ts +12 -0
- package/dist/esm/shopify/fetchers/update-cart-buyer-identity.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/update-cart-buyer-identity.js +2 -0
- package/dist/esm/shopify/fetchers/update-cart-buyer-identity.js.map +7 -0
- package/dist/esm/shopify/fetchers/update-cart-codes.d.ts +12 -0
- package/dist/esm/shopify/fetchers/update-cart-codes.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/update-cart-codes.js +2 -0
- package/dist/esm/shopify/fetchers/update-cart-codes.js.map +7 -0
- package/dist/esm/shopify/fetchers/update-cart-lines.d.ts +12 -0
- package/dist/esm/shopify/fetchers/update-cart-lines.d.ts.map +1 -0
- package/dist/esm/shopify/fetchers/update-cart-lines.js +2 -0
- package/dist/esm/shopify/fetchers/update-cart-lines.js.map +7 -0
- package/dist/esm/shopify/fragments/article.d.ts +3 -0
- package/dist/esm/shopify/fragments/article.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/article.js +50 -0
- package/dist/esm/shopify/fragments/article.js.map +7 -0
- package/dist/esm/shopify/fragments/blog.d.ts +2 -0
- package/dist/esm/shopify/fragments/blog.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/blog.js +11 -0
- package/dist/esm/shopify/fragments/blog.js.map +7 -0
- package/dist/esm/shopify/fragments/cart.d.ts +2 -0
- package/dist/esm/shopify/fragments/cart.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/cart.js +189 -0
- package/dist/esm/shopify/fragments/cart.js.map +7 -0
- package/dist/esm/shopify/fragments/collection.d.ts +2 -0
- package/dist/esm/shopify/fragments/collection.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/collection.js +16 -0
- package/dist/esm/shopify/fragments/collection.js.map +7 -0
- package/dist/esm/shopify/fragments/image.d.ts +2 -0
- package/dist/esm/shopify/fragments/image.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/image.js +9 -0
- package/dist/esm/shopify/fragments/image.js.map +7 -0
- package/dist/esm/shopify/fragments/index.d.ts +12 -0
- package/dist/esm/shopify/fragments/index.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/index.js +2 -0
- package/dist/esm/shopify/fragments/index.js.map +7 -0
- package/dist/esm/shopify/fragments/metafields.d.ts +3 -0
- package/dist/esm/shopify/fragments/metafields.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/metafields.js +16 -0
- package/dist/esm/shopify/fragments/metafields.js.map +7 -0
- package/dist/esm/shopify/fragments/page-info.d.ts +2 -0
- package/dist/esm/shopify/fragments/page-info.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/page-info.js +9 -0
- package/dist/esm/shopify/fragments/page-info.js.map +7 -0
- package/dist/esm/shopify/fragments/page.d.ts +2 -0
- package/dist/esm/shopify/fragments/page.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/page.js +13 -0
- package/dist/esm/shopify/fragments/page.js.map +7 -0
- package/dist/esm/shopify/fragments/product.d.ts +2 -0
- package/dist/esm/shopify/fragments/product.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/product.js +72 -0
- package/dist/esm/shopify/fragments/product.js.map +7 -0
- package/dist/esm/shopify/fragments/seo.d.ts +2 -0
- package/dist/esm/shopify/fragments/seo.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/seo.js +7 -0
- package/dist/esm/shopify/fragments/seo.js.map +7 -0
- package/dist/esm/shopify/fragments/variant.d.ts +2 -0
- package/dist/esm/shopify/fragments/variant.d.ts.map +1 -0
- package/dist/esm/shopify/fragments/variant.js +30 -0
- package/dist/esm/shopify/fragments/variant.js.map +7 -0
- package/dist/esm/shopify/gql/fragment-masking.d.ts +16 -0
- package/dist/esm/shopify/gql/fragment-masking.d.ts.map +1 -0
- package/dist/esm/shopify/gql/fragment-masking.js +2 -0
- package/dist/esm/shopify/gql/fragment-masking.js.map +7 -0
- package/dist/esm/shopify/gql/gql.d.ts +88 -0
- package/dist/esm/shopify/gql/gql.d.ts.map +1 -0
- package/dist/esm/shopify/gql/gql.js +2 -0
- package/dist/esm/shopify/gql/gql.js.map +7 -0
- package/dist/esm/shopify/gql/graphql.d.ts +7670 -0
- package/dist/esm/shopify/gql/graphql.d.ts.map +1 -0
- package/dist/esm/shopify/gql/graphql.js +2 -0
- package/dist/esm/shopify/gql/graphql.js.map +7 -0
- package/dist/esm/shopify/gql/index.d.ts +4 -0
- package/dist/esm/shopify/gql/index.d.ts.map +1 -0
- package/dist/esm/shopify/gql/index.js +2 -0
- package/dist/esm/shopify/gql/index.js.map +7 -0
- package/dist/esm/shopify/hooks/index.d.ts +2 -0
- package/dist/esm/shopify/hooks/index.d.ts.map +1 -0
- package/dist/esm/shopify/hooks/index.js +2 -0
- package/dist/esm/shopify/hooks/index.js.map +7 -0
- package/dist/esm/shopify/hooks/useProductsByHandles.d.ts +5 -0
- package/dist/esm/shopify/hooks/useProductsByHandles.d.ts.map +1 -0
- package/dist/esm/shopify/hooks/useProductsByHandles.js +2 -0
- package/dist/esm/shopify/hooks/useProductsByHandles.js.map +7 -0
- package/dist/esm/shopify/index.d.ts +6 -0
- package/dist/esm/shopify/index.d.ts.map +1 -0
- package/dist/esm/shopify/index.js +2 -0
- package/dist/esm/shopify/index.js.map +7 -0
- package/dist/esm/shopify/mutations/add-cart-lines.d.ts +2 -0
- package/dist/esm/shopify/mutations/add-cart-lines.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/add-cart-lines.js +15 -0
- package/dist/esm/shopify/mutations/add-cart-lines.js.map +7 -0
- package/dist/esm/shopify/mutations/create-cart.d.ts +2 -0
- package/dist/esm/shopify/mutations/create-cart.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/create-cart.js +21 -0
- package/dist/esm/shopify/mutations/create-cart.js.map +7 -0
- package/dist/esm/shopify/mutations/remove-cart-items.d.ts +2 -0
- package/dist/esm/shopify/mutations/remove-cart-items.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/remove-cart-items.js +15 -0
- package/dist/esm/shopify/mutations/remove-cart-items.js.map +7 -0
- package/dist/esm/shopify/mutations/update-cart-attributes.d.ts +2 -0
- package/dist/esm/shopify/mutations/update-cart-attributes.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/update-cart-attributes.js +15 -0
- package/dist/esm/shopify/mutations/update-cart-attributes.js.map +7 -0
- package/dist/esm/shopify/mutations/update-cart-buyer-identity.d.ts +2 -0
- package/dist/esm/shopify/mutations/update-cart-buyer-identity.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/update-cart-buyer-identity.js +15 -0
- package/dist/esm/shopify/mutations/update-cart-buyer-identity.js.map +7 -0
- package/dist/esm/shopify/mutations/update-cart-discount-code.d.ts +2 -0
- package/dist/esm/shopify/mutations/update-cart-discount-code.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/update-cart-discount-code.js +15 -0
- package/dist/esm/shopify/mutations/update-cart-discount-code.js.map +7 -0
- package/dist/esm/shopify/mutations/update-cart-items.d.ts +2 -0
- package/dist/esm/shopify/mutations/update-cart-items.d.ts.map +1 -0
- package/dist/esm/shopify/mutations/update-cart-items.js +15 -0
- package/dist/esm/shopify/mutations/update-cart-items.js.map +7 -0
- package/dist/esm/shopify/queries/get-cart.d.ts +2 -0
- package/dist/esm/shopify/queries/get-cart.d.ts.map +1 -0
- package/dist/esm/shopify/queries/get-cart.js +13 -0
- package/dist/esm/shopify/queries/get-cart.js.map +7 -0
- package/dist/esm/shopify/queries/get-product-by-handles.d.ts +2 -0
- package/dist/esm/shopify/queries/get-product-by-handles.d.ts.map +1 -0
- package/dist/esm/shopify/queries/get-product-by-handles.js +29 -0
- package/dist/esm/shopify/queries/get-product-by-handles.js.map +7 -0
- package/dist/esm/shopify/queries/index.d.ts +2 -0
- package/dist/esm/shopify/queries/index.d.ts.map +1 -0
- package/dist/esm/shopify/queries/index.js +2 -0
- package/dist/esm/shopify/queries/index.js.map +7 -0
- package/dist/esm/shopify/types/article.d.ts +49 -0
- package/dist/esm/shopify/types/article.d.ts.map +1 -0
- package/dist/esm/shopify/types/article.js +1 -0
- package/dist/esm/shopify/types/article.js.map +7 -0
- package/dist/esm/shopify/types/cart.d.ts +175 -0
- package/dist/esm/shopify/types/cart.d.ts.map +1 -0
- package/dist/esm/shopify/types/cart.js +1 -0
- package/dist/esm/shopify/types/cart.js.map +7 -0
- package/dist/esm/shopify/types/checkout.d.ts +43 -0
- package/dist/esm/shopify/types/checkout.d.ts.map +1 -0
- package/dist/esm/shopify/types/checkout.js +1 -0
- package/dist/esm/shopify/types/checkout.js.map +7 -0
- package/dist/esm/shopify/types/collection.d.ts +123 -0
- package/dist/esm/shopify/types/collection.d.ts.map +1 -0
- package/dist/esm/shopify/types/collection.js +1 -0
- package/dist/esm/shopify/types/collection.js.map +7 -0
- package/dist/esm/shopify/types/common.d.ts +43 -0
- package/dist/esm/shopify/types/common.d.ts.map +1 -0
- package/dist/esm/shopify/types/common.js +1 -0
- package/dist/esm/shopify/types/common.js.map +7 -0
- package/dist/esm/shopify/types/config.d.ts +13 -0
- package/dist/esm/shopify/types/config.d.ts.map +1 -0
- package/dist/esm/shopify/types/config.js +1 -0
- package/dist/esm/shopify/types/config.js.map +7 -0
- package/dist/esm/shopify/types/customer.d.ts +31 -0
- package/dist/esm/shopify/types/customer.d.ts.map +1 -0
- package/dist/esm/shopify/types/customer.js +1 -0
- package/dist/esm/shopify/types/customer.js.map +7 -0
- package/dist/esm/shopify/types/fetcher.d.ts +44 -0
- package/dist/esm/shopify/types/fetcher.d.ts.map +1 -0
- package/dist/esm/shopify/types/fetcher.js +2 -0
- package/dist/esm/shopify/types/fetcher.js.map +7 -0
- package/dist/esm/shopify/types/index.d.ts +12 -0
- package/dist/esm/shopify/types/index.d.ts.map +1 -0
- package/dist/esm/shopify/types/index.js +2 -0
- package/dist/esm/shopify/types/index.js.map +7 -0
- package/dist/esm/shopify/types/page.d.ts +34 -0
- package/dist/esm/shopify/types/page.d.ts.map +1 -0
- package/dist/esm/shopify/types/page.js +1 -0
- package/dist/esm/shopify/types/page.js.map +7 -0
- package/dist/esm/shopify/types/product.d.ts +175 -0
- package/dist/esm/shopify/types/product.d.ts.map +1 -0
- package/dist/esm/shopify/types/product.js +1 -0
- package/dist/esm/shopify/types/product.js.map +7 -0
- package/dist/esm/shopify/types/search.d.ts +55 -0
- package/dist/esm/shopify/types/search.d.ts.map +1 -0
- package/dist/esm/shopify/types/search.js +1 -0
- package/dist/esm/shopify/types/search.js.map +7 -0
- package/dist/esm/shopify/types/site.d.ts +34 -0
- package/dist/esm/shopify/types/site.d.ts.map +1 -0
- package/dist/esm/shopify/types/site.js +1 -0
- package/dist/esm/shopify/types/site.js.map +7 -0
- package/dist/esm/shopify/types/type-helper.d.ts +6 -0
- package/dist/esm/shopify/types/type-helper.d.ts.map +1 -0
- package/dist/esm/shopify/types/type-helper.js +1 -0
- package/dist/esm/shopify/types/type-helper.js.map +7 -0
- package/dist/esm/shopify/utils/colors.d.ts +4 -0
- package/dist/esm/shopify/utils/colors.d.ts.map +1 -0
- package/dist/esm/shopify/utils/colors.js +2 -0
- package/dist/esm/shopify/utils/colors.js.map +7 -0
- package/dist/esm/shopify/utils/const.d.ts +77 -0
- package/dist/esm/shopify/utils/const.d.ts.map +1 -0
- package/dist/esm/shopify/utils/const.js +2 -0
- package/dist/esm/shopify/utils/const.js.map +7 -0
- package/dist/esm/shopify/utils/cookie.d.ts +16 -0
- package/dist/esm/shopify/utils/cookie.d.ts.map +1 -0
- package/dist/esm/shopify/utils/cookie.js +2 -0
- package/dist/esm/shopify/utils/cookie.js.map +7 -0
- package/dist/esm/shopify/utils/errors.d.ts +39 -0
- package/dist/esm/shopify/utils/errors.d.ts.map +1 -0
- package/dist/esm/shopify/utils/errors.js +3 -0
- package/dist/esm/shopify/utils/errors.js.map +7 -0
- package/dist/esm/shopify/utils/fetch-graphql-api.d.ts +20 -0
- package/dist/esm/shopify/utils/fetch-graphql-api.d.ts.map +1 -0
- package/dist/esm/shopify/utils/fetch-graphql-api.js +3 -0
- package/dist/esm/shopify/utils/fetch-graphql-api.js.map +7 -0
- package/dist/esm/shopify/utils/handle-fetch-response.d.ts +6 -0
- package/dist/esm/shopify/utils/handle-fetch-response.d.ts.map +1 -0
- package/dist/esm/shopify/utils/handle-fetch-response.js +2 -0
- package/dist/esm/shopify/utils/handle-fetch-response.js.map +7 -0
- package/dist/esm/shopify/utils/helper.d.ts +29 -0
- package/dist/esm/shopify/utils/helper.d.ts.map +1 -0
- package/dist/esm/shopify/utils/helper.js +2 -0
- package/dist/esm/shopify/utils/helper.js.map +7 -0
- package/dist/esm/shopify/utils/normalize/cart.d.ts +8 -0
- package/dist/esm/shopify/utils/normalize/cart.d.ts.map +1 -0
- package/dist/esm/shopify/utils/normalize/cart.js +2 -0
- package/dist/esm/shopify/utils/normalize/cart.js.map +7 -0
- package/dist/esm/shopify/utils/normalize/customer.d.ts +4 -0
- package/dist/esm/shopify/utils/normalize/customer.d.ts.map +1 -0
- package/dist/esm/shopify/utils/normalize/customer.js +2 -0
- package/dist/esm/shopify/utils/normalize/customer.js.map +7 -0
- package/dist/esm/shopify/utils/normalize/index.d.ts +3 -0
- package/dist/esm/shopify/utils/normalize/index.d.ts.map +1 -0
- package/dist/esm/shopify/utils/normalize/index.js +2 -0
- package/dist/esm/shopify/utils/normalize/index.js.map +7 -0
- package/dist/esm/shopify/utils/normalize/metafield.d.ts +6 -0
- package/dist/esm/shopify/utils/normalize/metafield.d.ts.map +1 -0
- package/dist/esm/shopify/utils/normalize/metafield.js +2 -0
- package/dist/esm/shopify/utils/normalize/metafield.js.map +7 -0
- package/dist/esm/shopify/utils/normalize/product.d.ts +17 -0
- package/dist/esm/shopify/utils/normalize/product.d.ts.map +1 -0
- package/dist/esm/shopify/utils/normalize/product.js +2 -0
- package/dist/esm/shopify/utils/normalize/product.js.map +7 -0
- package/dist/esm/shopify/utils/store.d.ts +3 -0
- package/dist/esm/shopify/utils/store.d.ts.map +1 -0
- package/dist/esm/shopify/utils/store.js +2 -0
- package/dist/esm/shopify/utils/store.js.map +7 -0
- package/dist/esm/shopify/utils/type-helper.d.ts +6 -0
- package/dist/esm/shopify/utils/type-helper.d.ts.map +1 -0
- package/dist/esm/shopify/utils/type-helper.js +1 -0
- package/dist/esm/shopify/utils/type-helper.js.map +7 -0
- package/dist/esm/utils/classnames.d.ts +3 -0
- package/dist/esm/utils/classnames.d.ts.map +1 -0
- package/dist/esm/utils/classnames.js +2 -0
- package/dist/esm/utils/classnames.js.map +7 -0
- package/dist/esm/utils/fetcher/fetchResponse.d.ts +14 -0
- package/dist/esm/utils/fetcher/fetchResponse.d.ts.map +1 -0
- package/dist/esm/utils/fetcher/fetchResponse.js +2 -0
- package/dist/esm/utils/fetcher/fetchResponse.js.map +7 -0
- package/dist/esm/utils/fetcher/fetcher.d.ts +2 -0
- package/dist/esm/utils/fetcher/fetcher.d.ts.map +1 -0
- package/dist/esm/utils/fetcher/fetcher.js +2 -0
- package/dist/esm/utils/fetcher/fetcher.js.map +7 -0
- package/dist/esm/utils/fetcher/index.d.ts +3 -0
- package/dist/esm/utils/fetcher/index.d.ts.map +1 -0
- package/dist/esm/utils/fetcher/index.js +2 -0
- package/dist/esm/utils/fetcher/index.js.map +7 -0
- package/dist/esm/utils/index.d.ts +5 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +2 -0
- package/dist/esm/utils/index.js.map +7 -0
- package/dist/esm/utils/track.d.ts +16 -0
- package/dist/esm/utils/track.d.ts.map +1 -0
- package/dist/esm/utils/track.js +2 -0
- package/dist/esm/utils/track.js.map +7 -0
- package/dist/esm/utils/useCountDown.d.ts +6 -0
- package/dist/esm/utils/useCountDown.d.ts.map +1 -0
- package/dist/esm/utils/useCountDown.js +2 -0
- package/dist/esm/utils/useCountDown.js.map +7 -0
- package/dist/index.d.ts +4 -7
- package/dist/index.d.ts.map +1 -0
- package/dist/shopify/fetchers/add-cart-lines.d.ts +12 -0
- package/dist/shopify/fetchers/add-cart-lines.d.ts.map +1 -0
- package/dist/shopify/fetchers/create-cart.d.ts +13 -0
- package/dist/shopify/fetchers/create-cart.d.ts.map +1 -0
- package/dist/shopify/fetchers/get-cart.d.ts +16 -0
- package/dist/shopify/fetchers/get-cart.d.ts.map +1 -0
- package/dist/shopify/fetchers/get-products-by-handles.d.ts +15 -0
- package/dist/shopify/fetchers/get-products-by-handles.d.ts.map +1 -0
- package/dist/shopify/fetchers/index.d.ts +10 -0
- package/dist/shopify/fetchers/index.d.ts.map +1 -0
- package/dist/shopify/fetchers/remove-cart-lines.d.ts +12 -0
- package/dist/shopify/fetchers/remove-cart-lines.d.ts.map +1 -0
- package/dist/shopify/fetchers/update-cart-attributes.d.ts +12 -0
- package/dist/shopify/fetchers/update-cart-attributes.d.ts.map +1 -0
- package/dist/shopify/fetchers/update-cart-buyer-identity.d.ts +12 -0
- package/dist/shopify/fetchers/update-cart-buyer-identity.d.ts.map +1 -0
- package/dist/shopify/fetchers/update-cart-codes.d.ts +12 -0
- package/dist/shopify/fetchers/update-cart-codes.d.ts.map +1 -0
- package/dist/shopify/fetchers/update-cart-lines.d.ts +12 -0
- package/dist/shopify/fetchers/update-cart-lines.d.ts.map +1 -0
- package/dist/shopify/fragments/article.d.ts +3 -0
- package/dist/shopify/fragments/article.d.ts.map +1 -0
- package/dist/shopify/fragments/blog.d.ts +2 -0
- package/dist/shopify/fragments/blog.d.ts.map +1 -0
- package/dist/shopify/fragments/cart.d.ts +2 -0
- package/dist/shopify/fragments/cart.d.ts.map +1 -0
- package/dist/shopify/fragments/collection.d.ts +2 -0
- package/dist/shopify/fragments/collection.d.ts.map +1 -0
- package/dist/shopify/fragments/image.d.ts +2 -0
- package/dist/shopify/fragments/image.d.ts.map +1 -0
- package/dist/shopify/fragments/index.d.ts +12 -0
- package/dist/shopify/fragments/index.d.ts.map +1 -0
- package/dist/shopify/fragments/metafields.d.ts +3 -0
- package/dist/shopify/fragments/metafields.d.ts.map +1 -0
- package/dist/shopify/fragments/page-info.d.ts +2 -0
- package/dist/shopify/fragments/page-info.d.ts.map +1 -0
- package/dist/shopify/fragments/page.d.ts +2 -0
- package/dist/shopify/fragments/page.d.ts.map +1 -0
- package/dist/shopify/fragments/product.d.ts +2 -0
- package/dist/shopify/fragments/product.d.ts.map +1 -0
- package/dist/shopify/fragments/seo.d.ts +2 -0
- package/dist/shopify/fragments/seo.d.ts.map +1 -0
- package/dist/shopify/fragments/variant.d.ts +2 -0
- package/dist/shopify/fragments/variant.d.ts.map +1 -0
- package/dist/shopify/gql/fragment-masking.d.ts +16 -0
- package/dist/shopify/gql/fragment-masking.d.ts.map +1 -0
- package/dist/shopify/gql/gql.d.ts +88 -0
- package/dist/shopify/gql/gql.d.ts.map +1 -0
- package/dist/shopify/gql/graphql.d.ts +7670 -0
- package/dist/shopify/gql/graphql.d.ts.map +1 -0
- package/dist/shopify/gql/index.d.ts +4 -0
- package/dist/shopify/gql/index.d.ts.map +1 -0
- package/dist/shopify/hooks/index.d.ts +2 -0
- package/dist/shopify/hooks/index.d.ts.map +1 -0
- package/dist/shopify/hooks/useProductsByHandles.d.ts +5 -0
- package/dist/shopify/hooks/useProductsByHandles.d.ts.map +1 -0
- package/dist/shopify/index.d.ts +6 -0
- package/dist/shopify/index.d.ts.map +1 -0
- package/dist/shopify/mutations/add-cart-lines.d.ts +2 -0
- package/dist/shopify/mutations/add-cart-lines.d.ts.map +1 -0
- package/dist/shopify/mutations/create-cart.d.ts +2 -0
- package/dist/shopify/mutations/create-cart.d.ts.map +1 -0
- package/dist/shopify/mutations/remove-cart-items.d.ts +2 -0
- package/dist/shopify/mutations/remove-cart-items.d.ts.map +1 -0
- package/dist/shopify/mutations/update-cart-attributes.d.ts +2 -0
- package/dist/shopify/mutations/update-cart-attributes.d.ts.map +1 -0
- package/dist/shopify/mutations/update-cart-buyer-identity.d.ts +2 -0
- package/dist/shopify/mutations/update-cart-buyer-identity.d.ts.map +1 -0
- package/dist/shopify/mutations/update-cart-discount-code.d.ts +2 -0
- package/dist/shopify/mutations/update-cart-discount-code.d.ts.map +1 -0
- package/dist/shopify/mutations/update-cart-items.d.ts +2 -0
- package/dist/shopify/mutations/update-cart-items.d.ts.map +1 -0
- package/dist/shopify/queries/get-cart.d.ts +2 -0
- package/dist/shopify/queries/get-cart.d.ts.map +1 -0
- package/dist/shopify/queries/get-product-by-handles.d.ts +2 -0
- package/dist/shopify/queries/get-product-by-handles.d.ts.map +1 -0
- package/dist/shopify/queries/index.d.ts +2 -0
- package/dist/shopify/queries/index.d.ts.map +1 -0
- package/dist/shopify/types/article.d.ts +49 -0
- package/dist/shopify/types/article.d.ts.map +1 -0
- package/dist/shopify/types/cart.d.ts +175 -0
- package/dist/shopify/types/cart.d.ts.map +1 -0
- package/dist/shopify/types/checkout.d.ts +43 -0
- package/dist/shopify/types/checkout.d.ts.map +1 -0
- package/dist/shopify/types/collection.d.ts +123 -0
- package/dist/shopify/types/collection.d.ts.map +1 -0
- package/dist/shopify/types/common.d.ts +43 -0
- package/dist/shopify/types/common.d.ts.map +1 -0
- package/dist/shopify/types/config.d.ts +13 -0
- package/dist/shopify/types/config.d.ts.map +1 -0
- package/dist/shopify/types/customer.d.ts +31 -0
- package/dist/shopify/types/customer.d.ts.map +1 -0
- package/dist/shopify/types/fetcher.d.ts +44 -0
- package/dist/shopify/types/fetcher.d.ts.map +1 -0
- package/dist/shopify/types/index.d.ts +12 -0
- package/dist/shopify/types/index.d.ts.map +1 -0
- package/dist/shopify/types/page.d.ts +34 -0
- package/dist/shopify/types/page.d.ts.map +1 -0
- package/dist/shopify/types/product.d.ts +175 -0
- package/dist/shopify/types/product.d.ts.map +1 -0
- package/dist/shopify/types/search.d.ts +55 -0
- package/dist/shopify/types/search.d.ts.map +1 -0
- package/dist/shopify/types/site.d.ts +34 -0
- package/dist/shopify/types/site.d.ts.map +1 -0
- package/dist/shopify/types/type-helper.d.ts +6 -0
- package/dist/shopify/types/type-helper.d.ts.map +1 -0
- package/dist/shopify/utils/colors.d.ts +4 -0
- package/dist/shopify/utils/colors.d.ts.map +1 -0
- package/dist/shopify/utils/const.d.ts +77 -0
- package/dist/shopify/utils/const.d.ts.map +1 -0
- package/dist/shopify/utils/cookie.d.ts +16 -0
- package/dist/shopify/utils/cookie.d.ts.map +1 -0
- package/dist/shopify/utils/errors.d.ts +39 -0
- package/dist/shopify/utils/errors.d.ts.map +1 -0
- package/dist/shopify/utils/fetch-graphql-api.d.ts +20 -0
- package/dist/shopify/utils/fetch-graphql-api.d.ts.map +1 -0
- package/dist/shopify/utils/handle-fetch-response.d.ts +6 -0
- package/dist/shopify/utils/handle-fetch-response.d.ts.map +1 -0
- package/dist/shopify/utils/helper.d.ts +29 -0
- package/dist/shopify/utils/helper.d.ts.map +1 -0
- package/dist/shopify/utils/normalize/cart.d.ts +8 -0
- package/dist/shopify/utils/normalize/cart.d.ts.map +1 -0
- package/dist/shopify/utils/normalize/customer.d.ts +4 -0
- package/dist/shopify/utils/normalize/customer.d.ts.map +1 -0
- package/dist/shopify/utils/normalize/index.d.ts +3 -0
- package/dist/shopify/utils/normalize/index.d.ts.map +1 -0
- package/dist/shopify/utils/normalize/metafield.d.ts +6 -0
- package/dist/shopify/utils/normalize/metafield.d.ts.map +1 -0
- package/dist/shopify/utils/normalize/product.d.ts +17 -0
- package/dist/shopify/utils/normalize/product.d.ts.map +1 -0
- package/dist/shopify/utils/store.d.ts +3 -0
- package/dist/shopify/utils/store.d.ts.map +1 -0
- package/dist/shopify/utils/type-helper.d.ts +6 -0
- package/dist/shopify/utils/type-helper.d.ts.map +1 -0
- package/esbuild-cjs.mjs +23 -0
- package/esbuild-esm.mjs +30 -0
- package/package.json +50 -4
- package/src/cart/const.ts +23 -0
- package/src/cart/hooks/basic/useBuyNow.ts +105 -0
- package/src/cart/index.ts +19 -0
- package/src/cart/track/fbq.ts +63 -0
- package/src/cart/types/index.ts +25 -0
- package/src/cart/utils/index.ts +22 -0
- package/src/context/HeadlessProvider.tsx +30 -0
- package/src/context/config.ts +10 -0
- package/src/context/index.ts +3 -0
- package/src/index.ts +5 -1
- package/src/shopify/fetchers/add-cart-lines.ts +53 -0
- package/src/shopify/fetchers/create-cart.ts +43 -0
- package/src/shopify/fetchers/get-cart.ts +48 -0
- package/src/shopify/fetchers/get-products-by-handles.ts +48 -0
- package/src/shopify/fetchers/index.ts +10 -0
- package/src/shopify/fetchers/remove-cart-lines.ts +31 -0
- package/src/shopify/fetchers/update-cart-attributes.ts +29 -0
- package/src/shopify/fetchers/update-cart-buyer-identity.ts +32 -0
- package/src/shopify/fetchers/update-cart-codes.ts +32 -0
- package/src/shopify/fetchers/update-cart-lines.ts +42 -0
- package/src/shopify/fragments/article.ts +51 -0
- package/src/shopify/fragments/blog.ts +10 -0
- package/src/shopify/fragments/cart.ts +193 -0
- package/src/shopify/fragments/collection.ts +15 -0
- package/src/shopify/fragments/image.ts +8 -0
- package/src/shopify/fragments/index.ts +11 -0
- package/src/shopify/fragments/metafields.ts +17 -0
- package/src/shopify/fragments/page-info.ts +8 -0
- package/src/shopify/fragments/page.ts +12 -0
- package/src/shopify/fragments/product.ts +71 -0
- package/src/shopify/fragments/seo.ts +6 -0
- package/src/shopify/fragments/variant.ts +29 -0
- package/src/shopify/gql/fragment-masking.ts +85 -0
- package/src/shopify/gql/gql.ts +110 -0
- package/src/shopify/gql/graphql.ts +11780 -0
- package/src/shopify/gql/index.ts +4 -0
- package/src/shopify/hooks/index.ts +1 -0
- package/src/shopify/hooks/useProductsByHandles.ts +24 -0
- package/src/shopify/index.ts +5 -0
- package/src/shopify/mutations/add-cart-lines.ts +16 -0
- package/src/shopify/mutations/create-cart.ts +22 -0
- package/src/shopify/mutations/remove-cart-items.ts +16 -0
- package/src/shopify/mutations/update-cart-attributes.ts +16 -0
- package/src/shopify/mutations/update-cart-buyer-identity.ts +16 -0
- package/src/shopify/mutations/update-cart-discount-code.ts +16 -0
- package/src/shopify/mutations/update-cart-items.ts +16 -0
- package/src/shopify/queries/get-cart.ts +14 -0
- package/src/shopify/queries/get-product-by-handles.ts +32 -0
- package/src/shopify/queries/index.ts +2 -0
- package/src/shopify/types/article.ts +46 -0
- package/src/shopify/types/cart.ts +204 -0
- package/src/shopify/types/checkout.ts +44 -0
- package/src/shopify/types/collection.ts +104 -0
- package/src/shopify/types/common.ts +53 -0
- package/src/shopify/types/config.ts +14 -0
- package/src/shopify/types/customer.ts +31 -0
- package/src/shopify/types/fetcher.ts +67 -0
- package/src/shopify/types/index.ts +11 -0
- package/src/shopify/types/page.ts +45 -0
- package/src/shopify/types/product.ts +176 -0
- package/src/shopify/types/search.ts +62 -0
- package/src/shopify/types/site.ts +38 -0
- package/src/shopify/types/type-helper.ts +5 -0
- package/src/shopify/utils/colors.ts +206 -0
- package/src/shopify/utils/const.ts +115 -0
- package/src/shopify/utils/cookie.ts +28 -0
- package/src/shopify/utils/errors.ts +65 -0
- package/src/shopify/utils/fetch-graphql-api.ts +67 -0
- package/src/shopify/utils/handle-fetch-response.ts +60 -0
- package/src/shopify/utils/helper.ts +89 -0
- package/src/shopify/utils/normalize/cart.ts +106 -0
- package/src/shopify/utils/normalize/customer.ts +18 -0
- package/src/shopify/utils/normalize/index.ts +2 -0
- package/src/shopify/utils/normalize/metafield.ts +69 -0
- package/src/shopify/utils/normalize/product.ts +193 -0
- package/src/shopify/utils/store.ts +5 -0
- package/src/shopify/utils/type-helper.ts +7 -0
- package/tsconfig.json +7 -2
- package/dist/index.d.mts +0 -7
- package/dist/index.global.js +0 -2
- package/dist/index.global.js.map +0 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -2
- package/dist/index.mjs.map +0 -1
- package/src/__tests__/math.test.ts +0 -15
- package/src/math.ts +0 -5
package/esbuild-esm.mjs
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import esbuild from 'esbuild'
|
|
2
|
+
const dir = 'dist/esm'
|
|
3
|
+
|
|
4
|
+
const options = {
|
|
5
|
+
entryPoints: ['src/**/*.ts*'],
|
|
6
|
+
outdir: dir,
|
|
7
|
+
format: 'esm',
|
|
8
|
+
target: 'es2020',
|
|
9
|
+
sourcemap: true,
|
|
10
|
+
minify: true,
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// Check if "watch=true" flag is passed
|
|
14
|
+
if (process.argv[2]) {
|
|
15
|
+
const [key, value] = process.argv[2].split('=')
|
|
16
|
+
if (key === 'watch' && value === 'true') {
|
|
17
|
+
const ctx = await esbuild.context(options)
|
|
18
|
+
await ctx.watch()
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
esbuild.build(options).catch(() => process.exit(1))
|
|
23
|
+
|
|
24
|
+
// Create a package.json file in the dist/esm directory with "type": "module" field
|
|
25
|
+
import fs from 'fs'
|
|
26
|
+
import path from 'path'
|
|
27
|
+
if (!fs.existsSync(dir)) {
|
|
28
|
+
fs.mkdirSync(dir, { recursive: true })
|
|
29
|
+
}
|
|
30
|
+
fs.writeFileSync(path.join(dir, 'package.json'), JSON.stringify({ type: 'module' }, null, 2) + '\n', 'utf-8')
|
package/package.json
CHANGED
|
@@ -1,21 +1,67 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anker-in/lib",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Unified Anker headless library with shared context, Shopify integration, and cart utilities",
|
|
5
|
+
"main": "./dist/cjs/index.js",
|
|
6
|
+
"module": "./dist/esm/index.js",
|
|
7
|
+
"types": "./dist/esm/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"require": {
|
|
11
|
+
"types": "./dist/cjs/index.d.ts",
|
|
12
|
+
"default": "./dist/cjs/index.js"
|
|
13
|
+
},
|
|
14
|
+
"import": {
|
|
15
|
+
"types": "./dist/esm/index.d.ts",
|
|
16
|
+
"default": "./dist/esm/index.js"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"peerDependencies": {
|
|
21
|
+
"react": "^18.0.0",
|
|
22
|
+
"react-dom": "^18.0.0",
|
|
23
|
+
"tailwind-merge": "^1.11.0",
|
|
24
|
+
"clsx": "^2.1.1"
|
|
25
|
+
},
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"swr": "^2.2.4",
|
|
28
|
+
"fetch-ponyfill": "^7.1.0",
|
|
29
|
+
"js-cookie": "^3.0.5"
|
|
30
|
+
},
|
|
6
31
|
"devDependencies": {
|
|
7
32
|
"@types/jest": "^29.5.12",
|
|
33
|
+
"@types/js-cookie": "^3.0.6",
|
|
34
|
+
"esbuild": "^0.19.0",
|
|
8
35
|
"jest": "^29.0.0",
|
|
9
36
|
"ts-jest": "^29.2.6",
|
|
10
37
|
"tsup": "^8.4.0",
|
|
11
38
|
"typescript": "^5.0.0"
|
|
12
39
|
},
|
|
40
|
+
"publishConfig": {
|
|
41
|
+
"access": "public",
|
|
42
|
+
"registry": "https://registry.npmjs.org/"
|
|
43
|
+
},
|
|
44
|
+
"keywords": [
|
|
45
|
+
"anker",
|
|
46
|
+
"headless",
|
|
47
|
+
"shopify",
|
|
48
|
+
"ecommerce",
|
|
49
|
+
"react",
|
|
50
|
+
"cart",
|
|
51
|
+
"context"
|
|
52
|
+
],
|
|
53
|
+
"author": "Anker",
|
|
54
|
+
"license": "MIT",
|
|
13
55
|
"scripts": {
|
|
14
56
|
"dev": "tsup --watch",
|
|
15
|
-
"build": "
|
|
57
|
+
"build": "pnpm run build:js:esm & pnpm run build:js:cjs & pnpm run build:types",
|
|
58
|
+
"build:js:cjs": "node esbuild-cjs.mjs",
|
|
59
|
+
"build:js:esm": "node esbuild-esm.mjs",
|
|
60
|
+
"build:types": "tsc --outdir dist",
|
|
16
61
|
"test": "jest --passWithNoTests",
|
|
17
62
|
"test:watch": "jest --watch",
|
|
18
63
|
"coverage": "jest --coverage",
|
|
64
|
+
"type-check": "tsc --noEmit",
|
|
19
65
|
"clean": "rm -rf .turbo node_modules dist"
|
|
20
66
|
}
|
|
21
67
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SWRMutationConfiguration } from 'swr/mutation'
|
|
2
|
+
|
|
3
|
+
export const currencyCodeMapping = {
|
|
4
|
+
us: 'USD',
|
|
5
|
+
ca: 'CAD',
|
|
6
|
+
gb: 'GBP',
|
|
7
|
+
eu: 'EUR',
|
|
8
|
+
au: 'AUD',
|
|
9
|
+
nz: 'NZD',
|
|
10
|
+
de: 'EUR',
|
|
11
|
+
fr: 'EUR',
|
|
12
|
+
es: 'EUR',
|
|
13
|
+
it: 'EUR',
|
|
14
|
+
nl: 'EUR',
|
|
15
|
+
pl: 'EUR',
|
|
16
|
+
ro: 'EUR',
|
|
17
|
+
} as Record<string, string>
|
|
18
|
+
|
|
19
|
+
export const defaultSWRMutationConfiguration: SWRMutationConfiguration<any, any, any, any, any> & {
|
|
20
|
+
throwOnError?: boolean
|
|
21
|
+
} = {
|
|
22
|
+
throwOnError: false,
|
|
23
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Attributes, Cart, CartBuyerIdentity, CartInput } from '../../../shopify'
|
|
2
|
+
import { useCallback } from 'react'
|
|
3
|
+
import useSWRMutation, { SWRMutationConfiguration } from 'swr/mutation'
|
|
4
|
+
import { FbqBuyNowTrackConfig } from '../../track/fbq'
|
|
5
|
+
import { GtmParams, BuyNowLineItems } from '../../types'
|
|
6
|
+
// import { startInactiveSpan } from '@sentry/nextjs'
|
|
7
|
+
import { createCart as createCartFetcher } from '../../../shopify'
|
|
8
|
+
import { useHeadlessContext } from '../../../context'
|
|
9
|
+
import { defaultSWRMutationConfiguration } from '../../const'
|
|
10
|
+
|
|
11
|
+
type UseBuyNowProps = {
|
|
12
|
+
withTrack?: boolean // 是否需要默认埋点
|
|
13
|
+
redirectToCheckout?: boolean // 是否重定向到结账页
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export type BuyNowArgs = {
|
|
17
|
+
lineItems: BuyNowLineItems
|
|
18
|
+
discountCodes?: string[]
|
|
19
|
+
customAttributes?: Attributes[]
|
|
20
|
+
buyerIdentity?: CartBuyerIdentity
|
|
21
|
+
gtmParams?: GtmParams
|
|
22
|
+
fbqTrackConfig?: FbqBuyNowTrackConfig
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export const useBuyNow = (
|
|
26
|
+
{ withTrack = true, redirectToCheckout = true }: UseBuyNowProps = {},
|
|
27
|
+
swrOptions: SWRMutationConfiguration<Cart | undefined, Error, string, BuyNowArgs> & {
|
|
28
|
+
throwOnError?: boolean
|
|
29
|
+
} = defaultSWRMutationConfiguration
|
|
30
|
+
) => {
|
|
31
|
+
const { storefrontToken, storeDomain } = useHeadlessContext()
|
|
32
|
+
|
|
33
|
+
const trigger = useCallback(
|
|
34
|
+
async (_: any, { arg }: { arg: BuyNowArgs }) => {
|
|
35
|
+
const { lineItems, discountCodes, gtmParams = {}, buyerIdentity, fbqTrackConfig } = arg
|
|
36
|
+
|
|
37
|
+
if (!lineItems) {
|
|
38
|
+
return
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// const buyNowSpan = startInactiveSpan({
|
|
42
|
+
// name: 'buyNow',
|
|
43
|
+
// op: 'business',
|
|
44
|
+
// })
|
|
45
|
+
|
|
46
|
+
const linesToBuyNow = lineItems
|
|
47
|
+
.map(item => ({
|
|
48
|
+
merchandiseId: item.variant.id,
|
|
49
|
+
quantity: item.quantity || 1,
|
|
50
|
+
attributes: item.attributes,
|
|
51
|
+
}))
|
|
52
|
+
.filter(item => item.merchandiseId && item.quantity)
|
|
53
|
+
|
|
54
|
+
let resultCart: Cart | undefined
|
|
55
|
+
if (linesToBuyNow.length > 0) {
|
|
56
|
+
// const buyNowAPISpan = startInactiveSpan({
|
|
57
|
+
// name: 'buyNowAPI',
|
|
58
|
+
// op: 'business',
|
|
59
|
+
// parentSpan: buyNowSpan,
|
|
60
|
+
// })
|
|
61
|
+
|
|
62
|
+
// const createCartApiSpan = startInactiveSpan({
|
|
63
|
+
// name: 'createCartAPI',
|
|
64
|
+
// op: 'business',
|
|
65
|
+
// parentSpan: buyNowAPISpan,
|
|
66
|
+
// })
|
|
67
|
+
// 创建购物车
|
|
68
|
+
const createCartOptions = {
|
|
69
|
+
lines: linesToBuyNow,
|
|
70
|
+
buyerIdentity,
|
|
71
|
+
discountCodes,
|
|
72
|
+
} as CartInput
|
|
73
|
+
resultCart = await createCartFetcher({
|
|
74
|
+
options: createCartOptions,
|
|
75
|
+
config: {
|
|
76
|
+
storefrontToken,
|
|
77
|
+
storeDomain,
|
|
78
|
+
},
|
|
79
|
+
})
|
|
80
|
+
// createCartApiSpan.end()
|
|
81
|
+
|
|
82
|
+
// buyNowAPISpan.end()
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// 埋点
|
|
86
|
+
if (withTrack) {
|
|
87
|
+
// buyNowGa({ lineItems, router, gtmParams })
|
|
88
|
+
// if (fbqTrackConfig) {
|
|
89
|
+
// buyNowFbq({ router, trackConfig: fbqTrackConfig })
|
|
90
|
+
// }
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// buyNowSpan.end()
|
|
94
|
+
if (redirectToCheckout && resultCart?.url) {
|
|
95
|
+
window.location.href = resultCart.url
|
|
96
|
+
} else {
|
|
97
|
+
throw new Error('Failed to buy now')
|
|
98
|
+
}
|
|
99
|
+
return resultCart
|
|
100
|
+
},
|
|
101
|
+
[withTrack, redirectToCheckout, createCartFetcher]
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
return useSWRMutation('buyNow', trigger, swrOptions)
|
|
105
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Context
|
|
2
|
+
|
|
3
|
+
// Basic Hooks
|
|
4
|
+
|
|
5
|
+
export * from './hooks/basic/useBuyNow'
|
|
6
|
+
|
|
7
|
+
// Feature Hooks
|
|
8
|
+
|
|
9
|
+
// Types
|
|
10
|
+
export * from './types'
|
|
11
|
+
|
|
12
|
+
// Utils
|
|
13
|
+
export * from './utils'
|
|
14
|
+
|
|
15
|
+
// Constants
|
|
16
|
+
export * from './const'
|
|
17
|
+
|
|
18
|
+
// Tracking
|
|
19
|
+
export * from './track/fbq'
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { AddToCartLineItems } from '../types'
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
interface Window {
|
|
5
|
+
fbq?: (...args: any) => void
|
|
6
|
+
gtag?: (...args: any) => void
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// facebook 埋点
|
|
11
|
+
export const fbq = (...args: any) => {
|
|
12
|
+
if (window.fbq) {
|
|
13
|
+
window.fbq(...args)
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const gtag = (...args: any) => {
|
|
18
|
+
if (window.gtag) {
|
|
19
|
+
window.gtag(...args)
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export const addToCartFbq = ({ lineItems = [] }: { lineItems: AddToCartLineItems }) => {
|
|
24
|
+
if (lineItems.length && lineItems[0].variant) {
|
|
25
|
+
const { variant, quantity, finalPrice } = lineItems[0]
|
|
26
|
+
fbq('track', 'AddToCart', {
|
|
27
|
+
value: finalPrice?.amount || variant?.price?.amount,
|
|
28
|
+
num_items: quantity,
|
|
29
|
+
currency: variant?.price?.currencyCode,
|
|
30
|
+
content_name: variant?.product?.title, // 产品内容的名字
|
|
31
|
+
content_type: 'product_group',
|
|
32
|
+
content_ids: String(variant?.id), // 产品的varaint id
|
|
33
|
+
content_category: variant?.product?.metafields?.global?.trafficType || 'public', // 产品分类
|
|
34
|
+
})
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export type FbqBuyNowTrackConfig = {
|
|
39
|
+
fbqBuyNowEvent: string
|
|
40
|
+
gtagBuyNowLabel: string
|
|
41
|
+
gtagBuyNowConversion: string
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export const buyNowFbq = ({
|
|
45
|
+
trackConfig,
|
|
46
|
+
gtagId,
|
|
47
|
+
}: {
|
|
48
|
+
router: any
|
|
49
|
+
trackConfig: FbqBuyNowTrackConfig
|
|
50
|
+
gtagId: string
|
|
51
|
+
}) => {
|
|
52
|
+
try {
|
|
53
|
+
if (trackConfig?.fbqBuyNowEvent) {
|
|
54
|
+
fbq('trackCustom', trackConfig?.fbqBuyNowEvent)
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (trackConfig?.gtagBuyNowLabel) {
|
|
58
|
+
gtag('event', trackConfig?.gtagBuyNowConversion || 'conversion', {
|
|
59
|
+
send_to: `${gtagId}/${trackConfig?.gtagBuyNowLabel}`,
|
|
60
|
+
})
|
|
61
|
+
}
|
|
62
|
+
} catch (error) {}
|
|
63
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Attributes } from '../../shopify'
|
|
2
|
+
import { ProductVariant, ProductPrice } from '../../shopify'
|
|
3
|
+
|
|
4
|
+
export type AddToCartLineItems = Array<{
|
|
5
|
+
variant: ProductVariant
|
|
6
|
+
variantId?: string // 兼容老数据
|
|
7
|
+
quantity: number
|
|
8
|
+
finalPrice?: ProductPrice
|
|
9
|
+
attributes?: Attributes
|
|
10
|
+
sellingPlanId?: string
|
|
11
|
+
}>
|
|
12
|
+
|
|
13
|
+
export type BuyNowLineItems = Array<{
|
|
14
|
+
variant: ProductVariant
|
|
15
|
+
quantity: number
|
|
16
|
+
finalPrice?: ProductPrice
|
|
17
|
+
attributes?: Attributes
|
|
18
|
+
sellingPlanId?: string
|
|
19
|
+
}>
|
|
20
|
+
|
|
21
|
+
export type GtmParams = {
|
|
22
|
+
position?: string // ga4 position
|
|
23
|
+
pageGroup?: string // ga4 pageGroup
|
|
24
|
+
ga4Params?: Record<string, any> // ga4 额外埋点字段
|
|
25
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Attributes } from '../../shopify'
|
|
2
|
+
|
|
3
|
+
export const isAttributesEqual = (oldAttributes: Attributes, newAttributes: Attributes) => {
|
|
4
|
+
// 比对两个数据是否完全相同
|
|
5
|
+
// 检查数组长度是否相同
|
|
6
|
+
if (oldAttributes?.length !== newAttributes?.length) {
|
|
7
|
+
return false
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// 将数组转换为 Map 以便快速查找
|
|
11
|
+
const oldMap = new Map(oldAttributes.map(attr => [attr.key, attr.value]))
|
|
12
|
+
const newMap = new Map(newAttributes.map(attr => [attr.key, attr.value]))
|
|
13
|
+
|
|
14
|
+
// 检查所有 key 是否都存在且值相同
|
|
15
|
+
for (const [key, value] of newMap) {
|
|
16
|
+
if (!oldMap.has(key) || oldMap.get(key) !== value) {
|
|
17
|
+
return false
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
return true
|
|
22
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { createContext, useContext, useMemo, ReactNode } from 'react'
|
|
2
|
+
|
|
3
|
+
import { HeadlessConfig } from './config'
|
|
4
|
+
|
|
5
|
+
const HeadlessContext = createContext<HeadlessConfig | null>(null)
|
|
6
|
+
|
|
7
|
+
interface HeadlessProviderProps {
|
|
8
|
+
children: ReactNode
|
|
9
|
+
headlessConfig: HeadlessConfig
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export const HeadlessProvider = ({ children, headlessConfig }: HeadlessProviderProps): JSX.Element => {
|
|
13
|
+
const contextValue = useMemo((): HeadlessConfig => {
|
|
14
|
+
if (!headlessConfig) {
|
|
15
|
+
throw new Error(`No site configuration or headless configuration found`)
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return headlessConfig
|
|
19
|
+
}, [headlessConfig])
|
|
20
|
+
|
|
21
|
+
return <HeadlessContext.Provider value={contextValue}>{children}</HeadlessContext.Provider>
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export const useHeadlessContext = (): HeadlessConfig => {
|
|
25
|
+
const context = useContext(HeadlessContext)
|
|
26
|
+
if (!context) {
|
|
27
|
+
throw new Error('useHeadlessContext must be used within a HeadlessProvider')
|
|
28
|
+
}
|
|
29
|
+
return context || ({} as HeadlessConfig)
|
|
30
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { CartLinesAddPayload, MutationCartLinesAddArgs } from '../gql'
|
|
2
|
+
import { addCartLinesMutation } from '../mutations/add-cart-lines'
|
|
3
|
+
import type { Cart } from '../types/cart'
|
|
4
|
+
import { ShopifyFetcher } from '../types/fetcher'
|
|
5
|
+
import { fetchGraphqlApi } from '../utils/fetch-graphql-api'
|
|
6
|
+
import { normalizeCart } from '../utils/normalize'
|
|
7
|
+
import { ShopifyConfig } from '../types/config'
|
|
8
|
+
import { Optional } from '../types/type-helper'
|
|
9
|
+
/**
|
|
10
|
+
* Adds cart lines to the Shopify cart.
|
|
11
|
+
*
|
|
12
|
+
* @param options - The options for adding cart lines.
|
|
13
|
+
* @param config - The store configuration.
|
|
14
|
+
* @returns The updated cart or undefined if the cart could not be updated.
|
|
15
|
+
*/
|
|
16
|
+
export const addCartLines: ShopifyFetcher<Cart | undefined, MutationCartLinesAddArgs> = async function ({
|
|
17
|
+
options,
|
|
18
|
+
config,
|
|
19
|
+
}: {
|
|
20
|
+
options: MutationCartLinesAddArgs
|
|
21
|
+
config: ShopifyConfig
|
|
22
|
+
}) {
|
|
23
|
+
const { data } = await fetchGraphqlApi<
|
|
24
|
+
{ cartLinesAdd: CartLinesAddPayload },
|
|
25
|
+
Optional<MutationCartLinesAddArgs, 'cartId'>
|
|
26
|
+
>({
|
|
27
|
+
query: addCartLinesMutation,
|
|
28
|
+
variables: {
|
|
29
|
+
cartId: options.cartId,
|
|
30
|
+
lines: options.lines,
|
|
31
|
+
},
|
|
32
|
+
config,
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
if (data?.cartLinesAdd?.userErrors?.length) {
|
|
36
|
+
const errors = data.cartLinesAdd.userErrors
|
|
37
|
+
const quantityError = errors.find(error => error.field?.includes('quantity'))
|
|
38
|
+
if (quantityError) {
|
|
39
|
+
// The quantity of the line item is invalid.
|
|
40
|
+
return Promise.reject(quantityError)
|
|
41
|
+
} else {
|
|
42
|
+
throw new Error(JSON.stringify(data?.cartLinesAdd?.userErrors))
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const cart = data?.cartLinesAdd?.cart
|
|
47
|
+
|
|
48
|
+
if (cart) {
|
|
49
|
+
return normalizeCart(cart, '')
|
|
50
|
+
} else {
|
|
51
|
+
return undefined
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { CartCreatePayload, CartInput } from '../gql'
|
|
2
|
+
import { createCartMutation } from '../mutations/create-cart'
|
|
3
|
+
import type { Cart } from '../types/cart'
|
|
4
|
+
import { ShopifyFetcher } from '../types/fetcher'
|
|
5
|
+
import { fetchGraphqlApi } from '../utils/fetch-graphql-api'
|
|
6
|
+
import { normalizeCart } from '../utils/normalize'
|
|
7
|
+
import { GetCartMetafieldQueryRoot } from './get-cart'
|
|
8
|
+
import { constructMetafieldIdentifiersQueryParams } from '../utils/helper'
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Creates a cart using the Shopify API.
|
|
12
|
+
*
|
|
13
|
+
* @param options - The options for the cart.
|
|
14
|
+
* @param config - The store configuration.
|
|
15
|
+
* @returns The created cart or undefined if the cart creation fails.
|
|
16
|
+
*/
|
|
17
|
+
export const createCart: ShopifyFetcher<Cart | undefined, CartInput, GetCartMetafieldQueryRoot> = async function ({
|
|
18
|
+
options,
|
|
19
|
+
config,
|
|
20
|
+
}) {
|
|
21
|
+
const { comboMetafieldsNamespace, metafieldIdentifiers, ...rest } = options
|
|
22
|
+
if (!rest.lines?.length) {
|
|
23
|
+
throw new Error('Invalid input used for this operation: Miss lines')
|
|
24
|
+
}
|
|
25
|
+
const { data } = await fetchGraphqlApi<{ cartCreate: CartCreatePayload }, CartInput>({
|
|
26
|
+
query: createCartMutation,
|
|
27
|
+
variables: {
|
|
28
|
+
...rest,
|
|
29
|
+
...(metafieldIdentifiers && {
|
|
30
|
+
...constructMetafieldIdentifiersQueryParams(metafieldIdentifiers, comboMetafieldsNamespace),
|
|
31
|
+
}),
|
|
32
|
+
},
|
|
33
|
+
config,
|
|
34
|
+
})
|
|
35
|
+
|
|
36
|
+
const cart = data?.cartCreate?.cart
|
|
37
|
+
|
|
38
|
+
if (cart) {
|
|
39
|
+
return normalizeCart(cart, comboMetafieldsNamespace)
|
|
40
|
+
} else {
|
|
41
|
+
return undefined
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Cart, GetCartQueryVariables } from '../gql'
|
|
2
|
+
import type { Cart as ExportCart } from '../types/cart'
|
|
3
|
+
import {
|
|
4
|
+
HasMetafieldQueryRoot,
|
|
5
|
+
metafieldIdentifiersGroup,
|
|
6
|
+
ShopifyFetcher,
|
|
7
|
+
ShopifyFetcherVariables,
|
|
8
|
+
} from '../types/fetcher'
|
|
9
|
+
import { fetchGraphqlApi } from '../utils/fetch-graphql-api'
|
|
10
|
+
import { normalizeCart } from '../utils/normalize'
|
|
11
|
+
import { getCartQuery } from '../queries/get-cart'
|
|
12
|
+
import { constructMetafieldIdentifiersQueryParams } from '../utils/helper'
|
|
13
|
+
|
|
14
|
+
export type GetCartMetafieldQueryRoot = HasMetafieldQueryRoot.Product | HasMetafieldQueryRoot.Variant
|
|
15
|
+
|
|
16
|
+
export type GetCartReq = {
|
|
17
|
+
cartId: string
|
|
18
|
+
} & metafieldIdentifiersGroup<GetCartMetafieldQueryRoot>
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Fetches the cart from Shopify.
|
|
22
|
+
*
|
|
23
|
+
* @param options - The options for fetching the cart.
|
|
24
|
+
* @param config - The store configuration.
|
|
25
|
+
* @returns The fetched cart or undefined if not found.
|
|
26
|
+
*/
|
|
27
|
+
export const getCart: ShopifyFetcher<ExportCart | undefined, GetCartQueryVariables, GetCartMetafieldQueryRoot> =
|
|
28
|
+
async function ({ options, config }) {
|
|
29
|
+
const { comboMetafieldsNamespace: metafieldsNamespace, metafieldIdentifiers, cartId } = options
|
|
30
|
+
|
|
31
|
+
if (!cartId) {
|
|
32
|
+
throw new Error('Invalid input used for this operation: Miss cartId')
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const { data } = await fetchGraphqlApi<
|
|
36
|
+
{ cart: Cart },
|
|
37
|
+
ShopifyFetcherVariables<GetCartQueryVariables, GetCartMetafieldQueryRoot>
|
|
38
|
+
>({
|
|
39
|
+
query: getCartQuery,
|
|
40
|
+
variables: {
|
|
41
|
+
cartId,
|
|
42
|
+
...constructMetafieldIdentifiersQueryParams(metafieldIdentifiers, metafieldsNamespace),
|
|
43
|
+
},
|
|
44
|
+
config,
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
return normalizeCart(data.cart, metafieldsNamespace)
|
|
48
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { getProductsByHandlesQuery } from '../queries/get-product-by-handles'
|
|
2
|
+
import { fetchGraphqlApi } from '../utils/fetch-graphql-api'
|
|
3
|
+
import { constructMetafieldIdentifiersQueryParams } from '../utils/helper'
|
|
4
|
+
import { normalizeProduct } from '../utils/normalize/product'
|
|
5
|
+
import { Product as ShopifyProduct } from '../gql'
|
|
6
|
+
import { HasMetafieldQueryRoot, ShopifyFetcher, ShopifyFetcherVariables } from '../types/fetcher'
|
|
7
|
+
import { Product } from '../types/product'
|
|
8
|
+
|
|
9
|
+
export type GetProductsMetafieldQueryRoot = HasMetafieldQueryRoot.Product | HasMetafieldQueryRoot.Variant
|
|
10
|
+
|
|
11
|
+
export type GetProductsByHandlesReq = {
|
|
12
|
+
handles: string[]
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Gets products by their handles.
|
|
17
|
+
*
|
|
18
|
+
* @param options - The options for getting products.
|
|
19
|
+
* @param config - The store configuration.
|
|
20
|
+
* @returns An array of products.
|
|
21
|
+
*/
|
|
22
|
+
export const getProductsByHandles: ShopifyFetcher<
|
|
23
|
+
Product[],
|
|
24
|
+
GetProductsByHandlesReq,
|
|
25
|
+
GetProductsMetafieldQueryRoot
|
|
26
|
+
> = async ({ options, config }) => {
|
|
27
|
+
const { handles, metafieldIdentifiers, comboMetafieldsNamespace } = options
|
|
28
|
+
|
|
29
|
+
if (!handles?.length) {
|
|
30
|
+
throw new Error('Handles are required')
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const products = await fetchGraphqlApi<
|
|
34
|
+
Record<string, ShopifyProduct>,
|
|
35
|
+
ShopifyFetcherVariables<GetProductsByHandlesReq, GetProductsMetafieldQueryRoot>
|
|
36
|
+
>({
|
|
37
|
+
query: getProductsByHandlesQuery(handles),
|
|
38
|
+
variables: {
|
|
39
|
+
handles,
|
|
40
|
+
...constructMetafieldIdentifiersQueryParams(metafieldIdentifiers, comboMetafieldsNamespace),
|
|
41
|
+
},
|
|
42
|
+
config,
|
|
43
|
+
})
|
|
44
|
+
|
|
45
|
+
return Object.values(products.data)
|
|
46
|
+
.filter(item => !!item)
|
|
47
|
+
.map(product => normalizeProduct(product, '')) as Product[]
|
|
48
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { getProductsByHandles } from './get-products-by-handles'
|
|
2
|
+
export { addCartLines } from './add-cart-lines'
|
|
3
|
+
export { createCart } from './create-cart'
|
|
4
|
+
export { removeCartLines } from './remove-cart-lines'
|
|
5
|
+
export { updateCartAttributes } from './update-cart-attributes'
|
|
6
|
+
export { updateCartLines } from './update-cart-lines'
|
|
7
|
+
export { getCart } from './get-cart'
|
|
8
|
+
|
|
9
|
+
export type { GetProductsByHandlesReq, GetProductsMetafieldQueryRoot } from './get-products-by-handles'
|
|
10
|
+
export type { GetCartReq, GetCartMetafieldQueryRoot } from './get-cart'
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Cart, MutationCartLinesRemoveArgs } from '../gql'
|
|
2
|
+
import { removeCartItemsMutation } from '../mutations/remove-cart-items'
|
|
3
|
+
import type { Cart as ExportCart } from '../types/cart'
|
|
4
|
+
import { ShopifyFetcher } from '../types/fetcher'
|
|
5
|
+
import { fetchGraphqlApi } from '../utils/fetch-graphql-api'
|
|
6
|
+
import { normalizeCart } from '../utils/normalize'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Removes cart lines from the Shopify API.
|
|
10
|
+
*
|
|
11
|
+
* @param options - The options for removing cart lines.
|
|
12
|
+
* @param config - The store configuration.
|
|
13
|
+
* @returns The normalized cart after removing the cart lines, or undefined if the operation fails.
|
|
14
|
+
*/
|
|
15
|
+
export const removeCartLines: ShopifyFetcher<ExportCart | undefined, MutationCartLinesRemoveArgs> = async function ({
|
|
16
|
+
options,
|
|
17
|
+
config,
|
|
18
|
+
}) {
|
|
19
|
+
const { data } = await fetchGraphqlApi<{ cartLinesRemove: { cart: Cart } }, MutationCartLinesRemoveArgs>({
|
|
20
|
+
query: removeCartItemsMutation,
|
|
21
|
+
variables: options,
|
|
22
|
+
config,
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
if (data?.cartLinesRemove?.cart) {
|
|
26
|
+
const normalizedCart = normalizeCart(data.cartLinesRemove.cart, '')
|
|
27
|
+
return normalizedCart
|
|
28
|
+
} else {
|
|
29
|
+
return undefined
|
|
30
|
+
}
|
|
31
|
+
}
|