kenaz 0.3.3 → 0.3.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 (451) hide show
  1. package/core/.agents/skills/typesafe-ai/LICENSE +21 -21
  2. package/core/.agents/skills/typesafe-ai/SKILL.md +149 -149
  3. package/core/.claude/commands/Ansuz.md +15 -2
  4. package/core/.claude/hooks/__tests__/task-2395-project-registration.test.js +84 -0
  5. package/core/.claude/hooks/handoff-staleness.js +2 -2
  6. package/core/.claude/hooks/session-init.ps1 +49 -49
  7. package/core/.claude/hooks/turn-context.js +50 -2
  8. package/core/.claude/skills/ui-ux-pro-max/data/charts.csv +26 -26
  9. package/core/.claude/skills/ui-ux-pro-max/data/colors.csv +97 -97
  10. package/core/.claude/skills/ui-ux-pro-max/data/icons.csv +101 -101
  11. package/core/.claude/skills/ui-ux-pro-max/data/landing.csv +31 -31
  12. package/core/.claude/skills/ui-ux-pro-max/data/products.csv +96 -96
  13. package/core/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  14. package/core/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  15. package/core/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  16. package/core/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  17. package/core/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  18. package/core/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  19. package/core/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  20. package/core/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  21. package/core/.claude/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -52
  22. package/core/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  23. package/core/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  24. package/core/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  25. package/core/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  26. package/core/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  27. package/core/.claude/skills/ui-ux-pro-max/data/styles.csv +68 -68
  28. package/core/.claude/skills/ui-ux-pro-max/data/typography.csv +57 -57
  29. package/core/.claude/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -101
  30. package/core/.claude/skills/ui-ux-pro-max/data/ux-guidelines.csv +99 -99
  31. package/core/.claude/skills/ui-ux-pro-max/data/web-interface.csv +31 -31
  32. package/core/.claude/skills/ui-ux-pro-max/scripts/core.py +253 -253
  33. package/core/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1067 -1067
  34. package/core/.claude/skills/ui-ux-pro-max/scripts/search.py +106 -106
  35. package/core/.collaboration/core/task-api.js +1 -4
  36. package/core/.formation/README.md +21 -146
  37. package/core/.formation/bifrost/codex-doctor.js +37 -2
  38. package/core/.formation/bifrost/codex-doctor.test.js +18 -0
  39. package/core/.formation/bifrost/launch.js +1 -1
  40. package/core/.formation/bifrost/openai/codex-hook-shim.js +6 -0
  41. package/core/.formation/bifrost/openai/codex-hook-shim.test.js +11 -1
  42. package/core/.formation/bifrost/setup-codex.js +3 -0
  43. package/core/.formation/native/claude/README.md +1 -1
  44. package/core/.formation/role-map.yaml +3 -3
  45. package/core/.formation/spec/task_operations.parity.test.js +0 -1
  46. package/core/.formation/spec/task_operations.yaml +3 -3
  47. package/core/.formation/tests/hello.txt +2 -2
  48. package/core/.formation/tools/__tests__/subagent-bifrost-guard.test.js +4 -4
  49. package/core/.formation/tools/dashboard-models-chain.test.js +0 -6
  50. package/core/.formation/tools/dispatch-detail/cross-project-worktree.md +1 -9
  51. package/core/.formation/tools/dispatch-detail/worktree-subagent-mode.md +2 -2
  52. package/core/.formation/tools/dispatch.js +33 -554
  53. package/core/.formation/tools/mcp-allowlist.test.js +0 -1
  54. package/core/.formation/tools/post-complete/task2345.test.js +0 -5
  55. package/core/.formation/tools/pre-dispatch-snapshot.test.js +0 -100
  56. package/core/.formation/tools/prompt.js +33 -1623
  57. package/core/.formation/tools/prompt.test.js +26 -594
  58. package/core/.formation/unit/do.yaml +2 -4
  59. package/core/.kenaz/knowledge/ladybug_2c51da1e_shadow_file_frame_group.patch +163 -163
  60. package/core/.kenaz/knowledge/ladybug_30cf85690e_shadow_page_read_during_checkpoint.patch +393 -393
  61. package/core/.kenaz/knowledge/ladybug_7a17858d3a_node_group_delete_lock.patch +102 -102
  62. package/core/.kenaz/knowledge/ladybug_926a0ba1_column_checkpoint.patch +412 -412
  63. package/core/.kenaz/knowledge/ladybug_a346c4c4b6_pk_index_header_pages.patch +144 -144
  64. package/core/.kenaz/knowledge/ladybug_ba5f38815b_csr_node_group.patch +86 -86
  65. package/core/.kenaz/muninn_episode_write.ps1 +17 -17
  66. package/core/.kenaz/specialist/field_report_watermark.json +1 -1
  67. package/core/.kenaz/specialist/memory_guard_fired.json +1 -1
  68. package/core/.kenaz/specialist/memory_guard_trigger_cache.json +1 -1
  69. package/core/.kenaz/specialist/t1777_probe.txt +1 -1
  70. package/core/.matrix/index.matrix +5 -5
  71. package/core/.rule/general/agent-workflow.yaml +4 -4
  72. package/core/.rule/general/file-size-threshold.yaml +16 -4
  73. package/core/.rule/general/rust-verify-target.yaml +0 -1
  74. package/core/.rule/general/system-invariants.yaml +8 -25
  75. package/core/.specialist/Ansuz/SYSTEM_DOC.md +17 -42
  76. package/core/.specialist/Ansuz/capability.yaml +7 -14
  77. package/core/.specialist/Ansuz/concepts/formation_quick_ref.yaml +4 -11
  78. package/core/.specialist/Ansuz/elixir.yaml +3 -4
  79. package/core/.specialist/Ansuz/identity_contract.yaml +1 -1
  80. package/core/.specialist/Ansuz/knowledge.yaml +7 -10
  81. package/core/.specialist/Ansuz/rule.yaml +2 -2
  82. package/core/.specialist/Ansuz/tools/verify-and-land.js +22 -0
  83. package/core/.specialist/Ansuz/tools/verify-and-land.test.js +59 -5
  84. package/core/.specialist/Ansuz/workflow.yaml +7 -11
  85. package/core/.specialist/Forseti/core.yaml +1 -1
  86. package/core/.specialist/Heimdall/SKILL.md +1 -1
  87. package/core/.specialist/Heimdall/core.yaml +2 -2
  88. package/core/.specialist/Huginn/rule.yaml +1 -1
  89. package/core/.specialist/tools/README.md +2 -2
  90. package/core/.specialist/tools/__tests__/freya-cli-contract.test.js +0 -1
  91. package/core/.system/collaboration/README.md +1 -1
  92. package/core/.system/formation/LEGACY_SKILLS.md +2 -0
  93. package/core/.system/formation/POST_COMPLETE.md +2 -0
  94. package/core/.system/formation/README.md +2 -0
  95. package/core/KENAZ_CORE_VERSION +1 -1
  96. package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +355 -355
  97. package/core/dev/JEV_INTEGRATION_PLAN.md +189 -189
  98. package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +13 -13
  99. package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +9 -9
  100. package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +14 -14
  101. package/core/dev/design/matrix_v2_EXAMPLE.matrix +67 -67
  102. package/core/dev/jev-eval/ACTIVE_CORRECTION.md +52 -52
  103. package/core/dev/jev-eval/CONTEXT_REVIEW.md +31 -31
  104. package/core/dev/jev-eval/EVALUATION_STATUS.md +39 -39
  105. package/core/dev/jev-eval/HISTORICAL_CORPUS.md +33 -33
  106. package/core/dev/jev-eval/README.md +99 -99
  107. package/core/dev/jev-eval/THALAMUS_RANKING.md +58 -58
  108. package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +32 -32
  109. package/core/dev/jev-eval/reports/context-review-2026-09-20.json +48 -48
  110. package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +52 -52
  111. package/core/dev/pipeline/SELF_ENHANCEMENT_STATUS.json.bak +47 -47
  112. package/core/dev/pipeline/tasks/.gitkeep +1 -1
  113. package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +27 -27
  114. package/core/dev/scripts/check-file-size.js +44 -17
  115. package/core/dev/scripts/init_git.sh +0 -0
  116. package/core/dev/scripts/init_project.sh +0 -0
  117. package/core/dev/scripts/legacy/dev_agent_scheduler.ps1.bak +536 -536
  118. package/core/dev/scripts/legacy/multi_agent_scheduler.ps1.bak +1978 -1978
  119. package/core/dev/scripts/matrix/src/cli/commands/list-tags.ts.wip +140 -140
  120. package/core/dev/scripts/matrix/src/cli/commands/manage-tags.ts.wip +173 -173
  121. package/core/dev/scripts/matrix/src/cli/commands/stats.ts.wip +168 -168
  122. package/core/dev/scripts/matrix/src/cli/commands/tokens.ts.wip +126 -126
  123. package/core/dev/scripts/multi_agent_scheduler.sh +0 -0
  124. package/core/dev/scripts/run_once.sh +0 -0
  125. package/core/dev/scripts/setup_mcp.sh +0 -0
  126. package/core/dev/scripts/setup_rag.sh +0 -0
  127. package/core/dev/scripts/start_dev_agent.sh +0 -0
  128. package/core/dev/scripts/start_multi_agent.sh +0 -0
  129. package/core/dev/scripts/sync_task_queue.sh +0 -0
  130. package/core/k-cli/README.md +1 -94
  131. package/core/k-cli/test/TEST_SPEC.md +5 -22
  132. package/core/k-cli/test/run.sh +1 -67
  133. package/core/plugins/kenaz/commands/Amelia.md +1 -1
  134. package/core/plugins/kenaz/commands/Ansuz.md +16 -3
  135. package/core/plugins/kenaz/scripts/kenaz-mode.js +11 -1
  136. package/core/plugins/kenaz/scripts/sync.js +6 -2
  137. package/core/plugins/kenaz/scripts/ygg.js +13 -1
  138. package/core/plugins/kenaz/skills/product_manager/SKILL.md +12 -12
  139. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/charts.csv +26 -26
  140. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/colors.csv +97 -97
  141. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/icons.csv +101 -101
  142. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/landing.csv +31 -31
  143. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/products.csv +96 -96
  144. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  145. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  146. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  147. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  148. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  149. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  150. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  151. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  152. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -52
  153. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  154. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  155. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  156. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  157. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  158. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/styles.csv +68 -68
  159. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/typography.csv +57 -57
  160. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -101
  161. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/ux-guidelines.csv +99 -99
  162. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/web-interface.csv +31 -31
  163. package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/core.py +253 -253
  164. package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/design_system.py +1067 -1067
  165. package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/search.py +106 -106
  166. package/lib/cli.js +11 -4
  167. package/package.json +11 -7
  168. package/vendor/install-kenaz-cli.js +18 -7
  169. package/core/.formation/legion/forge.yaml +0 -299
  170. package/core/.formation/legion/hive.yaml +0 -238
  171. package/core/.formation/squad/blitz.yaml +0 -192
  172. package/core/.formation/squad/strategy-tribunal.yaml +0 -354
  173. package/core/.formation/squad/strategy.yaml +0 -349
  174. package/core/.formation/squad/sweep.yaml +0 -208
  175. package/core/.formation/tools/broadcast.js +0 -103
  176. package/core/.formation/tools/dispatch-dryrun.test.js +0 -54
  177. package/core/.formation/tools/dispatch-notifier.js +0 -84
  178. package/core/.formation/tools/formations.js +0 -1203
  179. package/core/.formation/tools/headless-branch-recovery.test.js +0 -64
  180. package/core/.formation/tools/headless-dryrun.test.js +0 -79
  181. package/core/.formation/tools/headless-v2.js +0 -659
  182. package/core/.formation/tools/headless.js +0 -1071
  183. package/core/.formation/tools/legacy-scheduler.js +0 -1994
  184. package/core/.formation/tools/logger.js +0 -273
  185. package/core/.formation/tools/memory-loader.js +0 -422
  186. package/core/.formation/tools/process-state.js +0 -33
  187. package/core/.formation/tools/remote-conflict.js +0 -98
  188. package/core/.formation/tools/runner.js +0 -1332
  189. package/core/.formation/tools/task-utils.js +0 -344
  190. package/core/.formation/tools/task2028-headless-worktree.test.js +0 -112
  191. package/core/.formation/tools/tests/headless-mcp-args-plumbing.test.js +0 -123
  192. package/core/.formation/tools/worktree-leak.test.js +0 -162
  193. package/core/k-cli/dist/alaya/run.js +0 -91
  194. package/core/k-cli/dist/core/output.js +0 -24
  195. package/core/k-cli/dist/core/process.js +0 -38
  196. package/core/k-cli/dist/core/project.js +0 -80
  197. package/core/k-cli/dist/core/spawn.js +0 -268
  198. package/core/k-cli/dist/core/types.js +0 -2
  199. package/core/k-cli/dist/dashboard/update.js +0 -53
  200. package/core/k-cli/dist/dashboard/version.js +0 -20
  201. package/core/k-cli/dist/dispatch/run.js +0 -241
  202. package/core/k-cli/dist/dispatch/status.js +0 -103
  203. package/core/k-cli/dist/index.js +0 -283
  204. package/core/k-cli/dist/project/initialize.js +0 -301
  205. package/core/k-cli/dist/project/install.js +0 -89
  206. package/core/k-cli/dist/project/status.js +0 -138
  207. package/core/k-cli/dist/specialist/list.js +0 -100
  208. package/core/k-cli/dist/specialist/run.js +0 -93
  209. package/core/k-cli/dist/task/create.js +0 -194
  210. package/core/k-cli/dist/task/delete.js +0 -98
  211. package/core/k-cli/dist/task/get.js +0 -55
  212. package/core/k-cli/dist/task/list.js +0 -58
  213. package/core/k-cli/dist/task/submit.js +0 -156
  214. package/core/k-cli/dist/ygg/run.js +0 -51
  215. package/core/k-cli/node_modules/.bin/yaml +0 -16
  216. package/core/k-cli/node_modules/.bin/yaml.cmd +0 -17
  217. package/core/k-cli/node_modules/.bin/yaml.ps1 +0 -28
  218. package/core/k-cli/node_modules/.package-lock.json +0 -23
  219. package/core/k-cli/node_modules/yaml/LICENSE +0 -13
  220. package/core/k-cli/node_modules/yaml/README.md +0 -172
  221. package/core/k-cli/node_modules/yaml/bin.mjs +0 -11
  222. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-collection.js +0 -88
  223. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-doc.js +0 -43
  224. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-node.js +0 -109
  225. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-scalar.js +0 -86
  226. package/core/k-cli/node_modules/yaml/browser/dist/compose/composer.js +0 -217
  227. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-block-map.js +0 -115
  228. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +0 -198
  229. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +0 -49
  230. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-end.js +0 -37
  231. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +0 -207
  232. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +0 -223
  233. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-props.js +0 -146
  234. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-contains-newline.js +0 -34
  235. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +0 -26
  236. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +0 -15
  237. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-map-includes.js +0 -13
  238. package/core/k-cli/node_modules/yaml/browser/dist/doc/Document.js +0 -335
  239. package/core/k-cli/node_modules/yaml/browser/dist/doc/anchors.js +0 -71
  240. package/core/k-cli/node_modules/yaml/browser/dist/doc/applyReviver.js +0 -55
  241. package/core/k-cli/node_modules/yaml/browser/dist/doc/createNode.js +0 -88
  242. package/core/k-cli/node_modules/yaml/browser/dist/doc/directives.js +0 -176
  243. package/core/k-cli/node_modules/yaml/browser/dist/errors.js +0 -57
  244. package/core/k-cli/node_modules/yaml/browser/dist/index.js +0 -17
  245. package/core/k-cli/node_modules/yaml/browser/dist/log.js +0 -11
  246. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Alias.js +0 -114
  247. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Collection.js +0 -147
  248. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Node.js +0 -38
  249. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Pair.js +0 -36
  250. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Scalar.js +0 -24
  251. package/core/k-cli/node_modules/yaml/browser/dist/nodes/YAMLMap.js +0 -144
  252. package/core/k-cli/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +0 -113
  253. package/core/k-cli/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +0 -63
  254. package/core/k-cli/node_modules/yaml/browser/dist/nodes/identity.js +0 -36
  255. package/core/k-cli/node_modules/yaml/browser/dist/nodes/toJS.js +0 -37
  256. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst-scalar.js +0 -214
  257. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst-stringify.js +0 -61
  258. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst-visit.js +0 -97
  259. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst.js +0 -98
  260. package/core/k-cli/node_modules/yaml/browser/dist/parse/lexer.js +0 -717
  261. package/core/k-cli/node_modules/yaml/browser/dist/parse/line-counter.js +0 -39
  262. package/core/k-cli/node_modules/yaml/browser/dist/parse/parser.js +0 -967
  263. package/core/k-cli/node_modules/yaml/browser/dist/public-api.js +0 -102
  264. package/core/k-cli/node_modules/yaml/browser/dist/schema/Schema.js +0 -37
  265. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/map.js +0 -17
  266. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/null.js +0 -15
  267. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/seq.js +0 -17
  268. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/string.js +0 -14
  269. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/bool.js +0 -19
  270. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/float.js +0 -43
  271. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/int.js +0 -38
  272. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/schema.js +0 -23
  273. package/core/k-cli/node_modules/yaml/browser/dist/schema/json/schema.js +0 -62
  274. package/core/k-cli/node_modules/yaml/browser/dist/schema/tags.js +0 -96
  275. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +0 -58
  276. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +0 -26
  277. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +0 -46
  278. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +0 -71
  279. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +0 -64
  280. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +0 -74
  281. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +0 -78
  282. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +0 -39
  283. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +0 -93
  284. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +0 -101
  285. package/core/k-cli/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +0 -146
  286. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringify.js +0 -129
  287. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +0 -153
  288. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyComment.js +0 -20
  289. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +0 -85
  290. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +0 -24
  291. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyPair.js +0 -150
  292. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyString.js +0 -336
  293. package/core/k-cli/node_modules/yaml/browser/dist/util.js +0 -11
  294. package/core/k-cli/node_modules/yaml/browser/dist/visit.js +0 -233
  295. package/core/k-cli/node_modules/yaml/browser/index.js +0 -5
  296. package/core/k-cli/node_modules/yaml/browser/package.json +0 -3
  297. package/core/k-cli/node_modules/yaml/dist/cli.d.ts +0 -8
  298. package/core/k-cli/node_modules/yaml/dist/cli.mjs +0 -201
  299. package/core/k-cli/node_modules/yaml/dist/compose/compose-collection.d.ts +0 -11
  300. package/core/k-cli/node_modules/yaml/dist/compose/compose-collection.js +0 -90
  301. package/core/k-cli/node_modules/yaml/dist/compose/compose-doc.d.ts +0 -7
  302. package/core/k-cli/node_modules/yaml/dist/compose/compose-doc.js +0 -45
  303. package/core/k-cli/node_modules/yaml/dist/compose/compose-node.d.ts +0 -29
  304. package/core/k-cli/node_modules/yaml/dist/compose/compose-node.js +0 -112
  305. package/core/k-cli/node_modules/yaml/dist/compose/compose-scalar.d.ts +0 -5
  306. package/core/k-cli/node_modules/yaml/dist/compose/compose-scalar.js +0 -88
  307. package/core/k-cli/node_modules/yaml/dist/compose/composer.d.ts +0 -63
  308. package/core/k-cli/node_modules/yaml/dist/compose/composer.js +0 -222
  309. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-map.d.ts +0 -6
  310. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-map.js +0 -117
  311. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +0 -11
  312. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-scalar.js +0 -200
  313. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +0 -6
  314. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-seq.js +0 -51
  315. package/core/k-cli/node_modules/yaml/dist/compose/resolve-end.d.ts +0 -6
  316. package/core/k-cli/node_modules/yaml/dist/compose/resolve-end.js +0 -39
  317. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +0 -7
  318. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-collection.js +0 -209
  319. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +0 -10
  320. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-scalar.js +0 -225
  321. package/core/k-cli/node_modules/yaml/dist/compose/resolve-props.d.ts +0 -23
  322. package/core/k-cli/node_modules/yaml/dist/compose/resolve-props.js +0 -148
  323. package/core/k-cli/node_modules/yaml/dist/compose/util-contains-newline.d.ts +0 -2
  324. package/core/k-cli/node_modules/yaml/dist/compose/util-contains-newline.js +0 -36
  325. package/core/k-cli/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +0 -2
  326. package/core/k-cli/node_modules/yaml/dist/compose/util-empty-scalar-position.js +0 -28
  327. package/core/k-cli/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +0 -3
  328. package/core/k-cli/node_modules/yaml/dist/compose/util-flow-indent-check.js +0 -17
  329. package/core/k-cli/node_modules/yaml/dist/compose/util-map-includes.d.ts +0 -4
  330. package/core/k-cli/node_modules/yaml/dist/compose/util-map-includes.js +0 -15
  331. package/core/k-cli/node_modules/yaml/dist/doc/Document.d.ts +0 -141
  332. package/core/k-cli/node_modules/yaml/dist/doc/Document.js +0 -337
  333. package/core/k-cli/node_modules/yaml/dist/doc/anchors.d.ts +0 -24
  334. package/core/k-cli/node_modules/yaml/dist/doc/anchors.js +0 -76
  335. package/core/k-cli/node_modules/yaml/dist/doc/applyReviver.d.ts +0 -9
  336. package/core/k-cli/node_modules/yaml/dist/doc/applyReviver.js +0 -57
  337. package/core/k-cli/node_modules/yaml/dist/doc/createNode.d.ts +0 -17
  338. package/core/k-cli/node_modules/yaml/dist/doc/createNode.js +0 -90
  339. package/core/k-cli/node_modules/yaml/dist/doc/directives.d.ts +0 -49
  340. package/core/k-cli/node_modules/yaml/dist/doc/directives.js +0 -178
  341. package/core/k-cli/node_modules/yaml/dist/errors.d.ts +0 -21
  342. package/core/k-cli/node_modules/yaml/dist/errors.js +0 -62
  343. package/core/k-cli/node_modules/yaml/dist/index.d.ts +0 -25
  344. package/core/k-cli/node_modules/yaml/dist/index.js +0 -50
  345. package/core/k-cli/node_modules/yaml/dist/log.d.ts +0 -3
  346. package/core/k-cli/node_modules/yaml/dist/log.js +0 -19
  347. package/core/k-cli/node_modules/yaml/dist/nodes/Alias.d.ts +0 -29
  348. package/core/k-cli/node_modules/yaml/dist/nodes/Alias.js +0 -116
  349. package/core/k-cli/node_modules/yaml/dist/nodes/Collection.d.ts +0 -73
  350. package/core/k-cli/node_modules/yaml/dist/nodes/Collection.js +0 -151
  351. package/core/k-cli/node_modules/yaml/dist/nodes/Node.d.ts +0 -53
  352. package/core/k-cli/node_modules/yaml/dist/nodes/Node.js +0 -40
  353. package/core/k-cli/node_modules/yaml/dist/nodes/Pair.d.ts +0 -22
  354. package/core/k-cli/node_modules/yaml/dist/nodes/Pair.js +0 -39
  355. package/core/k-cli/node_modules/yaml/dist/nodes/Scalar.d.ts +0 -43
  356. package/core/k-cli/node_modules/yaml/dist/nodes/Scalar.js +0 -27
  357. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLMap.d.ts +0 -53
  358. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLMap.js +0 -147
  359. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +0 -60
  360. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLSeq.js +0 -115
  361. package/core/k-cli/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +0 -4
  362. package/core/k-cli/node_modules/yaml/dist/nodes/addPairToJSMap.js +0 -65
  363. package/core/k-cli/node_modules/yaml/dist/nodes/identity.d.ts +0 -23
  364. package/core/k-cli/node_modules/yaml/dist/nodes/identity.js +0 -53
  365. package/core/k-cli/node_modules/yaml/dist/nodes/toJS.d.ts +0 -29
  366. package/core/k-cli/node_modules/yaml/dist/nodes/toJS.js +0 -39
  367. package/core/k-cli/node_modules/yaml/dist/options.d.ts +0 -350
  368. package/core/k-cli/node_modules/yaml/dist/parse/cst-scalar.d.ts +0 -64
  369. package/core/k-cli/node_modules/yaml/dist/parse/cst-scalar.js +0 -218
  370. package/core/k-cli/node_modules/yaml/dist/parse/cst-stringify.d.ts +0 -8
  371. package/core/k-cli/node_modules/yaml/dist/parse/cst-stringify.js +0 -63
  372. package/core/k-cli/node_modules/yaml/dist/parse/cst-visit.d.ts +0 -39
  373. package/core/k-cli/node_modules/yaml/dist/parse/cst-visit.js +0 -99
  374. package/core/k-cli/node_modules/yaml/dist/parse/cst.d.ts +0 -109
  375. package/core/k-cli/node_modules/yaml/dist/parse/cst.js +0 -112
  376. package/core/k-cli/node_modules/yaml/dist/parse/lexer.d.ts +0 -87
  377. package/core/k-cli/node_modules/yaml/dist/parse/lexer.js +0 -719
  378. package/core/k-cli/node_modules/yaml/dist/parse/line-counter.d.ts +0 -22
  379. package/core/k-cli/node_modules/yaml/dist/parse/line-counter.js +0 -41
  380. package/core/k-cli/node_modules/yaml/dist/parse/parser.d.ts +0 -84
  381. package/core/k-cli/node_modules/yaml/dist/parse/parser.js +0 -972
  382. package/core/k-cli/node_modules/yaml/dist/public-api.d.ts +0 -44
  383. package/core/k-cli/node_modules/yaml/dist/public-api.js +0 -107
  384. package/core/k-cli/node_modules/yaml/dist/schema/Schema.d.ts +0 -17
  385. package/core/k-cli/node_modules/yaml/dist/schema/Schema.js +0 -39
  386. package/core/k-cli/node_modules/yaml/dist/schema/common/map.d.ts +0 -2
  387. package/core/k-cli/node_modules/yaml/dist/schema/common/map.js +0 -19
  388. package/core/k-cli/node_modules/yaml/dist/schema/common/null.d.ts +0 -4
  389. package/core/k-cli/node_modules/yaml/dist/schema/common/null.js +0 -17
  390. package/core/k-cli/node_modules/yaml/dist/schema/common/seq.d.ts +0 -2
  391. package/core/k-cli/node_modules/yaml/dist/schema/common/seq.js +0 -19
  392. package/core/k-cli/node_modules/yaml/dist/schema/common/string.d.ts +0 -2
  393. package/core/k-cli/node_modules/yaml/dist/schema/common/string.js +0 -16
  394. package/core/k-cli/node_modules/yaml/dist/schema/core/bool.d.ts +0 -4
  395. package/core/k-cli/node_modules/yaml/dist/schema/core/bool.js +0 -21
  396. package/core/k-cli/node_modules/yaml/dist/schema/core/float.d.ts +0 -4
  397. package/core/k-cli/node_modules/yaml/dist/schema/core/float.js +0 -47
  398. package/core/k-cli/node_modules/yaml/dist/schema/core/int.d.ts +0 -4
  399. package/core/k-cli/node_modules/yaml/dist/schema/core/int.js +0 -42
  400. package/core/k-cli/node_modules/yaml/dist/schema/core/schema.d.ts +0 -1
  401. package/core/k-cli/node_modules/yaml/dist/schema/core/schema.js +0 -25
  402. package/core/k-cli/node_modules/yaml/dist/schema/json/schema.d.ts +0 -2
  403. package/core/k-cli/node_modules/yaml/dist/schema/json/schema.js +0 -64
  404. package/core/k-cli/node_modules/yaml/dist/schema/json-schema.d.ts +0 -69
  405. package/core/k-cli/node_modules/yaml/dist/schema/tags.d.ts +0 -48
  406. package/core/k-cli/node_modules/yaml/dist/schema/tags.js +0 -99
  407. package/core/k-cli/node_modules/yaml/dist/schema/types.d.ts +0 -92
  408. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +0 -2
  409. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/binary.js +0 -70
  410. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +0 -7
  411. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/bool.js +0 -29
  412. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +0 -4
  413. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/float.js +0 -50
  414. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +0 -5
  415. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/int.js +0 -76
  416. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +0 -9
  417. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/merge.js +0 -68
  418. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +0 -22
  419. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/omap.js +0 -77
  420. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +0 -10
  421. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +0 -82
  422. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +0 -1
  423. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/schema.js +0 -41
  424. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +0 -28
  425. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/set.js +0 -96
  426. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +0 -6
  427. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +0 -105
  428. package/core/k-cli/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +0 -34
  429. package/core/k-cli/node_modules/yaml/dist/stringify/foldFlowLines.js +0 -151
  430. package/core/k-cli/node_modules/yaml/dist/stringify/stringify.d.ts +0 -21
  431. package/core/k-cli/node_modules/yaml/dist/stringify/stringify.js +0 -132
  432. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +0 -17
  433. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyCollection.js +0 -155
  434. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyComment.d.ts +0 -10
  435. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyComment.js +0 -24
  436. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +0 -4
  437. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyDocument.js +0 -87
  438. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +0 -2
  439. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyNumber.js +0 -26
  440. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyPair.d.ts +0 -3
  441. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyPair.js +0 -152
  442. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyString.d.ts +0 -9
  443. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyString.js +0 -338
  444. package/core/k-cli/node_modules/yaml/dist/test-events.d.ts +0 -4
  445. package/core/k-cli/node_modules/yaml/dist/test-events.js +0 -134
  446. package/core/k-cli/node_modules/yaml/dist/util.d.ts +0 -16
  447. package/core/k-cli/node_modules/yaml/dist/util.js +0 -28
  448. package/core/k-cli/node_modules/yaml/dist/visit.d.ts +0 -102
  449. package/core/k-cli/node_modules/yaml/dist/visit.js +0 -236
  450. package/core/k-cli/node_modules/yaml/package.json +0 -97
  451. package/core/k-cli/node_modules/yaml/util.js +0 -2
@@ -1,201 +0,0 @@
1
- import { resolve } from 'path';
2
- import { parseArgs } from 'util';
3
- import { prettyToken } from './parse/cst.js';
4
- import { Lexer } from './parse/lexer.js';
5
- import { Parser } from './parse/parser.js';
6
- import { Composer } from './compose/composer.js';
7
- import { LineCounter } from './parse/line-counter.js';
8
- import { prettifyError } from './errors.js';
9
- import { visit } from './visit.js';
10
-
11
- const help = `\
12
- yaml: A command-line YAML processor and inspector
13
-
14
- Reads stdin and writes output to stdout and errors & warnings to stderr.
15
-
16
- Usage:
17
- yaml Process a YAML stream, outputting it as YAML
18
- yaml cst Parse the CST of a YAML stream
19
- yaml lex Parse the lexical tokens of a YAML stream
20
- yaml valid Validate a YAML stream, returning 0 on success
21
-
22
- Options:
23
- --help, -h Show this message.
24
- --json, -j Output JSON.
25
- --indent 2 Output pretty-printed data, indented by the given number of spaces.
26
- --merge, -m Enable support for "<<" merge keys.
27
-
28
- Additional options for bare "yaml" command:
29
- --doc, -d Output pretty-printed JS Document objects.
30
- --single, -1 Require the input to consist of a single YAML document.
31
- --strict, -s Stop on errors.
32
- --visit, -v Apply a visitor to each document (requires a path to import)
33
- --yaml 1.1 Set the YAML version. (default: 1.2)`;
34
- class UserError extends Error {
35
- constructor(code, message) {
36
- super(`Error: ${message}`);
37
- this.code = code;
38
- }
39
- }
40
- UserError.ARGS = 2;
41
- UserError.SINGLE = 3;
42
- async function cli(stdin, done, argv) {
43
- let args;
44
- try {
45
- args = parseArgs({
46
- args: argv,
47
- allowPositionals: true,
48
- options: {
49
- doc: { type: 'boolean', short: 'd' },
50
- help: { type: 'boolean', short: 'h' },
51
- indent: { type: 'string', short: 'i' },
52
- merge: { type: 'boolean', short: 'm' },
53
- json: { type: 'boolean', short: 'j' },
54
- single: { type: 'boolean', short: '1' },
55
- strict: { type: 'boolean', short: 's' },
56
- visit: { type: 'string', short: 'v' },
57
- yaml: { type: 'string', default: '1.2' }
58
- }
59
- });
60
- }
61
- catch (error) {
62
- return done(new UserError(UserError.ARGS, error.message));
63
- }
64
- const { positionals: [mode], values: opt } = args;
65
- let indent = Number(opt.indent);
66
- stdin.setEncoding('utf-8');
67
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
68
- switch (opt.help || mode) {
69
- /* istanbul ignore next */
70
- case true: // --help
71
- console.log(help);
72
- break;
73
- case 'lex': {
74
- const lexer = new Lexer();
75
- const data = [];
76
- const add = (tok) => {
77
- if (opt.json)
78
- data.push(tok);
79
- else
80
- console.log(prettyToken(tok));
81
- };
82
- stdin.on('data', (chunk) => {
83
- for (const tok of lexer.lex(chunk, true))
84
- add(tok);
85
- });
86
- stdin.on('end', () => {
87
- for (const tok of lexer.lex('', false))
88
- add(tok);
89
- if (opt.json)
90
- console.log(JSON.stringify(data, null, indent));
91
- done();
92
- });
93
- break;
94
- }
95
- case 'cst': {
96
- const parser = new Parser();
97
- const data = [];
98
- const add = (tok) => {
99
- if (opt.json)
100
- data.push(tok);
101
- else
102
- console.dir(tok, { depth: null });
103
- };
104
- stdin.on('data', (chunk) => {
105
- for (const tok of parser.parse(chunk, true))
106
- add(tok);
107
- });
108
- stdin.on('end', () => {
109
- for (const tok of parser.parse('', false))
110
- add(tok);
111
- if (opt.json)
112
- console.log(JSON.stringify(data, null, indent));
113
- done();
114
- });
115
- break;
116
- }
117
- case undefined:
118
- case 'valid': {
119
- const lineCounter = new LineCounter();
120
- const parser = new Parser(lineCounter.addNewLine);
121
- // @ts-expect-error Version is validated at runtime
122
- const composer = new Composer({ version: opt.yaml, merge: opt.merge });
123
- const visitor = opt.visit
124
- ? (await import(resolve(opt.visit))).default
125
- : null;
126
- let source = '';
127
- let hasDoc = false;
128
- let reqDocEnd = false;
129
- const data = [];
130
- const add = (doc) => {
131
- if (hasDoc && opt.single) {
132
- return done(new UserError(UserError.SINGLE, 'Input stream contains multiple documents'));
133
- }
134
- for (const error of doc.errors) {
135
- prettifyError(source, lineCounter)(error);
136
- if (opt.strict || mode === 'valid')
137
- return done(error);
138
- console.error(error);
139
- }
140
- for (const warning of doc.warnings) {
141
- prettifyError(source, lineCounter)(warning);
142
- console.error(warning);
143
- }
144
- if (visitor)
145
- visit(doc, visitor);
146
- if (mode === 'valid')
147
- doc.toJS();
148
- else if (opt.json)
149
- data.push(doc);
150
- else if (opt.doc) {
151
- Object.defineProperties(doc, {
152
- options: { enumerable: false },
153
- schema: { enumerable: false }
154
- });
155
- console.dir(doc, { depth: null });
156
- }
157
- else {
158
- if (reqDocEnd)
159
- console.log('...');
160
- try {
161
- indent || (indent = 2);
162
- const str = doc.toString({ indent });
163
- console.log(str.endsWith('\n') ? str.slice(0, -1) : str);
164
- }
165
- catch (error) {
166
- done(error);
167
- }
168
- }
169
- hasDoc = true;
170
- reqDocEnd = !doc.directives?.docEnd;
171
- };
172
- stdin.on('data', (chunk) => {
173
- source += chunk;
174
- for (const tok of parser.parse(chunk, true)) {
175
- for (const doc of composer.next(tok))
176
- add(doc);
177
- }
178
- });
179
- stdin.on('end', () => {
180
- for (const tok of parser.parse('', false)) {
181
- for (const doc of composer.next(tok))
182
- add(doc);
183
- }
184
- for (const doc of composer.end(false))
185
- add(doc);
186
- if (opt.single && !hasDoc) {
187
- return done(new UserError(UserError.SINGLE, 'Input stream contained no documents'));
188
- }
189
- if (mode !== 'valid' && opt.json) {
190
- console.log(JSON.stringify(opt.single ? data[0] : data, null, indent));
191
- }
192
- done();
193
- });
194
- break;
195
- }
196
- default:
197
- done(new UserError(UserError.ARGS, `Unknown command: ${JSON.stringify(mode)}`));
198
- }
199
- }
200
-
201
- export { UserError, cli, help };
@@ -1,11 +0,0 @@
1
- import type { ParsedNode } from '../nodes/Node';
2
- import type { BlockMap, BlockSequence, FlowCollection, SourceToken } from '../parse/cst';
3
- import type { ComposeContext, ComposeNode } from './compose-node';
4
- import type { ComposeErrorHandler } from './composer';
5
- interface Props {
6
- anchor: SourceToken | null;
7
- tag: SourceToken | null;
8
- newlineAfterProp: SourceToken | null;
9
- }
10
- export declare function composeCollection(CN: ComposeNode, ctx: ComposeContext, token: BlockMap | BlockSequence | FlowCollection, props: Props, onError: ComposeErrorHandler): ParsedNode;
11
- export {};
@@ -1,90 +0,0 @@
1
- 'use strict';
2
-
3
- var identity = require('../nodes/identity.js');
4
- var Scalar = require('../nodes/Scalar.js');
5
- var YAMLMap = require('../nodes/YAMLMap.js');
6
- var YAMLSeq = require('../nodes/YAMLSeq.js');
7
- var resolveBlockMap = require('./resolve-block-map.js');
8
- var resolveBlockSeq = require('./resolve-block-seq.js');
9
- var resolveFlowCollection = require('./resolve-flow-collection.js');
10
-
11
- function resolveCollection(CN, ctx, token, onError, tagName, tag) {
12
- const coll = token.type === 'block-map'
13
- ? resolveBlockMap.resolveBlockMap(CN, ctx, token, onError, tag)
14
- : token.type === 'block-seq'
15
- ? resolveBlockSeq.resolveBlockSeq(CN, ctx, token, onError, tag)
16
- : resolveFlowCollection.resolveFlowCollection(CN, ctx, token, onError, tag);
17
- const Coll = coll.constructor;
18
- // If we got a tagName matching the class, or the tag name is '!',
19
- // then use the tagName from the node class used to create it.
20
- if (tagName === '!' || tagName === Coll.tagName) {
21
- coll.tag = Coll.tagName;
22
- return coll;
23
- }
24
- if (tagName)
25
- coll.tag = tagName;
26
- return coll;
27
- }
28
- function composeCollection(CN, ctx, token, props, onError) {
29
- const tagToken = props.tag;
30
- const tagName = !tagToken
31
- ? null
32
- : ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg));
33
- if (token.type === 'block-seq') {
34
- const { anchor, newlineAfterProp: nl } = props;
35
- const lastProp = anchor && tagToken
36
- ? anchor.offset > tagToken.offset
37
- ? anchor
38
- : tagToken
39
- : (anchor ?? tagToken);
40
- if (lastProp && (!nl || nl.offset < lastProp.offset)) {
41
- const message = 'Missing newline after block sequence props';
42
- onError(lastProp, 'MISSING_CHAR', message);
43
- }
44
- }
45
- const expType = token.type === 'block-map'
46
- ? 'map'
47
- : token.type === 'block-seq'
48
- ? 'seq'
49
- : token.start.source === '{'
50
- ? 'map'
51
- : 'seq';
52
- // shortcut: check if it's a generic YAMLMap or YAMLSeq
53
- // before jumping into the custom tag logic.
54
- if (!tagToken ||
55
- !tagName ||
56
- tagName === '!' ||
57
- (tagName === YAMLMap.YAMLMap.tagName && expType === 'map') ||
58
- (tagName === YAMLSeq.YAMLSeq.tagName && expType === 'seq')) {
59
- return resolveCollection(CN, ctx, token, onError, tagName);
60
- }
61
- let tag = ctx.schema.tags.find(t => t.tag === tagName && t.collection === expType);
62
- if (!tag) {
63
- const kt = ctx.schema.knownTags[tagName];
64
- if (kt?.collection === expType) {
65
- ctx.schema.tags.push(Object.assign({}, kt, { default: false }));
66
- tag = kt;
67
- }
68
- else {
69
- if (kt) {
70
- onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true);
71
- }
72
- else {
73
- onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true);
74
- }
75
- return resolveCollection(CN, ctx, token, onError, tagName);
76
- }
77
- }
78
- const coll = resolveCollection(CN, ctx, token, onError, tagName, tag);
79
- const res = tag.resolve?.(coll, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg), ctx.options) ?? coll;
80
- const node = identity.isNode(res)
81
- ? res
82
- : new Scalar.Scalar(res);
83
- node.range = coll.range;
84
- node.tag = tagName;
85
- if (tag?.format)
86
- node.format = tag.format;
87
- return node;
88
- }
89
-
90
- exports.composeCollection = composeCollection;
@@ -1,7 +0,0 @@
1
- import type { Directives } from '../doc/directives';
2
- import { Document } from '../doc/Document';
3
- import type { ParsedNode } from '../nodes/Node';
4
- import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options';
5
- import type * as CST from '../parse/cst';
6
- import type { ComposeErrorHandler } from './composer';
7
- export declare function composeDoc<Contents extends ParsedNode = ParsedNode, Strict extends boolean = true>(options: ParseOptions & DocumentOptions & SchemaOptions, directives: Directives, { offset, start, value, end }: CST.Document, onError: ComposeErrorHandler): Document.Parsed<Contents, Strict>;
@@ -1,45 +0,0 @@
1
- 'use strict';
2
-
3
- var Document = require('../doc/Document.js');
4
- var composeNode = require('./compose-node.js');
5
- var resolveEnd = require('./resolve-end.js');
6
- var resolveProps = require('./resolve-props.js');
7
-
8
- function composeDoc(options, directives, { offset, start, value, end }, onError) {
9
- const opts = Object.assign({ _directives: directives }, options);
10
- const doc = new Document.Document(undefined, opts);
11
- const ctx = {
12
- atKey: false,
13
- atRoot: true,
14
- directives: doc.directives,
15
- options: doc.options,
16
- schema: doc.schema
17
- };
18
- const props = resolveProps.resolveProps(start, {
19
- indicator: 'doc-start',
20
- next: value ?? end?.[0],
21
- offset,
22
- onError,
23
- parentIndent: 0,
24
- startOnNewline: true
25
- });
26
- if (props.found) {
27
- doc.directives.docStart = true;
28
- if (value &&
29
- (value.type === 'block-map' || value.type === 'block-seq') &&
30
- !props.hasNewline)
31
- onError(props.end, 'MISSING_CHAR', 'Block collection cannot start on same line with directives-end marker');
32
- }
33
- // @ts-expect-error If Contents is set, let's trust the user
34
- doc.contents = value
35
- ? composeNode.composeNode(ctx, value, props, onError)
36
- : composeNode.composeEmptyNode(ctx, props.end, start, null, props, onError);
37
- const contentEnd = doc.contents.range[2];
38
- const re = resolveEnd.resolveEnd(end, contentEnd, false, onError);
39
- if (re.comment)
40
- doc.comment = re.comment;
41
- doc.range = [offset, contentEnd, re.offset];
42
- return doc;
43
- }
44
-
45
- exports.composeDoc = composeDoc;
@@ -1,29 +0,0 @@
1
- import type { Directives } from '../doc/directives';
2
- import type { ParsedNode } from '../nodes/Node';
3
- import type { ParseOptions } from '../options';
4
- import type { SourceToken, Token } from '../parse/cst';
5
- import type { Schema } from '../schema/Schema';
6
- import type { ComposeErrorHandler } from './composer';
7
- export interface ComposeContext {
8
- atKey: boolean;
9
- atRoot: boolean;
10
- directives: Directives;
11
- options: Readonly<Required<Omit<ParseOptions, 'lineCounter'>>>;
12
- schema: Readonly<Schema>;
13
- }
14
- interface Props {
15
- spaceBefore: boolean;
16
- comment: string;
17
- anchor: SourceToken | null;
18
- tag: SourceToken | null;
19
- newlineAfterProp: SourceToken | null;
20
- end: number;
21
- }
22
- declare const CN: {
23
- composeNode: typeof composeNode;
24
- composeEmptyNode: typeof composeEmptyNode;
25
- };
26
- export type ComposeNode = typeof CN;
27
- export declare function composeNode(ctx: ComposeContext, token: Token, props: Props, onError: ComposeErrorHandler): ParsedNode;
28
- export declare function composeEmptyNode(ctx: ComposeContext, offset: number, before: Token[] | undefined, pos: number | null, { spaceBefore, comment, anchor, tag, end }: Props, onError: ComposeErrorHandler): import('../index').Scalar.Parsed;
29
- export {};
@@ -1,112 +0,0 @@
1
- 'use strict';
2
-
3
- var Alias = require('../nodes/Alias.js');
4
- var identity = require('../nodes/identity.js');
5
- var composeCollection = require('./compose-collection.js');
6
- var composeScalar = require('./compose-scalar.js');
7
- var resolveEnd = require('./resolve-end.js');
8
- var utilEmptyScalarPosition = require('./util-empty-scalar-position.js');
9
-
10
- const CN = { composeNode, composeEmptyNode };
11
- function composeNode(ctx, token, props, onError) {
12
- const atKey = ctx.atKey;
13
- const { spaceBefore, comment, anchor, tag } = props;
14
- let node;
15
- let isSrcToken = true;
16
- switch (token.type) {
17
- case 'alias':
18
- node = composeAlias(ctx, token, onError);
19
- if (anchor || tag)
20
- onError(token, 'ALIAS_PROPS', 'An alias node must not specify any properties');
21
- break;
22
- case 'scalar':
23
- case 'single-quoted-scalar':
24
- case 'double-quoted-scalar':
25
- case 'block-scalar':
26
- node = composeScalar.composeScalar(ctx, token, tag, onError);
27
- if (anchor)
28
- node.anchor = anchor.source.substring(1);
29
- break;
30
- case 'block-map':
31
- case 'block-seq':
32
- case 'flow-collection':
33
- try {
34
- node = composeCollection.composeCollection(CN, ctx, token, props, onError);
35
- if (anchor)
36
- node.anchor = anchor.source.substring(1);
37
- }
38
- catch (error) {
39
- // Almost certainly here due to a stack overflow
40
- const message = error instanceof Error ? error.message : String(error);
41
- onError(token, 'RESOURCE_EXHAUSTION', message);
42
- }
43
- break;
44
- default: {
45
- const message = token.type === 'error'
46
- ? token.message
47
- : `Unsupported token (type: ${token.type})`;
48
- onError(token, 'UNEXPECTED_TOKEN', message);
49
- isSrcToken = false;
50
- }
51
- }
52
- node ?? (node = composeEmptyNode(ctx, token.offset, undefined, null, props, onError));
53
- if (anchor && node.anchor === '')
54
- onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string');
55
- if (atKey &&
56
- ctx.options.stringKeys &&
57
- (!identity.isScalar(node) ||
58
- typeof node.value !== 'string' ||
59
- (node.tag && node.tag !== 'tag:yaml.org,2002:str'))) {
60
- const msg = 'With stringKeys, all keys must be strings';
61
- onError(tag ?? token, 'NON_STRING_KEY', msg);
62
- }
63
- if (spaceBefore)
64
- node.spaceBefore = true;
65
- if (comment) {
66
- if (token.type === 'scalar' && token.source === '')
67
- node.comment = comment;
68
- else
69
- node.commentBefore = comment;
70
- }
71
- // @ts-expect-error Type checking misses meaning of isSrcToken
72
- if (ctx.options.keepSourceTokens && isSrcToken)
73
- node.srcToken = token;
74
- return node;
75
- }
76
- function composeEmptyNode(ctx, offset, before, pos, { spaceBefore, comment, anchor, tag, end }, onError) {
77
- const token = {
78
- type: 'scalar',
79
- offset: utilEmptyScalarPosition.emptyScalarPosition(offset, before, pos),
80
- indent: -1,
81
- source: ''
82
- };
83
- const node = composeScalar.composeScalar(ctx, token, tag, onError);
84
- if (anchor) {
85
- node.anchor = anchor.source.substring(1);
86
- if (node.anchor === '')
87
- onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string');
88
- }
89
- if (spaceBefore)
90
- node.spaceBefore = true;
91
- if (comment) {
92
- node.comment = comment;
93
- node.range[2] = end;
94
- }
95
- return node;
96
- }
97
- function composeAlias({ options }, { offset, source, end }, onError) {
98
- const alias = new Alias.Alias(source.substring(1));
99
- if (alias.source === '')
100
- onError(offset, 'BAD_ALIAS', 'Alias cannot be an empty string');
101
- if (alias.source.endsWith(':'))
102
- onError(offset + source.length - 1, 'BAD_ALIAS', 'Alias ending in : is ambiguous', true);
103
- const valueEnd = offset + source.length;
104
- const re = resolveEnd.resolveEnd(end, valueEnd, options.strict, onError);
105
- alias.range = [offset, valueEnd, re.offset];
106
- if (re.comment)
107
- alias.comment = re.comment;
108
- return alias;
109
- }
110
-
111
- exports.composeEmptyNode = composeEmptyNode;
112
- exports.composeNode = composeNode;
@@ -1,5 +0,0 @@
1
- import { Scalar } from '../nodes/Scalar';
2
- import type { BlockScalar, FlowScalar, SourceToken } from '../parse/cst';
3
- import type { ComposeContext } from './compose-node';
4
- import type { ComposeErrorHandler } from './composer';
5
- export declare function composeScalar(ctx: ComposeContext, token: FlowScalar | BlockScalar, tagToken: SourceToken | null, onError: ComposeErrorHandler): Scalar.Parsed;
@@ -1,88 +0,0 @@
1
- 'use strict';
2
-
3
- var identity = require('../nodes/identity.js');
4
- var Scalar = require('../nodes/Scalar.js');
5
- var resolveBlockScalar = require('./resolve-block-scalar.js');
6
- var resolveFlowScalar = require('./resolve-flow-scalar.js');
7
-
8
- function composeScalar(ctx, token, tagToken, onError) {
9
- const { value, type, comment, range } = token.type === 'block-scalar'
10
- ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError)
11
- : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError);
12
- const tagName = tagToken
13
- ? ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg))
14
- : null;
15
- let tag;
16
- if (ctx.options.stringKeys && ctx.atKey) {
17
- tag = ctx.schema[identity.SCALAR];
18
- }
19
- else if (tagName)
20
- tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError);
21
- else if (token.type === 'scalar')
22
- tag = findScalarTagByTest(ctx, value, token, onError);
23
- else
24
- tag = ctx.schema[identity.SCALAR];
25
- let scalar;
26
- try {
27
- const res = tag.resolve(value, msg => onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg), ctx.options);
28
- scalar = identity.isScalar(res) ? res : new Scalar.Scalar(res);
29
- }
30
- catch (error) {
31
- const msg = error instanceof Error ? error.message : String(error);
32
- onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg);
33
- scalar = new Scalar.Scalar(value);
34
- }
35
- scalar.range = range;
36
- scalar.source = value;
37
- if (type)
38
- scalar.type = type;
39
- if (tagName)
40
- scalar.tag = tagName;
41
- if (tag.format)
42
- scalar.format = tag.format;
43
- if (comment)
44
- scalar.comment = comment;
45
- return scalar;
46
- }
47
- function findScalarTagByName(schema, value, tagName, tagToken, onError) {
48
- if (tagName === '!')
49
- return schema[identity.SCALAR]; // non-specific tag
50
- const matchWithTest = [];
51
- for (const tag of schema.tags) {
52
- if (!tag.collection && tag.tag === tagName) {
53
- if (tag.default && tag.test)
54
- matchWithTest.push(tag);
55
- else
56
- return tag;
57
- }
58
- }
59
- for (const tag of matchWithTest)
60
- if (tag.test?.test(value))
61
- return tag;
62
- const kt = schema.knownTags[tagName];
63
- if (kt && !kt.collection) {
64
- // Ensure that the known tag is available for stringifying,
65
- // but does not get used by default.
66
- schema.tags.push(Object.assign({}, kt, { default: false, test: undefined }));
67
- return kt;
68
- }
69
- onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, tagName !== 'tag:yaml.org,2002:str');
70
- return schema[identity.SCALAR];
71
- }
72
- function findScalarTagByTest({ atKey, directives, schema }, value, token, onError) {
73
- const tag = schema.tags.find(tag => (tag.default === true || (atKey && tag.default === 'key')) &&
74
- tag.test?.test(value)) || schema[identity.SCALAR];
75
- if (schema.compat) {
76
- const compat = schema.compat.find(tag => tag.default && tag.test?.test(value)) ??
77
- schema[identity.SCALAR];
78
- if (tag.tag !== compat.tag) {
79
- const ts = directives.tagString(tag.tag);
80
- const cs = directives.tagString(compat.tag);
81
- const msg = `Value may be parsed as either ${ts} or ${cs}`;
82
- onError(token, 'TAG_RESOLVE_FAILED', msg, true);
83
- }
84
- }
85
- return tag;
86
- }
87
-
88
- exports.composeScalar = composeScalar;
@@ -1,63 +0,0 @@
1
- import { Directives } from '../doc/directives';
2
- import { Document } from '../doc/Document';
3
- import type { ErrorCode } from '../errors';
4
- import { YAMLParseError, YAMLWarning } from '../errors';
5
- import type { ParsedNode, Range } from '../nodes/Node';
6
- import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options';
7
- import type { Token } from '../parse/cst';
8
- type ErrorSource = number | [number, number] | Range | {
9
- offset: number;
10
- source?: string;
11
- };
12
- export type ComposeErrorHandler = (source: ErrorSource, code: ErrorCode, message: string, warning?: boolean) => void;
13
- /**
14
- * Compose a stream of CST nodes into a stream of YAML Documents.
15
- *
16
- * ```ts
17
- * import { Composer, Parser } from 'yaml'
18
- *
19
- * const src: string = ...
20
- * const tokens = new Parser().parse(src)
21
- * const docs = new Composer().compose(tokens)
22
- * ```
23
- */
24
- export declare class Composer<Contents extends ParsedNode = ParsedNode, Strict extends boolean = true> {
25
- private directives;
26
- private doc;
27
- private options;
28
- private atDirectives;
29
- private prelude;
30
- private errors;
31
- private warnings;
32
- constructor(options?: ParseOptions & DocumentOptions & SchemaOptions);
33
- private onError;
34
- private decorate;
35
- /**
36
- * Current stream status information.
37
- *
38
- * Mostly useful at the end of input for an empty stream.
39
- */
40
- streamInfo(): {
41
- comment: string;
42
- directives: Directives;
43
- errors: YAMLParseError[];
44
- warnings: YAMLWarning[];
45
- };
46
- /**
47
- * Compose tokens into documents.
48
- *
49
- * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document.
50
- * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly.
51
- */
52
- compose(tokens: Iterable<Token>, forceDoc?: boolean, endOffset?: number): Generator<Document.Parsed<Contents, Strict>, void, unknown>;
53
- /** Advance the composer by one CST token. */
54
- next(token: Token): Generator<Document.Parsed<Contents, Strict>, void, unknown>;
55
- /**
56
- * Call at end of input to yield any remaining document.
57
- *
58
- * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document.
59
- * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly.
60
- */
61
- end(forceDoc?: boolean, endOffset?: number): Generator<Document.Parsed<Contents, Strict>, void, unknown>;
62
- }
63
- export {};