PNG  IHDR pHYs   OiCCPPhotoshop ICC profilexڝSgTS=BKKoR RB&*! J!QEEȠQ, !{kּ> H3Q5 B.@ $pd!s#~<<+"x M0B\t8K@zB@F&S`cbP-`'{[! eDh;VEX0fK9-0IWfH  0Q){`##xFW<+*x<$9E[-qWW.(I+6aa@.y24x6_-"bbϫp@t~,/;m%h^ uf@Wp~<5j>{-]cK'Xto(hw?G%fIq^D$.Tʳ?D*A, `6B$BB dr`)B(Ͱ*`/@4Qhp.U=pa( Aa!ڈbX#!H$ ɈQ"K5H1RT UH=r9\F;2G1Q= C7F dt1r=6Ыhڏ>C03l0.B8, c˱" VcϱwE 6wB aAHXLXNH $4 7 Q'"K&b21XH,#/{C7$C2'ITFnR#,4H#dk9, +ȅ3![ b@qS(RjJ4e2AURݨT5ZBRQ4u9̓IKhhitݕNWGw Ljg(gwLӋT071oUX**| J&*/Tު UUT^S}FU3S ԖUPSSg;goT?~YYLOCQ_ cx,!k u5&|v*=9C3J3WRf?qtN (~))4L1e\kXHQG6EYAJ'\'GgSSݧ M=:.kDwn^Loy}/TmG X $ <5qo</QC]@Caaᄑ.ȽJtq]zۯ6iܟ4)Y3sCQ? 0k߬~OCOg#/c/Wװwa>>r><72Y_7ȷOo_C#dz%gA[z|!?:eAAA!h쐭!ΑiP~aa~ 'W?pX15wCsDDDޛg1O9-J5*>.j<74?.fYXXIlK9.*6nl {/]py.,:@LN8A*%w% yg"/6шC\*NH*Mz쑼5y$3,幄'L Lݛ:v m2=:1qB!Mggfvˬen/kY- BTZ(*geWf͉9+̳ې7ᒶKW-X潬j9(xoʿܔĹdff-[n ڴ VE/(ۻCɾUUMfeI?m]Nmq#׹=TR+Gw- 6 U#pDy  :v{vg/jBFS[b[O>zG499?rCd&ˮ/~јѡ򗓿m|x31^VwwO| (hSЧc3- cHRMz%u0`:o_F@8N ' p @8N@8}' p '#@8N@8N pQ9p!i~}|6-ӪG` VP.@*j>[ K^<֐Z]@8N'KQ<Q(`s" 'hgpKB`R@Dqj '  'P$a ( `D$Na L?u80e J,K˷NI'0eݷ(NI'؀ 2ipIIKp`:O'`ʤxB8Ѥx Ѥx $ $P6 :vRNb 'p,>NB 'P]-->P T+*^h& p '‰a ‰ (ĵt#u33;Nt̵'ޯ; [3W ~]0KH1q@8]O2]3*̧7# *p>us p _6]/}-4|t'|Smx= DoʾM×M_8!)6lq':l7!|4} '\ne t!=hnLn (~Dn\+‰_4k)0e@OhZ`F `.m1} 'vp{F`ON7Srx 'D˸nV`><;yMx!IS钦OM)Ե٥x 'DSD6bS8!" ODz#R >S8!7ّxEh0m$MIPHi$IvS8IN$I p$O8I,sk&I)$IN$Hi$I^Ah.p$MIN$IR8I·N "IF9Ah0m$MIN$IR8IN$I 3jIU;kO$ɳN$+ q.x* tEXtComment

Viewing File: /home/u460558712/domains/mintsdome.online/public_html/node_modules/yaml/dist/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 };
Back to Directory=ceiIENDB`