@shopify/hydrogen-react 2022.10.8 → 2023.1.5
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/README.md +41 -47
- package/dist/browser-dev/AddToCartButton.mjs +43 -40
- package/dist/browser-dev/AddToCartButton.mjs.map +1 -1
- package/dist/browser-dev/BaseButton.mjs +13 -15
- package/dist/browser-dev/BaseButton.mjs.map +1 -1
- package/dist/browser-dev/BuyNowButton.mjs +19 -17
- package/dist/browser-dev/BuyNowButton.mjs.map +1 -1
- package/dist/browser-dev/CartCheckoutButton.mjs +12 -15
- package/dist/browser-dev/CartCheckoutButton.mjs.map +1 -1
- package/dist/browser-dev/CartCost.mjs +25 -0
- package/dist/browser-dev/CartCost.mjs.map +1 -0
- package/dist/browser-dev/CartLinePrice.mjs +21 -0
- package/dist/browser-dev/CartLinePrice.mjs.map +1 -0
- package/dist/browser-dev/CartLineProvider.mjs +22 -0
- package/dist/browser-dev/CartLineProvider.mjs.map +1 -0
- package/dist/browser-dev/CartLineQuantity.mjs +12 -0
- package/dist/browser-dev/CartLineQuantity.mjs.map +1 -0
- package/dist/browser-dev/CartLineQuantityAdjustButton.mjs +48 -0
- package/dist/browser-dev/CartLineQuantityAdjustButton.mjs.map +1 -0
- package/dist/browser-dev/CartProvider.mjs +74 -68
- package/dist/browser-dev/CartProvider.mjs.map +1 -1
- package/dist/browser-dev/ExternalVideo.mjs +13 -11
- package/dist/browser-dev/ExternalVideo.mjs.map +1 -1
- package/dist/browser-dev/Image.mjs +41 -30
- package/dist/browser-dev/Image.mjs.map +1 -1
- package/dist/browser-dev/MediaFile.mjs +29 -21
- package/dist/browser-dev/MediaFile.mjs.map +1 -1
- package/dist/browser-dev/ModelViewer.mjs +138 -76
- package/dist/browser-dev/ModelViewer.mjs.map +1 -1
- package/dist/browser-dev/Money.mjs +12 -9
- package/dist/browser-dev/Money.mjs.map +1 -1
- package/dist/browser-dev/ProductPrice.mjs +12 -17
- package/dist/browser-dev/ProductPrice.mjs.map +1 -1
- package/dist/browser-dev/ProductProvider.mjs +102 -73
- package/dist/browser-dev/ProductProvider.mjs.map +1 -1
- package/dist/browser-dev/ShopPayButton.mjs +14 -24
- package/dist/browser-dev/ShopPayButton.mjs.map +1 -1
- package/dist/browser-dev/ShopifyProvider.mjs +22 -38
- package/dist/browser-dev/ShopifyProvider.mjs.map +1 -1
- package/dist/browser-dev/Video.mjs +30 -21
- package/dist/browser-dev/Video.mjs.map +1 -1
- package/dist/browser-dev/_virtual/index.mjs +11 -2
- package/dist/browser-dev/_virtual/index.mjs.map +1 -1
- package/dist/browser-dev/_virtual/with-selector.mjs +11 -2
- package/dist/browser-dev/_virtual/with-selector.mjs.map +1 -1
- package/dist/browser-dev/analytics-constants.mjs +43 -0
- package/dist/browser-dev/analytics-constants.mjs.map +1 -0
- package/dist/browser-dev/analytics-schema-custom-storefront-customer-tracking.mjs +145 -0
- package/dist/browser-dev/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -0
- package/dist/browser-dev/analytics-schema-trekkie-storefront-page-view.mjs +58 -0
- package/dist/browser-dev/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -0
- package/dist/browser-dev/analytics-utils.mjs +49 -0
- package/dist/browser-dev/analytics-utils.mjs.map +1 -0
- package/dist/browser-dev/analytics.mjs +159 -0
- package/dist/browser-dev/analytics.mjs.map +1 -0
- package/dist/browser-dev/cart-hooks.mjs +32 -34
- package/dist/browser-dev/cart-hooks.mjs.map +1 -1
- package/dist/browser-dev/cart-queries.mjs +50 -28
- package/dist/browser-dev/cart-queries.mjs.map +1 -1
- package/dist/browser-dev/codegen.helpers.mjs +1 -0
- package/dist/browser-dev/codegen.helpers.mjs.map +1 -1
- package/dist/browser-dev/cookies-utils.mjs +50 -0
- package/dist/browser-dev/cookies-utils.mjs.map +1 -0
- package/dist/browser-dev/flatten-connection.mjs +7 -5
- package/dist/browser-dev/flatten-connection.mjs.map +1 -1
- package/dist/browser-dev/image-size.mjs +8 -8
- package/dist/browser-dev/image-size.mjs.map +1 -1
- package/dist/browser-dev/index.mjs +24 -6
- package/dist/browser-dev/index.mjs.map +1 -1
- package/dist/browser-dev/load-script.mjs +3 -1
- package/dist/browser-dev/load-script.mjs.map +1 -1
- package/dist/browser-dev/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
- package/dist/browser-dev/node_modules/@xstate/react/es/fsm.mjs +2 -2
- package/dist/browser-dev/node_modules/@xstate/react/es/fsm.mjs.map +1 -1
- package/dist/browser-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -1
- package/dist/browser-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -1
- package/dist/browser-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -1
- package/dist/browser-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -1
- package/dist/browser-dev/node_modules/use-sync-external-store/shim/index.mjs +3 -3
- package/dist/browser-dev/node_modules/use-sync-external-store/shim/with-selector.mjs +1 -1
- package/dist/browser-dev/{metafield-parser.mjs → parse-metafield.mjs} +20 -12
- package/dist/browser-dev/parse-metafield.mjs.map +1 -0
- package/dist/browser-dev/storefront-api-constants.mjs +1 -1
- package/dist/browser-dev/storefront-api-constants.mjs.map +1 -1
- package/dist/browser-dev/storefront-client.mjs +27 -27
- package/dist/browser-dev/storefront-client.mjs.map +1 -1
- package/dist/browser-dev/useCartAPIStateMachine.mjs +120 -80
- package/dist/browser-dev/useCartAPIStateMachine.mjs.map +1 -1
- package/dist/browser-dev/useCartActions.mjs +150 -109
- package/dist/browser-dev/useCartActions.mjs.map +1 -1
- package/dist/browser-dev/useMoney.mjs +63 -36
- package/dist/browser-dev/useMoney.mjs.map +1 -1
- package/dist/browser-dev/useShopifyCookies.mjs +41 -0
- package/dist/browser-dev/useShopifyCookies.mjs.map +1 -0
- package/dist/browser-prod/AddToCartButton.mjs +43 -40
- package/dist/browser-prod/AddToCartButton.mjs.map +1 -1
- package/dist/browser-prod/BaseButton.mjs +13 -15
- package/dist/browser-prod/BaseButton.mjs.map +1 -1
- package/dist/browser-prod/BuyNowButton.mjs +19 -17
- package/dist/browser-prod/BuyNowButton.mjs.map +1 -1
- package/dist/browser-prod/CartCheckoutButton.mjs +12 -15
- package/dist/browser-prod/CartCheckoutButton.mjs.map +1 -1
- package/dist/browser-prod/CartCost.mjs +25 -0
- package/dist/browser-prod/CartCost.mjs.map +1 -0
- package/dist/browser-prod/CartLinePrice.mjs +18 -0
- package/dist/browser-prod/CartLinePrice.mjs.map +1 -0
- package/dist/browser-prod/CartLineProvider.mjs +22 -0
- package/dist/browser-prod/CartLineProvider.mjs.map +1 -0
- package/dist/browser-prod/CartLineQuantity.mjs +12 -0
- package/dist/browser-prod/CartLineQuantity.mjs.map +1 -0
- package/dist/browser-prod/CartLineQuantityAdjustButton.mjs +48 -0
- package/dist/browser-prod/CartLineQuantityAdjustButton.mjs.map +1 -0
- package/dist/browser-prod/CartProvider.mjs +74 -68
- package/dist/browser-prod/CartProvider.mjs.map +1 -1
- package/dist/browser-prod/ExternalVideo.mjs +13 -11
- package/dist/browser-prod/ExternalVideo.mjs.map +1 -1
- package/dist/browser-prod/Image.mjs +35 -28
- package/dist/browser-prod/Image.mjs.map +1 -1
- package/dist/browser-prod/MediaFile.mjs +29 -21
- package/dist/browser-prod/MediaFile.mjs.map +1 -1
- package/dist/browser-prod/ModelViewer.mjs +135 -75
- package/dist/browser-prod/ModelViewer.mjs.map +1 -1
- package/dist/browser-prod/Money.mjs +12 -9
- package/dist/browser-prod/Money.mjs.map +1 -1
- package/dist/browser-prod/ProductPrice.mjs +12 -17
- package/dist/browser-prod/ProductPrice.mjs.map +1 -1
- package/dist/browser-prod/ProductProvider.mjs +102 -73
- package/dist/browser-prod/ProductProvider.mjs.map +1 -1
- package/dist/browser-prod/ShopPayButton.mjs +14 -24
- package/dist/browser-prod/ShopPayButton.mjs.map +1 -1
- package/dist/browser-prod/ShopifyProvider.mjs +22 -32
- package/dist/browser-prod/ShopifyProvider.mjs.map +1 -1
- package/dist/browser-prod/Video.mjs +30 -21
- package/dist/browser-prod/Video.mjs.map +1 -1
- package/dist/browser-prod/_virtual/index.mjs +11 -2
- package/dist/browser-prod/_virtual/index.mjs.map +1 -1
- package/dist/browser-prod/_virtual/with-selector.mjs +11 -2
- package/dist/browser-prod/_virtual/with-selector.mjs.map +1 -1
- package/dist/browser-prod/analytics-constants.mjs +43 -0
- package/dist/browser-prod/analytics-constants.mjs.map +1 -0
- package/dist/browser-prod/analytics-schema-custom-storefront-customer-tracking.mjs +145 -0
- package/dist/browser-prod/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -0
- package/dist/browser-prod/analytics-schema-trekkie-storefront-page-view.mjs +58 -0
- package/dist/browser-prod/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -0
- package/dist/browser-prod/analytics-utils.mjs +49 -0
- package/dist/browser-prod/analytics-utils.mjs.map +1 -0
- package/dist/browser-prod/analytics.mjs +158 -0
- package/dist/browser-prod/analytics.mjs.map +1 -0
- package/dist/browser-prod/cart-hooks.mjs +32 -34
- package/dist/browser-prod/cart-hooks.mjs.map +1 -1
- package/dist/browser-prod/cart-queries.mjs +50 -28
- package/dist/browser-prod/cart-queries.mjs.map +1 -1
- package/dist/browser-prod/codegen.helpers.mjs +1 -0
- package/dist/browser-prod/codegen.helpers.mjs.map +1 -1
- package/dist/browser-prod/cookies-utils.mjs +50 -0
- package/dist/browser-prod/cookies-utils.mjs.map +1 -0
- package/dist/browser-prod/flatten-connection.mjs +7 -5
- package/dist/browser-prod/flatten-connection.mjs.map +1 -1
- package/dist/browser-prod/image-size.mjs +8 -8
- package/dist/browser-prod/image-size.mjs.map +1 -1
- package/dist/browser-prod/index.mjs +24 -6
- package/dist/browser-prod/index.mjs.map +1 -1
- package/dist/browser-prod/load-script.mjs +3 -1
- package/dist/browser-prod/load-script.mjs.map +1 -1
- package/dist/browser-prod/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
- package/dist/browser-prod/node_modules/@xstate/react/es/fsm.mjs +2 -2
- package/dist/browser-prod/node_modules/@xstate/react/es/fsm.mjs.map +1 -1
- package/dist/browser-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -1
- package/dist/browser-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -1
- package/dist/browser-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -1
- package/dist/browser-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -1
- package/dist/browser-prod/node_modules/use-sync-external-store/shim/index.mjs +3 -3
- package/dist/browser-prod/node_modules/use-sync-external-store/shim/with-selector.mjs +1 -1
- package/dist/browser-prod/{metafield-parser.mjs → parse-metafield.mjs} +20 -12
- package/dist/browser-prod/parse-metafield.mjs.map +1 -0
- package/dist/browser-prod/storefront-api-constants.mjs +1 -1
- package/dist/browser-prod/storefront-api-constants.mjs.map +1 -1
- package/dist/browser-prod/storefront-client.mjs +27 -27
- package/dist/browser-prod/storefront-client.mjs.map +1 -1
- package/dist/browser-prod/useCartAPIStateMachine.mjs +120 -80
- package/dist/browser-prod/useCartAPIStateMachine.mjs.map +1 -1
- package/dist/browser-prod/useCartActions.mjs +150 -109
- package/dist/browser-prod/useCartActions.mjs.map +1 -1
- package/dist/browser-prod/useMoney.mjs +63 -36
- package/dist/browser-prod/useMoney.mjs.map +1 -1
- package/dist/browser-prod/useShopifyCookies.mjs +41 -0
- package/dist/browser-prod/useShopifyCookies.mjs.map +1 -0
- package/dist/node-dev/AddToCartButton.js +44 -41
- package/dist/node-dev/AddToCartButton.js.map +1 -1
- package/dist/node-dev/AddToCartButton.mjs +43 -40
- package/dist/node-dev/AddToCartButton.mjs.map +1 -1
- package/dist/node-dev/BaseButton.js +14 -16
- package/dist/node-dev/BaseButton.js.map +1 -1
- package/dist/node-dev/BaseButton.mjs +13 -15
- package/dist/node-dev/BaseButton.mjs.map +1 -1
- package/dist/node-dev/BuyNowButton.js +20 -18
- package/dist/node-dev/BuyNowButton.js.map +1 -1
- package/dist/node-dev/BuyNowButton.mjs +19 -17
- package/dist/node-dev/BuyNowButton.mjs.map +1 -1
- package/dist/node-dev/CartCheckoutButton.js +13 -16
- package/dist/node-dev/CartCheckoutButton.js.map +1 -1
- package/dist/node-dev/CartCheckoutButton.mjs +12 -15
- package/dist/node-dev/CartCheckoutButton.mjs.map +1 -1
- package/dist/node-dev/CartCost.js +25 -0
- package/dist/node-dev/CartCost.js.map +1 -0
- package/dist/node-dev/CartCost.mjs +25 -0
- package/dist/node-dev/CartCost.mjs.map +1 -0
- package/dist/node-dev/CartLinePrice.js +21 -0
- package/dist/node-dev/CartLinePrice.js.map +1 -0
- package/dist/node-dev/CartLinePrice.mjs +21 -0
- package/dist/node-dev/CartLinePrice.mjs.map +1 -0
- package/dist/node-dev/CartLineProvider.js +22 -0
- package/dist/node-dev/CartLineProvider.js.map +1 -0
- package/dist/node-dev/CartLineProvider.mjs +22 -0
- package/dist/node-dev/CartLineProvider.mjs.map +1 -0
- package/dist/node-dev/CartLineQuantity.js +12 -0
- package/dist/node-dev/CartLineQuantity.js.map +1 -0
- package/dist/node-dev/CartLineQuantity.mjs +12 -0
- package/dist/node-dev/CartLineQuantity.mjs.map +1 -0
- package/dist/node-dev/CartLineQuantityAdjustButton.js +48 -0
- package/dist/node-dev/CartLineQuantityAdjustButton.js.map +1 -0
- package/dist/node-dev/CartLineQuantityAdjustButton.mjs +48 -0
- package/dist/node-dev/CartLineQuantityAdjustButton.mjs.map +1 -0
- package/dist/node-dev/CartProvider.js +75 -69
- package/dist/node-dev/CartProvider.js.map +1 -1
- package/dist/node-dev/CartProvider.mjs +74 -68
- package/dist/node-dev/CartProvider.mjs.map +1 -1
- package/dist/node-dev/ExternalVideo.js +14 -12
- package/dist/node-dev/ExternalVideo.js.map +1 -1
- package/dist/node-dev/ExternalVideo.mjs +13 -11
- package/dist/node-dev/ExternalVideo.mjs.map +1 -1
- package/dist/node-dev/Image.js +42 -31
- package/dist/node-dev/Image.js.map +1 -1
- package/dist/node-dev/Image.mjs +41 -30
- package/dist/node-dev/Image.mjs.map +1 -1
- package/dist/node-dev/MediaFile.js +30 -22
- package/dist/node-dev/MediaFile.js.map +1 -1
- package/dist/node-dev/MediaFile.mjs +29 -21
- package/dist/node-dev/MediaFile.mjs.map +1 -1
- package/dist/node-dev/ModelViewer.js +139 -77
- package/dist/node-dev/ModelViewer.js.map +1 -1
- package/dist/node-dev/ModelViewer.mjs +138 -76
- package/dist/node-dev/ModelViewer.mjs.map +1 -1
- package/dist/node-dev/Money.js +13 -10
- package/dist/node-dev/Money.js.map +1 -1
- package/dist/node-dev/Money.mjs +12 -9
- package/dist/node-dev/Money.mjs.map +1 -1
- package/dist/node-dev/ProductPrice.js +13 -18
- package/dist/node-dev/ProductPrice.js.map +1 -1
- package/dist/node-dev/ProductPrice.mjs +12 -17
- package/dist/node-dev/ProductPrice.mjs.map +1 -1
- package/dist/node-dev/ProductProvider.js +103 -74
- package/dist/node-dev/ProductProvider.js.map +1 -1
- package/dist/node-dev/ProductProvider.mjs +102 -73
- package/dist/node-dev/ProductProvider.mjs.map +1 -1
- package/dist/node-dev/ShopPayButton.js +14 -24
- package/dist/node-dev/ShopPayButton.js.map +1 -1
- package/dist/node-dev/ShopPayButton.mjs +14 -24
- package/dist/node-dev/ShopPayButton.mjs.map +1 -1
- package/dist/node-dev/ShopifyProvider.js +23 -39
- package/dist/node-dev/ShopifyProvider.js.map +1 -1
- package/dist/node-dev/ShopifyProvider.mjs +22 -38
- package/dist/node-dev/ShopifyProvider.mjs.map +1 -1
- package/dist/node-dev/Video.js +31 -22
- package/dist/node-dev/Video.js.map +1 -1
- package/dist/node-dev/Video.mjs +30 -21
- package/dist/node-dev/Video.mjs.map +1 -1
- package/dist/node-dev/_virtual/index.js +11 -3
- package/dist/node-dev/_virtual/index.js.map +1 -1
- package/dist/node-dev/_virtual/index.mjs +11 -2
- package/dist/node-dev/_virtual/index.mjs.map +1 -1
- package/dist/node-dev/_virtual/use-sync-external-store-shim.development.js +1 -1
- package/dist/node-dev/_virtual/use-sync-external-store-shim.production.min.js +1 -1
- package/dist/node-dev/_virtual/with-selector.development.js +1 -1
- package/dist/node-dev/_virtual/with-selector.js +11 -3
- package/dist/node-dev/_virtual/with-selector.js.map +1 -1
- package/dist/node-dev/_virtual/with-selector.mjs +11 -2
- package/dist/node-dev/_virtual/with-selector.mjs.map +1 -1
- package/dist/node-dev/_virtual/with-selector.production.min.js +1 -1
- package/dist/node-dev/analytics-constants.js +43 -0
- package/dist/node-dev/analytics-constants.js.map +1 -0
- package/dist/node-dev/analytics-constants.mjs +43 -0
- package/dist/node-dev/analytics-constants.mjs.map +1 -0
- package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.js +145 -0
- package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.js.map +1 -0
- package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.mjs +145 -0
- package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -0
- package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.js +58 -0
- package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.js.map +1 -0
- package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.mjs +58 -0
- package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -0
- package/dist/node-dev/analytics-utils.js +49 -0
- package/dist/node-dev/analytics-utils.js.map +1 -0
- package/dist/node-dev/analytics-utils.mjs +49 -0
- package/dist/node-dev/analytics-utils.mjs.map +1 -0
- package/dist/node-dev/analytics.js +159 -0
- package/dist/node-dev/analytics.js.map +1 -0
- package/dist/node-dev/analytics.mjs +159 -0
- package/dist/node-dev/analytics.mjs.map +1 -0
- package/dist/node-dev/cart-constants.js +1 -1
- package/dist/node-dev/cart-hooks.js +32 -34
- package/dist/node-dev/cart-hooks.js.map +1 -1
- package/dist/node-dev/cart-hooks.mjs +32 -34
- package/dist/node-dev/cart-hooks.mjs.map +1 -1
- package/dist/node-dev/cart-queries.js +51 -29
- package/dist/node-dev/cart-queries.js.map +1 -1
- package/dist/node-dev/cart-queries.mjs +50 -28
- package/dist/node-dev/cart-queries.mjs.map +1 -1
- package/dist/node-dev/codegen.helpers.js +2 -1
- package/dist/node-dev/codegen.helpers.js.map +1 -1
- package/dist/node-dev/codegen.helpers.mjs +1 -0
- package/dist/node-dev/codegen.helpers.mjs.map +1 -1
- package/dist/node-dev/cookies-utils.js +50 -0
- package/dist/node-dev/cookies-utils.js.map +1 -0
- package/dist/node-dev/cookies-utils.mjs +50 -0
- package/dist/node-dev/cookies-utils.mjs.map +1 -0
- package/dist/node-dev/flatten-connection.js +8 -6
- package/dist/node-dev/flatten-connection.js.map +1 -1
- package/dist/node-dev/flatten-connection.mjs +7 -5
- package/dist/node-dev/flatten-connection.mjs.map +1 -1
- package/dist/node-dev/image-size.js +9 -9
- package/dist/node-dev/image-size.js.map +1 -1
- package/dist/node-dev/image-size.mjs +8 -8
- package/dist/node-dev/image-size.mjs.map +1 -1
- package/dist/node-dev/index.js +25 -7
- package/dist/node-dev/index.js.map +1 -1
- package/dist/node-dev/index.mjs +24 -6
- package/dist/node-dev/index.mjs.map +1 -1
- package/dist/node-dev/load-script.js +4 -2
- package/dist/node-dev/load-script.js.map +1 -1
- package/dist/node-dev/load-script.mjs +3 -1
- package/dist/node-dev/load-script.mjs.map +1 -1
- package/dist/node-dev/node_modules/@xstate/fsm/es/index.js +1 -1
- package/dist/node-dev/node_modules/@xstate/fsm/es/index.js.map +1 -1
- package/dist/node-dev/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
- package/dist/node-dev/node_modules/@xstate/react/es/fsm.js +2 -2
- package/dist/node-dev/node_modules/@xstate/react/es/fsm.js.map +1 -1
- package/dist/node-dev/node_modules/@xstate/react/es/fsm.mjs +2 -2
- package/dist/node-dev/node_modules/@xstate/react/es/fsm.mjs.map +1 -1
- package/dist/node-dev/node_modules/@xstate/react/es/useConstant.js +2 -4
- package/dist/node-dev/node_modules/@xstate/react/es/useConstant.js.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +2 -4
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +2 -4
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +2 -4
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js +2 -4
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/shim/index.js +4 -4
- package/dist/node-dev/node_modules/use-sync-external-store/shim/index.mjs +3 -3
- package/dist/node-dev/node_modules/use-sync-external-store/shim/with-selector.js +1 -1
- package/dist/node-dev/node_modules/use-sync-external-store/shim/with-selector.mjs +1 -1
- package/dist/node-dev/{metafield-parser.js → parse-metafield.js} +21 -13
- package/dist/node-dev/parse-metafield.js.map +1 -0
- package/dist/node-dev/{metafield-parser.mjs → parse-metafield.mjs} +20 -12
- package/dist/node-dev/parse-metafield.mjs.map +1 -0
- package/dist/node-dev/storefront-api-constants.js +2 -2
- package/dist/node-dev/storefront-api-constants.js.map +1 -1
- package/dist/node-dev/storefront-api-constants.mjs +1 -1
- package/dist/node-dev/storefront-api-constants.mjs.map +1 -1
- package/dist/node-dev/storefront-client.js +28 -28
- package/dist/node-dev/storefront-client.js.map +1 -1
- package/dist/node-dev/storefront-client.mjs +27 -27
- package/dist/node-dev/storefront-client.mjs.map +1 -1
- package/dist/node-dev/useCartAPIStateMachine.js +121 -81
- package/dist/node-dev/useCartAPIStateMachine.js.map +1 -1
- package/dist/node-dev/useCartAPIStateMachine.mjs +120 -80
- package/dist/node-dev/useCartAPIStateMachine.mjs.map +1 -1
- package/dist/node-dev/useCartActions.js +151 -110
- package/dist/node-dev/useCartActions.js.map +1 -1
- package/dist/node-dev/useCartActions.mjs +150 -109
- package/dist/node-dev/useCartActions.mjs.map +1 -1
- package/dist/node-dev/useMoney.js +64 -37
- package/dist/node-dev/useMoney.js.map +1 -1
- package/dist/node-dev/useMoney.mjs +63 -36
- package/dist/node-dev/useMoney.mjs.map +1 -1
- package/dist/node-dev/useShopifyCookies.js +41 -0
- package/dist/node-dev/useShopifyCookies.js.map +1 -0
- package/dist/node-dev/useShopifyCookies.mjs +41 -0
- package/dist/node-dev/useShopifyCookies.mjs.map +1 -0
- package/dist/node-prod/AddToCartButton.js +44 -41
- package/dist/node-prod/AddToCartButton.js.map +1 -1
- package/dist/node-prod/AddToCartButton.mjs +43 -40
- package/dist/node-prod/AddToCartButton.mjs.map +1 -1
- package/dist/node-prod/BaseButton.js +14 -16
- package/dist/node-prod/BaseButton.js.map +1 -1
- package/dist/node-prod/BaseButton.mjs +13 -15
- package/dist/node-prod/BaseButton.mjs.map +1 -1
- package/dist/node-prod/BuyNowButton.js +20 -18
- package/dist/node-prod/BuyNowButton.js.map +1 -1
- package/dist/node-prod/BuyNowButton.mjs +19 -17
- package/dist/node-prod/BuyNowButton.mjs.map +1 -1
- package/dist/node-prod/CartCheckoutButton.js +13 -16
- package/dist/node-prod/CartCheckoutButton.js.map +1 -1
- package/dist/node-prod/CartCheckoutButton.mjs +12 -15
- package/dist/node-prod/CartCheckoutButton.mjs.map +1 -1
- package/dist/node-prod/CartCost.js +25 -0
- package/dist/node-prod/CartCost.js.map +1 -0
- package/dist/node-prod/CartCost.mjs +25 -0
- package/dist/node-prod/CartCost.mjs.map +1 -0
- package/dist/node-prod/CartLinePrice.js +18 -0
- package/dist/node-prod/CartLinePrice.js.map +1 -0
- package/dist/node-prod/CartLinePrice.mjs +18 -0
- package/dist/node-prod/CartLinePrice.mjs.map +1 -0
- package/dist/node-prod/CartLineProvider.js +22 -0
- package/dist/node-prod/CartLineProvider.js.map +1 -0
- package/dist/node-prod/CartLineProvider.mjs +22 -0
- package/dist/node-prod/CartLineProvider.mjs.map +1 -0
- package/dist/node-prod/CartLineQuantity.js +12 -0
- package/dist/node-prod/CartLineQuantity.js.map +1 -0
- package/dist/node-prod/CartLineQuantity.mjs +12 -0
- package/dist/node-prod/CartLineQuantity.mjs.map +1 -0
- package/dist/node-prod/CartLineQuantityAdjustButton.js +48 -0
- package/dist/node-prod/CartLineQuantityAdjustButton.js.map +1 -0
- package/dist/node-prod/CartLineQuantityAdjustButton.mjs +48 -0
- package/dist/node-prod/CartLineQuantityAdjustButton.mjs.map +1 -0
- package/dist/node-prod/CartProvider.js +75 -69
- package/dist/node-prod/CartProvider.js.map +1 -1
- package/dist/node-prod/CartProvider.mjs +74 -68
- package/dist/node-prod/CartProvider.mjs.map +1 -1
- package/dist/node-prod/ExternalVideo.js +14 -12
- package/dist/node-prod/ExternalVideo.js.map +1 -1
- package/dist/node-prod/ExternalVideo.mjs +13 -11
- package/dist/node-prod/ExternalVideo.mjs.map +1 -1
- package/dist/node-prod/Image.js +36 -29
- package/dist/node-prod/Image.js.map +1 -1
- package/dist/node-prod/Image.mjs +35 -28
- package/dist/node-prod/Image.mjs.map +1 -1
- package/dist/node-prod/MediaFile.js +30 -22
- package/dist/node-prod/MediaFile.js.map +1 -1
- package/dist/node-prod/MediaFile.mjs +29 -21
- package/dist/node-prod/MediaFile.mjs.map +1 -1
- package/dist/node-prod/ModelViewer.js +136 -76
- package/dist/node-prod/ModelViewer.js.map +1 -1
- package/dist/node-prod/ModelViewer.mjs +135 -75
- package/dist/node-prod/ModelViewer.mjs.map +1 -1
- package/dist/node-prod/Money.js +13 -10
- package/dist/node-prod/Money.js.map +1 -1
- package/dist/node-prod/Money.mjs +12 -9
- package/dist/node-prod/Money.mjs.map +1 -1
- package/dist/node-prod/ProductPrice.js +13 -18
- package/dist/node-prod/ProductPrice.js.map +1 -1
- package/dist/node-prod/ProductPrice.mjs +12 -17
- package/dist/node-prod/ProductPrice.mjs.map +1 -1
- package/dist/node-prod/ProductProvider.js +103 -74
- package/dist/node-prod/ProductProvider.js.map +1 -1
- package/dist/node-prod/ProductProvider.mjs +102 -73
- package/dist/node-prod/ProductProvider.mjs.map +1 -1
- package/dist/node-prod/ShopPayButton.js +14 -24
- package/dist/node-prod/ShopPayButton.js.map +1 -1
- package/dist/node-prod/ShopPayButton.mjs +14 -24
- package/dist/node-prod/ShopPayButton.mjs.map +1 -1
- package/dist/node-prod/ShopifyProvider.js +23 -33
- package/dist/node-prod/ShopifyProvider.js.map +1 -1
- package/dist/node-prod/ShopifyProvider.mjs +22 -32
- package/dist/node-prod/ShopifyProvider.mjs.map +1 -1
- package/dist/node-prod/Video.js +31 -22
- package/dist/node-prod/Video.js.map +1 -1
- package/dist/node-prod/Video.mjs +30 -21
- package/dist/node-prod/Video.mjs.map +1 -1
- package/dist/node-prod/_virtual/index.js +11 -3
- package/dist/node-prod/_virtual/index.js.map +1 -1
- package/dist/node-prod/_virtual/index.mjs +11 -2
- package/dist/node-prod/_virtual/index.mjs.map +1 -1
- package/dist/node-prod/_virtual/use-sync-external-store-shim.development.js +1 -1
- package/dist/node-prod/_virtual/use-sync-external-store-shim.production.min.js +1 -1
- package/dist/node-prod/_virtual/with-selector.development.js +1 -1
- package/dist/node-prod/_virtual/with-selector.js +11 -3
- package/dist/node-prod/_virtual/with-selector.js.map +1 -1
- package/dist/node-prod/_virtual/with-selector.mjs +11 -2
- package/dist/node-prod/_virtual/with-selector.mjs.map +1 -1
- package/dist/node-prod/_virtual/with-selector.production.min.js +1 -1
- package/dist/node-prod/analytics-constants.js +43 -0
- package/dist/node-prod/analytics-constants.js.map +1 -0
- package/dist/node-prod/analytics-constants.mjs +43 -0
- package/dist/node-prod/analytics-constants.mjs.map +1 -0
- package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.js +145 -0
- package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.js.map +1 -0
- package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.mjs +145 -0
- package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -0
- package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.js +58 -0
- package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.js.map +1 -0
- package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.mjs +58 -0
- package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -0
- package/dist/node-prod/analytics-utils.js +49 -0
- package/dist/node-prod/analytics-utils.js.map +1 -0
- package/dist/node-prod/analytics-utils.mjs +49 -0
- package/dist/node-prod/analytics-utils.mjs.map +1 -0
- package/dist/node-prod/analytics.js +158 -0
- package/dist/node-prod/analytics.js.map +1 -0
- package/dist/node-prod/analytics.mjs +158 -0
- package/dist/node-prod/analytics.mjs.map +1 -0
- package/dist/node-prod/cart-constants.js +1 -1
- package/dist/node-prod/cart-hooks.js +32 -34
- package/dist/node-prod/cart-hooks.js.map +1 -1
- package/dist/node-prod/cart-hooks.mjs +32 -34
- package/dist/node-prod/cart-hooks.mjs.map +1 -1
- package/dist/node-prod/cart-queries.js +51 -29
- package/dist/node-prod/cart-queries.js.map +1 -1
- package/dist/node-prod/cart-queries.mjs +50 -28
- package/dist/node-prod/cart-queries.mjs.map +1 -1
- package/dist/node-prod/codegen.helpers.js +2 -1
- package/dist/node-prod/codegen.helpers.js.map +1 -1
- package/dist/node-prod/codegen.helpers.mjs +1 -0
- package/dist/node-prod/codegen.helpers.mjs.map +1 -1
- package/dist/node-prod/cookies-utils.js +50 -0
- package/dist/node-prod/cookies-utils.js.map +1 -0
- package/dist/node-prod/cookies-utils.mjs +50 -0
- package/dist/node-prod/cookies-utils.mjs.map +1 -0
- package/dist/node-prod/flatten-connection.js +8 -6
- package/dist/node-prod/flatten-connection.js.map +1 -1
- package/dist/node-prod/flatten-connection.mjs +7 -5
- package/dist/node-prod/flatten-connection.mjs.map +1 -1
- package/dist/node-prod/image-size.js +9 -9
- package/dist/node-prod/image-size.js.map +1 -1
- package/dist/node-prod/image-size.mjs +8 -8
- package/dist/node-prod/image-size.mjs.map +1 -1
- package/dist/node-prod/index.js +25 -7
- package/dist/node-prod/index.js.map +1 -1
- package/dist/node-prod/index.mjs +24 -6
- package/dist/node-prod/index.mjs.map +1 -1
- package/dist/node-prod/load-script.js +4 -2
- package/dist/node-prod/load-script.js.map +1 -1
- package/dist/node-prod/load-script.mjs +3 -1
- package/dist/node-prod/load-script.mjs.map +1 -1
- package/dist/node-prod/node_modules/@xstate/fsm/es/index.js +1 -1
- package/dist/node-prod/node_modules/@xstate/fsm/es/index.js.map +1 -1
- package/dist/node-prod/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
- package/dist/node-prod/node_modules/@xstate/react/es/fsm.js +2 -2
- package/dist/node-prod/node_modules/@xstate/react/es/fsm.js.map +1 -1
- package/dist/node-prod/node_modules/@xstate/react/es/fsm.mjs +2 -2
- package/dist/node-prod/node_modules/@xstate/react/es/fsm.mjs.map +1 -1
- package/dist/node-prod/node_modules/@xstate/react/es/useConstant.js +2 -4
- package/dist/node-prod/node_modules/@xstate/react/es/useConstant.js.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +2 -4
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +2 -4
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +2 -4
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js +2 -4
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/shim/index.js +4 -4
- package/dist/node-prod/node_modules/use-sync-external-store/shim/index.mjs +3 -3
- package/dist/node-prod/node_modules/use-sync-external-store/shim/with-selector.js +1 -1
- package/dist/node-prod/node_modules/use-sync-external-store/shim/with-selector.mjs +1 -1
- package/dist/node-prod/{metafield-parser.js → parse-metafield.js} +21 -13
- package/dist/node-prod/parse-metafield.js.map +1 -0
- package/dist/node-prod/{metafield-parser.mjs → parse-metafield.mjs} +20 -12
- package/dist/node-prod/parse-metafield.mjs.map +1 -0
- package/dist/node-prod/storefront-api-constants.js +2 -2
- package/dist/node-prod/storefront-api-constants.js.map +1 -1
- package/dist/node-prod/storefront-api-constants.mjs +1 -1
- package/dist/node-prod/storefront-api-constants.mjs.map +1 -1
- package/dist/node-prod/storefront-client.js +28 -28
- package/dist/node-prod/storefront-client.js.map +1 -1
- package/dist/node-prod/storefront-client.mjs +27 -27
- package/dist/node-prod/storefront-client.mjs.map +1 -1
- package/dist/node-prod/useCartAPIStateMachine.js +121 -81
- package/dist/node-prod/useCartAPIStateMachine.js.map +1 -1
- package/dist/node-prod/useCartAPIStateMachine.mjs +120 -80
- package/dist/node-prod/useCartAPIStateMachine.mjs.map +1 -1
- package/dist/node-prod/useCartActions.js +151 -110
- package/dist/node-prod/useCartActions.js.map +1 -1
- package/dist/node-prod/useCartActions.mjs +150 -109
- package/dist/node-prod/useCartActions.mjs.map +1 -1
- package/dist/node-prod/useMoney.js +64 -37
- package/dist/node-prod/useMoney.js.map +1 -1
- package/dist/node-prod/useMoney.mjs +63 -36
- package/dist/node-prod/useMoney.mjs.map +1 -1
- package/dist/node-prod/useShopifyCookies.js +41 -0
- package/dist/node-prod/useShopifyCookies.js.map +1 -0
- package/dist/node-prod/useShopifyCookies.mjs +41 -0
- package/dist/node-prod/useShopifyCookies.mjs.map +1 -0
- package/dist/types/AddToCartButton.d.ts +7 -3
- package/dist/types/BaseButton.d.ts +2 -2
- package/dist/types/BuyNowButton.d.ts +10 -4
- package/dist/types/CartCheckoutButton.d.ts +9 -6
- package/dist/types/CartCost.d.ts +10 -6
- package/dist/types/CartLinePrice.d.ts +19 -5
- package/dist/types/CartLineProvider.d.ts +18 -10
- package/dist/types/CartLineQuantity.d.ts +13 -0
- package/dist/types/CartLineQuantityAdjustButton.d.ts +13 -0
- package/dist/types/CartProvider.d.ts +13 -3
- package/dist/types/ExternalVideo.d.ts +2 -3
- package/dist/types/Image.d.ts +5 -3
- package/dist/types/MediaFile.d.ts +12 -11
- package/dist/types/ModelViewer.d.ts +2 -2
- package/dist/types/Money.d.ts +2 -3
- package/dist/types/ProductPrice.d.ts +4 -2
- package/dist/types/ProductProvider.d.ts +1 -1
- package/dist/types/ShopPayButton.d.ts +10 -10
- package/dist/types/ShopifyProvider.d.ts +42 -43
- package/dist/types/analytics-constants.d.ts +48 -0
- package/dist/types/analytics-schema-custom-storefront-customer-tracking.d.ts +3 -0
- package/dist/types/analytics-schema-trekkie-storefront-page-view.d.ts +2 -0
- package/dist/types/analytics-types.d.ts +157 -0
- package/dist/types/analytics-utils.d.ts +36 -0
- package/dist/types/analytics.d.ts +9 -0
- package/dist/types/cart-queries.d.ts +1 -1
- package/dist/types/cookies-utils.d.ts +4 -0
- package/dist/types/flatten-connection.d.ts +32 -8
- package/dist/types/image-size.d.ts +1 -1
- package/dist/types/index.d.cts +13 -4
- package/dist/types/index.d.ts +13 -4
- package/dist/types/{metafield-parser.d.ts → parse-metafield.d.ts} +11 -9
- package/dist/types/storefront-api-constants.d.ts +1 -1
- package/dist/types/storefront-api-response.types.d.ts +1 -1
- package/dist/types/storefront-api-types.d.ts +121 -2
- package/dist/types/storefront-client.d.ts +14 -14
- package/dist/types/useCartActions.d.ts +1 -1
- package/dist/types/useShopifyCookies.d.ts +14 -0
- package/dist/umd/hydrogen-react.dev.js +1714 -1382
- package/dist/umd/hydrogen-react.dev.js.map +1 -1
- package/dist/umd/hydrogen-react.prod.js +18 -25
- package/dist/umd/hydrogen-react.prod.js.map +1 -1
- package/package.json +34 -19
- package/storefront.schema.json +1 -1
- package/dist/browser-dev/Metafield.mjs +0 -301
- package/dist/browser-dev/Metafield.mjs.map +0 -1
- package/dist/browser-dev/metafield-parser.mjs.map +0 -1
- package/dist/browser-prod/Metafield.mjs +0 -288
- package/dist/browser-prod/Metafield.mjs.map +0 -1
- package/dist/browser-prod/metafield-parser.mjs.map +0 -1
- package/dist/node-dev/Metafield.js +0 -301
- package/dist/node-dev/Metafield.js.map +0 -1
- package/dist/node-dev/Metafield.mjs +0 -301
- package/dist/node-dev/Metafield.mjs.map +0 -1
- package/dist/node-dev/metafield-parser.js.map +0 -1
- package/dist/node-dev/metafield-parser.mjs.map +0 -1
- package/dist/node-prod/Metafield.js +0 -288
- package/dist/node-prod/Metafield.js.map +0 -1
- package/dist/node-prod/Metafield.mjs +0 -288
- package/dist/node-prod/Metafield.mjs.map +0 -1
- package/dist/node-prod/metafield-parser.js.map +0 -1
- package/dist/node-prod/metafield-parser.mjs.map +0 -1
- package/dist/types/Metafield.d.ts +0 -61
package/dist/types/CartCost.d.ts
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
import { Money } from './Money.js';
|
|
2
|
-
|
|
1
|
+
import { Money, type MoneyPropsBase } from './Money.js';
|
|
2
|
+
interface CartCostPropsBase {
|
|
3
3
|
/** A string type that defines the type of cost needed. Valid values: `total`, `subtotal`, `tax`, or `duty`. */
|
|
4
4
|
amountType?: 'total' | 'subtotal' | 'tax' | 'duty';
|
|
5
5
|
/** Any `ReactNode` elements. */
|
|
6
6
|
children?: React.ReactNode;
|
|
7
7
|
}
|
|
8
|
+
type CartCostProps = Omit<React.ComponentProps<typeof Money>, 'data'> & CartCostPropsBase;
|
|
8
9
|
/**
|
|
9
|
-
* The `CartCost` component renders a `Money` component with the
|
|
10
|
-
*
|
|
11
|
-
Depends on `useCart()` and must be a child of `<CartProvider/>`
|
|
10
|
+
* The `CartCost` component renders a `Money` component with the cost associated with the `amountType` prop.
|
|
11
|
+
* If no `amountType` prop is specified, then it defaults to `totalAmount`.
|
|
12
|
+
* Depends on `useCart()` and must be a child of `<CartProvider/>`
|
|
12
13
|
*/
|
|
13
|
-
export declare function CartCost(props:
|
|
14
|
+
export declare function CartCost(props: CartCostProps): JSX.Element | null;
|
|
15
|
+
export interface CartCostPropsForDocs<AsType extends React.ElementType = 'div'> extends Omit<MoneyPropsBase<AsType>, 'data'>, CartCostPropsBase {
|
|
16
|
+
}
|
|
17
|
+
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Money } from './Money.js';
|
|
1
|
+
import { Money, type MoneyPropsBase } from './Money.js';
|
|
2
2
|
import { CartLine } from './storefront-api-types.js';
|
|
3
3
|
import { PartialDeep } from 'type-fest';
|
|
4
|
-
interface
|
|
4
|
+
interface CartLinePricePropsBase {
|
|
5
5
|
/** A [CartLine object](https://shopify.dev/api/storefront/reference/objects/CartLine). */
|
|
6
6
|
data: PartialDeep<CartLine, {
|
|
7
7
|
recurseIntoArrays: true;
|
|
@@ -9,9 +9,23 @@ interface CartLinePriceProps {
|
|
|
9
9
|
/** The type of price. Valid values:`regular` (default) or `compareAt`. */
|
|
10
10
|
priceType?: 'regular' | 'compareAt';
|
|
11
11
|
}
|
|
12
|
+
type CartLinePriceProps = Omit<React.ComponentProps<typeof Money>, 'data'> & CartLinePricePropsBase;
|
|
12
13
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
14
|
+
* @deprecated Use `Money` instead. To migrate, use the `priceType` prop that matches the corresponding property on the `CartLine` object:
|
|
15
|
+
* - `regular`: `cartLine.cost.totalAmount`
|
|
16
|
+
* - `compareAt`: `cartLine.cost.compareAtAmountPerQuantity`
|
|
17
|
+
*
|
|
18
|
+
* For example:
|
|
19
|
+
* ```
|
|
20
|
+
* // before
|
|
21
|
+
* <CartLinePrice data={cartLine} priceType="regular" />
|
|
22
|
+
* // after
|
|
23
|
+
* <Money data={cartLine.cost.totalAmount} />
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* The `CartLinePrice` component renders a `Money` component for the cart line merchandise's price or compare at price.
|
|
15
27
|
*/
|
|
16
|
-
export declare function CartLinePrice(props:
|
|
28
|
+
export declare function CartLinePrice(props: CartLinePriceProps): JSX.Element | null;
|
|
29
|
+
export interface CartLinePricePropsForDocs<AsType extends React.ElementType = 'div'> extends Omit<MoneyPropsBase<AsType>, 'data'>, CartLinePricePropsBase {
|
|
30
|
+
}
|
|
17
31
|
export {};
|
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
-
import { CartLine } from './storefront-api-types.js';
|
|
3
|
-
|
|
2
|
+
import type { CartLine } from './storefront-api-types.js';
|
|
3
|
+
import type { PartialDeep } from 'type-fest';
|
|
4
|
+
type CartLinePartialDeep = PartialDeep<CartLine, {
|
|
5
|
+
recurseIntoArrays: true;
|
|
6
|
+
}>;
|
|
7
|
+
export declare const CartLineContext: import("react").Context<import("type-fest/source/partial-deep.js").PartialObjectDeep<CartLine, {
|
|
8
|
+
recurseIntoArrays: true;
|
|
9
|
+
}> | null>;
|
|
4
10
|
/**
|
|
5
|
-
* The `useCartLine` hook provides access to the
|
|
11
|
+
* The `useCartLine` hook provides access to the [CartLine object](https://shopify.dev/api/storefront/unstable/objects/cartline) from the Storefront API. It must be a descendent of a `CartProvider` component.
|
|
6
12
|
*/
|
|
7
|
-
export declare function useCartLine():
|
|
8
|
-
|
|
9
|
-
* The `CartLineProvider` component creates a context for using a cart line.
|
|
10
|
-
*/
|
|
11
|
-
export declare function CartLineProvider({ children, line, }: {
|
|
13
|
+
export declare function useCartLine(): CartLinePartialDeep;
|
|
14
|
+
type CartLineProviderProps = {
|
|
12
15
|
/** Any `ReactNode` elements. */
|
|
13
16
|
children: ReactNode;
|
|
14
17
|
/** A cart line object. */
|
|
15
|
-
line:
|
|
16
|
-
}
|
|
18
|
+
line: CartLinePartialDeep;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* The `CartLineProvider` component creates a context for using a cart line.
|
|
22
|
+
*/
|
|
23
|
+
export declare function CartLineProvider({ children, line, }: CartLineProviderProps): JSX.Element;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ComponentPropsWithoutRef, ElementType } from 'react';
|
|
2
|
+
interface CartLineQuantityBaseProps<ComponentGeneric extends ElementType = 'span'> {
|
|
3
|
+
/** An HTML tag or React Component to be rendered as the base element wrapper. The default is `span`. */
|
|
4
|
+
as?: ComponentGeneric;
|
|
5
|
+
}
|
|
6
|
+
export type CartLineQuantityProps<ComponentGeneric extends ElementType> = CartLineQuantityBaseProps<ComponentGeneric> & Omit<ComponentPropsWithoutRef<ComponentGeneric>, keyof CartLineQuantityBaseProps<ComponentGeneric>>;
|
|
7
|
+
/**
|
|
8
|
+
* The `<CartLineQuantity/>` component renders a `span` (or another element / component that can be customized by the `as` prop) with the cart line's quantity.
|
|
9
|
+
*
|
|
10
|
+
* It must be a descendent of a `<CartLineProvider/>` component, and uses the `useCartLine()` hook internally.
|
|
11
|
+
*/
|
|
12
|
+
export declare function CartLineQuantity<ComponentGeneric extends ElementType = 'span'>(props: CartLineQuantityProps<ComponentGeneric>): JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type BaseButtonProps } from './BaseButton.js';
|
|
2
|
+
interface CartLineQuantityAdjustButtonBaseProps {
|
|
3
|
+
/** The adjustment for a cart line's quantity. Valid values: `increase` (default), `decrease`, or `remove`. */
|
|
4
|
+
adjust?: 'increase' | 'decrease' | 'remove';
|
|
5
|
+
}
|
|
6
|
+
type CartLineQuantityAdjustButtonProps<AsType extends React.ElementType = 'button'> = BaseButtonProps<AsType> & CartLineQuantityAdjustButtonBaseProps;
|
|
7
|
+
/**
|
|
8
|
+
* The `<CartLineQuantityAdjustButton />` component renders a button that adjusts the cart line's quantity when pressed.
|
|
9
|
+
*
|
|
10
|
+
* It must be a descendent of `<CartLineProvider/>` and `<CartProvider/>`.
|
|
11
|
+
*/
|
|
12
|
+
export declare function CartLineQuantityAdjustButton<AsType extends React.ElementType = 'button'>(props: CartLineQuantityAdjustButtonProps<AsType>): JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -6,7 +6,7 @@ export declare const CartContext: import("react").Context<CartWithActions | null
|
|
|
6
6
|
* The `useCart` hook provides access to the cart object. It must be a descendent of a `CartProvider` component.
|
|
7
7
|
*/
|
|
8
8
|
export declare function useCart(): CartWithActions;
|
|
9
|
-
|
|
9
|
+
type CartProviderProps = {
|
|
10
10
|
/** Any `ReactNode` elements. */
|
|
11
11
|
children: React.ReactNode;
|
|
12
12
|
/** Maximum number of cart lines to fetch. Defaults to 250 cart lines. */
|
|
@@ -53,8 +53,18 @@ export declare function CartProvider({ children, numCartLines, onCreate, onLineA
|
|
|
53
53
|
customerAccessToken?: CartBuyerIdentityInput['customerAccessToken'];
|
|
54
54
|
/** The ISO country code for i18n. */
|
|
55
55
|
countryCode?: CountryCode;
|
|
56
|
-
}
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* The `CartProvider` component synchronizes the state of the Storefront API Cart and a customer's cart,
|
|
59
|
+
* and allows you to more easily manipulate the cart by adding, removing, and updating it.
|
|
60
|
+
* It could be placed at the root of your app so that your whole app is able to use the `useCart()` hook anywhere.
|
|
61
|
+
*
|
|
62
|
+
* There are props that trigger when a call to the Storefront API is made, such as `onLineAdd={}` when a line is added to the cart.
|
|
63
|
+
* There are also props that trigger when a call to the Storefront API is completed, such as `onLineAddComplete={}` when the fetch request for adding a line to the cart completes.
|
|
64
|
+
*/
|
|
65
|
+
export declare function CartProvider({ children, numCartLines, onCreate, onLineAdd, onLineRemove, onLineUpdate, onNoteUpdate, onBuyerIdentityUpdate, onAttributesUpdate, onDiscountCodesUpdate, onCreateComplete, onLineAddComplete, onLineRemoveComplete, onLineUpdateComplete, onNoteUpdateComplete, onBuyerIdentityUpdateComplete, onAttributesUpdateComplete, onDiscountCodesUpdateComplete, data: cart, cartFragment, customerAccessToken, countryCode, }: CartProviderProps): JSX.Element;
|
|
57
66
|
/** Check for storage availability funciton obtained from
|
|
58
67
|
* https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API
|
|
59
68
|
*/
|
|
60
|
-
export declare function storageAvailable(type: 'localStorage' | 'sessionStorage'): boolean
|
|
69
|
+
export declare function storageAvailable(type: 'localStorage' | 'sessionStorage'): boolean;
|
|
70
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ExternalVideo as ExternalVideoType } from './storefront-api-types.js';
|
|
2
2
|
import type { PartialDeep } from 'type-fest';
|
|
3
|
-
interface
|
|
3
|
+
interface ExternalVideoBaseProps {
|
|
4
4
|
/**
|
|
5
5
|
* An object with fields that correspond to the Storefront API's [ExternalVideo object](https://shopify.dev/api/storefront/reference/products/externalvideo).
|
|
6
6
|
*/
|
|
@@ -13,8 +13,7 @@ interface BaseProps {
|
|
|
13
13
|
*/
|
|
14
14
|
options?: YouTube | Vimeo;
|
|
15
15
|
}
|
|
16
|
-
type
|
|
17
|
-
export type ExternalVideoProps = Omit<JSX.IntrinsicElements['iframe'], PropsWeControl> & BaseProps;
|
|
16
|
+
export type ExternalVideoProps = Omit<JSX.IntrinsicElements['iframe'], 'src'> & ExternalVideoBaseProps;
|
|
18
17
|
/**
|
|
19
18
|
* The `ExternalVideo` component renders an embedded video for the Storefront
|
|
20
19
|
* API's [ExternalVideo object](https://shopify.dev/api/storefront/reference/products/externalvideo).
|
package/dist/types/Image.d.ts
CHANGED
|
@@ -8,10 +8,12 @@ export type ShopifyLoaderOptions = {
|
|
|
8
8
|
width?: HtmlImageProps['width'] | ImageType['width'];
|
|
9
9
|
height?: HtmlImageProps['height'] | ImageType['height'];
|
|
10
10
|
};
|
|
11
|
-
export type ShopifyLoaderParams = Simplify<ShopifyLoaderOptions &
|
|
11
|
+
export type ShopifyLoaderParams = Simplify<ShopifyLoaderOptions & ImageSrc>;
|
|
12
|
+
type ImageSrc = {
|
|
12
13
|
src: ImageType['url'];
|
|
13
|
-
}
|
|
14
|
-
export type ShopifyImageProps = Omit<HtmlImageProps, 'src'> &
|
|
14
|
+
};
|
|
15
|
+
export type ShopifyImageProps = Omit<HtmlImageProps, 'src'> & ShopifyImageBaseProps;
|
|
16
|
+
type ShopifyImageBaseProps = {
|
|
15
17
|
/** An object with fields that correspond to the Storefront API's
|
|
16
18
|
* [Image object](https://shopify.dev/api/storefront/reference/common-objects/image).
|
|
17
19
|
* The `data` prop is required.
|
|
@@ -11,18 +11,19 @@ export interface MediaFileProps extends BaseProps {
|
|
|
11
11
|
data: PartialDeep<MediaEdgeType['node'], {
|
|
12
12
|
recurseIntoArrays: true;
|
|
13
13
|
}>;
|
|
14
|
-
/** The options for the `Image`, `Video`, or `
|
|
15
|
-
mediaOptions?:
|
|
16
|
-
/** Props that will only apply when an `<Image />` is rendered */
|
|
17
|
-
image?: Omit<ShopifyImageProps, 'data'>;
|
|
18
|
-
/** Props that will only apply when a `<Video />` is rendered */
|
|
19
|
-
video?: Omit<React.ComponentProps<typeof Video>, 'data'>;
|
|
20
|
-
/** Props that will only apply when an `<ExternalVideo />` is rendered */
|
|
21
|
-
externalVideo?: Omit<React.ComponentProps<typeof ExternalVideo>['options'], 'data'>;
|
|
22
|
-
/** Props that will only apply when a `<ModelViewer />` is rendered */
|
|
23
|
-
modelViewer?: Omit<typeof ModelViewer, 'data'>;
|
|
24
|
-
};
|
|
14
|
+
/** The options for the `Image`, `Video`, `ExternalVideo`, or `ModelViewer` components. */
|
|
15
|
+
mediaOptions?: MediaOptions;
|
|
25
16
|
}
|
|
17
|
+
type MediaOptions = {
|
|
18
|
+
/** Props that will only apply when an `<Image />` is rendered */
|
|
19
|
+
image?: Omit<ShopifyImageProps, 'data'>;
|
|
20
|
+
/** Props that will only apply when a `<Video />` is rendered */
|
|
21
|
+
video?: Omit<React.ComponentProps<typeof Video>, 'data'>;
|
|
22
|
+
/** Props that will only apply when an `<ExternalVideo />` is rendered */
|
|
23
|
+
externalVideo?: Omit<React.ComponentProps<typeof ExternalVideo>['options'], 'data'>;
|
|
24
|
+
/** Props that will only apply when a `<ModelViewer />` is rendered */
|
|
25
|
+
modelViewer?: Omit<typeof ModelViewer, 'data'>;
|
|
26
|
+
};
|
|
26
27
|
/**
|
|
27
28
|
* The `MediaFile` component renders the media for the Storefront API's
|
|
28
29
|
* [Media object](https://shopify.dev/api/storefront/reference/products/media). It renders an `Image`, a
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Model3d } from './storefront-api-types.js';
|
|
2
2
|
import type { PartialDeep } from 'type-fest';
|
|
3
3
|
import type { ModelViewerElement } from '@google/model-viewer/lib/model-viewer.js';
|
|
4
|
-
type PropsWeControl = 'src';
|
|
5
4
|
declare global {
|
|
6
5
|
namespace JSX {
|
|
7
6
|
interface IntrinsicElements {
|
|
@@ -13,7 +12,8 @@ declare global {
|
|
|
13
12
|
}
|
|
14
13
|
type ModelViewerProps = Omit<PartialDeep<JSX.IntrinsicElements['model-viewer'], {
|
|
15
14
|
recurseIntoArrays: true;
|
|
16
|
-
}>,
|
|
15
|
+
}>, 'src'> & ModelViewerBaseProps;
|
|
16
|
+
type ModelViewerBaseProps = {
|
|
17
17
|
/** An object with fields that correspond to the Storefront API's [Model3D object](https://shopify.dev/api/storefront/latest/objects/model3d). */
|
|
18
18
|
data: PartialDeep<Model3d, {
|
|
19
19
|
recurseIntoArrays: true;
|
package/dist/types/Money.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
2
|
import type { MoneyV2, UnitPriceMeasurement } from './storefront-api-types.js';
|
|
3
3
|
import type { PartialDeep } from 'type-fest';
|
|
4
|
-
interface
|
|
4
|
+
export interface MoneyPropsBase<ComponentGeneric extends React.ElementType> {
|
|
5
5
|
/** An HTML tag or React Component to be rendered as the base element wrapper. The default is `div`. */
|
|
6
6
|
as?: ComponentGeneric;
|
|
7
7
|
/** An object with fields that correspond to the Storefront API's [MoneyV2 object](https://shopify.dev/api/storefront/reference/common-objects/moneyv2). */
|
|
@@ -19,11 +19,10 @@ interface CustomProps<ComponentGeneric extends React.ElementType> {
|
|
|
19
19
|
/** Customizes the separator between the money output and the measurement output. Used with the `measurement` prop. Defaults to `'/'`. */
|
|
20
20
|
measurementSeparator?: ReactNode;
|
|
21
21
|
}
|
|
22
|
-
export type MoneyProps<ComponentGeneric extends React.ElementType> =
|
|
22
|
+
export type MoneyProps<ComponentGeneric extends React.ElementType> = MoneyPropsBase<ComponentGeneric> & Omit<React.ComponentPropsWithoutRef<ComponentGeneric>, keyof MoneyPropsBase<ComponentGeneric>>;
|
|
23
23
|
/**
|
|
24
24
|
* The `Money` component renders a string of the Storefront API's
|
|
25
25
|
* [MoneyV2 object](https://shopify.dev/api/storefront/reference/common-objects/moneyv2) according to the
|
|
26
26
|
* `locale` in the `ShopifyProvider` component.
|
|
27
27
|
*/
|
|
28
28
|
export declare function Money<ComponentGeneric extends React.ElementType = 'div'>({ data, as, withoutCurrency, withoutTrailingZeros, measurement, measurementSeparator, ...passthroughProps }: MoneyProps<ComponentGeneric>): JSX.Element;
|
|
29
|
-
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Product } from './storefront-api-types.js';
|
|
2
|
-
import { type MoneyProps } from './Money.js';
|
|
2
|
+
import { type MoneyProps, type MoneyPropsBase } from './Money.js';
|
|
3
3
|
import type { PartialDeep } from 'type-fest';
|
|
4
4
|
export interface ProductPriceProps {
|
|
5
|
-
/** A [Product object](https://shopify.dev/api/storefront/reference/products/product). */
|
|
5
|
+
/** A Storefront API [Product object](https://shopify.dev/api/storefront/reference/products/product). */
|
|
6
6
|
data: PartialDeep<Product, {
|
|
7
7
|
recurseIntoArrays: true;
|
|
8
8
|
}>;
|
|
@@ -18,3 +18,5 @@ export interface ProductPriceProps {
|
|
|
18
18
|
* [`priceRange`](https://shopify.dev/api/storefront/reference/products/productpricerange)'s `maxVariantPrice` or `minVariantPrice`, for either the regular price or compare at price range.
|
|
19
19
|
*/
|
|
20
20
|
export declare function ProductPrice<ComponentGeneric extends React.ElementType>(props: ProductPriceProps & Omit<MoneyProps<ComponentGeneric>, 'data' | 'measurement'>): JSX.Element | null;
|
|
21
|
+
export interface ProductPricePropsForDocs<AsType extends React.ElementType = 'div'> extends Omit<MoneyPropsBase<AsType>, 'data' | 'measurement'>, ProductPriceProps {
|
|
22
|
+
}
|
|
@@ -2,7 +2,7 @@ import type { SelectedOption as SelectedOptionType, Product, ProductVariant as P
|
|
|
2
2
|
import type { PartialDeep } from 'type-fest';
|
|
3
3
|
type InitialVariantId = ProductVariantType['id'] | null;
|
|
4
4
|
interface ProductProviderProps {
|
|
5
|
-
/** A [Product object](https://shopify.dev/api/storefront/reference/products/product). */
|
|
5
|
+
/** A Storefront API [Product object](https://shopify.dev/api/storefront/reference/products/product). */
|
|
6
6
|
data: PartialDeep<Product, {
|
|
7
7
|
recurseIntoArrays: true;
|
|
8
8
|
}>;
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
type ShopPayButtonProps =
|
|
1
|
+
type ShopPayButtonProps = ShopPayButtonStyleProps & (ShopPayVariantIds | ShopPayVariantAndQuantities);
|
|
2
|
+
type ShopPayButtonStyleProps = {
|
|
2
3
|
/** A string of classes to apply to the `div` that wraps the Shop Pay button. */
|
|
3
4
|
className?: string;
|
|
4
5
|
/** A string that's applied to the [CSS custom property (variable)](https://developer.mozilla.org/en-US/docs/Web/CSS/--*) `--shop-pay-button-width` for the [Buy with Shop Pay component](https://shopify.dev/custom-storefronts/tools/web-components#buy-with-shop-pay-component). */
|
|
5
6
|
width?: string;
|
|
6
|
-
}
|
|
7
|
-
|
|
7
|
+
};
|
|
8
|
+
type ShopPayVariantIds = {
|
|
9
|
+
/** An array of IDs of the variants to purchase with Shop Pay. This will only ever have a quantity of 1 for each variant. If you want to use other quantities, then use `variantIdsAndQuantities`. */
|
|
8
10
|
variantIds: string[];
|
|
9
11
|
/** An array of variant IDs and quantities to purchase with Shop Pay. */
|
|
10
12
|
variantIdsAndQuantities?: never;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
+
};
|
|
14
|
+
type ShopPayVariantAndQuantities = {
|
|
15
|
+
/** An array of IDs of the variants to purchase with Shop Pay. This will only ever have a quantity of 1 for each variant. If you want to use other quantities, then use `variantIdsAndQuantities`. */
|
|
13
16
|
variantIds?: never;
|
|
14
17
|
/** An array of variant IDs and quantities to purchase with Shop Pay. */
|
|
15
18
|
variantIdsAndQuantities: Array<{
|
|
16
19
|
id: string;
|
|
17
20
|
quantity: number;
|
|
18
21
|
}>;
|
|
19
|
-
}
|
|
22
|
+
};
|
|
20
23
|
declare global {
|
|
21
24
|
namespace JSX {
|
|
22
25
|
interface IntrinsicElements {
|
|
@@ -33,10 +36,7 @@ declare global {
|
|
|
33
36
|
* It relies on the `<ShopProvider>` context provider.
|
|
34
37
|
*/
|
|
35
38
|
export declare function ShopPayButton({ variantIds, className, variantIdsAndQuantities, width, }: ShopPayButtonProps): JSX.Element;
|
|
36
|
-
|
|
37
|
-
* Takes a string in the format of "gid://shopify/ProductVariant/41007289630776" and returns a string of the ID part at the end: "41007289630776"
|
|
38
|
-
*/
|
|
39
|
-
export declare function getIdFromGid(id?: string): string | undefined;
|
|
39
|
+
export declare const InvalidPropsErrorMessage = "You must pass in \"variantIds\" in the form of [\"gid://shopify/ProductVariant/1\"]";
|
|
40
40
|
export declare const MissingPropsErrorMessage = "You must pass in either \"variantIds\" or \"variantIdsAndQuantities\" to ShopPayButton";
|
|
41
41
|
export declare const DoublePropsErrorMessage = "You must provide either a variantIds or variantIdsAndQuantities prop, but not both in the ShopPayButton component";
|
|
42
42
|
export {};
|
|
@@ -3,44 +3,39 @@ import type { LanguageCode, CountryCode } from './storefront-api-types.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* The `<ShopifyProvider/>` component enables use of the `useShop()` hook. The component should wrap your app.
|
|
5
5
|
*/
|
|
6
|
-
export declare function ShopifyProvider({ children, shopifyConfig
|
|
7
|
-
children: ReactNode;
|
|
8
|
-
shopifyConfig: ShopifyContextProps;
|
|
9
|
-
}): JSX.Element;
|
|
6
|
+
export declare function ShopifyProvider({ children, ...shopifyConfig }: ShopifyProviderProps): JSX.Element;
|
|
10
7
|
/**
|
|
11
8
|
* Provides access to the `shopifyConfig` prop of `<ShopifyProvider/>`. Must be a descendent of `<ShopifyProvider/>`.
|
|
12
9
|
*/
|
|
13
10
|
export declare function useShop(): ShopifyContextValue;
|
|
14
|
-
|
|
15
|
-
* Shopify-specific values that are used in various Hydrogen-UI components and hooks.
|
|
16
|
-
*/
|
|
17
|
-
export type ShopifyContextProps = {
|
|
11
|
+
export interface ShopifyProviderBase {
|
|
18
12
|
/** The globally-unique identifier for the Shop */
|
|
19
13
|
storefrontId?: string;
|
|
20
|
-
/** The
|
|
14
|
+
/** The full domain of your Shopify storefront URL (eg: the complete string of `{subdomain}.myshopify.com`). */
|
|
21
15
|
storeDomain: string;
|
|
22
16
|
/** The Storefront API public access token. Refer to the [authentication](https://shopify.dev/api/storefront#authentication) documentation for more details. */
|
|
23
17
|
storefrontToken: string;
|
|
24
|
-
/** The Storefront API version. This should almost always be the same as the version Hydrogen
|
|
18
|
+
/** The Storefront API version. This should almost always be the same as the version Hydrogen React was built for. Learn more about Shopify [API versioning](https://shopify.dev/api/usage/versioning) for more details. */
|
|
25
19
|
storefrontApiVersion: string;
|
|
26
|
-
country?: {
|
|
27
|
-
/**
|
|
28
|
-
* The code designating a country, which generally follows ISO 3166-1 alpha-2 guidelines. If a territory doesn't have a country code value in the `CountryCode` enum, it might be considered a subdivision of another country. For example, the territories associated with Spain are represented by the country code `ES`, and the territories associated with the United States of America are represented by the country code `US`.
|
|
29
|
-
*/
|
|
30
|
-
isoCode: CountryCode;
|
|
31
|
-
};
|
|
32
|
-
language?: {
|
|
33
|
-
/**
|
|
34
|
-
* `ISO 369` language codes supported by Shopify.
|
|
35
|
-
*/
|
|
36
|
-
isoCode: LanguageCode;
|
|
37
|
-
};
|
|
38
20
|
/**
|
|
39
|
-
* The
|
|
21
|
+
* The code designating a country, which generally follows ISO 3166-1 alpha-2 guidelines. If a territory doesn't have a country code value in the `CountryCode` enum, it might be considered a subdivision of another country. For example, the territories associated with Spain are represented by the country code `ES`, and the territories associated with the United States of America are represented by the country code `US`.
|
|
40
22
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
23
|
+
countryIsoCode: CountryCode;
|
|
24
|
+
/**
|
|
25
|
+
* `ISO 369` language codes supported by Shopify.
|
|
26
|
+
*/
|
|
27
|
+
languageIsoCode: LanguageCode;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Shopify-specific values that are used in various Hydrogen React components and hooks.
|
|
31
|
+
*/
|
|
32
|
+
export interface ShopifyProviderProps extends ShopifyProviderBase {
|
|
33
|
+
/** React children to render. */
|
|
34
|
+
children?: ReactNode;
|
|
35
|
+
}
|
|
36
|
+
export interface ShopifyContextValue extends ShopifyProviderBase, ShopifyContextReturn {
|
|
37
|
+
}
|
|
38
|
+
type ShopifyContextReturn = {
|
|
44
39
|
/**
|
|
45
40
|
* Creates the fully-qualified URL to your store's GraphQL endpoint.
|
|
46
41
|
*
|
|
@@ -49,12 +44,7 @@ export type ShopifyContextValue = ShopifyContextProps & {
|
|
|
49
44
|
* - `storeDomain`
|
|
50
45
|
* - `storefrontApiVersion`
|
|
51
46
|
*/
|
|
52
|
-
getStorefrontApiUrl: (props?:
|
|
53
|
-
/** The host name of the domain (eg: `{shop}.myshopify.com`). */
|
|
54
|
-
storeDomain?: string;
|
|
55
|
-
/** The Storefront API version. This should almost always be the same as the version Hydrogen-UI was built for. Learn more about Shopify [API versioning](https://shopify.dev/api/usage/versioning) for more details. */
|
|
56
|
-
storefrontApiVersion?: string;
|
|
57
|
-
}) => string;
|
|
47
|
+
getStorefrontApiUrl: (props?: GetStorefrontApiUrlProps) => string;
|
|
58
48
|
/**
|
|
59
49
|
* Returns an object that contains headers that are needed for each query to Storefront API GraphQL endpoint. This uses the public Storefront API token.
|
|
60
50
|
*
|
|
@@ -64,14 +54,7 @@ export type ShopifyContextValue = ShopifyContextProps & {
|
|
|
64
54
|
* - `storefrontToken`
|
|
65
55
|
*
|
|
66
56
|
*/
|
|
67
|
-
getPublicTokenHeaders: (props:
|
|
68
|
-
/**
|
|
69
|
-
* Customizes which `"content-type"` header is added when using `getPrivateTokenHeaders()` and `getPublicTokenHeaders()`. When fetching with a `JSON.stringify()`-ed `body`, use `"json"`. When fetching with a `body` that is a plain string, use `"graphql"`. Defaults to `"json"`
|
|
70
|
-
*/
|
|
71
|
-
contentType: 'json' | 'graphql';
|
|
72
|
-
/** The Storefront API access token. Refer to the [authentication](https://shopify.dev/api/storefront#authentication) documentation for more details. */
|
|
73
|
-
storefrontToken?: string;
|
|
74
|
-
}) => Record<string, string>;
|
|
57
|
+
getPublicTokenHeaders: (props: GetPublicTokenHeadersProps) => Record<string, string>;
|
|
75
58
|
/**
|
|
76
59
|
* Creates the fully-qualified URL to your myshopify.com domain.
|
|
77
60
|
*
|
|
@@ -79,7 +62,23 @@ export type ShopifyContextValue = ShopifyContextProps & {
|
|
|
79
62
|
*
|
|
80
63
|
* - `storeDomain`
|
|
81
64
|
*/
|
|
82
|
-
getShopifyDomain: (props?:
|
|
83
|
-
|
|
84
|
-
|
|
65
|
+
getShopifyDomain: (props?: GetShopifyDomainProps) => string;
|
|
66
|
+
};
|
|
67
|
+
type GetStorefrontApiUrlProps = {
|
|
68
|
+
/** The host name of the domain (eg: `{shop}.myshopify.com`). */
|
|
69
|
+
storeDomain?: string;
|
|
70
|
+
/** The Storefront API version. This should almost always be the same as the version Hydrogen-UI was built for. Learn more about Shopify [API versioning](https://shopify.dev/api/usage/versioning) for more details. */
|
|
71
|
+
storefrontApiVersion?: string;
|
|
72
|
+
};
|
|
73
|
+
type GetPublicTokenHeadersProps = {
|
|
74
|
+
/**
|
|
75
|
+
* Customizes which `"content-type"` header is added when using `getPrivateTokenHeaders()` and `getPublicTokenHeaders()`. When fetching with a `JSON.stringify()`-ed `body`, use `"json"`. When fetching with a `body` that is a plain string, use `"graphql"`. Defaults to `"json"`
|
|
76
|
+
*/
|
|
77
|
+
contentType: 'json' | 'graphql';
|
|
78
|
+
/** The Storefront API access token. Refer to the [authentication](https://shopify.dev/api/storefront#authentication) documentation for more details. */
|
|
79
|
+
storefrontToken?: string;
|
|
80
|
+
};
|
|
81
|
+
type GetShopifyDomainProps = {
|
|
82
|
+
storeDomain?: string;
|
|
85
83
|
};
|
|
84
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export declare const AnalyticsEventName: AnalyticsEventName;
|
|
2
|
+
export declare const AnalyticsPageType: AnalyticsPageType;
|
|
3
|
+
export declare const ShopifySalesChannel: ShopifySalesChannel;
|
|
4
|
+
export declare const ShopifyAppId: {
|
|
5
|
+
readonly hydrogen: "6167201";
|
|
6
|
+
readonly headless: "12875497473";
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* These duplicated interface declaration is so that we can generate proper documentation
|
|
10
|
+
* for these public facing constants
|
|
11
|
+
*/
|
|
12
|
+
interface AnalyticsEventName {
|
|
13
|
+
/** Page view */
|
|
14
|
+
PAGE_VIEW: 'PAGE_VIEW';
|
|
15
|
+
/** Add to cart */
|
|
16
|
+
ADD_TO_CART: 'ADD_TO_CART';
|
|
17
|
+
}
|
|
18
|
+
interface AnalyticsPageType {
|
|
19
|
+
article: 'article';
|
|
20
|
+
blog: 'blog';
|
|
21
|
+
captcha: 'captcha';
|
|
22
|
+
cart: 'cart';
|
|
23
|
+
collection: 'collection';
|
|
24
|
+
customersAccount: 'customers/account';
|
|
25
|
+
customersActivateAccount: 'customers/activate_account';
|
|
26
|
+
customersAddresses: 'customers/addresses';
|
|
27
|
+
customersLogin: 'customers/login';
|
|
28
|
+
customersOrder: 'customers/order';
|
|
29
|
+
customersRegister: 'customers/register';
|
|
30
|
+
customersResetPassword: 'customers/reset_password';
|
|
31
|
+
giftCard: 'gift_card';
|
|
32
|
+
home: 'index';
|
|
33
|
+
listCollections: 'list-collections';
|
|
34
|
+
forbidden: '403';
|
|
35
|
+
notFound: '404';
|
|
36
|
+
page: 'page';
|
|
37
|
+
password: 'password';
|
|
38
|
+
product: 'product';
|
|
39
|
+
policy: 'policy';
|
|
40
|
+
search: 'search';
|
|
41
|
+
}
|
|
42
|
+
interface ShopifySalesChannel {
|
|
43
|
+
/** Shopify Hydrogen sales channel */
|
|
44
|
+
hydrogen: 'hydrogen';
|
|
45
|
+
/** Shopify Headless sales channel */
|
|
46
|
+
headless: 'headless';
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ShopifyPageViewPayload, ShopifyAddToCartPayload, ShopifyMonorailEvent } from './analytics-types.js';
|
|
2
|
+
export declare function pageView(payload: ShopifyPageViewPayload): ShopifyMonorailEvent[];
|
|
3
|
+
export declare function addToCart(payload: ShopifyAddToCartPayload): ShopifyMonorailEvent[];
|