@weaverse/hydrogen 1.0.35 → 1.0.37

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
@@ -32,65 +32,33 @@ var src_exports = {};
32
32
  __export(src_exports, {
33
33
  WeaverseHydrogenRoot: () => WeaverseHydrogenRoot,
34
34
  fetchWithServerCache: () => fetchWithServerCache,
35
+ getRequestQueries: () => getRequestQueries,
35
36
  hashKey: () => hashKey,
36
37
  useStudio: () => useStudio,
37
38
  weaverseLoader: () => weaverseLoader
38
39
  });
39
40
  module.exports = __toCommonJS(src_exports);
40
-
41
- // src/utils.ts
42
- var import_core = require("@weaverse/core");
43
- var import_react = require("react");
44
- var useStudio = (weaverseCore) => {
45
- (0, import_react.useEffect)(() => {
46
- if (weaverseCore.isDesignMode && import_core.isIframe && !window.weaverseStudioInitialized) {
47
- window.weaverseStudioInitialized = true;
48
- let host = weaverseCore.weaverseHost;
49
- let version = weaverseCore.weaverseVersion || Date.now();
50
- (0, import_core.loadScript)(`${host}/assets/studio/studio-bridge.js?v=${version}`).then(
51
- () => {
52
- window?.createWeaverseStudioBridge(weaverseCore);
53
- setTimeout(() => {
54
- weaverseCore.triggerUpdate();
55
- }, 2e3);
56
- }
57
- );
58
- }
59
- setTimeout(() => {
60
- window.__weaverse = weaverseCore;
61
- }, 1);
62
- }, []);
63
- };
64
-
65
- // src/index.tsx
66
- var import_react3 = __toESM(require("react"));
67
- var import_react4 = require("@weaverse/react");
41
+ var import_react3 = require("@weaverse/react");
42
+ var import_react4 = __toESM(require("react"));
68
43
 
69
44
  // src/context.ts
70
- var import_react2 = require("@weaverse/react");
45
+ var import_react = require("@weaverse/react");
71
46
  var createCachedWeaverseContext = (init) => {
72
- if (import_react2.isBrowser && init.pageId) {
47
+ if (import_react.isBrowser && init.pageId) {
73
48
  window.__weaverses = window.__weaverses || {};
74
49
  if (!window.__weaverses[init.pageId]) {
75
- window.__weaverses[init.pageId] = (0, import_react2.createRootContext)(init);
50
+ window.__weaverses[init.pageId] = (0, import_react.createRootContext)(init);
76
51
  }
77
- console.log("createRootContext cached", window.__weaverses[init.pageId]);
78
52
  return window.__weaverses[init.pageId];
79
53
  }
80
- console.log("createRootContext not cached");
81
- return (0, import_react2.createRootContext)(init);
54
+ return (0, import_react.createRootContext)(init);
82
55
  };
83
- var createWeaverseHydrogenContext = ({
84
- weaverseData: { pageData, config } = {
85
- pageData: {},
86
- config: {}
87
- }
88
- }, components) => {
56
+ var createWeaverseHydrogenContext = ({ weaverseData }, components) => {
57
+ let { pageData = {}, config = {} } = weaverseData || {};
89
58
  let weaverse = createCachedWeaverseContext({
90
59
  ...config,
91
60
  data: pageData,
92
61
  pageId: pageData?.id,
93
- isDesignMode: true,
94
62
  platformType: "shopify-hydrogen"
95
63
  });
96
64
  Object.entries(components).forEach(([key, component]) => {
@@ -105,6 +73,692 @@ var createWeaverseHydrogenContext = ({
105
73
  return weaverse;
106
74
  };
107
75
 
76
+ // ../../node_modules/@stitches/core/dist/index.mjs
77
+ var t = "colors";
78
+ var n = "sizes";
79
+ var r = "space";
80
+ var i = { gap: r, gridGap: r, columnGap: r, gridColumnGap: r, rowGap: r, gridRowGap: r, inset: r, insetBlock: r, insetBlockEnd: r, insetBlockStart: r, insetInline: r, insetInlineEnd: r, insetInlineStart: r, margin: r, marginTop: r, marginRight: r, marginBottom: r, marginLeft: r, marginBlock: r, marginBlockEnd: r, marginBlockStart: r, marginInline: r, marginInlineEnd: r, marginInlineStart: r, padding: r, paddingTop: r, paddingRight: r, paddingBottom: r, paddingLeft: r, paddingBlock: r, paddingBlockEnd: r, paddingBlockStart: r, paddingInline: r, paddingInlineEnd: r, paddingInlineStart: r, top: r, right: r, bottom: r, left: r, scrollMargin: r, scrollMarginTop: r, scrollMarginRight: r, scrollMarginBottom: r, scrollMarginLeft: r, scrollMarginX: r, scrollMarginY: r, scrollMarginBlock: r, scrollMarginBlockEnd: r, scrollMarginBlockStart: r, scrollMarginInline: r, scrollMarginInlineEnd: r, scrollMarginInlineStart: r, scrollPadding: r, scrollPaddingTop: r, scrollPaddingRight: r, scrollPaddingBottom: r, scrollPaddingLeft: r, scrollPaddingX: r, scrollPaddingY: r, scrollPaddingBlock: r, scrollPaddingBlockEnd: r, scrollPaddingBlockStart: r, scrollPaddingInline: r, scrollPaddingInlineEnd: r, scrollPaddingInlineStart: r, fontSize: "fontSizes", background: t, backgroundColor: t, backgroundImage: t, borderImage: t, border: t, borderBlock: t, borderBlockEnd: t, borderBlockStart: t, borderBottom: t, borderBottomColor: t, borderColor: t, borderInline: t, borderInlineEnd: t, borderInlineStart: t, borderLeft: t, borderLeftColor: t, borderRight: t, borderRightColor: t, borderTop: t, borderTopColor: t, caretColor: t, color: t, columnRuleColor: t, fill: t, outline: t, outlineColor: t, stroke: t, textDecorationColor: t, fontFamily: "fonts", fontWeight: "fontWeights", lineHeight: "lineHeights", letterSpacing: "letterSpacings", blockSize: n, minBlockSize: n, maxBlockSize: n, inlineSize: n, minInlineSize: n, maxInlineSize: n, width: n, minWidth: n, maxWidth: n, height: n, minHeight: n, maxHeight: n, flexBasis: n, gridTemplateColumns: n, gridTemplateRows: n, borderWidth: "borderWidths", borderTopWidth: "borderWidths", borderRightWidth: "borderWidths", borderBottomWidth: "borderWidths", borderLeftWidth: "borderWidths", borderStyle: "borderStyles", borderTopStyle: "borderStyles", borderRightStyle: "borderStyles", borderBottomStyle: "borderStyles", borderLeftStyle: "borderStyles", borderRadius: "radii", borderTopLeftRadius: "radii", borderTopRightRadius: "radii", borderBottomRightRadius: "radii", borderBottomLeftRadius: "radii", boxShadow: "shadows", textShadow: "shadows", transition: "transitions", zIndex: "zIndices" };
81
+ var o = (e, t2) => "function" == typeof t2 ? { "()": Function.prototype.toString.call(t2) } : t2;
82
+ var l = () => {
83
+ const e = /* @__PURE__ */ Object.create(null);
84
+ return (t2, n2, ...r2) => {
85
+ const i2 = ((e2) => JSON.stringify(e2, o))(t2);
86
+ return i2 in e ? e[i2] : e[i2] = n2(t2, ...r2);
87
+ };
88
+ };
89
+ var s = Symbol.for("sxs.internal");
90
+ var a = (e, t2) => Object.defineProperties(e, Object.getOwnPropertyDescriptors(t2));
91
+ var c = (e) => {
92
+ for (const t2 in e)
93
+ return true;
94
+ return false;
95
+ };
96
+ var { hasOwnProperty: d } = Object.prototype;
97
+ var g = (e) => e.includes("-") ? e : e.replace(/[A-Z]/g, (e2) => "-" + e2.toLowerCase());
98
+ var p = /\s+(?![^()]*\))/;
99
+ var u = (e) => (t2) => e(..."string" == typeof t2 ? String(t2).split(p) : [t2]);
100
+ var h = { appearance: (e) => ({ WebkitAppearance: e, appearance: e }), backfaceVisibility: (e) => ({ WebkitBackfaceVisibility: e, backfaceVisibility: e }), backdropFilter: (e) => ({ WebkitBackdropFilter: e, backdropFilter: e }), backgroundClip: (e) => ({ WebkitBackgroundClip: e, backgroundClip: e }), boxDecorationBreak: (e) => ({ WebkitBoxDecorationBreak: e, boxDecorationBreak: e }), clipPath: (e) => ({ WebkitClipPath: e, clipPath: e }), content: (e) => ({ content: e.includes('"') || e.includes("'") || /^([A-Za-z]+\([^]*|[^]*-quote|inherit|initial|none|normal|revert|unset)$/.test(e) ? e : `"${e}"` }), hyphens: (e) => ({ WebkitHyphens: e, hyphens: e }), maskImage: (e) => ({ WebkitMaskImage: e, maskImage: e }), maskSize: (e) => ({ WebkitMaskSize: e, maskSize: e }), tabSize: (e) => ({ MozTabSize: e, tabSize: e }), textSizeAdjust: (e) => ({ WebkitTextSizeAdjust: e, textSizeAdjust: e }), userSelect: (e) => ({ WebkitUserSelect: e, userSelect: e }), marginBlock: u((e, t2) => ({ marginBlockStart: e, marginBlockEnd: t2 || e })), marginInline: u((e, t2) => ({ marginInlineStart: e, marginInlineEnd: t2 || e })), maxSize: u((e, t2) => ({ maxBlockSize: e, maxInlineSize: t2 || e })), minSize: u((e, t2) => ({ minBlockSize: e, minInlineSize: t2 || e })), paddingBlock: u((e, t2) => ({ paddingBlockStart: e, paddingBlockEnd: t2 || e })), paddingInline: u((e, t2) => ({ paddingInlineStart: e, paddingInlineEnd: t2 || e })) };
101
+ var f = /([\d.]+)([^]*)/;
102
+ var m = (e, t2) => e.length ? e.reduce((e2, n2) => (e2.push(...t2.map((e3) => e3.includes("&") ? e3.replace(/&/g, /[ +>|~]/.test(n2) && /&.*&/.test(e3) ? `:is(${n2})` : n2) : n2 + " " + e3)), e2), []) : t2;
103
+ var b = (e, t2) => e in S && "string" == typeof t2 ? t2.replace(/^((?:[^]*[^\w-])?)(fit-content|stretch)((?:[^\w-][^]*)?)$/, (t3, n2, r2, i2) => n2 + ("stretch" === r2 ? `-moz-available${i2};${g(e)}:${n2}-webkit-fill-available` : `-moz-fit-content${i2};${g(e)}:${n2}fit-content`) + i2) : String(t2);
104
+ var S = { blockSize: 1, height: 1, inlineSize: 1, maxBlockSize: 1, maxHeight: 1, maxInlineSize: 1, maxWidth: 1, minBlockSize: 1, minHeight: 1, minInlineSize: 1, minWidth: 1, width: 1 };
105
+ var k = (e) => e ? e + "-" : "";
106
+ var y = (e, t2, n2) => e.replace(/([+-])?((?:\d+(?:\.\d*)?|\.\d+)(?:[Ee][+-]?\d+)?)?(\$|--)([$\w-]+)/g, (e2, r2, i2, o2, l2) => "$" == o2 == !!i2 ? e2 : (r2 || "--" == o2 ? "calc(" : "") + "var(--" + ("$" === o2 ? k(t2) + (l2.includes("$") ? "" : k(n2)) + l2.replace(/\$/g, "-") : l2) + ")" + (r2 || "--" == o2 ? "*" + (r2 || "") + (i2 || "1") + ")" : ""));
107
+ var B = /\s*,\s*(?![^()]*\))/;
108
+ var $ = Object.prototype.toString;
109
+ var x = (e, t2, n2, r2, i2) => {
110
+ let o2, l2, s2;
111
+ const a2 = (e2, t3, n3) => {
112
+ let c2, d2;
113
+ const p2 = (e3) => {
114
+ for (c2 in e3) {
115
+ const x2 = 64 === c2.charCodeAt(0), z2 = x2 && Array.isArray(e3[c2]) ? e3[c2] : [e3[c2]];
116
+ for (d2 of z2) {
117
+ const e4 = /[A-Z]/.test(S2 = c2) ? S2 : S2.replace(/-[^]/g, (e5) => e5[1].toUpperCase()), z3 = "object" == typeof d2 && d2 && d2.toString === $ && (!r2.utils[e4] || !t3.length);
118
+ if (e4 in r2.utils && !z3) {
119
+ const t4 = r2.utils[e4];
120
+ if (t4 !== l2) {
121
+ l2 = t4, p2(t4(d2)), l2 = null;
122
+ continue;
123
+ }
124
+ } else if (e4 in h) {
125
+ const t4 = h[e4];
126
+ if (t4 !== s2) {
127
+ s2 = t4, p2(t4(d2)), s2 = null;
128
+ continue;
129
+ }
130
+ }
131
+ if (x2 && (u2 = c2.slice(1) in r2.media ? "@media " + r2.media[c2.slice(1)] : c2, c2 = u2.replace(/\(\s*([\w-]+)\s*(=|<|<=|>|>=)\s*([\w-]+)\s*(?:(<|<=|>|>=)\s*([\w-]+)\s*)?\)/g, (e5, t4, n4, r3, i3, o3) => {
132
+ const l3 = f.test(t4), s3 = 0.0625 * (l3 ? -1 : 1), [a3, c3] = l3 ? [r3, t4] : [t4, r3];
133
+ return "(" + ("=" === n4[0] ? "" : ">" === n4[0] === l3 ? "max-" : "min-") + a3 + ":" + ("=" !== n4[0] && 1 === n4.length ? c3.replace(f, (e6, t5, r4) => Number(t5) + s3 * (">" === n4 ? 1 : -1) + r4) : c3) + (i3 ? ") and (" + (">" === i3[0] ? "min-" : "max-") + a3 + ":" + (1 === i3.length ? o3.replace(f, (e6, t5, n5) => Number(t5) + s3 * (">" === i3 ? -1 : 1) + n5) : o3) : "") + ")";
134
+ })), z3) {
135
+ const e5 = x2 ? n3.concat(c2) : [...n3], r3 = x2 ? [...t3] : m(t3, c2.split(B));
136
+ void 0 !== o2 && i2(I(...o2)), o2 = void 0, a2(d2, r3, e5);
137
+ } else
138
+ void 0 === o2 && (o2 = [[], t3, n3]), c2 = x2 || 36 !== c2.charCodeAt(0) ? c2 : `--${k(r2.prefix)}${c2.slice(1).replace(/\$/g, "-")}`, d2 = z3 ? d2 : "number" == typeof d2 ? d2 && e4 in R ? String(d2) + "px" : String(d2) : y(b(e4, null == d2 ? "" : d2), r2.prefix, r2.themeMap[e4]), o2[0].push(`${x2 ? `${c2} ` : `${g(c2)}:`}${d2}`);
139
+ }
140
+ }
141
+ var u2, S2;
142
+ };
143
+ p2(e2), void 0 !== o2 && i2(I(...o2)), o2 = void 0;
144
+ };
145
+ a2(e, t2, n2);
146
+ };
147
+ var I = (e, t2, n2) => `${n2.map((e2) => `${e2}{`).join("")}${t2.length ? `${t2.join(",")}{` : ""}${e.join(";")}${t2.length ? "}" : ""}${Array(n2.length ? n2.length + 1 : 0).join("}")}`;
148
+ var R = { animationDelay: 1, animationDuration: 1, backgroundSize: 1, blockSize: 1, border: 1, borderBlock: 1, borderBlockEnd: 1, borderBlockEndWidth: 1, borderBlockStart: 1, borderBlockStartWidth: 1, borderBlockWidth: 1, borderBottom: 1, borderBottomLeftRadius: 1, borderBottomRightRadius: 1, borderBottomWidth: 1, borderEndEndRadius: 1, borderEndStartRadius: 1, borderInlineEnd: 1, borderInlineEndWidth: 1, borderInlineStart: 1, borderInlineStartWidth: 1, borderInlineWidth: 1, borderLeft: 1, borderLeftWidth: 1, borderRadius: 1, borderRight: 1, borderRightWidth: 1, borderSpacing: 1, borderStartEndRadius: 1, borderStartStartRadius: 1, borderTop: 1, borderTopLeftRadius: 1, borderTopRightRadius: 1, borderTopWidth: 1, borderWidth: 1, bottom: 1, columnGap: 1, columnRule: 1, columnRuleWidth: 1, columnWidth: 1, containIntrinsicSize: 1, flexBasis: 1, fontSize: 1, gap: 1, gridAutoColumns: 1, gridAutoRows: 1, gridTemplateColumns: 1, gridTemplateRows: 1, height: 1, inlineSize: 1, inset: 1, insetBlock: 1, insetBlockEnd: 1, insetBlockStart: 1, insetInline: 1, insetInlineEnd: 1, insetInlineStart: 1, left: 1, letterSpacing: 1, margin: 1, marginBlock: 1, marginBlockEnd: 1, marginBlockStart: 1, marginBottom: 1, marginInline: 1, marginInlineEnd: 1, marginInlineStart: 1, marginLeft: 1, marginRight: 1, marginTop: 1, maxBlockSize: 1, maxHeight: 1, maxInlineSize: 1, maxWidth: 1, minBlockSize: 1, minHeight: 1, minInlineSize: 1, minWidth: 1, offsetDistance: 1, offsetRotate: 1, outline: 1, outlineOffset: 1, outlineWidth: 1, overflowClipMargin: 1, padding: 1, paddingBlock: 1, paddingBlockEnd: 1, paddingBlockStart: 1, paddingBottom: 1, paddingInline: 1, paddingInlineEnd: 1, paddingInlineStart: 1, paddingLeft: 1, paddingRight: 1, paddingTop: 1, perspective: 1, right: 1, rowGap: 1, scrollMargin: 1, scrollMarginBlock: 1, scrollMarginBlockEnd: 1, scrollMarginBlockStart: 1, scrollMarginBottom: 1, scrollMarginInline: 1, scrollMarginInlineEnd: 1, scrollMarginInlineStart: 1, scrollMarginLeft: 1, scrollMarginRight: 1, scrollMarginTop: 1, scrollPadding: 1, scrollPaddingBlock: 1, scrollPaddingBlockEnd: 1, scrollPaddingBlockStart: 1, scrollPaddingBottom: 1, scrollPaddingInline: 1, scrollPaddingInlineEnd: 1, scrollPaddingInlineStart: 1, scrollPaddingLeft: 1, scrollPaddingRight: 1, scrollPaddingTop: 1, shapeMargin: 1, textDecoration: 1, textDecorationThickness: 1, textIndent: 1, textUnderlineOffset: 1, top: 1, transitionDelay: 1, transitionDuration: 1, verticalAlign: 1, width: 1, wordSpacing: 1 };
149
+ var z = (e) => String.fromCharCode(e + (e > 25 ? 39 : 97));
150
+ var W = (e) => ((e2) => {
151
+ let t2, n2 = "";
152
+ for (t2 = Math.abs(e2); t2 > 52; t2 = t2 / 52 | 0)
153
+ n2 = z(t2 % 52) + n2;
154
+ return z(t2 % 52) + n2;
155
+ })(((e2, t2) => {
156
+ let n2 = t2.length;
157
+ for (; n2; )
158
+ e2 = 33 * e2 ^ t2.charCodeAt(--n2);
159
+ return e2;
160
+ })(5381, JSON.stringify(e)) >>> 0);
161
+ var j = ["themed", "global", "styled", "onevar", "resonevar", "allvar", "inline"];
162
+ var E = (e) => {
163
+ if (e.href && !e.href.startsWith(location.origin))
164
+ return false;
165
+ try {
166
+ return !!e.cssRules;
167
+ } catch (e2) {
168
+ return false;
169
+ }
170
+ };
171
+ var T = (e) => {
172
+ let t2;
173
+ const n2 = () => {
174
+ const { cssRules: e2 } = t2.sheet;
175
+ return [].map.call(e2, (n3, r3) => {
176
+ const { cssText: i2 } = n3;
177
+ let o2 = "";
178
+ if (i2.startsWith("--sxs"))
179
+ return "";
180
+ if (e2[r3 - 1] && (o2 = e2[r3 - 1].cssText).startsWith("--sxs")) {
181
+ if (!n3.cssRules.length)
182
+ return "";
183
+ for (const e3 in t2.rules)
184
+ if (t2.rules[e3].group === n3)
185
+ return `--sxs{--sxs:${[...t2.rules[e3].cache].join(" ")}}${i2}`;
186
+ return n3.cssRules.length ? `${o2}${i2}` : "";
187
+ }
188
+ return i2;
189
+ }).join("");
190
+ }, r2 = () => {
191
+ if (t2) {
192
+ const { rules: e2, sheet: n3 } = t2;
193
+ if (!n3.deleteRule) {
194
+ for (; 3 === Object(Object(n3.cssRules)[0]).type; )
195
+ n3.cssRules.splice(0, 1);
196
+ n3.cssRules = [];
197
+ }
198
+ for (const t3 in e2)
199
+ delete e2[t3];
200
+ }
201
+ const i2 = Object(e).styleSheets || [];
202
+ for (const e2 of i2)
203
+ if (E(e2)) {
204
+ for (let i3 = 0, o3 = e2.cssRules; o3[i3]; ++i3) {
205
+ const l3 = Object(o3[i3]);
206
+ if (1 !== l3.type)
207
+ continue;
208
+ const s2 = Object(o3[i3 + 1]);
209
+ if (4 !== s2.type)
210
+ continue;
211
+ ++i3;
212
+ const { cssText: a2 } = l3;
213
+ if (!a2.startsWith("--sxs"))
214
+ continue;
215
+ const c2 = a2.slice(14, -3).trim().split(/\s+/), d2 = j[c2[0]];
216
+ d2 && (t2 || (t2 = { sheet: e2, reset: r2, rules: {}, toString: n2 }), t2.rules[d2] = { group: s2, index: i3, cache: new Set(c2) });
217
+ }
218
+ if (t2)
219
+ break;
220
+ }
221
+ if (!t2) {
222
+ const i3 = (e2, t3) => ({ type: t3, cssRules: [], insertRule(e3, t4) {
223
+ this.cssRules.splice(t4, 0, i3(e3, { import: 3, undefined: 1 }[(e3.toLowerCase().match(/^@([a-z]+)/) || [])[1]] || 4));
224
+ }, get cssText() {
225
+ return "@media{}" === e2 ? `@media{${[].map.call(this.cssRules, (e3) => e3.cssText).join("")}}` : e2;
226
+ } });
227
+ t2 = { sheet: e ? (e.head || e).appendChild(document.createElement("style")).sheet : i3("", "text/css"), rules: {}, reset: r2, toString: n2 };
228
+ }
229
+ const { sheet: o2, rules: l2 } = t2;
230
+ for (let e2 = j.length - 1; e2 >= 0; --e2) {
231
+ const t3 = j[e2];
232
+ if (!l2[t3]) {
233
+ const n3 = j[e2 + 1], r3 = l2[n3] ? l2[n3].index : o2.cssRules.length;
234
+ o2.insertRule("@media{}", r3), o2.insertRule(`--sxs{--sxs:${e2}}`, r3), l2[t3] = { group: o2.cssRules[r3 + 1], index: r3, cache: /* @__PURE__ */ new Set([e2]) };
235
+ }
236
+ v(l2[t3]);
237
+ }
238
+ };
239
+ return r2(), t2;
240
+ };
241
+ var v = (e) => {
242
+ const t2 = e.group;
243
+ let n2 = t2.cssRules.length;
244
+ e.apply = (e2) => {
245
+ try {
246
+ t2.insertRule(e2, n2), ++n2;
247
+ } catch (e3) {
248
+ }
249
+ };
250
+ };
251
+ var M = Symbol();
252
+ var w = l();
253
+ var C = (e, t2) => w(e, () => (...n2) => {
254
+ let r2 = { type: null, composers: /* @__PURE__ */ new Set() };
255
+ for (const t3 of n2)
256
+ if (null != t3)
257
+ if (t3[s]) {
258
+ null == r2.type && (r2.type = t3[s].type);
259
+ for (const e2 of t3[s].composers)
260
+ r2.composers.add(e2);
261
+ } else
262
+ t3.constructor !== Object || t3.$$typeof ? null == r2.type && (r2.type = t3) : r2.composers.add(P(t3, e));
263
+ return null == r2.type && (r2.type = "span"), r2.composers.size || r2.composers.add(["PJLV", {}, [], [], {}, []]), L(e, r2, t2);
264
+ });
265
+ var P = ({ variants: e, compoundVariants: t2, defaultVariants: n2, ...r2 }, i2) => {
266
+ const o2 = `${k(i2.prefix)}c-${W(r2)}`, l2 = [], s2 = [], a2 = /* @__PURE__ */ Object.create(null), g2 = [];
267
+ for (const e2 in n2)
268
+ a2[e2] = String(n2[e2]);
269
+ if ("object" == typeof e && e)
270
+ for (const t3 in e) {
271
+ p2 = a2, u2 = t3, d.call(p2, u2) || (a2[t3] = "undefined");
272
+ const n3 = e[t3];
273
+ for (const e2 in n3) {
274
+ const r3 = { [t3]: String(e2) };
275
+ "undefined" === String(e2) && g2.push(t3);
276
+ const i3 = n3[e2], o3 = [r3, i3, !c(i3)];
277
+ l2.push(o3);
278
+ }
279
+ }
280
+ var p2, u2;
281
+ if ("object" == typeof t2 && t2)
282
+ for (const e2 of t2) {
283
+ let { css: t3, ...n3 } = e2;
284
+ t3 = "object" == typeof t3 && t3 || {};
285
+ for (const e3 in n3)
286
+ n3[e3] = String(n3[e3]);
287
+ const r3 = [n3, t3, !c(t3)];
288
+ s2.push(r3);
289
+ }
290
+ return [o2, r2, l2, s2, a2, g2];
291
+ };
292
+ var L = (e, t2, n2) => {
293
+ const [r2, i2, o2, l2] = O(t2.composers), c2 = "function" == typeof t2.type || t2.type.$$typeof ? ((e2) => {
294
+ function t3() {
295
+ for (let n3 = 0; n3 < t3[M].length; n3++) {
296
+ const [r3, i3] = t3[M][n3];
297
+ e2.rules[r3].apply(i3);
298
+ }
299
+ return t3[M] = [], null;
300
+ }
301
+ return t3[M] = [], t3.rules = {}, j.forEach((e3) => t3.rules[e3] = { apply: (n3) => t3[M].push([e3, n3]) }), t3;
302
+ })(n2) : null, d2 = (c2 || n2).rules, g2 = `.${r2}${i2.length > 1 ? `:where(.${i2.slice(1).join(".")})` : ""}`, p2 = (s2) => {
303
+ s2 = "object" == typeof s2 && s2 || D;
304
+ const { css: a2, ...p3 } = s2, u2 = {};
305
+ for (const e2 in o2)
306
+ if (delete p3[e2], e2 in s2) {
307
+ let t3 = s2[e2];
308
+ "object" == typeof t3 && t3 ? u2[e2] = { "@initial": o2[e2], ...t3 } : (t3 = String(t3), u2[e2] = "undefined" !== t3 || l2.has(e2) ? t3 : o2[e2]);
309
+ } else
310
+ u2[e2] = o2[e2];
311
+ const h2 = /* @__PURE__ */ new Set([...i2]);
312
+ for (const [r3, i3, o3, l3] of t2.composers) {
313
+ n2.rules.styled.cache.has(r3) || (n2.rules.styled.cache.add(r3), x(i3, [`.${r3}`], [], e, (e2) => {
314
+ d2.styled.apply(e2);
315
+ }));
316
+ const t3 = A(o3, u2, e.media), s3 = A(l3, u2, e.media, true);
317
+ for (const i4 of t3)
318
+ if (void 0 !== i4)
319
+ for (const [t4, o4, l4] of i4) {
320
+ const i5 = `${r3}-${W(o4)}-${t4}`;
321
+ h2.add(i5);
322
+ const s4 = (l4 ? n2.rules.resonevar : n2.rules.onevar).cache, a3 = l4 ? d2.resonevar : d2.onevar;
323
+ s4.has(i5) || (s4.add(i5), x(o4, [`.${i5}`], [], e, (e2) => {
324
+ a3.apply(e2);
325
+ }));
326
+ }
327
+ for (const t4 of s3)
328
+ if (void 0 !== t4)
329
+ for (const [i4, o4] of t4) {
330
+ const t5 = `${r3}-${W(o4)}-${i4}`;
331
+ h2.add(t5), n2.rules.allvar.cache.has(t5) || (n2.rules.allvar.cache.add(t5), x(o4, [`.${t5}`], [], e, (e2) => {
332
+ d2.allvar.apply(e2);
333
+ }));
334
+ }
335
+ }
336
+ if ("object" == typeof a2 && a2) {
337
+ const t3 = `${r2}-i${W(a2)}-css`;
338
+ h2.add(t3), n2.rules.inline.cache.has(t3) || (n2.rules.inline.cache.add(t3), x(a2, [`.${t3}`], [], e, (e2) => {
339
+ d2.inline.apply(e2);
340
+ }));
341
+ }
342
+ for (const e2 of String(s2.className || "").trim().split(/\s+/))
343
+ e2 && h2.add(e2);
344
+ const f2 = p3.className = [...h2].join(" ");
345
+ return { type: t2.type, className: f2, selector: g2, props: p3, toString: () => f2, deferredInjector: c2 };
346
+ };
347
+ return a(p2, { className: r2, selector: g2, [s]: t2, toString: () => (n2.rules.styled.cache.has(r2) || p2(), r2) });
348
+ };
349
+ var O = (e) => {
350
+ let t2 = "";
351
+ const n2 = [], r2 = {}, i2 = [];
352
+ for (const [o2, , , , l2, s2] of e) {
353
+ "" === t2 && (t2 = o2), n2.push(o2), i2.push(...s2);
354
+ for (const e2 in l2) {
355
+ const t3 = l2[e2];
356
+ (void 0 === r2[e2] || "undefined" !== t3 || s2.includes(t3)) && (r2[e2] = t3);
357
+ }
358
+ }
359
+ return [t2, n2, r2, new Set(i2)];
360
+ };
361
+ var A = (e, t2, n2, r2) => {
362
+ const i2 = [];
363
+ e:
364
+ for (let [o2, l2, s2] of e) {
365
+ if (s2)
366
+ continue;
367
+ let e2, a2 = 0, c2 = false;
368
+ for (e2 in o2) {
369
+ const r3 = o2[e2];
370
+ let i3 = t2[e2];
371
+ if (i3 !== r3) {
372
+ if ("object" != typeof i3 || !i3)
373
+ continue e;
374
+ {
375
+ let e3, t3, o3 = 0;
376
+ for (const l3 in i3) {
377
+ if (r3 === String(i3[l3])) {
378
+ if ("@initial" !== l3) {
379
+ const e4 = l3.slice(1);
380
+ (t3 = t3 || []).push(e4 in n2 ? n2[e4] : l3.replace(/^@media ?/, "")), c2 = true;
381
+ }
382
+ a2 += o3, e3 = true;
383
+ }
384
+ ++o3;
385
+ }
386
+ if (t3 && t3.length && (l2 = { ["@media " + t3.join(", ")]: l2 }), !e3)
387
+ continue e;
388
+ }
389
+ }
390
+ }
391
+ (i2[a2] = i2[a2] || []).push([r2 ? "cv" : `${e2}-${o2[e2]}`, l2, c2]);
392
+ }
393
+ return i2;
394
+ };
395
+ var D = {};
396
+ var H = l();
397
+ var N = (e, t2) => H(e, () => (...n2) => {
398
+ const r2 = () => {
399
+ for (let r3 of n2) {
400
+ r3 = "object" == typeof r3 && r3 || {};
401
+ let n3 = W(r3);
402
+ if (!t2.rules.global.cache.has(n3)) {
403
+ if (t2.rules.global.cache.add(n3), "@import" in r3) {
404
+ let e2 = [].indexOf.call(t2.sheet.cssRules, t2.rules.themed.group) - 1;
405
+ for (let n4 of [].concat(r3["@import"]))
406
+ n4 = n4.includes('"') || n4.includes("'") ? n4 : `"${n4}"`, t2.sheet.insertRule(`@import ${n4};`, e2++);
407
+ delete r3["@import"];
408
+ }
409
+ x(r3, [], [], e, (e2) => {
410
+ t2.rules.global.apply(e2);
411
+ });
412
+ }
413
+ }
414
+ return "";
415
+ };
416
+ return a(r2, { toString: r2 });
417
+ });
418
+ var V = l();
419
+ var G = (e, t2) => V(e, () => (n2) => {
420
+ const r2 = `${k(e.prefix)}k-${W(n2)}`, i2 = () => {
421
+ if (!t2.rules.global.cache.has(r2)) {
422
+ t2.rules.global.cache.add(r2);
423
+ const i3 = [];
424
+ x(n2, [], [], e, (e2) => i3.push(e2));
425
+ const o2 = `@keyframes ${r2}{${i3.join("")}}`;
426
+ t2.rules.global.apply(o2);
427
+ }
428
+ return r2;
429
+ };
430
+ return a(i2, { get name() {
431
+ return i2();
432
+ }, toString: i2 });
433
+ });
434
+ var F = class {
435
+ constructor(e, t2, n2, r2) {
436
+ this.token = null == e ? "" : String(e), this.value = null == t2 ? "" : String(t2), this.scale = null == n2 ? "" : String(n2), this.prefix = null == r2 ? "" : String(r2);
437
+ }
438
+ get computedValue() {
439
+ return "var(" + this.variable + ")";
440
+ }
441
+ get variable() {
442
+ return "--" + k(this.prefix) + k(this.scale) + this.token;
443
+ }
444
+ toString() {
445
+ return this.computedValue;
446
+ }
447
+ };
448
+ var J = l();
449
+ var U = (e, t2) => J(e, () => (n2, r2) => {
450
+ r2 = "object" == typeof n2 && n2 || Object(r2);
451
+ const i2 = `.${n2 = (n2 = "string" == typeof n2 ? n2 : "") || `${k(e.prefix)}t-${W(r2)}`}`, o2 = {}, l2 = [];
452
+ for (const t3 in r2) {
453
+ o2[t3] = {};
454
+ for (const n3 in r2[t3]) {
455
+ const i3 = `--${k(e.prefix)}${t3}-${n3}`, s3 = y(String(r2[t3][n3]), e.prefix, t3);
456
+ o2[t3][n3] = new F(n3, s3, t3, e.prefix), l2.push(`${i3}:${s3}`);
457
+ }
458
+ }
459
+ const s2 = () => {
460
+ if (l2.length && !t2.rules.themed.cache.has(n2)) {
461
+ t2.rules.themed.cache.add(n2);
462
+ const i3 = `${r2 === e.theme ? ":root," : ""}.${n2}{${l2.join(";")}}`;
463
+ t2.rules.themed.apply(i3);
464
+ }
465
+ return n2;
466
+ };
467
+ return { ...o2, get className() {
468
+ return s2();
469
+ }, selector: i2, toString: s2 };
470
+ });
471
+ var Z = l();
472
+ var X = (e) => {
473
+ let t2 = false;
474
+ const n2 = Z(e, (e2) => {
475
+ t2 = true;
476
+ const n3 = "prefix" in (e2 = "object" == typeof e2 && e2 || {}) ? String(e2.prefix) : "", r2 = "object" == typeof e2.media && e2.media || {}, o2 = "object" == typeof e2.root ? e2.root || null : globalThis.document || null, l2 = "object" == typeof e2.theme && e2.theme || {}, s2 = { prefix: n3, media: r2, theme: l2, themeMap: "object" == typeof e2.themeMap && e2.themeMap || { ...i }, utils: "object" == typeof e2.utils && e2.utils || {} }, a2 = T(o2), c2 = { css: C(s2, a2), globalCss: N(s2, a2), keyframes: G(s2, a2), createTheme: U(s2, a2), reset() {
477
+ a2.reset(), c2.theme.toString();
478
+ }, theme: {}, sheet: a2, config: s2, prefix: n3, getCssText: a2.toString, toString: a2.toString };
479
+ return String(c2.theme = c2.createTheme(l2)), c2;
480
+ });
481
+ return t2 || n2.reset(), n2;
482
+ };
483
+
484
+ // ../core/dist/index.mjs
485
+ var loadScript = (src) => {
486
+ return new Promise((resolve, reject) => {
487
+ let script = document.createElement("script");
488
+ script.src = src;
489
+ script.onload = resolve;
490
+ script.onerror = reject;
491
+ script.defer = true;
492
+ document.body.appendChild(script);
493
+ });
494
+ };
495
+ var isReactNative = typeof navigator === "object" && navigator.product === "ReactNative";
496
+ var isBrowser2 = typeof window !== "undefined" && !isReactNative;
497
+ var isIframe = isBrowser2 && window.top !== window.self;
498
+ function merge(target, source) {
499
+ let t2 = { ...target || {} };
500
+ for (let key of Object.keys(source)) {
501
+ if (source[key] instanceof Object && !Array.isArray(source[key])) {
502
+ Object.assign(source[key], merge(t2[key], source[key]));
503
+ }
504
+ }
505
+ Object.assign(t2 || {}, source);
506
+ return t2;
507
+ }
508
+ var stitchesUtils = {
509
+ // Abbreviated margin properties
510
+ m: (value) => ({
511
+ margin: value
512
+ }),
513
+ mt: (value) => ({
514
+ marginTop: value
515
+ }),
516
+ mr: (value) => ({
517
+ marginRight: value
518
+ }),
519
+ mb: (value) => ({
520
+ marginBottom: value
521
+ }),
522
+ ml: (value) => ({
523
+ marginLeft: value
524
+ }),
525
+ mx: (value) => ({
526
+ marginLeft: value,
527
+ marginRight: value
528
+ }),
529
+ my: (value) => ({
530
+ marginTop: value,
531
+ marginBottom: value
532
+ }),
533
+ // A property for applying width/height together
534
+ size: (value) => ({
535
+ width: value,
536
+ height: value
537
+ }),
538
+ // Abbreviated padding properties
539
+ px: (value) => ({
540
+ paddingLeft: value,
541
+ paddingRight: value
542
+ }),
543
+ py: (value) => ({
544
+ paddingTop: value,
545
+ paddingBottom: value
546
+ })
547
+ };
548
+ var WeaverseItemStore = class {
549
+ constructor(itemData, weaverse) {
550
+ this.listeners = /* @__PURE__ */ new Set();
551
+ this.ref = {
552
+ current: null
553
+ };
554
+ this.stitchesClass = "";
555
+ this._data = { id: "", type: "" };
556
+ this.setData = (data) => {
557
+ this.data = Object.assign(this.data, data);
558
+ this.triggerUpdate();
559
+ return this.data;
560
+ };
561
+ this.subscribe = (fn) => {
562
+ this.listeners.add(fn);
563
+ };
564
+ this.unsubscribe = (fn) => {
565
+ this.listeners.delete(fn);
566
+ };
567
+ this.triggerUpdate = () => {
568
+ this.listeners.forEach((fn) => {
569
+ return fn(this.data);
570
+ });
571
+ };
572
+ let { type, id } = itemData;
573
+ this.weaverse = weaverse;
574
+ if (id && type) {
575
+ weaverse.itemInstances.set(id, this);
576
+ this.data = { ...itemData };
577
+ }
578
+ }
579
+ get _id() {
580
+ return this._data.id;
581
+ }
582
+ get _element() {
583
+ return this.ref.current;
584
+ }
585
+ get _flags() {
586
+ return this.Element?.schema?.flags || {};
587
+ }
588
+ get Element() {
589
+ return this.weaverse.elementInstances.get(this._data.type);
590
+ }
591
+ set data(data) {
592
+ this._data = { ...this.data, ...data };
593
+ }
594
+ get data() {
595
+ let defaultCss = this.Element?.defaultCss || {};
596
+ let currentCss = this._data.css || {};
597
+ let css = merge(defaultCss, currentCss);
598
+ let defaultData = { ...this.Element?.Component?.defaultProps };
599
+ return { ...defaultData, ...this._data, css };
600
+ }
601
+ };
602
+ var Weaverse = class {
603
+ /**
604
+ * constructor
605
+ * @param weaverseHost {string} Weaverse base URL that can provide by user/developer. for local development, use localhost:3000
606
+ * @param projectId {string} Weaverse project key to access project data via API
607
+ * @param data {WeaverseProjectDataType} Weaverse project data, by default, user can provide project data via React Component.
608
+ * @param mediaBreakPoints {object} Pass down custom media query breakpoints or just use the default.
609
+ * @param isDesignMode {boolean} check whether the sdk is isDesignMode or not
610
+ * @param ssrMode {boolean} Use in element to optionally render special HTML for hydration
611
+ * @param elementSchemas {Array<ElementSchema>} List of element schemas
612
+ * @param platformType {PlatformTypeEnum} Check the platform, shopify-section or react-ssr(hydrogen)
613
+ */
614
+ constructor({
615
+ weaverseHost,
616
+ weaverseVersion,
617
+ projectId,
618
+ data,
619
+ mediaBreakPoints,
620
+ isDesignMode,
621
+ ssrMode,
622
+ elementSchemas,
623
+ platformType,
624
+ pageId
625
+ } = {}) {
626
+ this.elementInstances = /* @__PURE__ */ new Map();
627
+ this.itemInstances = /* @__PURE__ */ new Map();
628
+ this.weaverseHost = "https://studio.weaverse.io";
629
+ this.weaverseVersion = "";
630
+ this.projectId = "";
631
+ this.pageId = "";
632
+ this.data = {
633
+ rootId: "",
634
+ items: [],
635
+ script: { css: "", js: "" }
636
+ };
637
+ this.listeners = /* @__PURE__ */ new Set();
638
+ this.isDesignMode = false;
639
+ this.platformType = "shopify-section";
640
+ this.isPreviewMode = false;
641
+ this.ssrMode = false;
642
+ this.mediaBreakPoints = {
643
+ desktop: "all",
644
+ // max-width need to subtract 0.02px to prevent bug https://getbootstrap.com/docs/5.1/layout/breakpoints/#max-width
645
+ // tablet: "(max-width: 1023.98px)", // to set css for tablet, {'@tablet' : { // css }},
646
+ mobile: "(max-width: 767.98px)"
647
+ };
648
+ this.initStitches = (externalConfig = {}) => {
649
+ this.stitchesInstance = this.stitchesInstance || X({
650
+ prefix: "weaverse",
651
+ media: this.mediaBreakPoints,
652
+ utils: stitchesUtils,
653
+ ...externalConfig
654
+ });
655
+ };
656
+ this.init({
657
+ weaverseHost,
658
+ weaverseVersion,
659
+ projectId,
660
+ data,
661
+ platformType,
662
+ mediaBreakPoints,
663
+ isDesignMode,
664
+ ssrMode,
665
+ elementSchemas,
666
+ pageId
667
+ });
668
+ }
669
+ init({
670
+ weaverseHost,
671
+ weaverseVersion,
672
+ elementSchemas,
673
+ platformType,
674
+ projectId,
675
+ data,
676
+ mediaBreakPoints,
677
+ isDesignMode,
678
+ ssrMode,
679
+ pageId
680
+ } = {}) {
681
+ this.elementSchemas = elementSchemas || this.elementSchemas;
682
+ this.weaverseHost = weaverseHost || this.weaverseHost;
683
+ this.weaverseVersion = weaverseVersion || this.weaverseVersion;
684
+ this.projectId = projectId || this.projectId;
685
+ this.pageId = pageId || this.pageId;
686
+ this.mediaBreakPoints = mediaBreakPoints || this.mediaBreakPoints;
687
+ this.isDesignMode = isDesignMode || this.isDesignMode;
688
+ this.ssrMode = ssrMode || this.ssrMode;
689
+ this.platformType = platformType || this.platformType;
690
+ this.data = data || this.data;
691
+ this.initProjectItemData();
692
+ this.initStitches();
693
+ }
694
+ /**
695
+ * Register the custom React Component to Weaverse, store it into Weaverse.elementInstances
696
+ * @param element {WeaverseElement} custom React Component
697
+ */
698
+ registerElement(element) {
699
+ if (element?.type) {
700
+ if (!this.elementInstances.has(element.type)) {
701
+ this.elementInstances.set(element?.type, element);
702
+ }
703
+ } else {
704
+ console.error("Weaverse: registerElement: `type` is required");
705
+ }
706
+ }
707
+ subscribe(fn) {
708
+ this.listeners.add(fn);
709
+ }
710
+ unsubscribe(fn) {
711
+ this.listeners.delete(fn);
712
+ }
713
+ triggerUpdate() {
714
+ this.listeners.forEach((fn) => fn());
715
+ }
716
+ refreshAllItems() {
717
+ this.itemInstances.forEach((item) => {
718
+ item.triggerUpdate();
719
+ });
720
+ }
721
+ setProjectData(data) {
722
+ this.data = data;
723
+ this.initProjectItemData();
724
+ this.triggerUpdate();
725
+ }
726
+ initProjectItemData() {
727
+ const data = this.data;
728
+ if (data?.items) {
729
+ data.items.forEach((item) => {
730
+ if (!this.itemInstances.get(item.id)) {
731
+ new WeaverseItemStore(item, this);
732
+ }
733
+ });
734
+ }
735
+ }
736
+ };
737
+ Weaverse.WeaverseItemStore = WeaverseItemStore;
738
+
739
+ // src/utils.ts
740
+ var import_react2 = require("react");
741
+ var useStudio = (weaverseCore) => {
742
+ (0, import_react2.useEffect)(() => {
743
+ if (weaverseCore.isDesignMode && isIframe && !window.weaverseStudioInitialized) {
744
+ window.weaverseStudioInitialized = true;
745
+ let host = weaverseCore.weaverseHost;
746
+ let version = Date.now();
747
+ loadScript(`${host}/assets/studio/studio-bridge.js?v=${version}`).then(
748
+ () => {
749
+ window?.createWeaverseStudioBridge(weaverseCore);
750
+ setTimeout(() => {
751
+ weaverseCore.triggerUpdate();
752
+ }, 2e3);
753
+ }
754
+ );
755
+ }
756
+ setTimeout(() => {
757
+ window.__weaverse = weaverseCore;
758
+ }, 1);
759
+ }, []);
760
+ };
761
+
108
762
  // src/weaverse-loader.ts
109
763
  var import_hydrogen = require("@shopify/hydrogen");
110
764
  function hashKey(queryKey) {
@@ -125,6 +779,7 @@ function hashKey(queryKey) {
125
779
  }
126
780
  return hash;
127
781
  }
782
+ var cacheControl = (0, import_hydrogen.generateCacheControlHeader)((0, import_hydrogen.CacheShort)());
128
783
  var fetchWithServerCache = async ({
129
784
  url,
130
785
  options = {},
@@ -136,10 +791,6 @@ var fetchWithServerCache = async ({
136
791
  const cacheKey = new Request(cacheUrl.toString());
137
792
  let response = await storefront.cache.match(cacheKey);
138
793
  if (!response) {
139
- let cacheControl = (0, import_hydrogen.generateCacheControlHeader)({
140
- ...(0, import_hydrogen.CacheShort)()
141
- });
142
- console.log("fetchWithServerCache", cacheControl);
143
794
  response = await fetch(url, {
144
795
  ...options,
145
796
  headers: {
@@ -151,12 +802,23 @@ var fetchWithServerCache = async ({
151
802
  }
152
803
  return response;
153
804
  };
805
+ function getRequestQueries(request) {
806
+ let url = new URL(request.url);
807
+ return Array.from(url.searchParams.entries()).reduce(
808
+ (q, [k2, v2]) => {
809
+ q[k2] = v2 === "true" ? true : v2 === "false" ? false : v2;
810
+ return q;
811
+ },
812
+ {}
813
+ );
814
+ }
154
815
  async function weaverseLoader({
155
816
  request,
156
817
  context: { env, storefront, waitUntil },
157
818
  context,
158
819
  params
159
820
  }, components) {
821
+ let queries = getRequestQueries(request);
160
822
  let projectId = env?.WEAVERSE_PROJECT_ID;
161
823
  let weaverseHost = env?.WEAVERSE_HOST;
162
824
  if (!projectId || !weaverseHost) {
@@ -165,11 +827,8 @@ async function weaverseLoader({
165
827
  }
166
828
  let config = {
167
829
  projectId,
168
- weaverseHost
169
- };
170
- let fetchBody = {
171
- projectId,
172
- url: request.url
830
+ weaverseHost,
831
+ ...queries
173
832
  };
174
833
  try {
175
834
  let pageData = await fetchWithServerCache({
@@ -179,12 +838,15 @@ async function weaverseLoader({
179
838
  headers: {
180
839
  "Content-Type": "application/json"
181
840
  },
182
- body: JSON.stringify(fetchBody)
841
+ body: JSON.stringify({
842
+ projectId,
843
+ url: request.url
844
+ })
183
845
  },
184
846
  storefront,
185
847
  waitUntil
186
- }).then((r) => r.json()).catch((err) => {
187
- console.error(err);
848
+ }).then((r2) => r2.json()).catch((err) => {
849
+ console.log(`\u274C Error fetching page data: ${err?.toString()}`);
188
850
  return {};
189
851
  });
190
852
  if (pageData?.items) {
@@ -220,23 +882,20 @@ async function weaverseLoader({
220
882
  }
221
883
 
222
884
  // src/index.tsx
223
- var WeaverseHydrogenRoot = (0, import_react3.memo)(
224
- ({
225
- components,
226
- data
227
- }) => {
228
- let weaverse = createWeaverseHydrogenContext(data, components);
229
- useStudio(weaverse);
230
- if (!weaverse?.data) {
231
- return /* @__PURE__ */ import_react3.default.createElement("div", null, "404");
232
- }
233
- return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement(import_react4.WeaverseRoot, { context: weaverse }), weaverse.isDesignMode ? null : /* @__PURE__ */ import_react3.default.createElement(StitchesStyle, { weaverse }));
885
+ var WeaverseHydrogenRoot = ({
886
+ components,
887
+ data
888
+ }) => {
889
+ let weaverse = createWeaverseHydrogenContext(data, components);
890
+ useStudio(weaverse);
891
+ if (!weaverse?.data) {
892
+ return /* @__PURE__ */ import_react4.default.createElement("div", null, "404");
234
893
  }
235
- );
236
- var StitchesStyle = (0, import_react3.memo)(
894
+ return /* @__PURE__ */ import_react4.default.createElement(import_react4.default.Fragment, null, /* @__PURE__ */ import_react4.default.createElement(import_react3.WeaverseRoot, { context: weaverse }), weaverse.isDesignMode ? null : /* @__PURE__ */ import_react4.default.createElement(StitchesStyle, { weaverse }));
895
+ };
896
+ var StitchesStyle = (0, import_react4.memo)(
237
897
  ({ weaverse }) => {
238
- console.log("stitches", weaverse.stitchesInstance?.getCssText());
239
- return /* @__PURE__ */ import_react3.default.createElement(
898
+ return /* @__PURE__ */ import_react4.default.createElement(
240
899
  "style",
241
900
  {
242
901
  id: "stitches",
@@ -254,6 +913,7 @@ var StitchesStyle = (0, import_react3.memo)(
254
913
  0 && (module.exports = {
255
914
  WeaverseHydrogenRoot,
256
915
  fetchWithServerCache,
916
+ getRequestQueries,
257
917
  hashKey,
258
918
  useStudio,
259
919
  weaverseLoader