UNPKG

casterly

Version:
28 lines (27 loc) 1.25 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const paths_1 = __importDefault(require("../../paths")); const PLUGIN_NAME = 'RouteChunksRegisterPlugin'; const ROUTES_REGISTER_LOADER = require.resolve('../loaders/routes-register-loader'); class RouteChunksRegisterPlugin { apply(compiler) { compiler.hooks.compilation.tap(PLUGIN_NAME, (_, { normalModuleFactory }) => { normalModuleFactory.hooks.module.tap({ name: PLUGIN_NAME, stage: Infinity }, (mod, _, resolveData) => { const module = mod; const issuer = resolveData.contextInfo.issuer; if (issuer === paths_1.default.appRoutesJs && module.userRequest.indexOf(paths_1.default.appSrc) > -1 && !module.loaders.find((loader) => loader.loader === ROUTES_REGISTER_LOADER)) { module.loaders.push({ loader: ROUTES_REGISTER_LOADER, }); } return module; }); }); } } exports.default = RouteChunksRegisterPlugin;