From d3ee3295eb9acab31b9c7a642a3b98c645dbb779 Mon Sep 17 00:00:00 2001 From: Steven Vandevelde Date: Wed, 9 Aug 2023 13:36:10 +0200 Subject: [PATCH] Fix Buffer issues during processing --- Justfile | 6 ++++-- src/Javascript/processing.ts | 7 +++++-- system/Js/node-shims.js | 10 ++++++++++ 3 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 system/Js/node-shims.js diff --git a/Justfile b/Justfile index 9b6c4924..a6cdb625 100644 --- a/Justfile +++ b/Justfile @@ -104,7 +104,8 @@ js: {{ESBUILD}} ./src/Javascript/Brain/index.ts \ --outdir={{BUILD_DIR}}/js/brain/ \ --splitting \ - --alias:brain.elm.js={{BUILD_DIR}}/js/brain.elm.js + --alias:brain.elm.js={{BUILD_DIR}}/js/brain.elm.js \ + --inject:./system/Js/node-shims.js # Main {{ESBUILD}} ./src/Javascript/index.ts \ @@ -132,7 +133,8 @@ js-prod: --outdir={{BUILD_DIR}}/js/brain/ \ --splitting \ --minify \ - --alias:brain.elm.js={{BUILD_DIR}}/js/brain.elm.js + --alias:brain.elm.js={{BUILD_DIR}}/js/brain.elm.js \ + --inject:./system/Js/node-shims.js # Main {{ESBUILD}} ./src/Javascript/index.ts \ diff --git a/src/Javascript/processing.ts b/src/Javascript/processing.ts index 48aa8346..e4e0b1c2 100644 --- a/src/Javascript/processing.ts +++ b/src/Javascript/processing.ts @@ -78,8 +78,11 @@ export function getTags(headUrl, getUrl, filename, options) { tokenizer.fileInfo.mimeType = fileMime tokenizer.fileInfo.url = getUrl - tokenizer.rangeRequestClient.url = getUrl - tokenizer.rangeRequestClient.resolvedUrl = undefined + + if (tokenizer.rangeRequestClient) { + tokenizer.rangeRequestClient.url = getUrl + tokenizer.rangeRequestClient.resolvedUrl = undefined + } return musicMetadata.parseFromTokenizer( tokenizer, diff --git a/system/Js/node-shims.js b/system/Js/node-shims.js new file mode 100644 index 00000000..41a0baf0 --- /dev/null +++ b/system/Js/node-shims.js @@ -0,0 +1,10 @@ +import BufferPolyfill from "buffer/" + +export let Buffer = BufferPolyfill.Buffer +export let global = globalThis +export let process = { env: { NODE_DEBUG: false } } +export let localStorage = globalThis.localStorage || { + getItem: () => null, + setItem: () => null, + removeItem: () => null +} -- 2.51.2