@shopify/hydrogen 0.23.0 → 0.25.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +173 -0
- package/dist/esnext/components/AddToCartButton/AddToCartButton.client.d.ts +2 -5
- package/dist/esnext/components/AddToCartButton/AddToCartButton.client.js +15 -14
- package/dist/esnext/components/BaseButton/BaseButton.client.d.ts +14 -0
- package/dist/esnext/components/BaseButton/BaseButton.client.js +15 -0
- package/dist/esnext/components/BaseButton/index.d.ts +1 -0
- package/dist/esnext/components/BaseButton/index.js +1 -0
- package/dist/esnext/components/BuyNowButton/BuyNowButton.client.d.ts +2 -5
- package/dist/esnext/components/BuyNowButton/BuyNowButton.client.js +5 -4
- package/dist/esnext/components/CartEstimatedCost/CartEstimatedCost.client.js +4 -4
- package/dist/esnext/components/CartLinePrice/CartLinePrice.client.js +5 -8
- package/dist/esnext/components/CartLineProvider/context.d.ts +10 -0
- package/dist/esnext/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.d.ts +4 -5
- package/dist/esnext/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.js +16 -14
- package/dist/esnext/components/CartLines/CartLines.client.js +1 -1
- package/dist/esnext/components/CartProvider/CartProvider.client.js +31 -38
- package/dist/esnext/components/CartProvider/cart-queries.d.ts +1 -1
- package/dist/esnext/components/CartProvider/cart-queries.js +11 -0
- package/dist/esnext/components/CartProvider/graphql/CartAttributesUpdateMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartBuyerIdentityUpdateMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartCreateMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartDiscountCodesUpdateMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartFragment.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartLineAddMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartLineRemoveMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartLineUpdateMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartNoteUpdateMutation.d.ts +11 -1
- package/dist/esnext/components/CartProvider/graphql/CartQuery.d.ts +11 -1
- package/dist/esnext/components/CartProvider/hooks.client.js +5 -8
- package/dist/esnext/components/CartProvider/types.d.ts +2 -0
- package/dist/esnext/components/ExternalVideo/ExternalVideo.js +1 -1
- package/dist/esnext/components/Image/Image.d.ts +13 -0
- package/dist/esnext/components/Image/Image.js +46 -20
- package/dist/esnext/components/Link/Link.client.js +1 -1
- package/dist/esnext/components/LocalizationProvider/LocalizationProvider.server.js +2 -2
- package/dist/esnext/components/Metafield/Metafield.client.d.ts +6 -10
- package/dist/esnext/components/Metafield/Metafield.client.js +67 -31
- package/dist/esnext/components/Metafield/components/StarRating/StarRating.js +1 -1
- package/dist/esnext/components/ModelViewer/ModelViewer.client.js +2 -3
- package/dist/esnext/components/Money/Money.client.js +1 -1
- package/dist/esnext/components/ProductOptionsProvider/ProductOptionsProvider.client.js +22 -29
- package/dist/esnext/components/ProductPrice/ProductPrice.client.js +7 -7
- package/dist/esnext/components/Seo/CollectionSeo.client.js +2 -3
- package/dist/esnext/components/Seo/DefaultPageSeo.client.js +3 -3
- package/dist/esnext/components/Seo/NoIndexSeo.client.js +2 -2
- package/dist/esnext/components/Seo/PageSeo.client.js +2 -3
- package/dist/esnext/components/Seo/ProductSeo.client.js +9 -10
- package/dist/esnext/components/ShopPayButton/ShopPayButton.client.js +2 -3
- package/dist/esnext/components/Video/Video.js +2 -3
- package/dist/esnext/config.d.ts +4 -0
- package/dist/esnext/config.js +4 -0
- package/dist/esnext/constants.d.ts +2 -0
- package/dist/esnext/constants.js +2 -0
- package/dist/esnext/entry-client.js +5 -19
- package/dist/esnext/entry-server.d.ts +1 -17
- package/dist/esnext/entry-server.js +191 -50
- package/dist/esnext/foundation/Analytics/ClientAnalytics.js +4 -4
- package/dist/esnext/foundation/Analytics/ServerAnalyticsRoute.d.ts +4 -0
- package/dist/esnext/foundation/Analytics/{ServerAnalyticsRoute.server.js → ServerAnalyticsRoute.js} +5 -4
- package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.d.ts +3 -0
- package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.js +27 -0
- package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.d.ts +3 -0
- package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.js +21 -0
- package/dist/esnext/foundation/Analytics/connectors/Shopify/ShopifyAnalytics.server.js +2 -3
- package/dist/esnext/foundation/BuiltInRoutes/BuiltInRoutes.d.ts +2 -0
- package/dist/esnext/foundation/BuiltInRoutes/BuiltInRoutes.js +23 -0
- package/dist/esnext/foundation/BuiltInRoutes/healthCheck.d.ts +1 -0
- package/dist/esnext/foundation/BuiltInRoutes/healthCheck.js +3 -0
- package/dist/esnext/foundation/Cache/cache-sub-request.js +2 -2
- package/dist/esnext/foundation/Cache/cache.js +2 -2
- package/dist/esnext/foundation/Cache/strategies/index.d.ts +4 -7
- package/dist/esnext/foundation/Cache/strategies/index.js +7 -49
- package/dist/esnext/foundation/Cookie/Cookie.js +5 -0
- package/dist/esnext/foundation/DevTools/DevTools.client.d.ts +3 -0
- package/dist/esnext/foundation/DevTools/DevTools.client.js +17 -0
- package/dist/esnext/foundation/DevTools/DevTools.server.d.ts +1 -0
- package/dist/esnext/foundation/DevTools/DevTools.server.js +14 -0
- package/dist/esnext/foundation/DevTools/components/GraphQL.client.d.ts +1 -0
- package/dist/esnext/foundation/DevTools/components/GraphQL.client.js +25 -0
- package/dist/esnext/foundation/DevTools/components/Heading.d.ts +5 -0
- package/dist/esnext/foundation/DevTools/components/Heading.js +12 -0
- package/dist/esnext/foundation/DevTools/components/Interface.client.d.ts +11 -0
- package/dist/esnext/foundation/DevTools/components/Interface.client.js +47 -0
- package/dist/esnext/foundation/DevTools/components/Panels.d.ts +8 -0
- package/dist/esnext/foundation/DevTools/components/Panels.js +60 -0
- package/dist/esnext/foundation/DevTools/components/Performance.client.d.ts +14 -0
- package/dist/esnext/foundation/DevTools/components/Performance.client.js +26 -0
- package/dist/esnext/foundation/DevTools/components/Settings.client.d.ts +7 -0
- package/dist/esnext/foundation/DevTools/components/Settings.client.js +20 -0
- package/dist/esnext/foundation/DevTools/components/Table.d.ts +9 -0
- package/dist/esnext/foundation/DevTools/components/Table.js +7 -0
- package/dist/esnext/foundation/DevTools/components/icons.d.ts +2 -0
- package/dist/esnext/foundation/DevTools/components/icons.js +13 -0
- package/dist/esnext/foundation/DevTools/components/index.d.ts +2 -0
- package/dist/esnext/foundation/DevTools/components/index.js +2 -0
- package/dist/esnext/foundation/FileRoutes/FileRoutes.server.js +4 -4
- package/dist/esnext/foundation/Html/Html.js +4 -7
- package/dist/esnext/foundation/HydrogenRequest/HydrogenRequest.server.d.ts +10 -4
- package/dist/esnext/foundation/HydrogenRequest/HydrogenRequest.server.js +69 -11
- package/dist/esnext/foundation/HydrogenResponse/HydrogenResponse.server.d.ts +5 -7
- package/dist/esnext/foundation/HydrogenResponse/HydrogenResponse.server.js +22 -20
- package/dist/esnext/foundation/Router/BrowserRouter.client.js +1 -2
- package/dist/esnext/foundation/ServerRequestProvider/ServerRequestProvider.d.ts +1 -2
- package/dist/esnext/foundation/ServerRequestProvider/ServerRequestProvider.js +17 -22
- package/dist/esnext/foundation/ShopifyProvider/ShopifyProvider.server.js +3 -5
- package/dist/esnext/foundation/fetchSync/server/fetchSync.js +1 -1
- package/dist/esnext/foundation/useNavigate/useNavigate.js +3 -4
- package/dist/esnext/foundation/useQuery/hooks.d.ts +1 -0
- package/dist/esnext/foundation/useQuery/hooks.js +25 -17
- package/dist/esnext/foundation/useRequestContext/index.d.ts +15 -0
- package/dist/esnext/foundation/useRequestContext/index.js +23 -0
- package/dist/esnext/foundation/useServerProps/use-server-props.js +2 -2
- package/dist/esnext/foundation/useSession/useSession.js +1 -2
- package/dist/esnext/foundation/useUrl/useUrl.js +1 -2
- package/dist/esnext/framework/cache/in-memory.js +3 -3
- package/dist/esnext/framework/middleware.d.ts +1 -1
- package/dist/esnext/framework/middleware.js +3 -4
- package/dist/esnext/framework/plugin.d.ts +7 -3
- package/dist/esnext/framework/plugin.js +2 -1
- package/dist/esnext/framework/plugins/vite-plugin-client-imports.js +1 -1
- package/dist/esnext/framework/plugins/vite-plugin-hydrogen-config.js +70 -67
- package/dist/esnext/framework/plugins/vite-plugin-hydrogen-middleware.d.ts +1 -1
- package/dist/esnext/framework/plugins/vite-plugin-hydrogen-middleware.js +2 -3
- package/dist/esnext/framework/plugins/vite-plugin-hydrogen-rsc.js +1 -1
- package/dist/esnext/framework/plugins/vite-plugin-hydrogen-virtual-files.d.ts +1 -1
- package/dist/esnext/framework/plugins/vite-plugin-hydrogen-virtual-files.js +6 -4
- package/dist/esnext/framework/types.d.ts +5 -0
- package/dist/esnext/framework/types.js +1 -0
- package/dist/esnext/hooks/index.d.ts +0 -1
- package/dist/esnext/hooks/index.js +0 -1
- package/dist/esnext/hooks/useCartLine/useCartLine.d.ts +10 -0
- package/dist/esnext/hooks/useMoney/hooks.js +53 -39
- package/dist/esnext/hooks/useProductOptions/helpers.js +6 -10
- package/dist/esnext/hooks/useProductOptions/types.d.ts +1 -1
- package/dist/esnext/hooks/useShopQuery/hooks.js +18 -12
- package/dist/esnext/index.d.ts +4 -5
- package/dist/esnext/index.js +2 -5
- package/dist/{node/entry-server.d.ts → esnext/shared-types.d.ts} +11 -7
- package/dist/esnext/shared-types.js +4 -0
- package/dist/esnext/storefront-api-types.d.ts +37 -443
- package/dist/esnext/streaming.server.d.ts +9 -18
- package/dist/esnext/streaming.server.js +2 -7
- package/dist/esnext/types.d.ts +9 -18
- package/dist/esnext/types.js +1 -1
- package/dist/esnext/utilities/apiRoutes.d.ts +7 -3
- package/dist/esnext/utilities/apiRoutes.js +6 -4
- package/dist/esnext/utilities/devtools.d.ts +1 -1
- package/dist/esnext/utilities/devtools.js +3 -3
- package/dist/esnext/utilities/flattenConnection/flattenConnection.d.ts +1 -0
- package/dist/esnext/utilities/flattenConnection/flattenConnection.js +13 -6
- package/dist/esnext/utilities/graphql-tracker.js +6 -8
- package/dist/esnext/utilities/hash.d.ts +2 -2
- package/dist/esnext/utilities/hash.js +29 -6
- package/dist/esnext/utilities/image_size.d.ts +24 -3
- package/dist/esnext/utilities/image_size.js +53 -31
- package/dist/esnext/utilities/index.d.ts +1 -1
- package/dist/esnext/utilities/index.js +1 -1
- package/dist/esnext/utilities/load_script.js +1 -1
- package/dist/esnext/utilities/log/log-cache-api-status.js +3 -2
- package/dist/esnext/utilities/log/log-query-timeline.js +29 -10
- package/dist/esnext/utilities/log/log.js +1 -2
- package/dist/esnext/utilities/log/utils.js +1 -6
- package/dist/esnext/utilities/parseMetafield/index.d.ts +1 -0
- package/dist/esnext/utilities/parseMetafield/index.js +1 -0
- package/dist/esnext/utilities/parseMetafield/parseMetafield.d.ts +15 -0
- package/dist/esnext/utilities/{parseMetafieldValue/parseMetafieldValue.js → parseMetafield/parseMetafield.js} +28 -2
- package/dist/esnext/utilities/storefrontApi.js +9 -5
- package/dist/esnext/utilities/template.js +1 -2
- package/dist/esnext/utilities/web-api-polyfill.js +6 -0
- package/dist/esnext/version.d.ts +1 -1
- package/dist/esnext/version.js +1 -1
- package/dist/node/framework/cache/in-memory.js +3 -3
- package/dist/node/framework/middleware.d.ts +1 -1
- package/dist/node/framework/middleware.js +3 -4
- package/dist/node/framework/plugin.d.ts +4 -3
- package/dist/node/framework/plugin.js +3 -2
- package/dist/node/framework/plugins/vite-plugin-client-imports.js +1 -1
- package/dist/node/framework/plugins/vite-plugin-hydrogen-config.js +70 -67
- package/dist/node/framework/plugins/vite-plugin-hydrogen-middleware.d.ts +1 -1
- package/dist/node/framework/plugins/vite-plugin-hydrogen-middleware.js +2 -3
- package/dist/node/framework/plugins/vite-plugin-hydrogen-rsc.js +2 -2
- package/dist/node/framework/plugins/vite-plugin-hydrogen-virtual-files.d.ts +1 -1
- package/dist/node/framework/plugins/vite-plugin-hydrogen-virtual-files.js +6 -4
- package/dist/node/framework/types.d.ts +5 -0
- package/dist/node/{components/CartProvider → framework}/types.js +0 -0
- package/dist/node/shared-types.d.ts +26 -0
- package/dist/node/shared-types.js +5 -0
- package/dist/node/utilities/web-api-polyfill.js +6 -0
- package/package.json +32 -26
- package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-plugin.js +100 -36
- package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.browser.development.server.js +50 -13
- package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.browser.production.min.server.js +28 -27
- package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.node.development.server.js +50 -13
- package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.node.production.min.server.js +28 -28
- package/vendor/react-server-dom-vite/esm/react-server-dom-vite-client-proxy.js +3 -5
- package/vendor/react-server-dom-vite/esm/react-server-dom-vite-plugin.js +100 -36
- package/vendor/react-server-dom-vite/esm/react-server-dom-vite-writer.browser.server.js +50 -13
- package/vendor/react-server-dom-vite/esm/react-server-dom-vite-writer.node.server.js +50 -13
- package/client.d.ts +0 -1
- package/client.js +0 -1
- package/config.d.ts +0 -1
- package/config.js +0 -1
- package/dist/esnext/components/DevTools.client.d.ts +0 -1
- package/dist/esnext/components/DevTools.client.js +0 -129
- package/dist/esnext/foundation/Analytics/ServerAnalyticsRoute.server.d.ts +0 -2
- package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.server.d.ts +0 -1
- package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.server.js +0 -25
- package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.server.d.ts +0 -1
- package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.server.js +0 -19
- package/dist/esnext/framework/Hydration/rsc.d.ts +0 -8
- package/dist/esnext/framework/Hydration/rsc.js +0 -102
- package/dist/esnext/hooks/useParsedMetafields/index.d.ts +0 -1
- package/dist/esnext/hooks/useParsedMetafields/index.js +0 -1
- package/dist/esnext/hooks/useParsedMetafields/useParsedMetafields.d.ts +0 -21
- package/dist/esnext/hooks/useParsedMetafields/useParsedMetafields.js +0 -21
- package/dist/esnext/utilities/parseMetafieldValue/index.d.ts +0 -1
- package/dist/esnext/utilities/parseMetafieldValue/index.js +0 -1
- package/dist/esnext/utilities/parseMetafieldValue/parseMetafieldValue.d.ts +0 -6
- package/dist/node/client.d.ts +0 -16
- package/dist/node/client.js +0 -43
- package/dist/node/components/AddToCartButton/AddToCartButton.client.d.ts +0 -23
- package/dist/node/components/AddToCartButton/AddToCartButton.client.js +0 -74
- package/dist/node/components/AddToCartButton/index.d.ts +0 -1
- package/dist/node/components/AddToCartButton/index.js +0 -5
- package/dist/node/components/BuyNowButton/BuyNowButton.client.d.ts +0 -18
- package/dist/node/components/BuyNowButton/BuyNowButton.client.js +0 -53
- package/dist/node/components/BuyNowButton/index.d.ts +0 -1
- package/dist/node/components/BuyNowButton/index.js +0 -5
- package/dist/node/components/CartCheckoutButton/CartCheckoutButton.client.d.ts +0 -11
- package/dist/node/components/CartCheckoutButton/CartCheckoutButton.client.js +0 -44
- package/dist/node/components/CartCheckoutButton/index.d.ts +0 -1
- package/dist/node/components/CartCheckoutButton/index.js +0 -5
- package/dist/node/components/CartEstimatedCost/CartEstimatedCost.client.d.ts +0 -14
- package/dist/node/components/CartEstimatedCost/CartEstimatedCost.client.js +0 -36
- package/dist/node/components/CartEstimatedCost/index.d.ts +0 -1
- package/dist/node/components/CartEstimatedCost/index.js +0 -5
- package/dist/node/components/CartLineImage/CartLineImage.client.d.ts +0 -9
- package/dist/node/components/CartLineImage/CartLineImage.client.js +0 -18
- package/dist/node/components/CartLineImage/index.d.ts +0 -1
- package/dist/node/components/CartLineImage/index.js +0 -5
- package/dist/node/components/CartLinePrice/CartLinePrice.client.d.ts +0 -12
- package/dist/node/components/CartLinePrice/CartLinePrice.client.js +0 -28
- package/dist/node/components/CartLinePrice/index.d.ts +0 -1
- package/dist/node/components/CartLinePrice/index.js +0 -5
- package/dist/node/components/CartLineProductTitle/CartLineProductTitle.client.d.ts +0 -8
- package/dist/node/components/CartLineProductTitle/CartLineProductTitle.client.js +0 -19
- package/dist/node/components/CartLineProductTitle/index.d.ts +0 -1
- package/dist/node/components/CartLineProductTitle/index.js +0 -5
- package/dist/node/components/CartLineProvider/CartLineProvider.client.d.ts +0 -11
- package/dist/node/components/CartLineProvider/CartLineProvider.client.js +0 -15
- package/dist/node/components/CartLineProvider/context.d.ts +0 -26
- package/dist/node/components/CartLineProvider/context.js +0 -5
- package/dist/node/components/CartLineProvider/index.d.ts +0 -2
- package/dist/node/components/CartLineProvider/index.js +0 -7
- package/dist/node/components/CartLineQuantity/CartLineQuantity.client.d.ts +0 -8
- package/dist/node/components/CartLineQuantity/CartLineQuantity.client.js +0 -19
- package/dist/node/components/CartLineQuantity/index.d.ts +0 -1
- package/dist/node/components/CartLineQuantity/index.js +0 -5
- package/dist/node/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.d.ts +0 -14
- package/dist/node/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.js +0 -31
- package/dist/node/components/CartLineQuantityAdjustButton/index.d.ts +0 -1
- package/dist/node/components/CartLineQuantityAdjustButton/index.js +0 -5
- package/dist/node/components/CartLines/CartLines.client.d.ts +0 -15
- package/dist/node/components/CartLines/CartLines.client.js +0 -44
- package/dist/node/components/CartLines/index.d.ts +0 -1
- package/dist/node/components/CartLines/index.js +0 -5
- package/dist/node/components/CartProvider/CartProvider.client.d.ts +0 -41
- package/dist/node/components/CartProvider/CartProvider.client.js +0 -550
- package/dist/node/components/CartProvider/cart-queries.d.ts +0 -10
- package/dist/node/components/CartProvider/cart-queries.js +0 -203
- package/dist/node/components/CartProvider/constants.d.ts +0 -2
- package/dist/node/components/CartProvider/constants.js +0 -5
- package/dist/node/components/CartProvider/context.d.ts +0 -2
- package/dist/node/components/CartProvider/context.js +0 -5
- package/dist/node/components/CartProvider/graphql/CartAttributesUpdateMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartAttributesUpdateMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartBuyerIdentityUpdateMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartBuyerIdentityUpdateMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartCreateMutation.d.ts +0 -85
- package/dist/node/components/CartProvider/graphql/CartCreateMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartDiscountCodesUpdateMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartDiscountCodesUpdateMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartFragment.d.ts +0 -72
- package/dist/node/components/CartProvider/graphql/CartFragment.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartLineAddMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartLineAddMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartLineRemoveMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartLineRemoveMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartLineUpdateMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartLineUpdateMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartNoteUpdateMutation.d.ts +0 -86
- package/dist/node/components/CartProvider/graphql/CartNoteUpdateMutation.js +0 -2
- package/dist/node/components/CartProvider/graphql/CartQuery.d.ts +0 -81
- package/dist/node/components/CartProvider/graphql/CartQuery.js +0 -2
- package/dist/node/components/CartProvider/hooks.client.d.ts +0 -15
- package/dist/node/components/CartProvider/hooks.client.js +0 -90
- package/dist/node/components/CartProvider/index.d.ts +0 -4
- package/dist/node/components/CartProvider/index.js +0 -10
- package/dist/node/components/CartProvider/types.d.ts +0 -102
- package/dist/node/components/CartShopPayButton/CartShopPayButton.client.d.ts +0 -9
- package/dist/node/components/CartShopPayButton/CartShopPayButton.client.js +0 -46
- package/dist/node/components/CartShopPayButton/index.d.ts +0 -1
- package/dist/node/components/CartShopPayButton/index.js +0 -5
- package/dist/node/components/ExternalVideo/ExternalVideo.d.ts +0 -21
- package/dist/node/components/ExternalVideo/ExternalVideo.js +0 -21
- package/dist/node/components/ExternalVideo/index.d.ts +0 -1
- package/dist/node/components/ExternalVideo/index.js +0 -5
- package/dist/node/components/Image/Image.d.ts +0 -92
- package/dist/node/components/Image/Image.js +0 -137
- package/dist/node/components/Image/index.d.ts +0 -2
- package/dist/node/components/Image/index.js +0 -5
- package/dist/node/components/Link/Link.client.d.ts +0 -25
- package/dist/node/components/Link/Link.client.js +0 -165
- package/dist/node/components/Link/index.d.ts +0 -1
- package/dist/node/components/Link/index.js +0 -5
- package/dist/node/components/LocalizationProvider/LocalizationClientProvider.client.d.ts +0 -6
- package/dist/node/components/LocalizationProvider/LocalizationClientProvider.client.js +0 -11
- package/dist/node/components/LocalizationProvider/LocalizationContext.client.d.ts +0 -6
- package/dist/node/components/LocalizationProvider/LocalizationContext.client.js +0 -5
- package/dist/node/components/LocalizationProvider/LocalizationProvider.server.d.ts +0 -33
- package/dist/node/components/LocalizationProvider/LocalizationProvider.server.js +0 -51
- package/dist/node/components/MediaFile/MediaFile.d.ts +0 -19
- package/dist/node/components/MediaFile/MediaFile.js +0 -39
- package/dist/node/components/MediaFile/index.d.ts +0 -1
- package/dist/node/components/MediaFile/index.js +0 -5
- package/dist/node/components/Metafield/Metafield.client.d.ts +0 -21
- package/dist/node/components/Metafield/Metafield.client.js +0 -75
- package/dist/node/components/Metafield/index.d.ts +0 -2
- package/dist/node/components/Metafield/index.js +0 -5
- package/dist/node/components/Metafield/types.d.ts +0 -4
- package/dist/node/components/Metafield/types.js +0 -2
- package/dist/node/components/ModelViewer/ModelViewer.client.d.ts +0 -128
- package/dist/node/components/ModelViewer/ModelViewer.client.js +0 -132
- package/dist/node/components/ModelViewer/index.d.ts +0 -1
- package/dist/node/components/ModelViewer/index.js +0 -5
- package/dist/node/components/Money/Money.client.d.ts +0 -25
- package/dist/node/components/Money/Money.client.js +0 -46
- package/dist/node/components/Money/index.d.ts +0 -1
- package/dist/node/components/Money/index.js +0 -5
- package/dist/node/components/ProductOptionsProvider/ProductOptionsProvider.client.d.ts +0 -21
- package/dist/node/components/ProductOptionsProvider/ProductOptionsProvider.client.js +0 -167
- package/dist/node/components/ProductOptionsProvider/context.d.ts +0 -2
- package/dist/node/components/ProductOptionsProvider/context.js +0 -5
- package/dist/node/components/ProductOptionsProvider/index.d.ts +0 -2
- package/dist/node/components/ProductOptionsProvider/index.js +0 -7
- package/dist/node/components/ProductPrice/ProductPrice.client.d.ts +0 -18
- package/dist/node/components/ProductPrice/ProductPrice.client.js +0 -61
- package/dist/node/components/ProductPrice/index.d.ts +0 -1
- package/dist/node/components/ProductPrice/index.js +0 -5
- package/dist/node/components/Seo/CollectionSeo.client.d.ts +0 -3
- package/dist/node/components/Seo/CollectionSeo.client.js +0 -22
- package/dist/node/components/Seo/DefaultPageSeo.client.d.ts +0 -3
- package/dist/node/components/Seo/DefaultPageSeo.client.js +0 -25
- package/dist/node/components/Seo/DescriptionSeo.client.d.ts +0 -4
- package/dist/node/components/Seo/DescriptionSeo.client.js +0 -17
- package/dist/node/components/Seo/HomePageSeo.client.d.ts +0 -2
- package/dist/node/components/Seo/HomePageSeo.client.js +0 -32
- package/dist/node/components/Seo/ImageSeo.client.d.ts +0 -3
- package/dist/node/components/Seo/ImageSeo.client.js +0 -17
- package/dist/node/components/Seo/NoIndexSeo.client.d.ts +0 -3
- package/dist/node/components/Seo/NoIndexSeo.client.js +0 -17
- package/dist/node/components/Seo/PageSeo.client.d.ts +0 -3
- package/dist/node/components/Seo/PageSeo.client.js +0 -20
- package/dist/node/components/Seo/ProductSeo.client.d.ts +0 -5
- package/dist/node/components/Seo/ProductSeo.client.js +0 -70
- package/dist/node/components/Seo/Seo.client.d.ts +0 -30
- package/dist/node/components/Seo/Seo.client.js +0 -38
- package/dist/node/components/Seo/TitleSeo.client.d.ts +0 -3
- package/dist/node/components/Seo/TitleSeo.client.js +0 -17
- package/dist/node/components/Seo/TwitterSeo.client.d.ts +0 -2
- package/dist/node/components/Seo/TwitterSeo.client.js +0 -16
- package/dist/node/components/Seo/index.d.ts +0 -1
- package/dist/node/components/Seo/index.js +0 -5
- package/dist/node/components/Seo/seo-types.d.ts +0 -17
- package/dist/node/components/Seo/seo-types.js +0 -2
- package/dist/node/components/ShopPayButton/ShopPayButton.client.d.ts +0 -38
- package/dist/node/components/ShopPayButton/ShopPayButton.client.js +0 -60
- package/dist/node/components/ShopPayButton/index.d.ts +0 -1
- package/dist/node/components/ShopPayButton/index.js +0 -5
- package/dist/node/components/Video/Video.d.ts +0 -14
- package/dist/node/components/Video/Video.js +0 -31
- package/dist/node/components/Video/index.d.ts +0 -1
- package/dist/node/components/Video/index.js +0 -5
- package/dist/node/components/index.d.ts +0 -28
- package/dist/node/components/index.js +0 -59
- package/dist/node/components/types.d.ts +0 -71
- package/dist/node/components/types.js +0 -11
- package/dist/node/constants.d.ts +0 -7
- package/dist/node/constants.js +0 -10
- package/dist/node/entry-server.js +0 -495
- package/dist/node/foundation/Analytics/Analytics.client.d.ts +0 -3
- package/dist/node/foundation/Analytics/Analytics.client.js +0 -34
- package/dist/node/foundation/Analytics/Analytics.server.d.ts +0 -1
- package/dist/node/foundation/Analytics/Analytics.server.js +0 -77
- package/dist/node/foundation/Analytics/ClientAnalytics.d.ts +0 -27
- package/dist/node/foundation/Analytics/ClientAnalytics.js +0 -102
- package/dist/node/foundation/Analytics/ServerAnalyticsRoute.server.d.ts +0 -2
- package/dist/node/foundation/Analytics/ServerAnalyticsRoute.server.js +0 -39
- package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetrics.client.d.ts +0 -7
- package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetrics.client.js +0 -68
- package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetricsDebug.client.d.ts +0 -1
- package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetricsDebug.client.js +0 -27
- package/dist/node/foundation/Analytics/const.d.ts +0 -9
- package/dist/node/foundation/Analytics/const.js +0 -12
- package/dist/node/foundation/Analytics/hook.d.ts +0 -1
- package/dist/node/foundation/Analytics/hook.js +0 -13
- package/dist/node/foundation/Analytics/index.d.ts +0 -1
- package/dist/node/foundation/Analytics/index.js +0 -5
- package/dist/node/foundation/Analytics/types.d.ts +0 -5
- package/dist/node/foundation/Analytics/types.js +0 -2
- package/dist/node/foundation/Analytics/utils.d.ts +0 -3
- package/dist/node/foundation/Analytics/utils.js +0 -35
- package/dist/node/foundation/AnalyticsErrorBoundary.client.d.ts +0 -4
- package/dist/node/foundation/AnalyticsErrorBoundary.client.js +0 -14
- package/dist/node/foundation/Cache/cache-sub-request.d.ts +0 -17
- package/dist/node/foundation/Cache/cache-sub-request.js +0 -95
- package/dist/node/foundation/Cache/cache.d.ts +0 -17
- package/dist/node/foundation/Cache/cache.js +0 -135
- package/dist/node/foundation/Cache/strategies/index.d.ts +0 -10
- package/dist/node/foundation/Cache/strategies/index.js +0 -108
- package/dist/node/foundation/Head/Head.client.d.ts +0 -5
- package/dist/node/foundation/Head/Head.client.js +0 -17
- package/dist/node/foundation/Head/index.d.ts +0 -1
- package/dist/node/foundation/Head/index.js +0 -5
- package/dist/node/foundation/Html/Html.d.ts +0 -13
- package/dist/node/foundation/Html/Html.js +0 -107
- package/dist/node/foundation/HydrogenRequest/HydrogenRequest.server.d.ts +0 -62
- package/dist/node/foundation/HydrogenRequest/HydrogenRequest.server.js +0 -150
- package/dist/node/foundation/HydrogenResponse/HydrogenResponse.server.d.ts +0 -23
- package/dist/node/foundation/HydrogenResponse/HydrogenResponse.server.js +0 -53
- package/dist/node/foundation/Redirect/Redirect.client.d.ts +0 -5
- package/dist/node/foundation/Redirect/Redirect.client.js +0 -18
- package/dist/node/foundation/Router/BrowserRouter.client.d.ts +0 -14
- package/dist/node/foundation/Router/BrowserRouter.client.js +0 -166
- package/dist/node/foundation/ServerPropsProvider/ServerPropsProvider.d.ts +0 -41
- package/dist/node/foundation/ServerPropsProvider/ServerPropsProvider.js +0 -90
- package/dist/node/foundation/ServerPropsProvider/index.d.ts +0 -2
- package/dist/node/foundation/ServerPropsProvider/index.js +0 -6
- package/dist/node/foundation/ServerRequestProvider/ServerRequestProvider.d.ts +0 -23
- package/dist/node/foundation/ServerRequestProvider/ServerRequestProvider.js +0 -158
- package/dist/node/foundation/ServerRequestProvider/index.d.ts +0 -1
- package/dist/node/foundation/ServerRequestProvider/index.js +0 -17
- package/dist/node/foundation/ShopifyProvider/ShopifyProvider.client.d.ts +0 -7
- package/dist/node/foundation/ShopifyProvider/ShopifyProvider.client.js +0 -35
- package/dist/node/foundation/ShopifyProvider/index.d.ts +0 -1
- package/dist/node/foundation/ShopifyProvider/index.js +0 -5
- package/dist/node/foundation/ShopifyProvider/types.d.ts +0 -13
- package/dist/node/foundation/ShopifyProvider/types.js +0 -2
- package/dist/node/foundation/fetchSync/client/fetchSync.d.ts +0 -10
- package/dist/node/foundation/fetchSync/client/fetchSync.js +0 -33
- package/dist/node/foundation/fetchSync/server/fetchSync.d.ts +0 -8
- package/dist/node/foundation/fetchSync/server/fetchSync.js +0 -33
- package/dist/node/foundation/fetchSync/types.d.ts +0 -5
- package/dist/node/foundation/fetchSync/types.js +0 -2
- package/dist/node/foundation/index.d.ts +0 -3
- package/dist/node/foundation/index.js +0 -10
- package/dist/node/foundation/runtime.d.ts +0 -2
- package/dist/node/foundation/runtime.js +0 -11
- package/dist/node/foundation/session/session.d.ts +0 -27
- package/dist/node/foundation/session/session.js +0 -43
- package/dist/node/foundation/ssr-interop.d.ts +0 -29
- package/dist/node/foundation/ssr-interop.js +0 -39
- package/dist/node/foundation/useNavigate/useNavigate.d.ts +0 -15
- package/dist/node/foundation/useNavigate/useNavigate.js +0 -25
- package/dist/node/foundation/useQuery/hooks.d.ts +0 -36
- package/dist/node/foundation/useQuery/hooks.js +0 -104
- package/dist/node/foundation/useRouteParams/RouteParamsProvider.client.d.ts +0 -10
- package/dist/node/foundation/useRouteParams/RouteParamsProvider.client.js +0 -34
- package/dist/node/foundation/useRouteParams/useRouteParams.d.ts +0 -4
- package/dist/node/foundation/useRouteParams/useRouteParams.js +0 -13
- package/dist/node/foundation/useServerProps/index.d.ts +0 -1
- package/dist/node/foundation/useServerProps/index.js +0 -5
- package/dist/node/foundation/useServerProps/use-server-props.d.ts +0 -21
- package/dist/node/foundation/useServerProps/use-server-props.js +0 -40
- package/dist/node/foundation/useSession/useSession.d.ts +0 -2
- package/dist/node/foundation/useSession/useSession.js +0 -12
- package/dist/node/foundation/useShop/index.d.ts +0 -1
- package/dist/node/foundation/useShop/index.js +0 -5
- package/dist/node/foundation/useShop/use-shop.d.ts +0 -6
- package/dist/node/foundation/useShop/use-shop.js +0 -18
- package/dist/node/foundation/useUrl/index.d.ts +0 -1
- package/dist/node/foundation/useUrl/index.js +0 -5
- package/dist/node/foundation/useUrl/useUrl.d.ts +0 -4
- package/dist/node/foundation/useUrl/useUrl.js +0 -32
- package/dist/node/framework/Hydration/rsc.d.ts +0 -8
- package/dist/node/framework/Hydration/rsc.js +0 -105
- package/dist/node/hooks/index.d.ts +0 -6
- package/dist/node/hooks/index.js +0 -28
- package/dist/node/hooks/useCart/index.d.ts +0 -1
- package/dist/node/hooks/useCart/index.js +0 -5
- package/dist/node/hooks/useCart/useCart.d.ts +0 -4
- package/dist/node/hooks/useCart/useCart.js +0 -19
- package/dist/node/hooks/useCartLine/index.d.ts +0 -1
- package/dist/node/hooks/useCartLine/index.js +0 -5
- package/dist/node/hooks/useCartLine/useCartLine.d.ts +0 -29
- package/dist/node/hooks/useCartLine/useCartLine.js +0 -16
- package/dist/node/hooks/useCountry/index.d.ts +0 -1
- package/dist/node/hooks/useCountry/index.js +0 -5
- package/dist/node/hooks/useCountry/useCountry.d.ts +0 -7
- package/dist/node/hooks/useCountry/useCountry.js +0 -21
- package/dist/node/hooks/useLoadScript/index.d.ts +0 -1
- package/dist/node/hooks/useLoadScript/index.js +0 -5
- package/dist/node/hooks/useLoadScript/useLoadScript.client.d.ts +0 -8
- package/dist/node/hooks/useLoadScript/useLoadScript.client.js +0 -27
- package/dist/node/hooks/useMeasurement/hooks.d.ts +0 -9
- package/dist/node/hooks/useMeasurement/hooks.js +0 -17
- package/dist/node/hooks/useMeasurement/index.d.ts +0 -1
- package/dist/node/hooks/useMeasurement/index.js +0 -5
- package/dist/node/hooks/useMoney/hooks.d.ts +0 -54
- package/dist/node/hooks/useMoney/hooks.js +0 -70
- package/dist/node/hooks/useMoney/index.d.ts +0 -1
- package/dist/node/hooks/useMoney/index.js +0 -5
- package/dist/node/hooks/useParsedMetafields/index.d.ts +0 -1
- package/dist/node/hooks/useParsedMetafields/index.js +0 -5
- package/dist/node/hooks/useParsedMetafields/useParsedMetafields.d.ts +0 -21
- package/dist/node/hooks/useParsedMetafields/useParsedMetafields.js +0 -25
- package/dist/node/hooks/useProductOptions/helpers.d.ts +0 -6
- package/dist/node/hooks/useProductOptions/helpers.js +0 -46
- package/dist/node/hooks/useProductOptions/index.d.ts +0 -2
- package/dist/node/hooks/useProductOptions/index.js +0 -20
- package/dist/node/hooks/useProductOptions/types.d.ts +0 -44
- package/dist/node/hooks/useProductOptions/types.js +0 -2
- package/dist/node/hooks/useProductOptions/useProductOptions.client.d.ts +0 -1
- package/dist/node/hooks/useProductOptions/useProductOptions.client.js +0 -13
- package/dist/node/hooks/useShopQuery/hooks.d.ts +0 -28
- package/dist/node/hooks/useShopQuery/hooks.js +0 -171
- package/dist/node/hooks/useShopQuery/index.d.ts +0 -1
- package/dist/node/hooks/useShopQuery/index.js +0 -5
- package/dist/node/storefront-api-types.d.ts +0 -6405
- package/dist/node/storefront-api-types.js +0 -1766
- package/dist/node/streaming.server.d.ts +0 -25
- package/dist/node/streaming.server.js +0 -28
- package/dist/node/types.d.ts +0 -114
- package/dist/node/types.js +0 -2
- package/dist/node/utilities/apiRoutes.d.ts +0 -37
- package/dist/node/utilities/apiRoutes.js +0 -157
- package/dist/node/utilities/bot-ua.d.ts +0 -4
- package/dist/node/utilities/bot-ua.js +0 -65
- package/dist/node/utilities/devtools.d.ts +0 -11
- package/dist/node/utilities/devtools.js +0 -15
- package/dist/node/utilities/error.d.ts +0 -1
- package/dist/node/utilities/error.js +0 -10
- package/dist/node/utilities/fetch.d.ts +0 -9
- package/dist/node/utilities/fetch.js +0 -37
- package/dist/node/utilities/flattenConnection/flattenConnection.d.ts +0 -6
- package/dist/node/utilities/flattenConnection/flattenConnection.js +0 -15
- package/dist/node/utilities/flattenConnection/index.d.ts +0 -1
- package/dist/node/utilities/flattenConnection/index.js +0 -5
- package/dist/node/utilities/graphql-tag.d.ts +0 -1
- package/dist/node/utilities/graphql-tag.js +0 -10
- package/dist/node/utilities/graphql-tracker.d.ts +0 -17
- package/dist/node/utilities/graphql-tracker.js +0 -130
- package/dist/node/utilities/hash.d.ts +0 -2
- package/dist/node/utilities/hash.js +0 -11
- package/dist/node/utilities/html-encoding.d.ts +0 -1
- package/dist/node/utilities/html-encoding.js +0 -12
- package/dist/node/utilities/image_size.d.ts +0 -12
- package/dist/node/utilities/image_size.js +0 -68
- package/dist/node/utilities/index.d.ts +0 -12
- package/dist/node/utilities/index.js +0 -33
- package/dist/node/utilities/isBrowser/index.d.ts +0 -1
- package/dist/node/utilities/isBrowser/index.js +0 -5
- package/dist/node/utilities/isBrowser/isBrowser.d.ts +0 -4
- package/dist/node/utilities/isBrowser/isBrowser.js +0 -10
- package/dist/node/utilities/isServer/index.d.ts +0 -1
- package/dist/node/utilities/isServer/index.js +0 -5
- package/dist/node/utilities/isServer/isServer.d.ts +0 -4
- package/dist/node/utilities/isServer/isServer.js +0 -11
- package/dist/node/utilities/load_script.d.ts +0 -3
- package/dist/node/utilities/load_script.js +0 -27
- package/dist/node/utilities/log/index.d.ts +0 -4
- package/dist/node/utilities/log/index.js +0 -16
- package/dist/node/utilities/log/log-cache-api-status.d.ts +0 -1
- package/dist/node/utilities/log/log-cache-api-status.js +0 -17
- package/dist/node/utilities/log/log-cache-header.d.ts +0 -10
- package/dist/node/utilities/log/log-cache-header.js +0 -35
- package/dist/node/utilities/log/log-query-timeline.d.ts +0 -12
- package/dist/node/utilities/log/log-query-timeline.js +0 -88
- package/dist/node/utilities/log/log.d.ts +0 -28
- package/dist/node/utilities/log/log.js +0 -81
- package/dist/node/utilities/log/utils.d.ts +0 -3
- package/dist/node/utilities/log/utils.js +0 -21
- package/dist/node/utilities/matchPath.d.ts +0 -10
- package/dist/node/utilities/matchPath.js +0 -58
- package/dist/node/utilities/measurement.d.ts +0 -3
- package/dist/node/utilities/measurement.js +0 -103
- package/dist/node/utilities/parse.d.ts +0 -1
- package/dist/node/utilities/parse.js +0 -13
- package/dist/node/utilities/parseMetafieldValue/index.d.ts +0 -1
- package/dist/node/utilities/parseMetafieldValue/index.js +0 -5
- package/dist/node/utilities/parseMetafieldValue/parseMetafieldValue.d.ts +0 -6
- package/dist/node/utilities/parseMetafieldValue/parseMetafieldValue.js +0 -40
- package/dist/node/utilities/storefrontApi.d.ts +0 -4
- package/dist/node/utilities/storefrontApi.js +0 -26
- package/dist/node/utilities/suspense.d.ts +0 -12
- package/dist/node/utilities/suspense.js +0 -64
- package/dist/node/utilities/template.d.ts +0 -9
- package/dist/node/utilities/template.js +0 -27
- package/dist/node/utilities/timing.d.ts +0 -7
- package/dist/node/utilities/timing.js +0 -18
- package/dist/node/utilities/video_parameters.d.ts +0 -47
- package/dist/node/utilities/video_parameters.js +0 -27
- package/dist/node/version.d.ts +0 -1
- package/dist/node/version.js +0 -4
- package/entry-client.d.ts +0 -1
- package/entry-client.js +0 -1
- package/entry-server.d.ts +0 -1
- package/entry-server.js +0 -1
- package/middleware.d.ts +0 -1
- package/middleware.js +0 -1
- package/plugin.d.ts +0 -1
- package/plugin.js +0 -1
- package/web-polyfills.js +0 -1
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useUrl = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const constants_1 = require("../../constants");
|
|
6
|
-
const parse_1 = require("../../utilities/parse");
|
|
7
|
-
const BrowserRouter_client_1 = require("../Router/BrowserRouter.client");
|
|
8
|
-
const ssr_interop_1 = require("../ssr-interop");
|
|
9
|
-
/**
|
|
10
|
-
* The `useUrl` hook retrieves the current URL in a server or client component.
|
|
11
|
-
*/
|
|
12
|
-
function useUrl() {
|
|
13
|
-
var _a, _b;
|
|
14
|
-
if (ssr_interop_1.META_ENV_SSR) {
|
|
15
|
-
const serverUrl = new URL((0, ssr_interop_1.useEnvContext)((req) => req.url) // eslint-disable-line react-hooks/rules-of-hooks
|
|
16
|
-
);
|
|
17
|
-
if (serverUrl.pathname === constants_1.RSC_PATHNAME) {
|
|
18
|
-
const state = (0, parse_1.parseJSON)(serverUrl.searchParams.get('state') || '{}');
|
|
19
|
-
const parsedUrl = `${serverUrl.origin}${(_a = state.pathname) !== null && _a !== void 0 ? _a : ''}${(_b = state.search) !== null && _b !== void 0 ? _b : ''}`;
|
|
20
|
-
return new URL(parsedUrl);
|
|
21
|
-
}
|
|
22
|
-
return new URL(serverUrl);
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* We return a `URL` object instead of passing through `location` because
|
|
26
|
-
* the URL object contains important info like hostname, etc.
|
|
27
|
-
*/
|
|
28
|
-
const location = (0, BrowserRouter_client_1.useLocation)(); // eslint-disable-line react-hooks/rules-of-hooks
|
|
29
|
-
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
30
|
-
return (0, react_1.useMemo)(() => new URL(window.location.href), [location]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
31
|
-
}
|
|
32
|
-
exports.useUrl = useUrl;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Much of this is borrowed from React's demo implementation:
|
|
3
|
-
* @see https://github.com/reactjs/server-components-demo/blob/main/src/Cache.client.js
|
|
4
|
-
*
|
|
5
|
-
* Note that we'd want to add some other constraints and controls around caching here.
|
|
6
|
-
*/
|
|
7
|
-
export declare function useServerResponse(state: any): any;
|
|
8
|
-
export declare function useRefresh(): void;
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// TODO should we move this file to src/foundation
|
|
3
|
-
// so it is considered ESM instead of CJS?
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.useRefresh = exports.useServerResponse = void 0;
|
|
6
|
-
const react_server_dom_vite_1 = require("@shopify/hydrogen/vendor/react-server-dom-vite");
|
|
7
|
-
const client_1 = require("../../client");
|
|
8
|
-
const constants_1 = require("../../constants");
|
|
9
|
-
let rscReader;
|
|
10
|
-
// Hydrate an SSR response from <meta> tags placed in the DOM.
|
|
11
|
-
const flightChunks = [];
|
|
12
|
-
const FLIGHT_ATTRIBUTE = 'data-flight';
|
|
13
|
-
function addElementToFlightChunks(el) {
|
|
14
|
-
// We don't need to decode, because `.getAttribute` already decodes
|
|
15
|
-
const chunk = el.getAttribute(FLIGHT_ATTRIBUTE);
|
|
16
|
-
if (chunk) {
|
|
17
|
-
flightChunks.push(chunk);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
// Get initial payload
|
|
21
|
-
document
|
|
22
|
-
.querySelectorAll('[' + FLIGHT_ATTRIBUTE + ']')
|
|
23
|
-
.forEach(addElementToFlightChunks);
|
|
24
|
-
// Create a mutation observer on the document to detect when new
|
|
25
|
-
// <meta data-flight> tags are added, and add them to the array.
|
|
26
|
-
const observer = new MutationObserver((mutations) => {
|
|
27
|
-
mutations.forEach((mutation) => {
|
|
28
|
-
mutation.addedNodes.forEach((node) => {
|
|
29
|
-
if (node instanceof HTMLElement &&
|
|
30
|
-
node.tagName === 'META' &&
|
|
31
|
-
node.hasAttribute(FLIGHT_ATTRIBUTE)) {
|
|
32
|
-
addElementToFlightChunks(node);
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
observer.observe(document.documentElement, {
|
|
38
|
-
childList: true,
|
|
39
|
-
subtree: true,
|
|
40
|
-
});
|
|
41
|
-
if (flightChunks.length > 0) {
|
|
42
|
-
const contentLoaded = new Promise((resolve) => document.addEventListener('DOMContentLoaded', resolve));
|
|
43
|
-
try {
|
|
44
|
-
rscReader = new ReadableStream({
|
|
45
|
-
start(controller) {
|
|
46
|
-
const encoder = new TextEncoder();
|
|
47
|
-
const write = (chunk) => {
|
|
48
|
-
controller.enqueue(encoder.encode(chunk));
|
|
49
|
-
return 0;
|
|
50
|
-
};
|
|
51
|
-
flightChunks.forEach(write);
|
|
52
|
-
flightChunks.push = write;
|
|
53
|
-
contentLoaded.then(() => {
|
|
54
|
-
controller.close();
|
|
55
|
-
observer.disconnect();
|
|
56
|
-
});
|
|
57
|
-
},
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
catch (_) {
|
|
61
|
-
// Old browser, will try a new hydration request later
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
const cache = new Map();
|
|
65
|
-
/**
|
|
66
|
-
* Much of this is borrowed from React's demo implementation:
|
|
67
|
-
* @see https://github.com/reactjs/server-components-demo/blob/main/src/Cache.client.js
|
|
68
|
-
*
|
|
69
|
-
* Note that we'd want to add some other constraints and controls around caching here.
|
|
70
|
-
*/
|
|
71
|
-
function useServerResponse(state) {
|
|
72
|
-
const key = JSON.stringify(state);
|
|
73
|
-
let response = cache.get(key);
|
|
74
|
-
if (response) {
|
|
75
|
-
return response;
|
|
76
|
-
}
|
|
77
|
-
if (rscReader) {
|
|
78
|
-
// The flight response was inlined during SSR, use it directly.
|
|
79
|
-
response = (0, react_server_dom_vite_1.createFromReadableStream)(rscReader);
|
|
80
|
-
rscReader = null;
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
if (
|
|
84
|
-
/* @ts-ignore */
|
|
85
|
-
window.BOOMR &&
|
|
86
|
-
/* @ts-ignore */
|
|
87
|
-
window.BOOMR.plugins &&
|
|
88
|
-
/* @ts-ignore */
|
|
89
|
-
window.BOOMR.plugins.Hydrogen) {
|
|
90
|
-
/* @ts-ignore */
|
|
91
|
-
window.BOOMR.plugins.Hydrogen.trackSubPageLoadPerformance();
|
|
92
|
-
}
|
|
93
|
-
client_1.ClientAnalytics.resetPageAnalyticsData();
|
|
94
|
-
// Request a new flight response.
|
|
95
|
-
response = (0, react_server_dom_vite_1.createFromFetch)(fetch(`${constants_1.RSC_PATHNAME}?state=` + encodeURIComponent(key)));
|
|
96
|
-
}
|
|
97
|
-
cache.clear();
|
|
98
|
-
cache.set(key, response);
|
|
99
|
-
return response;
|
|
100
|
-
}
|
|
101
|
-
exports.useServerResponse = useServerResponse;
|
|
102
|
-
function useRefresh() {
|
|
103
|
-
cache.clear();
|
|
104
|
-
}
|
|
105
|
-
exports.useRefresh = useRefresh;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { useProductOptions } from './useProductOptions';
|
|
2
|
-
export * from './useProductOptions/types';
|
|
3
|
-
export { useMoney } from './useMoney';
|
|
4
|
-
export { useMeasurement } from './useMeasurement';
|
|
5
|
-
export { useParsedMetafields } from './useParsedMetafields';
|
|
6
|
-
export { useLoadScript } from './useLoadScript';
|
package/dist/node/hooks/index.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.useLoadScript = exports.useParsedMetafields = exports.useMeasurement = exports.useMoney = exports.useProductOptions = void 0;
|
|
18
|
-
var useProductOptions_1 = require("./useProductOptions");
|
|
19
|
-
Object.defineProperty(exports, "useProductOptions", { enumerable: true, get: function () { return useProductOptions_1.useProductOptions; } });
|
|
20
|
-
__exportStar(require("./useProductOptions/types"), exports);
|
|
21
|
-
var useMoney_1 = require("./useMoney");
|
|
22
|
-
Object.defineProperty(exports, "useMoney", { enumerable: true, get: function () { return useMoney_1.useMoney; } });
|
|
23
|
-
var useMeasurement_1 = require("./useMeasurement");
|
|
24
|
-
Object.defineProperty(exports, "useMeasurement", { enumerable: true, get: function () { return useMeasurement_1.useMeasurement; } });
|
|
25
|
-
var useParsedMetafields_1 = require("./useParsedMetafields");
|
|
26
|
-
Object.defineProperty(exports, "useParsedMetafields", { enumerable: true, get: function () { return useParsedMetafields_1.useParsedMetafields; } });
|
|
27
|
-
var useLoadScript_1 = require("./useLoadScript");
|
|
28
|
-
Object.defineProperty(exports, "useLoadScript", { enumerable: true, get: function () { return useLoadScript_1.useLoadScript; } });
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useCart } from './useCart';
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useCart = void 0;
|
|
7
|
-
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const context_1 = require("../../components/CartProvider/context");
|
|
9
|
-
/**
|
|
10
|
-
* The `useCart` hook provides access to the cart object. It must be a descendent of a `CartProvider` component.
|
|
11
|
-
*/
|
|
12
|
-
function useCart() {
|
|
13
|
-
const context = react_1.default.useContext(context_1.CartContext);
|
|
14
|
-
if (!context) {
|
|
15
|
-
throw new Error('Expected a Cart Context, but no Cart Context was found');
|
|
16
|
-
}
|
|
17
|
-
return context;
|
|
18
|
-
}
|
|
19
|
-
exports.useCart = useCart;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useCartLine } from './useCartLine';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useCartLine = void 0;
|
|
4
|
-
var useCartLine_1 = require("./useCartLine");
|
|
5
|
-
Object.defineProperty(exports, "useCartLine", { enumerable: true, get: function () { return useCartLine_1.useCartLine; } });
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `useCartLine` hook provides access to the cart line object. It must be a descendent of a `CartProvider` component.
|
|
3
|
-
*/
|
|
4
|
-
export declare function useCartLine(): {
|
|
5
|
-
__typename?: "CartLine" | undefined;
|
|
6
|
-
} & Pick<import("../../storefront-api-types").CartLine, "id" | "quantity"> & {
|
|
7
|
-
attributes: ({
|
|
8
|
-
__typename?: "Attribute" | undefined;
|
|
9
|
-
} & Pick<import("../../storefront-api-types").Attribute, "key" | "value">)[];
|
|
10
|
-
merchandise: {
|
|
11
|
-
__typename?: "ProductVariant" | undefined;
|
|
12
|
-
} & Pick<import("../../storefront-api-types").ProductVariant, "id" | "title" | "availableForSale" | "requiresShipping"> & {
|
|
13
|
-
compareAtPriceV2?: import("../../storefront-api-types").Maybe<{
|
|
14
|
-
__typename?: "MoneyV2" | undefined;
|
|
15
|
-
} & Pick<import("../../storefront-api-types").MoneyV2, "currencyCode" | "amount">> | undefined;
|
|
16
|
-
priceV2: {
|
|
17
|
-
__typename?: "MoneyV2" | undefined;
|
|
18
|
-
} & Pick<import("../../storefront-api-types").MoneyV2, "currencyCode" | "amount">;
|
|
19
|
-
image?: import("../../storefront-api-types").Maybe<{
|
|
20
|
-
__typename?: "Image" | undefined;
|
|
21
|
-
} & Pick<import("../../storefront-api-types").Image, "id" | "height" | "width" | "url" | "altText">> | undefined;
|
|
22
|
-
product: {
|
|
23
|
-
__typename?: "Product" | undefined;
|
|
24
|
-
} & Pick<import("../../storefront-api-types").Product, "title" | "handle">;
|
|
25
|
-
selectedOptions: ({
|
|
26
|
-
__typename?: "SelectedOption" | undefined;
|
|
27
|
-
} & Pick<import("../../storefront-api-types").SelectedOption, "name" | "value">)[];
|
|
28
|
-
};
|
|
29
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useCartLine = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const context_1 = require("../../components/CartLineProvider/context");
|
|
6
|
-
/**
|
|
7
|
-
* The `useCartLine` hook provides access to the cart line object. It must be a descendent of a `CartProvider` component.
|
|
8
|
-
*/
|
|
9
|
-
function useCartLine() {
|
|
10
|
-
const context = (0, react_1.useContext)(context_1.CartLineContext);
|
|
11
|
-
if (context == null) {
|
|
12
|
-
throw new Error('Expected a cart line context but none was found');
|
|
13
|
-
}
|
|
14
|
-
return context;
|
|
15
|
-
}
|
|
16
|
-
exports.useCartLine = useCartLine;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useCountry } from './useCountry';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useCountry = void 0;
|
|
4
|
-
var useCountry_1 = require("./useCountry");
|
|
5
|
-
Object.defineProperty(exports, "useCountry", { enumerable: true, get: function () { return useCountry_1.useCountry; } });
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `useCountry` hook returns a tuple of the current localization country and a function for updating it.
|
|
3
|
-
* It must be a descendent of a `LocalizationProvider` component.
|
|
4
|
-
*/
|
|
5
|
-
export declare function useCountry(): (({
|
|
6
|
-
__typename?: "Country" | undefined;
|
|
7
|
-
} & Pick<import("../../storefront-api-types").Country, "name" | "isoCode">) | undefined)[];
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useCountry = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const LocalizationContext_client_1 = require("../../components/LocalizationProvider/LocalizationContext.client");
|
|
6
|
-
function useLocalization() {
|
|
7
|
-
const context = (0, react_1.useContext)(LocalizationContext_client_1.LocalizationContext);
|
|
8
|
-
if (context == null) {
|
|
9
|
-
throw new Error('No Localization Context available');
|
|
10
|
-
}
|
|
11
|
-
return context;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* The `useCountry` hook returns a tuple of the current localization country and a function for updating it.
|
|
15
|
-
* It must be a descendent of a `LocalizationProvider` component.
|
|
16
|
-
*/
|
|
17
|
-
function useCountry() {
|
|
18
|
-
const context = useLocalization();
|
|
19
|
-
return [context.country];
|
|
20
|
-
}
|
|
21
|
-
exports.useCountry = useCountry;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useLoadScript } from './useLoadScript.client';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useLoadScript = void 0;
|
|
4
|
-
var useLoadScript_client_1 = require("./useLoadScript.client");
|
|
5
|
-
Object.defineProperty(exports, "useLoadScript", { enumerable: true, get: function () { return useLoadScript_client_1.useLoadScript; } });
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { loadScript } from '../../utilities/load_script';
|
|
2
|
-
declare type LoadScriptParams = Parameters<typeof loadScript>;
|
|
3
|
-
/**
|
|
4
|
-
* The `useLoadScript` hook loads an external script tag on the client-side.
|
|
5
|
-
*/
|
|
6
|
-
export declare function useLoadScript(url: LoadScriptParams[0], options?: LoadScriptParams[1]): ScriptState;
|
|
7
|
-
declare type ScriptState = 'loading' | 'done' | 'error';
|
|
8
|
-
export {};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useLoadScript = void 0;
|
|
4
|
-
const load_script_1 = require("../../utilities/load_script");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
/**
|
|
7
|
-
* The `useLoadScript` hook loads an external script tag on the client-side.
|
|
8
|
-
*/
|
|
9
|
-
function useLoadScript(url, options) {
|
|
10
|
-
const [status, setStatus] = (0, react_1.useState)('loading');
|
|
11
|
-
const stringifiedOptions = JSON.stringify(options);
|
|
12
|
-
(0, react_1.useEffect)(() => {
|
|
13
|
-
async function loadScriptWrapper() {
|
|
14
|
-
try {
|
|
15
|
-
setStatus('loading');
|
|
16
|
-
await (0, load_script_1.loadScript)(url, options);
|
|
17
|
-
setStatus('done');
|
|
18
|
-
}
|
|
19
|
-
catch (error) {
|
|
20
|
-
setStatus('error');
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
loadScriptWrapper();
|
|
24
|
-
}, [url, stringifiedOptions, options]);
|
|
25
|
-
return status;
|
|
26
|
-
}
|
|
27
|
-
exports.useLoadScript = useLoadScript;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Measurement } from '../../types';
|
|
2
|
-
export interface UseMeasurementValue {
|
|
3
|
-
localizedString: string;
|
|
4
|
-
amount?: string;
|
|
5
|
-
unitName?: string;
|
|
6
|
-
parts: Intl.NumberFormatPart[];
|
|
7
|
-
original: Measurement;
|
|
8
|
-
}
|
|
9
|
-
export declare function useMeasurement(measurement: Measurement, options?: Omit<Intl.NumberFormatOptions, 'unit'>): UseMeasurementValue;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useMeasurement = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const foundation_1 = require("../../foundation");
|
|
6
|
-
const utilities_1 = require("../../utilities");
|
|
7
|
-
function useMeasurement(measurement, options = {}) {
|
|
8
|
-
const { locale } = (0, foundation_1.useShop)();
|
|
9
|
-
return (0, react_1.useMemo)(() => {
|
|
10
|
-
return {
|
|
11
|
-
localizedString: (0, utilities_1.getMeasurementAsString)(measurement, locale, options),
|
|
12
|
-
parts: (0, utilities_1.getMeasurementAsParts)(measurement, locale, options),
|
|
13
|
-
original: measurement,
|
|
14
|
-
};
|
|
15
|
-
}, [locale, measurement, options]);
|
|
16
|
-
}
|
|
17
|
-
exports.useMeasurement = useMeasurement;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useMeasurement } from './hooks';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useMeasurement = void 0;
|
|
4
|
-
var hooks_1 = require("./hooks");
|
|
5
|
-
Object.defineProperty(exports, "useMeasurement", { enumerable: true, get: function () { return hooks_1.useMeasurement; } });
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { CurrencyCode, MoneyV2 } from '../../storefront-api-types';
|
|
2
|
-
export declare type UseMoneyValue = {
|
|
3
|
-
/**
|
|
4
|
-
* The currency code from the `MoneyV2` object.
|
|
5
|
-
*/
|
|
6
|
-
currencyCode: CurrencyCode;
|
|
7
|
-
/**
|
|
8
|
-
* The name for the currency code, returned by `Intl.NumberFormat`.
|
|
9
|
-
*/
|
|
10
|
-
currencyName?: string;
|
|
11
|
-
/**
|
|
12
|
-
* The currency symbol returned by `Intl.NumberFormat`.
|
|
13
|
-
*/
|
|
14
|
-
currencySymbol?: string;
|
|
15
|
-
/**
|
|
16
|
-
* The currency narrow symbol returned by `Intl.NumberFormat`.
|
|
17
|
-
*/
|
|
18
|
-
currencyNarrowSymbol?: string;
|
|
19
|
-
/**
|
|
20
|
-
* The localized amount, without any currency symbols or non-number types from the `Intl.NumberFormat.formatToParts` parts.
|
|
21
|
-
*/
|
|
22
|
-
amount: string;
|
|
23
|
-
/**
|
|
24
|
-
* All parts returned by `Intl.NumberFormat.formatToParts`.
|
|
25
|
-
*/
|
|
26
|
-
parts: Intl.NumberFormatPart[];
|
|
27
|
-
/**
|
|
28
|
-
* A string returned by `new Intl.NumberFormat` for the amount and currency code,
|
|
29
|
-
* using the `defaultLocale` value in [`hydrogenConfig.shopify`](https://shopify.dev/custom-storefronts/hydrogen/framework/hydrogen-config).
|
|
30
|
-
*/
|
|
31
|
-
localizedString: string;
|
|
32
|
-
/**
|
|
33
|
-
* The `MoneyV2` object provided as an argument to the hook.
|
|
34
|
-
*/
|
|
35
|
-
original: MoneyV2;
|
|
36
|
-
/**
|
|
37
|
-
* A string with trailing zeros removed from the fractional part, if any exist. If there are no trailing zeros, then the fractional part remains.
|
|
38
|
-
* For example, `$640.00` turns into `$640`.
|
|
39
|
-
* `$640.42` remains `$640.42`.
|
|
40
|
-
*/
|
|
41
|
-
withoutTrailingZeros: string;
|
|
42
|
-
/**
|
|
43
|
-
* A string without currency and without trailing zeros removed from the fractional part, if any exist. If there are no trailing zeros, then the fractional part remains.
|
|
44
|
-
* For example, `$640.00` turns into `640`.
|
|
45
|
-
* `$640.42` turns into `640.42`.
|
|
46
|
-
*/
|
|
47
|
-
withoutTrailingZerosAndCurrency: string;
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* The `useMoney` hook takes a [MoneyV2 object](https://shopify.dev/api/storefront/reference/common-objects/moneyv2) and returns a
|
|
51
|
-
* default-formatted string of the amount with the correct currency indicator, along with some of the parts provided by
|
|
52
|
-
* [Intl.NumberFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat).
|
|
53
|
-
*/
|
|
54
|
-
export declare function useMoney(money: MoneyV2): UseMoneyValue;
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useMoney = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const useShop_1 = require("../../foundation/useShop");
|
|
6
|
-
/**
|
|
7
|
-
* The `useMoney` hook takes a [MoneyV2 object](https://shopify.dev/api/storefront/reference/common-objects/moneyv2) and returns a
|
|
8
|
-
* default-formatted string of the amount with the correct currency indicator, along with some of the parts provided by
|
|
9
|
-
* [Intl.NumberFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat).
|
|
10
|
-
*/
|
|
11
|
-
function useMoney(money) {
|
|
12
|
-
const { locale } = (0, useShop_1.useShop)();
|
|
13
|
-
const options = (0, react_1.useMemo)(() => ({
|
|
14
|
-
style: 'currency',
|
|
15
|
-
currency: money.currencyCode,
|
|
16
|
-
}), [money.currencyCode]);
|
|
17
|
-
const amount = parseFloat(money.amount);
|
|
18
|
-
const value = (0, react_1.useMemo)(() => new Intl.NumberFormat(locale, options).format(amount), [amount, locale, options]);
|
|
19
|
-
const baseParts = new Intl.NumberFormat(locale, options).formatToParts(amount);
|
|
20
|
-
const nameParts = new Intl.NumberFormat(locale, {
|
|
21
|
-
...options,
|
|
22
|
-
currencyDisplay: 'name',
|
|
23
|
-
}).formatToParts(amount);
|
|
24
|
-
const narrowParts = new Intl.NumberFormat(locale, {
|
|
25
|
-
...options,
|
|
26
|
-
currencyDisplay: 'narrowSymbol',
|
|
27
|
-
}).formatToParts(amount);
|
|
28
|
-
const withoutTrailingZerosFormatter = new Intl.NumberFormat(locale, {
|
|
29
|
-
...options,
|
|
30
|
-
minimumFractionDigits: 0,
|
|
31
|
-
maximumFractionDigits: 0,
|
|
32
|
-
});
|
|
33
|
-
const withoutCurrencyFormatter = new Intl.NumberFormat(locale);
|
|
34
|
-
const withoutTrailingZerosOrCurrencyFormatter = new Intl.NumberFormat(locale, {
|
|
35
|
-
minimumFractionDigits: 0,
|
|
36
|
-
maximumFractionDigits: 0,
|
|
37
|
-
});
|
|
38
|
-
const withoutTrailingZeros = amount % 1 === 0 ? withoutTrailingZerosFormatter.format(amount) : value;
|
|
39
|
-
const withoutTrailingZerosAndCurrency = amount % 1 === 0
|
|
40
|
-
? withoutTrailingZerosOrCurrencyFormatter.format(amount)
|
|
41
|
-
: withoutCurrencyFormatter.format(amount);
|
|
42
|
-
const moneyValue = (0, react_1.useMemo)(() => {
|
|
43
|
-
var _a, _b, _c, _d, _e, _f;
|
|
44
|
-
return ({
|
|
45
|
-
currencyCode: money.currencyCode,
|
|
46
|
-
currencyName: (_b = (_a = nameParts.find((part) => part.type === 'currency')) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : money.currencyCode,
|
|
47
|
-
currencySymbol: (_d = (_c = baseParts.find((part) => part.type === 'currency')) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : money.currencyCode,
|
|
48
|
-
currencyNarrowSymbol: (_f = (_e = narrowParts.find((part) => part.type === 'currency')) === null || _e === void 0 ? void 0 : _e.value) !== null && _f !== void 0 ? _f : '',
|
|
49
|
-
parts: baseParts,
|
|
50
|
-
localizedString: value,
|
|
51
|
-
amount: baseParts
|
|
52
|
-
.filter((part) => ['decimal', 'fraction', 'group', 'integer', 'literal'].includes(part.type))
|
|
53
|
-
.map((part) => part.value)
|
|
54
|
-
.join(''),
|
|
55
|
-
original: money,
|
|
56
|
-
withoutTrailingZeros,
|
|
57
|
-
withoutTrailingZerosAndCurrency,
|
|
58
|
-
});
|
|
59
|
-
}, [
|
|
60
|
-
baseParts,
|
|
61
|
-
money,
|
|
62
|
-
nameParts,
|
|
63
|
-
narrowParts,
|
|
64
|
-
value,
|
|
65
|
-
withoutTrailingZeros,
|
|
66
|
-
withoutTrailingZerosAndCurrency,
|
|
67
|
-
]);
|
|
68
|
-
return moneyValue;
|
|
69
|
-
}
|
|
70
|
-
exports.useMoney = useMoney;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useMoney } from './hooks';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useParsedMetafields } from './useParsedMetafields';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useParsedMetafields = void 0;
|
|
4
|
-
var useParsedMetafields_1 = require("./useParsedMetafields");
|
|
5
|
-
Object.defineProperty(exports, "useParsedMetafields", { enumerable: true, get: function () { return useParsedMetafields_1.useParsedMetafields; } });
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import type { MetafieldConnection } from '../../storefront-api-types';
|
|
2
|
-
import type { PartialDeep } from 'type-fest';
|
|
3
|
-
/**
|
|
4
|
-
* The `useParsedMetafields` hook transforms a [MetafieldConnection](https://shopify.dev/api/storefront/reference/common-objects/metafieldconnection)
|
|
5
|
-
* in an array of metafields whose `values` have been parsed according to the metafield `type`.
|
|
6
|
-
*/
|
|
7
|
-
export declare function useParsedMetafields(
|
|
8
|
-
/** A [MetafieldConnection](https://shopify.dev/api/storefront/reference/common-objects/metafieldconnection). */
|
|
9
|
-
metafields?: PartialDeep<MetafieldConnection>): {
|
|
10
|
-
value: any;
|
|
11
|
-
id?: string | undefined;
|
|
12
|
-
__typename?: "Metafield" | undefined;
|
|
13
|
-
createdAt?: string | undefined;
|
|
14
|
-
description?: import("../../storefront-api-types").Maybe<string> | undefined;
|
|
15
|
-
key?: string | undefined;
|
|
16
|
-
namespace?: string | undefined;
|
|
17
|
-
parentResource?: import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Blog> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Article> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Customer> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").ProductVariant> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Order> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Collection> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Page> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Product> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Shop> | undefined;
|
|
18
|
-
reference?: import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Video> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").MediaImage> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").ProductVariant> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Page> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").Product> | import("type-fest/source/partial-deep").PartialObjectDeep<import("../../storefront-api-types").GenericFile> | null | undefined;
|
|
19
|
-
type?: string | undefined;
|
|
20
|
-
updatedAt?: string | undefined;
|
|
21
|
-
}[];
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useParsedMetafields = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const utilities_1 = require("../../utilities");
|
|
6
|
-
/**
|
|
7
|
-
* The `useParsedMetafields` hook transforms a [MetafieldConnection](https://shopify.dev/api/storefront/reference/common-objects/metafieldconnection)
|
|
8
|
-
* in an array of metafields whose `values` have been parsed according to the metafield `type`.
|
|
9
|
-
*/
|
|
10
|
-
function useParsedMetafields(
|
|
11
|
-
/** A [MetafieldConnection](https://shopify.dev/api/storefront/reference/common-objects/metafieldconnection). */
|
|
12
|
-
metafields) {
|
|
13
|
-
return (0, react_1.useMemo)(() => {
|
|
14
|
-
if (!metafields) {
|
|
15
|
-
throw new Error(`'useParsedMetafields' needs metafields`);
|
|
16
|
-
}
|
|
17
|
-
return (0, utilities_1.flattenConnection)(metafields).map((metafield) => {
|
|
18
|
-
return {
|
|
19
|
-
...metafield,
|
|
20
|
-
value: (0, utilities_1.parseMetafieldValue)(metafield),
|
|
21
|
-
};
|
|
22
|
-
});
|
|
23
|
-
}, [metafields]);
|
|
24
|
-
}
|
|
25
|
-
exports.useParsedMetafields = useParsedMetafields;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { SelectedOptions, OptionWithValues } from './types';
|
|
2
|
-
import type { ProductVariant as ProductVariantType } from '../../storefront-api-types';
|
|
3
|
-
import type { PartialDeep } from 'type-fest';
|
|
4
|
-
export declare function getAllOptionValues(variants: ProductVariantType[], option: string): string[];
|
|
5
|
-
export declare function getSelectedVariant(variants: PartialDeep<ProductVariantType>[], choices: SelectedOptions): PartialDeep<ProductVariantType> | undefined;
|
|
6
|
-
export declare function getOptions(variants: PartialDeep<ProductVariantType>[]): OptionWithValues[];
|