UNPKG

@burnish/cli

Version:

a cli for creating vue / react / flutter projects

32 lines (31 loc) 1.5 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const fs_extra_1 = __importDefault(require("fs-extra")); const replace_1 = __importDefault(require("replace")); const path_1 = __importDefault(require("path")); const createFlutter_1 = require("./createFlutter"); // trave template and replace projectName const targetFileDisplayReplace = (projectName, flutterVersion, filePath) => { const files = fs_extra_1.default.readdirSync(filePath, 'utf-8'); files.forEach(function (filename) { let filedir = path_1.default.join(filePath, filename); if (fs_extra_1.default.statSync(filedir).isFile() && filedir.includes('.dart')) { console.log(`generate ${filedir}`); replace_1.default({ regex: flutterVersion === 'null-safety' ? createFlutter_1.COMMON_NULL_SAFETY : createFlutter_1.COMMON_WITHOUT_NULL_SAFETY, replacement: projectName, paths: [filedir], recursive: true, silent: true }); } else { if (fs_extra_1.default.statSync(filedir).isDirectory()) targetFileDisplayReplace(projectName, flutterVersion, filedir); //递归,如果是文件夹,就继续遍历该文件夹下面的文件 } }); }; exports.default = targetFileDisplayReplace;