yaml 1.3.2 → 1.6.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.
Files changed (144) hide show
  1. package/README.md +4 -6
  2. package/browser/dist/Anchors.js +12 -10
  3. package/browser/dist/Document.js +170 -75
  4. package/browser/dist/constants.js +34 -0
  5. package/browser/dist/cst/Alias.js +1 -3
  6. package/browser/dist/cst/BlankLine.js +5 -7
  7. package/browser/dist/cst/BlockValue.js +4 -4
  8. package/browser/dist/cst/Collection.js +8 -8
  9. package/browser/dist/cst/CollectionItem.js +6 -8
  10. package/browser/dist/cst/Comment.js +5 -7
  11. package/browser/dist/cst/Directive.js +5 -7
  12. package/browser/dist/cst/Document.js +17 -11
  13. package/browser/dist/cst/FlowCollection.js +14 -8
  14. package/browser/dist/cst/Node.js +12 -40
  15. package/browser/dist/cst/ParseContext.js +32 -34
  16. package/browser/dist/cst/PlainValue.js +1 -3
  17. package/browser/dist/cst/QuoteDouble.js +1 -3
  18. package/browser/dist/cst/QuoteSingle.js +1 -3
  19. package/browser/dist/cst/Range.js +1 -3
  20. package/browser/dist/cst/getLinePos.js +1 -4
  21. package/browser/dist/cst/parse.js +1 -4
  22. package/browser/dist/deprecation.js +34 -0
  23. package/browser/dist/errors.js +50 -59
  24. package/browser/dist/index.js +37 -7
  25. package/browser/dist/listTagNames.js +1 -3
  26. package/browser/dist/schema/Alias.js +90 -10
  27. package/browser/dist/schema/Collection.js +3 -3
  28. package/browser/dist/schema/Map.js +22 -105
  29. package/browser/dist/schema/Merge.js +74 -1
  30. package/browser/dist/schema/Node.js +1 -3
  31. package/browser/dist/schema/Pair.js +37 -23
  32. package/browser/dist/schema/Scalar.js +3 -5
  33. package/browser/dist/schema/Seq.js +30 -7
  34. package/browser/dist/schema/index.js +158 -82
  35. package/browser/dist/schema/parseMap.js +18 -21
  36. package/browser/dist/schema/parseSeq.js +9 -12
  37. package/browser/dist/{schema/_string.js → stringify.js} +65 -73
  38. package/browser/dist/tags/core.js +132 -0
  39. package/browser/dist/tags/failsafe/index.js +17 -0
  40. package/browser/dist/tags/failsafe/map.js +65 -0
  41. package/browser/dist/tags/failsafe/seq.js +54 -0
  42. package/browser/dist/tags/failsafe/string.js +40 -0
  43. package/browser/dist/tags/index.js +50 -0
  44. package/browser/dist/tags/json.js +103 -0
  45. package/browser/dist/tags/options.js +35 -0
  46. package/browser/dist/{schema/_binary.js → tags/yaml-1.1/binary.js} +20 -20
  47. package/browser/dist/tags/yaml-1.1/index.js +177 -0
  48. package/browser/dist/{schema/_omap.js → tags/yaml-1.1/omap.js} +25 -25
  49. package/browser/dist/{schema/_pairs.js → tags/yaml-1.1/pairs.js} +9 -13
  50. package/browser/dist/tags/yaml-1.1/set.js +140 -0
  51. package/browser/dist/{schema/_timestamp.js → tags/yaml-1.1/timestamp.js} +13 -10
  52. package/browser/dist/test-events.js +1 -4
  53. package/browser/dist/toJSON.js +20 -8
  54. package/browser/index.js +1 -0
  55. package/browser/map.js +2 -1
  56. package/browser/pair.js +2 -1
  57. package/browser/parse-cst.js +1 -1
  58. package/browser/scalar.js +2 -1
  59. package/browser/schema.js +7 -3
  60. package/browser/seq.js +2 -1
  61. package/browser/types/binary.js +7 -1
  62. package/browser/types/omap.js +2 -1
  63. package/browser/types/pairs.js +2 -1
  64. package/browser/types/set.js +2 -1
  65. package/browser/types/timestamp.js +10 -1
  66. package/browser/types.js +11 -0
  67. package/browser/util.js +15 -0
  68. package/dist/Anchors.js +9 -8
  69. package/dist/Document.js +89 -45
  70. package/dist/constants.js +34 -0
  71. package/dist/cst/Alias.js +1 -3
  72. package/dist/cst/BlankLine.js +5 -7
  73. package/dist/cst/BlockValue.js +4 -4
  74. package/dist/cst/Collection.js +8 -8
  75. package/dist/cst/CollectionItem.js +6 -8
  76. package/dist/cst/Comment.js +5 -7
  77. package/dist/cst/Directive.js +5 -7
  78. package/dist/cst/Document.js +17 -11
  79. package/dist/cst/FlowCollection.js +14 -8
  80. package/dist/cst/Node.js +12 -40
  81. package/dist/cst/ParseContext.js +32 -34
  82. package/dist/cst/PlainValue.js +1 -3
  83. package/dist/cst/QuoteDouble.js +1 -3
  84. package/dist/cst/QuoteSingle.js +1 -3
  85. package/dist/cst/Range.js +1 -3
  86. package/dist/cst/getLinePos.js +1 -4
  87. package/dist/cst/parse.js +1 -4
  88. package/dist/deprecation.js +34 -0
  89. package/dist/errors.js +29 -35
  90. package/dist/index.js +18 -5
  91. package/dist/listTagNames.js +1 -3
  92. package/dist/schema/Alias.js +67 -12
  93. package/dist/schema/Map.js +10 -74
  94. package/dist/schema/Merge.js +31 -0
  95. package/dist/schema/Node.js +1 -3
  96. package/dist/schema/Pair.js +30 -16
  97. package/dist/schema/Scalar.js +3 -5
  98. package/dist/schema/Seq.js +9 -5
  99. package/dist/schema/index.js +109 -74
  100. package/dist/schema/parseMap.js +18 -21
  101. package/dist/schema/parseSeq.js +9 -12
  102. package/dist/{schema/_string.js → stringify.js} +56 -65
  103. package/dist/tags/core.js +96 -0
  104. package/dist/tags/failsafe/index.js +17 -0
  105. package/dist/tags/failsafe/map.js +33 -0
  106. package/dist/tags/failsafe/seq.js +34 -0
  107. package/dist/tags/failsafe/string.js +40 -0
  108. package/dist/tags/index.js +50 -0
  109. package/dist/tags/json.js +67 -0
  110. package/dist/tags/options.js +35 -0
  111. package/dist/{schema/_binary.js → tags/yaml-1.1/binary.js} +18 -20
  112. package/dist/tags/yaml-1.1/index.js +131 -0
  113. package/dist/{schema/_omap.js → tags/yaml-1.1/omap.js} +16 -16
  114. package/dist/{schema/_pairs.js → tags/yaml-1.1/pairs.js} +9 -11
  115. package/dist/{schema/_set.js → tags/yaml-1.1/set.js} +12 -44
  116. package/dist/{schema/_timestamp.js → tags/yaml-1.1/timestamp.js} +7 -10
  117. package/dist/test-events.js +1 -4
  118. package/dist/toJSON.js +15 -5
  119. package/index.js +1 -0
  120. package/map.js +2 -1
  121. package/package.json +23 -17
  122. package/pair.js +2 -1
  123. package/parse-cst.js +1 -1
  124. package/scalar.js +2 -1
  125. package/schema.js +7 -3
  126. package/seq.js +2 -1
  127. package/types/binary.js +7 -1
  128. package/types/omap.js +2 -1
  129. package/types/pairs.js +2 -1
  130. package/types/set.js +2 -1
  131. package/types/timestamp.js +10 -1
  132. package/types.js +11 -0
  133. package/util.js +15 -0
  134. package/browser/dist/polyfill.js +0 -251
  135. package/browser/dist/schema/_set.js +0 -212
  136. package/browser/dist/schema/core.js +0 -98
  137. package/browser/dist/schema/failsafe.js +0 -125
  138. package/browser/dist/schema/json.js +0 -66
  139. package/browser/dist/schema/yaml-1.1.js +0 -140
  140. package/dist/polyfill.js +0 -27
  141. package/dist/schema/core.js +0 -79
  142. package/dist/schema/failsafe.js +0 -74
  143. package/dist/schema/json.js +0 -56
  144. package/dist/schema/yaml-1.1.js +0 -115
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _parseSeq = _interopRequireDefault(require("../../schema/parseSeq"));
11
+
12
+ var _Seq = _interopRequireDefault(require("../../schema/Seq"));
13
+
14
+ function createSeq(schema, obj, ctx) {
15
+ var seq = new _Seq.default();
16
+
17
+ if (obj && obj[Symbol.iterator]) {
18
+ var _iteratorNormalCompletion = true;
19
+ var _didIteratorError = false;
20
+ var _iteratorError = undefined;
21
+
22
+ try {
23
+ for (var _iterator = obj[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
24
+ var it = _step.value;
25
+ var v = schema.createNode(it, ctx.wrapScalars, null, ctx);
26
+ seq.items.push(v);
27
+ }
28
+ } catch (err) {
29
+ _didIteratorError = true;
30
+ _iteratorError = err;
31
+ } finally {
32
+ try {
33
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
34
+ _iterator.return();
35
+ }
36
+ } finally {
37
+ if (_didIteratorError) {
38
+ throw _iteratorError;
39
+ }
40
+ }
41
+ }
42
+ }
43
+
44
+ return seq;
45
+ }
46
+
47
+ var _default = {
48
+ createNode: createSeq,
49
+ default: true,
50
+ nodeClass: _Seq.default,
51
+ tag: 'tag:yaml.org,2002:seq',
52
+ resolve: _parseSeq.default
53
+ };
54
+ exports.default = _default;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.resolveString = void 0;
7
+
8
+ var _stringify = require("../../stringify");
9
+
10
+ var _options = require("../options");
11
+
12
+ var resolveString = function resolveString(doc, node) {
13
+ // on error, will return { str: string, errors: Error[] }
14
+ var res = node.strValue;
15
+ if (!res) return '';
16
+ if (typeof res === 'string') return res;
17
+ res.errors.forEach(function (error) {
18
+ if (!error.source) error.source = node;
19
+ doc.errors.push(error);
20
+ });
21
+ return res.str;
22
+ };
23
+
24
+ exports.resolveString = resolveString;
25
+ var _default = {
26
+ identify: function identify(value) {
27
+ return typeof value === 'string';
28
+ },
29
+ default: true,
30
+ tag: 'tag:yaml.org,2002:str',
31
+ resolve: resolveString,
32
+ stringify: function stringify(item, ctx, onComment, onChompKeep) {
33
+ ctx = Object.assign({
34
+ actualString: true
35
+ }, ctx);
36
+ return (0, _stringify.stringifyString)(item, ctx, onComment, onChompKeep);
37
+ },
38
+ options: _options.strOptions
39
+ };
40
+ exports.default = _default;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.tags = exports.schemas = void 0;
9
+
10
+ var _core = _interopRequireDefault(require("./core"));
11
+
12
+ var _failsafe = _interopRequireDefault(require("./failsafe"));
13
+
14
+ var _json = _interopRequireDefault(require("./json"));
15
+
16
+ var _yaml = _interopRequireDefault(require("./yaml-1.1"));
17
+
18
+ var _map = _interopRequireDefault(require("./failsafe/map"));
19
+
20
+ var _seq = _interopRequireDefault(require("./failsafe/seq"));
21
+
22
+ var _binary = _interopRequireDefault(require("./yaml-1.1/binary"));
23
+
24
+ var _omap = _interopRequireDefault(require("./yaml-1.1/omap"));
25
+
26
+ var _pairs = _interopRequireDefault(require("./yaml-1.1/pairs"));
27
+
28
+ var _set = _interopRequireDefault(require("./yaml-1.1/set"));
29
+
30
+ var _timestamp = require("./yaml-1.1/timestamp");
31
+
32
+ var schemas = {
33
+ core: _core.default,
34
+ failsafe: _failsafe.default,
35
+ json: _json.default,
36
+ yaml11: _yaml.default
37
+ };
38
+ exports.schemas = schemas;
39
+ var tags = {
40
+ binary: _binary.default,
41
+ floatTime: _timestamp.floatTime,
42
+ intTime: _timestamp.intTime,
43
+ map: _map.default,
44
+ omap: _omap.default,
45
+ pairs: _pairs.default,
46
+ seq: _seq.default,
47
+ set: _set.default,
48
+ timestamp: _timestamp.timestamp
49
+ };
50
+ exports.tags = tags;
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _map = _interopRequireDefault(require("./failsafe/map"));
11
+
12
+ var _seq = _interopRequireDefault(require("./failsafe/seq"));
13
+
14
+ var _Scalar = _interopRequireDefault(require("../schema/Scalar"));
15
+
16
+ var _string = require("./failsafe/string");
17
+
18
+ var schema = [_map.default, _seq.default, {
19
+ identify: function identify(value) {
20
+ return typeof value === 'string';
21
+ },
22
+ default: true,
23
+ tag: 'tag:yaml.org,2002:str',
24
+ resolve: _string.resolveString,
25
+ stringify: function stringify(value) {
26
+ return JSON.stringify(value);
27
+ }
28
+ }, {
29
+ identify: function identify(value) {
30
+ return value == null;
31
+ },
32
+ createNode: function createNode(schema, value, ctx) {
33
+ return ctx.wrapScalars ? new _Scalar.default(null) : null;
34
+ },
35
+ default: true,
36
+ tag: 'tag:yaml.org,2002:null',
37
+ test: /^null$/,
38
+ resolve: function resolve() {
39
+ return null;
40
+ },
41
+ stringify: function stringify(value) {
42
+ return JSON.stringify(value);
43
+ }
44
+ }, {
45
+ identify: function identify(value) {
46
+ return typeof value === 'boolean';
47
+ },
48
+ default: true,
49
+ tag: 'tag:yaml.org,2002:bool',
50
+ test: /^true$/,
51
+ resolve: function resolve() {
52
+ return true;
53
+ },
54
+ stringify: function stringify(value) {
55
+ return JSON.stringify(value);
56
+ }
57
+ }, {
58
+ identify: function identify(value) {
59
+ return typeof value === 'boolean';
60
+ },
61
+ default: true,
62
+ tag: 'tag:yaml.org,2002:bool',
63
+ test: /^false$/,
64
+ resolve: function resolve() {
65
+ return false;
66
+ },
67
+ stringify: function stringify(value) {
68
+ return JSON.stringify(value);
69
+ }
70
+ }, {
71
+ identify: function identify(value) {
72
+ return typeof value === 'number';
73
+ },
74
+ default: true,
75
+ tag: 'tag:yaml.org,2002:int',
76
+ test: /^-?(?:0|[1-9][0-9]*)$/,
77
+ resolve: function resolve(str) {
78
+ return parseInt(str, 10);
79
+ },
80
+ stringify: function stringify(value) {
81
+ return JSON.stringify(value);
82
+ }
83
+ }, {
84
+ identify: function identify(value) {
85
+ return typeof value === 'number';
86
+ },
87
+ default: true,
88
+ tag: 'tag:yaml.org,2002:float',
89
+ test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
90
+ resolve: function resolve(str) {
91
+ return parseFloat(str);
92
+ },
93
+ stringify: function stringify(value) {
94
+ return JSON.stringify(value);
95
+ }
96
+ }];
97
+
98
+ schema.scalarFallback = function (str) {
99
+ throw new SyntaxError("Unresolved plain scalar ".concat(JSON.stringify(str)));
100
+ };
101
+
102
+ var _default = schema;
103
+ exports.default = _default;
@@ -0,0 +1,35 @@
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
+ var binaryOptions = {
11
+ defaultType: _constants.Type.BLOCK_LITERAL,
12
+ lineWidth: 76
13
+ };
14
+ exports.binaryOptions = binaryOptions;
15
+ var boolOptions = {
16
+ trueStr: 'true',
17
+ falseStr: 'false'
18
+ };
19
+ exports.boolOptions = boolOptions;
20
+ var nullOptions = {
21
+ nullStr: 'null'
22
+ };
23
+ exports.nullOptions = nullOptions;
24
+ var 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;
@@ -3,18 +3,23 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = exports.binary = void 0;
6
+ exports.default = void 0;
7
7
 
8
- var _errors = require("../errors");
8
+ var _constants = require("../../constants");
9
9
 
10
- var _Node = require("../cst/Node");
10
+ var _errors = require("../../errors");
11
11
 
12
- var _string = require("./_string");
12
+ var _stringify = require("../../stringify");
13
+
14
+ var _string = require("../failsafe/string");
15
+
16
+ var _options = require("../options");
13
17
 
14
18
  /* global atob, btoa, Buffer */
15
- // Published as 'yaml/types/binary'
16
- var binary = {
17
- class: Uint8Array,
19
+ var _default = {
20
+ identify: function identify(value) {
21
+ return value instanceof Uint8Array;
22
+ },
18
23
  // Buffer inherits from Uint8Array
19
24
  default: false,
20
25
  tag: 'tag:yaml.org,2002:binary',
@@ -29,10 +34,10 @@ var binary = {
29
34
  */
30
35
  resolve: function resolve(doc, node) {
31
36
  if (typeof Buffer === 'function') {
32
- var src = (0, _string.resolve)(doc, node);
37
+ var src = (0, _string.resolveString)(doc, node);
33
38
  return Buffer.from(src, 'base64');
34
39
  } else if (typeof atob === 'function') {
35
- var _src = atob((0, _string.resolve)(doc, node));
40
+ var _src = atob((0, _string.resolveString)(doc, node));
36
41
 
37
42
  var buffer = new Uint8Array(_src.length);
38
43
 
@@ -46,10 +51,7 @@ var binary = {
46
51
  return null;
47
52
  }
48
53
  },
49
- options: {
50
- defaultType: _Node.Type.BLOCK_LITERAL,
51
- lineWidth: 76
52
- },
54
+ options: _options.binaryOptions,
53
55
  stringify: function stringify(_ref, ctx, onComment, onChompKeep) {
54
56
  var comment = _ref.comment,
55
57
  type = _ref.type,
@@ -70,12 +72,12 @@ var binary = {
70
72
  throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
71
73
  }
72
74
 
73
- if (!type) type = binary.options.defaultType;
75
+ if (!type) type = _options.binaryOptions.defaultType;
74
76
 
75
- if (type === _Node.Type.QUOTE_DOUBLE) {
77
+ if (type === _constants.Type.QUOTE_DOUBLE) {
76
78
  value = src;
77
79
  } else {
78
- var lineWidth = binary.options.lineWidth;
80
+ var lineWidth = _options.binaryOptions.lineWidth;
79
81
  var n = Math.ceil(src.length / lineWidth);
80
82
  var lines = new Array(n);
81
83
 
@@ -83,16 +85,14 @@ var binary = {
83
85
  lines[_i] = src.substr(o, lineWidth);
84
86
  }
85
87
 
86
- value = lines.join(type === _Node.Type.BLOCK_LITERAL ? '\n' : ' ');
88
+ value = lines.join(type === _constants.Type.BLOCK_LITERAL ? '\n' : ' ');
87
89
  }
88
90
 
89
- return (0, _string.stringify)({
91
+ return (0, _stringify.stringifyString)({
90
92
  comment: comment,
91
93
  type: type,
92
94
  value: value
93
95
  }, ctx, onComment, onChompKeep);
94
96
  }
95
97
  };
96
- exports.binary = binary;
97
- var _default = [binary];
98
98
  exports.default = _default;
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _Scalar = _interopRequireDefault(require("../../schema/Scalar"));
11
+
12
+ var _stringify = require("../../stringify");
13
+
14
+ var _failsafe = _interopRequireDefault(require("../failsafe"));
15
+
16
+ var _options = require("../options");
17
+
18
+ var _binary = _interopRequireDefault(require("./binary"));
19
+
20
+ var _omap = _interopRequireDefault(require("./omap"));
21
+
22
+ var _pairs = _interopRequireDefault(require("./pairs"));
23
+
24
+ var _set = _interopRequireDefault(require("./set"));
25
+
26
+ var _timestamp = require("./timestamp");
27
+
28
+ var _default = _failsafe.default.concat([{
29
+ identify: function identify(value) {
30
+ return value == null;
31
+ },
32
+ createNode: function createNode(schema, value, ctx) {
33
+ return ctx.wrapScalars ? new _Scalar.default(null) : null;
34
+ },
35
+ default: true,
36
+ tag: 'tag:yaml.org,2002:null',
37
+ test: /^(?:~|[Nn]ull|NULL)?$/,
38
+ resolve: function resolve() {
39
+ return null;
40
+ },
41
+ options: _options.nullOptions,
42
+ stringify: function stringify() {
43
+ return _options.nullOptions.nullStr;
44
+ }
45
+ }, {
46
+ identify: function identify(value) {
47
+ return typeof value === 'boolean';
48
+ },
49
+ default: true,
50
+ tag: 'tag:yaml.org,2002:bool',
51
+ test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
52
+ resolve: function resolve() {
53
+ return true;
54
+ },
55
+ options: _options.boolOptions,
56
+ stringify: function stringify(_ref) {
57
+ var value = _ref.value;
58
+ return value ? _options.boolOptions.trueStr : _options.boolOptions.falseStr;
59
+ }
60
+ }, {
61
+ identify: function identify(value) {
62
+ return typeof value === 'boolean';
63
+ },
64
+ default: true,
65
+ tag: 'tag:yaml.org,2002:bool',
66
+ test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
67
+ resolve: function resolve() {
68
+ return false;
69
+ },
70
+ options: _options.boolOptions,
71
+ stringify: function stringify(_ref2) {
72
+ var value = _ref2.value;
73
+ return value ? _options.boolOptions.trueStr : _options.boolOptions.falseStr;
74
+ }
75
+ }, {
76
+ identify: function identify(value) {
77
+ return typeof value === 'number';
78
+ },
79
+ default: true,
80
+ tag: 'tag:yaml.org,2002:int',
81
+ format: 'BIN',
82
+ test: /^0b([0-1_]+)$/,
83
+ resolve: function resolve(str, bin) {
84
+ return parseInt(bin.replace(/_/g, ''), 2);
85
+ },
86
+ stringify: function stringify(_ref3) {
87
+ var value = _ref3.value;
88
+ return '0b' + value.toString(2);
89
+ }
90
+ }, {
91
+ identify: function identify(value) {
92
+ return typeof value === 'number';
93
+ },
94
+ default: true,
95
+ tag: 'tag:yaml.org,2002:int',
96
+ format: 'OCT',
97
+ test: /^[-+]?0([0-7_]+)$/,
98
+ resolve: function resolve(str, oct) {
99
+ return parseInt(oct.replace(/_/g, ''), 8);
100
+ },
101
+ stringify: function stringify(_ref4) {
102
+ var value = _ref4.value;
103
+ return (value < 0 ? '-0' : '0') + value.toString(8);
104
+ }
105
+ }, {
106
+ identify: function identify(value) {
107
+ return typeof value === 'number';
108
+ },
109
+ default: true,
110
+ tag: 'tag:yaml.org,2002:int',
111
+ test: /^[-+]?[0-9][0-9_]*$/,
112
+ resolve: function resolve(str) {
113
+ return parseInt(str.replace(/_/g, ''), 10);
114
+ },
115
+ stringify: _stringify.stringifyNumber
116
+ }, {
117
+ identify: function identify(value) {
118
+ return typeof value === 'number';
119
+ },
120
+ default: true,
121
+ tag: 'tag:yaml.org,2002:int',
122
+ format: 'HEX',
123
+ test: /^0x([0-9a-fA-F_]+)$/,
124
+ resolve: function resolve(str, hex) {
125
+ return parseInt(hex.replace(/_/g, ''), 16);
126
+ },
127
+ stringify: function stringify(_ref5) {
128
+ var value = _ref5.value;
129
+ return (value < 0 ? '-0x' : '0x') + value.toString(16);
130
+ }
131
+ }, {
132
+ identify: function identify(value) {
133
+ return typeof value === 'number';
134
+ },
135
+ default: true,
136
+ tag: 'tag:yaml.org,2002:float',
137
+ test: /^(?:[-+]?\.inf|(\.nan))$/i,
138
+ resolve: function resolve(str, nan) {
139
+ return nan ? NaN : str[0] === '-' ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY;
140
+ },
141
+ stringify: _stringify.stringifyNumber
142
+ }, {
143
+ identify: function identify(value) {
144
+ return typeof value === 'number';
145
+ },
146
+ default: true,
147
+ tag: 'tag:yaml.org,2002:float',
148
+ format: 'EXP',
149
+ test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
150
+ resolve: function resolve(str) {
151
+ return parseFloat(str.replace(/_/g, ''));
152
+ },
153
+ stringify: function stringify(_ref6) {
154
+ var value = _ref6.value;
155
+ return Number(value).toExponential();
156
+ }
157
+ }, {
158
+ identify: function identify(value) {
159
+ return typeof value === 'number';
160
+ },
161
+ default: true,
162
+ tag: 'tag:yaml.org,2002:float',
163
+ test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
164
+ resolve: function resolve(str, frac) {
165
+ var node = new _Scalar.default(parseFloat(str.replace(/_/g, '')));
166
+
167
+ if (frac) {
168
+ var f = frac.replace(/_/g, '');
169
+ if (f[f.length - 1] === '0') node.minFractionDigits = f.length;
170
+ }
171
+
172
+ return node;
173
+ },
174
+ stringify: _stringify.stringifyNumber
175
+ }], _binary.default, _omap.default, _pairs.default, _set.default, _timestamp.intTime, _timestamp.floatTime, _timestamp.timestamp);
176
+
177
+ exports.default = _default;
@@ -15,25 +15,25 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
15
15
 
16
16
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
17
 
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
18
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
21
19
 
20
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
22
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- var _errors = require("../errors");
24
+ var _errors = require("../../errors");
25
25
 
26
- var _toJSON2 = _interopRequireDefault(require("../toJSON"));
26
+ var _toJSON2 = _interopRequireDefault(require("../../toJSON"));
27
27
 
28
- var _Map = _interopRequireDefault(require("./Map"));
28
+ var _Map = _interopRequireDefault(require("../../schema/Map"));
29
29
 
30
- var _Pair = _interopRequireDefault(require("./Pair"));
30
+ var _Pair = _interopRequireDefault(require("../../schema/Pair"));
31
31
 
32
- var _Scalar = _interopRequireDefault(require("./Scalar"));
32
+ var _Scalar = _interopRequireDefault(require("../../schema/Scalar"));
33
33
 
34
- var _Seq = _interopRequireDefault(require("./Seq"));
34
+ var _Seq = _interopRequireDefault(require("../../schema/Seq"));
35
35
 
36
- var _pairs = require("./_pairs");
36
+ var _pairs = require("./pairs");
37
37
 
38
38
  var YAMLOMap =
39
39
  /*#__PURE__*/
@@ -45,19 +45,20 @@ function (_YAMLSeq) {
45
45
 
46
46
  (0, _classCallCheck2.default)(this, YAMLOMap);
47
47
  _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(YAMLOMap).call(this));
48
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "add", _Map.default.prototype.add.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))));
49
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "delete", _Map.default.prototype.delete.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))));
50
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "get", _Map.default.prototype.get.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))));
51
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "has", _Map.default.prototype.has.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))));
52
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), "set", _Map.default.prototype.set.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))));
48
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "add", _Map.default.prototype.add.bind((0, _assertThisInitialized2.default)(_this)));
49
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "delete", _Map.default.prototype.delete.bind((0, _assertThisInitialized2.default)(_this)));
50
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "get", _Map.default.prototype.get.bind((0, _assertThisInitialized2.default)(_this)));
51
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "has", _Map.default.prototype.has.bind((0, _assertThisInitialized2.default)(_this)));
52
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "set", _Map.default.prototype.set.bind((0, _assertThisInitialized2.default)(_this)));
53
53
  _this.tag = YAMLOMap.tag;
54
54
  return _this;
55
55
  }
56
56
 
57
57
  (0, _createClass2.default)(YAMLOMap, [{
58
58
  key: "toJSON",
59
- value: function toJSON(_, opt) {
59
+ value: function toJSON(_, ctx) {
60
60
  var map = new Map();
61
+ if (ctx && ctx.onCreate) ctx.onCreate(map);
61
62
  var _iteratorNormalCompletion = true;
62
63
  var _didIteratorError = false;
63
64
  var _iteratorError = undefined;
@@ -69,10 +70,10 @@ function (_YAMLSeq) {
69
70
  value = void 0;
70
71
 
71
72
  if (pair instanceof _Pair.default) {
72
- key = (0, _toJSON2.default)(pair.key, '', opt);
73
- value = (0, _toJSON2.default)(pair.value, key, opt);
73
+ key = (0, _toJSON2.default)(pair.key, '', ctx);
74
+ value = (0, _toJSON2.default)(pair.value, key, ctx);
74
75
  } else {
75
- key = (0, _toJSON2.default)(pair, '', opt);
76
+ key = (0, _toJSON2.default)(pair, '', ctx);
76
77
  }
77
78
 
78
79
  if (map.has(key)) throw new Error('Ordered maps must not include duplicate keys');
@@ -140,22 +141,21 @@ function parseOMap(doc, cst) {
140
141
  return Object.assign(new YAMLOMap(), pairs);
141
142
  }
142
143
 
143
- function createOMap(schema, iterable, wrapScalars) {
144
- var pairs = (0, _pairs.createPairs)(schema, iterable, wrapScalars);
144
+ function createOMap(schema, iterable, ctx) {
145
+ var pairs = (0, _pairs.createPairs)(schema, iterable, ctx);
145
146
  var omap = new YAMLOMap();
146
147
  omap.items = pairs.items;
147
148
  return omap;
148
149
  }
149
150
 
150
151
  var _default = {
151
- class: Map,
152
+ identify: function identify(value) {
153
+ return value instanceof Map;
154
+ },
152
155
  nodeClass: YAMLOMap,
153
156
  default: false,
154
157
  tag: 'tag:yaml.org,2002:omap',
155
158
  resolve: parseOMap,
156
- createNode: createOMap,
157
- stringify: function stringify(value, ctx, onComment, onChompKeep) {
158
- return value.toString(ctx, onComment, onChompKeep);
159
- }
159
+ createNode: createOMap
160
160
  };
161
161
  exports.default = _default;