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.
Files changed (163) hide show
  1. package/README.md +4 -4
  2. package/browser/dist/PlainValue-ff5147c6.js +1277 -0
  3. package/browser/dist/Schema-2bf2c74e.js +679 -0
  4. package/browser/dist/index.js +923 -38
  5. package/browser/dist/legacy-exports.js +3 -0
  6. package/browser/dist/parse-cst.js +1904 -0
  7. package/browser/dist/resolveSeq-04825f30.js +2373 -0
  8. package/browser/dist/types.js +4 -0
  9. package/browser/dist/util.js +2 -0
  10. package/browser/dist/warnings-0e4b70d3.js +499 -0
  11. package/browser/index.js +1 -1
  12. package/browser/map.js +2 -2
  13. package/browser/pair.js +2 -2
  14. package/browser/parse-cst.js +1 -1
  15. package/browser/scalar.js +2 -2
  16. package/browser/schema.js +8 -6
  17. package/browser/seq.js +2 -2
  18. package/browser/types/binary.js +3 -2
  19. package/browser/types/omap.js +3 -2
  20. package/browser/types/pairs.js +3 -2
  21. package/browser/types/set.js +3 -2
  22. package/browser/types/timestamp.js +6 -6
  23. package/browser/types.js +1 -11
  24. package/browser/util.js +1 -15
  25. package/dist/Document-2cf6b08c.js +757 -0
  26. package/dist/PlainValue-ec8e588e.js +876 -0
  27. package/dist/Schema-42e9705c.js +522 -0
  28. package/dist/index.js +21 -43
  29. package/dist/legacy-exports.js +16 -0
  30. package/dist/parse-cst.js +1747 -0
  31. package/dist/resolveSeq-4a68b39b.js +2115 -0
  32. package/dist/test-events.js +11 -14
  33. package/dist/types.js +23 -0
  34. package/dist/util.js +19 -0
  35. package/dist/warnings-39684f17.js +416 -0
  36. package/index.d.ts +372 -0
  37. package/index.js +1 -1
  38. package/map.js +2 -2
  39. package/package.json +32 -45
  40. package/pair.js +2 -2
  41. package/parse-cst.d.ts +187 -0
  42. package/parse-cst.js +1 -1
  43. package/scalar.js +2 -2
  44. package/schema.js +8 -6
  45. package/seq.js +2 -2
  46. package/types/binary.js +3 -2
  47. package/types/omap.js +3 -2
  48. package/types/pairs.js +3 -2
  49. package/types/set.js +3 -2
  50. package/types/timestamp.js +6 -6
  51. package/types.d.ts +407 -0
  52. package/types.js +16 -10
  53. package/types.mjs +15 -18
  54. package/util.d.ts +86 -0
  55. package/util.js +14 -13
  56. package/util.mjs +13 -19
  57. package/browser/dist/Anchors.js +0 -133
  58. package/browser/dist/Document.js +0 -819
  59. package/browser/dist/addComment.js +0 -8
  60. package/browser/dist/constants.js +0 -26
  61. package/browser/dist/cst/Alias.js +0 -42
  62. package/browser/dist/cst/BlankLine.js +0 -56
  63. package/browser/dist/cst/BlockValue.js +0 -247
  64. package/browser/dist/cst/Collection.js +0 -274
  65. package/browser/dist/cst/CollectionItem.js +0 -136
  66. package/browser/dist/cst/Comment.js +0 -40
  67. package/browser/dist/cst/Directive.js +0 -72
  68. package/browser/dist/cst/Document.js +0 -282
  69. package/browser/dist/cst/FlowCollection.js +0 -216
  70. package/browser/dist/cst/Node.js +0 -388
  71. package/browser/dist/cst/ParseContext.js +0 -248
  72. package/browser/dist/cst/PlainValue.js +0 -166
  73. package/browser/dist/cst/QuoteDouble.js +0 -241
  74. package/browser/dist/cst/QuoteSingle.js +0 -116
  75. package/browser/dist/cst/Range.js +0 -67
  76. package/browser/dist/cst/parse.js +0 -48
  77. package/browser/dist/cst/source-utils.js +0 -168
  78. package/browser/dist/errors.js +0 -112
  79. package/browser/dist/foldFlowLines.js +0 -138
  80. package/browser/dist/listTagNames.js +0 -28
  81. package/browser/dist/schema/Alias.js +0 -139
  82. package/browser/dist/schema/Collection.js +0 -267
  83. package/browser/dist/schema/Map.js +0 -178
  84. package/browser/dist/schema/Merge.js +0 -127
  85. package/browser/dist/schema/Node.js +0 -7
  86. package/browser/dist/schema/Pair.js +0 -171
  87. package/browser/dist/schema/Scalar.js +0 -38
  88. package/browser/dist/schema/Seq.js +0 -114
  89. package/browser/dist/schema/index.js +0 -382
  90. package/browser/dist/schema/parseMap.js +0 -312
  91. package/browser/dist/schema/parseSeq.js +0 -168
  92. package/browser/dist/schema/parseUtils.js +0 -110
  93. package/browser/dist/stringify.js +0 -331
  94. package/browser/dist/tags/core.js +0 -126
  95. package/browser/dist/tags/failsafe/index.js +0 -4
  96. package/browser/dist/tags/failsafe/map.js +0 -56
  97. package/browser/dist/tags/failsafe/seq.js +0 -43
  98. package/browser/dist/tags/failsafe/string.js +0 -28
  99. package/browser/dist/tags/index.js +0 -36
  100. package/browser/dist/tags/json.js +0 -76
  101. package/browser/dist/tags/options.js +0 -23
  102. package/browser/dist/tags/yaml-1.1/binary.js +0 -87
  103. package/browser/dist/tags/yaml-1.1/index.js +0 -157
  104. package/browser/dist/tags/yaml-1.1/omap.js +0 -142
  105. package/browser/dist/tags/yaml-1.1/pairs.js +0 -81
  106. package/browser/dist/tags/yaml-1.1/set.js +0 -114
  107. package/browser/dist/tags/yaml-1.1/timestamp.js +0 -97
  108. package/browser/dist/test-events.js +0 -163
  109. package/browser/dist/toJSON.js +0 -20
  110. package/browser/dist/warnings.js +0 -28
  111. package/dist/Anchors.js +0 -125
  112. package/dist/Document.js +0 -710
  113. package/dist/addComment.js +0 -17
  114. package/dist/constants.js +0 -34
  115. package/dist/cst/Alias.js +0 -38
  116. package/dist/cst/BlankLine.js +0 -56
  117. package/dist/cst/BlockValue.js +0 -248
  118. package/dist/cst/Collection.js +0 -271
  119. package/dist/cst/CollectionItem.js +0 -140
  120. package/dist/cst/Comment.js +0 -38
  121. package/dist/cst/Directive.js +0 -64
  122. package/dist/cst/Document.js +0 -281
  123. package/dist/cst/FlowCollection.js +0 -218
  124. package/dist/cst/Node.js +0 -365
  125. package/dist/cst/ParseContext.js +0 -258
  126. package/dist/cst/PlainValue.js +0 -161
  127. package/dist/cst/QuoteDouble.js +0 -237
  128. package/dist/cst/QuoteSingle.js +0 -113
  129. package/dist/cst/Range.js +0 -63
  130. package/dist/cst/parse.js +0 -55
  131. package/dist/cst/source-utils.js +0 -178
  132. package/dist/errors.js +0 -102
  133. package/dist/foldFlowLines.js +0 -146
  134. package/dist/listTagNames.js +0 -38
  135. package/dist/schema/Alias.js +0 -110
  136. package/dist/schema/Collection.js +0 -188
  137. package/dist/schema/Map.js +0 -103
  138. package/dist/schema/Merge.js +0 -80
  139. package/dist/schema/Node.js +0 -10
  140. package/dist/schema/Pair.js +0 -161
  141. package/dist/schema/Scalar.js +0 -31
  142. package/dist/schema/Seq.js +0 -78
  143. package/dist/schema/index.js +0 -315
  144. package/dist/schema/parseMap.js +0 -343
  145. package/dist/schema/parseSeq.js +0 -180
  146. package/dist/schema/parseUtils.js +0 -104
  147. package/dist/stringify.js +0 -358
  148. package/dist/tags/core.js +0 -114
  149. package/dist/tags/failsafe/index.js +0 -17
  150. package/dist/tags/failsafe/map.js +0 -37
  151. package/dist/tags/failsafe/seq.js +0 -34
  152. package/dist/tags/failsafe/string.js +0 -40
  153. package/dist/tags/index.js +0 -62
  154. package/dist/tags/json.js +0 -60
  155. package/dist/tags/options.js +0 -35
  156. package/dist/tags/yaml-1.1/binary.js +0 -97
  157. package/dist/tags/yaml-1.1/index.js +0 -131
  158. package/dist/tags/yaml-1.1/omap.js +0 -105
  159. package/dist/tags/yaml-1.1/pairs.js +0 -80
  160. package/dist/tags/yaml-1.1/set.js +0 -91
  161. package/dist/tags/yaml-1.1/timestamp.js +0 -93
  162. package/dist/toJSON.js +0 -23
  163. package/dist/warnings.js +0 -39
@@ -1,142 +0,0 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
- import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
6
- import _inherits from "@babel/runtime/helpers/inherits";
7
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
- import { YAMLSemanticError } from '../../errors';
9
- import _toJSON from '../../toJSON';
10
- import YAMLMap from '../../schema/Map';
11
- import Pair from '../../schema/Pair';
12
- import Scalar from '../../schema/Scalar';
13
- import YAMLSeq from '../../schema/Seq';
14
- import { createPairs, parsePairs } from './pairs';
15
- export var YAMLOMap = /*#__PURE__*/function (_YAMLSeq) {
16
- _inherits(YAMLOMap, _YAMLSeq);
17
-
18
- function YAMLOMap() {
19
- var _this;
20
-
21
- _classCallCheck(this, YAMLOMap);
22
-
23
- _this = _possibleConstructorReturn(this, _getPrototypeOf(YAMLOMap).call(this));
24
-
25
- _defineProperty(_assertThisInitialized(_this), "add", YAMLMap.prototype.add.bind(_assertThisInitialized(_this)));
26
-
27
- _defineProperty(_assertThisInitialized(_this), "delete", YAMLMap.prototype.delete.bind(_assertThisInitialized(_this)));
28
-
29
- _defineProperty(_assertThisInitialized(_this), "get", YAMLMap.prototype.get.bind(_assertThisInitialized(_this)));
30
-
31
- _defineProperty(_assertThisInitialized(_this), "has", YAMLMap.prototype.has.bind(_assertThisInitialized(_this)));
32
-
33
- _defineProperty(_assertThisInitialized(_this), "set", YAMLMap.prototype.set.bind(_assertThisInitialized(_this)));
34
-
35
- _this.tag = YAMLOMap.tag;
36
- return _this;
37
- }
38
-
39
- _createClass(YAMLOMap, [{
40
- key: "toJSON",
41
- value: function toJSON(_, ctx) {
42
- var map = new Map();
43
- if (ctx && ctx.onCreate) ctx.onCreate(map);
44
- var _iteratorNormalCompletion = true;
45
- var _didIteratorError = false;
46
- var _iteratorError = undefined;
47
-
48
- try {
49
- for (var _iterator = this.items[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
50
- var pair = _step.value;
51
- var key = void 0,
52
- value = void 0;
53
-
54
- if (pair instanceof Pair) {
55
- key = _toJSON(pair.key, '', ctx);
56
- value = _toJSON(pair.value, key, ctx);
57
- } else {
58
- key = _toJSON(pair, '', ctx);
59
- }
60
-
61
- if (map.has(key)) throw new Error('Ordered maps must not include duplicate keys');
62
- map.set(key, value);
63
- }
64
- } catch (err) {
65
- _didIteratorError = true;
66
- _iteratorError = err;
67
- } finally {
68
- try {
69
- if (!_iteratorNormalCompletion && _iterator.return != null) {
70
- _iterator.return();
71
- }
72
- } finally {
73
- if (_didIteratorError) {
74
- throw _iteratorError;
75
- }
76
- }
77
- }
78
-
79
- return map;
80
- }
81
- }]);
82
-
83
- return YAMLOMap;
84
- }(YAMLSeq);
85
-
86
- _defineProperty(YAMLOMap, "tag", 'tag:yaml.org,2002:omap');
87
-
88
- function parseOMap(doc, cst) {
89
- var pairs = parsePairs(doc, cst);
90
- var seenKeys = [];
91
- var _iteratorNormalCompletion2 = true;
92
- var _didIteratorError2 = false;
93
- var _iteratorError2 = undefined;
94
-
95
- try {
96
- for (var _iterator2 = pairs.items[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
97
- var key = _step2.value.key;
98
-
99
- if (key instanceof Scalar) {
100
- if (seenKeys.includes(key.value)) {
101
- var msg = 'Ordered maps must not include duplicate keys';
102
- throw new YAMLSemanticError(cst, msg);
103
- } else {
104
- seenKeys.push(key.value);
105
- }
106
- }
107
- }
108
- } catch (err) {
109
- _didIteratorError2 = true;
110
- _iteratorError2 = err;
111
- } finally {
112
- try {
113
- if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
114
- _iterator2.return();
115
- }
116
- } finally {
117
- if (_didIteratorError2) {
118
- throw _iteratorError2;
119
- }
120
- }
121
- }
122
-
123
- return Object.assign(new YAMLOMap(), pairs);
124
- }
125
-
126
- function createOMap(schema, iterable, ctx) {
127
- var pairs = createPairs(schema, iterable, ctx);
128
- var omap = new YAMLOMap();
129
- omap.items = pairs.items;
130
- return omap;
131
- }
132
-
133
- export default {
134
- identify: function identify(value) {
135
- return value instanceof Map;
136
- },
137
- nodeClass: YAMLOMap,
138
- default: false,
139
- tag: 'tag:yaml.org,2002:omap',
140
- resolve: parseOMap,
141
- createNode: createOMap
142
- };
@@ -1,81 +0,0 @@
1
- import { YAMLSemanticError } from '../../errors';
2
- import YAMLMap from '../../schema/Map';
3
- import Pair from '../../schema/Pair';
4
- import parseSeq from '../../schema/parseSeq';
5
- import YAMLSeq from '../../schema/Seq';
6
- export function parsePairs(doc, cst) {
7
- var seq = parseSeq(doc, cst);
8
-
9
- for (var i = 0; i < seq.items.length; ++i) {
10
- var item = seq.items[i];
11
- if (item instanceof Pair) continue;else if (item instanceof YAMLMap) {
12
- if (item.items.length > 1) {
13
- var msg = 'Each pair must have its own sequence indicator';
14
- throw new YAMLSemanticError(cst, msg);
15
- }
16
-
17
- var pair = item.items[0] || new Pair();
18
- if (item.commentBefore) pair.commentBefore = pair.commentBefore ? "".concat(item.commentBefore, "\n").concat(pair.commentBefore) : item.commentBefore;
19
- if (item.comment) pair.comment = pair.comment ? "".concat(item.comment, "\n").concat(pair.comment) : item.comment;
20
- item = pair;
21
- }
22
- seq.items[i] = item instanceof Pair ? item : new Pair(item);
23
- }
24
-
25
- return seq;
26
- }
27
- export function createPairs(schema, iterable, ctx) {
28
- var pairs = new YAMLSeq(schema);
29
- pairs.tag = 'tag:yaml.org,2002:pairs';
30
- var _iteratorNormalCompletion = true;
31
- var _didIteratorError = false;
32
- var _iteratorError = undefined;
33
-
34
- try {
35
- for (var _iterator = iterable[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
36
- var it = _step.value;
37
- var key = void 0,
38
- value = void 0;
39
-
40
- if (Array.isArray(it)) {
41
- if (it.length === 2) {
42
- key = it[0];
43
- value = it[1];
44
- } else throw new TypeError("Expected [key, value] tuple: ".concat(it));
45
- } else if (it && it instanceof Object) {
46
- var keys = Object.keys(it);
47
-
48
- if (keys.length === 1) {
49
- key = keys[0];
50
- value = it[key];
51
- } else throw new TypeError("Expected { key: value } tuple: ".concat(it));
52
- } else {
53
- key = it;
54
- }
55
-
56
- var pair = schema.createPair(key, value, ctx);
57
- pairs.items.push(pair);
58
- }
59
- } catch (err) {
60
- _didIteratorError = true;
61
- _iteratorError = err;
62
- } finally {
63
- try {
64
- if (!_iteratorNormalCompletion && _iterator.return != null) {
65
- _iterator.return();
66
- }
67
- } finally {
68
- if (_didIteratorError) {
69
- throw _iteratorError;
70
- }
71
- }
72
- }
73
-
74
- return pairs;
75
- }
76
- export default {
77
- default: false,
78
- tag: 'tag:yaml.org,2002:pairs',
79
- resolve: parsePairs,
80
- createNode: createPairs
81
- };
@@ -1,114 +0,0 @@
1
- import _typeof from "@babel/runtime/helpers/typeof";
2
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/createClass";
4
- import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
- import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
- import _get from "@babel/runtime/helpers/get";
7
- import _inherits from "@babel/runtime/helpers/inherits";
8
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
- import { YAMLSemanticError } from '../../errors';
10
- import YAMLMap, { findPair } from '../../schema/Map';
11
- import Pair from '../../schema/Pair';
12
- import parseMap from '../../schema/parseMap';
13
- import Scalar from '../../schema/Scalar';
14
- export var YAMLSet = /*#__PURE__*/function (_YAMLMap) {
15
- _inherits(YAMLSet, _YAMLMap);
16
-
17
- function YAMLSet() {
18
- var _this;
19
-
20
- _classCallCheck(this, YAMLSet);
21
-
22
- _this = _possibleConstructorReturn(this, _getPrototypeOf(YAMLSet).call(this));
23
- _this.tag = YAMLSet.tag;
24
- return _this;
25
- }
26
-
27
- _createClass(YAMLSet, [{
28
- key: "add",
29
- value: function add(key) {
30
- var pair = key instanceof Pair ? key : new Pair(key);
31
- var prev = findPair(this.items, pair.key);
32
- if (!prev) this.items.push(pair);
33
- }
34
- }, {
35
- key: "get",
36
- value: function get(key, keepPair) {
37
- var pair = findPair(this.items, key);
38
- return !keepPair && pair instanceof Pair ? pair.key instanceof Scalar ? pair.key.value : pair.key : pair;
39
- }
40
- }, {
41
- key: "set",
42
- value: function set(key, value) {
43
- if (typeof value !== 'boolean') throw new Error("Expected boolean value for set(key, value) in a YAML set, not ".concat(_typeof(value)));
44
- var prev = findPair(this.items, key);
45
-
46
- if (prev && !value) {
47
- this.items.splice(this.items.indexOf(prev), 1);
48
- } else if (!prev && value) {
49
- this.items.push(new Pair(key));
50
- }
51
- }
52
- }, {
53
- key: "toJSON",
54
- value: function toJSON(_, ctx) {
55
- return _get(_getPrototypeOf(YAMLSet.prototype), "toJSON", this).call(this, _, ctx, Set);
56
- }
57
- }, {
58
- key: "toString",
59
- value: function toString(ctx, onComment, onChompKeep) {
60
- if (!ctx) return JSON.stringify(this);
61
- if (this.hasAllNullValues()) return _get(_getPrototypeOf(YAMLSet.prototype), "toString", this).call(this, ctx, onComment, onChompKeep);else throw new Error('Set items must all have null values');
62
- }
63
- }]);
64
-
65
- return YAMLSet;
66
- }(YAMLMap);
67
-
68
- _defineProperty(YAMLSet, "tag", 'tag:yaml.org,2002:set');
69
-
70
- function parseSet(doc, cst) {
71
- var map = parseMap(doc, cst);
72
- if (!map.hasAllNullValues()) throw new YAMLSemanticError(cst, 'Set items must all have null values');
73
- return Object.assign(new YAMLSet(), map);
74
- }
75
-
76
- function createSet(schema, iterable, ctx) {
77
- var set = new YAMLSet();
78
- var _iteratorNormalCompletion = true;
79
- var _didIteratorError = false;
80
- var _iteratorError = undefined;
81
-
82
- try {
83
- for (var _iterator = iterable[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
84
- var value = _step.value;
85
- set.items.push(schema.createPair(value, null, ctx));
86
- }
87
- } catch (err) {
88
- _didIteratorError = true;
89
- _iteratorError = err;
90
- } finally {
91
- try {
92
- if (!_iteratorNormalCompletion && _iterator.return != null) {
93
- _iterator.return();
94
- }
95
- } finally {
96
- if (_didIteratorError) {
97
- throw _iteratorError;
98
- }
99
- }
100
- }
101
-
102
- return set;
103
- }
104
-
105
- export default {
106
- identify: function identify(value) {
107
- return value instanceof Set;
108
- },
109
- nodeClass: YAMLSet,
110
- default: false,
111
- tag: 'tag:yaml.org,2002:set',
112
- resolve: parseSet,
113
- createNode: createSet
114
- };
@@ -1,97 +0,0 @@
1
- import { stringifyNumber } from '../../stringify';
2
-
3
- var parseSexagesimal = function parseSexagesimal(sign, parts) {
4
- var n = parts.split(':').reduce(function (n, p) {
5
- return n * 60 + Number(p);
6
- }, 0);
7
- return sign === '-' ? -n : n;
8
- }; // hhhh:mm:ss.sss
9
-
10
-
11
- var stringifySexagesimal = function stringifySexagesimal(_ref) {
12
- var value = _ref.value;
13
- if (isNaN(value) || !isFinite(value)) return stringifyNumber(value);
14
- var sign = '';
15
-
16
- if (value < 0) {
17
- sign = '-';
18
- value = Math.abs(value);
19
- }
20
-
21
- var parts = [value % 60]; // seconds, including ms
22
-
23
- if (value < 60) {
24
- parts.unshift(0); // at least one : is required
25
- } else {
26
- value = Math.round((value - parts[0]) / 60);
27
- parts.unshift(value % 60); // minutes
28
-
29
- if (value >= 60) {
30
- value = Math.round((value - parts[0]) / 60);
31
- parts.unshift(value); // hours
32
- }
33
- }
34
-
35
- return sign + parts.map(function (n) {
36
- return n < 10 ? '0' + String(n) : String(n);
37
- }).join(':').replace(/000000\d*$/, '') // % 60 may introduce error
38
- ;
39
- };
40
-
41
- export var intTime = {
42
- identify: function identify(value) {
43
- return typeof value === 'number';
44
- },
45
- default: true,
46
- tag: 'tag:yaml.org,2002:int',
47
- format: 'TIME',
48
- test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
49
- resolve: function resolve(str, sign, parts) {
50
- return parseSexagesimal(sign, parts.replace(/_/g, ''));
51
- },
52
- stringify: stringifySexagesimal
53
- };
54
- export var floatTime = {
55
- identify: function identify(value) {
56
- return typeof value === 'number';
57
- },
58
- default: true,
59
- tag: 'tag:yaml.org,2002:float',
60
- format: 'TIME',
61
- test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
62
- resolve: function resolve(str, sign, parts) {
63
- return parseSexagesimal(sign, parts.replace(/_/g, ''));
64
- },
65
- stringify: stringifySexagesimal
66
- };
67
- export var timestamp = {
68
- identify: function identify(value) {
69
- return value instanceof Date;
70
- },
71
- default: true,
72
- tag: 'tag:yaml.org,2002:timestamp',
73
- // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
74
- // may be omitted altogether, resulting in a date format. In such a case, the time part is
75
- // assumed to be 00:00:00Z (start of day, UTC).
76
- test: RegExp('^(?:' + '([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})' + // YYYY-Mm-Dd
77
- '(?:(?:t|T|[ \\t]+)' + // t | T | whitespace
78
- '([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)' + // Hh:Mm:Ss(.ss)?
79
- '(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?' + // Z | +5 | -03:30
80
- ')?' + ')$'),
81
- resolve: function resolve(str, year, month, day, hour, minute, second, millisec, tz) {
82
- if (millisec) millisec = (millisec + '00').substr(1, 3);
83
- var date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
84
-
85
- if (tz && tz !== 'Z') {
86
- var d = parseSexagesimal(tz[0], tz.slice(1));
87
- if (Math.abs(d) < 30) d *= 60;
88
- date -= 60000 * d;
89
- }
90
-
91
- return new Date(date);
92
- },
93
- stringify: function stringify(_ref2) {
94
- var value = _ref2.value;
95
- return value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, '');
96
- }
97
- };
@@ -1,163 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import parseCST from './cst/parse';
3
- import Document from './Document'; // test harness for yaml-test-suite event tests
4
-
5
- export default function testEvents(src, options) {
6
- var opt = Object.assign({
7
- keepCstNodes: true,
8
- keepNodeTypes: true,
9
- version: '1.2'
10
- }, options);
11
- var docs = parseCST(src).map(function (cstDoc) {
12
- return new Document(opt).parse(cstDoc);
13
- });
14
- var errDoc = docs.find(function (doc) {
15
- return doc.errors.length > 0;
16
- });
17
- var error = errDoc ? errDoc.errors[0].message : null;
18
- var events = ['+STR'];
19
-
20
- try {
21
- for (var i = 0; i < docs.length; ++i) {
22
- var doc = docs[i];
23
- var root = doc.contents;
24
- if (Array.isArray(root)) root = root[0];
25
-
26
- var _ref = doc.range || [0, 0],
27
- _ref2 = _slicedToArray(_ref, 2),
28
- rootStart = _ref2[0],
29
- rootEnd = _ref2[1];
30
-
31
- var e = doc.errors[0] && doc.errors[0].source;
32
- if (e && e.type === 'SEQ_ITEM') e = e.node;
33
- if (e && (e.type === 'DOCUMENT' || e.range.start < rootStart)) throw new Error();
34
- var docStart = '+DOC';
35
- var pre = src.slice(0, rootStart);
36
- var explicitDoc = /---\s*$/.test(pre);
37
- if (explicitDoc) docStart += ' ---';else if (!doc.contents) continue;
38
- events.push(docStart);
39
- addEvents(events, doc, e, root);
40
- if (doc.contents && doc.contents.length > 1) throw new Error();
41
- var docEnd = '-DOC';
42
-
43
- if (rootEnd) {
44
- var post = src.slice(rootEnd);
45
- if (/^\.\.\./.test(post)) docEnd += ' ...';
46
- }
47
-
48
- events.push(docEnd);
49
- }
50
- } catch (e) {
51
- return {
52
- events: events,
53
- error: error || e
54
- };
55
- }
56
-
57
- events.push('-STR');
58
- return {
59
- events: events,
60
- error: error
61
- };
62
- }
63
-
64
- function addEvents(events, doc, e, node) {
65
- if (!node) {
66
- events.push('=VAL :');
67
- return;
68
- }
69
-
70
- if (e && node.cstNode === e) throw new Error();
71
- var props = '';
72
- var anchor = doc.anchors.getName(node);
73
-
74
- if (anchor) {
75
- if (/\d$/.test(anchor)) {
76
- var alt = anchor.replace(/\d$/, '');
77
- if (doc.anchors.getNode(alt)) anchor = alt;
78
- }
79
-
80
- props = " &".concat(anchor);
81
- }
82
-
83
- if (node.cstNode && node.cstNode.tag) {
84
- var _node$cstNode$tag = node.cstNode.tag,
85
- handle = _node$cstNode$tag.handle,
86
- suffix = _node$cstNode$tag.suffix;
87
- props += handle === '!' && !suffix ? ' <!>' : " <".concat(node.tag, ">");
88
- }
89
-
90
- var scalar = null;
91
-
92
- switch (node.type) {
93
- case 'ALIAS':
94
- {
95
- var alias = doc.anchors.getName(node.source);
96
-
97
- if (/\d$/.test(alias)) {
98
- var _alt = alias.replace(/\d$/, '');
99
-
100
- if (doc.anchors.getNode(_alt)) alias = _alt;
101
- }
102
-
103
- events.push("=ALI".concat(props, " *").concat(alias));
104
- }
105
- break;
106
-
107
- case 'BLOCK_FOLDED':
108
- scalar = '>';
109
- break;
110
-
111
- case 'BLOCK_LITERAL':
112
- scalar = '|';
113
- break;
114
-
115
- case 'PLAIN':
116
- scalar = ':';
117
- break;
118
-
119
- case 'QUOTE_DOUBLE':
120
- scalar = '"';
121
- break;
122
-
123
- case 'QUOTE_SINGLE':
124
- scalar = "'";
125
- break;
126
-
127
- case 'PAIR':
128
- events.push("+MAP".concat(props));
129
- addEvents(events, doc, e, node.key);
130
- addEvents(events, doc, e, node.value);
131
- events.push('-MAP');
132
- break;
133
-
134
- case 'FLOW_SEQ':
135
- case 'SEQ':
136
- events.push("+SEQ".concat(props));
137
- node.items.forEach(function (item) {
138
- addEvents(events, doc, e, item);
139
- });
140
- events.push('-SEQ');
141
- break;
142
-
143
- case 'FLOW_MAP':
144
- case 'MAP':
145
- events.push("+MAP".concat(props));
146
- node.items.forEach(function (_ref3) {
147
- var key = _ref3.key,
148
- value = _ref3.value;
149
- addEvents(events, doc, e, key);
150
- addEvents(events, doc, e, value);
151
- });
152
- events.push('-MAP');
153
- break;
154
-
155
- default:
156
- throw new Error("Unexpected node type ".concat(node.type));
157
- }
158
-
159
- if (scalar) {
160
- var value = node.cstNode.strValue.replace(/\\/g, '\\\\').replace(/\0/g, '\\0').replace(/\x07/g, '\\a').replace(/\x08/g, '\\b').replace(/\t/g, '\\t').replace(/\n/g, '\\n').replace(/\v/g, '\\v').replace(/\f/g, '\\f').replace(/\r/g, '\\r').replace(/\x1b/g, '\\e');
161
- events.push("=VAL".concat(props, " ").concat(scalar).concat(value));
162
- }
163
- }
@@ -1,20 +0,0 @@
1
- export default function toJSON(value, arg, ctx) {
2
- if (Array.isArray(value)) return value.map(function (v, i) {
3
- return toJSON(v, String(i), ctx);
4
- });
5
-
6
- if (value && typeof value.toJSON === 'function') {
7
- var anchor = ctx && ctx.anchors && ctx.anchors.find(function (a) {
8
- return a.node === value;
9
- });
10
- if (anchor) ctx.onCreate = function (res) {
11
- anchor.res = res;
12
- delete ctx.onCreate;
13
- };
14
- var res = value.toJSON(arg, ctx);
15
- if (anchor && ctx.onCreate) ctx.onCreate(res);
16
- return res;
17
- }
18
-
19
- return value;
20
- }
@@ -1,28 +0,0 @@
1
- /* global global, console */
2
- export function warn(warning, type) {
3
- if (global && global._YAML_SILENCE_WARNINGS) return;
4
-
5
- var _ref = global && global.process,
6
- emitWarning = _ref.emitWarning; // This will throw in Jest if `warning` is an Error instance due to
7
- // https://github.com/facebook/jest/issues/2549
8
-
9
-
10
- if (emitWarning) emitWarning(warning, type);else {
11
- // eslint-disable-next-line no-console
12
- console.warn(type ? "".concat(type, ": ").concat(warning) : warning);
13
- }
14
- }
15
- export function warnFileDeprecation(filename) {
16
- if (global && global._YAML_SILENCE_DEPRECATION_WARNINGS) return;
17
- var path = filename.replace(/.*yaml[/\\]/i, '').replace(/\.js$/, '').replace(/\\/g, '/');
18
- warn("The endpoint 'yaml/".concat(path, "' will be removed in a future release."), 'DeprecationWarning');
19
- }
20
- var warned = {};
21
- export function warnOptionDeprecation(name, alternative) {
22
- if (global && global._YAML_SILENCE_DEPRECATION_WARNINGS) return;
23
- if (warned[name]) return;
24
- warned[name] = true;
25
- var msg = "The option '".concat(name, "' will be removed in a future release");
26
- msg += alternative ? ", use '".concat(alternative, "' instead.") : '.';
27
- warn(msg, 'DeprecationWarning');
28
- }