@weaverse/hydrogen 1.1.7 → 1.1.8
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 +21 -20
- package/dist/index.d.ts +21 -20
- package/dist/index.js +5 -4
- package/dist/index.mjs +5 -4
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import React, { ForwardRefExoticComponent } from 'react';
|
|
2
2
|
import { LoaderArgs, AppLoadContext } from '@shopify/remix-oxygen';
|
|
3
|
-
import { ElementData, ElementSchema, BasicInput, WeaverseElement,
|
|
3
|
+
import { ElementData, ElementSchema, BasicInput, WeaverseElement, WeaverseItemStore, Weaverse } from '@weaverse/react';
|
|
4
4
|
export * from '@weaverse/react';
|
|
5
5
|
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
6
|
+
import { NavigateFunction } from '@remix-run/react';
|
|
6
7
|
import * as _shopify_hydrogen_react_storefront_api_types from '@shopify/hydrogen-react/storefront-api-types';
|
|
7
8
|
|
|
8
9
|
declare let STORE_PAGES: {
|
|
@@ -89,7 +90,8 @@ type WeaverseLoaderRequestInfo = {
|
|
|
89
90
|
queries: Record<string, string | boolean>;
|
|
90
91
|
i18n: I18nLocale;
|
|
91
92
|
};
|
|
92
|
-
|
|
93
|
+
type WeaverseCore = Omit<Weaverse, 'itemInstances' | 'elementInstances' | 'registerElement' | 'data'>;
|
|
94
|
+
interface WeaverseHydrogen extends WeaverseCore {
|
|
93
95
|
itemInstances: Map<string | number, HydrogenComponentInstance>;
|
|
94
96
|
elementInstances: Map<string, HydrogenElement>;
|
|
95
97
|
registerElement(element: HydrogenElement): void;
|
|
@@ -122,7 +124,7 @@ type WeaverseInternal = {
|
|
|
122
124
|
pageAssignment: HydrogenPageAssignment;
|
|
123
125
|
project: HydrogenProjectType;
|
|
124
126
|
navigate: NavigateFunction;
|
|
125
|
-
|
|
127
|
+
revalidate: () => void;
|
|
126
128
|
};
|
|
127
129
|
type HydrogenComponentPresets = {
|
|
128
130
|
type: string;
|
|
@@ -133,6 +135,13 @@ interface HydrogenElement {
|
|
|
133
135
|
Component: ForwardRefExoticComponent<HydrogenComponentProps>;
|
|
134
136
|
type: string;
|
|
135
137
|
schema?: HydrogenComponentSchema;
|
|
138
|
+
loader?: HydrogenComponentLoaderFunction;
|
|
139
|
+
}
|
|
140
|
+
interface WeaverseHydrogenInit extends HydrogenPageConfigs {
|
|
141
|
+
data: HydrogenPageData;
|
|
142
|
+
pageId: string;
|
|
143
|
+
platformType: 'shopify-hydrogen';
|
|
144
|
+
internal: Partial<WeaverseInternal>;
|
|
136
145
|
}
|
|
137
146
|
interface HydrogenComponentInstance extends Omit<WeaverseItemStore, '_flags' | 'data' | 'Element'> {
|
|
138
147
|
get _element(): HTMLElement | null;
|
|
@@ -140,18 +149,24 @@ interface HydrogenComponentInstance extends Omit<WeaverseItemStore, '_flags' | '
|
|
|
140
149
|
get data(): HydrogenComponentData;
|
|
141
150
|
_store: HydrogenComponentData;
|
|
142
151
|
}
|
|
152
|
+
type HydrogenComponentLoaderFunction = (args: WeaverseLoaderArgs) => Promise<unknown>;
|
|
143
153
|
interface HydrogenComponent<T extends HydrogenComponentProps = any> {
|
|
144
154
|
default: ForwardRefExoticComponent<T>;
|
|
145
155
|
schema: HydrogenComponentSchema;
|
|
146
|
-
loader?:
|
|
156
|
+
loader?: HydrogenComponentLoaderFunction;
|
|
147
157
|
}
|
|
158
|
+
type WeaverseStudioQueries = {
|
|
159
|
+
weaverseProjectId: string;
|
|
160
|
+
weaverseHost: string;
|
|
161
|
+
weaverseVersion: string;
|
|
162
|
+
isDesignMode: boolean;
|
|
163
|
+
};
|
|
148
164
|
type HydrogenPageConfigs = {
|
|
149
165
|
projectId: string;
|
|
150
166
|
weaverseHost: string;
|
|
151
167
|
weaverseVersion?: string;
|
|
152
168
|
isDesignMode?: boolean;
|
|
153
169
|
requestInfo: WeaverseLoaderRequestInfo;
|
|
154
|
-
[key: string]: any;
|
|
155
170
|
};
|
|
156
171
|
type HydrogenPageAssignment = {
|
|
157
172
|
projectId: string;
|
|
@@ -172,20 +187,6 @@ type HydrogenPageData = {
|
|
|
172
187
|
items: HydrogenComponentData[];
|
|
173
188
|
[key: string]: any;
|
|
174
189
|
};
|
|
175
|
-
type RelativeRoutingType = 'route' | 'path';
|
|
176
|
-
type To = string | Partial<Path>;
|
|
177
|
-
type Path = {
|
|
178
|
-
pathname: string;
|
|
179
|
-
search: string;
|
|
180
|
-
hash: string;
|
|
181
|
-
};
|
|
182
|
-
type NavigateOptions = {
|
|
183
|
-
replace?: boolean;
|
|
184
|
-
state?: any;
|
|
185
|
-
preventScrollReset?: boolean;
|
|
186
|
-
relative?: RelativeRoutingType;
|
|
187
|
-
};
|
|
188
|
-
type NavigateFunction = (to: To, options?: NavigateOptions) => void;
|
|
189
190
|
interface WeaverseHydrogenRootProps {
|
|
190
191
|
components: HydrogenComponent[];
|
|
191
192
|
countries: Localizations;
|
|
@@ -250,4 +251,4 @@ declare function useThemeSettings(): (Record<string, any> | ((newSettings: any)
|
|
|
250
251
|
|
|
251
252
|
declare function WeaverseHydrogenRoot({ errorComponent: ErrorComponent, ...themeConfigs }: WeaverseHydrogenRootProps): React.JSX.Element;
|
|
252
253
|
|
|
253
|
-
export { FetchProjectRequestBody, HydrogenComponent, HydrogenComponentData, HydrogenComponentInstance, HydrogenComponentPresets, HydrogenComponentProps, HydrogenComponentSchema, HydrogenElement, HydrogenPageAssignment, HydrogenPageConfigs, HydrogenPageData, HydrogenProjectConfig, HydrogenProjectType, HydrogenThemeInfo, HydrogenThemeSchema, HydrogenToolbarAction, I18nLocale, InspectorGroup, Locale, Localizations,
|
|
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 };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import React, { ForwardRefExoticComponent } from 'react';
|
|
2
2
|
import { LoaderArgs, AppLoadContext } from '@shopify/remix-oxygen';
|
|
3
|
-
import { ElementData, ElementSchema, BasicInput, WeaverseElement,
|
|
3
|
+
import { ElementData, ElementSchema, BasicInput, WeaverseElement, WeaverseItemStore, Weaverse } from '@weaverse/react';
|
|
4
4
|
export * from '@weaverse/react';
|
|
5
5
|
import { LanguageCode, CountryCode, CurrencyCode } from '@shopify/hydrogen/storefront-api-types';
|
|
6
|
+
import { NavigateFunction } from '@remix-run/react';
|
|
6
7
|
import * as _shopify_hydrogen_react_storefront_api_types from '@shopify/hydrogen-react/storefront-api-types';
|
|
7
8
|
|
|
8
9
|
declare let STORE_PAGES: {
|
|
@@ -89,7 +90,8 @@ type WeaverseLoaderRequestInfo = {
|
|
|
89
90
|
queries: Record<string, string | boolean>;
|
|
90
91
|
i18n: I18nLocale;
|
|
91
92
|
};
|
|
92
|
-
|
|
93
|
+
type WeaverseCore = Omit<Weaverse, 'itemInstances' | 'elementInstances' | 'registerElement' | 'data'>;
|
|
94
|
+
interface WeaverseHydrogen extends WeaverseCore {
|
|
93
95
|
itemInstances: Map<string | number, HydrogenComponentInstance>;
|
|
94
96
|
elementInstances: Map<string, HydrogenElement>;
|
|
95
97
|
registerElement(element: HydrogenElement): void;
|
|
@@ -122,7 +124,7 @@ type WeaverseInternal = {
|
|
|
122
124
|
pageAssignment: HydrogenPageAssignment;
|
|
123
125
|
project: HydrogenProjectType;
|
|
124
126
|
navigate: NavigateFunction;
|
|
125
|
-
|
|
127
|
+
revalidate: () => void;
|
|
126
128
|
};
|
|
127
129
|
type HydrogenComponentPresets = {
|
|
128
130
|
type: string;
|
|
@@ -133,6 +135,13 @@ interface HydrogenElement {
|
|
|
133
135
|
Component: ForwardRefExoticComponent<HydrogenComponentProps>;
|
|
134
136
|
type: string;
|
|
135
137
|
schema?: HydrogenComponentSchema;
|
|
138
|
+
loader?: HydrogenComponentLoaderFunction;
|
|
139
|
+
}
|
|
140
|
+
interface WeaverseHydrogenInit extends HydrogenPageConfigs {
|
|
141
|
+
data: HydrogenPageData;
|
|
142
|
+
pageId: string;
|
|
143
|
+
platformType: 'shopify-hydrogen';
|
|
144
|
+
internal: Partial<WeaverseInternal>;
|
|
136
145
|
}
|
|
137
146
|
interface HydrogenComponentInstance extends Omit<WeaverseItemStore, '_flags' | 'data' | 'Element'> {
|
|
138
147
|
get _element(): HTMLElement | null;
|
|
@@ -140,18 +149,24 @@ interface HydrogenComponentInstance extends Omit<WeaverseItemStore, '_flags' | '
|
|
|
140
149
|
get data(): HydrogenComponentData;
|
|
141
150
|
_store: HydrogenComponentData;
|
|
142
151
|
}
|
|
152
|
+
type HydrogenComponentLoaderFunction = (args: WeaverseLoaderArgs) => Promise<unknown>;
|
|
143
153
|
interface HydrogenComponent<T extends HydrogenComponentProps = any> {
|
|
144
154
|
default: ForwardRefExoticComponent<T>;
|
|
145
155
|
schema: HydrogenComponentSchema;
|
|
146
|
-
loader?:
|
|
156
|
+
loader?: HydrogenComponentLoaderFunction;
|
|
147
157
|
}
|
|
158
|
+
type WeaverseStudioQueries = {
|
|
159
|
+
weaverseProjectId: string;
|
|
160
|
+
weaverseHost: string;
|
|
161
|
+
weaverseVersion: string;
|
|
162
|
+
isDesignMode: boolean;
|
|
163
|
+
};
|
|
148
164
|
type HydrogenPageConfigs = {
|
|
149
165
|
projectId: string;
|
|
150
166
|
weaverseHost: string;
|
|
151
167
|
weaverseVersion?: string;
|
|
152
168
|
isDesignMode?: boolean;
|
|
153
169
|
requestInfo: WeaverseLoaderRequestInfo;
|
|
154
|
-
[key: string]: any;
|
|
155
170
|
};
|
|
156
171
|
type HydrogenPageAssignment = {
|
|
157
172
|
projectId: string;
|
|
@@ -172,20 +187,6 @@ type HydrogenPageData = {
|
|
|
172
187
|
items: HydrogenComponentData[];
|
|
173
188
|
[key: string]: any;
|
|
174
189
|
};
|
|
175
|
-
type RelativeRoutingType = 'route' | 'path';
|
|
176
|
-
type To = string | Partial<Path>;
|
|
177
|
-
type Path = {
|
|
178
|
-
pathname: string;
|
|
179
|
-
search: string;
|
|
180
|
-
hash: string;
|
|
181
|
-
};
|
|
182
|
-
type NavigateOptions = {
|
|
183
|
-
replace?: boolean;
|
|
184
|
-
state?: any;
|
|
185
|
-
preventScrollReset?: boolean;
|
|
186
|
-
relative?: RelativeRoutingType;
|
|
187
|
-
};
|
|
188
|
-
type NavigateFunction = (to: To, options?: NavigateOptions) => void;
|
|
189
190
|
interface WeaverseHydrogenRootProps {
|
|
190
191
|
components: HydrogenComponent[];
|
|
191
192
|
countries: Localizations;
|
|
@@ -250,4 +251,4 @@ declare function useThemeSettings(): (Record<string, any> | ((newSettings: any)
|
|
|
250
251
|
|
|
251
252
|
declare function WeaverseHydrogenRoot({ errorComponent: ErrorComponent, ...themeConfigs }: WeaverseHydrogenRootProps): React.JSX.Element;
|
|
252
253
|
|
|
253
|
-
export { FetchProjectRequestBody, HydrogenComponent, HydrogenComponentData, HydrogenComponentInstance, HydrogenComponentPresets, HydrogenComponentProps, HydrogenComponentSchema, HydrogenElement, HydrogenPageAssignment, HydrogenPageConfigs, HydrogenPageData, HydrogenProjectConfig, HydrogenProjectType, HydrogenThemeInfo, HydrogenThemeSchema, HydrogenToolbarAction, I18nLocale, InspectorGroup, Locale, Localizations,
|
|
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 };
|
package/dist/index.js
CHANGED
|
@@ -79,7 +79,8 @@ function createWeaverseInstance(weaverseData, components) {
|
|
|
79
79
|
weaverse.registerElement({
|
|
80
80
|
type: comp?.schema?.type,
|
|
81
81
|
Component: comp?.default,
|
|
82
|
-
schema: comp?.schema
|
|
82
|
+
schema: comp?.schema,
|
|
83
|
+
loader: comp?.loader
|
|
83
84
|
});
|
|
84
85
|
});
|
|
85
86
|
return weaverse;
|
|
@@ -91,7 +92,7 @@ var import_react3 = require("@weaverse/react");
|
|
|
91
92
|
var import_react4 = require("react");
|
|
92
93
|
function useStudio(weaverse, countries, schema) {
|
|
93
94
|
let navigate = (0, import_react2.useNavigate)();
|
|
94
|
-
let
|
|
95
|
+
let { revalidate } = (0, import_react2.useRevalidator)();
|
|
95
96
|
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
96
97
|
let isStudio = import_react3.isIframe && isDesignMode && weaverseHost && weaverseVersion;
|
|
97
98
|
(0, import_react4.useEffect)(() => {
|
|
@@ -99,7 +100,7 @@ function useStudio(weaverse, countries, schema) {
|
|
|
99
100
|
weaverse.internal = {
|
|
100
101
|
...weaverse.internal,
|
|
101
102
|
navigate,
|
|
102
|
-
|
|
103
|
+
revalidate,
|
|
103
104
|
themeConfigs: { schema, countries }
|
|
104
105
|
};
|
|
105
106
|
window.__weaverse = weaverse;
|
|
@@ -111,7 +112,7 @@ function useStudio(weaverse, countries, schema) {
|
|
|
111
112
|
);
|
|
112
113
|
}
|
|
113
114
|
}
|
|
114
|
-
}, [weaverse
|
|
115
|
+
}, [weaverse]);
|
|
115
116
|
}
|
|
116
117
|
|
|
117
118
|
// src/index.tsx
|
package/dist/index.mjs
CHANGED
|
@@ -39,7 +39,8 @@ function createWeaverseInstance(weaverseData, components) {
|
|
|
39
39
|
weaverse.registerElement({
|
|
40
40
|
type: comp?.schema?.type,
|
|
41
41
|
Component: comp?.default,
|
|
42
|
-
schema: comp?.schema
|
|
42
|
+
schema: comp?.schema,
|
|
43
|
+
loader: comp?.loader
|
|
43
44
|
});
|
|
44
45
|
});
|
|
45
46
|
return weaverse;
|
|
@@ -51,7 +52,7 @@ import { isIframe, loadScript } from "@weaverse/react";
|
|
|
51
52
|
import { useEffect } from "react";
|
|
52
53
|
function useStudio(weaverse, countries, schema) {
|
|
53
54
|
let navigate = useNavigate();
|
|
54
|
-
let
|
|
55
|
+
let { revalidate } = useRevalidator();
|
|
55
56
|
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
56
57
|
let isStudio = isIframe && isDesignMode && weaverseHost && weaverseVersion;
|
|
57
58
|
useEffect(() => {
|
|
@@ -59,7 +60,7 @@ function useStudio(weaverse, countries, schema) {
|
|
|
59
60
|
weaverse.internal = {
|
|
60
61
|
...weaverse.internal,
|
|
61
62
|
navigate,
|
|
62
|
-
|
|
63
|
+
revalidate,
|
|
63
64
|
themeConfigs: { schema, countries }
|
|
64
65
|
};
|
|
65
66
|
window.__weaverse = weaverse;
|
|
@@ -71,7 +72,7 @@ function useStudio(weaverse, countries, schema) {
|
|
|
71
72
|
);
|
|
72
73
|
}
|
|
73
74
|
}
|
|
74
|
-
}, [weaverse
|
|
75
|
+
}, [weaverse]);
|
|
75
76
|
}
|
|
76
77
|
|
|
77
78
|
// src/index.tsx
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.1.
|
|
2
|
+
"version": "1.1.8",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"typings": "dist/index.d.ts",
|
|
@@ -34,10 +34,10 @@
|
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@remix-run/react": "1.19.1",
|
|
36
36
|
"@shopify/hydrogen": "2023.7.2",
|
|
37
|
-
"@weaverse/react": "1.1.
|
|
37
|
+
"@weaverse/react": "1.1.8",
|
|
38
38
|
"react-error-boundary": "^4.0.11"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@shopify/remix-oxygen": "^1.1.3"
|
|
42
42
|
}
|
|
43
|
-
}
|
|
43
|
+
}
|