@shopify/hydrogen-react 0.0.0-next-8ee1ffb → 0.0.0-next-541cac7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser-dev/ShopPayButton.mjs +1 -1
- package/dist/browser-dev/ShopPayButton.mjs.map +1 -1
- package/dist/browser-dev/ShopifyProvider.mjs +2 -11
- package/dist/browser-dev/ShopifyProvider.mjs.map +1 -1
- package/dist/browser-dev/cart-queries.mjs +0 -8
- package/dist/browser-dev/cart-queries.mjs.map +1 -1
- package/dist/browser-dev/index.mjs +1 -5
- package/dist/browser-dev/index.mjs.map +1 -1
- package/dist/browser-dev/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
- package/dist/browser-dev/parse-metafield.mjs.map +1 -0
- package/dist/browser-prod/ShopPayButton.mjs +1 -1
- package/dist/browser-prod/ShopPayButton.mjs.map +1 -1
- package/dist/browser-prod/ShopifyProvider.mjs +2 -8
- package/dist/browser-prod/ShopifyProvider.mjs.map +1 -1
- package/dist/browser-prod/cart-queries.mjs +0 -8
- package/dist/browser-prod/cart-queries.mjs.map +1 -1
- package/dist/browser-prod/index.mjs +1 -5
- package/dist/browser-prod/index.mjs.map +1 -1
- package/dist/browser-prod/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
- package/dist/browser-prod/parse-metafield.mjs.map +1 -0
- package/dist/node-dev/ShopPayButton.js +1 -1
- package/dist/node-dev/ShopPayButton.js.map +1 -1
- package/dist/node-dev/ShopPayButton.mjs +1 -1
- package/dist/node-dev/ShopPayButton.mjs.map +1 -1
- package/dist/node-dev/ShopifyProvider.js +2 -11
- package/dist/node-dev/ShopifyProvider.js.map +1 -1
- package/dist/node-dev/ShopifyProvider.mjs +2 -11
- package/dist/node-dev/ShopifyProvider.mjs.map +1 -1
- package/dist/node-dev/cart-queries.js +0 -8
- package/dist/node-dev/cart-queries.js.map +1 -1
- package/dist/node-dev/cart-queries.mjs +0 -8
- package/dist/node-dev/cart-queries.mjs.map +1 -1
- package/dist/node-dev/index.js +2 -6
- package/dist/node-dev/index.js.map +1 -1
- package/dist/node-dev/index.mjs +1 -5
- package/dist/node-dev/index.mjs.map +1 -1
- package/dist/node-dev/{metafield-parser.js → parse-metafield.js} +18 -9
- package/dist/node-dev/parse-metafield.js.map +1 -0
- package/dist/node-dev/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
- package/dist/node-dev/parse-metafield.mjs.map +1 -0
- package/dist/node-prod/ShopPayButton.js +1 -1
- package/dist/node-prod/ShopPayButton.js.map +1 -1
- package/dist/node-prod/ShopPayButton.mjs +1 -1
- package/dist/node-prod/ShopPayButton.mjs.map +1 -1
- package/dist/node-prod/ShopifyProvider.js +2 -8
- package/dist/node-prod/ShopifyProvider.js.map +1 -1
- package/dist/node-prod/ShopifyProvider.mjs +2 -8
- package/dist/node-prod/ShopifyProvider.mjs.map +1 -1
- package/dist/node-prod/cart-queries.js +0 -8
- package/dist/node-prod/cart-queries.js.map +1 -1
- package/dist/node-prod/cart-queries.mjs +0 -8
- package/dist/node-prod/cart-queries.mjs.map +1 -1
- package/dist/node-prod/index.js +2 -6
- package/dist/node-prod/index.js.map +1 -1
- package/dist/node-prod/index.mjs +1 -5
- package/dist/node-prod/index.mjs.map +1 -1
- package/dist/node-prod/{metafield-parser.js → parse-metafield.js} +18 -9
- package/dist/node-prod/parse-metafield.js.map +1 -0
- package/dist/node-prod/{metafield-parser.mjs → parse-metafield.mjs} +16 -7
- package/dist/node-prod/parse-metafield.mjs.map +1 -0
- package/dist/types/ShopifyProvider.d.ts +1 -1
- package/dist/types/cart-queries.d.ts +1 -1
- package/dist/types/index.d.cts +1 -2
- package/dist/types/index.d.ts +1 -2
- package/dist/types/{metafield-parser.d.ts → parse-metafield.d.ts} +9 -5
- package/dist/umd/hydrogen-react.dev.js +45 -430
- package/dist/umd/hydrogen-react.dev.js.map +1 -1
- package/dist/umd/hydrogen-react.prod.js +16 -25
- package/dist/umd/hydrogen-react.prod.js.map +1 -1
- package/package.json +1 -1
- package/dist/browser-dev/Metafield.mjs +0 -301
- package/dist/browser-dev/Metafield.mjs.map +0 -1
- package/dist/browser-dev/metafield-parser.mjs.map +0 -1
- package/dist/browser-prod/Metafield.mjs +0 -288
- package/dist/browser-prod/Metafield.mjs.map +0 -1
- package/dist/browser-prod/metafield-parser.mjs.map +0 -1
- package/dist/node-dev/Metafield.js +0 -301
- package/dist/node-dev/Metafield.js.map +0 -1
- package/dist/node-dev/Metafield.mjs +0 -301
- package/dist/node-dev/Metafield.mjs.map +0 -1
- package/dist/node-dev/metafield-parser.js.map +0 -1
- package/dist/node-dev/metafield-parser.mjs.map +0 -1
- package/dist/node-prod/Metafield.js +0 -288
- package/dist/node-prod/Metafield.js.map +0 -1
- package/dist/node-prod/Metafield.mjs +0 -288
- package/dist/node-prod/Metafield.mjs.map +0 -1
- package/dist/node-prod/metafield-parser.js.map +0 -1
- package/dist/node-prod/metafield-parser.mjs.map +0 -1
- package/dist/types/Metafield.d.ts +0 -61
|
@@ -846,17 +846,9 @@
|
|
|
846
846
|
compareAtPrice {
|
|
847
847
|
...MoneyFragment
|
|
848
848
|
}
|
|
849
|
-
# @deprecated remove in next major
|
|
850
|
-
compareAtPriceV2 {
|
|
851
|
-
...MoneyFragment
|
|
852
|
-
}
|
|
853
849
|
price {
|
|
854
850
|
...MoneyFragment
|
|
855
851
|
}
|
|
856
|
-
# @deprecated remove in next major
|
|
857
|
-
priceV2 {
|
|
858
|
-
...MoneyFragment
|
|
859
|
-
}
|
|
860
852
|
requiresShipping
|
|
861
853
|
title
|
|
862
854
|
image {
|
|
@@ -998,7 +990,7 @@
|
|
|
998
990
|
"X-Shopify-Storefront-Access-Token": accessToken
|
|
999
991
|
};
|
|
1000
992
|
}
|
|
1001
|
-
var _jsxFileName$
|
|
993
|
+
var _jsxFileName$e = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ShopifyProvider.tsx";
|
|
1002
994
|
const ShopifyContext = React.createContext({
|
|
1003
995
|
storeDomain: "test",
|
|
1004
996
|
storefrontToken: "abc123",
|
|
@@ -1031,21 +1023,12 @@
|
|
|
1031
1023
|
console.warn(`<ShopifyProvider/>: This version of Hydrogen-UI is built for Shopify's Storefront API version ${SFAPI_VERSION}, but it looks like you're using version ${shopifyConfig.storefrontApiVersion}. There may be issues or bugs if you use a mismatched version of Hydrogen-UI and the Storefront API.`);
|
|
1032
1024
|
}
|
|
1033
1025
|
const finalConfig = React.useMemo(() => {
|
|
1034
|
-
const storeDomain = shopifyConfig.storeDomain.replace(/^https?:\/\//, "");
|
|
1035
|
-
if (storeDomain.includes(".myshopify.com")) {
|
|
1036
|
-
{
|
|
1037
|
-
console.warn(`<ShopifyProvider/>: passing a 'storeDomain' prop that includes '.myshopify.com' will be unsupported in the future. Passing only the subdomain (for example, if the URL is 'test.myshopify.com', passing in 'test') will be the supported way going forward.`);
|
|
1038
|
-
}
|
|
1039
|
-
}
|
|
1040
1026
|
function getShopifyDomain(overrideProps) {
|
|
1041
1027
|
var _a;
|
|
1042
|
-
|
|
1043
|
-
subDomain = subDomain.replace(".myshopify.com", "");
|
|
1044
|
-
return `https://${subDomain}.myshopify.com`;
|
|
1028
|
+
return (_a = overrideProps == null ? void 0 : overrideProps.storeDomain) != null ? _a : shopifyConfig.storeDomain;
|
|
1045
1029
|
}
|
|
1046
1030
|
return {
|
|
1047
1031
|
...shopifyConfig,
|
|
1048
|
-
storeDomain,
|
|
1049
1032
|
getPublicTokenHeaders(overrideProps) {
|
|
1050
1033
|
var _a;
|
|
1051
1034
|
return getPublicTokenHeadersRaw(overrideProps.contentType, shopifyConfig.storefrontApiVersion, (_a = overrideProps.storefrontToken) != null ? _a : shopifyConfig.storefrontToken);
|
|
@@ -1059,7 +1042,7 @@
|
|
|
1059
1042
|
}
|
|
1060
1043
|
}
|
|
1061
1044
|
return `${getShopifyDomain({
|
|
1062
|
-
storeDomain: (_b = overrideProps == null ? void 0 : overrideProps.storeDomain) != null ? _b : storeDomain
|
|
1045
|
+
storeDomain: (_b = overrideProps == null ? void 0 : overrideProps.storeDomain) != null ? _b : shopifyConfig.storeDomain
|
|
1063
1046
|
})}/api/${(_c = overrideProps == null ? void 0 : overrideProps.storefrontApiVersion) != null ? _c : shopifyConfig.storefrontApiVersion}/graphql.json`;
|
|
1064
1047
|
}
|
|
1065
1048
|
};
|
|
@@ -1068,8 +1051,8 @@
|
|
|
1068
1051
|
value: finalConfig,
|
|
1069
1052
|
__self: this,
|
|
1070
1053
|
__source: {
|
|
1071
|
-
fileName: _jsxFileName$
|
|
1072
|
-
lineNumber:
|
|
1054
|
+
fileName: _jsxFileName$e,
|
|
1055
|
+
lineNumber: 84,
|
|
1073
1056
|
columnNumber: 5
|
|
1074
1057
|
}
|
|
1075
1058
|
}, children);
|
|
@@ -1581,7 +1564,7 @@
|
|
|
1581
1564
|
function isCartFetchResultEvent(event) {
|
|
1582
1565
|
return event.type === "RESOLVE" || event.type === "ERROR" || event.type === "CART_COMPLETED";
|
|
1583
1566
|
}
|
|
1584
|
-
var _jsxFileName$
|
|
1567
|
+
var _jsxFileName$d = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartProvider.tsx";
|
|
1585
1568
|
const CartContext = React.createContext(null);
|
|
1586
1569
|
function useCart() {
|
|
1587
1570
|
const context = React.useContext(CartContext);
|
|
@@ -1890,7 +1873,7 @@
|
|
|
1890
1873
|
value: cartContextValue,
|
|
1891
1874
|
__self: this,
|
|
1892
1875
|
__source: {
|
|
1893
|
-
fileName: _jsxFileName$
|
|
1876
|
+
fileName: _jsxFileName$d,
|
|
1894
1877
|
lineNumber: 424,
|
|
1895
1878
|
columnNumber: 5
|
|
1896
1879
|
}
|
|
@@ -1956,7 +1939,7 @@
|
|
|
1956
1939
|
var _a, _b;
|
|
1957
1940
|
return event.payload.buyerIdentity.countryCode && ((_b = (_a = context.cart) == null ? void 0 : _a.buyerIdentity) == null ? void 0 : _b.countryCode) !== event.payload.buyerIdentity.countryCode;
|
|
1958
1941
|
}
|
|
1959
|
-
var _jsxFileName$
|
|
1942
|
+
var _jsxFileName$c = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ProductProvider.tsx";
|
|
1960
1943
|
const ProductOptionsContext = React.createContext(null);
|
|
1961
1944
|
function ProductProvider({
|
|
1962
1945
|
children,
|
|
@@ -2042,7 +2025,7 @@
|
|
|
2042
2025
|
value,
|
|
2043
2026
|
__self: this,
|
|
2044
2027
|
__source: {
|
|
2045
|
-
fileName: _jsxFileName$
|
|
2028
|
+
fileName: _jsxFileName$c,
|
|
2046
2029
|
lineNumber: 201,
|
|
2047
2030
|
columnNumber: 5
|
|
2048
2031
|
}
|
|
@@ -2115,7 +2098,7 @@
|
|
|
2115
2098
|
}
|
|
2116
2099
|
return true;
|
|
2117
2100
|
}
|
|
2118
|
-
var _jsxFileName$
|
|
2101
|
+
var _jsxFileName$b = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BaseButton.tsx";
|
|
2119
2102
|
function BaseButton(props) {
|
|
2120
2103
|
const {
|
|
2121
2104
|
as,
|
|
@@ -2140,13 +2123,13 @@
|
|
|
2140
2123
|
...passthroughProps,
|
|
2141
2124
|
__self: this,
|
|
2142
2125
|
__source: {
|
|
2143
|
-
fileName: _jsxFileName$
|
|
2126
|
+
fileName: _jsxFileName$b,
|
|
2144
2127
|
lineNumber: 59,
|
|
2145
2128
|
columnNumber: 5
|
|
2146
2129
|
}
|
|
2147
2130
|
}, children);
|
|
2148
2131
|
}
|
|
2149
|
-
var _jsxFileName$
|
|
2132
|
+
var _jsxFileName$a = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/AddToCartButton.tsx";
|
|
2150
2133
|
function AddToCartButton(props) {
|
|
2151
2134
|
var _a;
|
|
2152
2135
|
const [addingItem, setAddingItem] = React.useState(false);
|
|
@@ -2190,7 +2173,7 @@
|
|
|
2190
2173
|
defaultOnClick: handleAddItem,
|
|
2191
2174
|
__self: this,
|
|
2192
2175
|
__source: {
|
|
2193
|
-
fileName: _jsxFileName$
|
|
2176
|
+
fileName: _jsxFileName$a,
|
|
2194
2177
|
lineNumber: 71,
|
|
2195
2178
|
columnNumber: 7
|
|
2196
2179
|
}
|
|
@@ -2210,13 +2193,13 @@
|
|
|
2210
2193
|
"aria-live": "assertive",
|
|
2211
2194
|
__self: this,
|
|
2212
2195
|
__source: {
|
|
2213
|
-
fileName: _jsxFileName$
|
|
2196
|
+
fileName: _jsxFileName$a,
|
|
2214
2197
|
lineNumber: 80,
|
|
2215
2198
|
columnNumber: 9
|
|
2216
2199
|
}
|
|
2217
2200
|
}, addingItem ? accessibleAddingToCartLabel : null) : null);
|
|
2218
2201
|
}
|
|
2219
|
-
var _jsxFileName$
|
|
2202
|
+
var _jsxFileName$9 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/BuyNowButton.tsx";
|
|
2220
2203
|
function BuyNowButton(props) {
|
|
2221
2204
|
const {
|
|
2222
2205
|
cartCreate,
|
|
@@ -2253,13 +2236,13 @@
|
|
|
2253
2236
|
defaultOnClick: handleBuyNow,
|
|
2254
2237
|
__self: this,
|
|
2255
2238
|
__source: {
|
|
2256
|
-
fileName: _jsxFileName$
|
|
2239
|
+
fileName: _jsxFileName$9,
|
|
2257
2240
|
lineNumber: 53,
|
|
2258
2241
|
columnNumber: 5
|
|
2259
2242
|
}
|
|
2260
2243
|
}, children);
|
|
2261
2244
|
}
|
|
2262
|
-
var _jsxFileName$
|
|
2245
|
+
var _jsxFileName$8 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/CartCheckoutButton.tsx";
|
|
2263
2246
|
function CartCheckoutButton(props) {
|
|
2264
2247
|
const [requestedCheckout, setRequestedCheckout] = React.useState(false);
|
|
2265
2248
|
const {
|
|
@@ -2281,7 +2264,7 @@
|
|
|
2281
2264
|
onClick: () => setRequestedCheckout(true),
|
|
2282
2265
|
__self: this,
|
|
2283
2266
|
__source: {
|
|
2284
|
-
fileName: _jsxFileName$
|
|
2267
|
+
fileName: _jsxFileName$8,
|
|
2285
2268
|
lineNumber: 28,
|
|
2286
2269
|
columnNumber: 5
|
|
2287
2270
|
}
|
|
@@ -2295,7 +2278,7 @@
|
|
|
2295
2278
|
Color: "string",
|
|
2296
2279
|
UnsignedInt64: "string"
|
|
2297
2280
|
};
|
|
2298
|
-
var _jsxFileName$
|
|
2281
|
+
var _jsxFileName$7 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ExternalVideo.tsx";
|
|
2299
2282
|
function ExternalVideo(props) {
|
|
2300
2283
|
var _a, _b;
|
|
2301
2284
|
const {
|
|
@@ -2330,7 +2313,7 @@
|
|
|
2330
2313
|
loading,
|
|
2331
2314
|
__self: this,
|
|
2332
2315
|
__source: {
|
|
2333
|
-
fileName: _jsxFileName$
|
|
2316
|
+
fileName: _jsxFileName$7,
|
|
2334
2317
|
lineNumber: 56,
|
|
2335
2318
|
columnNumber: 5
|
|
2336
2319
|
}
|
|
@@ -2409,7 +2392,7 @@
|
|
|
2409
2392
|
}
|
|
2410
2393
|
return { width: null, height: null };
|
|
2411
2394
|
}
|
|
2412
|
-
var _jsxFileName$
|
|
2395
|
+
var _jsxFileName$6 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Image.tsx";
|
|
2413
2396
|
function Image({
|
|
2414
2397
|
data,
|
|
2415
2398
|
width,
|
|
@@ -2478,7 +2461,7 @@
|
|
|
2478
2461
|
decoding,
|
|
2479
2462
|
__self: this,
|
|
2480
2463
|
__source: {
|
|
2481
|
-
fileName: _jsxFileName$
|
|
2464
|
+
fileName: _jsxFileName$6,
|
|
2482
2465
|
lineNumber: 150,
|
|
2483
2466
|
columnNumber: 5
|
|
2484
2467
|
}
|
|
@@ -2514,7 +2497,7 @@
|
|
|
2514
2497
|
scale
|
|
2515
2498
|
})} ${size}w`).join(", ");
|
|
2516
2499
|
}
|
|
2517
|
-
var _jsxFileName$
|
|
2500
|
+
var _jsxFileName$5 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Video.tsx";
|
|
2518
2501
|
function Video(props) {
|
|
2519
2502
|
var _a, _b;
|
|
2520
2503
|
const {
|
|
@@ -2541,7 +2524,7 @@
|
|
|
2541
2524
|
poster: posterUrl,
|
|
2542
2525
|
__self: this,
|
|
2543
2526
|
__source: {
|
|
2544
|
-
fileName: _jsxFileName$
|
|
2527
|
+
fileName: _jsxFileName$5,
|
|
2545
2528
|
lineNumber: 42,
|
|
2546
2529
|
columnNumber: 5
|
|
2547
2530
|
}
|
|
@@ -2556,7 +2539,7 @@
|
|
|
2556
2539
|
type: source.mimeType,
|
|
2557
2540
|
__self: this,
|
|
2558
2541
|
__source: {
|
|
2559
|
-
fileName: _jsxFileName$
|
|
2542
|
+
fileName: _jsxFileName$5,
|
|
2560
2543
|
lineNumber: 54,
|
|
2561
2544
|
columnNumber: 11
|
|
2562
2545
|
}
|
|
@@ -2609,7 +2592,7 @@
|
|
|
2609
2592
|
}, [url, stringifiedOptions, options]);
|
|
2610
2593
|
return status;
|
|
2611
2594
|
}
|
|
2612
|
-
var _jsxFileName$
|
|
2595
|
+
var _jsxFileName$4 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/ModelViewer.tsx";
|
|
2613
2596
|
function ModelViewer(props) {
|
|
2614
2597
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
2615
2598
|
const [modelViewer, setModelViewer] = React.useState(void 0);
|
|
@@ -2747,13 +2730,13 @@
|
|
|
2747
2730
|
scale: passthroughProps.scale,
|
|
2748
2731
|
__self: this,
|
|
2749
2732
|
__source: {
|
|
2750
|
-
fileName: _jsxFileName$
|
|
2733
|
+
fileName: _jsxFileName$4,
|
|
2751
2734
|
lineNumber: 222,
|
|
2752
2735
|
columnNumber: 5
|
|
2753
2736
|
}
|
|
2754
2737
|
}, children);
|
|
2755
2738
|
}
|
|
2756
|
-
var _jsxFileName$
|
|
2739
|
+
var _jsxFileName$3 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/MediaFile.tsx";
|
|
2757
2740
|
function MediaFile({
|
|
2758
2741
|
data,
|
|
2759
2742
|
mediaOptions,
|
|
@@ -2773,7 +2756,7 @@
|
|
|
2773
2756
|
data: data.image,
|
|
2774
2757
|
__self: this,
|
|
2775
2758
|
__source: {
|
|
2776
|
-
fileName: _jsxFileName$
|
|
2759
|
+
fileName: _jsxFileName$3,
|
|
2777
2760
|
lineNumber: 54,
|
|
2778
2761
|
columnNumber: 9
|
|
2779
2762
|
}
|
|
@@ -2786,7 +2769,7 @@
|
|
|
2786
2769
|
data,
|
|
2787
2770
|
__self: this,
|
|
2788
2771
|
__source: {
|
|
2789
|
-
fileName: _jsxFileName$
|
|
2772
|
+
fileName: _jsxFileName$3,
|
|
2790
2773
|
lineNumber: 63,
|
|
2791
2774
|
columnNumber: 9
|
|
2792
2775
|
}
|
|
@@ -2799,7 +2782,7 @@
|
|
|
2799
2782
|
data,
|
|
2800
2783
|
__self: this,
|
|
2801
2784
|
__source: {
|
|
2802
|
-
fileName: _jsxFileName$
|
|
2785
|
+
fileName: _jsxFileName$3,
|
|
2803
2786
|
lineNumber: 68,
|
|
2804
2787
|
columnNumber: 9
|
|
2805
2788
|
}
|
|
@@ -2812,7 +2795,7 @@
|
|
|
2812
2795
|
data,
|
|
2813
2796
|
__self: this,
|
|
2814
2797
|
__source: {
|
|
2815
|
-
fileName: _jsxFileName$
|
|
2798
|
+
fileName: _jsxFileName$3,
|
|
2816
2799
|
lineNumber: 78,
|
|
2817
2800
|
columnNumber: 9
|
|
2818
2801
|
}
|
|
@@ -2826,384 +2809,10 @@
|
|
|
2826
2809
|
}
|
|
2827
2810
|
}
|
|
2828
2811
|
}
|
|
2829
|
-
var _jsxFileName$3 = "/home/runner/work/hydrogen-ui/hydrogen-ui/packages/react/src/Metafield.tsx";
|
|
2830
|
-
function Metafield(props) {
|
|
2831
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
2832
|
-
const {
|
|
2833
|
-
data,
|
|
2834
|
-
as,
|
|
2835
|
-
...passthroughProps
|
|
2836
|
-
} = props;
|
|
2837
|
-
const {
|
|
2838
|
-
locale
|
|
2839
|
-
} = useShop();
|
|
2840
|
-
const parsedMetafield = React.useMemo(() => parseMetafield(data), [data]);
|
|
2841
|
-
if (!parsedMetafield) {
|
|
2842
|
-
const noDataPropWarning = `<Metafield/>: nothing was passed to the data prop 'data'. Rendering 'null'`;
|
|
2843
|
-
{
|
|
2844
|
-
throw new Error(noDataPropWarning);
|
|
2845
|
-
}
|
|
2846
|
-
}
|
|
2847
|
-
if (parsedMetafield.value === null || parsedMetafield.value === void 0) {
|
|
2848
|
-
const noValueWarning = `<Metafield/>: No metafield value for metafield ${(_a = parsedMetafield.id) != null ? _a : parsedMetafield.key}. Rendering 'null'`;
|
|
2849
|
-
{
|
|
2850
|
-
throw new Error(noValueWarning);
|
|
2851
|
-
}
|
|
2852
|
-
}
|
|
2853
|
-
switch (parsedMetafield.type) {
|
|
2854
|
-
case "date": {
|
|
2855
|
-
const Wrapper2 = as != null ? as : "time";
|
|
2856
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2857
|
-
...passthroughProps,
|
|
2858
|
-
__self: this,
|
|
2859
|
-
__source: {
|
|
2860
|
-
fileName: _jsxFileName$3,
|
|
2861
|
-
lineNumber: 68,
|
|
2862
|
-
columnNumber: 9
|
|
2863
|
-
}
|
|
2864
|
-
}, parsedMetafield.value.toLocaleDateString(locale));
|
|
2865
|
-
}
|
|
2866
|
-
case "date_time": {
|
|
2867
|
-
const Wrapper2 = as != null ? as : "time";
|
|
2868
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2869
|
-
...passthroughProps,
|
|
2870
|
-
__self: this,
|
|
2871
|
-
__source: {
|
|
2872
|
-
fileName: _jsxFileName$3,
|
|
2873
|
-
lineNumber: 76,
|
|
2874
|
-
columnNumber: 9
|
|
2875
|
-
}
|
|
2876
|
-
}, parsedMetafield.value.toLocaleString(locale));
|
|
2877
|
-
}
|
|
2878
|
-
case "weight":
|
|
2879
|
-
case "dimension":
|
|
2880
|
-
case "volume": {
|
|
2881
|
-
const Wrapper2 = as != null ? as : "span";
|
|
2882
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2883
|
-
...passthroughProps,
|
|
2884
|
-
__self: this,
|
|
2885
|
-
__source: {
|
|
2886
|
-
fileName: _jsxFileName$3,
|
|
2887
|
-
lineNumber: 86,
|
|
2888
|
-
columnNumber: 9
|
|
2889
|
-
}
|
|
2890
|
-
}, getMeasurementAsString(parsedMetafield.value, locale));
|
|
2891
|
-
}
|
|
2892
|
-
case "rating": {
|
|
2893
|
-
const Wrapper2 = as != null ? as : "span";
|
|
2894
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2895
|
-
...passthroughProps,
|
|
2896
|
-
__self: this,
|
|
2897
|
-
__source: {
|
|
2898
|
-
fileName: _jsxFileName$3,
|
|
2899
|
-
lineNumber: 94,
|
|
2900
|
-
columnNumber: 9
|
|
2901
|
-
}
|
|
2902
|
-
}, parsedMetafield.value.value);
|
|
2903
|
-
}
|
|
2904
|
-
case "single_line_text_field": {
|
|
2905
|
-
const Wrapper2 = as != null ? as : "span";
|
|
2906
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2907
|
-
...passthroughProps,
|
|
2908
|
-
dangerouslySetInnerHTML: {
|
|
2909
|
-
__html: parsedMetafield.value
|
|
2910
|
-
},
|
|
2911
|
-
__self: this,
|
|
2912
|
-
__source: {
|
|
2913
|
-
fileName: _jsxFileName$3,
|
|
2914
|
-
lineNumber: 102,
|
|
2915
|
-
columnNumber: 9
|
|
2916
|
-
}
|
|
2917
|
-
});
|
|
2918
|
-
}
|
|
2919
|
-
case "multi_line_text_field": {
|
|
2920
|
-
const Wrapper2 = as != null ? as : "div";
|
|
2921
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2922
|
-
...passthroughProps,
|
|
2923
|
-
dangerouslySetInnerHTML: {
|
|
2924
|
-
__html: parsedMetafield.value.split("\n").join("<br/>")
|
|
2925
|
-
},
|
|
2926
|
-
__self: this,
|
|
2927
|
-
__source: {
|
|
2928
|
-
fileName: _jsxFileName$3,
|
|
2929
|
-
lineNumber: 111,
|
|
2930
|
-
columnNumber: 9
|
|
2931
|
-
}
|
|
2932
|
-
});
|
|
2933
|
-
}
|
|
2934
|
-
case "url": {
|
|
2935
|
-
const protocolLessUrl = new URL(parsedMetafield.value);
|
|
2936
|
-
return /* @__PURE__ */ React__default.default.createElement("a", {
|
|
2937
|
-
href: protocolLessUrl.href.replace(protocolLessUrl.protocol, ""),
|
|
2938
|
-
...passthroughProps,
|
|
2939
|
-
__self: this,
|
|
2940
|
-
__source: {
|
|
2941
|
-
fileName: _jsxFileName$3,
|
|
2942
|
-
lineNumber: 122,
|
|
2943
|
-
columnNumber: 9
|
|
2944
|
-
}
|
|
2945
|
-
}, parsedMetafield.value);
|
|
2946
|
-
}
|
|
2947
|
-
case "json": {
|
|
2948
|
-
const Wrapper2 = as != null ? as : "span";
|
|
2949
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2950
|
-
...passthroughProps,
|
|
2951
|
-
__self: this,
|
|
2952
|
-
__source: {
|
|
2953
|
-
fileName: _jsxFileName$3,
|
|
2954
|
-
lineNumber: 133,
|
|
2955
|
-
columnNumber: 9
|
|
2956
|
-
}
|
|
2957
|
-
}, JSON.stringify(parsedMetafield.value));
|
|
2958
|
-
}
|
|
2959
|
-
case "product_reference":
|
|
2960
|
-
case "variant_reference":
|
|
2961
|
-
case "page_reference": {
|
|
2962
|
-
const Wrapper2 = as != null ? as : "span";
|
|
2963
|
-
const ref = parsedMetafield.reference;
|
|
2964
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2965
|
-
...passthroughProps,
|
|
2966
|
-
__self: this,
|
|
2967
|
-
__source: {
|
|
2968
|
-
fileName: _jsxFileName$3,
|
|
2969
|
-
lineNumber: 144,
|
|
2970
|
-
columnNumber: 9
|
|
2971
|
-
}
|
|
2972
|
-
}, (_c = (_b = ref == null ? void 0 : ref.title) != null ? _b : ref == null ? void 0 : ref.id) != null ? _c : "");
|
|
2973
|
-
}
|
|
2974
|
-
case "list.single_line_text_field": {
|
|
2975
|
-
const Wrapper2 = as != null ? as : "ul";
|
|
2976
|
-
const refArray = parsedMetafield.references ? flattenConnection(parsedMetafield.references) : [];
|
|
2977
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper2, {
|
|
2978
|
-
...passthroughProps,
|
|
2979
|
-
__self: this,
|
|
2980
|
-
__source: {
|
|
2981
|
-
fileName: _jsxFileName$3,
|
|
2982
|
-
lineNumber: 154,
|
|
2983
|
-
columnNumber: 9
|
|
2984
|
-
}
|
|
2985
|
-
}, refArray.map((ref, index2) => /* @__PURE__ */ React__default.default.createElement("li", {
|
|
2986
|
-
key: `${ref != null ? ref : ""}-${index2}`,
|
|
2987
|
-
__self: this,
|
|
2988
|
-
__source: {
|
|
2989
|
-
fileName: _jsxFileName$3,
|
|
2990
|
-
lineNumber: 158,
|
|
2991
|
-
columnNumber: 13
|
|
2992
|
-
}
|
|
2993
|
-
}, ref)));
|
|
2994
|
-
}
|
|
2995
|
-
case "file_reference": {
|
|
2996
|
-
if (((_d = parsedMetafield.reference) == null ? void 0 : _d.__typename) === "MediaImage") {
|
|
2997
|
-
const ref = parsedMetafield.reference;
|
|
2998
|
-
return ref.image ? /* @__PURE__ */ React__default.default.createElement(Image, {
|
|
2999
|
-
data: ref.image,
|
|
3000
|
-
...passthroughProps,
|
|
3001
|
-
__self: this,
|
|
3002
|
-
__source: {
|
|
3003
|
-
fileName: _jsxFileName$3,
|
|
3004
|
-
lineNumber: 167,
|
|
3005
|
-
columnNumber: 11
|
|
3006
|
-
}
|
|
3007
|
-
}) : null;
|
|
3008
|
-
} else if (((_e = parsedMetafield.reference) == null ? void 0 : _e.__typename) === "GenericFile") {
|
|
3009
|
-
const ref = parsedMetafield.reference;
|
|
3010
|
-
return ref.previewImage ? /* @__PURE__ */ React__default.default.createElement("a", {
|
|
3011
|
-
href: (_g = (_f = parsedMetafield.reference) == null ? void 0 : _f.url) != null ? _g : "",
|
|
3012
|
-
...passthroughProps,
|
|
3013
|
-
__self: this,
|
|
3014
|
-
__source: {
|
|
3015
|
-
fileName: _jsxFileName$3,
|
|
3016
|
-
lineNumber: 172,
|
|
3017
|
-
columnNumber: 11
|
|
3018
|
-
}
|
|
3019
|
-
}, /* @__PURE__ */ React__default.default.createElement(Image, {
|
|
3020
|
-
data: ref.previewImage,
|
|
3021
|
-
__self: this,
|
|
3022
|
-
__source: {
|
|
3023
|
-
fileName: _jsxFileName$3,
|
|
3024
|
-
lineNumber: 173,
|
|
3025
|
-
columnNumber: 13
|
|
3026
|
-
}
|
|
3027
|
-
})) : null;
|
|
3028
|
-
} else if (((_h = parsedMetafield.reference) == null ? void 0 : _h.__typename) === "Video") {
|
|
3029
|
-
const ref = parsedMetafield.reference;
|
|
3030
|
-
return /* @__PURE__ */ React__default.default.createElement(Video, {
|
|
3031
|
-
...passthroughProps,
|
|
3032
|
-
data: ref,
|
|
3033
|
-
__self: this,
|
|
3034
|
-
__source: {
|
|
3035
|
-
fileName: _jsxFileName$3,
|
|
3036
|
-
lineNumber: 178,
|
|
3037
|
-
columnNumber: 16
|
|
3038
|
-
}
|
|
3039
|
-
});
|
|
3040
|
-
}
|
|
3041
|
-
}
|
|
3042
|
-
}
|
|
3043
|
-
const Wrapper = as != null ? as : "span";
|
|
3044
|
-
return /* @__PURE__ */ React__default.default.createElement(Wrapper, {
|
|
3045
|
-
...passthroughProps,
|
|
3046
|
-
__self: this,
|
|
3047
|
-
__source: {
|
|
3048
|
-
fileName: _jsxFileName$3,
|
|
3049
|
-
lineNumber: 185,
|
|
3050
|
-
columnNumber: 5
|
|
3051
|
-
}
|
|
3052
|
-
}, (_i = parsedMetafield.value) == null ? void 0 : _i.toString());
|
|
3053
|
-
}
|
|
3054
2812
|
function parseMetafield(metafield) {
|
|
3055
|
-
{
|
|
3056
|
-
console.info(`'parseMetafield()' will have a breaking change in a future version; its behavior will match that of 'metafieldParser()'`);
|
|
3057
|
-
}
|
|
3058
|
-
if (!metafield) {
|
|
3059
|
-
{
|
|
3060
|
-
console.warn(`'parseMetafield' was not passed any value for the 'metafield' argument`);
|
|
3061
|
-
}
|
|
3062
|
-
return null;
|
|
3063
|
-
}
|
|
3064
|
-
if (metafield.value === null || metafield.value === void 0) {
|
|
3065
|
-
console.warn(`'parseMetafield()' was passed ${metafield.value} for 'metafield.value'`);
|
|
3066
|
-
}
|
|
3067
|
-
return {
|
|
3068
|
-
...metafield,
|
|
3069
|
-
value: parseMetafieldValue(metafield)
|
|
3070
|
-
};
|
|
3071
|
-
}
|
|
3072
|
-
function parseMetafieldValue(metafield) {
|
|
3073
|
-
{
|
|
3074
|
-
console.info(`'parseMetafieldValue()' will be removed in a future version`);
|
|
3075
|
-
}
|
|
3076
|
-
if (!metafield) {
|
|
3077
|
-
return null;
|
|
3078
|
-
}
|
|
3079
|
-
if (metafield.value === null || metafield.value === void 0) {
|
|
3080
|
-
{
|
|
3081
|
-
console.warn(`'parseMetafieldValue()' was passed ${metafield.value} for 'metafield.value'`);
|
|
3082
|
-
}
|
|
3083
|
-
return metafield.value;
|
|
3084
|
-
}
|
|
3085
|
-
switch (metafield.type) {
|
|
3086
|
-
case "boolean":
|
|
3087
|
-
return metafield.value === "true";
|
|
3088
|
-
case "number_integer":
|
|
3089
|
-
return parseInt(metafield.value);
|
|
3090
|
-
case "number_decimal":
|
|
3091
|
-
return parseFloat(metafield.value);
|
|
3092
|
-
case "date":
|
|
3093
|
-
case "date_time":
|
|
3094
|
-
return new Date(metafield.value);
|
|
3095
|
-
case "json":
|
|
3096
|
-
case "weight":
|
|
3097
|
-
case "dimension":
|
|
3098
|
-
case "volume":
|
|
3099
|
-
case "rating":
|
|
3100
|
-
return parseJSON(metafield.value);
|
|
3101
|
-
case "color":
|
|
3102
|
-
case "single_line_text_field":
|
|
3103
|
-
case "multi_line_text_field":
|
|
3104
|
-
case "product_reference":
|
|
3105
|
-
case "page_reference":
|
|
3106
|
-
case "variant_reference":
|
|
3107
|
-
case "file_reference":
|
|
3108
|
-
case "url":
|
|
3109
|
-
default:
|
|
3110
|
-
return metafield.value;
|
|
3111
|
-
}
|
|
3112
|
-
}
|
|
3113
|
-
function parseJSON(json) {
|
|
3114
|
-
if (String(json).includes("__proto__")) {
|
|
3115
|
-
return JSON.parse(json, (k, v2) => {
|
|
3116
|
-
if (k !== "__proto__")
|
|
3117
|
-
return v2;
|
|
3118
|
-
});
|
|
3119
|
-
}
|
|
3120
|
-
return JSON.parse(json);
|
|
3121
|
-
}
|
|
3122
|
-
const UNIT_MAPPING = {
|
|
3123
|
-
mm: "millimeter",
|
|
3124
|
-
cm: "centimeter",
|
|
3125
|
-
m: "meter",
|
|
3126
|
-
in: "inch",
|
|
3127
|
-
ft: "foot",
|
|
3128
|
-
yd: "yard",
|
|
3129
|
-
ml: "milliliter",
|
|
3130
|
-
l: "liter",
|
|
3131
|
-
us_fl_oz: "fluid-ounce",
|
|
3132
|
-
us_gal: "gallon",
|
|
3133
|
-
kg: "kilogram",
|
|
3134
|
-
g: "gram",
|
|
3135
|
-
lb: "pound",
|
|
3136
|
-
oz: "ounce"
|
|
3137
|
-
};
|
|
3138
|
-
function getMeasurementAsString(measurement, locale = "en-us", options = {}) {
|
|
3139
|
-
let measure = {
|
|
3140
|
-
value: measurement.value,
|
|
3141
|
-
unit: UNIT_MAPPING[measurement.unit]
|
|
3142
|
-
};
|
|
3143
|
-
if (measure.unit == null) {
|
|
3144
|
-
measure = convertToSupportedUnit(measurement.value, measurement.unit);
|
|
3145
|
-
}
|
|
3146
|
-
return new Intl.NumberFormat(locale, {
|
|
3147
|
-
...options,
|
|
3148
|
-
unit: measure.unit,
|
|
3149
|
-
style: "unit"
|
|
3150
|
-
}).format(measure.value);
|
|
3151
|
-
}
|
|
3152
|
-
function convertToSupportedUnit(value, unit) {
|
|
3153
|
-
switch (unit) {
|
|
3154
|
-
case "cl":
|
|
3155
|
-
return {
|
|
3156
|
-
value: value / 1e3,
|
|
3157
|
-
unit: "liter"
|
|
3158
|
-
};
|
|
3159
|
-
case "m3":
|
|
3160
|
-
return {
|
|
3161
|
-
value: value * 1e3,
|
|
3162
|
-
unit: "liter"
|
|
3163
|
-
};
|
|
3164
|
-
case "us_pt":
|
|
3165
|
-
return {
|
|
3166
|
-
value: value * 0.125,
|
|
3167
|
-
unit: "gallon"
|
|
3168
|
-
};
|
|
3169
|
-
case "us_qt":
|
|
3170
|
-
return {
|
|
3171
|
-
value: value * 0.5,
|
|
3172
|
-
unit: "gallon"
|
|
3173
|
-
};
|
|
3174
|
-
case "us_oz":
|
|
3175
|
-
return {
|
|
3176
|
-
value: value / 128,
|
|
3177
|
-
unit: "gallon"
|
|
3178
|
-
};
|
|
3179
|
-
case "imp_pt":
|
|
3180
|
-
return {
|
|
3181
|
-
value: value / 6.661,
|
|
3182
|
-
unit: "gallon"
|
|
3183
|
-
};
|
|
3184
|
-
case "imp_qt":
|
|
3185
|
-
return {
|
|
3186
|
-
value: value / 3.331,
|
|
3187
|
-
unit: "gallon"
|
|
3188
|
-
};
|
|
3189
|
-
case "imp_gal":
|
|
3190
|
-
return {
|
|
3191
|
-
value: value / 1.201,
|
|
3192
|
-
unit: "gallon"
|
|
3193
|
-
};
|
|
3194
|
-
case "imp_fl_oz":
|
|
3195
|
-
return {
|
|
3196
|
-
value: value * 0.96076,
|
|
3197
|
-
unit: "fluid-ounce"
|
|
3198
|
-
};
|
|
3199
|
-
default:
|
|
3200
|
-
throw new Error(`Unit not supported: ${unit}`);
|
|
3201
|
-
}
|
|
3202
|
-
}
|
|
3203
|
-
function metafieldParser(metafield) {
|
|
3204
2813
|
var _a, _b, _c, _d;
|
|
3205
2814
|
if (!metafield.type) {
|
|
3206
|
-
const noTypeError = `
|
|
2815
|
+
const noTypeError = `parseMetafield(): The 'type' field is required in order to parse the Metafield.`;
|
|
3207
2816
|
{
|
|
3208
2817
|
throw new Error(noTypeError);
|
|
3209
2818
|
}
|
|
@@ -3250,7 +2859,7 @@
|
|
|
3250
2859
|
try {
|
|
3251
2860
|
parsedValue = parseJSON((_a = metafield.value) != null ? _a : "");
|
|
3252
2861
|
} catch (err) {
|
|
3253
|
-
const parseError = `
|
|
2862
|
+
const parseError = `parseMetafield(): attempted to JSON.parse the 'metafield.value' property, but failed.`;
|
|
3254
2863
|
{
|
|
3255
2864
|
throw new Error(parseError);
|
|
3256
2865
|
}
|
|
@@ -3290,13 +2899,22 @@
|
|
|
3290
2899
|
parsedValue: flattenConnection((_d = metafield.references) != null ? _d : void 0)
|
|
3291
2900
|
};
|
|
3292
2901
|
default: {
|
|
3293
|
-
const typeNotFoundError = `
|
|
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.`;
|
|
3294
2903
|
{
|
|
3295
2904
|
throw new Error(typeNotFoundError);
|
|
3296
2905
|
}
|
|
3297
2906
|
}
|
|
3298
2907
|
}
|
|
3299
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
|
+
}
|
|
3300
2918
|
function useMoney(money) {
|
|
3301
2919
|
const {
|
|
3302
2920
|
locale
|
|
@@ -3517,7 +3135,7 @@
|
|
|
3517
3135
|
columnNumber: 5
|
|
3518
3136
|
}
|
|
3519
3137
|
}, shopPayLoadedStatus === "done" && /* @__PURE__ */ React__default.default.createElement("shop-pay-button", {
|
|
3520
|
-
"store-url":
|
|
3138
|
+
"store-url": storeDomain,
|
|
3521
3139
|
variants: ids.join(","),
|
|
3522
3140
|
__self: this,
|
|
3523
3141
|
__source: {
|
|
@@ -3541,7 +3159,6 @@
|
|
|
3541
3159
|
exports2.ExternalVideo = ExternalVideo;
|
|
3542
3160
|
exports2.Image = Image;
|
|
3543
3161
|
exports2.MediaFile = MediaFile;
|
|
3544
|
-
exports2.Metafield = Metafield;
|
|
3545
3162
|
exports2.ModelViewer = ModelViewer;
|
|
3546
3163
|
exports2.Money = Money;
|
|
3547
3164
|
exports2.ProductPrice = ProductPrice;
|
|
@@ -3551,9 +3168,7 @@
|
|
|
3551
3168
|
exports2.Video = Video;
|
|
3552
3169
|
exports2.createStorefrontClient = createStorefrontClient;
|
|
3553
3170
|
exports2.flattenConnection = flattenConnection;
|
|
3554
|
-
exports2.metafieldParser = metafieldParser;
|
|
3555
3171
|
exports2.parseMetafield = parseMetafield;
|
|
3556
|
-
exports2.parseMetafieldValue = parseMetafieldValue;
|
|
3557
3172
|
exports2.storefrontApiCustomScalars = storefrontApiCustomScalars;
|
|
3558
3173
|
exports2.useCart = useCart;
|
|
3559
3174
|
exports2.useMoney = useMoney;
|