| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #!/usr/bin/env node
- /* eslint-disable @typescript-eslint/no-require-imports */
- const fs = require("fs");
- const path = require("path");
- const targetDir = process.cwd();
- const sourceDir = path.resolve(__dirname, "..");
- console.log("NCore UI Kit Environment Setup Tool");
- console.log("=====================================");
- console.log(`Hedef Proje Dizini: ${targetDir}`);
- console.log("");
- // 1. .vscode/settings.json
- const sourceVscodeDir = path.join(sourceDir, ".vscode");
- const targetVscodeDir = path.join(targetDir, ".vscode");
- if (fs.existsSync(sourceVscodeDir)) {
- if (!fs.existsSync(targetVscodeDir)) {
- fs.mkdirSync(targetVscodeDir, {
- recursive: true
- });
- }
- const sourceSettings = path.join(sourceVscodeDir, "settings.json");
- const targetSettings = path.join(targetVscodeDir, "settings.json");
- if (fs.existsSync(sourceSettings)) {
- fs.copyFileSync(sourceSettings, targetSettings);
- console.log("✅ .vscode/settings.json kopyalandı.");
- }
- }
- // 2. eslint.config.mjs
- const sourceEslint = path.join(sourceDir, "eslint.config.mjs");
- const targetEslint = path.join(targetDir, "eslint.config.mjs");
- if (fs.existsSync(sourceEslint)) {
- fs.copyFileSync(sourceEslint, targetEslint);
- console.log("✅ eslint.config.mjs kopyalandı.");
- }
- // 3. eslint-local-rules
- const sourceLocalRules = path.join(sourceDir, "eslint-local-rules");
- const targetLocalRules = path.join(targetDir, "eslint-local-rules");
- if (fs.existsSync(sourceLocalRules)) {
- if (!fs.existsSync(targetLocalRules)) {
- fs.mkdirSync(targetLocalRules, {
- recursive: true
- });
- }
- // Copy all files in the directory
- const files = fs.readdirSync(sourceLocalRules);
- files.forEach(file => {
- const sourceFile = path.join(sourceLocalRules, file);
- const targetFile = path.join(targetLocalRules, file);
- if (fs.lstatSync(sourceFile).isFile()) {
- fs.copyFileSync(sourceFile, targetFile);
- }
- });
- console.log("✅ eslint-local-rules/ kopyalandı.");
- }
- // 4. tsconfig.json
- const sourceTsconfig = path.join(sourceDir, "tsconfig.json");
- const targetTsconfig = path.join(targetDir, "tsconfig.json");
- if (fs.existsSync(sourceTsconfig)) {
- fs.copyFileSync(sourceTsconfig, targetTsconfig);
- console.log("✅ tsconfig.json kopyalandı.");
- }
- console.log("");
- console.log("Kurulum tamamlandı! Lütfen package.json'ınızda aşağıdaki eklentilerin kurulu olduğundan emin olun:");
- console.log("- typescript-eslint");
- console.log("- eslint-plugin-local-rules");
- console.log("- jsonc-eslint-parser vb.");
- console.log("NCore standartlarıyla iyi kodlamalar dileriz!");
|