UNPKG

@amplience/dc-cli

Version:
52 lines (51 loc) 1.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FileLog = void 0; exports.setVersion = setVersion; exports.versionedTitle = versionedTitle; const archive_log_1 = require("./archive/archive-log"); let version = require('../../package.json').version; function setVersion(newVersion) { version = newVersion; } function versionedTitle(title) { return `dc-cli ${version} - ${title}`; } function buildTitle(filename) { if (filename) { return versionedTitle(filename.replace('<DATE>', Date.now().toString())); } else { return ''; } } class FileLog extends archive_log_1.ArchiveLog { constructor(filename) { super(buildTitle(filename)); this.filename = filename; this.openedCount = 0; if (this.filename != null) { const timestamp = Date.now().toString(); this.filename = this.filename.replace('<DATE>', timestamp); } } appendLine(text = 'undefined', silent = false) { if (!silent) { process.stdout.write(text + '\n'); } this.addComment(text); } open() { this.openedCount++; return this; } async close(writeIfClosed = true) { if (--this.openedCount <= 0) { if (this.filename != null && writeIfClosed) { await this.writeToFile(this.filename); } this.closed = true; } } } exports.FileLog = FileLog;