mirror of
https://github.com/Equicord/Equicord.git
synced 2025-06-09 14:43:03 -04:00
Reporter: Fix wrongly loading worker chunks
Also fixes duplicate patchedBy on patched modules and bumps pnpm to latest version
This commit is contained in:
parent
71ade7d658
commit
dd714ff3c2
4 changed files with 71 additions and 75 deletions
|
@ -68,7 +68,7 @@ export async function loadLazyChunks() {
|
|||
|
||||
const isWorkerAsset = await fetch(wreq.p + wreq.u(id))
|
||||
.then(r => r.text())
|
||||
.then(t => t.includes("importScripts("));
|
||||
.then(t => /importScripts\(|self\.postMessage/.test(t));
|
||||
|
||||
if (isWorkerAsset) {
|
||||
invalidChunks.add(id);
|
||||
|
@ -174,7 +174,7 @@ export async function loadLazyChunks() {
|
|||
await Promise.all(chunksLeft.map(async id => {
|
||||
const isWorkerAsset = await fetch(wreq.p + wreq.u(id))
|
||||
.then(r => r.text())
|
||||
.then(t => t.includes("importScripts("));
|
||||
.then(t => /importScripts\(|self\.postMessage/.test(t));
|
||||
|
||||
// Loads the chunk. Currently this only happens with the language packs which are loaded differently
|
||||
if (!isWorkerAsset) {
|
||||
|
|
|
@ -297,11 +297,6 @@ function updateExistingFactory(moduleFactories: AnyWebpackRequire["m"], moduleId
|
|||
}
|
||||
|
||||
if (existingFactory != null) {
|
||||
// Sanity check to make sure these factories are equal
|
||||
if (String(newFactory) !== String(existingFactory)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// If existingFactory exists in any of the Webpack instances we track, it's either wrapped in our proxy, or it has already been required.
|
||||
// In the case it is wrapped in our proxy, and the instance we are setting does not already have it, we need to make sure the instance contains our proxy too.
|
||||
if (moduleFactoriesWithFactory !== moduleFactories && existingFactory[SYM_IS_PROXIED_FACTORY]) {
|
||||
|
@ -563,8 +558,13 @@ function patchFactory(moduleId: PropertyKey, originalFactory: AnyModuleFactory):
|
|||
continue;
|
||||
}
|
||||
|
||||
const pluginsList = [...patchedBy];
|
||||
if (!patchedBy.has(patch.plugin)) {
|
||||
pluginsList.push(patch.plugin);
|
||||
}
|
||||
|
||||
code = newCode;
|
||||
patchedSource = `// Webpack Module ${String(moduleId)} - Patched by ${[...patchedBy, patch.plugin].join(", ")}\n${newCode}\n//# sourceURL=WebpackModule${String(moduleId)}`;
|
||||
patchedSource = `// Webpack Module ${String(moduleId)} - Patched by ${pluginsList.join(", ")}\n${newCode}\n//# sourceURL=WebpackModule${String(moduleId)}`;
|
||||
patchedFactory = (0, eval)(patchedSource);
|
||||
|
||||
if (!patchedBy.has(patch.plugin)) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue