UNPKG

@router-cli/react-router-dev

Version:

File based routing cli for react-router-dom.

36 lines (35 loc) 1.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.populateTemplate = exports.CODE_NAMING = void 0; var template_1 = require("../template"); exports.CODE_NAMING = { exportType: "export type", exportConst: "export const", never: "never", empty: "{}", pages: "pageImports", layouts: "layoutImports" }; function populateTemplate(args) { var content = template_1.template; function replaceImportObject(src, type) { if (src.length > 0) { content = content.replaceAll("".concat(exports.CODE_NAMING.exportConst, " ").concat(type, " = ").concat(exports.CODE_NAMING.empty, ";"), "".concat(exports.CODE_NAMING.exportConst, " ").concat(type, " = {\n ").concat(src.sort().join(',\n '), "\n};")); } } replaceImportObject(args.layouts.imports, exports.CODE_NAMING.layouts); replaceImportObject(args.pages.imports, exports.CODE_NAMING.pages); content = content.replace("/*imports*/", args.imports.join("\n")); content = content.replace("/*exports*/", args.exports.join("\n")); content = content.replaceAll("/*{browserType}*/", args.routerType); if (args.appRouteComponents.app) content = content.replace("app: undefined,", "app: App,"); if (args.appRouteComponents.notFound) content = content.replace("notFound: undefined,", "notFound: NotFound,"); if (args.appRouteComponents.error) content = content.replace("error: undefined,", "error: DefaultErrorComponent,"); if (args.appRouteComponents.pending) content = content.replace("pending: undefined,", "pending: DefaultPendingComponent,"); return content; } exports.populateTemplate = populateTemplate;