phantom-pr 0.2.5 → 0.2.6

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 (242) hide show
  1. package/dist/core/index/indexer.js +3 -1
  2. package/dist/core/index/indexer.js.map +1 -1
  3. package/package.json +3 -7
  4. package/node_modules/ignore/LICENSE-MIT +0 -21
  5. package/node_modules/ignore/README.md +0 -452
  6. package/node_modules/ignore/index.d.ts +0 -81
  7. package/node_modules/ignore/index.js +0 -784
  8. package/node_modules/ignore/legacy.js +0 -681
  9. package/node_modules/ignore/package.json +0 -87
  10. package/node_modules/yaml/LICENSE +0 -13
  11. package/node_modules/yaml/README.md +0 -172
  12. package/node_modules/yaml/bin.mjs +0 -11
  13. package/node_modules/yaml/browser/dist/compose/compose-collection.js +0 -88
  14. package/node_modules/yaml/browser/dist/compose/compose-doc.js +0 -43
  15. package/node_modules/yaml/browser/dist/compose/compose-node.js +0 -102
  16. package/node_modules/yaml/browser/dist/compose/compose-scalar.js +0 -86
  17. package/node_modules/yaml/browser/dist/compose/composer.js +0 -217
  18. package/node_modules/yaml/browser/dist/compose/resolve-block-map.js +0 -115
  19. package/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +0 -198
  20. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +0 -49
  21. package/node_modules/yaml/browser/dist/compose/resolve-end.js +0 -37
  22. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +0 -207
  23. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +0 -223
  24. package/node_modules/yaml/browser/dist/compose/resolve-props.js +0 -146
  25. package/node_modules/yaml/browser/dist/compose/util-contains-newline.js +0 -34
  26. package/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +0 -26
  27. package/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +0 -15
  28. package/node_modules/yaml/browser/dist/compose/util-map-includes.js +0 -13
  29. package/node_modules/yaml/browser/dist/doc/Document.js +0 -335
  30. package/node_modules/yaml/browser/dist/doc/anchors.js +0 -71
  31. package/node_modules/yaml/browser/dist/doc/applyReviver.js +0 -55
  32. package/node_modules/yaml/browser/dist/doc/createNode.js +0 -88
  33. package/node_modules/yaml/browser/dist/doc/directives.js +0 -176
  34. package/node_modules/yaml/browser/dist/errors.js +0 -57
  35. package/node_modules/yaml/browser/dist/index.js +0 -17
  36. package/node_modules/yaml/browser/dist/log.js +0 -11
  37. package/node_modules/yaml/browser/dist/nodes/Alias.js +0 -114
  38. package/node_modules/yaml/browser/dist/nodes/Collection.js +0 -147
  39. package/node_modules/yaml/browser/dist/nodes/Node.js +0 -38
  40. package/node_modules/yaml/browser/dist/nodes/Pair.js +0 -36
  41. package/node_modules/yaml/browser/dist/nodes/Scalar.js +0 -24
  42. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +0 -144
  43. package/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +0 -113
  44. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +0 -63
  45. package/node_modules/yaml/browser/dist/nodes/identity.js +0 -36
  46. package/node_modules/yaml/browser/dist/nodes/toJS.js +0 -37
  47. package/node_modules/yaml/browser/dist/parse/cst-scalar.js +0 -214
  48. package/node_modules/yaml/browser/dist/parse/cst-stringify.js +0 -61
  49. package/node_modules/yaml/browser/dist/parse/cst-visit.js +0 -97
  50. package/node_modules/yaml/browser/dist/parse/cst.js +0 -98
  51. package/node_modules/yaml/browser/dist/parse/lexer.js +0 -717
  52. package/node_modules/yaml/browser/dist/parse/line-counter.js +0 -39
  53. package/node_modules/yaml/browser/dist/parse/parser.js +0 -967
  54. package/node_modules/yaml/browser/dist/public-api.js +0 -102
  55. package/node_modules/yaml/browser/dist/schema/Schema.js +0 -37
  56. package/node_modules/yaml/browser/dist/schema/common/map.js +0 -17
  57. package/node_modules/yaml/browser/dist/schema/common/null.js +0 -15
  58. package/node_modules/yaml/browser/dist/schema/common/seq.js +0 -17
  59. package/node_modules/yaml/browser/dist/schema/common/string.js +0 -14
  60. package/node_modules/yaml/browser/dist/schema/core/bool.js +0 -19
  61. package/node_modules/yaml/browser/dist/schema/core/float.js +0 -43
  62. package/node_modules/yaml/browser/dist/schema/core/int.js +0 -38
  63. package/node_modules/yaml/browser/dist/schema/core/schema.js +0 -23
  64. package/node_modules/yaml/browser/dist/schema/json/schema.js +0 -62
  65. package/node_modules/yaml/browser/dist/schema/tags.js +0 -96
  66. package/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +0 -58
  67. package/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +0 -26
  68. package/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +0 -46
  69. package/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +0 -71
  70. package/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +0 -64
  71. package/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +0 -74
  72. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +0 -78
  73. package/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +0 -39
  74. package/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +0 -93
  75. package/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +0 -101
  76. package/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +0 -146
  77. package/node_modules/yaml/browser/dist/stringify/stringify.js +0 -128
  78. package/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +0 -143
  79. package/node_modules/yaml/browser/dist/stringify/stringifyComment.js +0 -20
  80. package/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +0 -85
  81. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +0 -24
  82. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +0 -150
  83. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +0 -336
  84. package/node_modules/yaml/browser/dist/util.js +0 -11
  85. package/node_modules/yaml/browser/dist/visit.js +0 -233
  86. package/node_modules/yaml/browser/index.js +0 -5
  87. package/node_modules/yaml/browser/package.json +0 -3
  88. package/node_modules/yaml/dist/cli.d.ts +0 -8
  89. package/node_modules/yaml/dist/cli.mjs +0 -201
  90. package/node_modules/yaml/dist/compose/compose-collection.d.ts +0 -11
  91. package/node_modules/yaml/dist/compose/compose-collection.js +0 -90
  92. package/node_modules/yaml/dist/compose/compose-doc.d.ts +0 -7
  93. package/node_modules/yaml/dist/compose/compose-doc.js +0 -45
  94. package/node_modules/yaml/dist/compose/compose-node.d.ts +0 -29
  95. package/node_modules/yaml/dist/compose/compose-node.js +0 -105
  96. package/node_modules/yaml/dist/compose/compose-scalar.d.ts +0 -5
  97. package/node_modules/yaml/dist/compose/compose-scalar.js +0 -88
  98. package/node_modules/yaml/dist/compose/composer.d.ts +0 -63
  99. package/node_modules/yaml/dist/compose/composer.js +0 -222
  100. package/node_modules/yaml/dist/compose/resolve-block-map.d.ts +0 -6
  101. package/node_modules/yaml/dist/compose/resolve-block-map.js +0 -117
  102. package/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +0 -11
  103. package/node_modules/yaml/dist/compose/resolve-block-scalar.js +0 -200
  104. package/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +0 -6
  105. package/node_modules/yaml/dist/compose/resolve-block-seq.js +0 -51
  106. package/node_modules/yaml/dist/compose/resolve-end.d.ts +0 -6
  107. package/node_modules/yaml/dist/compose/resolve-end.js +0 -39
  108. package/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +0 -7
  109. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +0 -209
  110. package/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +0 -10
  111. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +0 -225
  112. package/node_modules/yaml/dist/compose/resolve-props.d.ts +0 -23
  113. package/node_modules/yaml/dist/compose/resolve-props.js +0 -148
  114. package/node_modules/yaml/dist/compose/util-contains-newline.d.ts +0 -2
  115. package/node_modules/yaml/dist/compose/util-contains-newline.js +0 -36
  116. package/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +0 -2
  117. package/node_modules/yaml/dist/compose/util-empty-scalar-position.js +0 -28
  118. package/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +0 -3
  119. package/node_modules/yaml/dist/compose/util-flow-indent-check.js +0 -17
  120. package/node_modules/yaml/dist/compose/util-map-includes.d.ts +0 -4
  121. package/node_modules/yaml/dist/compose/util-map-includes.js +0 -15
  122. package/node_modules/yaml/dist/doc/Document.d.ts +0 -141
  123. package/node_modules/yaml/dist/doc/Document.js +0 -337
  124. package/node_modules/yaml/dist/doc/anchors.d.ts +0 -24
  125. package/node_modules/yaml/dist/doc/anchors.js +0 -76
  126. package/node_modules/yaml/dist/doc/applyReviver.d.ts +0 -9
  127. package/node_modules/yaml/dist/doc/applyReviver.js +0 -57
  128. package/node_modules/yaml/dist/doc/createNode.d.ts +0 -17
  129. package/node_modules/yaml/dist/doc/createNode.js +0 -90
  130. package/node_modules/yaml/dist/doc/directives.d.ts +0 -49
  131. package/node_modules/yaml/dist/doc/directives.js +0 -178
  132. package/node_modules/yaml/dist/errors.d.ts +0 -21
  133. package/node_modules/yaml/dist/errors.js +0 -62
  134. package/node_modules/yaml/dist/index.d.ts +0 -25
  135. package/node_modules/yaml/dist/index.js +0 -50
  136. package/node_modules/yaml/dist/log.d.ts +0 -3
  137. package/node_modules/yaml/dist/log.js +0 -19
  138. package/node_modules/yaml/dist/nodes/Alias.d.ts +0 -29
  139. package/node_modules/yaml/dist/nodes/Alias.js +0 -116
  140. package/node_modules/yaml/dist/nodes/Collection.d.ts +0 -73
  141. package/node_modules/yaml/dist/nodes/Collection.js +0 -151
  142. package/node_modules/yaml/dist/nodes/Node.d.ts +0 -53
  143. package/node_modules/yaml/dist/nodes/Node.js +0 -40
  144. package/node_modules/yaml/dist/nodes/Pair.d.ts +0 -22
  145. package/node_modules/yaml/dist/nodes/Pair.js +0 -39
  146. package/node_modules/yaml/dist/nodes/Scalar.d.ts +0 -43
  147. package/node_modules/yaml/dist/nodes/Scalar.js +0 -27
  148. package/node_modules/yaml/dist/nodes/YAMLMap.d.ts +0 -53
  149. package/node_modules/yaml/dist/nodes/YAMLMap.js +0 -147
  150. package/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +0 -60
  151. package/node_modules/yaml/dist/nodes/YAMLSeq.js +0 -115
  152. package/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +0 -4
  153. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +0 -65
  154. package/node_modules/yaml/dist/nodes/identity.d.ts +0 -23
  155. package/node_modules/yaml/dist/nodes/identity.js +0 -53
  156. package/node_modules/yaml/dist/nodes/toJS.d.ts +0 -29
  157. package/node_modules/yaml/dist/nodes/toJS.js +0 -39
  158. package/node_modules/yaml/dist/options.d.ts +0 -344
  159. package/node_modules/yaml/dist/parse/cst-scalar.d.ts +0 -64
  160. package/node_modules/yaml/dist/parse/cst-scalar.js +0 -218
  161. package/node_modules/yaml/dist/parse/cst-stringify.d.ts +0 -8
  162. package/node_modules/yaml/dist/parse/cst-stringify.js +0 -63
  163. package/node_modules/yaml/dist/parse/cst-visit.d.ts +0 -39
  164. package/node_modules/yaml/dist/parse/cst-visit.js +0 -99
  165. package/node_modules/yaml/dist/parse/cst.d.ts +0 -109
  166. package/node_modules/yaml/dist/parse/cst.js +0 -112
  167. package/node_modules/yaml/dist/parse/lexer.d.ts +0 -87
  168. package/node_modules/yaml/dist/parse/lexer.js +0 -719
  169. package/node_modules/yaml/dist/parse/line-counter.d.ts +0 -22
  170. package/node_modules/yaml/dist/parse/line-counter.js +0 -41
  171. package/node_modules/yaml/dist/parse/parser.d.ts +0 -84
  172. package/node_modules/yaml/dist/parse/parser.js +0 -972
  173. package/node_modules/yaml/dist/public-api.d.ts +0 -44
  174. package/node_modules/yaml/dist/public-api.js +0 -107
  175. package/node_modules/yaml/dist/schema/Schema.d.ts +0 -17
  176. package/node_modules/yaml/dist/schema/Schema.js +0 -39
  177. package/node_modules/yaml/dist/schema/common/map.d.ts +0 -2
  178. package/node_modules/yaml/dist/schema/common/map.js +0 -19
  179. package/node_modules/yaml/dist/schema/common/null.d.ts +0 -4
  180. package/node_modules/yaml/dist/schema/common/null.js +0 -17
  181. package/node_modules/yaml/dist/schema/common/seq.d.ts +0 -2
  182. package/node_modules/yaml/dist/schema/common/seq.js +0 -19
  183. package/node_modules/yaml/dist/schema/common/string.d.ts +0 -2
  184. package/node_modules/yaml/dist/schema/common/string.js +0 -16
  185. package/node_modules/yaml/dist/schema/core/bool.d.ts +0 -4
  186. package/node_modules/yaml/dist/schema/core/bool.js +0 -21
  187. package/node_modules/yaml/dist/schema/core/float.d.ts +0 -4
  188. package/node_modules/yaml/dist/schema/core/float.js +0 -47
  189. package/node_modules/yaml/dist/schema/core/int.d.ts +0 -4
  190. package/node_modules/yaml/dist/schema/core/int.js +0 -42
  191. package/node_modules/yaml/dist/schema/core/schema.d.ts +0 -1
  192. package/node_modules/yaml/dist/schema/core/schema.js +0 -25
  193. package/node_modules/yaml/dist/schema/json/schema.d.ts +0 -2
  194. package/node_modules/yaml/dist/schema/json/schema.js +0 -64
  195. package/node_modules/yaml/dist/schema/json-schema.d.ts +0 -69
  196. package/node_modules/yaml/dist/schema/tags.d.ts +0 -48
  197. package/node_modules/yaml/dist/schema/tags.js +0 -99
  198. package/node_modules/yaml/dist/schema/types.d.ts +0 -92
  199. package/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +0 -2
  200. package/node_modules/yaml/dist/schema/yaml-1.1/binary.js +0 -70
  201. package/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +0 -7
  202. package/node_modules/yaml/dist/schema/yaml-1.1/bool.js +0 -29
  203. package/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +0 -4
  204. package/node_modules/yaml/dist/schema/yaml-1.1/float.js +0 -50
  205. package/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +0 -5
  206. package/node_modules/yaml/dist/schema/yaml-1.1/int.js +0 -76
  207. package/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +0 -9
  208. package/node_modules/yaml/dist/schema/yaml-1.1/merge.js +0 -68
  209. package/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +0 -22
  210. package/node_modules/yaml/dist/schema/yaml-1.1/omap.js +0 -77
  211. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +0 -10
  212. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +0 -82
  213. package/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +0 -1
  214. package/node_modules/yaml/dist/schema/yaml-1.1/schema.js +0 -41
  215. package/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +0 -28
  216. package/node_modules/yaml/dist/schema/yaml-1.1/set.js +0 -96
  217. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +0 -6
  218. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +0 -105
  219. package/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +0 -34
  220. package/node_modules/yaml/dist/stringify/foldFlowLines.js +0 -151
  221. package/node_modules/yaml/dist/stringify/stringify.d.ts +0 -21
  222. package/node_modules/yaml/dist/stringify/stringify.js +0 -131
  223. package/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +0 -17
  224. package/node_modules/yaml/dist/stringify/stringifyCollection.js +0 -145
  225. package/node_modules/yaml/dist/stringify/stringifyComment.d.ts +0 -10
  226. package/node_modules/yaml/dist/stringify/stringifyComment.js +0 -24
  227. package/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +0 -4
  228. package/node_modules/yaml/dist/stringify/stringifyDocument.js +0 -87
  229. package/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +0 -2
  230. package/node_modules/yaml/dist/stringify/stringifyNumber.js +0 -26
  231. package/node_modules/yaml/dist/stringify/stringifyPair.d.ts +0 -3
  232. package/node_modules/yaml/dist/stringify/stringifyPair.js +0 -152
  233. package/node_modules/yaml/dist/stringify/stringifyString.d.ts +0 -9
  234. package/node_modules/yaml/dist/stringify/stringifyString.js +0 -338
  235. package/node_modules/yaml/dist/test-events.d.ts +0 -4
  236. package/node_modules/yaml/dist/test-events.js +0 -134
  237. package/node_modules/yaml/dist/util.d.ts +0 -16
  238. package/node_modules/yaml/dist/util.js +0 -28
  239. package/node_modules/yaml/dist/visit.d.ts +0 -102
  240. package/node_modules/yaml/dist/visit.js +0 -236
  241. package/node_modules/yaml/package.json +0 -97
  242. package/node_modules/yaml/util.js +0 -2
@@ -1,99 +0,0 @@
1
- 'use strict';
2
-
3
- var map = require('./common/map.js');
4
- var _null = require('./common/null.js');
5
- var seq = require('./common/seq.js');
6
- var string = require('./common/string.js');
7
- var bool = require('./core/bool.js');
8
- var float = require('./core/float.js');
9
- var int = require('./core/int.js');
10
- var schema = require('./core/schema.js');
11
- var schema$1 = require('./json/schema.js');
12
- var binary = require('./yaml-1.1/binary.js');
13
- var merge = require('./yaml-1.1/merge.js');
14
- var omap = require('./yaml-1.1/omap.js');
15
- var pairs = require('./yaml-1.1/pairs.js');
16
- var schema$2 = require('./yaml-1.1/schema.js');
17
- var set = require('./yaml-1.1/set.js');
18
- var timestamp = require('./yaml-1.1/timestamp.js');
19
-
20
- const schemas = new Map([
21
- ['core', schema.schema],
22
- ['failsafe', [map.map, seq.seq, string.string]],
23
- ['json', schema$1.schema],
24
- ['yaml11', schema$2.schema],
25
- ['yaml-1.1', schema$2.schema]
26
- ]);
27
- const tagsByName = {
28
- binary: binary.binary,
29
- bool: bool.boolTag,
30
- float: float.float,
31
- floatExp: float.floatExp,
32
- floatNaN: float.floatNaN,
33
- floatTime: timestamp.floatTime,
34
- int: int.int,
35
- intHex: int.intHex,
36
- intOct: int.intOct,
37
- intTime: timestamp.intTime,
38
- map: map.map,
39
- merge: merge.merge,
40
- null: _null.nullTag,
41
- omap: omap.omap,
42
- pairs: pairs.pairs,
43
- seq: seq.seq,
44
- set: set.set,
45
- timestamp: timestamp.timestamp
46
- };
47
- const coreKnownTags = {
48
- 'tag:yaml.org,2002:binary': binary.binary,
49
- 'tag:yaml.org,2002:merge': merge.merge,
50
- 'tag:yaml.org,2002:omap': omap.omap,
51
- 'tag:yaml.org,2002:pairs': pairs.pairs,
52
- 'tag:yaml.org,2002:set': set.set,
53
- 'tag:yaml.org,2002:timestamp': timestamp.timestamp
54
- };
55
- function getTags(customTags, schemaName, addMergeTag) {
56
- const schemaTags = schemas.get(schemaName);
57
- if (schemaTags && !customTags) {
58
- return addMergeTag && !schemaTags.includes(merge.merge)
59
- ? schemaTags.concat(merge.merge)
60
- : schemaTags.slice();
61
- }
62
- let tags = schemaTags;
63
- if (!tags) {
64
- if (Array.isArray(customTags))
65
- tags = [];
66
- else {
67
- const keys = Array.from(schemas.keys())
68
- .filter(key => key !== 'yaml11')
69
- .map(key => JSON.stringify(key))
70
- .join(', ');
71
- throw new Error(`Unknown schema "${schemaName}"; use one of ${keys} or define customTags array`);
72
- }
73
- }
74
- if (Array.isArray(customTags)) {
75
- for (const tag of customTags)
76
- tags = tags.concat(tag);
77
- }
78
- else if (typeof customTags === 'function') {
79
- tags = customTags(tags.slice());
80
- }
81
- if (addMergeTag)
82
- tags = tags.concat(merge.merge);
83
- return tags.reduce((tags, tag) => {
84
- const tagObj = typeof tag === 'string' ? tagsByName[tag] : tag;
85
- if (!tagObj) {
86
- const tagName = JSON.stringify(tag);
87
- const keys = Object.keys(tagsByName)
88
- .map(key => JSON.stringify(key))
89
- .join(', ');
90
- throw new Error(`Unknown custom tag ${tagName}; use one of ${keys}`);
91
- }
92
- if (!tags.includes(tagObj))
93
- tags.push(tagObj);
94
- return tags;
95
- }, []);
96
- }
97
-
98
- exports.coreKnownTags = coreKnownTags;
99
- exports.getTags = getTags;
@@ -1,92 +0,0 @@
1
- import type { CreateNodeContext } from '../doc/createNode';
2
- import type { Node } from '../nodes/Node';
3
- import type { Scalar } from '../nodes/Scalar';
4
- import type { YAMLMap } from '../nodes/YAMLMap';
5
- import type { YAMLSeq } from '../nodes/YAMLSeq';
6
- import type { ParseOptions } from '../options';
7
- import type { StringifyContext } from '../stringify/stringify';
8
- import type { Schema } from './Schema';
9
- interface TagBase {
10
- /**
11
- * An optional factory function, used e.g. by collections when wrapping JS objects as AST nodes.
12
- */
13
- createNode?: (schema: Schema, value: unknown, ctx: CreateNodeContext) => Node;
14
- /**
15
- * If `true`, allows for values to be stringified without
16
- * an explicit tag together with `test`.
17
- * If `'key'`, this only applies if the value is used as a mapping key.
18
- * For most cases, it's unlikely that you'll actually want to use this,
19
- * even if you first think you do.
20
- */
21
- default?: boolean | 'key';
22
- /**
23
- * If a tag has multiple forms that should be parsed and/or stringified
24
- * differently, use `format` to identify them.
25
- */
26
- format?: string;
27
- /**
28
- * Used by `YAML.createNode` to detect your data type, e.g. using `typeof` or
29
- * `instanceof`.
30
- */
31
- identify?: (value: unknown) => boolean;
32
- /**
33
- * The identifier for your data type, with which its stringified form will be
34
- * prefixed. Should either be a !-prefixed local `!tag`, or a fully qualified
35
- * `tag:domain,date:foo`.
36
- */
37
- tag: string;
38
- }
39
- export interface ScalarTag extends TagBase {
40
- collection?: never;
41
- nodeClass?: never;
42
- /**
43
- * Turns a value into an AST node.
44
- * If returning a non-`Node` value, the output will be wrapped as a `Scalar`.
45
- */
46
- resolve(value: string, onError: (message: string) => void, options: ParseOptions): unknown;
47
- /**
48
- * Optional function stringifying a Scalar node. If your data includes a
49
- * suitable `.toString()` method, you can probably leave this undefined and
50
- * use the default stringifier.
51
- *
52
- * @param item The node being stringified.
53
- * @param ctx Contains the stringifying context variables.
54
- * @param onComment Callback to signal that the stringifier includes the
55
- * item's comment in its output.
56
- * @param onChompKeep Callback to signal that the output uses a block scalar
57
- * type with the `+` chomping indicator.
58
- */
59
- stringify?: (item: Scalar, ctx: StringifyContext, onComment?: () => void, onChompKeep?: () => void) => string;
60
- /**
61
- * Together with `default` allows for values to be stringified without an
62
- * explicit tag and detected using a regular expression. For most cases, it's
63
- * unlikely that you'll actually want to use these, even if you first think
64
- * you do.
65
- */
66
- test?: RegExp;
67
- }
68
- export interface CollectionTag extends TagBase {
69
- stringify?: never;
70
- test?: never;
71
- /** The source collection type supported by this tag. */
72
- collection: 'map' | 'seq';
73
- /**
74
- * The `Node` child class that implements this tag.
75
- * If set, used to select this tag when stringifying.
76
- *
77
- * If the class provides a static `from` method, then that
78
- * will be used if the tag object doesn't have a `createNode` method.
79
- */
80
- nodeClass?: {
81
- new (schema?: Schema): Node;
82
- from?: (schema: Schema, obj: unknown, ctx: CreateNodeContext) => Node;
83
- };
84
- /**
85
- * Turns a value into an AST node.
86
- * If returning a non-`Node` value, the output will be wrapped as a `Scalar`.
87
- *
88
- * Note: this is required if nodeClass is not provided.
89
- */
90
- resolve?: (value: YAMLMap.Parsed | YAMLSeq.Parsed, onError: (message: string) => void, options: ParseOptions) => unknown;
91
- }
92
- export {};
@@ -1,2 +0,0 @@
1
- import type { ScalarTag } from '../types';
2
- export declare const binary: ScalarTag;
@@ -1,70 +0,0 @@
1
- 'use strict';
2
-
3
- var node_buffer = require('buffer');
4
- var Scalar = require('../../nodes/Scalar.js');
5
- var stringifyString = require('../../stringify/stringifyString.js');
6
-
7
- const binary = {
8
- identify: value => value instanceof Uint8Array, // Buffer inherits from Uint8Array
9
- default: false,
10
- tag: 'tag:yaml.org,2002:binary',
11
- /**
12
- * Returns a Buffer in node and an Uint8Array in browsers
13
- *
14
- * To use the resulting buffer as an image, you'll want to do something like:
15
- *
16
- * const blob = new Blob([buffer], { type: 'image/jpeg' })
17
- * document.querySelector('#photo').src = URL.createObjectURL(blob)
18
- */
19
- resolve(src, onError) {
20
- if (typeof node_buffer.Buffer === 'function') {
21
- return node_buffer.Buffer.from(src, 'base64');
22
- }
23
- else if (typeof atob === 'function') {
24
- // On IE 11, atob() can't handle newlines
25
- const str = atob(src.replace(/[\n\r]/g, ''));
26
- const buffer = new Uint8Array(str.length);
27
- for (let i = 0; i < str.length; ++i)
28
- buffer[i] = str.charCodeAt(i);
29
- return buffer;
30
- }
31
- else {
32
- onError('This environment does not support reading binary tags; either Buffer or atob is required');
33
- return src;
34
- }
35
- },
36
- stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
37
- if (!value)
38
- return '';
39
- const buf = value; // checked earlier by binary.identify()
40
- let str;
41
- if (typeof node_buffer.Buffer === 'function') {
42
- str =
43
- buf instanceof node_buffer.Buffer
44
- ? buf.toString('base64')
45
- : node_buffer.Buffer.from(buf.buffer).toString('base64');
46
- }
47
- else if (typeof btoa === 'function') {
48
- let s = '';
49
- for (let i = 0; i < buf.length; ++i)
50
- s += String.fromCharCode(buf[i]);
51
- str = btoa(s);
52
- }
53
- else {
54
- throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
55
- }
56
- type ?? (type = Scalar.Scalar.BLOCK_LITERAL);
57
- if (type !== Scalar.Scalar.QUOTE_DOUBLE) {
58
- const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth);
59
- const n = Math.ceil(str.length / lineWidth);
60
- const lines = new Array(n);
61
- for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
62
- lines[i] = str.substr(o, lineWidth);
63
- }
64
- str = lines.join(type === Scalar.Scalar.BLOCK_LITERAL ? '\n' : ' ');
65
- }
66
- return stringifyString.stringifyString({ comment, type, value: str }, ctx, onComment, onChompKeep);
67
- }
68
- };
69
-
70
- exports.binary = binary;
@@ -1,7 +0,0 @@
1
- import type { ScalarTag } from '../types';
2
- export declare const trueTag: ScalarTag & {
3
- test: RegExp;
4
- };
5
- export declare const falseTag: ScalarTag & {
6
- test: RegExp;
7
- };
@@ -1,29 +0,0 @@
1
- 'use strict';
2
-
3
- var Scalar = require('../../nodes/Scalar.js');
4
-
5
- function boolStringify({ value, source }, ctx) {
6
- const boolObj = value ? trueTag : falseTag;
7
- if (source && boolObj.test.test(source))
8
- return source;
9
- return value ? ctx.options.trueStr : ctx.options.falseStr;
10
- }
11
- const trueTag = {
12
- identify: value => value === true,
13
- default: true,
14
- tag: 'tag:yaml.org,2002:bool',
15
- test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
16
- resolve: () => new Scalar.Scalar(true),
17
- stringify: boolStringify
18
- };
19
- const falseTag = {
20
- identify: value => value === false,
21
- default: true,
22
- tag: 'tag:yaml.org,2002:bool',
23
- test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,
24
- resolve: () => new Scalar.Scalar(false),
25
- stringify: boolStringify
26
- };
27
-
28
- exports.falseTag = falseTag;
29
- exports.trueTag = trueTag;
@@ -1,4 +0,0 @@
1
- import type { ScalarTag } from '../types';
2
- export declare const floatNaN: ScalarTag;
3
- export declare const floatExp: ScalarTag;
4
- export declare const float: ScalarTag;
@@ -1,50 +0,0 @@
1
- 'use strict';
2
-
3
- var Scalar = require('../../nodes/Scalar.js');
4
- var stringifyNumber = require('../../stringify/stringifyNumber.js');
5
-
6
- const floatNaN = {
7
- identify: value => typeof value === 'number',
8
- default: true,
9
- tag: 'tag:yaml.org,2002:float',
10
- test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,
11
- resolve: (str) => str.slice(-3).toLowerCase() === 'nan'
12
- ? NaN
13
- : str[0] === '-'
14
- ? Number.NEGATIVE_INFINITY
15
- : Number.POSITIVE_INFINITY,
16
- stringify: stringifyNumber.stringifyNumber
17
- };
18
- const floatExp = {
19
- identify: value => typeof value === 'number',
20
- default: true,
21
- tag: 'tag:yaml.org,2002:float',
22
- format: 'EXP',
23
- test: /^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,
24
- resolve: (str) => parseFloat(str.replace(/_/g, '')),
25
- stringify(node) {
26
- const num = Number(node.value);
27
- return isFinite(num) ? num.toExponential() : stringifyNumber.stringifyNumber(node);
28
- }
29
- };
30
- const float = {
31
- identify: value => typeof value === 'number',
32
- default: true,
33
- tag: 'tag:yaml.org,2002:float',
34
- test: /^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,
35
- resolve(str) {
36
- const node = new Scalar.Scalar(parseFloat(str.replace(/_/g, '')));
37
- const dot = str.indexOf('.');
38
- if (dot !== -1) {
39
- const f = str.substring(dot + 1).replace(/_/g, '');
40
- if (f[f.length - 1] === '0')
41
- node.minFractionDigits = f.length;
42
- }
43
- return node;
44
- },
45
- stringify: stringifyNumber.stringifyNumber
46
- };
47
-
48
- exports.float = float;
49
- exports.floatExp = floatExp;
50
- exports.floatNaN = floatNaN;
@@ -1,5 +0,0 @@
1
- import type { ScalarTag } from '../types';
2
- export declare const intBin: ScalarTag;
3
- export declare const intOct: ScalarTag;
4
- export declare const int: ScalarTag;
5
- export declare const intHex: ScalarTag;
@@ -1,76 +0,0 @@
1
- 'use strict';
2
-
3
- var stringifyNumber = require('../../stringify/stringifyNumber.js');
4
-
5
- const intIdentify = (value) => typeof value === 'bigint' || Number.isInteger(value);
6
- function intResolve(str, offset, radix, { intAsBigInt }) {
7
- const sign = str[0];
8
- if (sign === '-' || sign === '+')
9
- offset += 1;
10
- str = str.substring(offset).replace(/_/g, '');
11
- if (intAsBigInt) {
12
- switch (radix) {
13
- case 2:
14
- str = `0b${str}`;
15
- break;
16
- case 8:
17
- str = `0o${str}`;
18
- break;
19
- case 16:
20
- str = `0x${str}`;
21
- break;
22
- }
23
- const n = BigInt(str);
24
- return sign === '-' ? BigInt(-1) * n : n;
25
- }
26
- const n = parseInt(str, radix);
27
- return sign === '-' ? -1 * n : n;
28
- }
29
- function intStringify(node, radix, prefix) {
30
- const { value } = node;
31
- if (intIdentify(value)) {
32
- const str = value.toString(radix);
33
- return value < 0 ? '-' + prefix + str.substr(1) : prefix + str;
34
- }
35
- return stringifyNumber.stringifyNumber(node);
36
- }
37
- const intBin = {
38
- identify: intIdentify,
39
- default: true,
40
- tag: 'tag:yaml.org,2002:int',
41
- format: 'BIN',
42
- test: /^[-+]?0b[0-1_]+$/,
43
- resolve: (str, _onError, opt) => intResolve(str, 2, 2, opt),
44
- stringify: node => intStringify(node, 2, '0b')
45
- };
46
- const intOct = {
47
- identify: intIdentify,
48
- default: true,
49
- tag: 'tag:yaml.org,2002:int',
50
- format: 'OCT',
51
- test: /^[-+]?0[0-7_]+$/,
52
- resolve: (str, _onError, opt) => intResolve(str, 1, 8, opt),
53
- stringify: node => intStringify(node, 8, '0')
54
- };
55
- const int = {
56
- identify: intIdentify,
57
- default: true,
58
- tag: 'tag:yaml.org,2002:int',
59
- test: /^[-+]?[0-9][0-9_]*$/,
60
- resolve: (str, _onError, opt) => intResolve(str, 0, 10, opt),
61
- stringify: stringifyNumber.stringifyNumber
62
- };
63
- const intHex = {
64
- identify: intIdentify,
65
- default: true,
66
- tag: 'tag:yaml.org,2002:int',
67
- format: 'HEX',
68
- test: /^[-+]?0x[0-9a-fA-F_]+$/,
69
- resolve: (str, _onError, opt) => intResolve(str, 2, 16, opt),
70
- stringify: node => intStringify(node, 16, '0x')
71
- };
72
-
73
- exports.int = int;
74
- exports.intBin = intBin;
75
- exports.intHex = intHex;
76
- exports.intOct = intOct;
@@ -1,9 +0,0 @@
1
- import type { ToJSContext } from '../../nodes/toJS';
2
- import type { MapLike } from '../../nodes/YAMLMap';
3
- import type { ScalarTag } from '../types';
4
- export declare const merge: ScalarTag & {
5
- identify(value: unknown): boolean;
6
- test: RegExp;
7
- };
8
- export declare const isMergeKey: (ctx: ToJSContext | undefined, key: unknown) => boolean | undefined;
9
- export declare function addMergeToJSMap(ctx: ToJSContext | undefined, map: MapLike, value: unknown): void;
@@ -1,68 +0,0 @@
1
- 'use strict';
2
-
3
- var identity = require('../../nodes/identity.js');
4
- var Scalar = require('../../nodes/Scalar.js');
5
-
6
- // If the value associated with a merge key is a single mapping node, each of
7
- // its key/value pairs is inserted into the current mapping, unless the key
8
- // already exists in it. If the value associated with the merge key is a
9
- // sequence, then this sequence is expected to contain mapping nodes and each
10
- // of these nodes is merged in turn according to its order in the sequence.
11
- // Keys in mapping nodes earlier in the sequence override keys specified in
12
- // later mapping nodes. -- http://yaml.org/type/merge.html
13
- const MERGE_KEY = '<<';
14
- const merge = {
15
- identify: value => value === MERGE_KEY ||
16
- (typeof value === 'symbol' && value.description === MERGE_KEY),
17
- default: 'key',
18
- tag: 'tag:yaml.org,2002:merge',
19
- test: /^<<$/,
20
- resolve: () => Object.assign(new Scalar.Scalar(Symbol(MERGE_KEY)), {
21
- addToJSMap: addMergeToJSMap
22
- }),
23
- stringify: () => MERGE_KEY
24
- };
25
- const isMergeKey = (ctx, key) => (merge.identify(key) ||
26
- (identity.isScalar(key) &&
27
- (!key.type || key.type === Scalar.Scalar.PLAIN) &&
28
- merge.identify(key.value))) &&
29
- ctx?.doc.schema.tags.some(tag => tag.tag === merge.tag && tag.default);
30
- function addMergeToJSMap(ctx, map, value) {
31
- value = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value;
32
- if (identity.isSeq(value))
33
- for (const it of value.items)
34
- mergeValue(ctx, map, it);
35
- else if (Array.isArray(value))
36
- for (const it of value)
37
- mergeValue(ctx, map, it);
38
- else
39
- mergeValue(ctx, map, value);
40
- }
41
- function mergeValue(ctx, map, value) {
42
- const source = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value;
43
- if (!identity.isMap(source))
44
- throw new Error('Merge sources must be maps or map aliases');
45
- const srcMap = source.toJSON(null, ctx, Map);
46
- for (const [key, value] of srcMap) {
47
- if (map instanceof Map) {
48
- if (!map.has(key))
49
- map.set(key, value);
50
- }
51
- else if (map instanceof Set) {
52
- map.add(key);
53
- }
54
- else if (!Object.prototype.hasOwnProperty.call(map, key)) {
55
- Object.defineProperty(map, key, {
56
- value,
57
- writable: true,
58
- enumerable: true,
59
- configurable: true
60
- });
61
- }
62
- }
63
- return map;
64
- }
65
-
66
- exports.addMergeToJSMap = addMergeToJSMap;
67
- exports.isMergeKey = isMergeKey;
68
- exports.merge = merge;
@@ -1,22 +0,0 @@
1
- import type { ToJSContext } from '../../nodes/toJS';
2
- import { YAMLMap } from '../../nodes/YAMLMap';
3
- import { YAMLSeq } from '../../nodes/YAMLSeq';
4
- import type { CreateNodeContext } from '../../util';
5
- import type { Schema } from '../Schema';
6
- import type { CollectionTag } from '../types';
7
- export declare class YAMLOMap extends YAMLSeq {
8
- static tag: string;
9
- constructor();
10
- add: typeof YAMLMap.prototype.add;
11
- delete: typeof YAMLMap.prototype.delete;
12
- get: typeof YAMLMap.prototype.get;
13
- has: typeof YAMLMap.prototype.has;
14
- set: typeof YAMLMap.prototype.set;
15
- /**
16
- * If `ctx` is given, the return type is actually `Map<unknown, unknown>`,
17
- * but TypeScript won't allow widening the signature of a child method.
18
- */
19
- toJSON(_?: unknown, ctx?: ToJSContext): unknown[];
20
- static from(schema: Schema, iterable: unknown, ctx: CreateNodeContext): YAMLOMap;
21
- }
22
- export declare const omap: CollectionTag;
@@ -1,77 +0,0 @@
1
- 'use strict';
2
-
3
- var identity = require('../../nodes/identity.js');
4
- var toJS = require('../../nodes/toJS.js');
5
- var YAMLMap = require('../../nodes/YAMLMap.js');
6
- var YAMLSeq = require('../../nodes/YAMLSeq.js');
7
- var pairs = require('./pairs.js');
8
-
9
- class YAMLOMap extends YAMLSeq.YAMLSeq {
10
- constructor() {
11
- super();
12
- this.add = YAMLMap.YAMLMap.prototype.add.bind(this);
13
- this.delete = YAMLMap.YAMLMap.prototype.delete.bind(this);
14
- this.get = YAMLMap.YAMLMap.prototype.get.bind(this);
15
- this.has = YAMLMap.YAMLMap.prototype.has.bind(this);
16
- this.set = YAMLMap.YAMLMap.prototype.set.bind(this);
17
- this.tag = YAMLOMap.tag;
18
- }
19
- /**
20
- * If `ctx` is given, the return type is actually `Map<unknown, unknown>`,
21
- * but TypeScript won't allow widening the signature of a child method.
22
- */
23
- toJSON(_, ctx) {
24
- if (!ctx)
25
- return super.toJSON(_);
26
- const map = new Map();
27
- if (ctx?.onCreate)
28
- ctx.onCreate(map);
29
- for (const pair of this.items) {
30
- let key, value;
31
- if (identity.isPair(pair)) {
32
- key = toJS.toJS(pair.key, '', ctx);
33
- value = toJS.toJS(pair.value, key, ctx);
34
- }
35
- else {
36
- key = toJS.toJS(pair, '', ctx);
37
- }
38
- if (map.has(key))
39
- throw new Error('Ordered maps must not include duplicate keys');
40
- map.set(key, value);
41
- }
42
- return map;
43
- }
44
- static from(schema, iterable, ctx) {
45
- const pairs$1 = pairs.createPairs(schema, iterable, ctx);
46
- const omap = new this();
47
- omap.items = pairs$1.items;
48
- return omap;
49
- }
50
- }
51
- YAMLOMap.tag = 'tag:yaml.org,2002:omap';
52
- const omap = {
53
- collection: 'seq',
54
- identify: value => value instanceof Map,
55
- nodeClass: YAMLOMap,
56
- default: false,
57
- tag: 'tag:yaml.org,2002:omap',
58
- resolve(seq, onError) {
59
- const pairs$1 = pairs.resolvePairs(seq, onError);
60
- const seenKeys = [];
61
- for (const { key } of pairs$1.items) {
62
- if (identity.isScalar(key)) {
63
- if (seenKeys.includes(key.value)) {
64
- onError(`Ordered maps must not include duplicate keys: ${key.value}`);
65
- }
66
- else {
67
- seenKeys.push(key.value);
68
- }
69
- }
70
- }
71
- return Object.assign(new YAMLOMap(), pairs$1);
72
- },
73
- createNode: (schema, iterable, ctx) => YAMLOMap.from(schema, iterable, ctx)
74
- };
75
-
76
- exports.YAMLOMap = YAMLOMap;
77
- exports.omap = omap;
@@ -1,10 +0,0 @@
1
- import type { CreateNodeContext } from '../../doc/createNode';
2
- import type { ParsedNode } from '../../nodes/Node';
3
- import { Pair } from '../../nodes/Pair';
4
- import type { YAMLMap } from '../../nodes/YAMLMap';
5
- import { YAMLSeq } from '../../nodes/YAMLSeq';
6
- import type { Schema } from '../../schema/Schema';
7
- import type { CollectionTag } from '../types';
8
- export declare function resolvePairs(seq: YAMLSeq.Parsed<ParsedNode | Pair<ParsedNode, ParsedNode | null>> | YAMLMap.Parsed, onError: (message: string) => void): YAMLSeq.Parsed<Pair<ParsedNode, ParsedNode | null>>;
9
- export declare function createPairs(schema: Schema, iterable: unknown, ctx: CreateNodeContext): YAMLSeq<unknown>;
10
- export declare const pairs: CollectionTag;