yaml 2.0.0-3 → 2.0.0-7

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 (345) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +46 -26
  3. package/browser/dist/compose/compose-collection.js +59 -0
  4. package/browser/dist/compose/compose-doc.js +39 -0
  5. package/browser/dist/compose/compose-node.js +79 -0
  6. package/browser/dist/compose/compose-scalar.js +74 -0
  7. package/browser/dist/compose/composer.js +219 -0
  8. package/browser/dist/compose/resolve-block-map.js +93 -0
  9. package/browser/dist/compose/resolve-block-scalar.js +185 -0
  10. package/browser/dist/compose/resolve-block-seq.js +40 -0
  11. package/browser/dist/compose/resolve-end.js +37 -0
  12. package/browser/dist/compose/resolve-flow-collection.js +189 -0
  13. package/browser/dist/compose/resolve-flow-scalar.js +217 -0
  14. package/browser/dist/compose/resolve-props.js +126 -0
  15. package/browser/dist/compose/util-contains-newline.js +34 -0
  16. package/browser/dist/compose/util-empty-scalar-position.js +27 -0
  17. package/browser/dist/compose/util-map-includes.js +17 -0
  18. package/browser/dist/doc/Document.js +251 -348
  19. package/browser/dist/doc/anchors.js +72 -0
  20. package/browser/dist/doc/applyReviver.js +41 -28
  21. package/browser/dist/doc/createNode.js +75 -55
  22. package/browser/dist/doc/directives.js +161 -0
  23. package/browser/dist/errors.js +50 -72
  24. package/browser/dist/index.js +16 -72
  25. package/browser/dist/log.js +11 -7
  26. package/browser/dist/nodes/Alias.js +94 -0
  27. package/browser/dist/nodes/Collection.js +133 -0
  28. package/browser/dist/nodes/Node.js +41 -0
  29. package/browser/dist/nodes/Pair.js +28 -0
  30. package/browser/dist/nodes/Scalar.js +23 -0
  31. package/browser/dist/nodes/YAMLMap.js +116 -0
  32. package/browser/dist/nodes/YAMLSeq.js +105 -0
  33. package/browser/dist/nodes/addPairToJSMap.js +103 -0
  34. package/browser/dist/nodes/toJS.js +35 -0
  35. package/browser/dist/options.js +14 -95
  36. package/browser/dist/parse/cst-scalar.js +219 -0
  37. package/browser/dist/parse/cst-stringify.js +61 -0
  38. package/browser/dist/parse/cst-visit.js +97 -0
  39. package/browser/dist/parse/cst.js +98 -0
  40. package/browser/dist/parse/lexer.js +674 -0
  41. package/browser/dist/parse/line-counter.js +39 -0
  42. package/browser/dist/parse/parser.js +876 -0
  43. package/browser/dist/public-api.js +101 -0
  44. package/browser/dist/schema/Schema.js +23 -0
  45. package/browser/dist/schema/common/map.js +42 -0
  46. package/browser/dist/schema/common/null.js +13 -0
  47. package/browser/dist/schema/common/seq.js +33 -0
  48. package/browser/dist/schema/common/string.js +14 -0
  49. package/browser/dist/schema/core/bool.js +19 -0
  50. package/browser/dist/schema/core/float.js +40 -0
  51. package/browser/dist/schema/core/int.js +38 -0
  52. package/browser/dist/schema/core/schema.js +23 -0
  53. package/browser/dist/schema/json/schema.js +62 -0
  54. package/browser/dist/schema/tags.js +79 -0
  55. package/browser/dist/schema/yaml-1.1/binary.js +66 -0
  56. package/browser/dist/schema/yaml-1.1/bool.js +26 -0
  57. package/browser/dist/schema/yaml-1.1/float.js +43 -0
  58. package/browser/dist/schema/yaml-1.1/int.js +71 -0
  59. package/browser/dist/schema/yaml-1.1/omap.js +73 -0
  60. package/browser/dist/schema/yaml-1.1/pairs.js +77 -0
  61. package/browser/dist/schema/yaml-1.1/schema.js +37 -0
  62. package/browser/dist/schema/yaml-1.1/set.js +87 -0
  63. package/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  64. package/browser/dist/stringify/foldFlowLines.js +121 -139
  65. package/browser/dist/stringify/stringify.js +87 -72
  66. package/browser/dist/stringify/stringifyCollection.js +122 -0
  67. package/browser/dist/stringify/stringifyComment.js +14 -0
  68. package/browser/dist/stringify/stringifyDocument.js +64 -0
  69. package/browser/dist/stringify/stringifyNumber.js +20 -23
  70. package/browser/dist/stringify/stringifyPair.js +111 -0
  71. package/browser/dist/stringify/stringifyString.js +295 -322
  72. package/browser/dist/util.js +4 -4
  73. package/browser/dist/visit.js +134 -71
  74. package/browser/index.js +4 -1
  75. package/dist/compose/compose-collection.d.ts +5 -0
  76. package/dist/compose/compose-collection.js +61 -0
  77. package/dist/compose/compose-doc.d.ts +6 -0
  78. package/dist/compose/compose-doc.js +41 -0
  79. package/dist/compose/compose-node.d.ts +25 -0
  80. package/dist/compose/compose-node.js +82 -0
  81. package/dist/compose/compose-scalar.d.ts +5 -0
  82. package/dist/compose/compose-scalar.js +76 -0
  83. package/dist/compose/composer.d.ts +62 -0
  84. package/dist/compose/composer.js +223 -0
  85. package/dist/compose/resolve-block-map.d.ts +6 -0
  86. package/dist/compose/resolve-block-map.js +95 -0
  87. package/dist/compose/resolve-block-scalar.d.ts +10 -0
  88. package/dist/compose/resolve-block-scalar.js +187 -0
  89. package/dist/compose/resolve-block-seq.d.ts +5 -0
  90. package/dist/compose/resolve-block-seq.js +42 -0
  91. package/dist/compose/resolve-end.d.ts +6 -0
  92. package/dist/compose/resolve-end.js +39 -0
  93. package/dist/compose/resolve-flow-collection.d.ts +6 -0
  94. package/dist/compose/resolve-flow-collection.js +191 -0
  95. package/dist/compose/resolve-flow-scalar.d.ts +10 -0
  96. package/dist/compose/resolve-flow-scalar.js +219 -0
  97. package/dist/compose/resolve-props.d.ts +21 -0
  98. package/dist/compose/resolve-props.js +128 -0
  99. package/dist/compose/util-contains-newline.d.ts +2 -0
  100. package/dist/compose/util-contains-newline.js +36 -0
  101. package/dist/compose/util-empty-scalar-position.d.ts +2 -0
  102. package/dist/compose/util-empty-scalar-position.js +29 -0
  103. package/dist/compose/util-map-includes.d.ts +4 -0
  104. package/dist/compose/util-map-includes.js +19 -0
  105. package/dist/doc/Document.d.ts +130 -0
  106. package/dist/doc/Document.js +250 -347
  107. package/dist/doc/anchors.d.ts +24 -0
  108. package/dist/doc/anchors.js +77 -0
  109. package/dist/doc/applyReviver.d.ts +9 -0
  110. package/dist/doc/applyReviver.js +41 -28
  111. package/dist/doc/createNode.d.ts +16 -0
  112. package/dist/doc/createNode.js +75 -55
  113. package/dist/doc/directives.d.ts +46 -0
  114. package/dist/doc/directives.js +163 -0
  115. package/dist/errors.d.ts +21 -0
  116. package/dist/errors.js +51 -74
  117. package/dist/index.d.ts +19 -0
  118. package/dist/index.js +39 -70
  119. package/dist/log.d.ts +3 -0
  120. package/dist/log.js +11 -6
  121. package/dist/nodes/Alias.d.ts +24 -0
  122. package/dist/nodes/Alias.js +96 -0
  123. package/dist/nodes/Collection.d.ts +67 -0
  124. package/dist/nodes/Collection.js +137 -0
  125. package/dist/nodes/Node.d.ts +48 -0
  126. package/dist/nodes/Node.js +59 -0
  127. package/dist/nodes/Pair.d.ts +16 -0
  128. package/dist/nodes/Pair.js +31 -0
  129. package/dist/nodes/Scalar.d.ts +40 -0
  130. package/dist/nodes/Scalar.js +26 -0
  131. package/dist/nodes/YAMLMap.d.ts +39 -0
  132. package/dist/nodes/YAMLMap.js +119 -0
  133. package/dist/nodes/YAMLSeq.d.ts +53 -0
  134. package/dist/nodes/YAMLSeq.js +107 -0
  135. package/dist/nodes/addPairToJSMap.d.ts +3 -0
  136. package/dist/nodes/addPairToJSMap.js +105 -0
  137. package/dist/nodes/toJS.d.ts +30 -0
  138. package/dist/nodes/toJS.js +37 -0
  139. package/dist/options.d.ts +278 -0
  140. package/dist/options.js +13 -96
  141. package/dist/parse/cst-scalar.d.ts +58 -0
  142. package/dist/parse/cst-scalar.js +223 -0
  143. package/dist/parse/cst-stringify.d.ts +8 -0
  144. package/dist/parse/cst-stringify.js +63 -0
  145. package/dist/parse/cst-visit.d.ts +39 -0
  146. package/dist/parse/cst-visit.js +99 -0
  147. package/dist/parse/cst.d.ts +106 -0
  148. package/dist/parse/cst.js +112 -0
  149. package/dist/parse/lexer.d.ts +85 -0
  150. package/dist/parse/lexer.js +676 -0
  151. package/dist/parse/line-counter.d.ts +22 -0
  152. package/dist/parse/line-counter.js +41 -0
  153. package/dist/parse/parser.d.ts +84 -0
  154. package/dist/parse/parser.js +880 -0
  155. package/dist/public-api.d.ts +43 -0
  156. package/dist/public-api.js +106 -0
  157. package/dist/schema/Schema.d.ts +16 -0
  158. package/dist/schema/Schema.js +25 -0
  159. package/dist/schema/common/map.d.ts +2 -0
  160. package/dist/schema/common/map.js +44 -0
  161. package/dist/schema/common/null.d.ts +4 -0
  162. package/dist/schema/common/null.js +15 -0
  163. package/dist/schema/common/seq.d.ts +2 -0
  164. package/dist/schema/common/seq.js +35 -0
  165. package/dist/schema/common/string.d.ts +2 -0
  166. package/dist/schema/common/string.js +16 -0
  167. package/dist/schema/core/bool.d.ts +4 -0
  168. package/dist/schema/core/bool.js +21 -0
  169. package/dist/schema/core/float.d.ts +4 -0
  170. package/dist/schema/core/float.js +44 -0
  171. package/dist/schema/core/int.d.ts +4 -0
  172. package/dist/schema/core/int.js +42 -0
  173. package/dist/schema/core/schema.d.ts +1 -0
  174. package/dist/schema/core/schema.js +25 -0
  175. package/dist/schema/json/schema.d.ts +2 -0
  176. package/dist/schema/json/schema.js +64 -0
  177. package/dist/schema/tags.d.ts +41 -0
  178. package/dist/schema/tags.js +82 -0
  179. package/dist/schema/types.d.ts +82 -0
  180. package/dist/schema/yaml-1.1/binary.d.ts +2 -0
  181. package/dist/schema/yaml-1.1/binary.js +68 -0
  182. package/dist/schema/yaml-1.1/bool.d.ts +7 -0
  183. package/dist/schema/yaml-1.1/bool.js +29 -0
  184. package/dist/schema/yaml-1.1/float.d.ts +4 -0
  185. package/dist/schema/yaml-1.1/float.js +47 -0
  186. package/dist/schema/yaml-1.1/int.d.ts +5 -0
  187. package/dist/schema/yaml-1.1/int.js +76 -0
  188. package/dist/schema/yaml-1.1/omap.d.ts +21 -0
  189. package/dist/schema/yaml-1.1/omap.js +76 -0
  190. package/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  191. package/dist/schema/yaml-1.1/pairs.js +81 -0
  192. package/dist/schema/yaml-1.1/schema.d.ts +1 -0
  193. package/dist/schema/yaml-1.1/schema.js +39 -0
  194. package/dist/schema/yaml-1.1/set.d.ts +22 -0
  195. package/dist/schema/yaml-1.1/set.js +90 -0
  196. package/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  197. package/dist/schema/yaml-1.1/timestamp.js +105 -0
  198. package/dist/stringify/foldFlowLines.d.ts +34 -0
  199. package/dist/stringify/foldFlowLines.js +121 -139
  200. package/dist/stringify/stringify.d.ts +18 -0
  201. package/dist/stringify/stringify.js +87 -71
  202. package/dist/stringify/stringifyCollection.d.ts +21 -0
  203. package/dist/stringify/stringifyCollection.js +124 -0
  204. package/dist/stringify/stringifyComment.d.ts +2 -0
  205. package/dist/stringify/stringifyComment.js +17 -0
  206. package/dist/stringify/stringifyDocument.d.ts +3 -0
  207. package/dist/stringify/stringifyDocument.js +66 -0
  208. package/dist/stringify/stringifyNumber.d.ts +2 -0
  209. package/dist/stringify/stringifyNumber.js +20 -23
  210. package/dist/stringify/stringifyPair.d.ts +3 -0
  211. package/dist/stringify/stringifyPair.js +113 -0
  212. package/dist/stringify/stringifyString.d.ts +3 -0
  213. package/dist/stringify/stringifyString.js +295 -322
  214. package/dist/test-events.d.ts +4 -0
  215. package/dist/test-events.js +124 -148
  216. package/dist/util.d.ts +6 -0
  217. package/dist/util.js +9 -12
  218. package/dist/visit.d.ts +63 -0
  219. package/dist/visit.js +134 -71
  220. package/package.json +31 -39
  221. package/util.js +2 -14
  222. package/browser/dist/_virtual/_rollupPluginBabelHelpers.js +0 -16
  223. package/browser/dist/ast/Alias.js +0 -95
  224. package/browser/dist/ast/Collection.js +0 -192
  225. package/browser/dist/ast/Merge.js +0 -71
  226. package/browser/dist/ast/Node.js +0 -3
  227. package/browser/dist/ast/Pair.js +0 -200
  228. package/browser/dist/ast/Scalar.js +0 -21
  229. package/browser/dist/ast/YAMLMap.js +0 -91
  230. package/browser/dist/ast/YAMLSeq.js +0 -67
  231. package/browser/dist/ast/toJS.js +0 -29
  232. package/browser/dist/constants.js +0 -40
  233. package/browser/dist/cst/Alias.js +0 -26
  234. package/browser/dist/cst/BlankLine.js +0 -34
  235. package/browser/dist/cst/BlockValue.js +0 -240
  236. package/browser/dist/cst/Collection.js +0 -259
  237. package/browser/dist/cst/CollectionItem.js +0 -123
  238. package/browser/dist/cst/Comment.js +0 -27
  239. package/browser/dist/cst/Directive.js +0 -53
  240. package/browser/dist/cst/Document.js +0 -262
  241. package/browser/dist/cst/FlowCollection.js +0 -201
  242. package/browser/dist/cst/Node.js +0 -355
  243. package/browser/dist/cst/ParseContext.js +0 -234
  244. package/browser/dist/cst/PlainValue.js +0 -171
  245. package/browser/dist/cst/QuoteDouble.js +0 -224
  246. package/browser/dist/cst/QuoteSingle.js +0 -100
  247. package/browser/dist/cst/Range.js +0 -56
  248. package/browser/dist/cst/parse.js +0 -46
  249. package/browser/dist/cst/source-utils.js +0 -169
  250. package/browser/dist/doc/Anchors.js +0 -115
  251. package/browser/dist/doc/Schema.js +0 -34
  252. package/browser/dist/doc/getSchemaTags.js +0 -33
  253. package/browser/dist/doc/listTagNames.js +0 -27
  254. package/browser/dist/doc/parseContents.js +0 -60
  255. package/browser/dist/doc/parseDirectives.js +0 -107
  256. package/browser/dist/resolve/collection-utils.js +0 -86
  257. package/browser/dist/resolve/resolveMap.js +0 -315
  258. package/browser/dist/resolve/resolveNode.js +0 -173
  259. package/browser/dist/resolve/resolveScalar.js +0 -20
  260. package/browser/dist/resolve/resolveSeq.js +0 -170
  261. package/browser/dist/resolve/resolveTag.js +0 -107
  262. package/browser/dist/resolve/resolveTagName.js +0 -87
  263. package/browser/dist/stringify/addComment.js +0 -10
  264. package/browser/dist/stringify/stringifyTag.js +0 -28
  265. package/browser/dist/tags/core.js +0 -128
  266. package/browser/dist/tags/failsafe/index.js +0 -7
  267. package/browser/dist/tags/failsafe/map.js +0 -37
  268. package/browser/dist/tags/failsafe/seq.js +0 -34
  269. package/browser/dist/tags/failsafe/string.js +0 -20
  270. package/browser/dist/tags/index.js +0 -39
  271. package/browser/dist/tags/json.js +0 -62
  272. package/browser/dist/tags/options.js +0 -31
  273. package/browser/dist/tags/yaml-1.1/binary.js +0 -83
  274. package/browser/dist/tags/yaml-1.1/index.js +0 -174
  275. package/browser/dist/tags/yaml-1.1/omap.js +0 -86
  276. package/browser/dist/tags/yaml-1.1/pairs.js +0 -62
  277. package/browser/dist/tags/yaml-1.1/set.js +0 -78
  278. package/browser/dist/tags/yaml-1.1/timestamp.js +0 -101
  279. package/browser/dist/types.js +0 -10
  280. package/cst.d.ts +0 -185
  281. package/dist/_virtual/_rollupPluginBabelHelpers.js +0 -18
  282. package/dist/ast/Alias.js +0 -97
  283. package/dist/ast/Collection.js +0 -196
  284. package/dist/ast/Merge.js +0 -74
  285. package/dist/ast/Node.js +0 -5
  286. package/dist/ast/Pair.js +0 -203
  287. package/dist/ast/Scalar.js +0 -24
  288. package/dist/ast/YAMLMap.js +0 -94
  289. package/dist/ast/YAMLSeq.js +0 -69
  290. package/dist/ast/toJS.js +0 -31
  291. package/dist/constants.js +0 -46
  292. package/dist/cst/Alias.js +0 -28
  293. package/dist/cst/BlankLine.js +0 -36
  294. package/dist/cst/BlockValue.js +0 -243
  295. package/dist/cst/Collection.js +0 -262
  296. package/dist/cst/CollectionItem.js +0 -125
  297. package/dist/cst/Comment.js +0 -29
  298. package/dist/cst/Directive.js +0 -55
  299. package/dist/cst/Document.js +0 -264
  300. package/dist/cst/FlowCollection.js +0 -203
  301. package/dist/cst/Node.js +0 -357
  302. package/dist/cst/ParseContext.js +0 -236
  303. package/dist/cst/PlainValue.js +0 -173
  304. package/dist/cst/QuoteDouble.js +0 -226
  305. package/dist/cst/QuoteSingle.js +0 -102
  306. package/dist/cst/Range.js +0 -58
  307. package/dist/cst/parse.js +0 -48
  308. package/dist/cst/source-utils.js +0 -173
  309. package/dist/doc/Anchors.js +0 -117
  310. package/dist/doc/Schema.js +0 -36
  311. package/dist/doc/getSchemaTags.js +0 -35
  312. package/dist/doc/listTagNames.js +0 -29
  313. package/dist/doc/parseContents.js +0 -62
  314. package/dist/doc/parseDirectives.js +0 -109
  315. package/dist/resolve/collection-utils.js +0 -91
  316. package/dist/resolve/resolveMap.js +0 -317
  317. package/dist/resolve/resolveNode.js +0 -175
  318. package/dist/resolve/resolveScalar.js +0 -22
  319. package/dist/resolve/resolveSeq.js +0 -172
  320. package/dist/resolve/resolveTag.js +0 -109
  321. package/dist/resolve/resolveTagName.js +0 -89
  322. package/dist/stringify/addComment.js +0 -13
  323. package/dist/stringify/stringifyTag.js +0 -30
  324. package/dist/tags/core.js +0 -138
  325. package/dist/tags/failsafe/index.js +0 -9
  326. package/dist/tags/failsafe/map.js +0 -39
  327. package/dist/tags/failsafe/seq.js +0 -36
  328. package/dist/tags/failsafe/string.js +0 -22
  329. package/dist/tags/index.js +0 -42
  330. package/dist/tags/json.js +0 -64
  331. package/dist/tags/options.js +0 -37
  332. package/dist/tags/yaml-1.1/binary.js +0 -85
  333. package/dist/tags/yaml-1.1/index.js +0 -176
  334. package/dist/tags/yaml-1.1/omap.js +0 -89
  335. package/dist/tags/yaml-1.1/pairs.js +0 -66
  336. package/dist/tags/yaml-1.1/set.js +0 -81
  337. package/dist/tags/yaml-1.1/timestamp.js +0 -105
  338. package/dist/types.js +0 -29
  339. package/index.d.ts +0 -519
  340. package/index.js +0 -1
  341. package/types.d.ts +0 -379
  342. package/types.js +0 -17
  343. package/types.mjs +0 -17
  344. package/util.d.ts +0 -76
  345. package/util.mjs +0 -15
package/index.d.ts DELETED
@@ -1,519 +0,0 @@
1
- import { CST } from './cst'
2
- import {
3
- AST,
4
- Alias,
5
- Collection,
6
- Merge,
7
- Node,
8
- Pair,
9
- Scalar,
10
- Schema,
11
- YAMLMap,
12
- YAMLSeq
13
- } from './types'
14
- import { Type, YAMLError, YAMLWarning } from './util'
15
-
16
- export { AST, CST }
17
-
18
- export function parseCST(str: string): ParsedCST
19
-
20
- export interface ParsedCST extends Array<CST.Document> {
21
- setOrigRanges(): boolean
22
- }
23
-
24
- /**
25
- * Apply a visitor to an AST node or document.
26
- *
27
- * Walks through the tree (depth-first) starting from `node`, calling a
28
- * `visitor` function with three arguments:
29
- * - `key`: For sequence values and map `Pair`, the node's index in the
30
- * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly.
31
- * `null` for the root node.
32
- * - `node`: The current node.
33
- * - `path`: The ancestry of the current node.
34
- *
35
- * The return value of the visitor may be used to control the traversal:
36
- * - `undefined` (default): Do nothing and continue
37
- * - `visit.SKIP`: Do not visit the children of this node, continue with next
38
- * sibling
39
- * - `visit.BREAK`: Terminate traversal completely
40
- * - `visit.REMOVE`: Remove the current node, then continue with the next one
41
- * - `Node`: Replace the current node, then continue by visiting it
42
- * - `number`: While iterating the items of a sequence or map, set the index
43
- * of the next step. This is useful especially if the index of the current
44
- * node has changed.
45
- *
46
- * If `visitor` is a single function, it will be called with all values
47
- * encountered in the tree, including e.g. `null` values. Alternatively,
48
- * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`,
49
- * `Alias` and `Scalar` node.
50
- */
51
- export declare const visit: visit
52
-
53
- export type visitor<T> = (
54
- key: number | 'key' | 'value' | null,
55
- node: T,
56
- path: Node[]
57
- ) => void | symbol | number | Node
58
-
59
- export interface visit {
60
- (
61
- node: Node | Document,
62
- visitor:
63
- | visitor<any>
64
- | {
65
- Alias?: visitor<Alias>
66
- Map?: visitor<YAMLMap>
67
- Pair?: visitor<Pair>
68
- Scalar?: visitor<Scalar>
69
- Seq?: visitor<YAMLSeq>
70
- }
71
- ): void
72
-
73
- /** Terminate visit traversal completely */
74
- BREAK: symbol
75
-
76
- /** Remove the current node */
77
- REMOVE: symbol
78
-
79
- /** Do not visit the children of the current node */
80
- SKIP: symbol
81
- }
82
-
83
- /**
84
- * `yaml` defines document-specific options in three places: as an argument of
85
- * parse, create and stringify calls, in the values of `YAML.defaultOptions`,
86
- * and in the version-dependent `YAML.Document.defaults` object. Values set in
87
- * `YAML.defaultOptions` override version-dependent defaults, and argument
88
- * options override both.
89
- */
90
- export const defaultOptions: Options
91
-
92
- type Replacer = any[] | ((key: any, value: any) => boolean)
93
- type Reviver = (key: any, value: any) => any
94
-
95
- export interface Options extends Schema.Options {
96
- /**
97
- * Default prefix for anchors.
98
- *
99
- * Default: `'a'`, resulting in anchors `a1`, `a2`, etc.
100
- */
101
- anchorPrefix?: string
102
- /**
103
- * The number of spaces to use when indenting code.
104
- *
105
- * Default: `2`
106
- */
107
- indent?: number
108
- /**
109
- * Whether block sequences should be indented.
110
- *
111
- * Default: `true`
112
- */
113
- indentSeq?: boolean
114
- /**
115
- * Include references in the AST to each node's corresponding CST node.
116
- *
117
- * Default: `false`
118
- */
119
- keepCstNodes?: boolean
120
- /**
121
- * Store the original node type when parsing documents.
122
- *
123
- * Default: `true`
124
- */
125
- keepNodeTypes?: boolean
126
- /**
127
- * Keep `undefined` object values when creating mappings and return a Scalar
128
- * node when calling `YAML.stringify(undefined)`, rather than `undefined`.
129
- *
130
- * Default: `false`
131
- */
132
- keepUndefined?: boolean
133
- /**
134
- * When outputting JS, use Map rather than Object to represent mappings.
135
- *
136
- * Default: `false`
137
- */
138
- mapAsMap?: boolean
139
- /**
140
- * Prevent exponential entity expansion attacks by limiting data aliasing count;
141
- * set to `-1` to disable checks; `0` disallows all alias nodes.
142
- *
143
- * Default: `100`
144
- */
145
- maxAliasCount?: number
146
- /**
147
- * Include line position & node type directly in errors; drop their verbose source and context.
148
- *
149
- * Default: `true`
150
- */
151
- prettyErrors?: boolean
152
- /**
153
- * When stringifying, require keys to be scalars and to use implicit rather than explicit notation.
154
- *
155
- * Default: `false`
156
- */
157
- simpleKeys?: boolean
158
- /**
159
- * The YAML version used by documents without a `%YAML` directive.
160
- *
161
- * Default: `"1.2"`
162
- */
163
- version?: '1.0' | '1.1' | '1.2'
164
- }
165
-
166
- /**
167
- * Some customization options are availabe to control the parsing and
168
- * stringification of scalars. Note that these values are used by all documents.
169
- */
170
- export const scalarOptions: {
171
- binary: scalarOptions.Binary
172
- bool: scalarOptions.Bool
173
- int: scalarOptions.Int
174
- null: scalarOptions.Null
175
- str: scalarOptions.Str
176
- }
177
- export namespace scalarOptions {
178
- interface Binary {
179
- /**
180
- * The type of string literal used to stringify `!!binary` values.
181
- *
182
- * Default: `'BLOCK_LITERAL'`
183
- */
184
- defaultType: Scalar.Type
185
- /**
186
- * Maximum line width for `!!binary`.
187
- *
188
- * Default: `76`
189
- */
190
- lineWidth: number
191
- }
192
-
193
- interface Bool {
194
- /**
195
- * String representation for `true`. With the core schema, use `'true' | 'True' | 'TRUE'`.
196
- *
197
- * Default: `'true'`
198
- */
199
- trueStr: string
200
- /**
201
- * String representation for `false`. With the core schema, use `'false' | 'False' | 'FALSE'`.
202
- *
203
- * Default: `'false'`
204
- */
205
- falseStr: string
206
- }
207
-
208
- interface Int {
209
- /**
210
- * Whether integers should be parsed into BigInt values.
211
- *
212
- * Default: `false`
213
- */
214
- asBigInt: boolean
215
- }
216
-
217
- interface Null {
218
- /**
219
- * String representation for `null`. With the core schema, use `'null' | 'Null' | 'NULL' | '~' | ''`.
220
- *
221
- * Default: `'null'`
222
- */
223
- nullStr: string
224
- }
225
-
226
- interface Str {
227
- /**
228
- * The default type of string literal used to stringify values in general
229
- *
230
- * Default: `'PLAIN'`
231
- */
232
- defaultType: Scalar.Type
233
- /**
234
- * The default type of string literal used to stringify implicit key values
235
- *
236
- * Default: `'PLAIN'`
237
- */
238
- defaultKeyType: Scalar.Type
239
- /**
240
- * Use 'single quote' rather than "double quote" by default
241
- *
242
- * Default: `false`
243
- */
244
- defaultQuoteSingle: boolean
245
- doubleQuoted: {
246
- /**
247
- * Whether to restrict double-quoted strings to use JSON-compatible syntax.
248
- *
249
- * Default: `false`
250
- */
251
- jsonEncoding: boolean
252
- /**
253
- * Minimum length to use multiple lines to represent the value.
254
- *
255
- * Default: `40`
256
- */
257
- minMultiLineLength: number
258
- }
259
- fold: {
260
- /**
261
- * Maximum line width (set to `0` to disable folding).
262
- *
263
- * Default: `80`
264
- */
265
- lineWidth: number
266
- /**
267
- * Minimum width for highly-indented content.
268
- *
269
- * Default: `20`
270
- */
271
- minContentWidth: number
272
- }
273
- }
274
- }
275
-
276
- export interface CreateNodeOptions {
277
- /**
278
- * Filter or modify values while creating a node.
279
- *
280
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#The_replacer_parameter
281
- */
282
- replacer?: Replacer
283
- /**
284
- * Specify the collection type, e.g. `"!!omap"`. Note that this requires the
285
- * corresponding tag to be available in this document's schema.
286
- */
287
- tag?: string
288
- /**
289
- * Wrap plain values in `Scalar` objects.
290
- *
291
- * Default: `true`
292
- */
293
- wrapScalars?: boolean
294
- }
295
-
296
- export class Document extends Collection {
297
- cstNode?: CST.Document
298
- /**
299
- * @param value - The initial value for the document, which will be wrapped
300
- * in a Node container.
301
- */
302
- constructor(value?: any, options?: Options)
303
- constructor(value: any, replacer: null | Replacer, options?: Options)
304
- tag: never
305
- directivesEndMarker?: boolean
306
- type: Type.DOCUMENT
307
- /**
308
- * Anchors associated with the document's nodes;
309
- * also provides alias & merge node creators.
310
- */
311
- anchors: Document.Anchors
312
- /** The document contents. */
313
- contents: any
314
- /** Errors encountered during parsing. */
315
- errors: YAMLError[]
316
- /**
317
- * The schema used with the document. Use `setSchema()` to change or
318
- * initialise.
319
- */
320
- schema?: Schema
321
- /**
322
- * Array of prefixes; each will have a string `handle` that
323
- * starts and ends with `!` and a string `prefix` that the handle will be replaced by.
324
- */
325
- tagPrefixes: Document.TagPrefix[]
326
- /**
327
- * The parsed version of the source document;
328
- * if true-ish, stringified output will include a `%YAML` directive.
329
- */
330
- version?: string
331
- /** Warnings encountered during parsing. */
332
- warnings: YAMLWarning[]
333
-
334
- /**
335
- * Convert any value into a `Node` using the current schema, recursively
336
- * turning objects into collections.
337
- */
338
- createNode(
339
- value: any,
340
- { replacer, tag, wrapScalars }?: CreateNodeOptions
341
- ): Node
342
- /**
343
- * Convert a key and a value into a `Pair` using the current schema,
344
- * recursively wrapping all values as `Scalar` or `Collection` nodes.
345
- *
346
- * @param options If `wrapScalars` is not `false`, wraps plain values in
347
- * `Scalar` objects.
348
- */
349
- createPair(key: any, value: any, options?: { wrapScalars?: boolean }): Pair
350
- /**
351
- * List the tags used in the document that are not in the default
352
- * `tag:yaml.org,2002:` namespace.
353
- */
354
- listNonDefaultTags(): string[]
355
- /** Parse a CST into this document */
356
- parse(cst: CST.Document): this
357
- /**
358
- * When a document is created with `new YAML.Document()`, the schema object is
359
- * not set as it may be influenced by parsed directives; call this with no
360
- * arguments to set it manually, or with arguments to change the schema used
361
- * by the document.
362
- */
363
- setSchema(
364
- id?: Options['version'] | Schema.Name,
365
- customTags?: (Schema.TagId | Schema.Tag)[]
366
- ): void
367
- /** Set `handle` as a shorthand string for the `prefix` tag namespace. */
368
- setTagPrefix(handle: string, prefix: string): void
369
- /**
370
- * A plain JavaScript representation of the document `contents`.
371
- *
372
- * @param mapAsMap - Use Map rather than Object to represent mappings.
373
- * Overrides values set in Document or global options.
374
- * @param onAnchor - If defined, called with the resolved `value` and
375
- * reference `count` for each anchor in the document.
376
- * @param reviver - A function that may filter or modify the output JS value
377
- */
378
- toJS(opt?: {
379
- mapAsMap?: boolean
380
- onAnchor?: (value: any, count: number) => void
381
- reviver?: Reviver
382
- }): any
383
- /**
384
- * A JSON representation of the document `contents`.
385
- *
386
- * @param arg Used by `JSON.stringify` to indicate the array index or property
387
- * name.
388
- */
389
- toJSON(arg?: string): any
390
- /** A YAML representation of the document. */
391
- toString(): string
392
- }
393
-
394
- export namespace Document {
395
- interface Parsed extends Document {
396
- contents: Scalar | YAMLMap | YAMLSeq | null
397
- /** The schema used with the document. */
398
- schema: Schema
399
- }
400
-
401
- interface Anchors {
402
- /**
403
- * Create a new `Alias` node, adding the required anchor for `node`.
404
- * If `name` is empty, a new anchor name will be generated.
405
- */
406
- createAlias(node: Node, name?: string): Alias
407
- /**
408
- * Create a new `Merge` node with the given source nodes.
409
- * Non-`Alias` sources will be automatically wrapped.
410
- */
411
- createMergePair(...nodes: Node[]): Merge
412
- /** The anchor name associated with `node`, if set. */
413
- getName(node: Node): undefined | string
414
- /** List of all defined anchor names. */
415
- getNames(): string[]
416
- /** The node associated with the anchor `name`, if set. */
417
- getNode(name: string): undefined | Node
418
- /**
419
- * Find an available anchor name with the given `prefix` and a
420
- * numerical suffix.
421
- */
422
- newName(prefix: string): string
423
- /**
424
- * Associate an anchor with `node`. If `name` is empty, a new name will be generated.
425
- * To remove an anchor, use `setAnchor(null, name)`.
426
- */
427
- setAnchor(node: Node | null, name?: string): void | string
428
- }
429
-
430
- interface TagPrefix {
431
- handle: string
432
- prefix: string
433
- }
434
- }
435
-
436
- /**
437
- * Recursively turns objects into collections. Generic objects as well as `Map`
438
- * and its descendants become mappings, while arrays and other iterable objects
439
- * result in sequences.
440
- *
441
- * The primary purpose of this function is to enable attaching comments or other
442
- * metadata to a value, or to otherwise exert more fine-grained control over the
443
- * stringified output. To that end, you'll need to assign its return value to
444
- * the `contents` of a Document (or somewhere within said contents), as the
445
- * document's schema is required for YAML string output.
446
- *
447
- * @param wrapScalars If undefined or `true`, also wraps plain values in
448
- * `Scalar` objects; if `false` and `value` is not an object, it will be
449
- * returned directly.
450
- * @param tag Use to specify the collection type, e.g. `"!!omap"`. Note that
451
- * this requires the corresponding tag to be available based on the default
452
- * options. To use a specific document's schema, use `doc.schema.createNode`.
453
- */
454
- export function createNode(
455
- value: any,
456
- wrapScalars?: true,
457
- tag?: string
458
- ): YAMLMap | YAMLSeq | Scalar
459
-
460
- /**
461
- * YAML.createNode recursively turns objects into Map and arrays to Seq collections.
462
- * Its primary use is to enable attaching comments or other metadata to a value,
463
- * or to otherwise exert more fine-grained control over the stringified output.
464
- *
465
- * Doesn't wrap plain values in Scalar objects.
466
- */
467
- export function createNode(
468
- value: any,
469
- wrapScalars: false,
470
- tag?: string
471
- ): YAMLMap | YAMLSeq | string | number | boolean | null
472
-
473
- /**
474
- * Parse an input string into a single YAML.Document.
475
- */
476
- export function parseDocument(str: string, options?: Options): Document.Parsed
477
-
478
- /**
479
- * Parse the input as a stream of YAML documents.
480
- *
481
- * Documents should be separated from each other by `...` or `---` marker lines.
482
- */
483
- export function parseAllDocuments(
484
- str: string,
485
- options?: Options
486
- ): Document.Parsed[]
487
-
488
- /**
489
- * Parse an input string into JavaScript.
490
- *
491
- * Only supports input consisting of a single YAML document; for multi-document
492
- * support you should use `YAML.parseAllDocuments`. May throw on error, and may
493
- * log warnings using `console.warn`.
494
- *
495
- * @param str - A string with YAML formatting.
496
- * @param reviver - A reviver function, as in `JSON.parse()`
497
- * @returns The value will match the type of the root value of the parsed YAML
498
- * document, so Maps become objects, Sequences arrays, and scalars result in
499
- * nulls, booleans, numbers and strings.
500
- */
501
- export function parse(str: string, options?: Options): any
502
- export function parse(
503
- str: string,
504
- reviver: null | Reviver,
505
- options?: Options
506
- ): any
507
-
508
- /**
509
- * Stringify a value as a YAML document.
510
- *
511
- * @param replacer - A replacer array or function, as in `JSON.stringify()`
512
- * @returns Will always include `\n` as the last character, as is expected of YAML documents.
513
- */
514
- export function stringify(value: any, options?: Options): string
515
- export function stringify(
516
- value: any,
517
- replacer: null | Replacer,
518
- options?: number | string | Options
519
- ): string
package/index.js DELETED
@@ -1 +0,0 @@
1
- module.exports = require('./dist')