@weaverse/hydrogen 4.2.2 → 4.2.5
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 +71 -152
- package/dist/index.d.ts +71 -152
- package/dist/index.js +247 -301
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +250 -298
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,41 +1,32 @@
|
|
|
1
|
+
import { SelectedOptionInput } from '@shopify/hydrogen/storefront-api-types';
|
|
1
2
|
import { EventEmitter, BasicInput as BasicInput$1, ElementData, WeaverseElement, ElementSchema, WeaverseProjectDataType, WeaverseCoreParams, WeaverseResourcePickerData, Weaverse, PlatformTypeEnum, WeaverseItemStore } from '@weaverse/react';
|
|
2
3
|
export { InputType, PositionInputValue, WeaverseImage, WeaverseVideo, isBrowser, isIframe, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
3
4
|
import { NavigateFunction } from '@remix-run/react';
|
|
4
|
-
import { createWithCache, I18nBase, HydrogenContext
|
|
5
|
-
import { CurrencyCode, SelectedOptionInput } from '@shopify/hydrogen/storefront-api-types';
|
|
5
|
+
import { createWithCache, I18nBase, HydrogenContext } from '@shopify/hydrogen';
|
|
6
6
|
import { LoaderFunctionArgs, AppLoadContext } from '@shopify/remix-oxygen';
|
|
7
7
|
import * as react from 'react';
|
|
8
8
|
import { ForwardRefExoticComponent, ComponentType, JSX } from 'react';
|
|
9
9
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
COLLECTION: string;
|
|
16
|
-
COLLECTION_LIST: string;
|
|
17
|
-
PAGE: string;
|
|
18
|
-
BLOG: string;
|
|
19
|
-
ARTICLE: string;
|
|
20
|
-
CUSTOM: string;
|
|
11
|
+
type WeaverseThemeData = {
|
|
12
|
+
theme: HydrogenThemeSettings;
|
|
13
|
+
schema?: HydrogenThemeSchema;
|
|
14
|
+
publicEnv?: PublicEnv;
|
|
21
15
|
};
|
|
22
|
-
|
|
23
16
|
declare class ThemeSettingsStore extends EventEmitter {
|
|
24
17
|
settings: HydrogenThemeSettings;
|
|
25
|
-
countries?: Localizations;
|
|
26
18
|
schema?: HydrogenThemeSchema;
|
|
27
19
|
publicEnv?: PublicEnv;
|
|
28
|
-
constructor(data:
|
|
20
|
+
constructor(data: WeaverseThemeData);
|
|
29
21
|
updateThemeSettings: (newSettings: HydrogenThemeSettings) => void;
|
|
30
22
|
getSnapshot: () => HydrogenThemeSettings;
|
|
31
23
|
getServerSnapshot: () => HydrogenThemeSettings;
|
|
32
24
|
}
|
|
33
|
-
declare function useThemeSettings<T = HydrogenThemeSettings>(): T;
|
|
34
25
|
|
|
35
26
|
declare class WeaverseClient {
|
|
36
27
|
API: string;
|
|
37
28
|
basePageConfigs: Omit<WeaverseProjectConfigs, 'requestInfo'>;
|
|
38
|
-
basePageRequestBody: Omit<FetchProjectRequestBody, 'url'
|
|
29
|
+
basePageRequestBody: Omit<FetchProjectRequestBody, 'url'>;
|
|
39
30
|
configs: WeaverseProjectConfigs;
|
|
40
31
|
withCache: ReturnType<typeof createWithCache>;
|
|
41
32
|
request: WeaverseClientArgs['request'];
|
|
@@ -45,23 +36,22 @@ declare class WeaverseClient {
|
|
|
45
36
|
env: WeaverseClientArgs['env'];
|
|
46
37
|
cache: WeaverseClientArgs['cache'];
|
|
47
38
|
waitUntil: WeaverseClientArgs['waitUntil'];
|
|
48
|
-
countries?: WeaverseClientArgs['countries'];
|
|
49
39
|
constructor(args: WeaverseClientArgs);
|
|
50
40
|
private directFetch;
|
|
51
|
-
fetchWithCache<T extends object>(url: string, options?:
|
|
41
|
+
fetchWithCache<T extends object>(url: string, options?: RequestInit & {
|
|
42
|
+
strategy?: AllCacheOptions;
|
|
43
|
+
}): Promise<T>;
|
|
52
44
|
loadThemeSettings: (strategy?: AllCacheOptions) => Promise<any>;
|
|
53
45
|
generateFallbackPage: (message: string) => HydrogenPageData;
|
|
54
|
-
loadPage: (params?:
|
|
46
|
+
loadPage: (params?: {
|
|
47
|
+
type?: PageType;
|
|
48
|
+
locale?: string;
|
|
49
|
+
handle?: string;
|
|
50
|
+
strategy?: AllCacheOptions;
|
|
51
|
+
}) => Promise<WeaverseLoaderData | null>;
|
|
55
52
|
execComponentLoader: (item: HydrogenComponentData) => Promise<HydrogenComponentData>;
|
|
56
53
|
}
|
|
57
54
|
|
|
58
|
-
type Locale = I18nBase & {
|
|
59
|
-
label: string;
|
|
60
|
-
currency: CurrencyCode;
|
|
61
|
-
};
|
|
62
|
-
type Localizations = {
|
|
63
|
-
[key: string]: Locale;
|
|
64
|
-
};
|
|
65
55
|
interface AllCacheOptions {
|
|
66
56
|
mode?: string;
|
|
67
57
|
maxAge?: number;
|
|
@@ -89,7 +79,6 @@ interface HydrogenComponentData extends ElementData {
|
|
|
89
79
|
updatedAt?: string;
|
|
90
80
|
deletedAt?: string;
|
|
91
81
|
}
|
|
92
|
-
type HydrogenToolbarAction = 'general-settings' | 'global-section' | 'move-up' | 'move-down' | 'toggle-visibility' | 'duplicate' | 'delete';
|
|
93
82
|
interface HydrogenComponentSchema extends ElementSchema {
|
|
94
83
|
childTypes?: string[];
|
|
95
84
|
inspector: InspectorGroup[];
|
|
@@ -99,7 +88,6 @@ interface HydrogenComponentSchema extends ElementSchema {
|
|
|
99
88
|
pages?: ('*' | PageType)[];
|
|
100
89
|
groups?: ('*' | 'header' | 'footer' | 'body')[];
|
|
101
90
|
};
|
|
102
|
-
toolbar?: (HydrogenToolbarAction | HydrogenToolbarAction[])[];
|
|
103
91
|
}
|
|
104
92
|
type BasicInput = Omit<BasicInput$1, 'condition'> & {
|
|
105
93
|
shouldRevalidate?: boolean;
|
|
@@ -120,16 +108,13 @@ interface HydrogenComponentProps<L = any> extends WeaverseElement {
|
|
|
120
108
|
loaderData?: L;
|
|
121
109
|
children?: React.JSX.Element[];
|
|
122
110
|
}
|
|
123
|
-
type I18nLocale = Locale & {
|
|
124
|
-
pathPrefix: string;
|
|
125
|
-
};
|
|
126
111
|
type WeaverseLoaderRequestInfo = {
|
|
127
112
|
search: string;
|
|
128
113
|
pathname: string;
|
|
129
114
|
queries: {
|
|
130
115
|
[key: string]: string | boolean;
|
|
131
116
|
};
|
|
132
|
-
i18n:
|
|
117
|
+
i18n: WeaverseI18n;
|
|
133
118
|
};
|
|
134
119
|
type HydrogenThemeSettings = {
|
|
135
120
|
[key: string]: any;
|
|
@@ -198,11 +183,10 @@ type HydrogenPageAssignment = {
|
|
|
198
183
|
handle: string;
|
|
199
184
|
locale: string;
|
|
200
185
|
};
|
|
201
|
-
type HydrogenPageConfigs = Omit<WeaverseProjectConfigs, 'publicEnv'> & {
|
|
202
|
-
requestInfo: WeaverseLoaderRequestInfo;
|
|
203
|
-
};
|
|
204
186
|
interface WeaverseLoaderData {
|
|
205
|
-
configs:
|
|
187
|
+
configs: Omit<WeaverseProjectConfigs, 'publicEnv'> & {
|
|
188
|
+
requestInfo: WeaverseLoaderRequestInfo;
|
|
189
|
+
};
|
|
206
190
|
page: HydrogenPageData;
|
|
207
191
|
project: HydrogenProjectType;
|
|
208
192
|
pageAssignment: HydrogenPageAssignment;
|
|
@@ -214,45 +198,37 @@ interface HydrogenPageData extends WeaverseProjectDataType {
|
|
|
214
198
|
__cacheId?: string;
|
|
215
199
|
[key: string]: any;
|
|
216
200
|
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
message: string;
|
|
222
|
-
stack?: string;
|
|
223
|
-
};
|
|
224
|
-
}>;
|
|
225
|
-
}
|
|
226
|
-
type HydrogenThemeInfo = {
|
|
227
|
-
name: string;
|
|
228
|
-
version: string;
|
|
229
|
-
author: string;
|
|
230
|
-
authorProfilePhoto: string;
|
|
231
|
-
documentationUrl: string;
|
|
232
|
-
supportUrl: string;
|
|
201
|
+
type WeaverseI18n = I18nBase & {
|
|
202
|
+
label?: string;
|
|
203
|
+
pathPrefix?: string;
|
|
204
|
+
[key: string]: any;
|
|
233
205
|
};
|
|
234
206
|
interface HydrogenThemeSchema {
|
|
235
|
-
info:
|
|
207
|
+
info: {
|
|
208
|
+
name: string;
|
|
209
|
+
version: string;
|
|
210
|
+
author: string;
|
|
211
|
+
authorProfilePhoto: string;
|
|
212
|
+
documentationUrl: string;
|
|
213
|
+
supportUrl: string;
|
|
214
|
+
};
|
|
236
215
|
inspector: InspectorGroup[];
|
|
237
|
-
i18n?:
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
216
|
+
i18n?: {
|
|
217
|
+
urlStructure: 'url-path' | 'subdomain' | 'top-level-domain';
|
|
218
|
+
defaultLocale: WeaverseI18n;
|
|
219
|
+
shopLocales: WeaverseI18n[];
|
|
220
|
+
};
|
|
241
221
|
}
|
|
242
|
-
type PageType =
|
|
243
|
-
type PageAssignmentParams = {
|
|
244
|
-
type?: PageType;
|
|
245
|
-
locale?: string;
|
|
246
|
-
handle?: string;
|
|
247
|
-
};
|
|
248
|
-
type LoadPageParams = PageAssignmentParams & {
|
|
249
|
-
strategy?: AllCacheOptions;
|
|
250
|
-
};
|
|
222
|
+
type PageType = 'INDEX' | 'PRODUCT' | 'ALL_PRODUCTS' | 'COLLECTION' | 'COLLECTION_LIST' | 'PAGE' | 'BLOG' | 'ARTICLE' | 'CUSTOM';
|
|
251
223
|
type FetchProjectRequestBody = {
|
|
252
224
|
projectId: string;
|
|
253
225
|
url: string;
|
|
254
|
-
i18n?:
|
|
255
|
-
params?:
|
|
226
|
+
i18n?: WeaverseI18n;
|
|
227
|
+
params?: {
|
|
228
|
+
type?: PageType;
|
|
229
|
+
locale?: string;
|
|
230
|
+
handle?: string;
|
|
231
|
+
};
|
|
256
232
|
isDesignMode?: boolean;
|
|
257
233
|
};
|
|
258
234
|
type FetchProjectPayload = {
|
|
@@ -263,23 +239,10 @@ type FetchProjectPayload = {
|
|
|
263
239
|
};
|
|
264
240
|
type WeaverseClientArgs = HydrogenContext & {
|
|
265
241
|
components: HydrogenComponent[];
|
|
266
|
-
countries?: Localizations;
|
|
267
242
|
themeSchema: HydrogenThemeSchema;
|
|
268
243
|
request: Request;
|
|
269
244
|
cache: Cache;
|
|
270
245
|
};
|
|
271
|
-
type FetchWithCacheOptions = RequestInit & {
|
|
272
|
-
strategy?: AllCacheOptions;
|
|
273
|
-
};
|
|
274
|
-
type RootRouteData = {
|
|
275
|
-
weaverseTheme?: {
|
|
276
|
-
theme: HydrogenThemeSettings;
|
|
277
|
-
countries?: Localizations;
|
|
278
|
-
schema?: HydrogenThemeSchema;
|
|
279
|
-
publicEnv?: PublicEnv;
|
|
280
|
-
};
|
|
281
|
-
[key: string]: any;
|
|
282
|
-
};
|
|
283
246
|
type WeaverseProduct = WeaverseResourcePickerData;
|
|
284
247
|
type WeaverseCollection = WeaverseResourcePickerData;
|
|
285
248
|
type WeaverseBlog = WeaverseResourcePickerData;
|
|
@@ -310,60 +273,34 @@ declare module '@shopify/hydrogen' {
|
|
|
310
273
|
}
|
|
311
274
|
}
|
|
312
275
|
|
|
313
|
-
declare
|
|
276
|
+
declare class WeaverseHydrogenItem extends WeaverseItemStore {
|
|
277
|
+
weaverse: WeaverseHydrogen;
|
|
278
|
+
constructor(initialData: HydrogenComponentData, weaverse: WeaverseHydrogen);
|
|
279
|
+
get Element(): HydrogenElement;
|
|
280
|
+
get _schemaData(): Record<string, any>;
|
|
281
|
+
}
|
|
282
|
+
declare class WeaverseHydrogen extends Weaverse {
|
|
283
|
+
platformType: PlatformTypeEnum;
|
|
284
|
+
pageId: string;
|
|
285
|
+
internal: Partial<WeaverseInternal>;
|
|
286
|
+
requestInfo: WeaverseLoaderRequestInfo;
|
|
287
|
+
ItemConstructor: typeof WeaverseHydrogenItem;
|
|
288
|
+
data: HydrogenPageData;
|
|
289
|
+
static itemInstances: Map<string, WeaverseHydrogenItem>;
|
|
290
|
+
static elementRegistry: Map<string, HydrogenElement>;
|
|
291
|
+
constructor(params: WeaverseHydrogenParams);
|
|
292
|
+
}
|
|
293
|
+
declare let WeaverseHydrogenRoot: react.MemoExoticComponent<({ components, errorComponent: ErrorComponent, }: {
|
|
294
|
+
components: HydrogenComponent[];
|
|
295
|
+
errorComponent?: React.FC<{
|
|
296
|
+
error: any;
|
|
297
|
+
}>;
|
|
298
|
+
}) => react_jsx_runtime.JSX.Element>;
|
|
314
299
|
declare function withWeaverse(Component: ComponentType<any>): (props: JSX.IntrinsicAttributes) => react_jsx_runtime.JSX.Element;
|
|
315
|
-
|
|
316
|
-
declare function getRequestQueries<T = Record<string, string | boolean>>(request: Request): T;
|
|
317
|
-
declare function getWeaverseConfigs(request: Request, env: HydrogenEnv): WeaverseProjectConfigs;
|
|
318
|
-
declare function generateDataFromSchema({ inspector, }: HydrogenComponentSchema | HydrogenThemeSchema): Record<string, any>;
|
|
319
|
-
/**
|
|
320
|
-
* Resize an image to the specified dimensions.
|
|
321
|
-
*
|
|
322
|
-
* @param imageURL {string} URL of the image
|
|
323
|
-
* @param size {string} Shopify size attribute
|
|
324
|
-
* @returns {string} URL with size attribute
|
|
325
|
-
*
|
|
326
|
-
* @example
|
|
327
|
-
* resizeImage('https://cdn.shopify.com/image.jpg', '100x')
|
|
328
|
-
* resizeImage('https://cdn.shopify.com/image.jpg', '100x100')
|
|
329
|
-
*/
|
|
330
|
-
declare function resizeShopifyImage(imageURL: string, size: string): string;
|
|
331
|
-
declare function recursivelyAddDataItem(type: string, components: HydrogenComponent<any>[], items: any[], initData?: object): `${string}-${string}-${string}-${string}-${string}`;
|
|
332
|
-
declare function getPreviewData(type: string, components: any, weaverseHost: string): {
|
|
333
|
-
page: {
|
|
334
|
-
id: string;
|
|
335
|
-
name: string;
|
|
336
|
-
rootId: string;
|
|
337
|
-
items: any[];
|
|
338
|
-
};
|
|
339
|
-
project: {
|
|
340
|
-
id: string;
|
|
341
|
-
weaverseShopId: string;
|
|
342
|
-
name: string;
|
|
343
|
-
};
|
|
344
|
-
configs: {
|
|
345
|
-
projectId: string;
|
|
346
|
-
weaverseHost: string;
|
|
347
|
-
isDesignMode: boolean;
|
|
348
|
-
isPreviewMode: boolean;
|
|
349
|
-
requestInfo: {
|
|
350
|
-
i18n: {
|
|
351
|
-
label: string;
|
|
352
|
-
language: string;
|
|
353
|
-
country: string;
|
|
354
|
-
currency: string;
|
|
355
|
-
pathPrefix: string;
|
|
356
|
-
};
|
|
357
|
-
queries: {};
|
|
358
|
-
pathname: string;
|
|
359
|
-
search: string;
|
|
360
|
-
};
|
|
361
|
-
};
|
|
362
|
-
};
|
|
300
|
+
declare function useThemeSettings<T = HydrogenThemeSettings>(): T;
|
|
363
301
|
|
|
364
302
|
declare function getSelectedProductOptions(request: Request): SelectedOptionInput[];
|
|
365
|
-
|
|
366
|
-
declare let IMAGES_PLACEHOLDERS: {
|
|
303
|
+
declare const IMAGES_PLACEHOLDERS: {
|
|
367
304
|
logo_white: string;
|
|
368
305
|
logo_black: string;
|
|
369
306
|
image: string;
|
|
@@ -395,22 +332,4 @@ declare let IMAGES_PLACEHOLDERS: {
|
|
|
395
332
|
product_18: string;
|
|
396
333
|
};
|
|
397
334
|
|
|
398
|
-
|
|
399
|
-
platformType: PlatformTypeEnum;
|
|
400
|
-
pageId: string;
|
|
401
|
-
internal: Partial<WeaverseInternal>;
|
|
402
|
-
requestInfo: WeaverseLoaderRequestInfo;
|
|
403
|
-
ItemConstructor: typeof WeaverseHydrogenItem;
|
|
404
|
-
data: HydrogenPageData;
|
|
405
|
-
static itemInstances: Map<string, WeaverseHydrogenItem>;
|
|
406
|
-
static elementRegistry: Map<string, HydrogenElement>;
|
|
407
|
-
constructor(params: WeaverseHydrogenParams);
|
|
408
|
-
}
|
|
409
|
-
declare class WeaverseHydrogenItem extends WeaverseItemStore {
|
|
410
|
-
weaverse: WeaverseHydrogen;
|
|
411
|
-
constructor(initialData: HydrogenComponentData, weaverse: WeaverseHydrogen);
|
|
412
|
-
get Element(): HydrogenElement;
|
|
413
|
-
get _schemaData(): Record<string, any>;
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectType, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, IMAGES_PLACEHOLDERS, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseMetaObject, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStudioQueries, generateDataFromSchema, getPreviewData, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, recursivelyAddDataItem, resizeShopifyImage, useThemeSettings, withWeaverse };
|
|
335
|
+
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageData, type HydrogenProjectType, type HydrogenThemeSchema, type HydrogenThemeSettings, IMAGES_PLACEHOLDERS, type InspectorGroup, type PageType, type PublicEnv, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseI18n, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseMetaObject, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStudioQueries, getSelectedProductOptions, useThemeSettings, withWeaverse };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,41 +1,32 @@
|
|
|
1
|
+
import { SelectedOptionInput } from '@shopify/hydrogen/storefront-api-types';
|
|
1
2
|
import { EventEmitter, BasicInput as BasicInput$1, ElementData, WeaverseElement, ElementSchema, WeaverseProjectDataType, WeaverseCoreParams, WeaverseResourcePickerData, Weaverse, PlatformTypeEnum, WeaverseItemStore } from '@weaverse/react';
|
|
2
3
|
export { InputType, PositionInputValue, WeaverseImage, WeaverseVideo, isBrowser, isIframe, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
3
4
|
import { NavigateFunction } from '@remix-run/react';
|
|
4
|
-
import { createWithCache, I18nBase, HydrogenContext
|
|
5
|
-
import { CurrencyCode, SelectedOptionInput } from '@shopify/hydrogen/storefront-api-types';
|
|
5
|
+
import { createWithCache, I18nBase, HydrogenContext } from '@shopify/hydrogen';
|
|
6
6
|
import { LoaderFunctionArgs, AppLoadContext } from '@shopify/remix-oxygen';
|
|
7
7
|
import * as react from 'react';
|
|
8
8
|
import { ForwardRefExoticComponent, ComponentType, JSX } from 'react';
|
|
9
9
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
COLLECTION: string;
|
|
16
|
-
COLLECTION_LIST: string;
|
|
17
|
-
PAGE: string;
|
|
18
|
-
BLOG: string;
|
|
19
|
-
ARTICLE: string;
|
|
20
|
-
CUSTOM: string;
|
|
11
|
+
type WeaverseThemeData = {
|
|
12
|
+
theme: HydrogenThemeSettings;
|
|
13
|
+
schema?: HydrogenThemeSchema;
|
|
14
|
+
publicEnv?: PublicEnv;
|
|
21
15
|
};
|
|
22
|
-
|
|
23
16
|
declare class ThemeSettingsStore extends EventEmitter {
|
|
24
17
|
settings: HydrogenThemeSettings;
|
|
25
|
-
countries?: Localizations;
|
|
26
18
|
schema?: HydrogenThemeSchema;
|
|
27
19
|
publicEnv?: PublicEnv;
|
|
28
|
-
constructor(data:
|
|
20
|
+
constructor(data: WeaverseThemeData);
|
|
29
21
|
updateThemeSettings: (newSettings: HydrogenThemeSettings) => void;
|
|
30
22
|
getSnapshot: () => HydrogenThemeSettings;
|
|
31
23
|
getServerSnapshot: () => HydrogenThemeSettings;
|
|
32
24
|
}
|
|
33
|
-
declare function useThemeSettings<T = HydrogenThemeSettings>(): T;
|
|
34
25
|
|
|
35
26
|
declare class WeaverseClient {
|
|
36
27
|
API: string;
|
|
37
28
|
basePageConfigs: Omit<WeaverseProjectConfigs, 'requestInfo'>;
|
|
38
|
-
basePageRequestBody: Omit<FetchProjectRequestBody, 'url'
|
|
29
|
+
basePageRequestBody: Omit<FetchProjectRequestBody, 'url'>;
|
|
39
30
|
configs: WeaverseProjectConfigs;
|
|
40
31
|
withCache: ReturnType<typeof createWithCache>;
|
|
41
32
|
request: WeaverseClientArgs['request'];
|
|
@@ -45,23 +36,22 @@ declare class WeaverseClient {
|
|
|
45
36
|
env: WeaverseClientArgs['env'];
|
|
46
37
|
cache: WeaverseClientArgs['cache'];
|
|
47
38
|
waitUntil: WeaverseClientArgs['waitUntil'];
|
|
48
|
-
countries?: WeaverseClientArgs['countries'];
|
|
49
39
|
constructor(args: WeaverseClientArgs);
|
|
50
40
|
private directFetch;
|
|
51
|
-
fetchWithCache<T extends object>(url: string, options?:
|
|
41
|
+
fetchWithCache<T extends object>(url: string, options?: RequestInit & {
|
|
42
|
+
strategy?: AllCacheOptions;
|
|
43
|
+
}): Promise<T>;
|
|
52
44
|
loadThemeSettings: (strategy?: AllCacheOptions) => Promise<any>;
|
|
53
45
|
generateFallbackPage: (message: string) => HydrogenPageData;
|
|
54
|
-
loadPage: (params?:
|
|
46
|
+
loadPage: (params?: {
|
|
47
|
+
type?: PageType;
|
|
48
|
+
locale?: string;
|
|
49
|
+
handle?: string;
|
|
50
|
+
strategy?: AllCacheOptions;
|
|
51
|
+
}) => Promise<WeaverseLoaderData | null>;
|
|
55
52
|
execComponentLoader: (item: HydrogenComponentData) => Promise<HydrogenComponentData>;
|
|
56
53
|
}
|
|
57
54
|
|
|
58
|
-
type Locale = I18nBase & {
|
|
59
|
-
label: string;
|
|
60
|
-
currency: CurrencyCode;
|
|
61
|
-
};
|
|
62
|
-
type Localizations = {
|
|
63
|
-
[key: string]: Locale;
|
|
64
|
-
};
|
|
65
55
|
interface AllCacheOptions {
|
|
66
56
|
mode?: string;
|
|
67
57
|
maxAge?: number;
|
|
@@ -89,7 +79,6 @@ interface HydrogenComponentData extends ElementData {
|
|
|
89
79
|
updatedAt?: string;
|
|
90
80
|
deletedAt?: string;
|
|
91
81
|
}
|
|
92
|
-
type HydrogenToolbarAction = 'general-settings' | 'global-section' | 'move-up' | 'move-down' | 'toggle-visibility' | 'duplicate' | 'delete';
|
|
93
82
|
interface HydrogenComponentSchema extends ElementSchema {
|
|
94
83
|
childTypes?: string[];
|
|
95
84
|
inspector: InspectorGroup[];
|
|
@@ -99,7 +88,6 @@ interface HydrogenComponentSchema extends ElementSchema {
|
|
|
99
88
|
pages?: ('*' | PageType)[];
|
|
100
89
|
groups?: ('*' | 'header' | 'footer' | 'body')[];
|
|
101
90
|
};
|
|
102
|
-
toolbar?: (HydrogenToolbarAction | HydrogenToolbarAction[])[];
|
|
103
91
|
}
|
|
104
92
|
type BasicInput = Omit<BasicInput$1, 'condition'> & {
|
|
105
93
|
shouldRevalidate?: boolean;
|
|
@@ -120,16 +108,13 @@ interface HydrogenComponentProps<L = any> extends WeaverseElement {
|
|
|
120
108
|
loaderData?: L;
|
|
121
109
|
children?: React.JSX.Element[];
|
|
122
110
|
}
|
|
123
|
-
type I18nLocale = Locale & {
|
|
124
|
-
pathPrefix: string;
|
|
125
|
-
};
|
|
126
111
|
type WeaverseLoaderRequestInfo = {
|
|
127
112
|
search: string;
|
|
128
113
|
pathname: string;
|
|
129
114
|
queries: {
|
|
130
115
|
[key: string]: string | boolean;
|
|
131
116
|
};
|
|
132
|
-
i18n:
|
|
117
|
+
i18n: WeaverseI18n;
|
|
133
118
|
};
|
|
134
119
|
type HydrogenThemeSettings = {
|
|
135
120
|
[key: string]: any;
|
|
@@ -198,11 +183,10 @@ type HydrogenPageAssignment = {
|
|
|
198
183
|
handle: string;
|
|
199
184
|
locale: string;
|
|
200
185
|
};
|
|
201
|
-
type HydrogenPageConfigs = Omit<WeaverseProjectConfigs, 'publicEnv'> & {
|
|
202
|
-
requestInfo: WeaverseLoaderRequestInfo;
|
|
203
|
-
};
|
|
204
186
|
interface WeaverseLoaderData {
|
|
205
|
-
configs:
|
|
187
|
+
configs: Omit<WeaverseProjectConfigs, 'publicEnv'> & {
|
|
188
|
+
requestInfo: WeaverseLoaderRequestInfo;
|
|
189
|
+
};
|
|
206
190
|
page: HydrogenPageData;
|
|
207
191
|
project: HydrogenProjectType;
|
|
208
192
|
pageAssignment: HydrogenPageAssignment;
|
|
@@ -214,45 +198,37 @@ interface HydrogenPageData extends WeaverseProjectDataType {
|
|
|
214
198
|
__cacheId?: string;
|
|
215
199
|
[key: string]: any;
|
|
216
200
|
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
message: string;
|
|
222
|
-
stack?: string;
|
|
223
|
-
};
|
|
224
|
-
}>;
|
|
225
|
-
}
|
|
226
|
-
type HydrogenThemeInfo = {
|
|
227
|
-
name: string;
|
|
228
|
-
version: string;
|
|
229
|
-
author: string;
|
|
230
|
-
authorProfilePhoto: string;
|
|
231
|
-
documentationUrl: string;
|
|
232
|
-
supportUrl: string;
|
|
201
|
+
type WeaverseI18n = I18nBase & {
|
|
202
|
+
label?: string;
|
|
203
|
+
pathPrefix?: string;
|
|
204
|
+
[key: string]: any;
|
|
233
205
|
};
|
|
234
206
|
interface HydrogenThemeSchema {
|
|
235
|
-
info:
|
|
207
|
+
info: {
|
|
208
|
+
name: string;
|
|
209
|
+
version: string;
|
|
210
|
+
author: string;
|
|
211
|
+
authorProfilePhoto: string;
|
|
212
|
+
documentationUrl: string;
|
|
213
|
+
supportUrl: string;
|
|
214
|
+
};
|
|
236
215
|
inspector: InspectorGroup[];
|
|
237
|
-
i18n?:
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
216
|
+
i18n?: {
|
|
217
|
+
urlStructure: 'url-path' | 'subdomain' | 'top-level-domain';
|
|
218
|
+
defaultLocale: WeaverseI18n;
|
|
219
|
+
shopLocales: WeaverseI18n[];
|
|
220
|
+
};
|
|
241
221
|
}
|
|
242
|
-
type PageType =
|
|
243
|
-
type PageAssignmentParams = {
|
|
244
|
-
type?: PageType;
|
|
245
|
-
locale?: string;
|
|
246
|
-
handle?: string;
|
|
247
|
-
};
|
|
248
|
-
type LoadPageParams = PageAssignmentParams & {
|
|
249
|
-
strategy?: AllCacheOptions;
|
|
250
|
-
};
|
|
222
|
+
type PageType = 'INDEX' | 'PRODUCT' | 'ALL_PRODUCTS' | 'COLLECTION' | 'COLLECTION_LIST' | 'PAGE' | 'BLOG' | 'ARTICLE' | 'CUSTOM';
|
|
251
223
|
type FetchProjectRequestBody = {
|
|
252
224
|
projectId: string;
|
|
253
225
|
url: string;
|
|
254
|
-
i18n?:
|
|
255
|
-
params?:
|
|
226
|
+
i18n?: WeaverseI18n;
|
|
227
|
+
params?: {
|
|
228
|
+
type?: PageType;
|
|
229
|
+
locale?: string;
|
|
230
|
+
handle?: string;
|
|
231
|
+
};
|
|
256
232
|
isDesignMode?: boolean;
|
|
257
233
|
};
|
|
258
234
|
type FetchProjectPayload = {
|
|
@@ -263,23 +239,10 @@ type FetchProjectPayload = {
|
|
|
263
239
|
};
|
|
264
240
|
type WeaverseClientArgs = HydrogenContext & {
|
|
265
241
|
components: HydrogenComponent[];
|
|
266
|
-
countries?: Localizations;
|
|
267
242
|
themeSchema: HydrogenThemeSchema;
|
|
268
243
|
request: Request;
|
|
269
244
|
cache: Cache;
|
|
270
245
|
};
|
|
271
|
-
type FetchWithCacheOptions = RequestInit & {
|
|
272
|
-
strategy?: AllCacheOptions;
|
|
273
|
-
};
|
|
274
|
-
type RootRouteData = {
|
|
275
|
-
weaverseTheme?: {
|
|
276
|
-
theme: HydrogenThemeSettings;
|
|
277
|
-
countries?: Localizations;
|
|
278
|
-
schema?: HydrogenThemeSchema;
|
|
279
|
-
publicEnv?: PublicEnv;
|
|
280
|
-
};
|
|
281
|
-
[key: string]: any;
|
|
282
|
-
};
|
|
283
246
|
type WeaverseProduct = WeaverseResourcePickerData;
|
|
284
247
|
type WeaverseCollection = WeaverseResourcePickerData;
|
|
285
248
|
type WeaverseBlog = WeaverseResourcePickerData;
|
|
@@ -310,60 +273,34 @@ declare module '@shopify/hydrogen' {
|
|
|
310
273
|
}
|
|
311
274
|
}
|
|
312
275
|
|
|
313
|
-
declare
|
|
276
|
+
declare class WeaverseHydrogenItem extends WeaverseItemStore {
|
|
277
|
+
weaverse: WeaverseHydrogen;
|
|
278
|
+
constructor(initialData: HydrogenComponentData, weaverse: WeaverseHydrogen);
|
|
279
|
+
get Element(): HydrogenElement;
|
|
280
|
+
get _schemaData(): Record<string, any>;
|
|
281
|
+
}
|
|
282
|
+
declare class WeaverseHydrogen extends Weaverse {
|
|
283
|
+
platformType: PlatformTypeEnum;
|
|
284
|
+
pageId: string;
|
|
285
|
+
internal: Partial<WeaverseInternal>;
|
|
286
|
+
requestInfo: WeaverseLoaderRequestInfo;
|
|
287
|
+
ItemConstructor: typeof WeaverseHydrogenItem;
|
|
288
|
+
data: HydrogenPageData;
|
|
289
|
+
static itemInstances: Map<string, WeaverseHydrogenItem>;
|
|
290
|
+
static elementRegistry: Map<string, HydrogenElement>;
|
|
291
|
+
constructor(params: WeaverseHydrogenParams);
|
|
292
|
+
}
|
|
293
|
+
declare let WeaverseHydrogenRoot: react.MemoExoticComponent<({ components, errorComponent: ErrorComponent, }: {
|
|
294
|
+
components: HydrogenComponent[];
|
|
295
|
+
errorComponent?: React.FC<{
|
|
296
|
+
error: any;
|
|
297
|
+
}>;
|
|
298
|
+
}) => react_jsx_runtime.JSX.Element>;
|
|
314
299
|
declare function withWeaverse(Component: ComponentType<any>): (props: JSX.IntrinsicAttributes) => react_jsx_runtime.JSX.Element;
|
|
315
|
-
|
|
316
|
-
declare function getRequestQueries<T = Record<string, string | boolean>>(request: Request): T;
|
|
317
|
-
declare function getWeaverseConfigs(request: Request, env: HydrogenEnv): WeaverseProjectConfigs;
|
|
318
|
-
declare function generateDataFromSchema({ inspector, }: HydrogenComponentSchema | HydrogenThemeSchema): Record<string, any>;
|
|
319
|
-
/**
|
|
320
|
-
* Resize an image to the specified dimensions.
|
|
321
|
-
*
|
|
322
|
-
* @param imageURL {string} URL of the image
|
|
323
|
-
* @param size {string} Shopify size attribute
|
|
324
|
-
* @returns {string} URL with size attribute
|
|
325
|
-
*
|
|
326
|
-
* @example
|
|
327
|
-
* resizeImage('https://cdn.shopify.com/image.jpg', '100x')
|
|
328
|
-
* resizeImage('https://cdn.shopify.com/image.jpg', '100x100')
|
|
329
|
-
*/
|
|
330
|
-
declare function resizeShopifyImage(imageURL: string, size: string): string;
|
|
331
|
-
declare function recursivelyAddDataItem(type: string, components: HydrogenComponent<any>[], items: any[], initData?: object): `${string}-${string}-${string}-${string}-${string}`;
|
|
332
|
-
declare function getPreviewData(type: string, components: any, weaverseHost: string): {
|
|
333
|
-
page: {
|
|
334
|
-
id: string;
|
|
335
|
-
name: string;
|
|
336
|
-
rootId: string;
|
|
337
|
-
items: any[];
|
|
338
|
-
};
|
|
339
|
-
project: {
|
|
340
|
-
id: string;
|
|
341
|
-
weaverseShopId: string;
|
|
342
|
-
name: string;
|
|
343
|
-
};
|
|
344
|
-
configs: {
|
|
345
|
-
projectId: string;
|
|
346
|
-
weaverseHost: string;
|
|
347
|
-
isDesignMode: boolean;
|
|
348
|
-
isPreviewMode: boolean;
|
|
349
|
-
requestInfo: {
|
|
350
|
-
i18n: {
|
|
351
|
-
label: string;
|
|
352
|
-
language: string;
|
|
353
|
-
country: string;
|
|
354
|
-
currency: string;
|
|
355
|
-
pathPrefix: string;
|
|
356
|
-
};
|
|
357
|
-
queries: {};
|
|
358
|
-
pathname: string;
|
|
359
|
-
search: string;
|
|
360
|
-
};
|
|
361
|
-
};
|
|
362
|
-
};
|
|
300
|
+
declare function useThemeSettings<T = HydrogenThemeSettings>(): T;
|
|
363
301
|
|
|
364
302
|
declare function getSelectedProductOptions(request: Request): SelectedOptionInput[];
|
|
365
|
-
|
|
366
|
-
declare let IMAGES_PLACEHOLDERS: {
|
|
303
|
+
declare const IMAGES_PLACEHOLDERS: {
|
|
367
304
|
logo_white: string;
|
|
368
305
|
logo_black: string;
|
|
369
306
|
image: string;
|
|
@@ -395,22 +332,4 @@ declare let IMAGES_PLACEHOLDERS: {
|
|
|
395
332
|
product_18: string;
|
|
396
333
|
};
|
|
397
334
|
|
|
398
|
-
|
|
399
|
-
platformType: PlatformTypeEnum;
|
|
400
|
-
pageId: string;
|
|
401
|
-
internal: Partial<WeaverseInternal>;
|
|
402
|
-
requestInfo: WeaverseLoaderRequestInfo;
|
|
403
|
-
ItemConstructor: typeof WeaverseHydrogenItem;
|
|
404
|
-
data: HydrogenPageData;
|
|
405
|
-
static itemInstances: Map<string, WeaverseHydrogenItem>;
|
|
406
|
-
static elementRegistry: Map<string, HydrogenElement>;
|
|
407
|
-
constructor(params: WeaverseHydrogenParams);
|
|
408
|
-
}
|
|
409
|
-
declare class WeaverseHydrogenItem extends WeaverseItemStore {
|
|
410
|
-
weaverse: WeaverseHydrogen;
|
|
411
|
-
constructor(initialData: HydrogenComponentData, weaverse: WeaverseHydrogen);
|
|
412
|
-
get Element(): HydrogenElement;
|
|
413
|
-
get _schemaData(): Record<string, any>;
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectType, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, IMAGES_PLACEHOLDERS, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseMetaObject, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStudioQueries, generateDataFromSchema, getPreviewData, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, recursivelyAddDataItem, resizeShopifyImage, useThemeSettings, withWeaverse };
|
|
335
|
+
export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type FetchProjectPayload, type FetchProjectRequestBody, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageData, type HydrogenProjectType, type HydrogenThemeSchema, type HydrogenThemeSettings, IMAGES_PLACEHOLDERS, type InspectorGroup, type PageType, type PublicEnv, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseI18n, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseMetaObject, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStudioQueries, getSelectedProductOptions, useThemeSettings, withWeaverse };
|