diff --git a/decktape.js b/decktape.js index 325734b..26bd3ae 100755 --- a/decktape.js +++ b/decktape.js @@ -3,7 +3,6 @@ 'use strict'; import chalk from 'chalk'; -import chalkTemplate from 'chalk-template'; import crypto from 'crypto'; import { Font } from 'fonteditor-core'; import fs from 'fs'; @@ -203,7 +202,6 @@ specified and uses it to export and write the PDF into the specified { switch (type) { case 'error': return chalk.red; @@ -259,9 +257,9 @@ process.on('unhandledRejection', error => { .on('requestfailed', request => { // do not output warning for cancelled requests if (request.failure() && request.failure().errorText === 'net::ERR_ABORTED') return; - console.log(chalkTemplate`\n{yellow Unable to load resource from URL: ${request.url()}}`); + console.log(chalk.yellow('\nUnable to load resource from URL: %s'), request.url()); }) - .on('pageerror', error => console.log(chalkTemplate`\n{red Page error: ${error.message}}`)); + .on('pageerror', error => console.log(chalk.red('\nPage error: %s'), error.message)); console.log('Loading page', options.url, '...'); const load = page.waitForNavigation({ waitUntil: 'load', timeout: options.urlLoadTimeout }); @@ -271,7 +269,7 @@ process.on('unhandledRejection', error => { .catch(error => response.status() !== 200 ? Promise.reject(error) : response) .then(_ => response)) // TODO: improve message when reading file locally - .then(response => console.log('Loading page finished with status:', response.status())) + .then(response => console.log('Loading page finished with status: %s', response.status())) .then(delay(options.loadPause)) .then(_ => createPlugin(page)) .then(plugin => configurePlugin(plugin) @@ -279,17 +277,16 @@ process.on('unhandledRejection', error => { .then(_ => exportSlides(plugin, page, pdf)) .then(async context => { await writePdf(options.filename, pdf); - console.log(chalkTemplate`{green \nPrinted {bold ${context.exportedSlides}} slides}`); + console.log(chalk.green(`\nPrinted ${chalk.bold('%s')} slides`), context.exportedSlides); browser.close(); process.exit(); })) .catch(error => { - console.log(chalkTemplate`{red \n${error}}`); + console.log(chalk.red('\n%s'), error); browser.close(); process.exit(1); }); - async function writePdf(filename, pdf) { const pdfDir = path.dirname(filename); try { @@ -325,7 +322,7 @@ process.on('unhandledRejection', error => { throw Error(`Unable to activate the ${plugin.getName()} DeckTape plugin for the address: ${options.url}`); } } - console.log(chalkTemplate`{cyan {bold ${plugin.getName()}} plugin activated}`); + console.log(chalk.cyan(`${chalk.bold('%s')} plugin activated`), plugin.getName()); return plugin; } diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 87c5489..1a21f58 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -9,8 +9,7 @@ "version": "3.5.0", "license": "MIT", "dependencies": { - "chalk": "~5.1.2", - "chalk-template": "^0.4.0", + "chalk": "5.1.2", "fonteditor-core": "2.1.10", "pdf-lib": "1.17.1", "puppeteer": "18.2.1", @@ -21,7 +20,7 @@ "decktape": "decktape.js" }, "engines": { - "node": ">=12.0.0" + "node": ">=12.20" } }, "node_modules/@pdf-lib/standard-fonts": { @@ -74,20 +73,6 @@ "node": ">= 6.0.0" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -173,56 +158,11 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/chalk-template": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz", - "integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==", - "dependencies": { - "chalk": "^4.1.2" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/chalk-template?sponsor=1" - } - }, - "node_modules/chalk-template/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -343,14 +283,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -584,17 +516,6 @@ "safe-buffer": "~5.2.0" } }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/tar-fs": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", @@ -749,14 +670,6 @@ "debug": "4" } }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -805,43 +718,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==" }, - "chalk-template": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz", - "integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==", - "requires": { - "chalk": "^4.1.2" - }, - "dependencies": { - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - } - } - }, "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -934,11 +815,6 @@ "path-is-absolute": "^1.0.0" } }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, "https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -1105,14 +981,6 @@ "safe-buffer": "~5.2.0" } }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "requires": { - "has-flag": "^4.0.0" - } - }, "tar-fs": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", diff --git a/package.json b/package.json index 4747078..fda1e75 100644 --- a/package.json +++ b/package.json @@ -21,8 +21,7 @@ "url": "https://github.com/astefanutti/decktape/issues" }, "dependencies": { - "chalk": "~5.1.2", - "chalk-template": "^0.4.0", + "chalk": "5.1.2", "fonteditor-core": "2.1.10", "pdf-lib": "1.17.1", "puppeteer": "18.2.1",