yaml 1.8.3 → 1.10.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 +4 -4
- package/browser/dist/PlainValue-ff5147c6.js +1277 -0
- package/browser/dist/Schema-2bf2c74e.js +679 -0
- package/browser/dist/index.js +923 -38
- package/browser/dist/legacy-exports.js +3 -0
- package/browser/dist/parse-cst.js +1904 -0
- package/browser/dist/resolveSeq-04825f30.js +2373 -0
- package/browser/dist/types.js +4 -0
- package/browser/dist/util.js +2 -0
- package/browser/dist/warnings-0e4b70d3.js +499 -0
- package/browser/index.js +1 -1
- package/browser/map.js +2 -2
- package/browser/pair.js +2 -2
- package/browser/parse-cst.js +1 -1
- package/browser/scalar.js +2 -2
- package/browser/schema.js +8 -6
- package/browser/seq.js +2 -2
- package/browser/types/binary.js +3 -2
- package/browser/types/omap.js +3 -2
- package/browser/types/pairs.js +3 -2
- package/browser/types/set.js +3 -2
- package/browser/types/timestamp.js +6 -6
- package/browser/types.js +1 -11
- package/browser/util.js +1 -15
- package/dist/Document-2cf6b08c.js +757 -0
- package/dist/PlainValue-ec8e588e.js +876 -0
- package/dist/Schema-42e9705c.js +522 -0
- package/dist/index.js +21 -43
- package/dist/legacy-exports.js +16 -0
- package/dist/parse-cst.js +1747 -0
- package/dist/resolveSeq-4a68b39b.js +2115 -0
- package/dist/test-events.js +11 -14
- package/dist/types.js +23 -0
- package/dist/util.js +19 -0
- package/dist/warnings-39684f17.js +416 -0
- package/index.d.ts +372 -0
- package/index.js +1 -1
- package/map.js +2 -2
- package/package.json +32 -45
- package/pair.js +2 -2
- package/parse-cst.d.ts +187 -0
- package/parse-cst.js +1 -1
- package/scalar.js +2 -2
- package/schema.js +8 -6
- package/seq.js +2 -2
- package/types/binary.js +3 -2
- package/types/omap.js +3 -2
- package/types/pairs.js +3 -2
- package/types/set.js +3 -2
- package/types/timestamp.js +6 -6
- package/types.d.ts +407 -0
- package/types.js +16 -10
- package/types.mjs +15 -18
- package/util.d.ts +86 -0
- package/util.js +14 -13
- package/util.mjs +13 -19
- package/browser/dist/Anchors.js +0 -133
- package/browser/dist/Document.js +0 -819
- package/browser/dist/addComment.js +0 -8
- package/browser/dist/constants.js +0 -26
- package/browser/dist/cst/Alias.js +0 -42
- package/browser/dist/cst/BlankLine.js +0 -56
- package/browser/dist/cst/BlockValue.js +0 -247
- package/browser/dist/cst/Collection.js +0 -274
- package/browser/dist/cst/CollectionItem.js +0 -136
- package/browser/dist/cst/Comment.js +0 -40
- package/browser/dist/cst/Directive.js +0 -72
- package/browser/dist/cst/Document.js +0 -282
- package/browser/dist/cst/FlowCollection.js +0 -216
- package/browser/dist/cst/Node.js +0 -388
- package/browser/dist/cst/ParseContext.js +0 -248
- package/browser/dist/cst/PlainValue.js +0 -166
- package/browser/dist/cst/QuoteDouble.js +0 -241
- package/browser/dist/cst/QuoteSingle.js +0 -116
- package/browser/dist/cst/Range.js +0 -67
- package/browser/dist/cst/parse.js +0 -48
- package/browser/dist/cst/source-utils.js +0 -168
- package/browser/dist/errors.js +0 -112
- package/browser/dist/foldFlowLines.js +0 -138
- package/browser/dist/listTagNames.js +0 -28
- package/browser/dist/schema/Alias.js +0 -139
- package/browser/dist/schema/Collection.js +0 -267
- package/browser/dist/schema/Map.js +0 -178
- package/browser/dist/schema/Merge.js +0 -127
- package/browser/dist/schema/Node.js +0 -7
- package/browser/dist/schema/Pair.js +0 -171
- package/browser/dist/schema/Scalar.js +0 -38
- package/browser/dist/schema/Seq.js +0 -114
- package/browser/dist/schema/index.js +0 -382
- package/browser/dist/schema/parseMap.js +0 -312
- package/browser/dist/schema/parseSeq.js +0 -168
- package/browser/dist/schema/parseUtils.js +0 -110
- package/browser/dist/stringify.js +0 -331
- package/browser/dist/tags/core.js +0 -126
- package/browser/dist/tags/failsafe/index.js +0 -4
- package/browser/dist/tags/failsafe/map.js +0 -56
- package/browser/dist/tags/failsafe/seq.js +0 -43
- package/browser/dist/tags/failsafe/string.js +0 -28
- package/browser/dist/tags/index.js +0 -36
- package/browser/dist/tags/json.js +0 -76
- package/browser/dist/tags/options.js +0 -23
- package/browser/dist/tags/yaml-1.1/binary.js +0 -87
- package/browser/dist/tags/yaml-1.1/index.js +0 -157
- package/browser/dist/tags/yaml-1.1/omap.js +0 -142
- package/browser/dist/tags/yaml-1.1/pairs.js +0 -81
- package/browser/dist/tags/yaml-1.1/set.js +0 -114
- package/browser/dist/tags/yaml-1.1/timestamp.js +0 -97
- package/browser/dist/test-events.js +0 -163
- package/browser/dist/toJSON.js +0 -20
- package/browser/dist/warnings.js +0 -28
- package/dist/Anchors.js +0 -125
- package/dist/Document.js +0 -710
- package/dist/addComment.js +0 -17
- package/dist/constants.js +0 -34
- package/dist/cst/Alias.js +0 -38
- package/dist/cst/BlankLine.js +0 -56
- package/dist/cst/BlockValue.js +0 -248
- package/dist/cst/Collection.js +0 -271
- package/dist/cst/CollectionItem.js +0 -140
- package/dist/cst/Comment.js +0 -38
- package/dist/cst/Directive.js +0 -64
- package/dist/cst/Document.js +0 -281
- package/dist/cst/FlowCollection.js +0 -218
- package/dist/cst/Node.js +0 -365
- package/dist/cst/ParseContext.js +0 -258
- package/dist/cst/PlainValue.js +0 -161
- package/dist/cst/QuoteDouble.js +0 -237
- package/dist/cst/QuoteSingle.js +0 -113
- package/dist/cst/Range.js +0 -63
- package/dist/cst/parse.js +0 -55
- package/dist/cst/source-utils.js +0 -178
- package/dist/errors.js +0 -102
- package/dist/foldFlowLines.js +0 -146
- package/dist/listTagNames.js +0 -38
- package/dist/schema/Alias.js +0 -110
- package/dist/schema/Collection.js +0 -188
- package/dist/schema/Map.js +0 -103
- package/dist/schema/Merge.js +0 -80
- package/dist/schema/Node.js +0 -10
- package/dist/schema/Pair.js +0 -161
- package/dist/schema/Scalar.js +0 -31
- package/dist/schema/Seq.js +0 -78
- package/dist/schema/index.js +0 -315
- package/dist/schema/parseMap.js +0 -343
- package/dist/schema/parseSeq.js +0 -180
- package/dist/schema/parseUtils.js +0 -104
- package/dist/stringify.js +0 -358
- package/dist/tags/core.js +0 -114
- package/dist/tags/failsafe/index.js +0 -17
- package/dist/tags/failsafe/map.js +0 -37
- package/dist/tags/failsafe/seq.js +0 -34
- package/dist/tags/failsafe/string.js +0 -40
- package/dist/tags/index.js +0 -62
- package/dist/tags/json.js +0 -60
- package/dist/tags/options.js +0 -35
- package/dist/tags/yaml-1.1/binary.js +0 -97
- package/dist/tags/yaml-1.1/index.js +0 -131
- package/dist/tags/yaml-1.1/omap.js +0 -105
- package/dist/tags/yaml-1.1/pairs.js +0 -80
- package/dist/tags/yaml-1.1/set.js +0 -91
- package/dist/tags/yaml-1.1/timestamp.js +0 -93
- package/dist/toJSON.js +0 -23
- package/dist/warnings.js +0 -39
package/dist/tags/json.js
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _map = _interopRequireDefault(require("./failsafe/map"));
|
|
9
|
-
|
|
10
|
-
var _seq = _interopRequireDefault(require("./failsafe/seq"));
|
|
11
|
-
|
|
12
|
-
var _Scalar = _interopRequireDefault(require("../schema/Scalar"));
|
|
13
|
-
|
|
14
|
-
var _string = require("./failsafe/string");
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
const schema = [_map.default, _seq.default, {
|
|
19
|
-
identify: value => typeof value === 'string',
|
|
20
|
-
default: true,
|
|
21
|
-
tag: 'tag:yaml.org,2002:str',
|
|
22
|
-
resolve: _string.resolveString,
|
|
23
|
-
stringify: value => JSON.stringify(value)
|
|
24
|
-
}, {
|
|
25
|
-
identify: value => value == null,
|
|
26
|
-
createNode: (schema, value, ctx) => ctx.wrapScalars ? new _Scalar.default(null) : null,
|
|
27
|
-
default: true,
|
|
28
|
-
tag: 'tag:yaml.org,2002:null',
|
|
29
|
-
test: /^null$/,
|
|
30
|
-
resolve: () => null,
|
|
31
|
-
stringify: value => JSON.stringify(value)
|
|
32
|
-
}, {
|
|
33
|
-
identify: value => typeof value === 'boolean',
|
|
34
|
-
default: true,
|
|
35
|
-
tag: 'tag:yaml.org,2002:bool',
|
|
36
|
-
test: /^true|false$/,
|
|
37
|
-
resolve: str => str === 'true',
|
|
38
|
-
stringify: value => JSON.stringify(value)
|
|
39
|
-
}, {
|
|
40
|
-
identify: value => typeof value === 'number',
|
|
41
|
-
default: true,
|
|
42
|
-
tag: 'tag:yaml.org,2002:int',
|
|
43
|
-
test: /^-?(?:0|[1-9][0-9]*)$/,
|
|
44
|
-
resolve: str => parseInt(str, 10),
|
|
45
|
-
stringify: value => JSON.stringify(value)
|
|
46
|
-
}, {
|
|
47
|
-
identify: value => typeof value === 'number',
|
|
48
|
-
default: true,
|
|
49
|
-
tag: 'tag:yaml.org,2002:float',
|
|
50
|
-
test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
|
|
51
|
-
resolve: str => parseFloat(str),
|
|
52
|
-
stringify: value => JSON.stringify(value)
|
|
53
|
-
}];
|
|
54
|
-
|
|
55
|
-
schema.scalarFallback = str => {
|
|
56
|
-
throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`);
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
var _default = schema;
|
|
60
|
-
exports.default = _default;
|
package/dist/tags/options.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.strOptions = exports.nullOptions = exports.boolOptions = exports.binaryOptions = void 0;
|
|
7
|
-
|
|
8
|
-
var _constants = require("../constants");
|
|
9
|
-
|
|
10
|
-
const binaryOptions = {
|
|
11
|
-
defaultType: _constants.Type.BLOCK_LITERAL,
|
|
12
|
-
lineWidth: 76
|
|
13
|
-
};
|
|
14
|
-
exports.binaryOptions = binaryOptions;
|
|
15
|
-
const boolOptions = {
|
|
16
|
-
trueStr: 'true',
|
|
17
|
-
falseStr: 'false'
|
|
18
|
-
};
|
|
19
|
-
exports.boolOptions = boolOptions;
|
|
20
|
-
const nullOptions = {
|
|
21
|
-
nullStr: 'null'
|
|
22
|
-
};
|
|
23
|
-
exports.nullOptions = nullOptions;
|
|
24
|
-
const strOptions = {
|
|
25
|
-
defaultType: _constants.Type.PLAIN,
|
|
26
|
-
doubleQuoted: {
|
|
27
|
-
jsonEncoding: false,
|
|
28
|
-
minMultiLineLength: 40
|
|
29
|
-
},
|
|
30
|
-
fold: {
|
|
31
|
-
lineWidth: 80,
|
|
32
|
-
minContentWidth: 20
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
exports.strOptions = strOptions;
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _constants = require("../../constants");
|
|
9
|
-
|
|
10
|
-
var _errors = require("../../errors");
|
|
11
|
-
|
|
12
|
-
var _stringify = require("../../stringify");
|
|
13
|
-
|
|
14
|
-
var _string = require("../failsafe/string");
|
|
15
|
-
|
|
16
|
-
var _options = require("../options");
|
|
17
|
-
|
|
18
|
-
/* global atob, btoa, Buffer */
|
|
19
|
-
var _default = {
|
|
20
|
-
identify: value => value instanceof Uint8Array,
|
|
21
|
-
// Buffer inherits from Uint8Array
|
|
22
|
-
default: false,
|
|
23
|
-
tag: 'tag:yaml.org,2002:binary',
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Returns a Buffer in node and an Uint8Array in browsers
|
|
27
|
-
*
|
|
28
|
-
* To use the resulting buffer as an image, you'll want to do something like:
|
|
29
|
-
*
|
|
30
|
-
* const blob = new Blob([buffer], { type: 'image/jpeg' })
|
|
31
|
-
* document.querySelector('#photo').src = URL.createObjectURL(blob)
|
|
32
|
-
*/
|
|
33
|
-
resolve: (doc, node) => {
|
|
34
|
-
const src = (0, _string.resolveString)(doc, node);
|
|
35
|
-
|
|
36
|
-
if (typeof Buffer === 'function') {
|
|
37
|
-
return Buffer.from(src, 'base64');
|
|
38
|
-
} else if (typeof atob === 'function') {
|
|
39
|
-
// On IE 11, atob() can't handle newlines
|
|
40
|
-
const str = atob(src.replace(/[\n\r]/g, ''));
|
|
41
|
-
const buffer = new Uint8Array(str.length);
|
|
42
|
-
|
|
43
|
-
for (let i = 0; i < str.length; ++i) buffer[i] = str.charCodeAt(i);
|
|
44
|
-
|
|
45
|
-
return buffer;
|
|
46
|
-
} else {
|
|
47
|
-
const msg = 'This environment does not support reading binary tags; either Buffer or atob is required';
|
|
48
|
-
doc.errors.push(new _errors.YAMLReferenceError(node, msg));
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
options: _options.binaryOptions,
|
|
53
|
-
stringify: ({
|
|
54
|
-
comment,
|
|
55
|
-
type,
|
|
56
|
-
value
|
|
57
|
-
}, ctx, onComment, onChompKeep) => {
|
|
58
|
-
let src;
|
|
59
|
-
|
|
60
|
-
if (typeof Buffer === 'function') {
|
|
61
|
-
src = value instanceof Buffer ? value.toString('base64') : Buffer.from(value.buffer).toString('base64');
|
|
62
|
-
} else if (typeof btoa === 'function') {
|
|
63
|
-
let s = '';
|
|
64
|
-
|
|
65
|
-
for (let i = 0; i < value.length; ++i) s += String.fromCharCode(value[i]);
|
|
66
|
-
|
|
67
|
-
src = btoa(s);
|
|
68
|
-
} else {
|
|
69
|
-
throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
if (!type) type = _options.binaryOptions.defaultType;
|
|
73
|
-
|
|
74
|
-
if (type === _constants.Type.QUOTE_DOUBLE) {
|
|
75
|
-
value = src;
|
|
76
|
-
} else {
|
|
77
|
-
const {
|
|
78
|
-
lineWidth
|
|
79
|
-
} = _options.binaryOptions;
|
|
80
|
-
const n = Math.ceil(src.length / lineWidth);
|
|
81
|
-
const lines = new Array(n);
|
|
82
|
-
|
|
83
|
-
for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
|
|
84
|
-
lines[i] = src.substr(o, lineWidth);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
value = lines.join(type === _constants.Type.BLOCK_LITERAL ? '\n' : ' ');
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
return (0, _stringify.stringifyString)({
|
|
91
|
-
comment,
|
|
92
|
-
type,
|
|
93
|
-
value
|
|
94
|
-
}, ctx, onComment, onChompKeep);
|
|
95
|
-
}
|
|
96
|
-
};
|
|
97
|
-
exports.default = _default;
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _Scalar = _interopRequireDefault(require("../../schema/Scalar"));
|
|
9
|
-
|
|
10
|
-
var _stringify = require("../../stringify");
|
|
11
|
-
|
|
12
|
-
var _failsafe = _interopRequireDefault(require("../failsafe"));
|
|
13
|
-
|
|
14
|
-
var _options = require("../options");
|
|
15
|
-
|
|
16
|
-
var _binary = _interopRequireDefault(require("./binary"));
|
|
17
|
-
|
|
18
|
-
var _omap = _interopRequireDefault(require("./omap"));
|
|
19
|
-
|
|
20
|
-
var _pairs = _interopRequireDefault(require("./pairs"));
|
|
21
|
-
|
|
22
|
-
var _set = _interopRequireDefault(require("./set"));
|
|
23
|
-
|
|
24
|
-
var _timestamp = require("./timestamp");
|
|
25
|
-
|
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
|
-
|
|
28
|
-
const boolStringify = ({
|
|
29
|
-
value
|
|
30
|
-
}) => value ? _options.boolOptions.trueStr : _options.boolOptions.falseStr;
|
|
31
|
-
|
|
32
|
-
var _default = _failsafe.default.concat([{
|
|
33
|
-
identify: value => value == null,
|
|
34
|
-
createNode: (schema, value, ctx) => ctx.wrapScalars ? new _Scalar.default(null) : null,
|
|
35
|
-
default: true,
|
|
36
|
-
tag: 'tag:yaml.org,2002:null',
|
|
37
|
-
test: /^(?:~|[Nn]ull|NULL)?$/,
|
|
38
|
-
resolve: () => null,
|
|
39
|
-
options: _options.nullOptions,
|
|
40
|
-
stringify: () => _options.nullOptions.nullStr
|
|
41
|
-
}, {
|
|
42
|
-
identify: value => typeof value === 'boolean',
|
|
43
|
-
default: true,
|
|
44
|
-
tag: 'tag:yaml.org,2002:bool',
|
|
45
|
-
test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
|
|
46
|
-
resolve: () => true,
|
|
47
|
-
options: _options.boolOptions,
|
|
48
|
-
stringify: boolStringify
|
|
49
|
-
}, {
|
|
50
|
-
identify: value => typeof value === 'boolean',
|
|
51
|
-
default: true,
|
|
52
|
-
tag: 'tag:yaml.org,2002:bool',
|
|
53
|
-
test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
|
|
54
|
-
resolve: () => false,
|
|
55
|
-
options: _options.boolOptions,
|
|
56
|
-
stringify: boolStringify
|
|
57
|
-
}, {
|
|
58
|
-
identify: value => typeof value === 'number',
|
|
59
|
-
default: true,
|
|
60
|
-
tag: 'tag:yaml.org,2002:int',
|
|
61
|
-
format: 'BIN',
|
|
62
|
-
test: /^0b([0-1_]+)$/,
|
|
63
|
-
resolve: (str, bin) => parseInt(bin.replace(/_/g, ''), 2),
|
|
64
|
-
stringify: ({
|
|
65
|
-
value
|
|
66
|
-
}) => '0b' + value.toString(2)
|
|
67
|
-
}, {
|
|
68
|
-
identify: value => typeof value === 'number',
|
|
69
|
-
default: true,
|
|
70
|
-
tag: 'tag:yaml.org,2002:int',
|
|
71
|
-
format: 'OCT',
|
|
72
|
-
test: /^[-+]?0([0-7_]+)$/,
|
|
73
|
-
resolve: (str, oct) => parseInt(oct.replace(/_/g, ''), 8),
|
|
74
|
-
stringify: ({
|
|
75
|
-
value
|
|
76
|
-
}) => (value < 0 ? '-0' : '0') + value.toString(8)
|
|
77
|
-
}, {
|
|
78
|
-
identify: value => typeof value === 'number',
|
|
79
|
-
default: true,
|
|
80
|
-
tag: 'tag:yaml.org,2002:int',
|
|
81
|
-
test: /^[-+]?[0-9][0-9_]*$/,
|
|
82
|
-
resolve: str => parseInt(str.replace(/_/g, ''), 10),
|
|
83
|
-
stringify: _stringify.stringifyNumber
|
|
84
|
-
}, {
|
|
85
|
-
identify: value => typeof value === 'number',
|
|
86
|
-
default: true,
|
|
87
|
-
tag: 'tag:yaml.org,2002:int',
|
|
88
|
-
format: 'HEX',
|
|
89
|
-
test: /^0x([0-9a-fA-F_]+)$/,
|
|
90
|
-
resolve: (str, hex) => parseInt(hex.replace(/_/g, ''), 16),
|
|
91
|
-
stringify: ({
|
|
92
|
-
value
|
|
93
|
-
}) => (value < 0 ? '-0x' : '0x') + value.toString(16)
|
|
94
|
-
}, {
|
|
95
|
-
identify: value => typeof value === 'number',
|
|
96
|
-
default: true,
|
|
97
|
-
tag: 'tag:yaml.org,2002:float',
|
|
98
|
-
test: /^(?:[-+]?\.inf|(\.nan))$/i,
|
|
99
|
-
resolve: (str, nan) => nan ? NaN : str[0] === '-' ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
|
|
100
|
-
stringify: _stringify.stringifyNumber
|
|
101
|
-
}, {
|
|
102
|
-
identify: value => typeof value === 'number',
|
|
103
|
-
default: true,
|
|
104
|
-
tag: 'tag:yaml.org,2002:float',
|
|
105
|
-
format: 'EXP',
|
|
106
|
-
test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
|
|
107
|
-
resolve: str => parseFloat(str.replace(/_/g, '')),
|
|
108
|
-
stringify: ({
|
|
109
|
-
value
|
|
110
|
-
}) => Number(value).toExponential()
|
|
111
|
-
}, {
|
|
112
|
-
identify: value => typeof value === 'number',
|
|
113
|
-
default: true,
|
|
114
|
-
tag: 'tag:yaml.org,2002:float',
|
|
115
|
-
test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
|
|
116
|
-
|
|
117
|
-
resolve(str, frac) {
|
|
118
|
-
const node = new _Scalar.default(parseFloat(str.replace(/_/g, '')));
|
|
119
|
-
|
|
120
|
-
if (frac) {
|
|
121
|
-
const f = frac.replace(/_/g, '');
|
|
122
|
-
if (f[f.length - 1] === '0') node.minFractionDigits = f.length;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
return node;
|
|
126
|
-
},
|
|
127
|
-
|
|
128
|
-
stringify: _stringify.stringifyNumber
|
|
129
|
-
}], _binary.default, _omap.default, _pairs.default, _set.default, _timestamp.intTime, _timestamp.floatTime, _timestamp.timestamp);
|
|
130
|
-
|
|
131
|
-
exports.default = _default;
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = exports.YAMLOMap = void 0;
|
|
7
|
-
|
|
8
|
-
var _errors = require("../../errors");
|
|
9
|
-
|
|
10
|
-
var _toJSON = _interopRequireDefault(require("../../toJSON"));
|
|
11
|
-
|
|
12
|
-
var _Map = _interopRequireDefault(require("../../schema/Map"));
|
|
13
|
-
|
|
14
|
-
var _Pair = _interopRequireDefault(require("../../schema/Pair"));
|
|
15
|
-
|
|
16
|
-
var _Scalar = _interopRequireDefault(require("../../schema/Scalar"));
|
|
17
|
-
|
|
18
|
-
var _Seq = _interopRequireDefault(require("../../schema/Seq"));
|
|
19
|
-
|
|
20
|
-
var _pairs = require("./pairs");
|
|
21
|
-
|
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
|
|
24
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
25
|
-
|
|
26
|
-
class YAMLOMap extends _Seq.default {
|
|
27
|
-
constructor() {
|
|
28
|
-
super();
|
|
29
|
-
|
|
30
|
-
_defineProperty(this, "add", _Map.default.prototype.add.bind(this));
|
|
31
|
-
|
|
32
|
-
_defineProperty(this, "delete", _Map.default.prototype.delete.bind(this));
|
|
33
|
-
|
|
34
|
-
_defineProperty(this, "get", _Map.default.prototype.get.bind(this));
|
|
35
|
-
|
|
36
|
-
_defineProperty(this, "has", _Map.default.prototype.has.bind(this));
|
|
37
|
-
|
|
38
|
-
_defineProperty(this, "set", _Map.default.prototype.set.bind(this));
|
|
39
|
-
|
|
40
|
-
this.tag = YAMLOMap.tag;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
toJSON(_, ctx) {
|
|
44
|
-
const map = new Map();
|
|
45
|
-
if (ctx && ctx.onCreate) ctx.onCreate(map);
|
|
46
|
-
|
|
47
|
-
for (const pair of this.items) {
|
|
48
|
-
let key, value;
|
|
49
|
-
|
|
50
|
-
if (pair instanceof _Pair.default) {
|
|
51
|
-
key = (0, _toJSON.default)(pair.key, '', ctx);
|
|
52
|
-
value = (0, _toJSON.default)(pair.value, key, ctx);
|
|
53
|
-
} else {
|
|
54
|
-
key = (0, _toJSON.default)(pair, '', ctx);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
if (map.has(key)) throw new Error('Ordered maps must not include duplicate keys');
|
|
58
|
-
map.set(key, value);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
return map;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
exports.YAMLOMap = YAMLOMap;
|
|
67
|
-
|
|
68
|
-
_defineProperty(YAMLOMap, "tag", 'tag:yaml.org,2002:omap');
|
|
69
|
-
|
|
70
|
-
function parseOMap(doc, cst) {
|
|
71
|
-
const pairs = (0, _pairs.parsePairs)(doc, cst);
|
|
72
|
-
const seenKeys = [];
|
|
73
|
-
|
|
74
|
-
for (const {
|
|
75
|
-
key
|
|
76
|
-
} of pairs.items) {
|
|
77
|
-
if (key instanceof _Scalar.default) {
|
|
78
|
-
if (seenKeys.includes(key.value)) {
|
|
79
|
-
const msg = 'Ordered maps must not include duplicate keys';
|
|
80
|
-
throw new _errors.YAMLSemanticError(cst, msg);
|
|
81
|
-
} else {
|
|
82
|
-
seenKeys.push(key.value);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
return Object.assign(new YAMLOMap(), pairs);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
function createOMap(schema, iterable, ctx) {
|
|
91
|
-
const pairs = (0, _pairs.createPairs)(schema, iterable, ctx);
|
|
92
|
-
const omap = new YAMLOMap();
|
|
93
|
-
omap.items = pairs.items;
|
|
94
|
-
return omap;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
var _default = {
|
|
98
|
-
identify: value => value instanceof Map,
|
|
99
|
-
nodeClass: YAMLOMap,
|
|
100
|
-
default: false,
|
|
101
|
-
tag: 'tag:yaml.org,2002:omap',
|
|
102
|
-
resolve: parseOMap,
|
|
103
|
-
createNode: createOMap
|
|
104
|
-
};
|
|
105
|
-
exports.default = _default;
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.parsePairs = parsePairs;
|
|
7
|
-
exports.createPairs = createPairs;
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
|
|
10
|
-
var _errors = require("../../errors");
|
|
11
|
-
|
|
12
|
-
var _Map = _interopRequireDefault(require("../../schema/Map"));
|
|
13
|
-
|
|
14
|
-
var _Pair = _interopRequireDefault(require("../../schema/Pair"));
|
|
15
|
-
|
|
16
|
-
var _parseSeq = _interopRequireDefault(require("../../schema/parseSeq"));
|
|
17
|
-
|
|
18
|
-
var _Seq = _interopRequireDefault(require("../../schema/Seq"));
|
|
19
|
-
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
-
|
|
22
|
-
function parsePairs(doc, cst) {
|
|
23
|
-
const seq = (0, _parseSeq.default)(doc, cst);
|
|
24
|
-
|
|
25
|
-
for (let i = 0; i < seq.items.length; ++i) {
|
|
26
|
-
let item = seq.items[i];
|
|
27
|
-
if (item instanceof _Pair.default) continue;else if (item instanceof _Map.default) {
|
|
28
|
-
if (item.items.length > 1) {
|
|
29
|
-
const msg = 'Each pair must have its own sequence indicator';
|
|
30
|
-
throw new _errors.YAMLSemanticError(cst, msg);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
const pair = item.items[0] || new _Pair.default();
|
|
34
|
-
if (item.commentBefore) pair.commentBefore = pair.commentBefore ? `${item.commentBefore}\n${pair.commentBefore}` : item.commentBefore;
|
|
35
|
-
if (item.comment) pair.comment = pair.comment ? `${item.comment}\n${pair.comment}` : item.comment;
|
|
36
|
-
item = pair;
|
|
37
|
-
}
|
|
38
|
-
seq.items[i] = item instanceof _Pair.default ? item : new _Pair.default(item);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return seq;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
function createPairs(schema, iterable, ctx) {
|
|
45
|
-
const pairs = new _Seq.default(schema);
|
|
46
|
-
pairs.tag = 'tag:yaml.org,2002:pairs';
|
|
47
|
-
|
|
48
|
-
for (const it of iterable) {
|
|
49
|
-
let key, value;
|
|
50
|
-
|
|
51
|
-
if (Array.isArray(it)) {
|
|
52
|
-
if (it.length === 2) {
|
|
53
|
-
key = it[0];
|
|
54
|
-
value = it[1];
|
|
55
|
-
} else throw new TypeError(`Expected [key, value] tuple: ${it}`);
|
|
56
|
-
} else if (it && it instanceof Object) {
|
|
57
|
-
const keys = Object.keys(it);
|
|
58
|
-
|
|
59
|
-
if (keys.length === 1) {
|
|
60
|
-
key = keys[0];
|
|
61
|
-
value = it[key];
|
|
62
|
-
} else throw new TypeError(`Expected { key: value } tuple: ${it}`);
|
|
63
|
-
} else {
|
|
64
|
-
key = it;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
const pair = schema.createPair(key, value, ctx);
|
|
68
|
-
pairs.items.push(pair);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return pairs;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
var _default = {
|
|
75
|
-
default: false,
|
|
76
|
-
tag: 'tag:yaml.org,2002:pairs',
|
|
77
|
-
resolve: parsePairs,
|
|
78
|
-
createNode: createPairs
|
|
79
|
-
};
|
|
80
|
-
exports.default = _default;
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = exports.YAMLSet = void 0;
|
|
7
|
-
|
|
8
|
-
var _errors = require("../../errors");
|
|
9
|
-
|
|
10
|
-
var _Map = _interopRequireWildcard(require("../../schema/Map"));
|
|
11
|
-
|
|
12
|
-
var _Pair = _interopRequireDefault(require("../../schema/Pair"));
|
|
13
|
-
|
|
14
|
-
var _parseMap = _interopRequireDefault(require("../../schema/parseMap"));
|
|
15
|
-
|
|
16
|
-
var _Scalar = _interopRequireDefault(require("../../schema/Scalar"));
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
21
|
-
|
|
22
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
-
|
|
24
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
25
|
-
|
|
26
|
-
class YAMLSet extends _Map.default {
|
|
27
|
-
constructor() {
|
|
28
|
-
super();
|
|
29
|
-
this.tag = YAMLSet.tag;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
add(key) {
|
|
33
|
-
const pair = key instanceof _Pair.default ? key : new _Pair.default(key);
|
|
34
|
-
const prev = (0, _Map.findPair)(this.items, pair.key);
|
|
35
|
-
if (!prev) this.items.push(pair);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
get(key, keepPair) {
|
|
39
|
-
const pair = (0, _Map.findPair)(this.items, key);
|
|
40
|
-
return !keepPair && pair instanceof _Pair.default ? pair.key instanceof _Scalar.default ? pair.key.value : pair.key : pair;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
set(key, value) {
|
|
44
|
-
if (typeof value !== 'boolean') throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
|
|
45
|
-
const prev = (0, _Map.findPair)(this.items, key);
|
|
46
|
-
|
|
47
|
-
if (prev && !value) {
|
|
48
|
-
this.items.splice(this.items.indexOf(prev), 1);
|
|
49
|
-
} else if (!prev && value) {
|
|
50
|
-
this.items.push(new _Pair.default(key));
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
toJSON(_, ctx) {
|
|
55
|
-
return super.toJSON(_, ctx, Set);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
toString(ctx, onComment, onChompKeep) {
|
|
59
|
-
if (!ctx) return JSON.stringify(this);
|
|
60
|
-
if (this.hasAllNullValues()) return super.toString(ctx, onComment, onChompKeep);else throw new Error('Set items must all have null values');
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
exports.YAMLSet = YAMLSet;
|
|
66
|
-
|
|
67
|
-
_defineProperty(YAMLSet, "tag", 'tag:yaml.org,2002:set');
|
|
68
|
-
|
|
69
|
-
function parseSet(doc, cst) {
|
|
70
|
-
const map = (0, _parseMap.default)(doc, cst);
|
|
71
|
-
if (!map.hasAllNullValues()) throw new _errors.YAMLSemanticError(cst, 'Set items must all have null values');
|
|
72
|
-
return Object.assign(new YAMLSet(), map);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
function createSet(schema, iterable, ctx) {
|
|
76
|
-
const set = new YAMLSet();
|
|
77
|
-
|
|
78
|
-
for (const value of iterable) set.items.push(schema.createPair(value, null, ctx));
|
|
79
|
-
|
|
80
|
-
return set;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
var _default = {
|
|
84
|
-
identify: value => value instanceof Set,
|
|
85
|
-
nodeClass: YAMLSet,
|
|
86
|
-
default: false,
|
|
87
|
-
tag: 'tag:yaml.org,2002:set',
|
|
88
|
-
resolve: parseSet,
|
|
89
|
-
createNode: createSet
|
|
90
|
-
};
|
|
91
|
-
exports.default = _default;
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.timestamp = exports.floatTime = exports.intTime = void 0;
|
|
7
|
-
|
|
8
|
-
var _stringify = require("../../stringify");
|
|
9
|
-
|
|
10
|
-
const parseSexagesimal = (sign, parts) => {
|
|
11
|
-
const n = parts.split(':').reduce((n, p) => n * 60 + Number(p), 0);
|
|
12
|
-
return sign === '-' ? -n : n;
|
|
13
|
-
}; // hhhh:mm:ss.sss
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const stringifySexagesimal = ({
|
|
17
|
-
value
|
|
18
|
-
}) => {
|
|
19
|
-
if (isNaN(value) || !isFinite(value)) return (0, _stringify.stringifyNumber)(value);
|
|
20
|
-
let sign = '';
|
|
21
|
-
|
|
22
|
-
if (value < 0) {
|
|
23
|
-
sign = '-';
|
|
24
|
-
value = Math.abs(value);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
const parts = [value % 60]; // seconds, including ms
|
|
28
|
-
|
|
29
|
-
if (value < 60) {
|
|
30
|
-
parts.unshift(0); // at least one : is required
|
|
31
|
-
} else {
|
|
32
|
-
value = Math.round((value - parts[0]) / 60);
|
|
33
|
-
parts.unshift(value % 60); // minutes
|
|
34
|
-
|
|
35
|
-
if (value >= 60) {
|
|
36
|
-
value = Math.round((value - parts[0]) / 60);
|
|
37
|
-
parts.unshift(value); // hours
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return sign + parts.map(n => n < 10 ? '0' + String(n) : String(n)).join(':').replace(/000000\d*$/, '') // % 60 may introduce error
|
|
42
|
-
;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
const intTime = {
|
|
46
|
-
identify: value => typeof value === 'number',
|
|
47
|
-
default: true,
|
|
48
|
-
tag: 'tag:yaml.org,2002:int',
|
|
49
|
-
format: 'TIME',
|
|
50
|
-
test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
|
|
51
|
-
resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, '')),
|
|
52
|
-
stringify: stringifySexagesimal
|
|
53
|
-
};
|
|
54
|
-
exports.intTime = intTime;
|
|
55
|
-
const floatTime = {
|
|
56
|
-
identify: value => typeof value === 'number',
|
|
57
|
-
default: true,
|
|
58
|
-
tag: 'tag:yaml.org,2002:float',
|
|
59
|
-
format: 'TIME',
|
|
60
|
-
test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
|
|
61
|
-
resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, '')),
|
|
62
|
-
stringify: stringifySexagesimal
|
|
63
|
-
};
|
|
64
|
-
exports.floatTime = floatTime;
|
|
65
|
-
const timestamp = {
|
|
66
|
-
identify: value => value instanceof Date,
|
|
67
|
-
default: true,
|
|
68
|
-
tag: 'tag:yaml.org,2002:timestamp',
|
|
69
|
-
// If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
|
|
70
|
-
// may be omitted altogether, resulting in a date format. In such a case, the time part is
|
|
71
|
-
// assumed to be 00:00:00Z (start of day, UTC).
|
|
72
|
-
test: RegExp('^(?:' + '([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})' + // YYYY-Mm-Dd
|
|
73
|
-
'(?:(?:t|T|[ \\t]+)' + // t | T | whitespace
|
|
74
|
-
'([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)' + // Hh:Mm:Ss(.ss)?
|
|
75
|
-
'(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?' + // Z | +5 | -03:30
|
|
76
|
-
')?' + ')$'),
|
|
77
|
-
resolve: (str, year, month, day, hour, minute, second, millisec, tz) => {
|
|
78
|
-
if (millisec) millisec = (millisec + '00').substr(1, 3);
|
|
79
|
-
let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
|
|
80
|
-
|
|
81
|
-
if (tz && tz !== 'Z') {
|
|
82
|
-
let d = parseSexagesimal(tz[0], tz.slice(1));
|
|
83
|
-
if (Math.abs(d) < 30) d *= 60;
|
|
84
|
-
date -= 60000 * d;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
return new Date(date);
|
|
88
|
-
},
|
|
89
|
-
stringify: ({
|
|
90
|
-
value
|
|
91
|
-
}) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, '')
|
|
92
|
-
};
|
|
93
|
-
exports.timestamp = timestamp;
|