this repo has no description
1import { loadProcessedExtensions } from "@moonlight-mod/core/extension/loader"; 2import { installWebpackPatcher, onModuleLoad, registerPatch, registerWebpackModule } from "@moonlight-mod/core/patch"; 3import { constants, MoonlightBranch } from "@moonlight-mod/types"; 4import { installStyles } from "@moonlight-mod/core/styles"; 5import Logger, { initLogger } from "@moonlight-mod/core/util/logger"; 6import LunAST from "@moonlight-mod/lunast"; 7import Moonmap from "@moonlight-mod/moonmap"; 8import loadMappings from "@moonlight-mod/mappings"; 9import { createEventEmitter } from "@moonlight-mod/core/util/event"; 10import { WebEventPayloads, WebEventType } from "@moonlight-mod/types/core/event"; 11 12async function load() { 13 delete window._moonlightWebLoad; 14 initLogger(moonlightNode.config); 15 const logger = new Logger("web-preload"); 16 17 window.moonlight = { 18 patched: new Map(), 19 unpatched: new Set(), 20 pendingModules: new Set(), 21 enabledExtensions: new Set(), 22 23 events: createEventEmitter<WebEventType, WebEventPayloads>(), 24 patchingInternals: { 25 onModuleLoad, 26 registerPatch, 27 registerWebpackModule 28 }, 29 localStorage: window.localStorage, 30 31 version: MOONLIGHT_VERSION, 32 branch: MOONLIGHT_BRANCH as MoonlightBranch, 33 apiLevel: constants.apiLevel, 34 35 getConfig: moonlightNode.getConfig.bind(moonlightNode), 36 getConfigOption: moonlightNode.getConfigOption.bind(moonlightNode), 37 setConfigOption: moonlightNode.setConfigOption.bind(moonlightNode), 38 writeConfig: moonlightNode.writeConfig.bind(moonlightNode), 39 40 getNatives: moonlightNode.getNatives.bind(moonlightNode), 41 getLogger(id) { 42 return new Logger(id); 43 }, 44 45 lunast: new LunAST(), 46 moonmap: new Moonmap() 47 }; 48 49 try { 50 loadMappings(window.moonlight.moonmap, window.moonlight.lunast); 51 await loadProcessedExtensions(moonlightNode.processedExtensions); 52 await installWebpackPatcher(); 53 } catch (e) { 54 logger.error("Error setting up web-preload", e); 55 } 56 57 if (document.readyState === "complete") { 58 installStyles(); 59 } else { 60 window.addEventListener("load", installStyles); 61 } 62} 63 64window._moonlightWebLoad = load;