this repo has no description

Group patched webpack modules by the first 3 chars of the ID such that it does not make the debugger unusably laggy when using "patch all modules" in spacepack

uwx da6a944f b39af378

Changed files
+5 -4
packages
core
src
core-extensions
src
moonbase
webpackModules
spacepack
webpackModules
+1 -1
packages/core-extensions/src/moonbase/webpackModules/crashScreen.tsx
···
import { ConfigExtension, DetectedExtension } from "@moonlight-mod/types";
import DiscoveryClasses from "@moonlight-mod/wp/discord/modules/discovery/web/Discovery.css";
-
const MODULE_REGEX = /Webpack-Module-(\d+)/g;
+
const MODULE_REGEX = /Webpack-Module-(\d+)\/(\d+)/g;
const logger = moonlight.getLogger("moonbase/crashScreen");
+1 -1
packages/core-extensions/src/spacepack/webpackModules/spacepack.ts
···
"module",
"exports",
"require",
-
`(${funcStr}).apply(this, arguments)\n` + `//# sourceURL=Webpack-Module-${module}`
+
`(${funcStr}).apply(this, arguments)\n` + `//# sourceURL=Webpack-Module-${module.slice(0, 3)}/${module}`
) as WebpackModuleFunc;
},
+3 -2
packages/core/src/patch.ts
···
const wrapped =
`(${replaced}).apply(this, arguments)\n` +
`// Patched by moonlight: ${patchedStr}\n` +
-
`//# sourceURL=Webpack-Module-${id}`;
+
`//# sourceURL=Webpack-Module-${id.slice(0, 3)}/${id}`;
try {
const func = new Function("module", "exports", "require", wrapped) as WebpackModuleFunc;
···
if (moonlightNode.config.patchAll === true) {
if ((typeof id !== "string" || !id.includes("_")) && !entry[id].__moonlight) {
-
const wrapped = `(${moduleCache[id]}).apply(this, arguments)\n` + `//# sourceURL=Webpack-Module-${id}`;
+
const wrapped =
+
`(${moduleCache[id]}).apply(this, arguments)\n` + `//# sourceURL=Webpack-Module-${id.slice(0, 3)}/${id}`;
entry[id] = new Function("module", "exports", "require", wrapped) as WebpackModuleFunc;
entry[id].__moonlight = true;
}