yaml 2.6.0 → 2.7.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/README.md +27 -8
- package/browser/dist/compose/resolve-props.js +1 -1
- package/browser/dist/log.js +1 -4
- package/browser/dist/schema/json/schema.js +1 -1
- package/browser/dist/schema/yaml-1.1/binary.js +2 -11
- package/browser/dist/schema/yaml-1.1/timestamp.js +1 -1
- package/browser/dist/stringify/stringifyString.js +20 -11
- package/browser/dist/util.js +1 -1
- package/dist/compose/compose-collection.d.ts +4 -4
- package/dist/compose/compose-doc.d.ts +6 -6
- package/dist/compose/compose-node.d.ts +7 -7
- package/dist/compose/compose-scalar.d.ts +4 -4
- package/dist/compose/composer.d.ts +7 -6
- package/dist/compose/composer.js +2 -1
- package/dist/compose/resolve-block-map.d.ts +5 -5
- package/dist/compose/resolve-block-scalar.d.ts +5 -5
- package/dist/compose/resolve-block-seq.d.ts +5 -5
- package/dist/compose/resolve-end.d.ts +2 -2
- package/dist/compose/resolve-flow-collection.d.ts +7 -7
- package/dist/compose/resolve-flow-scalar.d.ts +4 -4
- package/dist/compose/resolve-props.d.ts +2 -2
- package/dist/compose/resolve-props.js +1 -1
- package/dist/compose/util-contains-newline.d.ts +1 -1
- package/dist/compose/util-empty-scalar-position.d.ts +1 -1
- package/dist/compose/util-flow-indent-check.d.ts +2 -2
- package/dist/compose/util-map-includes.d.ts +3 -3
- package/dist/doc/Document.d.ts +11 -11
- package/dist/doc/anchors.d.ts +2 -2
- package/dist/doc/createNode.d.ts +4 -4
- package/dist/doc/directives.d.ts +1 -1
- package/dist/index.d.ts +21 -18
- package/dist/log.js +4 -2
- package/dist/nodes/Alias.d.ts +9 -8
- package/dist/nodes/Collection.d.ts +4 -4
- package/dist/nodes/Node.d.ts +10 -10
- package/dist/nodes/Pair.d.ts +9 -8
- package/dist/nodes/Scalar.d.ts +4 -3
- package/dist/nodes/YAMLMap.d.ts +10 -10
- package/dist/nodes/YAMLSeq.d.ts +10 -10
- package/dist/nodes/addPairToJSMap.d.ts +3 -3
- package/dist/nodes/identity.d.ts +7 -7
- package/dist/nodes/toJS.d.ts +2 -2
- package/dist/options.d.ts +10 -10
- package/dist/parse/cst-scalar.d.ts +4 -4
- package/dist/parse/cst-stringify.d.ts +1 -1
- package/dist/parse/cst-visit.d.ts +2 -2
- package/dist/parse/cst.d.ts +4 -3
- package/dist/parse/lexer.d.ts +1 -1
- package/dist/parse/parser.d.ts +4 -4
- package/dist/parse/parser.js +2 -1
- package/dist/public-api.d.ts +6 -5
- package/dist/schema/Schema.d.ts +4 -4
- package/dist/schema/common/map.d.ts +1 -1
- package/dist/schema/common/null.d.ts +1 -1
- package/dist/schema/common/seq.d.ts +1 -1
- package/dist/schema/common/string.d.ts +1 -1
- package/dist/schema/core/bool.d.ts +1 -1
- package/dist/schema/core/float.d.ts +1 -1
- package/dist/schema/core/int.d.ts +1 -1
- package/dist/schema/core/schema.d.ts +1 -1
- package/dist/schema/json/schema.d.ts +1 -1
- package/dist/schema/json/schema.js +1 -1
- package/dist/schema/tags.d.ts +2 -2
- package/dist/schema/types.d.ts +8 -8
- package/dist/schema/yaml-1.1/binary.d.ts +1 -1
- package/dist/schema/yaml-1.1/binary.js +6 -5
- package/dist/schema/yaml-1.1/bool.d.ts +1 -1
- package/dist/schema/yaml-1.1/float.d.ts +1 -1
- package/dist/schema/yaml-1.1/int.d.ts +1 -1
- package/dist/schema/yaml-1.1/merge.d.ts +3 -3
- package/dist/schema/yaml-1.1/omap.d.ts +11 -17
- package/dist/schema/yaml-1.1/pairs.d.ts +7 -7
- package/dist/schema/yaml-1.1/schema.d.ts +1 -1
- package/dist/schema/yaml-1.1/set.d.ts +9 -9
- package/dist/schema/yaml-1.1/timestamp.d.ts +1 -1
- package/dist/schema/yaml-1.1/timestamp.js +1 -1
- package/dist/stringify/stringify.d.ts +3 -3
- package/dist/stringify/stringifyCollection.d.ts +2 -2
- package/dist/stringify/stringifyDocument.d.ts +3 -3
- package/dist/stringify/stringifyNumber.d.ts +1 -1
- package/dist/stringify/stringifyPair.d.ts +2 -2
- package/dist/stringify/stringifyString.d.ts +2 -2
- package/dist/stringify/stringifyString.js +20 -11
- package/dist/util.d.ts +16 -12
- package/dist/util.js +2 -2
- package/dist/visit.d.ts +7 -7
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -55,24 +55,29 @@ The first has the simplest API and "just works", the second gets you all the bel
|
|
|
55
55
|
|
|
56
56
|
A [command-line tool](https://eemeli.org/yaml/#command-line-tool) is also included.
|
|
57
57
|
|
|
58
|
+
### Parse & Stringify
|
|
59
|
+
|
|
58
60
|
```js
|
|
59
61
|
import { parse, stringify } from 'yaml'
|
|
60
|
-
// or
|
|
61
|
-
import YAML from 'yaml'
|
|
62
|
-
// or
|
|
63
|
-
const YAML = require('yaml')
|
|
64
62
|
```
|
|
65
63
|
|
|
66
|
-
### Parse & Stringify
|
|
67
|
-
|
|
68
64
|
- [`parse(str, reviver?, options?): value`](https://eemeli.org/yaml/#yaml-parse)
|
|
69
65
|
- [`stringify(value, replacer?, options?): string`](https://eemeli.org/yaml/#yaml-stringify)
|
|
70
66
|
|
|
71
67
|
### Documents
|
|
72
68
|
|
|
69
|
+
<!-- prettier-ignore -->
|
|
70
|
+
```js
|
|
71
|
+
import {
|
|
72
|
+
Document,
|
|
73
|
+
isDocument,
|
|
74
|
+
parseAllDocuments,
|
|
75
|
+
parseDocument
|
|
76
|
+
} from 'yaml'
|
|
77
|
+
```
|
|
78
|
+
|
|
73
79
|
- [`Document`](https://eemeli.org/yaml/#documents)
|
|
74
80
|
- [`constructor(value, replacer?, options?)`](https://eemeli.org/yaml/#creating-documents)
|
|
75
|
-
- [`#anchors`](https://eemeli.org/yaml/#working-with-anchors)
|
|
76
81
|
- [`#contents`](https://eemeli.org/yaml/#content-nodes)
|
|
77
82
|
- [`#directives`](https://eemeli.org/yaml/#stream-directives)
|
|
78
83
|
- [`#errors`](https://eemeli.org/yaml/#errors)
|
|
@@ -83,6 +88,15 @@ const YAML = require('yaml')
|
|
|
83
88
|
|
|
84
89
|
### Content Nodes
|
|
85
90
|
|
|
91
|
+
<!-- prettier-ignore -->
|
|
92
|
+
```js
|
|
93
|
+
import {
|
|
94
|
+
isAlias, isCollection, isMap, isNode,
|
|
95
|
+
isPair, isScalar, isSeq, Scalar,
|
|
96
|
+
visit, visitAsync, YAMLMap, YAMLSeq
|
|
97
|
+
} from 'yaml'
|
|
98
|
+
```
|
|
99
|
+
|
|
86
100
|
- [`isAlias(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)
|
|
87
101
|
- [`isCollection(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)
|
|
88
102
|
- [`isMap(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types)
|
|
@@ -93,13 +107,18 @@ const YAML = require('yaml')
|
|
|
93
107
|
- [`new Scalar(value)`](https://eemeli.org/yaml/#scalar-values)
|
|
94
108
|
- [`new YAMLMap()`](https://eemeli.org/yaml/#collections)
|
|
95
109
|
- [`new YAMLSeq()`](https://eemeli.org/yaml/#collections)
|
|
96
|
-
- [`doc.createAlias(node, name?): Alias`](https://eemeli.org/yaml/#
|
|
110
|
+
- [`doc.createAlias(node, name?): Alias`](https://eemeli.org/yaml/#creating-nodes)
|
|
97
111
|
- [`doc.createNode(value, options?): Node`](https://eemeli.org/yaml/#creating-nodes)
|
|
98
112
|
- [`doc.createPair(key, value): Pair`](https://eemeli.org/yaml/#creating-nodes)
|
|
99
113
|
- [`visit(node, visitor)`](https://eemeli.org/yaml/#finding-and-modifying-nodes)
|
|
114
|
+
- [`visitAsync(node, visitor)`](https://eemeli.org/yaml/#finding-and-modifying-nodes)
|
|
100
115
|
|
|
101
116
|
### Parsing YAML
|
|
102
117
|
|
|
118
|
+
```js
|
|
119
|
+
import { Composer, Lexer, Parser } from 'yaml'
|
|
120
|
+
```
|
|
121
|
+
|
|
103
122
|
- [`new Lexer().lex(src)`](https://eemeli.org/yaml/#lexer)
|
|
104
123
|
- [`new Parser(onNewLine?).parse(src)`](https://eemeli.org/yaml/#parser)
|
|
105
124
|
- [`new Composer(options?).compose(tokens)`](https://eemeli.org/yaml/#composer)
|
package/browser/dist/log.js
CHANGED
|
@@ -4,10 +4,7 @@ function debug(logLevel, ...messages) {
|
|
|
4
4
|
}
|
|
5
5
|
function warn(logLevel, warning) {
|
|
6
6
|
if (logLevel === 'debug' || logLevel === 'warn') {
|
|
7
|
-
|
|
8
|
-
process.emitWarning(warning);
|
|
9
|
-
else
|
|
10
|
-
console.warn(warning);
|
|
7
|
+
console.warn(warning);
|
|
11
8
|
}
|
|
12
9
|
}
|
|
13
10
|
|
|
@@ -14,10 +14,7 @@ const binary = {
|
|
|
14
14
|
* document.querySelector('#photo').src = URL.createObjectURL(blob)
|
|
15
15
|
*/
|
|
16
16
|
resolve(src, onError) {
|
|
17
|
-
if (typeof
|
|
18
|
-
return Buffer.from(src, 'base64');
|
|
19
|
-
}
|
|
20
|
-
else if (typeof atob === 'function') {
|
|
17
|
+
if (typeof atob === 'function') {
|
|
21
18
|
// On IE 11, atob() can't handle newlines
|
|
22
19
|
const str = atob(src.replace(/[\n\r]/g, ''));
|
|
23
20
|
const buffer = new Uint8Array(str.length);
|
|
@@ -33,13 +30,7 @@ const binary = {
|
|
|
33
30
|
stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
|
|
34
31
|
const buf = value; // checked earlier by binary.identify()
|
|
35
32
|
let str;
|
|
36
|
-
if (typeof
|
|
37
|
-
str =
|
|
38
|
-
buf instanceof Buffer
|
|
39
|
-
? buf.toString('base64')
|
|
40
|
-
: Buffer.from(buf.buffer).toString('base64');
|
|
41
|
-
}
|
|
42
|
-
else if (typeof btoa === 'function') {
|
|
33
|
+
if (typeof btoa === 'function') {
|
|
43
34
|
let s = '';
|
|
44
35
|
for (let i = 0; i < buf.length; ++i)
|
|
45
36
|
s += String.fromCharCode(buf[i]);
|
|
@@ -95,7 +95,7 @@ const timestamp = {
|
|
|
95
95
|
}
|
|
96
96
|
return new Date(date);
|
|
97
97
|
},
|
|
98
|
-
stringify: ({ value }) => value.toISOString().replace(/(
|
|
98
|
+
stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, '')
|
|
99
99
|
};
|
|
100
100
|
|
|
101
101
|
export { floatTime, intTime, timestamp };
|
|
@@ -219,23 +219,32 @@ function blockString({ comment, type, value }, ctx, onComment, onChompKeep) {
|
|
|
219
219
|
start = start.replace(/\n+/g, `$&${indent}`);
|
|
220
220
|
}
|
|
221
221
|
const indentSize = indent ? '2' : '1'; // root is at -1
|
|
222
|
-
|
|
222
|
+
// Leading | or > is added later
|
|
223
|
+
let header = (startWithSpace ? indentSize : '') + chomp;
|
|
223
224
|
if (comment) {
|
|
224
225
|
header += ' ' + commentString(comment.replace(/ ?[\r\n]+/g, ' '));
|
|
225
226
|
if (onComment)
|
|
226
227
|
onComment();
|
|
227
228
|
}
|
|
228
|
-
if (literal) {
|
|
229
|
-
|
|
230
|
-
|
|
229
|
+
if (!literal) {
|
|
230
|
+
const foldedValue = value
|
|
231
|
+
.replace(/\n+/g, '\n$&')
|
|
232
|
+
.replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, '$1$2') // more-indented lines aren't folded
|
|
233
|
+
// ^ more-ind. ^ empty ^ capture next empty lines only at end of indent
|
|
234
|
+
.replace(/\n+/g, `$&${indent}`);
|
|
235
|
+
let literalFallback = false;
|
|
236
|
+
const foldOptions = getFoldOptions(ctx, true);
|
|
237
|
+
if (blockQuote !== 'folded' && type !== Scalar.BLOCK_FOLDED) {
|
|
238
|
+
foldOptions.onOverflow = () => {
|
|
239
|
+
literalFallback = true;
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
const body = foldFlowLines(`${start}${foldedValue}${end}`, indent, FOLD_BLOCK, foldOptions);
|
|
243
|
+
if (!literalFallback)
|
|
244
|
+
return `>${header}\n${indent}${body}`;
|
|
231
245
|
}
|
|
232
|
-
value = value
|
|
233
|
-
|
|
234
|
-
.replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, '$1$2') // more-indented lines aren't folded
|
|
235
|
-
// ^ more-ind. ^ empty ^ capture next empty lines only at end of indent
|
|
236
|
-
.replace(/\n+/g, `$&${indent}`);
|
|
237
|
-
const body = foldFlowLines(`${start}${value}${end}`, indent, FOLD_BLOCK, getFoldOptions(ctx, true));
|
|
238
|
-
return `${header}\n${indent}${body}`;
|
|
246
|
+
value = value.replace(/\n+/g, `$&${indent}`);
|
|
247
|
+
return `|${header}\n${indent}${start}${value}${end}`;
|
|
239
248
|
}
|
|
240
249
|
function plainString(item, ctx, onComment, onChompKeep) {
|
|
241
250
|
const { type, value } = item;
|
package/browser/dist/util.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { createNode } from './doc/createNode.js';
|
|
2
2
|
export { debug, warn } from './log.js';
|
|
3
3
|
export { createPair } from './nodes/Pair.js';
|
|
4
|
-
export { findPair } from './nodes/YAMLMap.js';
|
|
5
4
|
export { toJS } from './nodes/toJS.js';
|
|
5
|
+
export { findPair } from './nodes/YAMLMap.js';
|
|
6
6
|
export { map as mapTag } from './schema/common/map.js';
|
|
7
7
|
export { seq as seqTag } from './schema/common/seq.js';
|
|
8
8
|
export { string as stringTag } from './schema/common/string.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { ParsedNode } from '../nodes/Node
|
|
2
|
-
import type { BlockMap, BlockSequence, FlowCollection, SourceToken } from '../parse/cst
|
|
3
|
-
import type { ComposeContext, ComposeNode } from './compose-node
|
|
4
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { ParsedNode } from '../nodes/Node';
|
|
2
|
+
import type { BlockMap, BlockSequence, FlowCollection, SourceToken } from '../parse/cst';
|
|
3
|
+
import type { ComposeContext, ComposeNode } from './compose-node';
|
|
4
|
+
import type { ComposeErrorHandler } from './composer';
|
|
5
5
|
interface Props {
|
|
6
6
|
anchor: SourceToken | null;
|
|
7
7
|
tag: SourceToken | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Directives } from '../doc/directives
|
|
2
|
-
import { Document } from '../doc/Document
|
|
3
|
-
import type { ParsedNode } from '../nodes/Node
|
|
4
|
-
import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options
|
|
5
|
-
import type * as CST from '../parse/cst
|
|
6
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { Directives } from '../doc/directives';
|
|
2
|
+
import { Document } from '../doc/Document';
|
|
3
|
+
import type { ParsedNode } from '../nodes/Node';
|
|
4
|
+
import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options';
|
|
5
|
+
import type * as CST from '../parse/cst';
|
|
6
|
+
import type { ComposeErrorHandler } from './composer';
|
|
7
7
|
export declare function composeDoc<Contents extends ParsedNode = ParsedNode, Strict extends boolean = true>(options: ParseOptions & DocumentOptions & SchemaOptions, directives: Directives, { offset, start, value, end }: CST.Document, onError: ComposeErrorHandler): Document.Parsed<Contents, Strict>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { Directives } from '../doc/directives
|
|
2
|
-
import type { ParsedNode } from '../nodes/Node
|
|
3
|
-
import type { ParseOptions } from '../options
|
|
4
|
-
import type { SourceToken, Token } from '../parse/cst
|
|
5
|
-
import type { Schema } from '../schema/Schema
|
|
6
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { Directives } from '../doc/directives';
|
|
2
|
+
import type { ParsedNode } from '../nodes/Node';
|
|
3
|
+
import type { ParseOptions } from '../options';
|
|
4
|
+
import type { SourceToken, Token } from '../parse/cst';
|
|
5
|
+
import type { Schema } from '../schema/Schema';
|
|
6
|
+
import type { ComposeErrorHandler } from './composer';
|
|
7
7
|
export interface ComposeContext {
|
|
8
8
|
atKey: boolean;
|
|
9
9
|
atRoot: boolean;
|
|
@@ -25,5 +25,5 @@ declare const CN: {
|
|
|
25
25
|
};
|
|
26
26
|
export type ComposeNode = typeof CN;
|
|
27
27
|
export declare function composeNode(ctx: ComposeContext, token: Token, props: Props, onError: ComposeErrorHandler): ParsedNode;
|
|
28
|
-
export declare function composeEmptyNode(ctx: ComposeContext, offset: number, before: Token[] | undefined, pos: number | null, { spaceBefore, comment, anchor, tag, end }: Props, onError: ComposeErrorHandler): import(
|
|
28
|
+
export declare function composeEmptyNode(ctx: ComposeContext, offset: number, before: Token[] | undefined, pos: number | null, { spaceBefore, comment, anchor, tag, end }: Props, onError: ComposeErrorHandler): import('../index').Scalar.Parsed;
|
|
29
29
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Scalar } from '../nodes/Scalar
|
|
2
|
-
import type { BlockScalar, FlowScalar, SourceToken } from '../parse/cst
|
|
3
|
-
import type { ComposeContext } from './compose-node
|
|
4
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import { Scalar } from '../nodes/Scalar';
|
|
2
|
+
import type { BlockScalar, FlowScalar, SourceToken } from '../parse/cst';
|
|
3
|
+
import type { ComposeContext } from './compose-node';
|
|
4
|
+
import type { ComposeErrorHandler } from './composer';
|
|
5
5
|
export declare function composeScalar(ctx: ComposeContext, token: FlowScalar | BlockScalar, tagToken: SourceToken | null, onError: ComposeErrorHandler): Scalar.Parsed;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Directives } from '../doc/directives
|
|
2
|
-
import { Document } from '../doc/Document
|
|
3
|
-
import { ErrorCode
|
|
4
|
-
import
|
|
5
|
-
import type {
|
|
6
|
-
import type {
|
|
1
|
+
import { Directives } from '../doc/directives';
|
|
2
|
+
import { Document } from '../doc/Document';
|
|
3
|
+
import type { ErrorCode } from '../errors';
|
|
4
|
+
import { YAMLParseError, YAMLWarning } from '../errors';
|
|
5
|
+
import type { ParsedNode, Range } from '../nodes/Node';
|
|
6
|
+
import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options';
|
|
7
|
+
import type { Token } from '../parse/cst';
|
|
7
8
|
type ErrorSource = number | [number, number] | Range | {
|
|
8
9
|
offset: number;
|
|
9
10
|
source?: string;
|
package/dist/compose/composer.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var node_process = require('node:process');
|
|
3
4
|
var directives = require('../doc/directives.js');
|
|
4
5
|
var Document = require('../doc/Document.js');
|
|
5
6
|
var errors = require('../errors.js');
|
|
@@ -133,7 +134,7 @@ class Composer {
|
|
|
133
134
|
}
|
|
134
135
|
/** Advance the composer by one CST token. */
|
|
135
136
|
*next(token) {
|
|
136
|
-
if (
|
|
137
|
+
if (node_process.env.LOG_STREAM)
|
|
137
138
|
console.dir(token, { depth: null });
|
|
138
139
|
switch (token.type) {
|
|
139
140
|
case 'directive':
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { YAMLMap } from '../nodes/YAMLMap
|
|
2
|
-
import type { BlockMap } from '../parse/cst
|
|
3
|
-
import { CollectionTag } from '../schema/types
|
|
4
|
-
import type { ComposeContext, ComposeNode } from './compose-node
|
|
5
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import { YAMLMap } from '../nodes/YAMLMap';
|
|
2
|
+
import type { BlockMap } from '../parse/cst';
|
|
3
|
+
import type { CollectionTag } from '../schema/types';
|
|
4
|
+
import type { ComposeContext, ComposeNode } from './compose-node';
|
|
5
|
+
import type { ComposeErrorHandler } from './composer';
|
|
6
6
|
export declare function resolveBlockMap({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, bm: BlockMap, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLMap.Parsed;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Range } from '../nodes/Node
|
|
2
|
-
import { Scalar } from '../nodes/Scalar
|
|
3
|
-
import type { BlockScalar } from '../parse/cst
|
|
4
|
-
import type { ComposeContext } from './compose-node
|
|
5
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { Range } from '../nodes/Node';
|
|
2
|
+
import { Scalar } from '../nodes/Scalar';
|
|
3
|
+
import type { BlockScalar } from '../parse/cst';
|
|
4
|
+
import type { ComposeContext } from './compose-node';
|
|
5
|
+
import type { ComposeErrorHandler } from './composer';
|
|
6
6
|
export declare function resolveBlockScalar(ctx: ComposeContext, scalar: BlockScalar, onError: ComposeErrorHandler): {
|
|
7
7
|
value: string;
|
|
8
8
|
type: Scalar.BLOCK_FOLDED | Scalar.BLOCK_LITERAL | null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { YAMLSeq } from '../nodes/YAMLSeq
|
|
2
|
-
import type { BlockSequence } from '../parse/cst
|
|
3
|
-
import { CollectionTag } from '../schema/types
|
|
4
|
-
import type { ComposeContext, ComposeNode } from './compose-node
|
|
5
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import { YAMLSeq } from '../nodes/YAMLSeq';
|
|
2
|
+
import type { BlockSequence } from '../parse/cst';
|
|
3
|
+
import type { CollectionTag } from '../schema/types';
|
|
4
|
+
import type { ComposeContext, ComposeNode } from './compose-node';
|
|
5
|
+
import type { ComposeErrorHandler } from './composer';
|
|
6
6
|
export declare function resolveBlockSeq({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, bs: BlockSequence, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLSeq.Parsed;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { SourceToken } from '../parse/cst
|
|
2
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { SourceToken } from '../parse/cst';
|
|
2
|
+
import type { ComposeErrorHandler } from './composer';
|
|
3
3
|
export declare function resolveEnd(end: SourceToken[] | undefined, offset: number, reqSpace: boolean, onError: ComposeErrorHandler): {
|
|
4
4
|
comment: string;
|
|
5
5
|
offset: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { YAMLMap } from '../nodes/YAMLMap
|
|
2
|
-
import { YAMLSeq } from '../nodes/YAMLSeq
|
|
3
|
-
import type { FlowCollection } from '../parse/cst
|
|
4
|
-
import { CollectionTag } from '../schema/types
|
|
5
|
-
import type { ComposeContext, ComposeNode } from './compose-node
|
|
6
|
-
import type { ComposeErrorHandler } from './composer
|
|
7
|
-
export declare function resolveFlowCollection({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, fc: FlowCollection, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLMap.Parsed<import(
|
|
1
|
+
import { YAMLMap } from '../nodes/YAMLMap';
|
|
2
|
+
import { YAMLSeq } from '../nodes/YAMLSeq';
|
|
3
|
+
import type { FlowCollection } from '../parse/cst';
|
|
4
|
+
import type { CollectionTag } from '../schema/types';
|
|
5
|
+
import type { ComposeContext, ComposeNode } from './compose-node';
|
|
6
|
+
import type { ComposeErrorHandler } from './composer';
|
|
7
|
+
export declare function resolveFlowCollection({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, fc: FlowCollection, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLMap.Parsed<import('../index').ParsedNode, import('../index').ParsedNode | null> | YAMLSeq.Parsed<import('../index').ParsedNode>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Range } from '../nodes/Node
|
|
2
|
-
import { Scalar } from '../nodes/Scalar
|
|
3
|
-
import type { FlowScalar } from '../parse/cst
|
|
4
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { Range } from '../nodes/Node';
|
|
2
|
+
import { Scalar } from '../nodes/Scalar';
|
|
3
|
+
import type { FlowScalar } from '../parse/cst';
|
|
4
|
+
import type { ComposeErrorHandler } from './composer';
|
|
5
5
|
export declare function resolveFlowScalar(scalar: FlowScalar, strict: boolean, onError: ComposeErrorHandler): {
|
|
6
6
|
value: string;
|
|
7
7
|
type: Scalar.PLAIN | Scalar.QUOTE_DOUBLE | Scalar.QUOTE_SINGLE | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { SourceToken, Token } from '../parse/cst
|
|
2
|
-
import type { ComposeErrorHandler } from './composer
|
|
1
|
+
import type { SourceToken, Token } from '../parse/cst';
|
|
2
|
+
import type { ComposeErrorHandler } from './composer';
|
|
3
3
|
export interface ResolvePropsArg {
|
|
4
4
|
flow?: 'flow map' | 'flow sequence';
|
|
5
5
|
indicator: 'doc-start' | 'explicit-key-ind' | 'map-value-ind' | 'seq-item-ind';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Token } from '../parse/cst
|
|
1
|
+
import type { Token } from '../parse/cst';
|
|
2
2
|
export declare function containsNewline(key: Token | null | undefined): boolean | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Token } from '../parse/cst
|
|
1
|
+
import type { Token } from '../parse/cst';
|
|
2
2
|
export declare function emptyScalarPosition(offset: number, before: Token[] | undefined, pos: number | null): number;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Token } from '../parse/cst';
|
|
2
|
-
import { ComposeErrorHandler } from './composer';
|
|
1
|
+
import type { Token } from '../parse/cst';
|
|
2
|
+
import type { ComposeErrorHandler } from './composer';
|
|
3
3
|
export declare function flowIndentCheck(indent: number, fc: Token | null | undefined, onError: ComposeErrorHandler): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ParsedNode } from '../nodes/Node
|
|
2
|
-
import type { Pair } from '../nodes/Pair
|
|
3
|
-
import type { ComposeContext } from './compose-node
|
|
1
|
+
import type { ParsedNode } from '../nodes/Node';
|
|
2
|
+
import type { Pair } from '../nodes/Pair';
|
|
3
|
+
import type { ComposeContext } from './compose-node';
|
|
4
4
|
export declare function mapIncludes(ctx: ComposeContext, items: Pair<ParsedNode>[], search: ParsedNode): boolean;
|
package/dist/doc/Document.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import type { YAMLError, YAMLWarning } from '../errors
|
|
2
|
-
import { Alias } from '../nodes/Alias
|
|
3
|
-
import { NODE_TYPE } from '../nodes/identity
|
|
4
|
-
import type { Node, NodeType, ParsedNode, Range } from '../nodes/Node
|
|
5
|
-
import { Pair } from '../nodes/Pair
|
|
6
|
-
import type { Scalar } from '../nodes/Scalar
|
|
7
|
-
import type { YAMLMap } from '../nodes/YAMLMap
|
|
8
|
-
import type { YAMLSeq } from '../nodes/YAMLSeq
|
|
9
|
-
import type { CreateNodeOptions, DocumentOptions, ParseOptions, SchemaOptions, ToJSOptions, ToStringOptions } from '../options
|
|
10
|
-
import { Schema } from '../schema/Schema
|
|
11
|
-
import { Directives } from './directives
|
|
1
|
+
import type { YAMLError, YAMLWarning } from '../errors';
|
|
2
|
+
import { Alias } from '../nodes/Alias';
|
|
3
|
+
import { NODE_TYPE } from '../nodes/identity';
|
|
4
|
+
import type { Node, NodeType, ParsedNode, Range } from '../nodes/Node';
|
|
5
|
+
import { Pair } from '../nodes/Pair';
|
|
6
|
+
import type { Scalar } from '../nodes/Scalar';
|
|
7
|
+
import type { YAMLMap } from '../nodes/YAMLMap';
|
|
8
|
+
import type { YAMLSeq } from '../nodes/YAMLSeq';
|
|
9
|
+
import type { CreateNodeOptions, DocumentOptions, ParseOptions, SchemaOptions, ToJSOptions, ToStringOptions } from '../options';
|
|
10
|
+
import { Schema } from '../schema/Schema';
|
|
11
|
+
import { Directives } from './directives';
|
|
12
12
|
export type Replacer = any[] | ((key: any, value: any) => unknown);
|
|
13
13
|
export declare namespace Document {
|
|
14
14
|
/** @ts-ignore The typing of directives fails in TS <= 4.2 */
|
package/dist/doc/anchors.d.ts
CHANGED
package/dist/doc/createNode.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Node } from '../nodes/Node
|
|
2
|
-
import type { Schema } from '../schema/Schema
|
|
3
|
-
import type { CollectionTag, ScalarTag } from '../schema/types
|
|
4
|
-
import type { Replacer } from './Document
|
|
1
|
+
import type { Node } from '../nodes/Node';
|
|
2
|
+
import type { Schema } from '../schema/Schema';
|
|
3
|
+
import type { CollectionTag, ScalarTag } from '../schema/types';
|
|
4
|
+
import type { Replacer } from './Document';
|
|
5
5
|
export interface CreateNodeContext {
|
|
6
6
|
aliasDuplicateObjects: boolean;
|
|
7
7
|
keepUndefined: boolean;
|
package/dist/doc/directives.d.ts
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
export { Composer } from './compose/composer
|
|
2
|
-
export { Document } from './doc/Document
|
|
3
|
-
export { Schema } from './schema/Schema
|
|
4
|
-
export { ErrorCode
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export
|
|
13
|
-
export
|
|
14
|
-
export
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
1
|
+
export { Composer } from './compose/composer';
|
|
2
|
+
export { Document } from './doc/Document';
|
|
3
|
+
export { Schema } from './schema/Schema';
|
|
4
|
+
export type { ErrorCode } from './errors';
|
|
5
|
+
export { YAMLError, YAMLParseError, YAMLWarning } from './errors';
|
|
6
|
+
export { Alias } from './nodes/Alias';
|
|
7
|
+
export { isAlias, isCollection, isDocument, isMap, isNode, isPair, isScalar, isSeq } from './nodes/identity';
|
|
8
|
+
export type { Node, ParsedNode, Range } from './nodes/Node';
|
|
9
|
+
export { Pair } from './nodes/Pair';
|
|
10
|
+
export { Scalar } from './nodes/Scalar';
|
|
11
|
+
export { YAMLMap } from './nodes/YAMLMap';
|
|
12
|
+
export { YAMLSeq } from './nodes/YAMLSeq';
|
|
13
|
+
export type { CreateNodeOptions, DocumentOptions, ParseOptions, SchemaOptions, ToJSOptions, ToStringOptions } from './options';
|
|
14
|
+
export * as CST from './parse/cst';
|
|
15
|
+
export { Lexer } from './parse/lexer';
|
|
16
|
+
export { LineCounter } from './parse/line-counter';
|
|
17
|
+
export { Parser } from './parse/parser';
|
|
18
|
+
export type { EmptyStream } from './public-api';
|
|
19
|
+
export { parse, parseAllDocuments, parseDocument, stringify } from './public-api';
|
|
18
20
|
export type { TagId, Tags } from './schema/tags';
|
|
19
21
|
export type { CollectionTag, ScalarTag } from './schema/types';
|
|
20
22
|
export type { YAMLOMap } from './schema/yaml-1.1/omap';
|
|
21
23
|
export type { YAMLSet } from './schema/yaml-1.1/set';
|
|
22
|
-
export { asyncVisitor, asyncVisitorFn,
|
|
24
|
+
export type { asyncVisitor, asyncVisitorFn, visitor, visitorFn } from './visit';
|
|
25
|
+
export { visit, visitAsync } from './visit';
|
package/dist/log.js
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var node_process = require('node:process');
|
|
4
|
+
|
|
3
5
|
function debug(logLevel, ...messages) {
|
|
4
6
|
if (logLevel === 'debug')
|
|
5
7
|
console.log(...messages);
|
|
6
8
|
}
|
|
7
9
|
function warn(logLevel, warning) {
|
|
8
10
|
if (logLevel === 'debug' || logLevel === 'warn') {
|
|
9
|
-
if (typeof
|
|
10
|
-
|
|
11
|
+
if (typeof node_process.emitWarning === 'function')
|
|
12
|
+
node_process.emitWarning(warning);
|
|
11
13
|
else
|
|
12
14
|
console.warn(warning);
|
|
13
15
|
}
|
package/dist/nodes/Alias.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import type { Document } from '../doc/Document
|
|
2
|
-
import type { FlowScalar } from '../parse/cst
|
|
3
|
-
import type { StringifyContext } from '../stringify/stringify
|
|
4
|
-
import {
|
|
1
|
+
import type { Document } from '../doc/Document';
|
|
2
|
+
import type { FlowScalar } from '../parse/cst';
|
|
3
|
+
import type { StringifyContext } from '../stringify/stringify';
|
|
4
|
+
import type { Range } from './Node';
|
|
5
|
+
import { NodeBase } from './Node';
|
|
5
6
|
import type { Scalar } from './Scalar';
|
|
6
|
-
import { ToJSContext } from './toJS
|
|
7
|
-
import type { YAMLMap } from './YAMLMap
|
|
8
|
-
import type { YAMLSeq } from './YAMLSeq
|
|
7
|
+
import type { ToJSContext } from './toJS';
|
|
8
|
+
import type { YAMLMap } from './YAMLMap';
|
|
9
|
+
import type { YAMLSeq } from './YAMLSeq';
|
|
9
10
|
export declare namespace Alias {
|
|
10
11
|
interface Parsed extends Alias {
|
|
11
12
|
range: Range;
|
|
@@ -23,6 +24,6 @@ export declare class Alias extends NodeBase {
|
|
|
23
24
|
* instance of the `source` anchor before this node.
|
|
24
25
|
*/
|
|
25
26
|
resolve(doc: Document): Scalar | YAMLMap | YAMLSeq | undefined;
|
|
26
|
-
toJSON(_arg?: unknown, ctx?: ToJSContext):
|
|
27
|
+
toJSON(_arg?: unknown, ctx?: ToJSContext): unknown;
|
|
27
28
|
toString(ctx?: StringifyContext, _onComment?: () => void, _onChompKeep?: () => void): string;
|
|
28
29
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Schema } from '../schema/Schema
|
|
2
|
-
import { NODE_TYPE } from './identity
|
|
3
|
-
import { NodeBase } from './Node
|
|
4
|
-
export declare function collectionFromPath(schema: Schema, path: unknown[], value: unknown): import(
|
|
1
|
+
import type { Schema } from '../schema/Schema';
|
|
2
|
+
import { NODE_TYPE } from './identity';
|
|
3
|
+
import { NodeBase } from './Node';
|
|
4
|
+
export declare function collectionFromPath(schema: Schema, path: unknown[], value: unknown): import('./Node').Node;
|
|
5
5
|
export declare const isEmptyPath: (path: Iterable<unknown> | null | undefined) => path is null | undefined;
|
|
6
6
|
export declare abstract class Collection extends NodeBase {
|
|
7
7
|
schema: Schema | undefined;
|
package/dist/nodes/Node.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type { Document } from '../doc/Document
|
|
2
|
-
import type { ToJSOptions } from '../options
|
|
3
|
-
import { Token } from '../parse/cst
|
|
4
|
-
import type { StringifyContext } from '../stringify/stringify
|
|
5
|
-
import type { Alias } from './Alias
|
|
6
|
-
import { NODE_TYPE } from './identity
|
|
7
|
-
import type { Scalar } from './Scalar
|
|
8
|
-
import { ToJSContext } from './toJS
|
|
9
|
-
import type { MapLike, YAMLMap } from './YAMLMap
|
|
10
|
-
import type { YAMLSeq } from './YAMLSeq
|
|
1
|
+
import type { Document } from '../doc/Document';
|
|
2
|
+
import type { ToJSOptions } from '../options';
|
|
3
|
+
import type { Token } from '../parse/cst';
|
|
4
|
+
import type { StringifyContext } from '../stringify/stringify';
|
|
5
|
+
import type { Alias } from './Alias';
|
|
6
|
+
import { NODE_TYPE } from './identity';
|
|
7
|
+
import type { Scalar } from './Scalar';
|
|
8
|
+
import type { ToJSContext } from './toJS';
|
|
9
|
+
import type { MapLike, YAMLMap } from './YAMLMap';
|
|
10
|
+
import type { YAMLSeq } from './YAMLSeq';
|
|
11
11
|
export type Node<T = unknown> = Alias | Scalar<T> | YAMLMap<unknown, T> | YAMLSeq<T>;
|
|
12
12
|
/** Utility type mapper */
|
|
13
13
|
export type NodeType<T> = T extends string | number | bigint | boolean | null | undefined ? Scalar<T> : T extends Date ? Scalar<string | Date> : T extends Array<any> ? YAMLSeq<NodeType<T[number]>> : T extends {
|