@node-minify/cli 8.0.5 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/dist/{cli.d.ts → cli.d.mts} +0 -0
- package/dist/cli.mjs +59 -27
- package/dist/cli.mjs.map +1 -1
- package/dist/index.d.mts +11 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +28 -9
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +28 -9
- package/dist/index.mjs.map +1 -1
- package/package.json +24 -20
package/LICENSE
CHANGED
|
File without changes
|
package/dist/cli.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
// src/bin/cli.ts
|
|
4
|
-
import updateNotifier from "update-notifier";
|
|
5
4
|
import { Command } from "commander";
|
|
5
|
+
import updateNotifier from "update-notifier";
|
|
6
6
|
|
|
7
7
|
// src/index.ts
|
|
8
8
|
import chalk2 from "chalk";
|
|
@@ -13,9 +13,17 @@ import { utils } from "@node-minify/utils";
|
|
|
13
13
|
var compress = (options2) => {
|
|
14
14
|
return new Promise((resolve, reject) => {
|
|
15
15
|
minify(options2).then(() => {
|
|
16
|
-
if (options2
|
|
16
|
+
if (options2?.output?.includes("$1")) {
|
|
17
17
|
return resolve({
|
|
18
|
-
compressorLabel: options2.compressorLabel
|
|
18
|
+
compressorLabel: options2.compressorLabel ?? "",
|
|
19
|
+
compressor: options2.compressor,
|
|
20
|
+
size: "0",
|
|
21
|
+
sizeGzip: "0"
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (!options2.output) {
|
|
25
|
+
return resolve({
|
|
26
|
+
compressorLabel: options2.compressorLabel ?? "",
|
|
19
27
|
compressor: options2.compressor,
|
|
20
28
|
size: "0",
|
|
21
29
|
sizeGzip: "0"
|
|
@@ -23,9 +31,9 @@ var compress = (options2) => {
|
|
|
23
31
|
}
|
|
24
32
|
utils.getFilesizeGzippedInBytes(options2.output).then((sizeGzip) => {
|
|
25
33
|
resolve({
|
|
26
|
-
compressorLabel: options2.compressorLabel
|
|
34
|
+
compressorLabel: options2.compressorLabel ?? "",
|
|
27
35
|
compressor: options2.compressor,
|
|
28
|
-
size: utils.getFilesizeInBytes(options2.output),
|
|
36
|
+
size: options2.output ? utils.getFilesizeInBytes(options2.output) : "0",
|
|
29
37
|
sizeGzip
|
|
30
38
|
});
|
|
31
39
|
}).catch(reject);
|
|
@@ -38,15 +46,23 @@ import chalk from "chalk";
|
|
|
38
46
|
import ora from "ora";
|
|
39
47
|
var spinner = ora();
|
|
40
48
|
var start = (options2) => {
|
|
41
|
-
spinner.text =
|
|
49
|
+
spinner.text = `Compressing file(s) with ${chalk.green(
|
|
50
|
+
options2.compressorLabel
|
|
51
|
+
)}...`;
|
|
42
52
|
spinner.start();
|
|
43
53
|
};
|
|
44
54
|
var stop = (result) => {
|
|
45
|
-
spinner.text =
|
|
55
|
+
spinner.text = `File(s) compressed successfully with ${chalk.green(
|
|
56
|
+
result.compressorLabel
|
|
57
|
+
)} (${chalk.green(result.size)} minified, ${chalk.green(
|
|
58
|
+
result.sizeGzip
|
|
59
|
+
)} gzipped)`;
|
|
46
60
|
spinner.succeed();
|
|
47
61
|
};
|
|
48
62
|
var error = (options2) => {
|
|
49
|
-
spinner.text =
|
|
63
|
+
spinner.text = `Error - file(s) not compressed with ${chalk.red(
|
|
64
|
+
options2.compressorLabel
|
|
65
|
+
)}`;
|
|
50
66
|
spinner.fail();
|
|
51
67
|
};
|
|
52
68
|
|
|
@@ -90,7 +106,10 @@ var run = (cli) => {
|
|
|
90
106
|
runOne(cli).then(() => {
|
|
91
107
|
if (!silence) {
|
|
92
108
|
console.log("");
|
|
93
|
-
console.log(
|
|
109
|
+
console.log(
|
|
110
|
+
chalk2.bgGreen.black(" DONE "),
|
|
111
|
+
chalk2.green("Done!")
|
|
112
|
+
);
|
|
94
113
|
console.log("");
|
|
95
114
|
}
|
|
96
115
|
}).then(resolve).catch(reject);
|
|
@@ -100,7 +119,7 @@ var run = (cli) => {
|
|
|
100
119
|
// package.json
|
|
101
120
|
var package_default = {
|
|
102
121
|
name: "@node-minify/cli",
|
|
103
|
-
version: "
|
|
122
|
+
version: "9.0.0",
|
|
104
123
|
description: "CLI - command line interface for @node-minify",
|
|
105
124
|
keywords: [
|
|
106
125
|
"compressor",
|
|
@@ -114,7 +133,7 @@ var package_default = {
|
|
|
114
133
|
"node-minify": "dist/cli.mjs"
|
|
115
134
|
},
|
|
116
135
|
engines: {
|
|
117
|
-
node: ">=
|
|
136
|
+
node: ">=18.0.0"
|
|
118
137
|
},
|
|
119
138
|
directories: {
|
|
120
139
|
lib: "dist",
|
|
@@ -124,9 +143,11 @@ var package_default = {
|
|
|
124
143
|
module: "./dist/index.mjs",
|
|
125
144
|
types: "./dist/index.d.ts",
|
|
126
145
|
exports: {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
146
|
+
".": {
|
|
147
|
+
types: "./dist/index.d.ts",
|
|
148
|
+
import: "./dist/index.mjs",
|
|
149
|
+
require: "./dist/index.cjs"
|
|
150
|
+
}
|
|
130
151
|
},
|
|
131
152
|
files: [
|
|
132
153
|
"bin",
|
|
@@ -145,29 +166,40 @@ var package_default = {
|
|
|
145
166
|
scripts: {
|
|
146
167
|
clean: "pnpm dlx rimraf dist",
|
|
147
168
|
build: "pnpm clean && tsup src/index.ts --format cjs,esm --dts --sourcemap && tsup src/bin/cli.ts --format esm --dts --sourcemap",
|
|
148
|
-
|
|
169
|
+
lint: "biome lint .",
|
|
170
|
+
prepublishOnly: "pnpm build",
|
|
171
|
+
test: "vitest run",
|
|
172
|
+
"test:ci": "vitest run --coverage",
|
|
173
|
+
"test:watch": "vitest"
|
|
149
174
|
},
|
|
150
175
|
dependencies: {
|
|
151
|
-
"@node-minify/core": "
|
|
152
|
-
"@node-minify/utils": "
|
|
153
|
-
chalk: "5.
|
|
154
|
-
commander: "
|
|
155
|
-
ora: "
|
|
156
|
-
"update-notifier": "
|
|
176
|
+
"@node-minify/core": "workspace:*",
|
|
177
|
+
"@node-minify/utils": "workspace:*",
|
|
178
|
+
chalk: "5.3.0",
|
|
179
|
+
commander: "12.1.0",
|
|
180
|
+
ora: "8.1.1",
|
|
181
|
+
"update-notifier": "7.3.1"
|
|
157
182
|
},
|
|
158
183
|
devDependencies: {
|
|
159
|
-
"@node-minify/types": "
|
|
184
|
+
"@node-minify/types": "workspace:*",
|
|
160
185
|
"@types/chalk": "^2.2.0",
|
|
161
186
|
"@types/ora": "^3.2.0"
|
|
162
|
-
}
|
|
163
|
-
gitHead: "920590d417916e54464d9967e0dceb8b6bb9a784"
|
|
187
|
+
}
|
|
164
188
|
};
|
|
165
189
|
|
|
166
190
|
// src/bin/cli.ts
|
|
167
191
|
var program = new Command();
|
|
168
192
|
updateNotifier({ pkg: package_default }).notify();
|
|
169
|
-
program.storeOptionsAsProperties().version(package_default.version, "-v, --version").option(
|
|
170
|
-
|
|
193
|
+
program.storeOptionsAsProperties().version(package_default.version, "-v, --version").option(
|
|
194
|
+
"-c, --compressor [compressor]",
|
|
195
|
+
"use the specified compressor [uglify-js]",
|
|
196
|
+
"uglify-js"
|
|
197
|
+
).option("-i, --input [file]", "input file path").option("-o, --output [file]", "output file path").option("-s, --silence", "no output will be printed").option(
|
|
198
|
+
"-O, --option [option]",
|
|
199
|
+
"option for the compressor as JSON object",
|
|
200
|
+
""
|
|
201
|
+
);
|
|
202
|
+
program.on("--help", () => {
|
|
171
203
|
console.log(" List of compressors:");
|
|
172
204
|
console.log("");
|
|
173
205
|
console.log(" - babel-minify");
|
|
@@ -190,7 +222,7 @@ run(options).then(() => process.exit()).catch((err) => {
|
|
|
190
222
|
});
|
|
191
223
|
/*!
|
|
192
224
|
* node-minify
|
|
193
|
-
* Copyright(c) 2011-
|
|
225
|
+
* Copyright(c) 2011-2024 Rodolphe Stoclin
|
|
194
226
|
* MIT Licensed
|
|
195
227
|
*/
|
|
196
228
|
//# sourceMappingURL=cli.mjs.map
|
package/dist/cli.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bin/cli.ts","../src/index.ts","../src/compress.ts","../src/spinner.ts","../package.json"],"sourcesContent":["#!/usr/bin/env node\n\n/*!\n * node-minify\n * Copyright(c) 2011-2023 Rodolphe Stoclin\n * MIT Licensed\n */\n\nimport updateNotifier from 'update-notifier';\nimport { Command } from 'commander';\nconst program = new Command();\nimport { run } from '../';\nimport packageJson from '../../package.json';\nimport { Settings } from '@node-minify/types';\n\nupdateNotifier({ pkg: packageJson }).notify();\n\nprogram\n .storeOptionsAsProperties()\n .version(packageJson.version, '-v, --version')\n .option('-c, --compressor [compressor]', 'use the specified compressor [uglify-js]', 'uglify-js')\n .option('-i, --input [file]', 'input file path')\n .option('-o, --output [file]', 'output file path')\n .option('-s, --silence', 'no output will be printed')\n .option('-O, --option [option]', 'option for the compressor as JSON object', '');\n\nprogram.on('--help', function () {\n console.log(' List of compressors:');\n console.log('');\n console.log(' - babel-minify');\n console.log(' - gcc');\n console.log(' - html-minifier');\n console.log(' - terser');\n console.log(' - uglify-js');\n console.log(' - uglify-es');\n console.log(' - yui');\n console.log('');\n});\n\nprogram.parse(process.argv);\n\nconst options: Settings = program.opts();\n\n/**\n * Show help if missing mandatory.\n */\nif (!options.compressor || !options.input || !options.output) {\n program.help();\n}\n\nrun(options)\n .then(() => process.exit())\n .catch(err => {\n console.error(err);\n process.exit(1);\n });\n","/*!\n * node-minify\n * Copyright(c) 2011-2023 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport chalk from 'chalk';\nimport { compress } from './compress';\nimport { spinnerStart, spinnerStop, spinnerError } from './spinner';\nimport { Settings, Result } from '@node-minify/types';\n\n/**\n * Module variables.\n */\nlet silence = false;\n\n/**\n * Run one compressor.\n */\nconst runOne = async (cli: Settings) => {\n /* eslint-disable @typescript-eslint/no-var-requires */\n const compressor =\n typeof cli.compressor === 'string' ? await import(`@node-minify/${cli.compressor}`) : cli.compressor;\n /* eslint-enable @typescript-eslint/no-var-requires */\n\n const compressorName =\n typeof cli.compressor === 'string' ? cli.compressor : cli.compressor ? cli.compressor.name : 'unknownCompressor';\n\n const options: Settings = {\n compressorLabel: compressorName,\n compressor: compressor.default,\n input: typeof cli.input === 'string' ? cli.input.split(',') : '',\n output: cli.output\n };\n\n if (cli.option) {\n options.options = JSON.parse(cli.option);\n }\n\n if (!silence) {\n spinnerStart(options);\n }\n\n return compress(options)\n .then((result: Result) => {\n if (!silence) {\n spinnerStop(result);\n }\n return result;\n })\n .catch((err: Error) => {\n if (!silence) {\n spinnerError(options);\n }\n throw err;\n });\n};\n\n/**\n * Run cli.\n */\nconst run = (cli: Settings) => {\n silence = !!cli.silence;\n\n if (!silence) {\n console.log('');\n console.log(chalk.bgBlue.black(' INFO '), 'Starting compression...');\n console.log('');\n }\n\n return new Promise((resolve, reject) => {\n runOne(cli)\n .then(() => {\n if (!silence) {\n console.log('');\n console.log(chalk.bgGreen.black(' DONE '), chalk.green('Done!'));\n console.log('');\n }\n })\n .then(resolve)\n .catch(reject);\n });\n};\n\n/**\n * Expose `run()`.\n */\nexport { run };\n","/*!\n * node-minify\n * Copyright(c) 2011-2023 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport minify from '@node-minify/core';\nimport { utils } from '@node-minify/utils';\nimport { Settings, Result } from '@node-minify/types';\n\n/**\n * Run compression.\n *\n * @param {Object} options\n */\nconst compress = (options: Settings): Promise<Result> => {\n return new Promise<Result>((resolve, reject) => {\n minify(options)\n .then(() => {\n if (options.output.includes('$1')) {\n // TODO handle $1 output\n // npx node-minify --compressor uglify-js --input 'source/**/*.js' --output 'source/$1.min.js' --option '{\"warnings\": true, \"mangle\": false}'\n return resolve({\n compressorLabel: options.compressorLabel || '',\n compressor: options.compressor,\n size: '0',\n sizeGzip: '0'\n });\n }\n utils\n .getFilesizeGzippedInBytes(options.output)\n .then((sizeGzip: string) => {\n resolve({\n compressorLabel: options.compressorLabel || '',\n compressor: options.compressor,\n size: utils.getFilesizeInBytes(options.output),\n sizeGzip: sizeGzip\n });\n })\n .catch(reject);\n })\n .catch(reject);\n });\n};\n\n/**\n * Expose `compress()`.\n */\nexport { compress };\n","/*!\n * node-minify\n * Copyright(c) 2011-2023 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport chalk from 'chalk';\nimport ora from 'ora';\nimport { Settings, Result } from '@node-minify/types';\n\nconst spinner = ora();\n\n/**\n * Start spinner.\n *\n * @param {Object} options\n */\nconst start = (options: Settings) => {\n spinner.text = 'Compressing file(s) with ' + chalk.green(options.compressorLabel) + '...';\n spinner.start();\n};\n\n/**\n * Stop spinner.\n *\n * @param {Object} result\n */\nconst stop = (result: Result) => {\n spinner.text =\n 'File(s) compressed successfully with ' +\n chalk.green(result.compressorLabel) +\n ' (' +\n chalk.green(result.size) +\n ' minified, ' +\n chalk.green(result.sizeGzip) +\n ' gzipped)';\n spinner.succeed();\n};\n\n/**\n * Mark spinner as failed.\n *\n * @param {Object} options\n */\nconst error = (options: Settings) => {\n spinner.text = 'Error - file(s) not compressed with ' + chalk.red(options.compressorLabel);\n spinner.fail();\n};\n\n/**\n * Expose `start(), stop() and error()`.\n */\nexport { start as spinnerStart, stop as spinnerStop, error as spinnerError };\n","{\n \"name\": \"@node-minify/cli\",\n \"version\": \"8.0.5\",\n \"description\": \"CLI - command line interface for @node-minify\",\n \"keywords\": [\n \"compressor\",\n \"minify\",\n \"minifier\"\n ],\n \"author\": \"Rodolphe Stoclin <srodolphe@gmail.com>\",\n \"homepage\": \"https://github.com/srod/node-minify/tree/master/packages/cli#readme\",\n \"license\": \"MIT\",\n \"bin\": {\n \"node-minify\": \"dist/cli.mjs\"\n },\n \"engines\": {\n \"node\": \">=16.0.0\"\n },\n \"directories\": {\n \"lib\": \"dist\",\n \"test\": \"__tests__\"\n },\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \"require\": \"./dist/index.js\",\n \"import\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\"\n },\n \"files\": [\n \"bin\",\n \"dist/**/*\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/srod/node-minify.git\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/srod/node-minify/issues\"\n },\n \"scripts\": {\n \"clean\": \"pnpm dlx rimraf dist\",\n \"build\": \"pnpm clean && tsup src/index.ts --format cjs,esm --dts --sourcemap && tsup src/bin/cli.ts --format esm --dts --sourcemap\",\n \"prepublishOnly\": \"pnpm build\"\n },\n \"dependencies\": {\n \"@node-minify/core\": \"8.0.5\",\n \"@node-minify/utils\": \"8.0.5\",\n \"chalk\": \"5.2.0\",\n \"commander\": \"9.5.0\",\n \"ora\": \"6.1.2\",\n \"update-notifier\": \"6.0.2\"\n },\n \"devDependencies\": {\n \"@node-minify/types\": \"8.0.5\",\n \"@types/chalk\": \"^2.2.0\",\n \"@types/ora\": \"^3.2.0\"\n },\n \"gitHead\": \"920590d417916e54464d9967e0dceb8b6bb9a784\"\n}\n"],"mappings":"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","names":["chalk","options","options","options","chalk"]}
|
|
1
|
+
{"version":3,"sources":["../src/bin/cli.ts","../src/index.ts","../src/compress.ts","../src/spinner.ts","../package.json"],"sourcesContent":["#!/usr/bin/env node\n\n/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\nimport { Command } from \"commander\";\nimport updateNotifier from \"update-notifier\";\nconst program = new Command();\nimport type { Settings } from \"@node-minify/types\";\nimport { run } from \"../\";\nimport packageJson from \"../../package.json\";\n\nupdateNotifier({ pkg: packageJson }).notify();\n\nprogram\n .storeOptionsAsProperties()\n .version(packageJson.version, \"-v, --version\")\n .option(\n \"-c, --compressor [compressor]\",\n \"use the specified compressor [uglify-js]\",\n \"uglify-js\"\n )\n .option(\"-i, --input [file]\", \"input file path\")\n .option(\"-o, --output [file]\", \"output file path\")\n .option(\"-s, --silence\", \"no output will be printed\")\n .option(\n \"-O, --option [option]\",\n \"option for the compressor as JSON object\",\n \"\"\n );\n\nprogram.on(\"--help\", () => {\n console.log(\" List of compressors:\");\n console.log(\"\");\n console.log(\" - babel-minify\");\n console.log(\" - gcc\");\n console.log(\" - html-minifier\");\n console.log(\" - terser\");\n console.log(\" - uglify-js\");\n console.log(\" - uglify-es\");\n console.log(\" - yui\");\n console.log(\"\");\n});\n\nprogram.parse(process.argv);\n\nconst options: Settings = program.opts();\n\n/**\n * Show help if missing mandatory.\n */\nif (!options.compressor || !options.input || !options.output) {\n program.help();\n}\n\nrun(options)\n .then(() => process.exit())\n .catch((err) => {\n console.error(err);\n process.exit(1);\n });\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { Result, Settings } from \"@node-minify/types\";\n// @ts-expect-error moduleResolution:nodenext issue 54523\nimport chalk from \"chalk\";\nimport { compress } from \"./compress\";\nimport { spinnerError, spinnerStart, spinnerStop } from \"./spinner\";\n\n/**\n * Module variables.\n */\nlet silence = false;\n\n/**\n * Run one compressor.\n * @param cli Settings\n */\nconst runOne = async (cli: Settings) => {\n const compressor =\n typeof cli.compressor === \"string\"\n ? await import(`@node-minify/${cli.compressor}`)\n : cli.compressor;\n\n const compressorName =\n typeof cli.compressor === \"string\"\n ? cli.compressor\n : cli.compressor\n ? cli.compressor.name\n : \"unknownCompressor\";\n\n const options: Settings = {\n compressorLabel: compressorName,\n compressor: compressor.default,\n input: typeof cli.input === \"string\" ? cli.input.split(\",\") : \"\",\n output: cli.output,\n };\n\n if (cli.option) {\n options.options = JSON.parse(cli.option);\n }\n\n if (!silence) {\n spinnerStart(options);\n }\n\n return compress(options)\n .then((result: Result) => {\n if (!silence) {\n spinnerStop(result);\n }\n return result;\n })\n .catch((err: Error) => {\n if (!silence) {\n spinnerError(options);\n }\n throw err;\n });\n};\n\n/**\n * Run cli.\n * @param cli Settings\n */\nconst run = (cli: Settings) => {\n silence = !!cli.silence;\n\n if (!silence) {\n console.log(\"\");\n console.log(chalk.bgBlue.black(\" INFO \"), \"Starting compression...\");\n console.log(\"\");\n }\n\n return new Promise((resolve, reject) => {\n runOne(cli)\n .then(() => {\n if (!silence) {\n console.log(\"\");\n console.log(\n chalk.bgGreen.black(\" DONE \"),\n chalk.green(\"Done!\")\n );\n console.log(\"\");\n }\n })\n .then(resolve)\n .catch(reject);\n });\n};\n\n/**\n * Expose `run()`.\n */\nexport { run };\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport minify from \"@node-minify/core\";\nimport type { Result, Settings } from \"@node-minify/types\";\nimport { utils } from \"@node-minify/utils\";\n\n/**\n * Run compression.\n * @param options Settings\n */\nconst compress = (options: Settings): Promise<Result> => {\n return new Promise<Result>((resolve, reject) => {\n minify(options)\n .then(() => {\n if (options?.output?.includes(\"$1\")) {\n // npx node-minify --compressor uglify-js --input 'source/**/*.js' --output 'source/$1.min.js' --option '{\"warnings\": true, \"mangle\": false}'\n return resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: \"0\",\n sizeGzip: \"0\",\n });\n }\n if (!options.output) {\n return resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: \"0\",\n sizeGzip: \"0\",\n });\n }\n utils\n .getFilesizeGzippedInBytes(options.output)\n .then((sizeGzip: string) => {\n resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: options.output\n ? utils.getFilesizeInBytes(options.output)\n : \"0\",\n sizeGzip: sizeGzip,\n });\n })\n .catch(reject);\n })\n .catch(reject);\n });\n};\n\n/**\n * Expose `compress()`.\n */\nexport { compress };\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { Result, Settings } from \"@node-minify/types\";\nimport chalk from \"chalk\";\nimport ora from \"ora\";\n\nconst spinner = ora();\n\n/**\n * Start spinner.\n * @param options Settings\n */\nconst start = (options: Settings) => {\n spinner.text = `Compressing file(s) with ${chalk.green(\n options.compressorLabel\n )}...`;\n spinner.start();\n};\n\n/**\n * Stop spinner.\n * @param result\n */\nconst stop = (result: Result) => {\n spinner.text = `File(s) compressed successfully with ${chalk.green(\n result.compressorLabel\n )} (${chalk.green(result.size)} minified, ${chalk.green(\n result.sizeGzip\n )} gzipped)`;\n spinner.succeed();\n};\n\n/**\n * Mark spinner as failed.\n * @param options Settings\n */\nconst error = (options: Settings) => {\n spinner.text = `Error - file(s) not compressed with ${chalk.red(\n options.compressorLabel\n )}`;\n spinner.fail();\n};\n\n/**\n * Expose `start(), stop() and error()`.\n */\nexport { start as spinnerStart, stop as spinnerStop, error as spinnerError };\n","{\n \"name\": \"@node-minify/cli\",\n \"version\": \"9.0.0\",\n \"description\": \"CLI - command line interface for @node-minify\",\n \"keywords\": [\n \"compressor\",\n \"minify\",\n \"minifier\"\n ],\n \"author\": \"Rodolphe Stoclin <srodolphe@gmail.com>\",\n \"homepage\": \"https://github.com/srod/node-minify/tree/master/packages/cli#readme\",\n \"license\": \"MIT\",\n \"bin\": {\n \"node-minify\": \"dist/cli.mjs\"\n },\n \"engines\": {\n \"node\": \">=18.0.0\"\n },\n \"directories\": {\n \"lib\": \"dist\",\n \"test\": \"__tests__\"\n },\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"types\": \"./dist/index.d.ts\",\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.cjs\"\n }\n },\n \"files\": [\n \"bin\",\n \"dist/**/*\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/srod/node-minify.git\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/srod/node-minify/issues\"\n },\n \"scripts\": {\n \"clean\": \"pnpm dlx rimraf dist\",\n \"build\": \"pnpm clean && tsup src/index.ts --format cjs,esm --dts --sourcemap && tsup src/bin/cli.ts --format esm --dts --sourcemap\",\n \"lint\": \"biome lint .\",\n \"prepublishOnly\": \"pnpm build\",\n \"test\": \"vitest run\",\n \"test:ci\": \"vitest run --coverage\",\n \"test:watch\": \"vitest\"\n },\n \"dependencies\": {\n \"@node-minify/core\": \"workspace:*\",\n \"@node-minify/utils\": \"workspace:*\",\n \"chalk\": \"5.3.0\",\n \"commander\": \"12.1.0\",\n \"ora\": \"8.1.1\",\n \"update-notifier\": \"7.3.1\"\n },\n \"devDependencies\": {\n \"@node-minify/types\": \"workspace:*\",\n \"@types/chalk\": \"^2.2.0\",\n \"@types/ora\": \"^3.2.0\"\n }\n}\n"],"mappings":"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","names":["chalk","options","options","options","chalk"]}
|
package/dist/index.d.mts
ADDED
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -41,9 +41,17 @@ var import_utils = require("@node-minify/utils");
|
|
|
41
41
|
var compress = (options) => {
|
|
42
42
|
return new Promise((resolve, reject) => {
|
|
43
43
|
(0, import_core.default)(options).then(() => {
|
|
44
|
-
if (options
|
|
44
|
+
if (options?.output?.includes("$1")) {
|
|
45
45
|
return resolve({
|
|
46
|
-
compressorLabel: options.compressorLabel
|
|
46
|
+
compressorLabel: options.compressorLabel ?? "",
|
|
47
|
+
compressor: options.compressor,
|
|
48
|
+
size: "0",
|
|
49
|
+
sizeGzip: "0"
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (!options.output) {
|
|
53
|
+
return resolve({
|
|
54
|
+
compressorLabel: options.compressorLabel ?? "",
|
|
47
55
|
compressor: options.compressor,
|
|
48
56
|
size: "0",
|
|
49
57
|
sizeGzip: "0"
|
|
@@ -51,9 +59,9 @@ var compress = (options) => {
|
|
|
51
59
|
}
|
|
52
60
|
import_utils.utils.getFilesizeGzippedInBytes(options.output).then((sizeGzip) => {
|
|
53
61
|
resolve({
|
|
54
|
-
compressorLabel: options.compressorLabel
|
|
62
|
+
compressorLabel: options.compressorLabel ?? "",
|
|
55
63
|
compressor: options.compressor,
|
|
56
|
-
size: import_utils.utils.getFilesizeInBytes(options.output),
|
|
64
|
+
size: options.output ? import_utils.utils.getFilesizeInBytes(options.output) : "0",
|
|
57
65
|
sizeGzip
|
|
58
66
|
});
|
|
59
67
|
}).catch(reject);
|
|
@@ -66,15 +74,23 @@ var import_chalk = __toESM(require("chalk"));
|
|
|
66
74
|
var import_ora = __toESM(require("ora"));
|
|
67
75
|
var spinner = (0, import_ora.default)();
|
|
68
76
|
var start = (options) => {
|
|
69
|
-
spinner.text =
|
|
77
|
+
spinner.text = `Compressing file(s) with ${import_chalk.default.green(
|
|
78
|
+
options.compressorLabel
|
|
79
|
+
)}...`;
|
|
70
80
|
spinner.start();
|
|
71
81
|
};
|
|
72
82
|
var stop = (result) => {
|
|
73
|
-
spinner.text =
|
|
83
|
+
spinner.text = `File(s) compressed successfully with ${import_chalk.default.green(
|
|
84
|
+
result.compressorLabel
|
|
85
|
+
)} (${import_chalk.default.green(result.size)} minified, ${import_chalk.default.green(
|
|
86
|
+
result.sizeGzip
|
|
87
|
+
)} gzipped)`;
|
|
74
88
|
spinner.succeed();
|
|
75
89
|
};
|
|
76
90
|
var error = (options) => {
|
|
77
|
-
spinner.text =
|
|
91
|
+
spinner.text = `Error - file(s) not compressed with ${import_chalk.default.red(
|
|
92
|
+
options.compressorLabel
|
|
93
|
+
)}`;
|
|
78
94
|
spinner.fail();
|
|
79
95
|
};
|
|
80
96
|
|
|
@@ -118,7 +134,10 @@ var run = (cli) => {
|
|
|
118
134
|
runOne(cli).then(() => {
|
|
119
135
|
if (!silence) {
|
|
120
136
|
console.log("");
|
|
121
|
-
console.log(
|
|
137
|
+
console.log(
|
|
138
|
+
import_chalk2.default.bgGreen.black(" DONE "),
|
|
139
|
+
import_chalk2.default.green("Done!")
|
|
140
|
+
);
|
|
122
141
|
console.log("");
|
|
123
142
|
}
|
|
124
143
|
}).then(resolve).catch(reject);
|
|
@@ -130,7 +149,7 @@ var run = (cli) => {
|
|
|
130
149
|
});
|
|
131
150
|
/*!
|
|
132
151
|
* node-minify
|
|
133
|
-
* Copyright(c) 2011-
|
|
152
|
+
* Copyright(c) 2011-2024 Rodolphe Stoclin
|
|
134
153
|
* MIT Licensed
|
|
135
154
|
*/
|
|
136
155
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/compress.ts","../src/spinner.ts"],"sourcesContent":["/*!\n * node-minify\n * Copyright(c) 2011-
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/compress.ts","../src/spinner.ts"],"sourcesContent":["/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { Result, Settings } from \"@node-minify/types\";\n// @ts-expect-error moduleResolution:nodenext issue 54523\nimport chalk from \"chalk\";\nimport { compress } from \"./compress\";\nimport { spinnerError, spinnerStart, spinnerStop } from \"./spinner\";\n\n/**\n * Module variables.\n */\nlet silence = false;\n\n/**\n * Run one compressor.\n * @param cli Settings\n */\nconst runOne = async (cli: Settings) => {\n const compressor =\n typeof cli.compressor === \"string\"\n ? await import(`@node-minify/${cli.compressor}`)\n : cli.compressor;\n\n const compressorName =\n typeof cli.compressor === \"string\"\n ? cli.compressor\n : cli.compressor\n ? cli.compressor.name\n : \"unknownCompressor\";\n\n const options: Settings = {\n compressorLabel: compressorName,\n compressor: compressor.default,\n input: typeof cli.input === \"string\" ? cli.input.split(\",\") : \"\",\n output: cli.output,\n };\n\n if (cli.option) {\n options.options = JSON.parse(cli.option);\n }\n\n if (!silence) {\n spinnerStart(options);\n }\n\n return compress(options)\n .then((result: Result) => {\n if (!silence) {\n spinnerStop(result);\n }\n return result;\n })\n .catch((err: Error) => {\n if (!silence) {\n spinnerError(options);\n }\n throw err;\n });\n};\n\n/**\n * Run cli.\n * @param cli Settings\n */\nconst run = (cli: Settings) => {\n silence = !!cli.silence;\n\n if (!silence) {\n console.log(\"\");\n console.log(chalk.bgBlue.black(\" INFO \"), \"Starting compression...\");\n console.log(\"\");\n }\n\n return new Promise((resolve, reject) => {\n runOne(cli)\n .then(() => {\n if (!silence) {\n console.log(\"\");\n console.log(\n chalk.bgGreen.black(\" DONE \"),\n chalk.green(\"Done!\")\n );\n console.log(\"\");\n }\n })\n .then(resolve)\n .catch(reject);\n });\n};\n\n/**\n * Expose `run()`.\n */\nexport { run };\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport minify from \"@node-minify/core\";\nimport type { Result, Settings } from \"@node-minify/types\";\nimport { utils } from \"@node-minify/utils\";\n\n/**\n * Run compression.\n * @param options Settings\n */\nconst compress = (options: Settings): Promise<Result> => {\n return new Promise<Result>((resolve, reject) => {\n minify(options)\n .then(() => {\n if (options?.output?.includes(\"$1\")) {\n // npx node-minify --compressor uglify-js --input 'source/**/*.js' --output 'source/$1.min.js' --option '{\"warnings\": true, \"mangle\": false}'\n return resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: \"0\",\n sizeGzip: \"0\",\n });\n }\n if (!options.output) {\n return resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: \"0\",\n sizeGzip: \"0\",\n });\n }\n utils\n .getFilesizeGzippedInBytes(options.output)\n .then((sizeGzip: string) => {\n resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: options.output\n ? utils.getFilesizeInBytes(options.output)\n : \"0\",\n sizeGzip: sizeGzip,\n });\n })\n .catch(reject);\n })\n .catch(reject);\n });\n};\n\n/**\n * Expose `compress()`.\n */\nexport { compress };\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { Result, Settings } from \"@node-minify/types\";\nimport chalk from \"chalk\";\nimport ora from \"ora\";\n\nconst spinner = ora();\n\n/**\n * Start spinner.\n * @param options Settings\n */\nconst start = (options: Settings) => {\n spinner.text = `Compressing file(s) with ${chalk.green(\n options.compressorLabel\n )}...`;\n spinner.start();\n};\n\n/**\n * Stop spinner.\n * @param result\n */\nconst stop = (result: Result) => {\n spinner.text = `File(s) compressed successfully with ${chalk.green(\n result.compressorLabel\n )} (${chalk.green(result.size)} minified, ${chalk.green(\n result.sizeGzip\n )} gzipped)`;\n spinner.succeed();\n};\n\n/**\n * Mark spinner as failed.\n * @param options Settings\n */\nconst error = (options: Settings) => {\n spinner.text = `Error - file(s) not compressed with ${chalk.red(\n options.compressorLabel\n )}`;\n spinner.fail();\n};\n\n/**\n * Expose `start(), stop() and error()`.\n */\nexport { start as spinnerStart, stop as spinnerStop, error as spinnerError };\n"],"mappings":"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","names":["import_chalk","minify","ora","chalk","chalk"]}
|
package/dist/index.mjs
CHANGED
|
@@ -7,9 +7,17 @@ import { utils } from "@node-minify/utils";
|
|
|
7
7
|
var compress = (options) => {
|
|
8
8
|
return new Promise((resolve, reject) => {
|
|
9
9
|
minify(options).then(() => {
|
|
10
|
-
if (options
|
|
10
|
+
if (options?.output?.includes("$1")) {
|
|
11
11
|
return resolve({
|
|
12
|
-
compressorLabel: options.compressorLabel
|
|
12
|
+
compressorLabel: options.compressorLabel ?? "",
|
|
13
|
+
compressor: options.compressor,
|
|
14
|
+
size: "0",
|
|
15
|
+
sizeGzip: "0"
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
if (!options.output) {
|
|
19
|
+
return resolve({
|
|
20
|
+
compressorLabel: options.compressorLabel ?? "",
|
|
13
21
|
compressor: options.compressor,
|
|
14
22
|
size: "0",
|
|
15
23
|
sizeGzip: "0"
|
|
@@ -17,9 +25,9 @@ var compress = (options) => {
|
|
|
17
25
|
}
|
|
18
26
|
utils.getFilesizeGzippedInBytes(options.output).then((sizeGzip) => {
|
|
19
27
|
resolve({
|
|
20
|
-
compressorLabel: options.compressorLabel
|
|
28
|
+
compressorLabel: options.compressorLabel ?? "",
|
|
21
29
|
compressor: options.compressor,
|
|
22
|
-
size: utils.getFilesizeInBytes(options.output),
|
|
30
|
+
size: options.output ? utils.getFilesizeInBytes(options.output) : "0",
|
|
23
31
|
sizeGzip
|
|
24
32
|
});
|
|
25
33
|
}).catch(reject);
|
|
@@ -32,15 +40,23 @@ import chalk from "chalk";
|
|
|
32
40
|
import ora from "ora";
|
|
33
41
|
var spinner = ora();
|
|
34
42
|
var start = (options) => {
|
|
35
|
-
spinner.text =
|
|
43
|
+
spinner.text = `Compressing file(s) with ${chalk.green(
|
|
44
|
+
options.compressorLabel
|
|
45
|
+
)}...`;
|
|
36
46
|
spinner.start();
|
|
37
47
|
};
|
|
38
48
|
var stop = (result) => {
|
|
39
|
-
spinner.text =
|
|
49
|
+
spinner.text = `File(s) compressed successfully with ${chalk.green(
|
|
50
|
+
result.compressorLabel
|
|
51
|
+
)} (${chalk.green(result.size)} minified, ${chalk.green(
|
|
52
|
+
result.sizeGzip
|
|
53
|
+
)} gzipped)`;
|
|
40
54
|
spinner.succeed();
|
|
41
55
|
};
|
|
42
56
|
var error = (options) => {
|
|
43
|
-
spinner.text =
|
|
57
|
+
spinner.text = `Error - file(s) not compressed with ${chalk.red(
|
|
58
|
+
options.compressorLabel
|
|
59
|
+
)}`;
|
|
44
60
|
spinner.fail();
|
|
45
61
|
};
|
|
46
62
|
|
|
@@ -84,7 +100,10 @@ var run = (cli) => {
|
|
|
84
100
|
runOne(cli).then(() => {
|
|
85
101
|
if (!silence) {
|
|
86
102
|
console.log("");
|
|
87
|
-
console.log(
|
|
103
|
+
console.log(
|
|
104
|
+
chalk2.bgGreen.black(" DONE "),
|
|
105
|
+
chalk2.green("Done!")
|
|
106
|
+
);
|
|
88
107
|
console.log("");
|
|
89
108
|
}
|
|
90
109
|
}).then(resolve).catch(reject);
|
|
@@ -95,7 +114,7 @@ export {
|
|
|
95
114
|
};
|
|
96
115
|
/*!
|
|
97
116
|
* node-minify
|
|
98
|
-
* Copyright(c) 2011-
|
|
117
|
+
* Copyright(c) 2011-2024 Rodolphe Stoclin
|
|
99
118
|
* MIT Licensed
|
|
100
119
|
*/
|
|
101
120
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/compress.ts","../src/spinner.ts"],"sourcesContent":["/*!\n * node-minify\n * Copyright(c) 2011-
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/compress.ts","../src/spinner.ts"],"sourcesContent":["/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { Result, Settings } from \"@node-minify/types\";\n// @ts-expect-error moduleResolution:nodenext issue 54523\nimport chalk from \"chalk\";\nimport { compress } from \"./compress\";\nimport { spinnerError, spinnerStart, spinnerStop } from \"./spinner\";\n\n/**\n * Module variables.\n */\nlet silence = false;\n\n/**\n * Run one compressor.\n * @param cli Settings\n */\nconst runOne = async (cli: Settings) => {\n const compressor =\n typeof cli.compressor === \"string\"\n ? await import(`@node-minify/${cli.compressor}`)\n : cli.compressor;\n\n const compressorName =\n typeof cli.compressor === \"string\"\n ? cli.compressor\n : cli.compressor\n ? cli.compressor.name\n : \"unknownCompressor\";\n\n const options: Settings = {\n compressorLabel: compressorName,\n compressor: compressor.default,\n input: typeof cli.input === \"string\" ? cli.input.split(\",\") : \"\",\n output: cli.output,\n };\n\n if (cli.option) {\n options.options = JSON.parse(cli.option);\n }\n\n if (!silence) {\n spinnerStart(options);\n }\n\n return compress(options)\n .then((result: Result) => {\n if (!silence) {\n spinnerStop(result);\n }\n return result;\n })\n .catch((err: Error) => {\n if (!silence) {\n spinnerError(options);\n }\n throw err;\n });\n};\n\n/**\n * Run cli.\n * @param cli Settings\n */\nconst run = (cli: Settings) => {\n silence = !!cli.silence;\n\n if (!silence) {\n console.log(\"\");\n console.log(chalk.bgBlue.black(\" INFO \"), \"Starting compression...\");\n console.log(\"\");\n }\n\n return new Promise((resolve, reject) => {\n runOne(cli)\n .then(() => {\n if (!silence) {\n console.log(\"\");\n console.log(\n chalk.bgGreen.black(\" DONE \"),\n chalk.green(\"Done!\")\n );\n console.log(\"\");\n }\n })\n .then(resolve)\n .catch(reject);\n });\n};\n\n/**\n * Expose `run()`.\n */\nexport { run };\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport minify from \"@node-minify/core\";\nimport type { Result, Settings } from \"@node-minify/types\";\nimport { utils } from \"@node-minify/utils\";\n\n/**\n * Run compression.\n * @param options Settings\n */\nconst compress = (options: Settings): Promise<Result> => {\n return new Promise<Result>((resolve, reject) => {\n minify(options)\n .then(() => {\n if (options?.output?.includes(\"$1\")) {\n // npx node-minify --compressor uglify-js --input 'source/**/*.js' --output 'source/$1.min.js' --option '{\"warnings\": true, \"mangle\": false}'\n return resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: \"0\",\n sizeGzip: \"0\",\n });\n }\n if (!options.output) {\n return resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: \"0\",\n sizeGzip: \"0\",\n });\n }\n utils\n .getFilesizeGzippedInBytes(options.output)\n .then((sizeGzip: string) => {\n resolve({\n compressorLabel: options.compressorLabel ?? \"\",\n compressor: options.compressor,\n size: options.output\n ? utils.getFilesizeInBytes(options.output)\n : \"0\",\n sizeGzip: sizeGzip,\n });\n })\n .catch(reject);\n })\n .catch(reject);\n });\n};\n\n/**\n * Expose `compress()`.\n */\nexport { compress };\n","/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { Result, Settings } from \"@node-minify/types\";\nimport chalk from \"chalk\";\nimport ora from \"ora\";\n\nconst spinner = ora();\n\n/**\n * Start spinner.\n * @param options Settings\n */\nconst start = (options: Settings) => {\n spinner.text = `Compressing file(s) with ${chalk.green(\n options.compressorLabel\n )}...`;\n spinner.start();\n};\n\n/**\n * Stop spinner.\n * @param result\n */\nconst stop = (result: Result) => {\n spinner.text = `File(s) compressed successfully with ${chalk.green(\n result.compressorLabel\n )} (${chalk.green(result.size)} minified, ${chalk.green(\n result.sizeGzip\n )} gzipped)`;\n spinner.succeed();\n};\n\n/**\n * Mark spinner as failed.\n * @param options Settings\n */\nconst error = (options: Settings) => {\n spinner.text = `Error - file(s) not compressed with ${chalk.red(\n options.compressorLabel\n )}`;\n spinner.fail();\n};\n\n/**\n * Expose `start(), stop() and error()`.\n */\nexport { start as spinnerStart, stop as spinnerStop, error as spinnerError };\n"],"mappings":"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","names":["chalk","chalk"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@node-minify/cli",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "9.0.0",
|
|
4
4
|
"description": "CLI - command line interface for @node-minify",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"compressor",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"node-minify": "dist/cli.mjs"
|
|
15
15
|
},
|
|
16
16
|
"engines": {
|
|
17
|
-
"node": ">=
|
|
17
|
+
"node": ">=18.0.0"
|
|
18
18
|
},
|
|
19
19
|
"directories": {
|
|
20
20
|
"lib": "dist",
|
|
@@ -24,9 +24,11 @@
|
|
|
24
24
|
"module": "./dist/index.mjs",
|
|
25
25
|
"types": "./dist/index.d.ts",
|
|
26
26
|
"exports": {
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
".": {
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
29
|
+
"import": "./dist/index.mjs",
|
|
30
|
+
"require": "./dist/index.cjs"
|
|
31
|
+
}
|
|
30
32
|
},
|
|
31
33
|
"files": [
|
|
32
34
|
"bin",
|
|
@@ -42,23 +44,25 @@
|
|
|
42
44
|
"bugs": {
|
|
43
45
|
"url": "https://github.com/srod/node-minify/issues"
|
|
44
46
|
},
|
|
45
|
-
"scripts": {
|
|
46
|
-
"clean": "pnpm dlx rimraf dist",
|
|
47
|
-
"build": "pnpm clean && tsup src/index.ts --format cjs,esm --dts --sourcemap && tsup src/bin/cli.ts --format esm --dts --sourcemap",
|
|
48
|
-
"prepublishOnly": "pnpm build"
|
|
49
|
-
},
|
|
50
47
|
"dependencies": {
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
48
|
+
"chalk": "5.3.0",
|
|
49
|
+
"commander": "12.1.0",
|
|
50
|
+
"ora": "8.1.1",
|
|
51
|
+
"update-notifier": "7.3.1",
|
|
52
|
+
"@node-minify/core": "9.0.0",
|
|
53
|
+
"@node-minify/utils": "9.0.0"
|
|
57
54
|
},
|
|
58
55
|
"devDependencies": {
|
|
59
|
-
"@node-minify/types": "8.0.5",
|
|
60
56
|
"@types/chalk": "^2.2.0",
|
|
61
|
-
"@types/ora": "^3.2.0"
|
|
57
|
+
"@types/ora": "^3.2.0",
|
|
58
|
+
"@node-minify/types": "9.0.0"
|
|
62
59
|
},
|
|
63
|
-
"
|
|
64
|
-
|
|
60
|
+
"scripts": {
|
|
61
|
+
"clean": "pnpm dlx rimraf dist",
|
|
62
|
+
"build": "pnpm clean && tsup src/index.ts --format cjs,esm --dts --sourcemap && tsup src/bin/cli.ts --format esm --dts --sourcemap",
|
|
63
|
+
"lint": "biome lint .",
|
|
64
|
+
"test": "vitest run",
|
|
65
|
+
"test:ci": "vitest run --coverage",
|
|
66
|
+
"test:watch": "vitest"
|
|
67
|
+
}
|
|
68
|
+
}
|