@weaverse/hydrogen 2.7.0 → 2.7.1-pre.1
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 +0 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.js +80 -77
- package/dist/index.mjs +73 -70
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -56,8 +56,6 @@ declare class WeaverseClient {
|
|
|
56
56
|
countries?: WeaverseClientArgs['countries'];
|
|
57
57
|
constructor(args: WeaverseClientArgs);
|
|
58
58
|
fetchWithCache: <T>(url: string, options?: FetchWithCacheOptions) => Promise<T>;
|
|
59
|
-
incrementCacheHits: () => Promise<string>;
|
|
60
|
-
resetCacheHits: () => Promise<void>;
|
|
61
59
|
loadThemeSettings: (strategy?: AllCacheOptions) => Promise<any>;
|
|
62
60
|
loadPage: (params?: LoadPageParams) => Promise<WeaverseLoaderData | null>;
|
|
63
61
|
execComponentLoader: (item: HydrogenComponentData) => Promise<HydrogenComponentData>;
|
package/dist/index.d.ts
CHANGED
|
@@ -56,8 +56,6 @@ declare class WeaverseClient {
|
|
|
56
56
|
countries?: WeaverseClientArgs['countries'];
|
|
57
57
|
constructor(args: WeaverseClientArgs);
|
|
58
58
|
fetchWithCache: <T>(url: string, options?: FetchWithCacheOptions) => Promise<T>;
|
|
59
|
-
incrementCacheHits: () => Promise<string>;
|
|
60
|
-
resetCacheHits: () => Promise<void>;
|
|
61
59
|
loadThemeSettings: (strategy?: AllCacheOptions) => Promise<any>;
|
|
62
60
|
loadPage: (params?: LoadPageParams) => Promise<WeaverseLoaderData | null>;
|
|
63
61
|
execComponentLoader: (item: HydrogenComponentData) => Promise<HydrogenComponentData>;
|
package/dist/index.js
CHANGED
|
@@ -111,51 +111,16 @@ var ThemeProvider = (0, import_react3.createContext)(null);
|
|
|
111
111
|
ThemeProvider.displayName = "WeaverseThemeProvider";
|
|
112
112
|
|
|
113
113
|
// src/hooks/use-studio.ts
|
|
114
|
-
var
|
|
115
|
-
var
|
|
116
|
-
var
|
|
114
|
+
var import_react7 = require("@remix-run/react");
|
|
115
|
+
var import_react8 = require("@weaverse/react");
|
|
116
|
+
var import_react9 = require("react");
|
|
117
117
|
|
|
118
118
|
// src/hooks/use-theme-context.ts
|
|
119
|
-
var
|
|
120
|
-
function useThemeContext() {
|
|
121
|
-
let themeContext = (0, import_react4.useContext)(ThemeProvider);
|
|
122
|
-
if (!themeContext) {
|
|
123
|
-
throw new Error(
|
|
124
|
-
`useThemeContext must be used within a ThemeProvider. Make sure to wrap your app in the withWeaverse HoC.`
|
|
125
|
-
);
|
|
126
|
-
}
|
|
127
|
-
return themeContext;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
// src/hooks/use-studio.ts
|
|
131
|
-
function useStudio(weaverse) {
|
|
132
|
-
let { revalidate } = (0, import_react5.useRevalidator)();
|
|
133
|
-
let navigate = (0, import_react5.useNavigate)();
|
|
134
|
-
let themeSettingsStore = useThemeContext();
|
|
135
|
-
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
136
|
-
let isStudio = import_react6.isIframe && isDesignMode && weaverseHost && weaverseVersion;
|
|
137
|
-
(0, import_react7.useEffect)(() => {
|
|
138
|
-
if (isStudio) {
|
|
139
|
-
weaverse.internal = {
|
|
140
|
-
...weaverse.internal,
|
|
141
|
-
navigate,
|
|
142
|
-
revalidate,
|
|
143
|
-
themeSettingsStore
|
|
144
|
-
};
|
|
145
|
-
window.__weaverse = weaverse;
|
|
146
|
-
if (window.weaverseStudio) {
|
|
147
|
-
window.weaverseStudio.init(weaverse);
|
|
148
|
-
} else {
|
|
149
|
-
let studioSrc = `${weaverseHost}/static/studio/hydrogen/index.js?v=${weaverseVersion}`;
|
|
150
|
-
(0, import_react6.loadScript)(studioSrc);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
}, [weaverse.requestInfo]);
|
|
154
|
-
}
|
|
119
|
+
var import_react6 = require("react");
|
|
155
120
|
|
|
156
121
|
// src/hooks/use-theme-settings.ts
|
|
157
|
-
var
|
|
158
|
-
var
|
|
122
|
+
var import_react4 = require("react");
|
|
123
|
+
var import_react5 = require("@weaverse/react");
|
|
159
124
|
var ThemeSettingsStore = class _ThemeSettingsStore {
|
|
160
125
|
static settings = null;
|
|
161
126
|
listeners = [];
|
|
@@ -164,7 +129,7 @@ var ThemeSettingsStore = class _ThemeSettingsStore {
|
|
|
164
129
|
publicEnv;
|
|
165
130
|
constructor(data) {
|
|
166
131
|
let { theme, countries, schema: schema2, publicEnv } = data || {};
|
|
167
|
-
if (
|
|
132
|
+
if (import_react5.isBrowser && _ThemeSettingsStore.settings) {
|
|
168
133
|
_ThemeSettingsStore.settings = {
|
|
169
134
|
...theme,
|
|
170
135
|
..._ThemeSettingsStore.settings
|
|
@@ -203,7 +168,7 @@ var ThemeSettingsStore = class _ThemeSettingsStore {
|
|
|
203
168
|
};
|
|
204
169
|
function useThemeSettings() {
|
|
205
170
|
let themeSettingsStore = useThemeContext();
|
|
206
|
-
let settings = (0,
|
|
171
|
+
let settings = (0, import_react4.useSyncExternalStore)(
|
|
207
172
|
themeSettingsStore.subscribe,
|
|
208
173
|
themeSettingsStore.getSnapshot,
|
|
209
174
|
themeSettingsStore.getServerSnapshot
|
|
@@ -211,6 +176,38 @@ function useThemeSettings() {
|
|
|
211
176
|
return settings;
|
|
212
177
|
}
|
|
213
178
|
|
|
179
|
+
// src/hooks/use-theme-context.ts
|
|
180
|
+
function useThemeContext() {
|
|
181
|
+
let themeContext = (0, import_react6.useContext)(ThemeProvider);
|
|
182
|
+
return themeContext || new ThemeSettingsStore({ theme: {} });
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
// src/hooks/use-studio.ts
|
|
186
|
+
function useStudio(weaverse) {
|
|
187
|
+
let { revalidate } = (0, import_react7.useRevalidator)();
|
|
188
|
+
let navigate = (0, import_react7.useNavigate)();
|
|
189
|
+
let themeSettingsStore = useThemeContext();
|
|
190
|
+
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
191
|
+
let isStudio = import_react8.isIframe && isDesignMode && weaverseHost && weaverseVersion;
|
|
192
|
+
(0, import_react9.useEffect)(() => {
|
|
193
|
+
if (isStudio) {
|
|
194
|
+
weaverse.internal = {
|
|
195
|
+
...weaverse.internal,
|
|
196
|
+
navigate,
|
|
197
|
+
revalidate,
|
|
198
|
+
themeSettingsStore
|
|
199
|
+
};
|
|
200
|
+
window.__weaverse = weaverse;
|
|
201
|
+
if (window.weaverseStudio) {
|
|
202
|
+
window.weaverseStudio.init(weaverse);
|
|
203
|
+
} else {
|
|
204
|
+
let studioSrc = `${weaverseHost}/static/studio/hydrogen/index.js?v=${weaverseVersion}`;
|
|
205
|
+
(0, import_react8.loadScript)(studioSrc);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}, [weaverse.requestInfo]);
|
|
209
|
+
}
|
|
210
|
+
|
|
214
211
|
// src/WeaverseHydrogenRoot.tsx
|
|
215
212
|
var WeaverseHydrogenRoot = (0, import_react12.memo)(
|
|
216
213
|
({
|
|
@@ -260,7 +257,7 @@ var package_default = {
|
|
|
260
257
|
name: "@weaverse/hydrogen",
|
|
261
258
|
author: "Weaverse Team",
|
|
262
259
|
description: "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
|
|
263
|
-
version: "2.
|
|
260
|
+
version: "2.7.1-pre.1",
|
|
264
261
|
license: "MIT",
|
|
265
262
|
main: "dist/index.js",
|
|
266
263
|
typings: "dist/index.d.ts",
|
|
@@ -326,11 +323,12 @@ function getWeaverseConfigs(request, env) {
|
|
|
326
323
|
PUBLIC_STORE_DOMAIN,
|
|
327
324
|
PUBLIC_STOREFRONT_API_TOKEN
|
|
328
325
|
} = env || {};
|
|
326
|
+
let envFromProcess = typeof process !== "undefined" && process.env || {};
|
|
329
327
|
let { weaverseProjectId, weaverseHost, isDesignMode, weaverseVersion, weaverseApiKey } = queries;
|
|
330
328
|
return {
|
|
331
|
-
projectId: weaverseProjectId || WEAVERSE_PROJECT_ID ||
|
|
332
|
-
weaverseHost: weaverseHost || WEAVERSE_HOST ||
|
|
333
|
-
weaverseApiKey: weaverseApiKey || WEAVERSE_API_KEY ||
|
|
329
|
+
projectId: weaverseProjectId || WEAVERSE_PROJECT_ID || envFromProcess.WEAVERSE_PROJECT_ID || "",
|
|
330
|
+
weaverseHost: weaverseHost || WEAVERSE_HOST || envFromProcess.WEAVERSE_HOST || "https://weaverse.io",
|
|
331
|
+
weaverseApiKey: weaverseApiKey || WEAVERSE_API_KEY || envFromProcess.WEAVERSE_API_KEY || "",
|
|
334
332
|
weaverseVersion: weaverseVersion || "",
|
|
335
333
|
isDesignMode: isDesignMode || false,
|
|
336
334
|
publicEnv: {
|
|
@@ -341,7 +339,6 @@ function getWeaverseConfigs(request, env) {
|
|
|
341
339
|
}
|
|
342
340
|
|
|
343
341
|
// src/weaverse-client.ts
|
|
344
|
-
var CACHE_HITS_KEY = "https://weaverse.io/__CACHE_HITS_COUNT__";
|
|
345
342
|
var WeaverseClient = class {
|
|
346
343
|
API = "api/public/project";
|
|
347
344
|
clientVersion = package_default.version;
|
|
@@ -401,36 +398,49 @@ var WeaverseClient = class {
|
|
|
401
398
|
...reqInit
|
|
402
399
|
} = options;
|
|
403
400
|
let res = this.withCache(cacheKey, strategy, async () => {
|
|
404
|
-
let
|
|
401
|
+
let cacheControlHeader = (0, import_hydrogen.generateCacheControlHeader)(strategy);
|
|
402
|
+
console.log("cacheControlHeader1", cacheControlHeader);
|
|
403
|
+
let response = await fetch(url, { ...reqInit, headers: {
|
|
404
|
+
"Cache-Control": cacheControlHeader,
|
|
405
|
+
...reqInit.headers
|
|
406
|
+
} });
|
|
405
407
|
if (!response.ok) {
|
|
406
408
|
let error = await response.text();
|
|
407
409
|
let { status, statusText } = response;
|
|
408
410
|
throw new Error(`${status} ${statusText} ${error}`);
|
|
409
|
-
} else {
|
|
410
|
-
if (!url.includes("/configs")) {
|
|
411
|
-
await this.resetCacheHits().catch(console.error);
|
|
412
|
-
}
|
|
413
411
|
}
|
|
414
412
|
return await response.json();
|
|
415
413
|
});
|
|
416
414
|
return res;
|
|
417
415
|
};
|
|
418
|
-
incrementCacheHits = async () => {
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
416
|
+
// incrementCacheHits = async () => {
|
|
417
|
+
// if (!this.cache) {
|
|
418
|
+
// return '1'
|
|
419
|
+
// }
|
|
420
|
+
// // Increment the cacheHits count in the cache
|
|
421
|
+
// const currentHitsResponse = await this.cache.match(CACHE_HITS_KEY)
|
|
422
|
+
// const currentHits = currentHitsResponse
|
|
423
|
+
// ? parseInt(await currentHitsResponse.text())
|
|
424
|
+
// : 0
|
|
425
|
+
// const newHitsCount = currentHits + 1
|
|
426
|
+
// const newHitsResponse = new Response(newHitsCount.toString(), {
|
|
427
|
+
// headers: {
|
|
428
|
+
// 'Cache-Control': 'max-age=3600',
|
|
429
|
+
// },
|
|
430
|
+
// })
|
|
431
|
+
//
|
|
432
|
+
// await this.cache.put(CACHE_HITS_KEY, newHitsResponse)
|
|
433
|
+
//
|
|
434
|
+
// return newHitsCount.toString()
|
|
435
|
+
// }
|
|
436
|
+
// resetCacheHits = async () => {
|
|
437
|
+
// if (!this.cache) {
|
|
438
|
+
// return
|
|
439
|
+
// }
|
|
440
|
+
// // Reset the cacheHits count in the cache
|
|
441
|
+
// const resetHitsResponse = new Response('0')
|
|
442
|
+
// await this.cache.put(CACHE_HITS_KEY, resetHitsResponse)
|
|
443
|
+
// }
|
|
434
444
|
loadThemeSettings = async (strategy) => {
|
|
435
445
|
try {
|
|
436
446
|
let { API, configs } = this;
|
|
@@ -504,16 +514,9 @@ var WeaverseClient = class {
|
|
|
504
514
|
if (isDesignMode) {
|
|
505
515
|
payload = await fetch(url, reqInit).then((res) => res.json());
|
|
506
516
|
} else {
|
|
507
|
-
let cacheHitsToSend = await this.incrementCacheHits().catch(
|
|
508
|
-
console.error
|
|
509
|
-
);
|
|
510
|
-
let headers = {
|
|
511
|
-
"X-Cache-Hits": cacheHitsToSend || "0"
|
|
512
|
-
// Send cache hits as a custom header
|
|
513
|
-
};
|
|
514
517
|
payload = await this.fetchWithCache(url, {
|
|
515
518
|
...reqInit,
|
|
516
|
-
headers,
|
|
519
|
+
// headers,
|
|
517
520
|
strategy
|
|
518
521
|
});
|
|
519
522
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -83,41 +83,6 @@ import { useEffect } from "react";
|
|
|
83
83
|
|
|
84
84
|
// src/hooks/use-theme-context.ts
|
|
85
85
|
import { useContext } from "react";
|
|
86
|
-
function useThemeContext() {
|
|
87
|
-
let themeContext = useContext(ThemeProvider);
|
|
88
|
-
if (!themeContext) {
|
|
89
|
-
throw new Error(
|
|
90
|
-
`useThemeContext must be used within a ThemeProvider. Make sure to wrap your app in the withWeaverse HoC.`
|
|
91
|
-
);
|
|
92
|
-
}
|
|
93
|
-
return themeContext;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
// src/hooks/use-studio.ts
|
|
97
|
-
function useStudio(weaverse) {
|
|
98
|
-
let { revalidate } = useRevalidator();
|
|
99
|
-
let navigate = useNavigate();
|
|
100
|
-
let themeSettingsStore = useThemeContext();
|
|
101
|
-
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
102
|
-
let isStudio = isIframe && isDesignMode && weaverseHost && weaverseVersion;
|
|
103
|
-
useEffect(() => {
|
|
104
|
-
if (isStudio) {
|
|
105
|
-
weaverse.internal = {
|
|
106
|
-
...weaverse.internal,
|
|
107
|
-
navigate,
|
|
108
|
-
revalidate,
|
|
109
|
-
themeSettingsStore
|
|
110
|
-
};
|
|
111
|
-
window.__weaverse = weaverse;
|
|
112
|
-
if (window.weaverseStudio) {
|
|
113
|
-
window.weaverseStudio.init(weaverse);
|
|
114
|
-
} else {
|
|
115
|
-
let studioSrc = `${weaverseHost}/static/studio/hydrogen/index.js?v=${weaverseVersion}`;
|
|
116
|
-
loadScript(studioSrc);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}, [weaverse.requestInfo]);
|
|
120
|
-
}
|
|
121
86
|
|
|
122
87
|
// src/hooks/use-theme-settings.ts
|
|
123
88
|
import { useSyncExternalStore } from "react";
|
|
@@ -177,6 +142,38 @@ function useThemeSettings() {
|
|
|
177
142
|
return settings;
|
|
178
143
|
}
|
|
179
144
|
|
|
145
|
+
// src/hooks/use-theme-context.ts
|
|
146
|
+
function useThemeContext() {
|
|
147
|
+
let themeContext = useContext(ThemeProvider);
|
|
148
|
+
return themeContext || new ThemeSettingsStore({ theme: {} });
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
// src/hooks/use-studio.ts
|
|
152
|
+
function useStudio(weaverse) {
|
|
153
|
+
let { revalidate } = useRevalidator();
|
|
154
|
+
let navigate = useNavigate();
|
|
155
|
+
let themeSettingsStore = useThemeContext();
|
|
156
|
+
let { isDesignMode, weaverseHost, weaverseVersion } = weaverse;
|
|
157
|
+
let isStudio = isIframe && isDesignMode && weaverseHost && weaverseVersion;
|
|
158
|
+
useEffect(() => {
|
|
159
|
+
if (isStudio) {
|
|
160
|
+
weaverse.internal = {
|
|
161
|
+
...weaverse.internal,
|
|
162
|
+
navigate,
|
|
163
|
+
revalidate,
|
|
164
|
+
themeSettingsStore
|
|
165
|
+
};
|
|
166
|
+
window.__weaverse = weaverse;
|
|
167
|
+
if (window.weaverseStudio) {
|
|
168
|
+
window.weaverseStudio.init(weaverse);
|
|
169
|
+
} else {
|
|
170
|
+
let studioSrc = `${weaverseHost}/static/studio/hydrogen/index.js?v=${weaverseVersion}`;
|
|
171
|
+
loadScript(studioSrc);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}, [weaverse.requestInfo]);
|
|
175
|
+
}
|
|
176
|
+
|
|
180
177
|
// src/WeaverseHydrogenRoot.tsx
|
|
181
178
|
var WeaverseHydrogenRoot = memo(
|
|
182
179
|
({
|
|
@@ -219,14 +216,14 @@ function FallbackError({ error }) {
|
|
|
219
216
|
}
|
|
220
217
|
|
|
221
218
|
// src/weaverse-client.ts
|
|
222
|
-
import { createWithCache } from "@shopify/hydrogen";
|
|
219
|
+
import { createWithCache, generateCacheControlHeader } from "@shopify/hydrogen";
|
|
223
220
|
|
|
224
221
|
// package.json
|
|
225
222
|
var package_default = {
|
|
226
223
|
name: "@weaverse/hydrogen",
|
|
227
224
|
author: "Weaverse Team",
|
|
228
225
|
description: "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
|
|
229
|
-
version: "2.
|
|
226
|
+
version: "2.7.1-pre.1",
|
|
230
227
|
license: "MIT",
|
|
231
228
|
main: "dist/index.js",
|
|
232
229
|
typings: "dist/index.d.ts",
|
|
@@ -292,11 +289,12 @@ function getWeaverseConfigs(request, env) {
|
|
|
292
289
|
PUBLIC_STORE_DOMAIN,
|
|
293
290
|
PUBLIC_STOREFRONT_API_TOKEN
|
|
294
291
|
} = env || {};
|
|
292
|
+
let envFromProcess = typeof process !== "undefined" && process.env || {};
|
|
295
293
|
let { weaverseProjectId, weaverseHost, isDesignMode, weaverseVersion, weaverseApiKey } = queries;
|
|
296
294
|
return {
|
|
297
|
-
projectId: weaverseProjectId || WEAVERSE_PROJECT_ID ||
|
|
298
|
-
weaverseHost: weaverseHost || WEAVERSE_HOST ||
|
|
299
|
-
weaverseApiKey: weaverseApiKey || WEAVERSE_API_KEY ||
|
|
295
|
+
projectId: weaverseProjectId || WEAVERSE_PROJECT_ID || envFromProcess.WEAVERSE_PROJECT_ID || "",
|
|
296
|
+
weaverseHost: weaverseHost || WEAVERSE_HOST || envFromProcess.WEAVERSE_HOST || "https://weaverse.io",
|
|
297
|
+
weaverseApiKey: weaverseApiKey || WEAVERSE_API_KEY || envFromProcess.WEAVERSE_API_KEY || "",
|
|
300
298
|
weaverseVersion: weaverseVersion || "",
|
|
301
299
|
isDesignMode: isDesignMode || false,
|
|
302
300
|
publicEnv: {
|
|
@@ -307,7 +305,6 @@ function getWeaverseConfigs(request, env) {
|
|
|
307
305
|
}
|
|
308
306
|
|
|
309
307
|
// src/weaverse-client.ts
|
|
310
|
-
var CACHE_HITS_KEY = "https://weaverse.io/__CACHE_HITS_COUNT__";
|
|
311
308
|
var WeaverseClient = class {
|
|
312
309
|
API = "api/public/project";
|
|
313
310
|
clientVersion = package_default.version;
|
|
@@ -367,36 +364,49 @@ var WeaverseClient = class {
|
|
|
367
364
|
...reqInit
|
|
368
365
|
} = options;
|
|
369
366
|
let res = this.withCache(cacheKey, strategy, async () => {
|
|
370
|
-
let
|
|
367
|
+
let cacheControlHeader = generateCacheControlHeader(strategy);
|
|
368
|
+
console.log("cacheControlHeader1", cacheControlHeader);
|
|
369
|
+
let response = await fetch(url, { ...reqInit, headers: {
|
|
370
|
+
"Cache-Control": cacheControlHeader,
|
|
371
|
+
...reqInit.headers
|
|
372
|
+
} });
|
|
371
373
|
if (!response.ok) {
|
|
372
374
|
let error = await response.text();
|
|
373
375
|
let { status, statusText } = response;
|
|
374
376
|
throw new Error(`${status} ${statusText} ${error}`);
|
|
375
|
-
} else {
|
|
376
|
-
if (!url.includes("/configs")) {
|
|
377
|
-
await this.resetCacheHits().catch(console.error);
|
|
378
|
-
}
|
|
379
377
|
}
|
|
380
378
|
return await response.json();
|
|
381
379
|
});
|
|
382
380
|
return res;
|
|
383
381
|
};
|
|
384
|
-
incrementCacheHits = async () => {
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
382
|
+
// incrementCacheHits = async () => {
|
|
383
|
+
// if (!this.cache) {
|
|
384
|
+
// return '1'
|
|
385
|
+
// }
|
|
386
|
+
// // Increment the cacheHits count in the cache
|
|
387
|
+
// const currentHitsResponse = await this.cache.match(CACHE_HITS_KEY)
|
|
388
|
+
// const currentHits = currentHitsResponse
|
|
389
|
+
// ? parseInt(await currentHitsResponse.text())
|
|
390
|
+
// : 0
|
|
391
|
+
// const newHitsCount = currentHits + 1
|
|
392
|
+
// const newHitsResponse = new Response(newHitsCount.toString(), {
|
|
393
|
+
// headers: {
|
|
394
|
+
// 'Cache-Control': 'max-age=3600',
|
|
395
|
+
// },
|
|
396
|
+
// })
|
|
397
|
+
//
|
|
398
|
+
// await this.cache.put(CACHE_HITS_KEY, newHitsResponse)
|
|
399
|
+
//
|
|
400
|
+
// return newHitsCount.toString()
|
|
401
|
+
// }
|
|
402
|
+
// resetCacheHits = async () => {
|
|
403
|
+
// if (!this.cache) {
|
|
404
|
+
// return
|
|
405
|
+
// }
|
|
406
|
+
// // Reset the cacheHits count in the cache
|
|
407
|
+
// const resetHitsResponse = new Response('0')
|
|
408
|
+
// await this.cache.put(CACHE_HITS_KEY, resetHitsResponse)
|
|
409
|
+
// }
|
|
400
410
|
loadThemeSettings = async (strategy) => {
|
|
401
411
|
try {
|
|
402
412
|
let { API, configs } = this;
|
|
@@ -470,16 +480,9 @@ var WeaverseClient = class {
|
|
|
470
480
|
if (isDesignMode) {
|
|
471
481
|
payload = await fetch(url, reqInit).then((res) => res.json());
|
|
472
482
|
} else {
|
|
473
|
-
let cacheHitsToSend = await this.incrementCacheHits().catch(
|
|
474
|
-
console.error
|
|
475
|
-
);
|
|
476
|
-
let headers = {
|
|
477
|
-
"X-Cache-Hits": cacheHitsToSend || "0"
|
|
478
|
-
// Send cache hits as a custom header
|
|
479
|
-
};
|
|
480
483
|
payload = await this.fetchWithCache(url, {
|
|
481
484
|
...reqInit,
|
|
482
|
-
headers,
|
|
485
|
+
// headers,
|
|
483
486
|
strategy
|
|
484
487
|
});
|
|
485
488
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@weaverse/hydrogen",
|
|
3
3
|
"author": "Weaverse Team",
|
|
4
4
|
"description": "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
|
|
5
|
-
"version": "2.7.
|
|
5
|
+
"version": "2.7.1-pre.1",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"typings": "dist/index.d.ts",
|