@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.js CHANGED
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
+ var hydrogen = require('@shopify/hydrogen');
3
4
  var react = require('@weaverse/react');
4
5
  var react$2 = require('@remix-run/react');
5
6
  var react$1 = require('react');
6
7
  var reactErrorBoundary = require('react-error-boundary');
7
8
  var jsxRuntime = require('react/jsx-runtime');
8
- var hydrogen = require('@shopify/hydrogen');
9
9
 
10
10
  var __defProp = Object.defineProperty;
11
11
  var __export = (target, all) => {
@@ -13,7 +13,7 @@ var __export = (target, all) => {
13
13
  __defProp(target, name, { get: all[name], enumerable: true });
14
14
  };
15
15
 
16
- // src/utils.ts
16
+ // src/utils/index.ts
17
17
  function getRequestQueries(request) {
18
18
  let url = new URL(request.url);
19
19
  return Array.from(url.searchParams.entries()).reduce(
@@ -73,17 +73,6 @@ function generateDataFromSchema({
73
73
  }
74
74
  return data;
75
75
  }
76
- function resizeShopifyImage(imageURL, size) {
77
- try {
78
- if (!imageURL.includes("cdn.shopify.com") || size === "original") {
79
- return imageURL;
80
- }
81
- let [, path, ext] = imageURL.match(/(.*\/[\w-_.]+)\.(\w{2,4})/);
82
- return `${path}_${size}.${ext}`;
83
- } catch (e) {
84
- return imageURL;
85
- }
86
- }
87
76
  function recursivelyAddDataItem(type, components, items, initData) {
88
77
  const component = components.find((c) => c.schema.type === type);
89
78
  if (!component) {
@@ -115,18 +104,8 @@ function recursivelyAddDataItem(type, components, items, initData) {
115
104
  return id;
116
105
  }
117
106
  function getPreviewData(type, components, weaverseHost) {
118
- const initialData = {
119
- project: {
120
- id: "x",
121
- weaverseShopId: "shopid",
122
- name: "Section Preview"
123
- },
124
- // pageAssignment: {
125
- // projectId: "x",
126
- // type: "CUSTOM",
127
- // locale: "en-us",
128
- // handle: "",
129
- // },
107
+ return {
108
+ project: { id: "x", weaverseShopId: "shop-id", name: "Section Preview" },
130
109
  configs: {
131
110
  projectId: "x",
132
111
  weaverseHost,
@@ -144,239 +123,24 @@ function getPreviewData(type, components, weaverseHost) {
144
123
  pathname: "/",
145
124
  search: ""
146
125
  }
126
+ },
127
+ page: {
128
+ id: "0",
129
+ name: "Preview section",
130
+ rootId: "1",
131
+ items: [
132
+ {
133
+ data: {},
134
+ id: "1",
135
+ type: "main",
136
+ children: [{ id: recursivelyAddDataItem(type, components, []) }]
137
+ }
138
+ ]
147
139
  }
148
140
  };
149
- let items = [];
150
- const id = recursivelyAddDataItem(type, components, items);
151
- const page = {
152
- id: "0",
153
- name: "Preview section",
154
- rootId: "1",
155
- items: [
156
- {
157
- data: {},
158
- id: "1",
159
- type: "main",
160
- children: [
161
- {
162
- id
163
- }
164
- ]
165
- },
166
- ...items
167
- ]
168
- };
169
- const previewData = {
170
- ...initialData,
171
- page
172
- };
173
- return previewData;
174
- }
175
- var ThemeSettingsStore = class extends react.EventEmitter {
176
- settings = {};
177
- countries;
178
- schema;
179
- publicEnv;
180
- constructor(data) {
181
- super();
182
- let { theme, countries, schema: schema2, publicEnv } = data || {};
183
- this.settings = { ...theme };
184
- this.countries = countries;
185
- this.schema = schema2;
186
- this.publicEnv = publicEnv;
187
- if (react.isBrowser) {
188
- window.__weaverseThemeSettingsStore = this;
189
- }
190
- }
191
- updateThemeSettings = (newSettings) => {
192
- this.settings = {
193
- ...this.settings,
194
- ...newSettings
195
- };
196
- this.emit(this.settings);
197
- };
198
- getSnapshot = () => {
199
- return this.settings;
200
- };
201
- getServerSnapshot = () => {
202
- return this.settings;
203
- };
204
- };
205
- function useThemeSettingsStore() {
206
- let data = react$2.useRouteLoaderData("root");
207
- if (react.isBrowser && window.__weaverseThemeSettingsStore) {
208
- return window.__weaverseThemeSettingsStore;
209
- }
210
- return new ThemeSettingsStore(data?.weaverseTheme);
211
141
  }
212
- function useThemeSettings() {
213
- let themeSettingsStore = useThemeSettingsStore();
214
- let settings = react$1.useSyncExternalStore(
215
- themeSettingsStore.subscribe,
216
- themeSettingsStore.getSnapshot,
217
- themeSettingsStore.getServerSnapshot
218
- );
219
- return settings;
220
- }
221
-
222
- // src/hooks/use-studio.ts
223
- function useStudio(weaverse) {
224
- let { revalidate } = react$2.useRevalidator();
225
- let navigation = react$2.useNavigation();
226
- let { pathname, search } = react$2.useLocation();
227
- let navigate = react$2.useNavigate();
228
- let themeSettingsStore = useThemeSettingsStore();
229
- let { isDesignMode, weaverseHost, weaverseVersion, isPreviewMode } = weaverse;
230
- react$1.useEffect(() => {
231
- if (navigation.state === "idle") {
232
- if (isPreviewMode) {
233
- let previewSrc = `${weaverseHost}/static/studio/hydrogen/preview.js?v=${weaverseVersion}`;
234
- react.loadScript(previewSrc).catch(console.error);
235
- } else if (isDesignMode) {
236
- weaverse.internal = {
237
- ...weaverse.internal,
238
- navigate,
239
- revalidate,
240
- themeSettingsStore
241
- };
242
- let studioSrc = `${weaverseHost}/static/studio/hydrogen/index.js?v=${weaverseVersion}`;
243
- react.loadScript(studioSrc).then(() => {
244
- window.weaverseStudio?.init(weaverse);
245
- }).catch(console.error);
246
- }
247
- }
248
- }, [pathname, search, navigation.state]);
249
- usePixel(weaverse);
250
- }
251
- function usePixel(context) {
252
- let { projectId, pageId, weaverseHost, isDesignMode } = context;
253
- react$1.useEffect(() => {
254
- if (!projectId || !pageId || !weaverseHost || isDesignMode) return;
255
- let url = `${weaverseHost}/api/public/px`;
256
- let img = new Image();
257
- img.onload = () => {
258
- img.remove();
259
- };
260
- img.src = `${url}?projectId=${projectId}&pageId=${pageId}`;
261
- }, []);
262
- }
263
-
264
- // src/Effect.tsx
265
- var WeaverseEffect = react$1.memo(
266
- ({ context }) => {
267
- useStudio(context);
268
- return null;
269
- }
270
- );
271
142
 
272
- // src/components/main.tsx
273
- var main_exports = {};
274
- __export(main_exports, {
275
- default: () => main_default,
276
- schema: () => schema
277
- });
278
- var Main = react$1.forwardRef((props, ref) => {
279
- let { children, dangerouslySetInnerHTML, ...rest } = props;
280
- return /* @__PURE__ */ jsxRuntime.jsx(
281
- "div",
282
- {
283
- ref,
284
- ...rest,
285
- children,
286
- dangerouslySetInnerHTML: children ? void 0 : dangerouslySetInnerHTML
287
- }
288
- );
289
- });
290
- var main_default = Main;
291
- var schema = {
292
- type: "main",
293
- title: "Main",
294
- inspector: []
295
- };
296
-
297
- // src/components/index.ts
298
- var defaultComponents = [main_exports];
299
-
300
- // src/context.ts
301
- function registerComponents(components) {
302
- for (const comp of components) {
303
- comp?.schema?.type && WeaverseHydrogen.registerElement({
304
- type: comp?.schema.type,
305
- Component: comp.default,
306
- schema: comp.schema,
307
- loader: comp.loader
308
- });
309
- }
310
- }
311
- function createCachedWeaverseInstance(params) {
312
- if (react.isBrowser) {
313
- window.__weaverses = window.__weaverses || {};
314
- let weaverse = window.__weaverses[params.pageId];
315
- if (!weaverse || weaverse?.requestInfo?.pathname !== params.requestInfo.pathname || weaverse?.requestInfo?.search !== params.requestInfo.search) {
316
- weaverse = new WeaverseHydrogen(params);
317
- window.__weaverses[params.pageId] = weaverse;
318
- }
319
- if (weaverse?.isDesignMode) {
320
- weaverse.requestInfo = params.requestInfo;
321
- window.weaverseStudio?.refreshStudio(params);
322
- }
323
- return weaverse;
324
- }
325
- return new WeaverseHydrogen(params);
326
- }
327
- function createWeaverseInstance(weaverseData, components) {
328
- let { page, configs, project, pageAssignment } = weaverseData || {};
329
- registerComponents(components);
330
- registerComponents(defaultComponents);
331
- return createCachedWeaverseInstance({
332
- ...configs,
333
- data: page,
334
- pageId: page?.id,
335
- internal: { project, pageAssignment }
336
- });
337
- }
338
- var ThemeSettingsProvider = react$1.createContext(
339
- null
340
- );
341
- ThemeSettingsProvider.displayName = "WeaverseThemeSettingsProvider";
342
- var WeaverseHydrogenRoot = react$1.memo(
343
- ({
344
- errorComponent: ErrorComponent = FallbackError,
345
- components
346
- }) => {
347
- let loaderData = react$2.useLoaderData();
348
- let data = loaderData?.weaverseData;
349
- if (data) {
350
- if (data instanceof Promise) {
351
- return /* @__PURE__ */ jsxRuntime.jsx(reactErrorBoundary.ErrorBoundary, { fallbackRender: ErrorComponent, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { children: /* @__PURE__ */ jsxRuntime.jsx(react$2.Await, { resolve: data, children: (resolvedData) => /* @__PURE__ */ jsxRuntime.jsx(RenderRoot, { data: resolvedData, components }) }) }) });
352
- }
353
- return /* @__PURE__ */ jsxRuntime.jsx(RenderRoot, { data, components });
354
- }
355
- return /* @__PURE__ */ jsxRuntime.jsx(
356
- ErrorComponent,
357
- {
358
- error: { message: "No Weaverse data return from route loader!" }
359
- }
360
- );
361
- }
362
- );
363
- function RenderRoot(props) {
364
- let { data, components } = props;
365
- let weaverse = createWeaverseInstance(data, components);
366
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
367
- /* @__PURE__ */ jsxRuntime.jsx(react.WeaverseRoot, { context: weaverse }),
368
- /* @__PURE__ */ jsxRuntime.jsx(WeaverseEffect, { context: weaverse })
369
- ] });
370
- }
371
- function withWeaverse(Component) {
372
- return (props) => {
373
- let { settings } = useThemeSettingsStore();
374
- return /* @__PURE__ */ jsxRuntime.jsx(ThemeSettingsProvider.Provider, { value: settings, children: /* @__PURE__ */ jsxRuntime.jsx(Component, { ...props }) });
375
- };
376
- }
377
- function FallbackError({ error }) {
378
- return /* @__PURE__ */ jsxRuntime.jsx("div", { children: error?.message || "An unexpected error occurred" });
379
- }
143
+ // src/weaverse-client.ts
380
144
  var API_PATH = "api/public";
381
145
  var DEFAULT_CACHE_STRATEGY = {
382
146
  maxAge: 5,
@@ -397,13 +161,11 @@ var WeaverseClient = class {
397
161
  env;
398
162
  cache;
399
163
  waitUntil;
400
- countries;
401
164
  constructor(args) {
402
165
  const {
403
166
  env,
404
167
  storefront,
405
168
  components,
406
- countries,
407
169
  cache,
408
170
  waitUntil,
409
171
  themeSchema,
@@ -416,7 +178,6 @@ var WeaverseClient = class {
416
178
  this.env = env;
417
179
  this.cache = cache;
418
180
  this.waitUntil = waitUntil;
419
- this.countries = countries;
420
181
  this.withCache = hydrogen.createWithCache({ cache, waitUntil, request });
421
182
  this.configs = getWeaverseConfigs(request, env);
422
183
  this.basePageConfigs = {
@@ -507,7 +268,6 @@ var WeaverseClient = class {
507
268
  data = {
508
269
  ...data,
509
270
  schema: this.themeSchema,
510
- countries: this.countries || [],
511
271
  publicEnv: this.configs.publicEnv
512
272
  };
513
273
  }
@@ -601,7 +361,6 @@ var WeaverseClient = class {
601
361
  ...basePageConfigs,
602
362
  requestInfo: {
603
363
  i18n: storefront.i18n,
604
- // TODO: @hta218 - migrate to Remix hooks
605
364
  queries: getRequestQueries(request),
606
365
  pathname: new URL(request.url).pathname,
607
366
  search: new URL(request.url).search
@@ -636,14 +395,241 @@ var WeaverseClient = class {
636
395
  return item;
637
396
  };
638
397
  };
398
+
399
+ // src/components/main.tsx
400
+ var main_exports = {};
401
+ __export(main_exports, {
402
+ default: () => main_default,
403
+ schema: () => schema
404
+ });
405
+ var Main = react$1.forwardRef((props, ref) => {
406
+ let { children, dangerouslySetInnerHTML, ...rest } = props;
407
+ return /* @__PURE__ */ jsxRuntime.jsx(
408
+ "div",
409
+ {
410
+ ref,
411
+ ...rest,
412
+ children,
413
+ dangerouslySetInnerHTML: children ? void 0 : dangerouslySetInnerHTML
414
+ }
415
+ );
416
+ });
417
+ var main_default = Main;
418
+ var schema = {
419
+ type: "main",
420
+ title: "Main",
421
+ inspector: []
422
+ };
423
+
424
+ // src/components/index.ts
425
+ var defaultComponents = [main_exports];
426
+ var ThemeSettingsStore = class extends react.EventEmitter {
427
+ settings = {};
428
+ schema;
429
+ publicEnv;
430
+ constructor(data) {
431
+ super();
432
+ let { theme, schema: schema2, publicEnv } = data || {};
433
+ this.settings = { ...theme };
434
+ this.schema = schema2;
435
+ this.publicEnv = publicEnv;
436
+ if (react.isBrowser) {
437
+ window.__weaverseThemeSettingsStore = this;
438
+ }
439
+ }
440
+ updateThemeSettings = (newSettings) => {
441
+ this.settings = {
442
+ ...this.settings,
443
+ ...newSettings
444
+ };
445
+ this.emit(this.settings);
446
+ };
447
+ getSnapshot = () => {
448
+ return this.settings;
449
+ };
450
+ getServerSnapshot = () => {
451
+ return this.settings;
452
+ };
453
+ };
454
+ function useThemeSettingsStore() {
455
+ let data = react$2.useRouteLoaderData("root");
456
+ if (react.isBrowser && window.__weaverseThemeSettingsStore) {
457
+ return window.__weaverseThemeSettingsStore;
458
+ }
459
+ return new ThemeSettingsStore(data?.weaverseTheme);
460
+ }
461
+
462
+ // src/utils/use-studio.ts
463
+ function useStudio(weaverse) {
464
+ let { revalidate } = react$2.useRevalidator();
465
+ let navigation = react$2.useNavigation();
466
+ let { pathname, search } = react$2.useLocation();
467
+ let navigate = react$2.useNavigate();
468
+ let themeSettingsStore = useThemeSettingsStore();
469
+ let { isDesignMode, weaverseHost, weaverseVersion, isPreviewMode } = weaverse;
470
+ react$1.useEffect(() => {
471
+ if (navigation.state === "idle") {
472
+ if (isPreviewMode) {
473
+ let previewSrc = `${weaverseHost}/static/studio/hydrogen/preview.js?v=${weaverseVersion}`;
474
+ react.loadScript(previewSrc).catch(console.error);
475
+ } else if (isDesignMode) {
476
+ weaverse.internal = {
477
+ ...weaverse.internal,
478
+ navigate,
479
+ revalidate,
480
+ themeSettingsStore
481
+ };
482
+ let studioSrc = `${weaverseHost}/static/studio/hydrogen/index.js?v=${weaverseVersion}`;
483
+ react.loadScript(studioSrc).then(() => {
484
+ window.weaverseStudio?.init(weaverse);
485
+ }).catch(console.error);
486
+ }
487
+ }
488
+ }, [pathname, search, navigation.state]);
489
+ usePixel(weaverse);
490
+ }
491
+ function usePixel(context) {
492
+ let { projectId, pageId, weaverseHost, isDesignMode } = context;
493
+ react$1.useEffect(() => {
494
+ if (!projectId || !pageId || !weaverseHost || isDesignMode) return;
495
+ let url = `${weaverseHost}/api/public/px`;
496
+ let img = new Image();
497
+ img.onload = () => img.remove();
498
+ img.src = `${url}?projectId=${projectId}&pageId=${pageId}`;
499
+ }, []);
500
+ }
501
+ var WeaverseHydrogenItem = class extends react.WeaverseItemStore {
502
+ constructor(initialData, weaverse) {
503
+ super(initialData, weaverse);
504
+ let { data, ...rest } = initialData;
505
+ Object.assign(this._store, this._schemaData, data, rest);
506
+ }
507
+ get Element() {
508
+ return super.Element;
509
+ }
510
+ get _schemaData() {
511
+ if (this.Element?.schema) {
512
+ let data = {};
513
+ let { inspector } = this.Element.schema;
514
+ if (inspector) {
515
+ for (let group of inspector) {
516
+ for (let input of group.inputs) {
517
+ let { name, defaultValue } = input;
518
+ if (name && defaultValue !== null && defaultValue !== void 0) {
519
+ data[name] = defaultValue;
520
+ }
521
+ }
522
+ }
523
+ }
524
+ return data;
525
+ }
526
+ return {};
527
+ }
528
+ };
529
+ react.Weaverse.ItemConstructor = WeaverseHydrogenItem;
530
+ var WeaverseHydrogen = class extends react.Weaverse {
531
+ platformType = "shopify-hydrogen";
532
+ pageId;
533
+ internal;
534
+ requestInfo;
535
+ static itemInstances;
536
+ static elementRegistry;
537
+ constructor(params) {
538
+ let { internal, pageId, requestInfo, ...coreParams } = params;
539
+ super({ ...coreParams });
540
+ this.internal = internal;
541
+ this.pageId = pageId;
542
+ this.requestInfo = requestInfo;
543
+ }
544
+ };
545
+ function createWeaverseInstance(params) {
546
+ if (react.isBrowser) {
547
+ window.__weaverses = window.__weaverses || {};
548
+ let weaverse = window.__weaverses[params.pageId];
549
+ if (!weaverse || weaverse?.requestInfo?.pathname !== params.requestInfo.pathname || weaverse?.requestInfo?.search !== params.requestInfo.search) {
550
+ weaverse = new WeaverseHydrogen(params);
551
+ window.__weaverses[params.pageId] = weaverse;
552
+ }
553
+ if (weaverse?.isDesignMode) {
554
+ weaverse.requestInfo = params.requestInfo;
555
+ window.weaverseStudio?.refreshStudio(params);
556
+ }
557
+ return weaverse;
558
+ }
559
+ return new WeaverseHydrogen(params);
560
+ }
561
+ var StudioBridge = react$1.memo(({ context }) => {
562
+ useStudio(context);
563
+ return null;
564
+ });
565
+ function RenderRoot(props) {
566
+ let { data, components } = props;
567
+ for (let comp of [...components, ...defaultComponents]) {
568
+ comp?.schema?.type && WeaverseHydrogen.registerElement({
569
+ type: comp?.schema.type,
570
+ Component: comp.default,
571
+ schema: comp.schema,
572
+ loader: comp.loader
573
+ });
574
+ }
575
+ let { page, configs, project, pageAssignment } = data || {};
576
+ let weaverse = createWeaverseInstance({
577
+ ...configs,
578
+ data: page,
579
+ pageId: page?.id,
580
+ internal: { project, pageAssignment }
581
+ });
582
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
583
+ /* @__PURE__ */ jsxRuntime.jsx(react.WeaverseRoot, { context: weaverse }),
584
+ /* @__PURE__ */ jsxRuntime.jsx(StudioBridge, { context: weaverse })
585
+ ] });
586
+ }
587
+ var WeaverseHydrogenRoot = react$1.memo(
588
+ ({
589
+ components,
590
+ errorComponent: ErrorComponent = ({ error }) => /* @__PURE__ */ jsxRuntime.jsx("div", { children: error?.message || "An unexpected error occurred" })
591
+ }) => {
592
+ let loaderData = react$2.useLoaderData();
593
+ let data = loaderData?.weaverseData;
594
+ if (data) {
595
+ if (data instanceof Promise) {
596
+ return /* @__PURE__ */ jsxRuntime.jsx(reactErrorBoundary.ErrorBoundary, { fallbackRender: ErrorComponent, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Suspense, { children: /* @__PURE__ */ jsxRuntime.jsx(react$2.Await, { resolve: data, children: (resolvedData) => /* @__PURE__ */ jsxRuntime.jsx(RenderRoot, { data: resolvedData, components }) }) }) });
597
+ }
598
+ return /* @__PURE__ */ jsxRuntime.jsx(RenderRoot, { data, components });
599
+ }
600
+ return /* @__PURE__ */ jsxRuntime.jsx(
601
+ ErrorComponent,
602
+ {
603
+ error: { message: "No Weaverse data return from route loader!" }
604
+ }
605
+ );
606
+ }
607
+ );
608
+ var ThemeSettingsProvider = react$1.createContext(null);
609
+ ThemeSettingsProvider.displayName = "WeaverseThemeSettingsProvider";
610
+ function withWeaverse(Component) {
611
+ return (props) => {
612
+ let { settings } = useThemeSettingsStore();
613
+ return /* @__PURE__ */ jsxRuntime.jsx(ThemeSettingsProvider.Provider, { value: settings, children: /* @__PURE__ */ jsxRuntime.jsx(Component, { ...props }) });
614
+ };
615
+ }
616
+ function useThemeSettings() {
617
+ let themeSettingsStore = useThemeSettingsStore();
618
+ let settings = react$1.useSyncExternalStore(
619
+ themeSettingsStore.subscribe,
620
+ themeSettingsStore.getSnapshot,
621
+ themeSettingsStore.getServerSnapshot
622
+ );
623
+ return settings;
624
+ }
625
+
626
+ // src/index.ts
639
627
  function getSelectedProductOptions(request) {
640
628
  let options = hydrogen.getSelectedProductOptions(request);
641
629
  return options.filter(
642
630
  ({ name }) => name !== "isDesignMode" && !name.startsWith("weaverse")
643
631
  );
644
632
  }
645
-
646
- // src/placeholders.ts
647
633
  var IMAGES_PLACEHOLDERS = {
648
634
  logo_white: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/fpo-logo-w-600x200.svg",
649
635
  logo_black: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/fpo-logo-k-600x200.svg",
@@ -676,40 +662,6 @@ var IMAGES_PLACEHOLDERS = {
676
662
  product_18: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/fpo-product-watch-2-1024x1024.svg"
677
663
  };
678
664
 
679
- // src/index.ts
680
- var WeaverseHydrogen = class extends react.Weaverse {
681
- platformType = "shopify-hydrogen";
682
- pageId;
683
- internal;
684
- requestInfo;
685
- static itemInstances;
686
- static elementRegistry;
687
- constructor(params) {
688
- let { internal, pageId, requestInfo, ...coreParams } = params;
689
- super({ ...coreParams });
690
- this.internal = internal;
691
- this.pageId = pageId;
692
- this.requestInfo = requestInfo;
693
- }
694
- };
695
- var WeaverseHydrogenItem = class extends react.WeaverseItemStore {
696
- constructor(initialData, weaverse) {
697
- super(initialData, weaverse);
698
- let { data, ...rest } = initialData;
699
- Object.assign(this._store, this._schemaData, data, rest);
700
- }
701
- get Element() {
702
- return super.Element;
703
- }
704
- get _schemaData() {
705
- if (this.Element?.schema) {
706
- return generateDataFromSchema(this.Element.schema);
707
- }
708
- return {};
709
- }
710
- };
711
- react.Weaverse.ItemConstructor = WeaverseHydrogenItem;
712
-
713
665
  Object.defineProperty(exports, "isBrowser", {
714
666
  enumerable: true,
715
667
  get: function () { return react.isBrowser; }
@@ -739,13 +691,7 @@ exports.WeaverseClient = WeaverseClient;
739
691
  exports.WeaverseHydrogen = WeaverseHydrogen;
740
692
  exports.WeaverseHydrogenItem = WeaverseHydrogenItem;
741
693
  exports.WeaverseHydrogenRoot = WeaverseHydrogenRoot;
742
- exports.generateDataFromSchema = generateDataFromSchema;
743
- exports.getPreviewData = getPreviewData;
744
- exports.getRequestQueries = getRequestQueries;
745
694
  exports.getSelectedProductOptions = getSelectedProductOptions;
746
- exports.getWeaverseConfigs = getWeaverseConfigs;
747
- exports.recursivelyAddDataItem = recursivelyAddDataItem;
748
- exports.resizeShopifyImage = resizeShopifyImage;
749
695
  exports.useThemeSettings = useThemeSettings;
750
696
  exports.withWeaverse = withWeaverse;
751
697
  //# sourceMappingURL=index.js.map