@shopify/hydrogen-react 0.0.0-next-9bff83c → 0.0.0-next-cfd8626

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.
Files changed (51) hide show
  1. package/dist/browser-dev/index.mjs +1 -5
  2. package/dist/browser-dev/index.mjs.map +1 -1
  3. package/dist/browser-dev/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  4. package/dist/browser-dev/parse-metafield.mjs.map +1 -0
  5. package/dist/browser-prod/index.mjs +1 -5
  6. package/dist/browser-prod/index.mjs.map +1 -1
  7. package/dist/browser-prod/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  8. package/dist/browser-prod/parse-metafield.mjs.map +1 -0
  9. package/dist/node-dev/index.js +2 -6
  10. package/dist/node-dev/index.js.map +1 -1
  11. package/dist/node-dev/index.mjs +1 -5
  12. package/dist/node-dev/index.mjs.map +1 -1
  13. package/dist/node-dev/{metafield-parser.js → parse-metafield.js} +18 -9
  14. package/dist/node-dev/parse-metafield.js.map +1 -0
  15. package/dist/node-dev/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  16. package/dist/node-dev/parse-metafield.mjs.map +1 -0
  17. package/dist/node-prod/index.js +2 -6
  18. package/dist/node-prod/index.js.map +1 -1
  19. package/dist/node-prod/index.mjs +1 -5
  20. package/dist/node-prod/index.mjs.map +1 -1
  21. package/dist/node-prod/{metafield-parser.js → parse-metafield.js} +18 -9
  22. package/dist/node-prod/parse-metafield.js.map +1 -0
  23. package/dist/node-prod/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
  24. package/dist/node-prod/parse-metafield.mjs.map +1 -0
  25. package/dist/types/index.d.cts +1 -2
  26. package/dist/types/index.d.ts +1 -2
  27. package/dist/types/{metafield-parser.d.ts → parse-metafield.d.ts} +9 -5
  28. package/dist/umd/hydrogen-react.dev.js +41 -409
  29. package/dist/umd/hydrogen-react.dev.js.map +1 -1
  30. package/dist/umd/hydrogen-react.prod.js +16 -17
  31. package/dist/umd/hydrogen-react.prod.js.map +1 -1
  32. package/package.json +1 -1
  33. package/dist/browser-dev/Metafield.mjs +0 -301
  34. package/dist/browser-dev/Metafield.mjs.map +0 -1
  35. package/dist/browser-dev/metafield-parser.mjs.map +0 -1
  36. package/dist/browser-prod/Metafield.mjs +0 -288
  37. package/dist/browser-prod/Metafield.mjs.map +0 -1
  38. package/dist/browser-prod/metafield-parser.mjs.map +0 -1
  39. package/dist/node-dev/Metafield.js +0 -301
  40. package/dist/node-dev/Metafield.js.map +0 -1
  41. package/dist/node-dev/Metafield.mjs +0 -301
  42. package/dist/node-dev/Metafield.mjs.map +0 -1
  43. package/dist/node-dev/metafield-parser.js.map +0 -1
  44. package/dist/node-dev/metafield-parser.mjs.map +0 -1
  45. package/dist/node-prod/Metafield.js +0 -288
  46. package/dist/node-prod/Metafield.js.map +0 -1
  47. package/dist/node-prod/Metafield.mjs +0 -288
  48. package/dist/node-prod/Metafield.mjs.map +0 -1
  49. package/dist/node-prod/metafield-parser.js.map +0 -1
  50. package/dist/node-prod/metafield-parser.mjs.map +0 -1
  51. package/dist/types/Metafield.d.ts +0 -61
@@ -990,7 +990,7 @@
990
990
  "X-Shopify-Storefront-Access-Token": accessToken
991
991
  };
992
992
  }
993
- var _jsxFileName$f = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopifyProvider.tsx";
993
+ var _jsxFileName$e = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopifyProvider.tsx";
994
994
  const ShopifyContext = React.createContext({
995
995
  storeDomain: "test",
996
996
  storefrontToken: "abc123",
@@ -1051,7 +1051,7 @@
1051
1051
  value: finalConfig,
1052
1052
  __self: this,
1053
1053
  __source: {
1054
- fileName: _jsxFileName$f,
1054
+ fileName: _jsxFileName$e,
1055
1055
  lineNumber: 84,
1056
1056
  columnNumber: 5
1057
1057
  }
@@ -1564,7 +1564,7 @@
1564
1564
  function isCartFetchResultEvent(event) {
1565
1565
  return event.type === "RESOLVE" || event.type === "ERROR" || event.type === "CART_COMPLETED";
1566
1566
  }
1567
- var _jsxFileName$e = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartProvider.tsx";
1567
+ var _jsxFileName$d = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartProvider.tsx";
1568
1568
  const CartContext = React.createContext(null);
1569
1569
  function useCart() {
1570
1570
  const context = React.useContext(CartContext);
@@ -1873,7 +1873,7 @@
1873
1873
  value: cartContextValue,
1874
1874
  __self: this,
1875
1875
  __source: {
1876
- fileName: _jsxFileName$e,
1876
+ fileName: _jsxFileName$d,
1877
1877
  lineNumber: 424,
1878
1878
  columnNumber: 5
1879
1879
  }
@@ -1939,7 +1939,7 @@
1939
1939
  var _a, _b;
1940
1940
  return event.payload.buyerIdentity.countryCode && ((_b = (_a = context.cart) == null ? void 0 : _a.buyerIdentity) == null ? void 0 : _b.countryCode) !== event.payload.buyerIdentity.countryCode;
1941
1941
  }
1942
- var _jsxFileName$d = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductProvider.tsx";
1942
+ var _jsxFileName$c = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductProvider.tsx";
1943
1943
  const ProductOptionsContext = React.createContext(null);
1944
1944
  function ProductProvider({
1945
1945
  children,
@@ -2025,7 +2025,7 @@
2025
2025
  value,
2026
2026
  __self: this,
2027
2027
  __source: {
2028
- fileName: _jsxFileName$d,
2028
+ fileName: _jsxFileName$c,
2029
2029
  lineNumber: 201,
2030
2030
  columnNumber: 5
2031
2031
  }
@@ -2098,7 +2098,7 @@
2098
2098
  }
2099
2099
  return true;
2100
2100
  }
2101
- var _jsxFileName$c = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BaseButton.tsx";
2101
+ var _jsxFileName$b = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BaseButton.tsx";
2102
2102
  function BaseButton(props) {
2103
2103
  const {
2104
2104
  as,
@@ -2123,13 +2123,13 @@
2123
2123
  ...passthroughProps,
2124
2124
  __self: this,
2125
2125
  __source: {
2126
- fileName: _jsxFileName$c,
2126
+ fileName: _jsxFileName$b,
2127
2127
  lineNumber: 59,
2128
2128
  columnNumber: 5
2129
2129
  }
2130
2130
  }, children);
2131
2131
  }
2132
- var _jsxFileName$b = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/AddToCartButton.tsx";
2132
+ var _jsxFileName$a = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/AddToCartButton.tsx";
2133
2133
  function AddToCartButton(props) {
2134
2134
  var _a;
2135
2135
  const [addingItem, setAddingItem] = React.useState(false);
@@ -2173,7 +2173,7 @@
2173
2173
  defaultOnClick: handleAddItem,
2174
2174
  __self: this,
2175
2175
  __source: {
2176
- fileName: _jsxFileName$b,
2176
+ fileName: _jsxFileName$a,
2177
2177
  lineNumber: 71,
2178
2178
  columnNumber: 7
2179
2179
  }
@@ -2193,13 +2193,13 @@
2193
2193
  "aria-live": "assertive",
2194
2194
  __self: this,
2195
2195
  __source: {
2196
- fileName: _jsxFileName$b,
2196
+ fileName: _jsxFileName$a,
2197
2197
  lineNumber: 80,
2198
2198
  columnNumber: 9
2199
2199
  }
2200
2200
  }, addingItem ? accessibleAddingToCartLabel : null) : null);
2201
2201
  }
2202
- var _jsxFileName$a = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BuyNowButton.tsx";
2202
+ var _jsxFileName$9 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BuyNowButton.tsx";
2203
2203
  function BuyNowButton(props) {
2204
2204
  const {
2205
2205
  cartCreate,
@@ -2236,13 +2236,13 @@
2236
2236
  defaultOnClick: handleBuyNow,
2237
2237
  __self: this,
2238
2238
  __source: {
2239
- fileName: _jsxFileName$a,
2239
+ fileName: _jsxFileName$9,
2240
2240
  lineNumber: 53,
2241
2241
  columnNumber: 5
2242
2242
  }
2243
2243
  }, children);
2244
2244
  }
2245
- var _jsxFileName$9 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartCheckoutButton.tsx";
2245
+ var _jsxFileName$8 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartCheckoutButton.tsx";
2246
2246
  function CartCheckoutButton(props) {
2247
2247
  const [requestedCheckout, setRequestedCheckout] = React.useState(false);
2248
2248
  const {
@@ -2264,7 +2264,7 @@
2264
2264
  onClick: () => setRequestedCheckout(true),
2265
2265
  __self: this,
2266
2266
  __source: {
2267
- fileName: _jsxFileName$9,
2267
+ fileName: _jsxFileName$8,
2268
2268
  lineNumber: 28,
2269
2269
  columnNumber: 5
2270
2270
  }
@@ -2278,7 +2278,7 @@
2278
2278
  Color: "string",
2279
2279
  UnsignedInt64: "string"
2280
2280
  };
2281
- var _jsxFileName$8 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ExternalVideo.tsx";
2281
+ var _jsxFileName$7 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ExternalVideo.tsx";
2282
2282
  function ExternalVideo(props) {
2283
2283
  var _a, _b;
2284
2284
  const {
@@ -2313,7 +2313,7 @@
2313
2313
  loading,
2314
2314
  __self: this,
2315
2315
  __source: {
2316
- fileName: _jsxFileName$8,
2316
+ fileName: _jsxFileName$7,
2317
2317
  lineNumber: 56,
2318
2318
  columnNumber: 5
2319
2319
  }
@@ -2392,7 +2392,7 @@
2392
2392
  }
2393
2393
  return { width: null, height: null };
2394
2394
  }
2395
- var _jsxFileName$7 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Image.tsx";
2395
+ var _jsxFileName$6 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Image.tsx";
2396
2396
  function Image({
2397
2397
  data,
2398
2398
  width,
@@ -2461,7 +2461,7 @@
2461
2461
  decoding,
2462
2462
  __self: this,
2463
2463
  __source: {
2464
- fileName: _jsxFileName$7,
2464
+ fileName: _jsxFileName$6,
2465
2465
  lineNumber: 150,
2466
2466
  columnNumber: 5
2467
2467
  }
@@ -2497,7 +2497,7 @@
2497
2497
  scale
2498
2498
  })} ${size}w`).join(", ");
2499
2499
  }
2500
- var _jsxFileName$6 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Video.tsx";
2500
+ var _jsxFileName$5 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Video.tsx";
2501
2501
  function Video(props) {
2502
2502
  var _a, _b;
2503
2503
  const {
@@ -2524,7 +2524,7 @@
2524
2524
  poster: posterUrl,
2525
2525
  __self: this,
2526
2526
  __source: {
2527
- fileName: _jsxFileName$6,
2527
+ fileName: _jsxFileName$5,
2528
2528
  lineNumber: 42,
2529
2529
  columnNumber: 5
2530
2530
  }
@@ -2539,7 +2539,7 @@
2539
2539
  type: source.mimeType,
2540
2540
  __self: this,
2541
2541
  __source: {
2542
- fileName: _jsxFileName$6,
2542
+ fileName: _jsxFileName$5,
2543
2543
  lineNumber: 54,
2544
2544
  columnNumber: 11
2545
2545
  }
@@ -2592,7 +2592,7 @@
2592
2592
  }, [url, stringifiedOptions, options]);
2593
2593
  return status;
2594
2594
  }
2595
- var _jsxFileName$5 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ModelViewer.tsx";
2595
+ var _jsxFileName$4 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ModelViewer.tsx";
2596
2596
  function ModelViewer(props) {
2597
2597
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
2598
2598
  const [modelViewer, setModelViewer] = React.useState(void 0);
@@ -2730,13 +2730,13 @@
2730
2730
  scale: passthroughProps.scale,
2731
2731
  __self: this,
2732
2732
  __source: {
2733
- fileName: _jsxFileName$5,
2733
+ fileName: _jsxFileName$4,
2734
2734
  lineNumber: 222,
2735
2735
  columnNumber: 5
2736
2736
  }
2737
2737
  }, children);
2738
2738
  }
2739
- var _jsxFileName$4 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/MediaFile.tsx";
2739
+ var _jsxFileName$3 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/MediaFile.tsx";
2740
2740
  function MediaFile({
2741
2741
  data,
2742
2742
  mediaOptions,
@@ -2756,7 +2756,7 @@
2756
2756
  data: data.image,
2757
2757
  __self: this,
2758
2758
  __source: {
2759
- fileName: _jsxFileName$4,
2759
+ fileName: _jsxFileName$3,
2760
2760
  lineNumber: 54,
2761
2761
  columnNumber: 9
2762
2762
  }
@@ -2769,7 +2769,7 @@
2769
2769
  data,
2770
2770
  __self: this,
2771
2771
  __source: {
2772
- fileName: _jsxFileName$4,
2772
+ fileName: _jsxFileName$3,
2773
2773
  lineNumber: 63,
2774
2774
  columnNumber: 9
2775
2775
  }
@@ -2782,7 +2782,7 @@
2782
2782
  data,
2783
2783
  __self: this,
2784
2784
  __source: {
2785
- fileName: _jsxFileName$4,
2785
+ fileName: _jsxFileName$3,
2786
2786
  lineNumber: 68,
2787
2787
  columnNumber: 9
2788
2788
  }
@@ -2795,7 +2795,7 @@
2795
2795
  data,
2796
2796
  __self: this,
2797
2797
  __source: {
2798
- fileName: _jsxFileName$4,
2798
+ fileName: _jsxFileName$3,
2799
2799
  lineNumber: 78,
2800
2800
  columnNumber: 9
2801
2801
  }
@@ -2809,384 +2809,10 @@
2809
2809
  }
2810
2810
  }
2811
2811
  }
2812
- var _jsxFileName$3 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Metafield.tsx";
2813
- function Metafield(props) {
2814
- var _a, _b, _c, _d, _e, _f, _g, _h, _i;
2815
- const {
2816
- data,
2817
- as,
2818
- ...passthroughProps
2819
- } = props;
2820
- const {
2821
- locale
2822
- } = useShop();
2823
- const parsedMetafield = React.useMemo(() => parseMetafield(data), [data]);
2824
- if (!parsedMetafield) {
2825
- const noDataPropWarning = `<Metafield/>: nothing was passed to the data prop 'data'. Rendering 'null'`;
2826
- {
2827
- throw new Error(noDataPropWarning);
2828
- }
2829
- }
2830
- if (parsedMetafield.value === null || parsedMetafield.value === void 0) {
2831
- const noValueWarning = `<Metafield/>: No metafield value for metafield ${(_a = parsedMetafield.id) != null ? _a : parsedMetafield.key}. Rendering 'null'`;
2832
- {
2833
- throw new Error(noValueWarning);
2834
- }
2835
- }
2836
- switch (parsedMetafield.type) {
2837
- case "date": {
2838
- const Wrapper2 = as != null ? as : "time";
2839
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2840
- ...passthroughProps,
2841
- __self: this,
2842
- __source: {
2843
- fileName: _jsxFileName$3,
2844
- lineNumber: 68,
2845
- columnNumber: 9
2846
- }
2847
- }, parsedMetafield.value.toLocaleDateString(locale));
2848
- }
2849
- case "date_time": {
2850
- const Wrapper2 = as != null ? as : "time";
2851
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2852
- ...passthroughProps,
2853
- __self: this,
2854
- __source: {
2855
- fileName: _jsxFileName$3,
2856
- lineNumber: 76,
2857
- columnNumber: 9
2858
- }
2859
- }, parsedMetafield.value.toLocaleString(locale));
2860
- }
2861
- case "weight":
2862
- case "dimension":
2863
- case "volume": {
2864
- const Wrapper2 = as != null ? as : "span";
2865
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2866
- ...passthroughProps,
2867
- __self: this,
2868
- __source: {
2869
- fileName: _jsxFileName$3,
2870
- lineNumber: 86,
2871
- columnNumber: 9
2872
- }
2873
- }, getMeasurementAsString(parsedMetafield.value, locale));
2874
- }
2875
- case "rating": {
2876
- const Wrapper2 = as != null ? as : "span";
2877
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2878
- ...passthroughProps,
2879
- __self: this,
2880
- __source: {
2881
- fileName: _jsxFileName$3,
2882
- lineNumber: 94,
2883
- columnNumber: 9
2884
- }
2885
- }, parsedMetafield.value.value);
2886
- }
2887
- case "single_line_text_field": {
2888
- const Wrapper2 = as != null ? as : "span";
2889
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2890
- ...passthroughProps,
2891
- dangerouslySetInnerHTML: {
2892
- __html: parsedMetafield.value
2893
- },
2894
- __self: this,
2895
- __source: {
2896
- fileName: _jsxFileName$3,
2897
- lineNumber: 102,
2898
- columnNumber: 9
2899
- }
2900
- });
2901
- }
2902
- case "multi_line_text_field": {
2903
- const Wrapper2 = as != null ? as : "div";
2904
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2905
- ...passthroughProps,
2906
- dangerouslySetInnerHTML: {
2907
- __html: parsedMetafield.value.split("\n").join("<br/>")
2908
- },
2909
- __self: this,
2910
- __source: {
2911
- fileName: _jsxFileName$3,
2912
- lineNumber: 111,
2913
- columnNumber: 9
2914
- }
2915
- });
2916
- }
2917
- case "url": {
2918
- const protocolLessUrl = new URL(parsedMetafield.value);
2919
- return /* @__PURE__ */ React__default.default.createElement("a", {
2920
- href: protocolLessUrl.href.replace(protocolLessUrl.protocol, ""),
2921
- ...passthroughProps,
2922
- __self: this,
2923
- __source: {
2924
- fileName: _jsxFileName$3,
2925
- lineNumber: 122,
2926
- columnNumber: 9
2927
- }
2928
- }, parsedMetafield.value);
2929
- }
2930
- case "json": {
2931
- const Wrapper2 = as != null ? as : "span";
2932
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2933
- ...passthroughProps,
2934
- __self: this,
2935
- __source: {
2936
- fileName: _jsxFileName$3,
2937
- lineNumber: 133,
2938
- columnNumber: 9
2939
- }
2940
- }, JSON.stringify(parsedMetafield.value));
2941
- }
2942
- case "product_reference":
2943
- case "variant_reference":
2944
- case "page_reference": {
2945
- const Wrapper2 = as != null ? as : "span";
2946
- const ref = parsedMetafield.reference;
2947
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2948
- ...passthroughProps,
2949
- __self: this,
2950
- __source: {
2951
- fileName: _jsxFileName$3,
2952
- lineNumber: 144,
2953
- columnNumber: 9
2954
- }
2955
- }, (_c = (_b = ref == null ? void 0 : ref.title) != null ? _b : ref == null ? void 0 : ref.id) != null ? _c : "");
2956
- }
2957
- case "list.single_line_text_field": {
2958
- const Wrapper2 = as != null ? as : "ul";
2959
- const refArray = parsedMetafield.references ? flattenConnection(parsedMetafield.references) : [];
2960
- return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
2961
- ...passthroughProps,
2962
- __self: this,
2963
- __source: {
2964
- fileName: _jsxFileName$3,
2965
- lineNumber: 154,
2966
- columnNumber: 9
2967
- }
2968
- }, refArray.map((ref, index2) => /* @__PURE__ */ React__default.default.createElement("li", {
2969
- key: `${ref != null ? ref : ""}-${index2}`,
2970
- __self: this,
2971
- __source: {
2972
- fileName: _jsxFileName$3,
2973
- lineNumber: 158,
2974
- columnNumber: 13
2975
- }
2976
- }, ref)));
2977
- }
2978
- case "file_reference": {
2979
- if (((_d = parsedMetafield.reference) == null ? void 0 : _d.__typename) === "MediaImage") {
2980
- const ref = parsedMetafield.reference;
2981
- return ref.image ? /* @__PURE__ */ React__default.default.createElement(Image, {
2982
- data: ref.image,
2983
- ...passthroughProps,
2984
- __self: this,
2985
- __source: {
2986
- fileName: _jsxFileName$3,
2987
- lineNumber: 167,
2988
- columnNumber: 11
2989
- }
2990
- }) : null;
2991
- } else if (((_e = parsedMetafield.reference) == null ? void 0 : _e.__typename) === "GenericFile") {
2992
- const ref = parsedMetafield.reference;
2993
- return ref.previewImage ? /* @__PURE__ */ React__default.default.createElement("a", {
2994
- href: (_g = (_f = parsedMetafield.reference) == null ? void 0 : _f.url) != null ? _g : "",
2995
- ...passthroughProps,
2996
- __self: this,
2997
- __source: {
2998
- fileName: _jsxFileName$3,
2999
- lineNumber: 172,
3000
- columnNumber: 11
3001
- }
3002
- }, /* @__PURE__ */ React__default.default.createElement(Image, {
3003
- data: ref.previewImage,
3004
- __self: this,
3005
- __source: {
3006
- fileName: _jsxFileName$3,
3007
- lineNumber: 173,
3008
- columnNumber: 13
3009
- }
3010
- })) : null;
3011
- } else if (((_h = parsedMetafield.reference) == null ? void 0 : _h.__typename) === "Video") {
3012
- const ref = parsedMetafield.reference;
3013
- return /* @__PURE__ */ React__default.default.createElement(Video, {
3014
- ...passthroughProps,
3015
- data: ref,
3016
- __self: this,
3017
- __source: {
3018
- fileName: _jsxFileName$3,
3019
- lineNumber: 178,
3020
- columnNumber: 16
3021
- }
3022
- });
3023
- }
3024
- }
3025
- }
3026
- const Wrapper = as != null ? as : "span";
3027
- return /* @__PURE__ */ React__default.default.createElement(Wrapper, {
3028
- ...passthroughProps,
3029
- __self: this,
3030
- __source: {
3031
- fileName: _jsxFileName$3,
3032
- lineNumber: 185,
3033
- columnNumber: 5
3034
- }
3035
- }, (_i = parsedMetafield.value) == null ? void 0 : _i.toString());
3036
- }
3037
2812
  function parseMetafield(metafield) {
3038
- {
3039
- console.info(`'parseMetafield()' will have a breaking change in a future version; its behavior will match that of 'metafieldParser()'`);
3040
- }
3041
- if (!metafield) {
3042
- {
3043
- console.warn(`'parseMetafield' was not passed any value for the 'metafield' argument`);
3044
- }
3045
- return null;
3046
- }
3047
- if (metafield.value === null || metafield.value === void 0) {
3048
- console.warn(`'parseMetafield()' was passed ${metafield.value} for 'metafield.value'`);
3049
- }
3050
- return {
3051
- ...metafield,
3052
- value: parseMetafieldValue(metafield)
3053
- };
3054
- }
3055
- function parseMetafieldValue(metafield) {
3056
- {
3057
- console.info(`'parseMetafieldValue()' will be removed in a future version`);
3058
- }
3059
- if (!metafield) {
3060
- return null;
3061
- }
3062
- if (metafield.value === null || metafield.value === void 0) {
3063
- {
3064
- console.warn(`'parseMetafieldValue()' was passed ${metafield.value} for 'metafield.value'`);
3065
- }
3066
- return metafield.value;
3067
- }
3068
- switch (metafield.type) {
3069
- case "boolean":
3070
- return metafield.value === "true";
3071
- case "number_integer":
3072
- return parseInt(metafield.value);
3073
- case "number_decimal":
3074
- return parseFloat(metafield.value);
3075
- case "date":
3076
- case "date_time":
3077
- return new Date(metafield.value);
3078
- case "json":
3079
- case "weight":
3080
- case "dimension":
3081
- case "volume":
3082
- case "rating":
3083
- return parseJSON(metafield.value);
3084
- case "color":
3085
- case "single_line_text_field":
3086
- case "multi_line_text_field":
3087
- case "product_reference":
3088
- case "page_reference":
3089
- case "variant_reference":
3090
- case "file_reference":
3091
- case "url":
3092
- default:
3093
- return metafield.value;
3094
- }
3095
- }
3096
- function parseJSON(json) {
3097
- if (String(json).includes("__proto__")) {
3098
- return JSON.parse(json, (k, v2) => {
3099
- if (k !== "__proto__")
3100
- return v2;
3101
- });
3102
- }
3103
- return JSON.parse(json);
3104
- }
3105
- const UNIT_MAPPING = {
3106
- mm: "millimeter",
3107
- cm: "centimeter",
3108
- m: "meter",
3109
- in: "inch",
3110
- ft: "foot",
3111
- yd: "yard",
3112
- ml: "milliliter",
3113
- l: "liter",
3114
- us_fl_oz: "fluid-ounce",
3115
- us_gal: "gallon",
3116
- kg: "kilogram",
3117
- g: "gram",
3118
- lb: "pound",
3119
- oz: "ounce"
3120
- };
3121
- function getMeasurementAsString(measurement, locale = "en-us", options = {}) {
3122
- let measure = {
3123
- value: measurement.value,
3124
- unit: UNIT_MAPPING[measurement.unit]
3125
- };
3126
- if (measure.unit == null) {
3127
- measure = convertToSupportedUnit(measurement.value, measurement.unit);
3128
- }
3129
- return new Intl.NumberFormat(locale, {
3130
- ...options,
3131
- unit: measure.unit,
3132
- style: "unit"
3133
- }).format(measure.value);
3134
- }
3135
- function convertToSupportedUnit(value, unit) {
3136
- switch (unit) {
3137
- case "cl":
3138
- return {
3139
- value: value / 1e3,
3140
- unit: "liter"
3141
- };
3142
- case "m3":
3143
- return {
3144
- value: value * 1e3,
3145
- unit: "liter"
3146
- };
3147
- case "us_pt":
3148
- return {
3149
- value: value * 0.125,
3150
- unit: "gallon"
3151
- };
3152
- case "us_qt":
3153
- return {
3154
- value: value * 0.5,
3155
- unit: "gallon"
3156
- };
3157
- case "us_oz":
3158
- return {
3159
- value: value / 128,
3160
- unit: "gallon"
3161
- };
3162
- case "imp_pt":
3163
- return {
3164
- value: value / 6.661,
3165
- unit: "gallon"
3166
- };
3167
- case "imp_qt":
3168
- return {
3169
- value: value / 3.331,
3170
- unit: "gallon"
3171
- };
3172
- case "imp_gal":
3173
- return {
3174
- value: value / 1.201,
3175
- unit: "gallon"
3176
- };
3177
- case "imp_fl_oz":
3178
- return {
3179
- value: value * 0.96076,
3180
- unit: "fluid-ounce"
3181
- };
3182
- default:
3183
- throw new Error(`Unit not supported: ${unit}`);
3184
- }
3185
- }
3186
- function metafieldParser(metafield) {
3187
2813
  var _a, _b, _c, _d;
3188
2814
  if (!metafield.type) {
3189
- const noTypeError = `metafieldParser(): The 'type' field is required in order to parse the Metafield.`;
2815
+ const noTypeError = `parseMetafield(): The 'type' field is required in order to parse the Metafield.`;
3190
2816
  {
3191
2817
  throw new Error(noTypeError);
3192
2818
  }
@@ -3233,7 +2859,7 @@
3233
2859
  try {
3234
2860
  parsedValue = parseJSON((_a = metafield.value) != null ? _a : "");
3235
2861
  } catch (err) {
3236
- const parseError = `metafieldParser(): attempted to JSON.parse the 'metafield.value' property, but failed.`;
2862
+ const parseError = `parseMetafield(): attempted to JSON.parse the 'metafield.value' property, but failed.`;
3237
2863
  {
3238
2864
  throw new Error(parseError);
3239
2865
  }
@@ -3273,13 +2899,22 @@
3273
2899
  parsedValue: flattenConnection((_d = metafield.references) != null ? _d : void 0)
3274
2900
  };
3275
2901
  default: {
3276
- const typeNotFoundError = `metafieldParser(): the 'metafield.type' you passed in is not supported. Your type: "${metafield.type}". If you believe this is an error, please open an issue on GitHub.`;
2902
+ const typeNotFoundError = `parseMetafield(): the 'metafield.type' you passed in is not supported. Your type: "${metafield.type}". If you believe this is an error, please open an issue on GitHub.`;
3277
2903
  {
3278
2904
  throw new Error(typeNotFoundError);
3279
2905
  }
3280
2906
  }
3281
2907
  }
3282
2908
  }
2909
+ function parseJSON(json) {
2910
+ if (String(json).includes("__proto__")) {
2911
+ return JSON.parse(json, (k, v2) => {
2912
+ if (k !== "__proto__")
2913
+ return v2;
2914
+ });
2915
+ }
2916
+ return JSON.parse(json);
2917
+ }
3283
2918
  function useMoney(money) {
3284
2919
  const {
3285
2920
  locale
@@ -3524,7 +3159,6 @@
3524
3159
  exports2.ExternalVideo = ExternalVideo;
3525
3160
  exports2.Image = Image;
3526
3161
  exports2.MediaFile = MediaFile;
3527
- exports2.Metafield = Metafield;
3528
3162
  exports2.ModelViewer = ModelViewer;
3529
3163
  exports2.Money = Money;
3530
3164
  exports2.ProductPrice = ProductPrice;
@@ -3534,9 +3168,7 @@
3534
3168
  exports2.Video = Video;
3535
3169
  exports2.createStorefrontClient = createStorefrontClient;
3536
3170
  exports2.flattenConnection = flattenConnection;
3537
- exports2.metafieldParser = metafieldParser;
3538
3171
  exports2.parseMetafield = parseMetafield;
3539
- exports2.parseMetafieldValue = parseMetafieldValue;
3540
3172
  exports2.storefrontApiCustomScalars = storefrontApiCustomScalars;
3541
3173
  exports2.useCart = useCart;
3542
3174
  exports2.useMoney = useMoney;