summaryrefslogtreecommitdiff
path: root/node_modules/json5/lib/cli.js
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:10:59 +0800
committerlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:41:44 +0800
commitfc87c009806dcc98867f6b58efe29b042aa01dee (patch)
tree8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/json5/lib/cli.js
parent3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff)
node: updatemain
Diffstat (limited to 'node_modules/json5/lib/cli.js')
-rwxr-xr-xnode_modules/json5/lib/cli.js152
1 files changed, 0 insertions, 152 deletions
diff --git a/node_modules/json5/lib/cli.js b/node_modules/json5/lib/cli.js
deleted file mode 100755
index 93cb8092..00000000
--- a/node_modules/json5/lib/cli.js
+++ /dev/null
@@ -1,152 +0,0 @@
-#!/usr/bin/env node
-
-const fs = require('fs')
-const path = require('path')
-const pkg = require('../package.json')
-const JSON5 = require('./')
-
-const argv = parseArgs()
-
-if (argv.version) {
- version()
-} else if (argv.help) {
- usage()
-} else {
- const inFilename = argv.defaults[0]
-
- let readStream
- if (inFilename) {
- readStream = fs.createReadStream(inFilename)
- } else {
- readStream = process.stdin
- }
-
- let json5 = ''
- readStream.on('data', data => {
- json5 += data
- })
-
- readStream.on('end', () => {
- let space
- if (argv.space === 't' || argv.space === 'tab') {
- space = '\t'
- } else {
- space = Number(argv.space)
- }
-
- let value
- try {
- value = JSON5.parse(json5)
- if (!argv.validate) {
- const json = JSON.stringify(value, null, space)
-
- let writeStream
-
- // --convert is for backward compatibility with v0.5.1. If
- // specified with <file> and not --out-file, then a file with
- // the same name but with a .json extension will be written.
- if (argv.convert && inFilename && !argv.outFile) {
- const parsedFilename = path.parse(inFilename)
- const outFilename = path.format(
- Object.assign(
- parsedFilename,
- {base: path.basename(parsedFilename.base, parsedFilename.ext) + '.json'}
- )
- )
-
- writeStream = fs.createWriteStream(outFilename)
- } else if (argv.outFile) {
- writeStream = fs.createWriteStream(argv.outFile)
- } else {
- writeStream = process.stdout
- }
-
- writeStream.write(json)
- }
- } catch (err) {
- console.error(err.message)
- process.exit(1)
- }
- })
-}
-
-function parseArgs () {
- let convert
- let space
- let validate
- let outFile
- let version
- let help
- const defaults = []
-
- const args = process.argv.slice(2)
- for (let i = 0; i < args.length; i++) {
- const arg = args[i]
- switch (arg) {
- case '--convert':
- case '-c':
- convert = true
- break
-
- case '--space':
- case '-s':
- space = args[++i]
- break
-
- case '--validate':
- case '-v':
- validate = true
- break
-
- case '--out-file':
- case '-o':
- outFile = args[++i]
- break
-
- case '--version':
- case '-V':
- version = true
- break
-
- case '--help':
- case '-h':
- help = true
- break
-
- default:
- defaults.push(arg)
- break
- }
- }
-
- return {
- convert,
- space,
- validate,
- outFile,
- version,
- help,
- defaults,
- }
-}
-
-function version () {
- console.log(pkg.version)
-}
-
-function usage () {
- console.log(
- `
- Usage: json5 [options] <file>
-
- If <file> is not provided, then STDIN is used.
-
- Options:
-
- -s, --space The number of spaces to indent or 't' for tabs
- -o, --out-file [file] Output to the specified file, otherwise STDOUT
- -v, --validate Validate JSON5 but do not output JSON
- -V, --version Output the version number
- -h, --help Output usage information`
- )
-}