UNPKG

casterly

Version:
34 lines (33 loc) 1.54 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const path_1 = __importDefault(require("path")); // @ts-ignore const ImportDependency_1 = __importDefault(require("webpack/lib/dependencies/ImportDependency")); const paths_1 = __importDefault(require("../../../paths")); class RouteImportDependencyTemplate extends ImportDependency_1.default.Template { constructor(parentCompilation) { super(); this.parentCompilation = parentCompilation; } apply(dependency, source, templateContext) { const { moduleGraph } = templateContext; const parentModule = moduleGraph.getParentModule(dependency); const parentUserRequest = parentModule.userRequest; if (parentUserRequest !== paths_1.default.appRoutesJs) { return super.apply(dependency, source, templateContext); } const module = moduleGraph.getResolvedModule(dependency); const userRequest = module.userRequest; const moduleId = '.' + path_1.default.sep + path_1.default.relative(this.parentCompilation.compiler.context, userRequest); const start = dependency.range[0]; const end = dependency.range[1] - 1; // @ts-ignore: last parameter is optional source.replace(start, end, JSON.stringify(moduleId.toString())); } } exports.default = RouteImportDependencyTemplate;