this repo has no description
at v1.2.3 2.0 kB view raw
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 { EventPayloads, EventType } from "@moonlight-mod/types/core/event"; 11 12async function load() { 13 initLogger(moonlightNode.config); 14 const logger = new Logger("web-preload"); 15 16 window.moonlight = { 17 apiLevel: constants.apiLevel, 18 unpatched: new Set(), 19 pendingModules: new Set(), 20 enabledExtensions: new Set(), 21 events: createEventEmitter<EventType, EventPayloads>(), 22 patchingInternals: { 23 onModuleLoad, 24 registerPatch, 25 registerWebpackModule 26 }, 27 28 version: MOONLIGHT_VERSION, 29 branch: MOONLIGHT_BRANCH as MoonlightBranch, 30 31 getConfig: moonlightNode.getConfig.bind(moonlightNode), 32 getConfigOption: moonlightNode.getConfigOption.bind(moonlightNode), 33 getNatives: moonlightNode.getNatives.bind(moonlightNode), 34 getLogger(id) { 35 return new Logger(id); 36 }, 37 lunast: new LunAST(), 38 moonmap: new Moonmap() 39 }; 40 41 try { 42 loadMappings(window.moonlight.moonmap, window.moonlight.lunast); 43 await loadProcessedExtensions(moonlightNode.processedExtensions); 44 await installWebpackPatcher(); 45 } catch (e) { 46 logger.error("Error setting up web-preload", e); 47 } 48 49 if (MOONLIGHT_ENV === "web-preload") { 50 window.addEventListener("DOMContentLoaded", () => { 51 installStyles(); 52 }); 53 } else { 54 installStyles(); 55 } 56} 57 58if (MOONLIGHT_ENV === "web-preload") { 59 load(); 60} else { 61 window._moonlightBrowserLoad = load; 62}