浏览代码

Add logging

Loris Leiva 1 年之前
父节点
当前提交
2cd1fd3574
共有 5 个文件被更改,包括 18 次插入11 次删除
  1. 9 3
      index.ts
  2. 2 1
      locales/en-US.json
  3. 2 1
      locales/fr-FR.json
  4. 1 0
      utils/getLanguage.ts
  5. 4 6
      utils/getLogs.ts

+ 9 - 3
index.ts

@@ -4,7 +4,7 @@ import * as fs from "node:fs";
 import * as path from "node:path";
 
 import { generateKeypair } from "./utils/generateKeypair";
-import { logBanner, logEnd, logErrorAndExit, logStart } from "./utils/getLogs";
+import { logBanner, logDone, logErrorAndExit, logStep } from "./utils/getLogs";
 import { RenderContext, getRenderContext } from "./utils/getRenderContext";
 import { renderTemplate } from "./utils/renderTemplates";
 
@@ -12,10 +12,16 @@ import { renderTemplate } from "./utils/renderTemplates";
   logBanner();
   const ctx = await getRenderContext();
   createOrEmptyTargetDirectory(ctx);
-  logStart(ctx);
+  logStep(
+    ctx.language.infos.scaffolding.replace(
+      "$targetDirectory",
+      ctx.targetDirectoryName
+    )
+  );
   renderTemplates(ctx);
+  logStep(ctx.language.infos.generatingKeypair);
   await generateKeypair(ctx);
-  logEnd(ctx);
+  logDone(ctx);
 })().catch((e) => console.error(e));
 
 function renderTemplates(ctx: RenderContext) {

+ 2 - 1
locales/en-US.json

@@ -63,7 +63,8 @@
     "multiselect": "[↑/↓]: Select / [space]: Toggle selection / [a]: Toggle all / [enter]: Submit answer"
   },
   "infos": {
-    "scaffolding": "Scaffolding project in",
+    "scaffolding": "Scaffolding project in $targetDirectory...",
+    "generatingKeypair": "Generating program keypair...",
     "done": "Done. Now run:"
   }
 }

+ 2 - 1
locales/fr-FR.json

@@ -66,7 +66,8 @@
     "multiselect": "[↑/↓]: Sélectionner / [espace]: Basculer la sélection / [a]: Basculer tout / [entrée]: Valider"
   },
   "infos": {
-    "scaffolding": "Génération du projet dans",
+    "scaffolding": "Génération du projet dans $targetDirectory...",
+    "generatingKeypair": "Génération de la paire de clés du program...",
     "done": "Terminé. Exécutez maintenant\u00a0:"
   }
 }

+ 1 - 0
utils/getLanguage.ts

@@ -43,6 +43,7 @@ export interface Language {
   };
   infos: {
     scaffolding: string;
+    generatingKeypair: string;
     done: string;
   };
 }

+ 4 - 6
utils/getLogs.ts

@@ -16,14 +16,12 @@ export function logError(message: string) {
   console.log(chalk.red("✖") + ` ${message}`);
 }
 
-export function logStart(ctx: RenderContext) {
-  console.log(
-    `\n${ctx.language.infos.scaffolding} ${ctx.targetDirectoryName}...`
-  );
+export function logStep(message: string) {
+  console.log(chalk.blue("➤") + ` ${message}`);
 }
 
-export function logEnd(ctx: RenderContext) {
-  console.log(`\n${ctx.language.infos.done}\n`);
+export function logDone(ctx: RenderContext) {
+  console.log(chalk.green("✔︎") + ` ${ctx.language.infos.done}\n`);
 
   // Log next steps: Cd into the target directory.
   if (ctx.targetDirectory !== ctx.currentDirectory) {