yaml 1.4.0 → 1.5.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 (136) hide show
  1. package/README.md +3 -5
  2. package/browser/dist/Anchors.js +1 -3
  3. package/browser/dist/Document.js +94 -37
  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 +7 -7
  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 +8 -10
  13. package/browser/dist/cst/FlowCollection.js +5 -7
  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 +5 -4
  25. package/browser/dist/listTagNames.js +1 -3
  26. package/browser/dist/schema/Alias.js +85 -10
  27. package/browser/dist/schema/Map.js +14 -121
  28. package/browser/dist/schema/Merge.js +74 -1
  29. package/browser/dist/schema/Node.js +1 -3
  30. package/browser/dist/schema/Pair.js +36 -22
  31. package/browser/dist/schema/Scalar.js +1 -3
  32. package/browser/dist/schema/Seq.js +1 -3
  33. package/browser/dist/schema/index.js +61 -45
  34. package/browser/dist/schema/parseMap.js +18 -21
  35. package/browser/dist/schema/parseSeq.js +9 -12
  36. package/browser/dist/stringify.js +54 -39
  37. package/browser/dist/{schema → tags}/core.js +32 -20
  38. package/browser/dist/tags/failsafe/index.js +17 -0
  39. package/browser/dist/tags/failsafe/map.js +65 -0
  40. package/browser/dist/tags/failsafe/seq.js +54 -0
  41. package/browser/dist/{schema/_string.js → tags/failsafe/string.js} +11 -11
  42. package/browser/dist/tags/index.js +50 -0
  43. package/browser/dist/{schema → tags}/json.js +8 -8
  44. package/browser/dist/tags/options.js +35 -0
  45. package/browser/dist/{schema/_binary.js → tags/yaml-1.1/binary.js} +16 -22
  46. package/browser/dist/{schema/yaml-1.1.js → tags/yaml-1.1/index.js} +43 -29
  47. package/browser/dist/{schema/_omap.js → tags/yaml-1.1/omap.js} +8 -11
  48. package/browser/dist/{schema/_pairs.js → tags/yaml-1.1/pairs.js} +8 -12
  49. package/browser/dist/tags/yaml-1.1/set.js +140 -0
  50. package/browser/dist/{schema/_timestamp.js → tags/yaml-1.1/timestamp.js} +4 -7
  51. package/browser/dist/test-events.js +1 -4
  52. package/browser/dist/toJSON.js +1 -4
  53. package/browser/index.js +1 -0
  54. package/browser/map.js +2 -1
  55. package/browser/pair.js +2 -1
  56. package/browser/parse-cst.js +1 -1
  57. package/browser/scalar.js +2 -1
  58. package/browser/schema.js +7 -4
  59. package/browser/seq.js +2 -1
  60. package/browser/types/binary.js +7 -1
  61. package/browser/types/omap.js +2 -1
  62. package/browser/types/pairs.js +2 -1
  63. package/browser/types/set.js +2 -1
  64. package/browser/types/timestamp.js +10 -1
  65. package/browser/types.js +11 -0
  66. package/browser/util.js +15 -0
  67. package/dist/Anchors.js +1 -3
  68. package/dist/Document.js +38 -25
  69. package/dist/constants.js +34 -0
  70. package/dist/cst/Alias.js +1 -3
  71. package/dist/cst/BlankLine.js +5 -7
  72. package/dist/cst/BlockValue.js +4 -4
  73. package/dist/cst/Collection.js +7 -7
  74. package/dist/cst/CollectionItem.js +6 -8
  75. package/dist/cst/Comment.js +5 -7
  76. package/dist/cst/Directive.js +5 -7
  77. package/dist/cst/Document.js +8 -10
  78. package/dist/cst/FlowCollection.js +5 -7
  79. package/dist/cst/Node.js +12 -40
  80. package/dist/cst/ParseContext.js +32 -34
  81. package/dist/cst/PlainValue.js +1 -3
  82. package/dist/cst/QuoteDouble.js +1 -3
  83. package/dist/cst/QuoteSingle.js +1 -3
  84. package/dist/cst/Range.js +1 -3
  85. package/dist/cst/getLinePos.js +1 -4
  86. package/dist/cst/parse.js +1 -4
  87. package/dist/deprecation.js +34 -0
  88. package/dist/errors.js +29 -35
  89. package/dist/index.js +5 -4
  90. package/dist/listTagNames.js +1 -3
  91. package/dist/schema/Alias.js +66 -12
  92. package/dist/schema/Map.js +9 -77
  93. package/dist/schema/Merge.js +31 -0
  94. package/dist/schema/Node.js +1 -3
  95. package/dist/schema/Pair.js +29 -15
  96. package/dist/schema/Scalar.js +1 -3
  97. package/dist/schema/Seq.js +1 -3
  98. package/dist/schema/index.js +55 -45
  99. package/dist/schema/parseMap.js +18 -21
  100. package/dist/schema/parseSeq.js +9 -12
  101. package/dist/stringify.js +46 -32
  102. package/dist/{schema → tags}/core.js +32 -19
  103. package/dist/tags/failsafe/index.js +17 -0
  104. package/dist/tags/failsafe/map.js +33 -0
  105. package/dist/tags/failsafe/seq.js +34 -0
  106. package/dist/tags/failsafe/string.js +40 -0
  107. package/dist/tags/index.js +50 -0
  108. package/dist/{schema → tags}/json.js +8 -8
  109. package/dist/tags/options.js +35 -0
  110. package/dist/{schema/_binary.js → tags/yaml-1.1/binary.js} +15 -21
  111. package/dist/{schema/yaml-1.1.js → tags/yaml-1.1/index.js} +43 -30
  112. package/dist/{schema/_omap.js → tags/yaml-1.1/omap.js} +8 -9
  113. package/dist/{schema/_pairs.js → tags/yaml-1.1/pairs.js} +8 -10
  114. package/dist/{schema/_set.js → tags/yaml-1.1/set.js} +9 -42
  115. package/dist/{schema/_timestamp.js → tags/yaml-1.1/timestamp.js} +4 -7
  116. package/dist/test-events.js +1 -4
  117. package/dist/toJSON.js +1 -4
  118. package/index.js +1 -0
  119. package/map.js +2 -1
  120. package/package.json +17 -15
  121. package/pair.js +2 -1
  122. package/parse-cst.js +1 -1
  123. package/scalar.js +2 -1
  124. package/schema.js +7 -4
  125. package/seq.js +2 -1
  126. package/types/binary.js +7 -1
  127. package/types/omap.js +2 -1
  128. package/types/pairs.js +2 -1
  129. package/types/set.js +2 -1
  130. package/types/timestamp.js +10 -1
  131. package/types.js +11 -0
  132. package/util.js +15 -0
  133. package/browser/dist/schema/_set.js +0 -215
  134. package/browser/dist/schema/failsafe.js +0 -125
  135. package/dist/schema/_string.js +0 -40
  136. package/dist/schema/failsafe.js +0 -74
@@ -5,22 +5,15 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = exports.nullOptions = exports.stringifyNumber = void 0;
8
+ exports.default = void 0;
9
9
 
10
- var _failsafe = _interopRequireDefault(require("./failsafe"));
10
+ var _Scalar = _interopRequireDefault(require("../schema/Scalar"));
11
11
 
12
- var _Scalar = _interopRequireDefault(require("./Scalar"));
12
+ var _stringify = require("../stringify");
13
13
 
14
- var stringifyNumber = function stringifyNumber(_ref) {
15
- var value = _ref.value;
16
- return isFinite(value) ? JSON.stringify(value) : isNaN(value) ? '.nan' : value < 0 ? '-.inf' : '.inf';
17
- };
14
+ var _failsafe = _interopRequireDefault(require("./failsafe"));
18
15
 
19
- exports.stringifyNumber = stringifyNumber;
20
- var nullOptions = {
21
- nullStr: 'null'
22
- };
23
- exports.nullOptions = nullOptions;
16
+ var _options = require("./options");
24
17
 
25
18
  var _default = _failsafe.default.concat([{
26
19
  identify: function identify(value) {
@@ -35,9 +28,9 @@ var _default = _failsafe.default.concat([{
35
28
  resolve: function resolve() {
36
29
  return null;
37
30
  },
38
- options: nullOptions,
31
+ options: _options.nullOptions,
39
32
  stringify: function stringify() {
40
- return nullOptions.nullStr;
33
+ return _options.nullOptions.nullStr;
41
34
  }
42
35
  }, {
43
36
  identify: function identify(value) {
@@ -49,8 +42,10 @@ var _default = _failsafe.default.concat([{
49
42
  resolve: function resolve(str) {
50
43
  return str[0] === 't' || str[0] === 'T';
51
44
  },
52
- stringify: function stringify(value) {
53
- return JSON.stringify(value);
45
+ options: _options.boolOptions,
46
+ stringify: function stringify(_ref) {
47
+ var value = _ref.value;
48
+ return value ? _options.boolOptions.trueStr : _options.boolOptions.falseStr;
54
49
  }
55
50
  }, {
56
51
  identify: function identify(value) {
@@ -77,7 +72,7 @@ var _default = _failsafe.default.concat([{
77
72
  resolve: function resolve(str) {
78
73
  return parseInt(str, 10);
79
74
  },
80
- stringify: stringifyNumber
75
+ stringify: _stringify.stringifyNumber
81
76
  }, {
82
77
  identify: function identify(value) {
83
78
  return typeof value === 'number';
@@ -103,18 +98,35 @@ var _default = _failsafe.default.concat([{
103
98
  resolve: function resolve(str, nan) {
104
99
  return nan ? NaN : str[0] === '-' ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY;
105
100
  },
106
- stringify: stringifyNumber
101
+ stringify: _stringify.stringifyNumber
107
102
  }, {
108
103
  identify: function identify(value) {
109
104
  return typeof value === 'number';
110
105
  },
111
106
  default: true,
112
107
  tag: 'tag:yaml.org,2002:float',
113
- test: /^[-+]?(0|[1-9][0-9]*)(\.[0-9]*)?([eE][-+]?[0-9]+)?$/,
108
+ format: 'EXP',
109
+ test: /^[-+]?(?:0|[1-9][0-9]*)(\.[0-9]*)?[eE][-+]?[0-9]+$/,
114
110
  resolve: function resolve(str) {
115
111
  return parseFloat(str);
116
112
  },
117
- stringify: stringifyNumber
113
+ stringify: function stringify(_ref4) {
114
+ var value = _ref4.value;
115
+ return Number(value).toExponential();
116
+ }
117
+ }, {
118
+ identify: function identify(value) {
119
+ return typeof value === 'number';
120
+ },
121
+ default: true,
122
+ tag: 'tag:yaml.org,2002:float',
123
+ test: /^[-+]?(?:0|[1-9][0-9]*)\.([0-9]*)$/,
124
+ resolve: function resolve(str, frac) {
125
+ var node = new _Scalar.default(parseFloat(str));
126
+ if (frac && frac[frac.length - 1] === '0') node.minFractionDigits = frac.length;
127
+ return node;
128
+ },
129
+ stringify: _stringify.stringifyNumber
118
130
  }]);
119
131
 
120
132
  exports.default = _default;
@@ -0,0 +1,17 @@
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("./map"));
11
+
12
+ var _seq = _interopRequireDefault(require("./seq"));
13
+
14
+ var _string = _interopRequireDefault(require("./string"));
15
+
16
+ var _default = [_map.default, _seq.default, _string.default];
17
+ exports.default = _default;
@@ -0,0 +1,65 @@
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 _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
+
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+
14
+ var _Map = _interopRequireDefault(require("../../schema/Map"));
15
+
16
+ var _parseMap = _interopRequireDefault(require("../../schema/parseMap"));
17
+
18
+ function createMap(schema, obj, ctx) {
19
+ var map = new _Map.default();
20
+
21
+ if (obj instanceof Map) {
22
+ var _iteratorNormalCompletion = true;
23
+ var _didIteratorError = false;
24
+ var _iteratorError = undefined;
25
+
26
+ try {
27
+ for (var _iterator = obj[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
28
+ var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
29
+ key = _step$value[0],
30
+ value = _step$value[1];
31
+
32
+ map.items.push(schema.createPair(key, value, ctx));
33
+ }
34
+ } catch (err) {
35
+ _didIteratorError = true;
36
+ _iteratorError = err;
37
+ } finally {
38
+ try {
39
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
40
+ _iterator.return();
41
+ }
42
+ } finally {
43
+ if (_didIteratorError) {
44
+ throw _iteratorError;
45
+ }
46
+ }
47
+ }
48
+ } else if (obj && (0, _typeof2.default)(obj) === 'object') {
49
+ for (var _i = 0, _Object$keys = Object.keys(obj); _i < _Object$keys.length; _i++) {
50
+ var key = _Object$keys[_i];
51
+ map.items.push(schema.createPair(key, obj[key], ctx));
52
+ }
53
+ }
54
+
55
+ return map;
56
+ }
57
+
58
+ var _default = {
59
+ createNode: createMap,
60
+ default: true,
61
+ nodeClass: _Map.default,
62
+ tag: 'tag:yaml.org,2002:map',
63
+ resolve: _parseMap.default
64
+ };
65
+ exports.default = _default;
@@ -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;
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
- exports.str = exports.resolve = void 0;
6
+ exports.default = exports.resolveString = void 0;
7
+
8
+ var _stringify = require("../../stringify");
9
9
 
10
- var _stringify2 = _interopRequireWildcard(require("../stringify"));
10
+ var _options = require("../options");
11
11
 
12
- var resolve = function resolve(doc, node) {
12
+ var resolveString = function resolveString(doc, node) {
13
13
  // on error, will return { str: string, errors: Error[] }
14
14
  var res = node.strValue;
15
15
  if (!res) return '';
@@ -21,20 +21,20 @@ var resolve = function resolve(doc, node) {
21
21
  return res.str;
22
22
  };
23
23
 
24
- exports.resolve = resolve;
25
- var str = {
24
+ exports.resolveString = resolveString;
25
+ var _default = {
26
26
  identify: function identify(value) {
27
27
  return typeof value === 'string';
28
28
  },
29
29
  default: true,
30
30
  tag: 'tag:yaml.org,2002:str',
31
- resolve: resolve,
31
+ resolve: resolveString,
32
32
  stringify: function stringify(item, ctx, onComment, onChompKeep) {
33
33
  ctx = Object.assign({
34
34
  actualString: true
35
35
  }, ctx);
36
- return (0, _stringify2.default)(item, ctx, onComment, onChompKeep);
36
+ return (0, _stringify.stringifyString)(item, ctx, onComment, onChompKeep);
37
37
  },
38
- options: _stringify2.strOptions
38
+ options: _options.strOptions
39
39
  };
40
- exports.str = str;
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;
@@ -7,19 +7,21 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
- var _failsafe = require("./failsafe");
10
+ var _map = _interopRequireDefault(require("./failsafe/map"));
11
11
 
12
- var _Scalar = _interopRequireDefault(require("./Scalar"));
12
+ var _seq = _interopRequireDefault(require("./failsafe/seq"));
13
13
 
14
- var _string = require("./_string");
14
+ var _Scalar = _interopRequireDefault(require("../schema/Scalar"));
15
15
 
16
- var schema = [_failsafe.map, _failsafe.seq, {
16
+ var _string = require("./failsafe/string");
17
+
18
+ var schema = [_map.default, _seq.default, {
17
19
  identify: function identify(value) {
18
20
  return typeof value === 'string';
19
21
  },
20
22
  default: true,
21
23
  tag: 'tag:yaml.org,2002:str',
22
- resolve: _string.resolve,
24
+ resolve: _string.resolveString,
23
25
  stringify: function stringify(value) {
24
26
  return JSON.stringify(value);
25
27
  }
@@ -98,6 +100,4 @@ schema.scalarFallback = function (str) {
98
100
  };
99
101
 
100
102
  var _default = schema;
101
- exports.default = _default;
102
- module.exports = exports.default;
103
- module.exports.default = exports.default;
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;
@@ -1,23 +1,22 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
- exports.default = exports.binary = void 0;
6
+ exports.default = void 0;
7
+
8
+ var _constants = require("../../constants");
9
9
 
10
- var _errors = require("../errors");
10
+ var _errors = require("../../errors");
11
11
 
12
- var _Node = require("../cst/Node");
12
+ var _stringify = require("../../stringify");
13
13
 
14
- var _stringify2 = _interopRequireDefault(require("../stringify"));
14
+ var _string = require("../failsafe/string");
15
15
 
16
- var _string = require("./_string");
16
+ var _options = require("../options");
17
17
 
18
18
  /* global atob, btoa, Buffer */
19
- // Published as 'yaml/types/binary'
20
- var binary = {
19
+ var _default = {
21
20
  identify: function identify(value) {
22
21
  return value instanceof Uint8Array;
23
22
  },
@@ -35,10 +34,10 @@ var binary = {
35
34
  */
36
35
  resolve: function resolve(doc, node) {
37
36
  if (typeof Buffer === 'function') {
38
- var src = (0, _string.resolve)(doc, node);
37
+ var src = (0, _string.resolveString)(doc, node);
39
38
  return Buffer.from(src, 'base64');
40
39
  } else if (typeof atob === 'function') {
41
- var _src = atob((0, _string.resolve)(doc, node));
40
+ var _src = atob((0, _string.resolveString)(doc, node));
42
41
 
43
42
  var buffer = new Uint8Array(_src.length);
44
43
 
@@ -52,10 +51,7 @@ var binary = {
52
51
  return null;
53
52
  }
54
53
  },
55
- options: {
56
- defaultType: _Node.Type.BLOCK_LITERAL,
57
- lineWidth: 76
58
- },
54
+ options: _options.binaryOptions,
59
55
  stringify: function stringify(_ref, ctx, onComment, onChompKeep) {
60
56
  var comment = _ref.comment,
61
57
  type = _ref.type,
@@ -76,12 +72,12 @@ var binary = {
76
72
  throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
77
73
  }
78
74
 
79
- if (!type) type = binary.options.defaultType;
75
+ if (!type) type = _options.binaryOptions.defaultType;
80
76
 
81
- if (type === _Node.Type.QUOTE_DOUBLE) {
77
+ if (type === _constants.Type.QUOTE_DOUBLE) {
82
78
  value = src;
83
79
  } else {
84
- var lineWidth = binary.options.lineWidth;
80
+ var lineWidth = _options.binaryOptions.lineWidth;
85
81
  var n = Math.ceil(src.length / lineWidth);
86
82
  var lines = new Array(n);
87
83
 
@@ -89,16 +85,14 @@ var binary = {
89
85
  lines[_i] = src.substr(o, lineWidth);
90
86
  }
91
87
 
92
- value = lines.join(type === _Node.Type.BLOCK_LITERAL ? '\n' : ' ');
88
+ value = lines.join(type === _constants.Type.BLOCK_LITERAL ? '\n' : ' ');
93
89
  }
94
90
 
95
- return (0, _stringify2.default)({
91
+ return (0, _stringify.stringifyString)({
96
92
  comment: comment,
97
93
  type: type,
98
94
  value: value
99
95
  }, ctx, onComment, onChompKeep);
100
96
  }
101
97
  };
102
- exports.binary = binary;
103
- var _default = [binary];
104
98
  exports.default = _default;
@@ -5,33 +5,25 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = exports.boolOptions = exports.nullOptions = void 0;
8
+ exports.default = void 0;
9
9
 
10
- var _binary = _interopRequireDefault(require("./_binary"));
10
+ var _Scalar = _interopRequireDefault(require("../../schema/Scalar"));
11
11
 
12
- var _omap = _interopRequireDefault(require("./_omap"));
12
+ var _stringify = require("../../stringify");
13
13
 
14
- var _pairs = _interopRequireDefault(require("./_pairs"));
14
+ var _failsafe = _interopRequireDefault(require("../failsafe"));
15
15
 
16
- var _set = _interopRequireDefault(require("./_set"));
16
+ var _options = require("../options");
17
17
 
18
- var _timestamp = _interopRequireDefault(require("./_timestamp"));
18
+ var _binary = _interopRequireDefault(require("./binary"));
19
19
 
20
- var _core = require("./core");
20
+ var _omap = _interopRequireDefault(require("./omap"));
21
21
 
22
- var _failsafe = _interopRequireDefault(require("./failsafe"));
22
+ var _pairs = _interopRequireDefault(require("./pairs"));
23
23
 
24
- var _Scalar = _interopRequireDefault(require("./Scalar"));
24
+ var _set = _interopRequireDefault(require("./set"));
25
25
 
26
- var nullOptions = {
27
- nullStr: 'null'
28
- };
29
- exports.nullOptions = nullOptions;
30
- var boolOptions = {
31
- trueStr: 'true',
32
- falseStr: 'false'
33
- };
34
- exports.boolOptions = boolOptions;
26
+ var _timestamp = require("./timestamp");
35
27
 
36
28
  var _default = _failsafe.default.concat([{
37
29
  identify: function identify(value) {
@@ -46,9 +38,9 @@ var _default = _failsafe.default.concat([{
46
38
  resolve: function resolve() {
47
39
  return null;
48
40
  },
49
- options: nullOptions,
41
+ options: _options.nullOptions,
50
42
  stringify: function stringify() {
51
- return nullOptions.nullStr;
43
+ return _options.nullOptions.nullStr;
52
44
  }
53
45
  }, {
54
46
  identify: function identify(value) {
@@ -60,10 +52,10 @@ var _default = _failsafe.default.concat([{
60
52
  resolve: function resolve() {
61
53
  return true;
62
54
  },
63
- options: boolOptions,
55
+ options: _options.boolOptions,
64
56
  stringify: function stringify(_ref) {
65
57
  var value = _ref.value;
66
- return value ? boolOptions.trueStr : boolOptions.falseStr;
58
+ return value ? _options.boolOptions.trueStr : _options.boolOptions.falseStr;
67
59
  }
68
60
  }, {
69
61
  identify: function identify(value) {
@@ -75,10 +67,10 @@ var _default = _failsafe.default.concat([{
75
67
  resolve: function resolve() {
76
68
  return false;
77
69
  },
78
- options: boolOptions,
70
+ options: _options.boolOptions,
79
71
  stringify: function stringify(_ref2) {
80
72
  var value = _ref2.value;
81
- return value ? boolOptions.trueStr : boolOptions.falseStr;
73
+ return value ? _options.boolOptions.trueStr : _options.boolOptions.falseStr;
82
74
  }
83
75
  }, {
84
76
  identify: function identify(value) {
@@ -120,7 +112,7 @@ var _default = _failsafe.default.concat([{
120
112
  resolve: function resolve(str) {
121
113
  return parseInt(str.replace(/_/g, ''), 10);
122
114
  },
123
- stringify: _core.stringifyNumber
115
+ stringify: _stringify.stringifyNumber
124
116
  }, {
125
117
  identify: function identify(value) {
126
118
  return typeof value === 'number';
@@ -146,18 +138,40 @@ var _default = _failsafe.default.concat([{
146
138
  resolve: function resolve(str, nan) {
147
139
  return nan ? NaN : str[0] === '-' ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY;
148
140
  },
149
- stringify: _core.stringifyNumber
141
+ stringify: _stringify.stringifyNumber
150
142
  }, {
151
143
  identify: function identify(value) {
152
144
  return typeof value === 'number';
153
145
  },
154
146
  default: true,
155
147
  tag: 'tag:yaml.org,2002:float',
156
- test: /^[-+]?([0-9][0-9_]*)?\.[0-9_]*([eE][-+]?[0-9]+)?$/,
148
+ format: 'EXP',
149
+ test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
157
150
  resolve: function resolve(str) {
158
151
  return parseFloat(str.replace(/_/g, ''));
159
152
  },
160
- stringify: _core.stringifyNumber
161
- }], _binary.default, _omap.default, _pairs.default, _set.default, _timestamp.default);
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);
162
176
 
163
177
  exports.default = _default;
@@ -21,19 +21,19 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
21
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__*/
@@ -156,9 +156,6 @@ var _default = {
156
156
  default: false,
157
157
  tag: 'tag:yaml.org,2002:omap',
158
158
  resolve: parseOMap,
159
- createNode: createOMap,
160
- stringify: function stringify(value, ctx, onComment, onChompKeep) {
161
- return value.toString(ctx, onComment, onChompKeep);
162
- }
159
+ createNode: createOMap
163
160
  };
164
161
  exports.default = _default;