@weaverse/hydrogen 1.0.26 → 1.0.27

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.ts CHANGED
@@ -48,5 +48,6 @@ declare let WeaverseHydrogenRoot: ({ components, data, }: {
48
48
  weaverseData: any;
49
49
  };
50
50
  }) => JSX.Element;
51
+ declare function useIsHydrated(): boolean;
51
52
 
52
- export { WeaverseComponentLoaderArgs, WeaverseHydrogenRoot, fetchWithServerCache, hashKey, useStudio, weaverseLoader };
53
+ export { WeaverseComponentLoaderArgs, WeaverseHydrogenRoot, fetchWithServerCache, hashKey, useIsHydrated, useStudio, weaverseLoader };
package/dist/index.js CHANGED
@@ -33,6 +33,7 @@ __export(src_exports, {
33
33
  WeaverseHydrogenRoot: () => WeaverseHydrogenRoot,
34
34
  fetchWithServerCache: () => fetchWithServerCache,
35
35
  hashKey: () => hashKey,
36
+ useIsHydrated: () => useIsHydrated,
36
37
  useStudio: () => useStudio,
37
38
  weaverseLoader: () => weaverseLoader
38
39
  });
@@ -57,7 +58,6 @@ var useStudio = (weaverseCore) => {
57
58
  );
58
59
  }
59
60
  setTimeout(() => {
60
- weaverseCore.stitchesInstance?.reset();
61
61
  window.__weaverse = weaverseCore;
62
62
  }, 1);
63
63
  }, []);
@@ -218,13 +218,35 @@ var WeaverseHydrogenRoot = ({
218
218
  if (!weaverse?.data) {
219
219
  return /* @__PURE__ */ import_react3.default.createElement("div", null, "404");
220
220
  }
221
- return /* @__PURE__ */ import_react3.default.createElement(import_react4.WeaverseRoot, { context: weaverse });
221
+ return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, /* @__PURE__ */ import_react3.default.createElement(import_react4.WeaverseRoot, { context: weaverse }), /* @__PURE__ */ import_react3.default.createElement(RenderStitchesStyles, { weaverse }));
222
+ };
223
+ function useIsHydrated() {
224
+ const [isHydrated, setHydrated] = (0, import_react3.useState)(false);
225
+ (0, import_react3.useEffect)(() => {
226
+ setHydrated(true);
227
+ }, []);
228
+ return isHydrated;
229
+ }
230
+ var RenderStitchesStyles = ({ weaverse }) => {
231
+ let h = useIsHydrated();
232
+ return /* @__PURE__ */ import_react3.default.createElement(
233
+ "style",
234
+ {
235
+ "data-hydrated": h,
236
+ id: "stitches",
237
+ dangerouslySetInnerHTML: {
238
+ __html: weaverse.stitchesInstance.getCssText()
239
+ },
240
+ suppressHydrationWarning: true
241
+ }
242
+ );
222
243
  };
223
244
  // Annotate the CommonJS export names for ESM import in node:
224
245
  0 && (module.exports = {
225
246
  WeaverseHydrogenRoot,
226
247
  fetchWithServerCache,
227
248
  hashKey,
249
+ useIsHydrated,
228
250
  useStudio,
229
251
  weaverseLoader
230
252
  });
package/dist/index.mjs CHANGED
@@ -17,14 +17,13 @@ var useStudio = (weaverseCore) => {
17
17
  );
18
18
  }
19
19
  setTimeout(() => {
20
- weaverseCore.stitchesInstance?.reset();
21
20
  window.__weaverse = weaverseCore;
22
21
  }, 1);
23
22
  }, []);
24
23
  };
25
24
 
26
25
  // src/index.tsx
27
- import React from "react";
26
+ import React, { useEffect as useEffect2, useState } from "react";
28
27
  import { WeaverseRoot } from "@weaverse/react";
29
28
 
30
29
  // src/context.ts
@@ -181,12 +180,34 @@ var WeaverseHydrogenRoot = ({
181
180
  if (!weaverse?.data) {
182
181
  return /* @__PURE__ */ React.createElement("div", null, "404");
183
182
  }
184
- return /* @__PURE__ */ React.createElement(WeaverseRoot, { context: weaverse });
183
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(WeaverseRoot, { context: weaverse }), /* @__PURE__ */ React.createElement(RenderStitchesStyles, { weaverse }));
184
+ };
185
+ function useIsHydrated() {
186
+ const [isHydrated, setHydrated] = useState(false);
187
+ useEffect2(() => {
188
+ setHydrated(true);
189
+ }, []);
190
+ return isHydrated;
191
+ }
192
+ var RenderStitchesStyles = ({ weaverse }) => {
193
+ let h = useIsHydrated();
194
+ return /* @__PURE__ */ React.createElement(
195
+ "style",
196
+ {
197
+ "data-hydrated": h,
198
+ id: "stitches",
199
+ dangerouslySetInnerHTML: {
200
+ __html: weaverse.stitchesInstance.getCssText()
201
+ },
202
+ suppressHydrationWarning: true
203
+ }
204
+ );
185
205
  };
186
206
  export {
187
207
  WeaverseHydrogenRoot,
188
208
  fetchWithServerCache,
189
209
  hashKey,
210
+ useIsHydrated,
190
211
  useStudio,
191
212
  weaverseLoader
192
213
  };
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.26",
2
+ "version": "1.0.27",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -33,8 +33,8 @@
33
33
  "author": "Weaverse Team",
34
34
  "dependencies": {
35
35
  "@shopify/hydrogen": "2023.4.0",
36
- "@weaverse/core": "1.0.26",
37
- "@weaverse/react": "1.0.26"
36
+ "@weaverse/core": "1.0.27",
37
+ "@weaverse/react": "1.0.27"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@shopify/remix-oxygen": "^1.0.5"