๐Ÿ“ฆ hediet / node-reload

๐Ÿ“„ initializeHotReloadExport.ts ยท 16 lines
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16import { moduleSource } from "./hotReloadExportedItem";
import { HotReloadService } from "./HotReloadService";

export function initializeHotReloadExport(service: HotReloadService): void {
    service.onTrackedModuleExportsLoaded(data => {
        if (typeof data.module.exports !== 'object') {
            return;
        }
        for (const [key, val] of Object.entries(data.module.exports)) {
            if ((typeof val === 'function' || typeof val === 'object') && val) {
                moduleSource.set(val, { module: data.module, exportName: key });
            }
        }
    });
}