@weaverse/hydrogen 1.1.9 → 1.1.11
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 +12 -5
- package/dist/index.d.ts +12 -5
- package/dist/index.js +20 -10
- package/dist/index.mjs +20 -10
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React, { ForwardRefExoticComponent } from 'react';
|
|
2
|
+
import { Params, NavigateFunction } from '@remix-run/react';
|
|
3
|
+
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
2
4
|
import { LoaderArgs, AppLoadContext } from '@shopify/remix-oxygen';
|
|
3
5
|
import { ElementData, ElementSchema, BasicInput, WeaverseElement, WeaverseItemStore, Weaverse } from '@weaverse/react';
|
|
4
6
|
export * from '@weaverse/react';
|
|
5
|
-
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
6
|
-
import { NavigateFunction } from '@remix-run/react';
|
|
7
7
|
import * as _shopify_hydrogen_react_storefront_api_types from '@shopify/hydrogen-react/storefront-api-types';
|
|
8
8
|
|
|
9
9
|
declare let STORE_PAGES: {
|
|
@@ -84,9 +84,9 @@ type I18nLocale = Locale & {
|
|
|
84
84
|
pathPrefix: string;
|
|
85
85
|
};
|
|
86
86
|
type WeaverseLoaderRequestInfo = {
|
|
87
|
-
params:
|
|
88
|
-
pathname: string;
|
|
87
|
+
params: Params;
|
|
89
88
|
search: string;
|
|
89
|
+
pathname: string;
|
|
90
90
|
queries: Record<string, string | boolean>;
|
|
91
91
|
i18n: I18nLocale;
|
|
92
92
|
};
|
|
@@ -101,6 +101,7 @@ interface WeaverseHydrogen extends WeaverseCore {
|
|
|
101
101
|
}
|
|
102
102
|
type WeaverseStorefrontData = {
|
|
103
103
|
id?: string;
|
|
104
|
+
__cachedId?: string;
|
|
104
105
|
rootId: string;
|
|
105
106
|
name: string;
|
|
106
107
|
items: HydrogenComponentData[];
|
|
@@ -125,6 +126,7 @@ type WeaverseInternal = {
|
|
|
125
126
|
project: HydrogenProjectType;
|
|
126
127
|
navigate: NavigateFunction;
|
|
127
128
|
revalidate: () => void;
|
|
129
|
+
[key: string]: any;
|
|
128
130
|
};
|
|
129
131
|
type HydrogenComponentPresets = {
|
|
130
132
|
type: string;
|
|
@@ -224,6 +226,11 @@ type FetchProjectRequestBody = {
|
|
|
224
226
|
loaderConfigs?: WeaverseLoaderConfigs;
|
|
225
227
|
isDesignMode?: boolean;
|
|
226
228
|
};
|
|
229
|
+
type FetchProjectPayload = {
|
|
230
|
+
page: HydrogenPageData;
|
|
231
|
+
project: HydrogenProjectType;
|
|
232
|
+
pageAssignment: HydrogenPageAssignment;
|
|
233
|
+
};
|
|
227
234
|
declare global {
|
|
228
235
|
interface Window {
|
|
229
236
|
__weaverse: WeaverseHydrogen;
|
|
@@ -251,4 +258,4 @@ declare function useThemeSettings(): (Record<string, any> | ((newSettings: any)
|
|
|
251
258
|
|
|
252
259
|
declare function WeaverseHydrogenRoot({ errorComponent: ErrorComponent, ...themeConfigs }: WeaverseHydrogenRootProps): React.JSX.Element;
|
|
253
260
|
|
|
254
|
-
export { FetchProjectRequestBody, HydrogenComponent, HydrogenComponentData, HydrogenComponentInstance, HydrogenComponentLoaderFunction, HydrogenComponentPresets, HydrogenComponentProps, HydrogenComponentSchema, HydrogenElement, HydrogenPageAssignment, HydrogenPageConfigs, HydrogenPageData, HydrogenProjectConfig, HydrogenProjectType, HydrogenThemeInfo, HydrogenThemeSchema, HydrogenToolbarAction, I18nLocale, InspectorGroup, Locale, Localizations, PageType, TODO, WeaverseHydrogen, WeaverseHydrogenInit, WeaverseHydrogenRoot, WeaverseHydrogenRootProps, WeaverseInternal, WeaverseLoaderArgs, WeaverseLoaderConfigs, WeaverseLoaderData, WeaverseLoaderRequestInfo, WeaverseStorefrontData, WeaverseStudioQueries, WeaverseThemeConfigs, fetchWithServerCache, getRequestQueries, getSelectedProductOptions, useThemeSettings, weaverseLoader };
|
|
261
|
+
export { FetchProjectPayload, FetchProjectRequestBody, HydrogenComponent, HydrogenComponentData, HydrogenComponentInstance, HydrogenComponentLoaderFunction, HydrogenComponentPresets, HydrogenComponentProps, HydrogenComponentSchema, HydrogenElement, HydrogenPageAssignment, HydrogenPageConfigs, HydrogenPageData, HydrogenProjectConfig, HydrogenProjectType, HydrogenThemeInfo, HydrogenThemeSchema, HydrogenToolbarAction, I18nLocale, InspectorGroup, Locale, Localizations, PageType, TODO, WeaverseHydrogen, WeaverseHydrogenInit, WeaverseHydrogenRoot, WeaverseHydrogenRootProps, WeaverseInternal, WeaverseLoaderArgs, WeaverseLoaderConfigs, WeaverseLoaderData, WeaverseLoaderRequestInfo, WeaverseStorefrontData, WeaverseStudioQueries, WeaverseThemeConfigs, fetchWithServerCache, getRequestQueries, getSelectedProductOptions, useThemeSettings, weaverseLoader };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React, { ForwardRefExoticComponent } from 'react';
|
|
2
|
+
import { Params, NavigateFunction } from '@remix-run/react';
|
|
3
|
+
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
2
4
|
import { LoaderArgs, AppLoadContext } from '@shopify/remix-oxygen';
|
|
3
5
|
import { ElementData, ElementSchema, BasicInput, WeaverseElement, WeaverseItemStore, Weaverse } from '@weaverse/react';
|
|
4
6
|
export * from '@weaverse/react';
|
|
5
|
-
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
6
|
-
import { NavigateFunction } from '@remix-run/react';
|
|
7
7
|
import * as _shopify_hydrogen_react_storefront_api_types from '@shopify/hydrogen-react/storefront-api-types';
|
|
8
8
|
|
|
9
9
|
declare let STORE_PAGES: {
|
|
@@ -84,9 +84,9 @@ type I18nLocale = Locale & {
|
|
|
84
84
|
pathPrefix: string;
|
|
85
85
|
};
|
|
86
86
|
type WeaverseLoaderRequestInfo = {
|
|
87
|
-
params:
|
|
88
|
-
pathname: string;
|
|
87
|
+
params: Params;
|
|
89
88
|
search: string;
|
|
89
|
+
pathname: string;
|
|
90
90
|
queries: Record<string, string | boolean>;
|
|
91
91
|
i18n: I18nLocale;
|
|
92
92
|
};
|
|
@@ -101,6 +101,7 @@ interface WeaverseHydrogen extends WeaverseCore {
|
|
|
101
101
|
}
|
|
102
102
|
type WeaverseStorefrontData = {
|
|
103
103
|
id?: string;
|
|
104
|
+
__cachedId?: string;
|
|
104
105
|
rootId: string;
|
|
105
106
|
name: string;
|
|
106
107
|
items: HydrogenComponentData[];
|
|
@@ -125,6 +126,7 @@ type WeaverseInternal = {
|
|
|
125
126
|
project: HydrogenProjectType;
|
|
126
127
|
navigate: NavigateFunction;
|
|
127
128
|
revalidate: () => void;
|
|
129
|
+
[key: string]: any;
|
|
128
130
|
};
|
|
129
131
|
type HydrogenComponentPresets = {
|
|
130
132
|
type: string;
|
|
@@ -224,6 +226,11 @@ type FetchProjectRequestBody = {
|
|
|
224
226
|
loaderConfigs?: WeaverseLoaderConfigs;
|
|
225
227
|
isDesignMode?: boolean;
|
|
226
228
|
};
|
|
229
|
+
type FetchProjectPayload = {
|
|
230
|
+
page: HydrogenPageData;
|
|
231
|
+
project: HydrogenProjectType;
|
|
232
|
+
pageAssignment: HydrogenPageAssignment;
|
|
233
|
+
};
|
|
227
234
|
declare global {
|
|
228
235
|
interface Window {
|
|
229
236
|
__weaverse: WeaverseHydrogen;
|
|
@@ -251,4 +258,4 @@ declare function useThemeSettings(): (Record<string, any> | ((newSettings: any)
|
|
|
251
258
|
|
|
252
259
|
declare function WeaverseHydrogenRoot({ errorComponent: ErrorComponent, ...themeConfigs }: WeaverseHydrogenRootProps): React.JSX.Element;
|
|
253
260
|
|
|
254
|
-
export { FetchProjectRequestBody, HydrogenComponent, HydrogenComponentData, HydrogenComponentInstance, HydrogenComponentLoaderFunction, HydrogenComponentPresets, HydrogenComponentProps, HydrogenComponentSchema, HydrogenElement, HydrogenPageAssignment, HydrogenPageConfigs, HydrogenPageData, HydrogenProjectConfig, HydrogenProjectType, HydrogenThemeInfo, HydrogenThemeSchema, HydrogenToolbarAction, I18nLocale, InspectorGroup, Locale, Localizations, PageType, TODO, WeaverseHydrogen, WeaverseHydrogenInit, WeaverseHydrogenRoot, WeaverseHydrogenRootProps, WeaverseInternal, WeaverseLoaderArgs, WeaverseLoaderConfigs, WeaverseLoaderData, WeaverseLoaderRequestInfo, WeaverseStorefrontData, WeaverseStudioQueries, WeaverseThemeConfigs, fetchWithServerCache, getRequestQueries, getSelectedProductOptions, useThemeSettings, weaverseLoader };
|
|
261
|
+
export { FetchProjectPayload, FetchProjectRequestBody, HydrogenComponent, HydrogenComponentData, HydrogenComponentInstance, HydrogenComponentLoaderFunction, HydrogenComponentPresets, HydrogenComponentProps, HydrogenComponentSchema, HydrogenElement, HydrogenPageAssignment, HydrogenPageConfigs, HydrogenPageData, HydrogenProjectConfig, HydrogenProjectType, HydrogenThemeInfo, HydrogenThemeSchema, HydrogenToolbarAction, I18nLocale, InspectorGroup, Locale, Localizations, PageType, TODO, WeaverseHydrogen, WeaverseHydrogenInit, WeaverseHydrogenRoot, WeaverseHydrogenRootProps, WeaverseInternal, WeaverseLoaderArgs, WeaverseLoaderConfigs, WeaverseLoaderData, WeaverseLoaderRequestInfo, WeaverseStorefrontData, WeaverseStudioQueries, WeaverseThemeConfigs, fetchWithServerCache, getRequestQueries, getSelectedProductOptions, useThemeSettings, weaverseLoader };
|
package/dist/index.js
CHANGED
|
@@ -51,22 +51,19 @@ function createCachedWeaverseInstance(init) {
|
|
|
51
51
|
window.__weaverses = window.__weaverses || [];
|
|
52
52
|
let weaverse = window.__weaverses.find((w) => {
|
|
53
53
|
let { pathname, search } = w.requestInfo;
|
|
54
|
-
|
|
54
|
+
let { __cachedId } = w.data;
|
|
55
|
+
return pathname === init.requestInfo.pathname && search === init.requestInfo.search && __cachedId === init.data.__cachedId;
|
|
55
56
|
});
|
|
56
57
|
if (!weaverse) {
|
|
57
58
|
weaverse = new import_react.Weaverse(init);
|
|
58
59
|
window.__weaverses.push(weaverse);
|
|
59
|
-
|
|
60
|
-
weaverse.setProjectData(init.data);
|
|
60
|
+
console.log("\u{1F4BF} Weaverse", weaverse);
|
|
61
61
|
}
|
|
62
62
|
return weaverse;
|
|
63
63
|
}
|
|
64
64
|
return new import_react.Weaverse(init);
|
|
65
65
|
}
|
|
66
66
|
function createWeaverseInstance(weaverseData, components) {
|
|
67
|
-
if (import_react.isBrowser) {
|
|
68
|
-
console.log("\u{1F4BF} Weaverse data", weaverseData);
|
|
69
|
-
}
|
|
70
67
|
let { page, configs, project, pageAssignment } = weaverseData || {};
|
|
71
68
|
let weaverse = createCachedWeaverseInstance({
|
|
72
69
|
...configs,
|
|
@@ -90,7 +87,7 @@ function createWeaverseInstance(weaverseData, components) {
|
|
|
90
87
|
var import_react2 = require("@remix-run/react");
|
|
91
88
|
var import_react3 = require("@weaverse/react");
|
|
92
89
|
var import_react4 = require("react");
|
|
93
|
-
function useStudio(weaverse, countries, schema) {
|
|
90
|
+
function useStudio(weaverse, countries, schema, weaverseData) {
|
|
94
91
|
let navigate = (0, import_react2.useNavigate)();
|
|
95
92
|
let { revalidate } = (0, import_react2.useRevalidator)();
|
|
96
93
|
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
@@ -101,7 +98,9 @@ function useStudio(weaverse, countries, schema) {
|
|
|
101
98
|
...weaverse.internal,
|
|
102
99
|
navigate,
|
|
103
100
|
revalidate,
|
|
104
|
-
themeConfigs: { schema, countries }
|
|
101
|
+
themeConfigs: { schema, countries },
|
|
102
|
+
publicStoreDomain: weaverseData?.configs?.publicStoreDomain,
|
|
103
|
+
publicStorefrontApiToken: weaverseData?.configs?.publicStorefrontApiToken
|
|
105
104
|
};
|
|
106
105
|
window.__weaverse = weaverse;
|
|
107
106
|
if (window.weaverseStudio) {
|
|
@@ -152,7 +151,12 @@ async function weaverseLoader(args, components, countries, loaderConfigs) {
|
|
|
152
151
|
try {
|
|
153
152
|
let { request, context, params } = args;
|
|
154
153
|
let queries = getRequestQueries(request);
|
|
155
|
-
let {
|
|
154
|
+
let {
|
|
155
|
+
WEAVERSE_PROJECT_ID,
|
|
156
|
+
WEAVERSE_HOST,
|
|
157
|
+
PUBLIC_STORE_DOMAIN,
|
|
158
|
+
PUBLIC_STOREFRONT_API_TOKEN
|
|
159
|
+
} = context?.env || {};
|
|
156
160
|
let { weaverseProjectId, weaverseHost, isDesignMode, weaverseVersion } = queries;
|
|
157
161
|
let projectId = weaverseProjectId || WEAVERSE_PROJECT_ID;
|
|
158
162
|
weaverseHost = weaverseHost || WEAVERSE_HOST || "https://weaverse.io";
|
|
@@ -208,6 +212,12 @@ async function weaverseLoader(args, components, countries, loaderConfigs) {
|
|
|
208
212
|
let items = page.items;
|
|
209
213
|
page.items = await withLoaderData(items, components, configs, args);
|
|
210
214
|
}
|
|
215
|
+
if (isDesignMode) {
|
|
216
|
+
Object.assign(configs, {
|
|
217
|
+
publicStoreDomain: PUBLIC_STORE_DOMAIN,
|
|
218
|
+
publicStorefrontApiToken: PUBLIC_STOREFRONT_API_TOKEN
|
|
219
|
+
});
|
|
220
|
+
}
|
|
211
221
|
resolve({ page, configs, project, pageAssignment });
|
|
212
222
|
} catch (err) {
|
|
213
223
|
console.log(`\u274C Error fetching project data: ${err?.toString()}`);
|
|
@@ -296,7 +306,7 @@ function WeaverseHydrogenRoot({
|
|
|
296
306
|
function RenderWeaverseRoot(props) {
|
|
297
307
|
let { weaverseData, components, countries, themeSchema } = props;
|
|
298
308
|
let weaverse = createWeaverseInstance(weaverseData, components);
|
|
299
|
-
useStudio(weaverse, countries, themeSchema);
|
|
309
|
+
useStudio(weaverse, countries, themeSchema, weaverseData);
|
|
300
310
|
return /* @__PURE__ */ import_react8.default.createElement(import_react7.WeaverseRoot, { context: weaverse });
|
|
301
311
|
}
|
|
302
312
|
// Annotate the CommonJS export names for ESM import in node:
|
package/dist/index.mjs
CHANGED
|
@@ -11,22 +11,19 @@ function createCachedWeaverseInstance(init) {
|
|
|
11
11
|
window.__weaverses = window.__weaverses || [];
|
|
12
12
|
let weaverse = window.__weaverses.find((w) => {
|
|
13
13
|
let { pathname, search } = w.requestInfo;
|
|
14
|
-
|
|
14
|
+
let { __cachedId } = w.data;
|
|
15
|
+
return pathname === init.requestInfo.pathname && search === init.requestInfo.search && __cachedId === init.data.__cachedId;
|
|
15
16
|
});
|
|
16
17
|
if (!weaverse) {
|
|
17
18
|
weaverse = new Weaverse(init);
|
|
18
19
|
window.__weaverses.push(weaverse);
|
|
19
|
-
|
|
20
|
-
weaverse.setProjectData(init.data);
|
|
20
|
+
console.log("\u{1F4BF} Weaverse", weaverse);
|
|
21
21
|
}
|
|
22
22
|
return weaverse;
|
|
23
23
|
}
|
|
24
24
|
return new Weaverse(init);
|
|
25
25
|
}
|
|
26
26
|
function createWeaverseInstance(weaverseData, components) {
|
|
27
|
-
if (isBrowser) {
|
|
28
|
-
console.log("\u{1F4BF} Weaverse data", weaverseData);
|
|
29
|
-
}
|
|
30
27
|
let { page, configs, project, pageAssignment } = weaverseData || {};
|
|
31
28
|
let weaverse = createCachedWeaverseInstance({
|
|
32
29
|
...configs,
|
|
@@ -50,7 +47,7 @@ function createWeaverseInstance(weaverseData, components) {
|
|
|
50
47
|
import { useNavigate, useRevalidator } from "@remix-run/react";
|
|
51
48
|
import { isIframe, loadScript } from "@weaverse/react";
|
|
52
49
|
import { useEffect } from "react";
|
|
53
|
-
function useStudio(weaverse, countries, schema) {
|
|
50
|
+
function useStudio(weaverse, countries, schema, weaverseData) {
|
|
54
51
|
let navigate = useNavigate();
|
|
55
52
|
let { revalidate } = useRevalidator();
|
|
56
53
|
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
@@ -61,7 +58,9 @@ function useStudio(weaverse, countries, schema) {
|
|
|
61
58
|
...weaverse.internal,
|
|
62
59
|
navigate,
|
|
63
60
|
revalidate,
|
|
64
|
-
themeConfigs: { schema, countries }
|
|
61
|
+
themeConfigs: { schema, countries },
|
|
62
|
+
publicStoreDomain: weaverseData?.configs?.publicStoreDomain,
|
|
63
|
+
publicStorefrontApiToken: weaverseData?.configs?.publicStorefrontApiToken
|
|
65
64
|
};
|
|
66
65
|
window.__weaverse = weaverse;
|
|
67
66
|
if (window.weaverseStudio) {
|
|
@@ -112,7 +111,12 @@ async function weaverseLoader(args, components, countries, loaderConfigs) {
|
|
|
112
111
|
try {
|
|
113
112
|
let { request, context, params } = args;
|
|
114
113
|
let queries = getRequestQueries(request);
|
|
115
|
-
let {
|
|
114
|
+
let {
|
|
115
|
+
WEAVERSE_PROJECT_ID,
|
|
116
|
+
WEAVERSE_HOST,
|
|
117
|
+
PUBLIC_STORE_DOMAIN,
|
|
118
|
+
PUBLIC_STOREFRONT_API_TOKEN
|
|
119
|
+
} = context?.env || {};
|
|
116
120
|
let { weaverseProjectId, weaverseHost, isDesignMode, weaverseVersion } = queries;
|
|
117
121
|
let projectId = weaverseProjectId || WEAVERSE_PROJECT_ID;
|
|
118
122
|
weaverseHost = weaverseHost || WEAVERSE_HOST || "https://weaverse.io";
|
|
@@ -168,6 +172,12 @@ async function weaverseLoader(args, components, countries, loaderConfigs) {
|
|
|
168
172
|
let items = page.items;
|
|
169
173
|
page.items = await withLoaderData(items, components, configs, args);
|
|
170
174
|
}
|
|
175
|
+
if (isDesignMode) {
|
|
176
|
+
Object.assign(configs, {
|
|
177
|
+
publicStoreDomain: PUBLIC_STORE_DOMAIN,
|
|
178
|
+
publicStorefrontApiToken: PUBLIC_STOREFRONT_API_TOKEN
|
|
179
|
+
});
|
|
180
|
+
}
|
|
171
181
|
resolve({ page, configs, project, pageAssignment });
|
|
172
182
|
} catch (err) {
|
|
173
183
|
console.log(`\u274C Error fetching project data: ${err?.toString()}`);
|
|
@@ -256,7 +266,7 @@ function WeaverseHydrogenRoot({
|
|
|
256
266
|
function RenderWeaverseRoot(props) {
|
|
257
267
|
let { weaverseData, components, countries, themeSchema } = props;
|
|
258
268
|
let weaverse = createWeaverseInstance(weaverseData, components);
|
|
259
|
-
useStudio(weaverse, countries, themeSchema);
|
|
269
|
+
useStudio(weaverse, countries, themeSchema, weaverseData);
|
|
260
270
|
return /* @__PURE__ */ React.createElement(WeaverseRoot, { context: weaverse });
|
|
261
271
|
}
|
|
262
272
|
export {
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.1.
|
|
2
|
+
"version": "1.1.11",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"typings": "dist/index.d.ts",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@remix-run/react": "1.19.1",
|
|
36
36
|
"@shopify/hydrogen": "2023.7.3",
|
|
37
|
-
"@weaverse/react": "1.1.
|
|
37
|
+
"@weaverse/react": "1.1.11",
|
|
38
38
|
"react-error-boundary": "^4.0.11"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|