@weaverse/hydrogen 2.7.1 → 2.7.4
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/index.d.mts +9 -3
- package/dist/index.d.ts +9 -3
- package/dist/index.js +51 -29
- package/dist/index.mjs +38 -16
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ElementData, ElementSchema, BasicInput as BasicInput$1, WeaverseElement, WeaverseCoreParams, WeaverseProjectDataType, WeaverseResourcePickerData, Weaverse, PlatformTypeEnum, WeaverseItemStore } from '@weaverse/react';
|
|
2
|
-
export { InputType, WeaverseImage, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
2
|
+
export { InputType, PositionInputValue, WeaverseImage, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
3
3
|
import { NavigateFunction } from '@remix-run/react';
|
|
4
4
|
import { createWithCache, Storefront } from '@shopify/hydrogen';
|
|
5
5
|
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
@@ -112,9 +112,15 @@ interface HydrogenComponentSchema extends ElementSchema {
|
|
|
112
112
|
type BasicInput = BasicInput$1 & {
|
|
113
113
|
shouldRevalidate?: boolean;
|
|
114
114
|
};
|
|
115
|
+
type HeadingInputType = 'heading';
|
|
116
|
+
type HeadingInput = {
|
|
117
|
+
type: HeadingInputType;
|
|
118
|
+
label: string;
|
|
119
|
+
[key: string]: any;
|
|
120
|
+
};
|
|
115
121
|
interface InspectorGroup {
|
|
116
122
|
group: string;
|
|
117
|
-
inputs: BasicInput[];
|
|
123
|
+
inputs: (BasicInput | HeadingInput)[];
|
|
118
124
|
}
|
|
119
125
|
interface HydrogenComponentProps<L = any> extends WeaverseElement {
|
|
120
126
|
className?: string;
|
|
@@ -336,4 +342,4 @@ declare class WeaverseHydrogenItem extends WeaverseItemStore {
|
|
|
336
342
|
set data(update: HydrogenComponentData);
|
|
337
343
|
}
|
|
338
344
|
|
|
339
|
-
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, ThemeSettingsStore, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, useThemeSettings, withWeaverse };
|
|
345
|
+
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, ThemeSettingsStore, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, useThemeSettings, withWeaverse };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ElementData, ElementSchema, BasicInput as BasicInput$1, WeaverseElement, WeaverseCoreParams, WeaverseProjectDataType, WeaverseResourcePickerData, Weaverse, PlatformTypeEnum, WeaverseItemStore } from '@weaverse/react';
|
|
2
|
-
export { InputType, WeaverseImage, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
2
|
+
export { InputType, PositionInputValue, WeaverseImage, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
3
3
|
import { NavigateFunction } from '@remix-run/react';
|
|
4
4
|
import { createWithCache, Storefront } from '@shopify/hydrogen';
|
|
5
5
|
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
@@ -112,9 +112,15 @@ interface HydrogenComponentSchema extends ElementSchema {
|
|
|
112
112
|
type BasicInput = BasicInput$1 & {
|
|
113
113
|
shouldRevalidate?: boolean;
|
|
114
114
|
};
|
|
115
|
+
type HeadingInputType = 'heading';
|
|
116
|
+
type HeadingInput = {
|
|
117
|
+
type: HeadingInputType;
|
|
118
|
+
label: string;
|
|
119
|
+
[key: string]: any;
|
|
120
|
+
};
|
|
115
121
|
interface InspectorGroup {
|
|
116
122
|
group: string;
|
|
117
|
-
inputs: BasicInput[];
|
|
123
|
+
inputs: (BasicInput | HeadingInput)[];
|
|
118
124
|
}
|
|
119
125
|
interface HydrogenComponentProps<L = any> extends WeaverseElement {
|
|
120
126
|
className?: string;
|
|
@@ -336,4 +342,4 @@ declare class WeaverseHydrogenItem extends WeaverseItemStore {
|
|
|
336
342
|
set data(update: HydrogenComponentData);
|
|
337
343
|
}
|
|
338
344
|
|
|
339
|
-
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, ThemeSettingsStore, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, useThemeSettings, withWeaverse };
|
|
345
|
+
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, ThemeSettingsStore, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, useThemeSettings, withWeaverse };
|
package/dist/index.js
CHANGED
|
@@ -38,15 +38,15 @@ __export(src_exports, {
|
|
|
38
38
|
getRequestQueries: () => getRequestQueries,
|
|
39
39
|
getSelectedProductOptions: () => getSelectedProductOptions,
|
|
40
40
|
getWeaverseConfigs: () => getWeaverseConfigs,
|
|
41
|
-
useChildInstances: () =>
|
|
42
|
-
useItemInstance: () =>
|
|
43
|
-
useParentInstance: () =>
|
|
41
|
+
useChildInstances: () => import_react14.useChildInstances,
|
|
42
|
+
useItemInstance: () => import_react14.useItemInstance,
|
|
43
|
+
useParentInstance: () => import_react14.useParentInstance,
|
|
44
44
|
useThemeSettings: () => useThemeSettings,
|
|
45
|
-
useWeaverse: () =>
|
|
45
|
+
useWeaverse: () => import_react14.useWeaverse,
|
|
46
46
|
withWeaverse: () => withWeaverse
|
|
47
47
|
});
|
|
48
48
|
module.exports = __toCommonJS(src_exports);
|
|
49
|
-
var
|
|
49
|
+
var import_react14 = require("@weaverse/react");
|
|
50
50
|
|
|
51
51
|
// src/components/main.tsx
|
|
52
52
|
var main_exports = {};
|
|
@@ -69,9 +69,9 @@ var schema = {
|
|
|
69
69
|
var defaultComponents = [main_exports];
|
|
70
70
|
|
|
71
71
|
// src/WeaverseHydrogenRoot.tsx
|
|
72
|
-
var
|
|
73
|
-
var
|
|
74
|
-
var
|
|
72
|
+
var import_react11 = require("@remix-run/react");
|
|
73
|
+
var import_react12 = require("@weaverse/react");
|
|
74
|
+
var import_react13 = __toESM(require("react"));
|
|
75
75
|
var import_react_error_boundary = require("react-error-boundary");
|
|
76
76
|
|
|
77
77
|
// src/context.ts
|
|
@@ -81,7 +81,7 @@ function createCachedWeaverseInstance(params, components) {
|
|
|
81
81
|
if (import_react2.isBrowser) {
|
|
82
82
|
window.__weaverses = window.__weaverses || [];
|
|
83
83
|
let weaverse = window.__weaverses.find((w) => {
|
|
84
|
-
let { pathname
|
|
84
|
+
let { pathname } = w.requestInfo;
|
|
85
85
|
return pathname === params.requestInfo.pathname;
|
|
86
86
|
});
|
|
87
87
|
if (!weaverse) {
|
|
@@ -208,23 +208,36 @@ function useStudio(weaverse) {
|
|
|
208
208
|
}, [weaverse.requestInfo]);
|
|
209
209
|
}
|
|
210
210
|
|
|
211
|
+
// src/pixel.tsx
|
|
212
|
+
var import_react10 = __toESM(require("react"));
|
|
213
|
+
var Pixel = ({ baseUrl, projectId, pageId }) => {
|
|
214
|
+
const url = `${baseUrl}/api/public/px?projectId=${projectId}&pageId=${pageId}`;
|
|
215
|
+
return /* @__PURE__ */ import_react10.default.createElement("img", { src: url, alt: "weaverse pixel", style: { display: "none" } });
|
|
216
|
+
};
|
|
217
|
+
var WeaversePixel = ({ context }) => {
|
|
218
|
+
let { projectId, pageId, weaverseHost, isDesignMode } = context;
|
|
219
|
+
if (isDesignMode || !projectId || !pageId || !weaverseHost)
|
|
220
|
+
return null;
|
|
221
|
+
return /* @__PURE__ */ import_react10.default.createElement(Pixel, { baseUrl: weaverseHost, projectId, pageId });
|
|
222
|
+
};
|
|
223
|
+
|
|
211
224
|
// src/WeaverseHydrogenRoot.tsx
|
|
212
|
-
var WeaverseHydrogenRoot = (0,
|
|
225
|
+
var WeaverseHydrogenRoot = (0, import_react13.memo)(
|
|
213
226
|
({
|
|
214
227
|
errorComponent: ErrorComponent = FallbackError,
|
|
215
228
|
components
|
|
216
229
|
}) => {
|
|
217
|
-
let loaderData = (0,
|
|
230
|
+
let loaderData = (0, import_react11.useLoaderData)();
|
|
218
231
|
let data = loaderData?.weaverseData;
|
|
219
232
|
if (data) {
|
|
220
233
|
if (data instanceof Promise) {
|
|
221
|
-
return /* @__PURE__ */
|
|
222
|
-
return /* @__PURE__ */
|
|
234
|
+
return /* @__PURE__ */ import_react13.default.createElement(import_react_error_boundary.ErrorBoundary, { fallbackRender: ErrorComponent }, /* @__PURE__ */ import_react13.default.createElement(import_react13.Suspense, null, /* @__PURE__ */ import_react13.default.createElement(import_react11.Await, { resolve: data }, (resolvedData) => {
|
|
235
|
+
return /* @__PURE__ */ import_react13.default.createElement(RenderRoot, { data: resolvedData, components });
|
|
223
236
|
})));
|
|
224
237
|
}
|
|
225
|
-
return /* @__PURE__ */
|
|
238
|
+
return /* @__PURE__ */ import_react13.default.createElement(RenderRoot, { data, components });
|
|
226
239
|
}
|
|
227
|
-
return /* @__PURE__ */
|
|
240
|
+
return /* @__PURE__ */ import_react13.default.createElement(
|
|
228
241
|
ErrorComponent,
|
|
229
242
|
{
|
|
230
243
|
error: { message: "No Weaverse data return from route loader!" }
|
|
@@ -236,17 +249,17 @@ function RenderRoot(props) {
|
|
|
236
249
|
let { data, components } = props;
|
|
237
250
|
let weaverse = createWeaverseInstance(data, components);
|
|
238
251
|
useStudio(weaverse);
|
|
239
|
-
return /* @__PURE__ */
|
|
252
|
+
return /* @__PURE__ */ import_react13.default.createElement(import_react13.default.Fragment, null, /* @__PURE__ */ import_react13.default.createElement(import_react12.WeaverseRoot, { context: weaverse }), /* @__PURE__ */ import_react13.default.createElement(WeaversePixel, { context: weaverse }));
|
|
240
253
|
}
|
|
241
254
|
function withWeaverse(Component) {
|
|
242
255
|
return (props) => {
|
|
243
|
-
let loaderData = (0,
|
|
256
|
+
let loaderData = (0, import_react11.useRouteLoaderData)("root");
|
|
244
257
|
let themeSettingsStore = new ThemeSettingsStore(loaderData?.weaverseTheme);
|
|
245
|
-
return /* @__PURE__ */
|
|
258
|
+
return /* @__PURE__ */ import_react13.default.createElement(ThemeProvider.Provider, { value: themeSettingsStore }, /* @__PURE__ */ import_react13.default.createElement(Component, { ...props }));
|
|
246
259
|
};
|
|
247
260
|
}
|
|
248
261
|
function FallbackError({ error }) {
|
|
249
|
-
return /* @__PURE__ */
|
|
262
|
+
return /* @__PURE__ */ import_react13.default.createElement("div", null, error?.message || "An unexpected error occurred");
|
|
250
263
|
}
|
|
251
264
|
|
|
252
265
|
// src/weaverse-client.ts
|
|
@@ -257,7 +270,7 @@ var package_default = {
|
|
|
257
270
|
name: "@weaverse/hydrogen",
|
|
258
271
|
author: "Weaverse Team",
|
|
259
272
|
description: "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
|
|
260
|
-
version: "2.7.
|
|
273
|
+
version: "2.7.4",
|
|
261
274
|
license: "MIT",
|
|
262
275
|
main: "dist/index.js",
|
|
263
276
|
typings: "dist/index.d.ts",
|
|
@@ -295,7 +308,7 @@ var package_default = {
|
|
|
295
308
|
singleQuote: true
|
|
296
309
|
},
|
|
297
310
|
dependencies: {
|
|
298
|
-
"@weaverse/react": "2.7.
|
|
311
|
+
"@weaverse/react": "2.7.4",
|
|
299
312
|
"react-error-boundary": "^4.0.11"
|
|
300
313
|
},
|
|
301
314
|
devDependencies: {
|
|
@@ -324,7 +337,13 @@ function getWeaverseConfigs(request, env) {
|
|
|
324
337
|
PUBLIC_STOREFRONT_API_TOKEN
|
|
325
338
|
} = env || {};
|
|
326
339
|
let envFromProcess = typeof process !== "undefined" && process.env || {};
|
|
327
|
-
let {
|
|
340
|
+
let {
|
|
341
|
+
weaverseProjectId,
|
|
342
|
+
weaverseHost,
|
|
343
|
+
isDesignMode,
|
|
344
|
+
weaverseVersion,
|
|
345
|
+
weaverseApiKey
|
|
346
|
+
} = queries;
|
|
328
347
|
return {
|
|
329
348
|
projectId: weaverseProjectId || WEAVERSE_PROJECT_ID || envFromProcess.WEAVERSE_PROJECT_ID || "",
|
|
330
349
|
weaverseHost: weaverseHost || WEAVERSE_HOST || envFromProcess.WEAVERSE_HOST || "https://weaverse.io",
|
|
@@ -400,10 +419,13 @@ var WeaverseClient = class {
|
|
|
400
419
|
} = options;
|
|
401
420
|
let res = this.withCache(cacheKey, strategy, async () => {
|
|
402
421
|
let cacheControlHeader = (0, import_hydrogen.generateCacheControlHeader)(strategy);
|
|
403
|
-
let response = await fetch(url, {
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
422
|
+
let response = await fetch(url, {
|
|
423
|
+
...reqInit,
|
|
424
|
+
headers: {
|
|
425
|
+
"Cache-Control": cacheControlHeader,
|
|
426
|
+
...reqInit.headers
|
|
427
|
+
}
|
|
428
|
+
});
|
|
407
429
|
if (!response.ok) {
|
|
408
430
|
let error = await response.text();
|
|
409
431
|
let { status, statusText } = response;
|
|
@@ -557,7 +579,7 @@ function getSelectedProductOptions(request) {
|
|
|
557
579
|
}
|
|
558
580
|
|
|
559
581
|
// src/index.ts
|
|
560
|
-
var WeaverseHydrogen = class extends
|
|
582
|
+
var WeaverseHydrogen = class extends import_react14.Weaverse {
|
|
561
583
|
platformType = "shopify-hydrogen";
|
|
562
584
|
pageId;
|
|
563
585
|
internal;
|
|
@@ -573,7 +595,7 @@ var WeaverseHydrogen = class extends import_react13.Weaverse {
|
|
|
573
595
|
}
|
|
574
596
|
registerComponents = (components) => {
|
|
575
597
|
components.forEach((comp) => {
|
|
576
|
-
|
|
598
|
+
import_react14.Weaverse.registerElement({
|
|
577
599
|
type: comp?.schema?.type,
|
|
578
600
|
Component: comp?.default,
|
|
579
601
|
schema: comp?.schema,
|
|
@@ -582,7 +604,7 @@ var WeaverseHydrogen = class extends import_react13.Weaverse {
|
|
|
582
604
|
});
|
|
583
605
|
};
|
|
584
606
|
};
|
|
585
|
-
var WeaverseHydrogenItem = class extends
|
|
607
|
+
var WeaverseHydrogenItem = class extends import_react14.WeaverseItemStore {
|
|
586
608
|
constructor(initialData, weaverse) {
|
|
587
609
|
super(initialData, weaverse);
|
|
588
610
|
let { data, ...rest } = initialData;
|
package/dist/index.mjs
CHANGED
|
@@ -37,7 +37,7 @@ var defaultComponents = [main_exports];
|
|
|
37
37
|
// src/WeaverseHydrogenRoot.tsx
|
|
38
38
|
import { Await, useLoaderData, useRouteLoaderData } from "@remix-run/react";
|
|
39
39
|
import { WeaverseRoot } from "@weaverse/react";
|
|
40
|
-
import
|
|
40
|
+
import React3, { memo, Suspense } from "react";
|
|
41
41
|
import { ErrorBoundary } from "react-error-boundary";
|
|
42
42
|
|
|
43
43
|
// src/context.ts
|
|
@@ -47,7 +47,7 @@ function createCachedWeaverseInstance(params, components) {
|
|
|
47
47
|
if (isBrowser) {
|
|
48
48
|
window.__weaverses = window.__weaverses || [];
|
|
49
49
|
let weaverse = window.__weaverses.find((w) => {
|
|
50
|
-
let { pathname
|
|
50
|
+
let { pathname } = w.requestInfo;
|
|
51
51
|
return pathname === params.requestInfo.pathname;
|
|
52
52
|
});
|
|
53
53
|
if (!weaverse) {
|
|
@@ -174,6 +174,19 @@ function useStudio(weaverse) {
|
|
|
174
174
|
}, [weaverse.requestInfo]);
|
|
175
175
|
}
|
|
176
176
|
|
|
177
|
+
// src/pixel.tsx
|
|
178
|
+
import React2 from "react";
|
|
179
|
+
var Pixel = ({ baseUrl, projectId, pageId }) => {
|
|
180
|
+
const url = `${baseUrl}/api/public/px?projectId=${projectId}&pageId=${pageId}`;
|
|
181
|
+
return /* @__PURE__ */ React2.createElement("img", { src: url, alt: "weaverse pixel", style: { display: "none" } });
|
|
182
|
+
};
|
|
183
|
+
var WeaversePixel = ({ context }) => {
|
|
184
|
+
let { projectId, pageId, weaverseHost, isDesignMode } = context;
|
|
185
|
+
if (isDesignMode || !projectId || !pageId || !weaverseHost)
|
|
186
|
+
return null;
|
|
187
|
+
return /* @__PURE__ */ React2.createElement(Pixel, { baseUrl: weaverseHost, projectId, pageId });
|
|
188
|
+
};
|
|
189
|
+
|
|
177
190
|
// src/WeaverseHydrogenRoot.tsx
|
|
178
191
|
var WeaverseHydrogenRoot = memo(
|
|
179
192
|
({
|
|
@@ -184,13 +197,13 @@ var WeaverseHydrogenRoot = memo(
|
|
|
184
197
|
let data = loaderData?.weaverseData;
|
|
185
198
|
if (data) {
|
|
186
199
|
if (data instanceof Promise) {
|
|
187
|
-
return /* @__PURE__ */
|
|
188
|
-
return /* @__PURE__ */
|
|
200
|
+
return /* @__PURE__ */ React3.createElement(ErrorBoundary, { fallbackRender: ErrorComponent }, /* @__PURE__ */ React3.createElement(Suspense, null, /* @__PURE__ */ React3.createElement(Await, { resolve: data }, (resolvedData) => {
|
|
201
|
+
return /* @__PURE__ */ React3.createElement(RenderRoot, { data: resolvedData, components });
|
|
189
202
|
})));
|
|
190
203
|
}
|
|
191
|
-
return /* @__PURE__ */
|
|
204
|
+
return /* @__PURE__ */ React3.createElement(RenderRoot, { data, components });
|
|
192
205
|
}
|
|
193
|
-
return /* @__PURE__ */
|
|
206
|
+
return /* @__PURE__ */ React3.createElement(
|
|
194
207
|
ErrorComponent,
|
|
195
208
|
{
|
|
196
209
|
error: { message: "No Weaverse data return from route loader!" }
|
|
@@ -202,17 +215,17 @@ function RenderRoot(props) {
|
|
|
202
215
|
let { data, components } = props;
|
|
203
216
|
let weaverse = createWeaverseInstance(data, components);
|
|
204
217
|
useStudio(weaverse);
|
|
205
|
-
return /* @__PURE__ */
|
|
218
|
+
return /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(WeaverseRoot, { context: weaverse }), /* @__PURE__ */ React3.createElement(WeaversePixel, { context: weaverse }));
|
|
206
219
|
}
|
|
207
220
|
function withWeaverse(Component) {
|
|
208
221
|
return (props) => {
|
|
209
222
|
let loaderData = useRouteLoaderData("root");
|
|
210
223
|
let themeSettingsStore = new ThemeSettingsStore(loaderData?.weaverseTheme);
|
|
211
|
-
return /* @__PURE__ */
|
|
224
|
+
return /* @__PURE__ */ React3.createElement(ThemeProvider.Provider, { value: themeSettingsStore }, /* @__PURE__ */ React3.createElement(Component, { ...props }));
|
|
212
225
|
};
|
|
213
226
|
}
|
|
214
227
|
function FallbackError({ error }) {
|
|
215
|
-
return /* @__PURE__ */
|
|
228
|
+
return /* @__PURE__ */ React3.createElement("div", null, error?.message || "An unexpected error occurred");
|
|
216
229
|
}
|
|
217
230
|
|
|
218
231
|
// src/weaverse-client.ts
|
|
@@ -223,7 +236,7 @@ var package_default = {
|
|
|
223
236
|
name: "@weaverse/hydrogen",
|
|
224
237
|
author: "Weaverse Team",
|
|
225
238
|
description: "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
|
|
226
|
-
version: "2.7.
|
|
239
|
+
version: "2.7.4",
|
|
227
240
|
license: "MIT",
|
|
228
241
|
main: "dist/index.js",
|
|
229
242
|
typings: "dist/index.d.ts",
|
|
@@ -261,7 +274,7 @@ var package_default = {
|
|
|
261
274
|
singleQuote: true
|
|
262
275
|
},
|
|
263
276
|
dependencies: {
|
|
264
|
-
"@weaverse/react": "2.7.
|
|
277
|
+
"@weaverse/react": "2.7.4",
|
|
265
278
|
"react-error-boundary": "^4.0.11"
|
|
266
279
|
},
|
|
267
280
|
devDependencies: {
|
|
@@ -290,7 +303,13 @@ function getWeaverseConfigs(request, env) {
|
|
|
290
303
|
PUBLIC_STOREFRONT_API_TOKEN
|
|
291
304
|
} = env || {};
|
|
292
305
|
let envFromProcess = typeof process !== "undefined" && process.env || {};
|
|
293
|
-
let {
|
|
306
|
+
let {
|
|
307
|
+
weaverseProjectId,
|
|
308
|
+
weaverseHost,
|
|
309
|
+
isDesignMode,
|
|
310
|
+
weaverseVersion,
|
|
311
|
+
weaverseApiKey
|
|
312
|
+
} = queries;
|
|
294
313
|
return {
|
|
295
314
|
projectId: weaverseProjectId || WEAVERSE_PROJECT_ID || envFromProcess.WEAVERSE_PROJECT_ID || "",
|
|
296
315
|
weaverseHost: weaverseHost || WEAVERSE_HOST || envFromProcess.WEAVERSE_HOST || "https://weaverse.io",
|
|
@@ -366,10 +385,13 @@ var WeaverseClient = class {
|
|
|
366
385
|
} = options;
|
|
367
386
|
let res = this.withCache(cacheKey, strategy, async () => {
|
|
368
387
|
let cacheControlHeader = generateCacheControlHeader(strategy);
|
|
369
|
-
let response = await fetch(url, {
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
388
|
+
let response = await fetch(url, {
|
|
389
|
+
...reqInit,
|
|
390
|
+
headers: {
|
|
391
|
+
"Cache-Control": cacheControlHeader,
|
|
392
|
+
...reqInit.headers
|
|
393
|
+
}
|
|
394
|
+
});
|
|
373
395
|
if (!response.ok) {
|
|
374
396
|
let error = await response.text();
|
|
375
397
|
let { status, statusText } = response;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@weaverse/hydrogen",
|
|
3
3
|
"author": "Weaverse Team",
|
|
4
4
|
"description": "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
|
|
5
|
-
"version": "2.7.
|
|
5
|
+
"version": "2.7.4",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"typings": "dist/index.d.ts",
|
|
@@ -40,10 +40,10 @@
|
|
|
40
40
|
"singleQuote": true
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@weaverse/react": "2.7.
|
|
43
|
+
"@weaverse/react": "2.7.4",
|
|
44
44
|
"react-error-boundary": "^4.0.11"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@shopify/remix-oxygen": "^2.0.1"
|
|
48
48
|
}
|
|
49
|
-
}
|
|
49
|
+
}
|