@bookshop/hugo-engine 3.4.0-beta.3 → 3.4.0-beta.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.
Files changed (20) hide show
  1. package/.nyc_output/{344d16a6-acc4-4349-b4c7-ffdc41d3e64f.json → 1d5809f2-cba1-446b-bc0b-63d23a5c8b40.json} +0 -0
  2. package/.nyc_output/{ad191300-a822-422a-892c-f6bdd9f65622.json → 273b516c-98df-4cd5-ae7c-0a3e443463ad.json} +0 -0
  3. package/.nyc_output/{b63e9a5b-2daa-4333-9cbc-511e31b8dec0.json → 6f96ab1c-b912-46da-bc10-4f63fdb94fa1.json} +0 -0
  4. package/.nyc_output/{c1702c73-10b3-4031-a62b-78de0f5a0eda.json → 75cca8a8-62fb-45f2-abfc-b9b1eb7092fa.json} +0 -0
  5. package/.nyc_output/{d9c4bafc-f898-4591-b134-c70616d033a8.json → e639ed1a-a856-4b76-858a-dcea8f30f006.json} +0 -0
  6. package/.nyc_output/processinfo/1d5809f2-cba1-446b-bc0b-63d23a5c8b40.json +1 -0
  7. package/.nyc_output/processinfo/273b516c-98df-4cd5-ae7c-0a3e443463ad.json +1 -0
  8. package/.nyc_output/processinfo/6f96ab1c-b912-46da-bc10-4f63fdb94fa1.json +1 -0
  9. package/.nyc_output/processinfo/75cca8a8-62fb-45f2-abfc-b9b1eb7092fa.json +1 -0
  10. package/.nyc_output/processinfo/e639ed1a-a856-4b76-858a-dcea8f30f006.json +1 -0
  11. package/.nyc_output/processinfo/index.json +1 -1
  12. package/full-hugo-renderer/hugo_renderer.wasm +0 -0
  13. package/full-hugo-renderer/hugo_renderer.wasm.gz +0 -0
  14. package/lib/engine.js +25 -8
  15. package/package.json +2 -2
  16. package/.nyc_output/processinfo/344d16a6-acc4-4349-b4c7-ffdc41d3e64f.json +0 -1
  17. package/.nyc_output/processinfo/ad191300-a822-422a-892c-f6bdd9f65622.json +0 -1
  18. package/.nyc_output/processinfo/b63e9a5b-2daa-4333-9cbc-511e31b8dec0.json +0 -1
  19. package/.nyc_output/processinfo/c1702c73-10b3-4031-a62b-78de0f5a0eda.json +0 -1
  20. package/.nyc_output/processinfo/d9c4bafc-f898-4591-b134-c70616d033a8.json +0 -1
@@ -0,0 +1 @@
1
+ {"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","pid":5443,"argv":["/opt/hostedtoolcache/node/16.19.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1675127175845,"ppid":5426,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/1d5809f2-cba1-446b-bc0b-63d23a5c8b40.json","externalId":"","uuid":"1d5809f2-cba1-446b-bc0b-63d23a5c8b40","files":[]}
@@ -0,0 +1 @@
1
+ {"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","pid":5459,"argv":["/opt/hostedtoolcache/node/16.19.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1675127176251,"ppid":5426,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/273b516c-98df-4cd5-ae7c-0a3e443463ad.json","externalId":"","uuid":"273b516c-98df-4cd5-ae7c-0a3e443463ad","files":[]}
@@ -0,0 +1 @@
1
+ {"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","pid":5465,"argv":["/opt/hostedtoolcache/node/16.19.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1675127176263,"ppid":5426,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/6f96ab1c-b912-46da-bc10-4f63fdb94fa1.json","externalId":"","uuid":"6f96ab1c-b912-46da-bc10-4f63fdb94fa1","files":[]}
@@ -0,0 +1 @@
1
+ {"parent":null,"pid":5426,"argv":["/opt/hostedtoolcache/node/16.19.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/cli.js","-v"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1675127175377,"ppid":5415,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/75cca8a8-62fb-45f2-abfc-b9b1eb7092fa.json","externalId":"","uuid":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","files":[]}
@@ -0,0 +1 @@
1
+ {"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","pid":5437,"argv":["/opt/hostedtoolcache/node/16.19.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1675127175838,"ppid":5426,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/e639ed1a-a856-4b76-858a-dcea8f30f006.json","externalId":"","uuid":"e639ed1a-a856-4b76-858a-dcea8f30f006","files":[]}
@@ -1 +1 @@
1
- {"processes":{"344d16a6-acc4-4349-b4c7-ffdc41d3e64f":{"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","children":[]},"ad191300-a822-422a-892c-f6bdd9f65622":{"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","children":[]},"b63e9a5b-2daa-4333-9cbc-511e31b8dec0":{"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","children":[]},"c1702c73-10b3-4031-a62b-78de0f5a0eda":{"parent":null,"children":["344d16a6-acc4-4349-b4c7-ffdc41d3e64f","ad191300-a822-422a-892c-f6bdd9f65622","b63e9a5b-2daa-4333-9cbc-511e31b8dec0","d9c4bafc-f898-4591-b134-c70616d033a8"]},"d9c4bafc-f898-4591-b134-c70616d033a8":{"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","children":[]}},"files":{},"externalIds":{}}
1
+ {"processes":{"1d5809f2-cba1-446b-bc0b-63d23a5c8b40":{"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","children":[]},"273b516c-98df-4cd5-ae7c-0a3e443463ad":{"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","children":[]},"6f96ab1c-b912-46da-bc10-4f63fdb94fa1":{"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","children":[]},"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa":{"parent":null,"children":["1d5809f2-cba1-446b-bc0b-63d23a5c8b40","273b516c-98df-4cd5-ae7c-0a3e443463ad","6f96ab1c-b912-46da-bc10-4f63fdb94fa1","e639ed1a-a856-4b76-858a-dcea8f30f006"]},"e639ed1a-a856-4b76-858a-dcea8f30f006":{"parent":"75cca8a8-62fb-45f2-abfc-b9b1eb7092fa","children":[]}},"files":{},"externalIds":{}}
package/lib/engine.js CHANGED
@@ -17,14 +17,14 @@ const dig = (obj, path) => {
17
17
 
18
18
  let mapHugoVariablesToParams = (obj, path) => {
19
19
  let resolved = {};
20
- for (let [k,v] of Object.entries(obj)) {
20
+ for (let [k, v] of Object.entries(obj)) {
21
21
  if (k.startsWith('$')) {
22
22
  const remapped = `__bksh_${k.substring(1)}`;
23
23
  obj[remapped] = v;
24
24
  resolved[k] = `${path}.${remapped}`;
25
25
  } else {
26
- if (typeof v === 'object' && !Array.isArray(v)) {
27
- resolved = {...resolved, ...mapHugoVariablesToParams(v, `${path}.${k}`)}
26
+ if (v && typeof v === 'object' && !Array.isArray(v)) {
27
+ resolved = { ...resolved, ...mapHugoVariablesToParams(v, `${path}.${k}`) }
28
28
  }
29
29
  }
30
30
  }
@@ -83,10 +83,27 @@ export class Engine {
83
83
 
84
84
  async initializeLocalCompressedHugo() {
85
85
  try {
86
+
87
+ let prefetched = {};
88
+ if (typeof window !== "undefined" && window?.CloudCannon && window?.CloudCannon?.prefetchedFiles) {
89
+ prefetched = await window.CloudCannon.prefetchedFiles?.();
90
+ this.availablePrefetchKeys = Object.keys(prefetched);
91
+ }
92
+
86
93
  const go = new Go();
87
94
  const compressedWasmOrigin = this.origin.replace(/\/[^\.\/]+\.(min\.)?js/, compressedHugoWasm.replace(/^\./, ''));
88
- const compressedResponse = await fetch(compressedWasmOrigin);
89
- const compressedBuffer = await compressedResponse.arrayBuffer();
95
+ const compressedWasmPath = (new URL(compressedWasmOrigin)).pathname;
96
+
97
+ let compressedBuffer;
98
+ if (prefetched[compressedWasmPath]) {
99
+ compressedBuffer = prefetched[compressedWasmPath]?.arrayBuffer();
100
+ this.loadedFrom = "prefetch";
101
+ } else {
102
+ const compressedResponse = await fetch(compressedWasmOrigin);
103
+ compressedBuffer = await compressedResponse.arrayBuffer();
104
+ this.loadedFrom = "network";
105
+ }
106
+
90
107
  const renderer = gunzipSync(new Uint8Array(compressedBuffer));
91
108
 
92
109
  // Check the magic word at the start of the buffer as a way to verify the CDN download worked.
@@ -266,8 +283,8 @@ export class Engine {
266
283
  let normalized = this.normalize(str);
267
284
  if (typeof normalized === 'object') {
268
285
  logger?.log?.(`Digging into the object ${JSON.stringify(normalized)}`);
269
- const process = async (obj) => {
270
- for (const [k,v] of Object.entries(obj)) {
286
+ const process = async (obj) => {
287
+ for (const [k, v] of Object.entries(obj)) {
271
288
  if (typeof v === "string") {
272
289
  if (/^".*"$/.test(v)) {
273
290
  // Normalized strings look like "\"string\""
@@ -299,7 +316,7 @@ export class Engine {
299
316
  })
300
317
 
301
318
  const variable_pairs = mapHugoVariablesToParams(full_props, ".Params.full_props");
302
- const variable_decl = Object.entries(variable_pairs).map(([k,v]) => {
319
+ const variable_decl = Object.entries(variable_pairs).map(([k, v]) => {
303
320
  return `{{ ${k} := ${v} }}`
304
321
  }).join('');
305
322
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bookshop/hugo-engine",
3
3
  "packageManager": "yarn@3.0.0",
4
- "version": "3.4.0-beta.3",
4
+ "version": "3.4.0-beta.5",
5
5
  "description": "Bookshop frontend Hugo renderer",
6
6
  "type": "module",
7
7
  "sideEffects": false,
@@ -30,7 +30,7 @@
30
30
  "nyc": "^15.1.0"
31
31
  },
32
32
  "dependencies": {
33
- "@bookshop/helpers": "3.4.0-beta.3",
33
+ "@bookshop/helpers": "3.4.0-beta.5",
34
34
  "esbuild": "^0.13.10",
35
35
  "fflate": "^0.7.3",
36
36
  "liquidjs": "9.28.0"
@@ -1 +0,0 @@
1
- {"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","pid":5464,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1671138230217,"ppid":5424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/344d16a6-acc4-4349-b4c7-ffdc41d3e64f.json","externalId":"","uuid":"344d16a6-acc4-4349-b4c7-ffdc41d3e64f","files":[]}
@@ -1 +0,0 @@
1
- {"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","pid":5441,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1671138229848,"ppid":5424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/ad191300-a822-422a-892c-f6bdd9f65622.json","externalId":"","uuid":"ad191300-a822-422a-892c-f6bdd9f65622","files":[]}
@@ -1 +0,0 @@
1
- {"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","pid":5435,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1671138229841,"ppid":5424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/b63e9a5b-2daa-4333-9cbc-511e31b8dec0.json","externalId":"","uuid":"b63e9a5b-2daa-4333-9cbc-511e31b8dec0","files":[]}
@@ -1 +0,0 @@
1
- {"parent":null,"pid":5424,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/cli.js","-v"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1671138229402,"ppid":5413,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/c1702c73-10b3-4031-a62b-78de0f5a0eda.json","externalId":"","uuid":"c1702c73-10b3-4031-a62b-78de0f5a0eda","files":[]}
@@ -1 +0,0 @@
1
- {"parent":"c1702c73-10b3-4031-a62b-78de0f5a0eda","pid":5457,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1671138230206,"ppid":5424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/d9c4bafc-f898-4591-b134-c70616d033a8.json","externalId":"","uuid":"d9c4bafc-f898-4591-b134-c70616d033a8","files":[]}