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,198 +0,0 @@
1
- import { Scalar } from '../nodes/Scalar.js';
2
-
3
- function resolveBlockScalar(ctx, scalar, onError) {
4
- const start = scalar.offset;
5
- const header = parseBlockScalarHeader(scalar, ctx.options.strict, onError);
6
- if (!header)
7
- return { value: '', type: null, comment: '', range: [start, start, start] };
8
- const type = header.mode === '>' ? Scalar.BLOCK_FOLDED : Scalar.BLOCK_LITERAL;
9
- const lines = scalar.source ? splitLines(scalar.source) : [];
10
- // determine the end of content & start of chomping
11
- let chompStart = lines.length;
12
- for (let i = lines.length - 1; i >= 0; --i) {
13
- const content = lines[i][1];
14
- if (content === '' || content === '\r')
15
- chompStart = i;
16
- else
17
- break;
18
- }
19
- // shortcut for empty contents
20
- if (chompStart === 0) {
21
- const value = header.chomp === '+' && lines.length > 0
22
- ? '\n'.repeat(Math.max(1, lines.length - 1))
23
- : '';
24
- let end = start + header.length;
25
- if (scalar.source)
26
- end += scalar.source.length;
27
- return { value, type, comment: header.comment, range: [start, end, end] };
28
- }
29
- // find the indentation level to trim from start
30
- let trimIndent = scalar.indent + header.indent;
31
- let offset = scalar.offset + header.length;
32
- let contentStart = 0;
33
- for (let i = 0; i < chompStart; ++i) {
34
- const [indent, content] = lines[i];
35
- if (content === '' || content === '\r') {
36
- if (header.indent === 0 && indent.length > trimIndent)
37
- trimIndent = indent.length;
38
- }
39
- else {
40
- if (indent.length < trimIndent) {
41
- const message = 'Block scalars with more-indented leading empty lines must use an explicit indentation indicator';
42
- onError(offset + indent.length, 'MISSING_CHAR', message);
43
- }
44
- if (header.indent === 0)
45
- trimIndent = indent.length;
46
- contentStart = i;
47
- if (trimIndent === 0 && !ctx.atRoot) {
48
- const message = 'Block scalar values in collections must be indented';
49
- onError(offset, 'BAD_INDENT', message);
50
- }
51
- break;
52
- }
53
- offset += indent.length + content.length + 1;
54
- }
55
- // include trailing more-indented empty lines in content
56
- for (let i = lines.length - 1; i >= chompStart; --i) {
57
- if (lines[i][0].length > trimIndent)
58
- chompStart = i + 1;
59
- }
60
- let value = '';
61
- let sep = '';
62
- let prevMoreIndented = false;
63
- // leading whitespace is kept intact
64
- for (let i = 0; i < contentStart; ++i)
65
- value += lines[i][0].slice(trimIndent) + '\n';
66
- for (let i = contentStart; i < chompStart; ++i) {
67
- let [indent, content] = lines[i];
68
- offset += indent.length + content.length + 1;
69
- const crlf = content[content.length - 1] === '\r';
70
- if (crlf)
71
- content = content.slice(0, -1);
72
- /* istanbul ignore if already caught in lexer */
73
- if (content && indent.length < trimIndent) {
74
- const src = header.indent
75
- ? 'explicit indentation indicator'
76
- : 'first line';
77
- const message = `Block scalar lines must not be less indented than their ${src}`;
78
- onError(offset - content.length - (crlf ? 2 : 1), 'BAD_INDENT', message);
79
- indent = '';
80
- }
81
- if (type === Scalar.BLOCK_LITERAL) {
82
- value += sep + indent.slice(trimIndent) + content;
83
- sep = '\n';
84
- }
85
- else if (indent.length > trimIndent || content[0] === '\t') {
86
- // more-indented content within a folded block
87
- if (sep === ' ')
88
- sep = '\n';
89
- else if (!prevMoreIndented && sep === '\n')
90
- sep = '\n\n';
91
- value += sep + indent.slice(trimIndent) + content;
92
- sep = '\n';
93
- prevMoreIndented = true;
94
- }
95
- else if (content === '') {
96
- // empty line
97
- if (sep === '\n')
98
- value += '\n';
99
- else
100
- sep = '\n';
101
- }
102
- else {
103
- value += sep + content;
104
- sep = ' ';
105
- prevMoreIndented = false;
106
- }
107
- }
108
- switch (header.chomp) {
109
- case '-':
110
- break;
111
- case '+':
112
- for (let i = chompStart; i < lines.length; ++i)
113
- value += '\n' + lines[i][0].slice(trimIndent);
114
- if (value[value.length - 1] !== '\n')
115
- value += '\n';
116
- break;
117
- default:
118
- value += '\n';
119
- }
120
- const end = start + header.length + scalar.source.length;
121
- return { value, type, comment: header.comment, range: [start, end, end] };
122
- }
123
- function parseBlockScalarHeader({ offset, props }, strict, onError) {
124
- /* istanbul ignore if should not happen */
125
- if (props[0].type !== 'block-scalar-header') {
126
- onError(props[0], 'IMPOSSIBLE', 'Block scalar header not found');
127
- return null;
128
- }
129
- const { source } = props[0];
130
- const mode = source[0];
131
- let indent = 0;
132
- let chomp = '';
133
- let error = -1;
134
- for (let i = 1; i < source.length; ++i) {
135
- const ch = source[i];
136
- if (!chomp && (ch === '-' || ch === '+'))
137
- chomp = ch;
138
- else {
139
- const n = Number(ch);
140
- if (!indent && n)
141
- indent = n;
142
- else if (error === -1)
143
- error = offset + i;
144
- }
145
- }
146
- if (error !== -1)
147
- onError(error, 'UNEXPECTED_TOKEN', `Block scalar header includes extra characters: ${source}`);
148
- let hasSpace = false;
149
- let comment = '';
150
- let length = source.length;
151
- for (let i = 1; i < props.length; ++i) {
152
- const token = props[i];
153
- switch (token.type) {
154
- case 'space':
155
- hasSpace = true;
156
- // fallthrough
157
- case 'newline':
158
- length += token.source.length;
159
- break;
160
- case 'comment':
161
- if (strict && !hasSpace) {
162
- const message = 'Comments must be separated from other tokens by white space characters';
163
- onError(token, 'MISSING_CHAR', message);
164
- }
165
- length += token.source.length;
166
- comment = token.source.substring(1);
167
- break;
168
- case 'error':
169
- onError(token, 'UNEXPECTED_TOKEN', token.message);
170
- length += token.source.length;
171
- break;
172
- /* istanbul ignore next should not happen */
173
- default: {
174
- const message = `Unexpected token in block scalar header: ${token.type}`;
175
- onError(token, 'UNEXPECTED_TOKEN', message);
176
- const ts = token.source;
177
- if (ts && typeof ts === 'string')
178
- length += ts.length;
179
- }
180
- }
181
- }
182
- return { mode, indent, chomp, comment, length };
183
- }
184
- /** @returns Array of lines split up as `[indent, content]` */
185
- function splitLines(source) {
186
- const split = source.split(/\n( *)/);
187
- const first = split[0];
188
- const m = first.match(/^( *)/);
189
- const line0 = m?.[1]
190
- ? [m[1], first.slice(m[1].length)]
191
- : ['', first];
192
- const lines = [line0];
193
- for (let i = 1; i < split.length; i += 2)
194
- lines.push([split[i], split[i + 1]]);
195
- return lines;
196
- }
197
-
198
- export { resolveBlockScalar };
@@ -1,49 +0,0 @@
1
- import { YAMLSeq } from '../nodes/YAMLSeq.js';
2
- import { resolveProps } from './resolve-props.js';
3
- import { flowIndentCheck } from './util-flow-indent-check.js';
4
-
5
- function resolveBlockSeq({ composeNode, composeEmptyNode }, ctx, bs, onError, tag) {
6
- const NodeClass = tag?.nodeClass ?? YAMLSeq;
7
- const seq = new NodeClass(ctx.schema);
8
- if (ctx.atRoot)
9
- ctx.atRoot = false;
10
- if (ctx.atKey)
11
- ctx.atKey = false;
12
- let offset = bs.offset;
13
- let commentEnd = null;
14
- for (const { start, value } of bs.items) {
15
- const props = resolveProps(start, {
16
- indicator: 'seq-item-ind',
17
- next: value,
18
- offset,
19
- onError,
20
- parentIndent: bs.indent,
21
- startOnNewline: true
22
- });
23
- if (!props.found) {
24
- if (props.anchor || props.tag || value) {
25
- if (value?.type === 'block-seq')
26
- onError(props.end, 'BAD_INDENT', 'All sequence items must start at the same column');
27
- else
28
- onError(offset, 'MISSING_CHAR', 'Sequence item without - indicator');
29
- }
30
- else {
31
- commentEnd = props.end;
32
- if (props.comment)
33
- seq.comment = props.comment;
34
- continue;
35
- }
36
- }
37
- const node = value
38
- ? composeNode(ctx, value, props, onError)
39
- : composeEmptyNode(ctx, props.end, start, null, props, onError);
40
- if (ctx.schema.compat)
41
- flowIndentCheck(bs.indent, value, onError);
42
- offset = node.range[2];
43
- seq.items.push(node);
44
- }
45
- seq.range = [bs.offset, offset, commentEnd ?? offset];
46
- return seq;
47
- }
48
-
49
- export { resolveBlockSeq };
@@ -1,37 +0,0 @@
1
- function resolveEnd(end, offset, reqSpace, onError) {
2
- let comment = '';
3
- if (end) {
4
- let hasSpace = false;
5
- let sep = '';
6
- for (const token of end) {
7
- const { source, type } = token;
8
- switch (type) {
9
- case 'space':
10
- hasSpace = true;
11
- break;
12
- case 'comment': {
13
- if (reqSpace && !hasSpace)
14
- onError(token, 'MISSING_CHAR', 'Comments must be separated from other tokens by white space characters');
15
- const cb = source.substring(1) || ' ';
16
- if (!comment)
17
- comment = cb;
18
- else
19
- comment += sep + cb;
20
- sep = '';
21
- break;
22
- }
23
- case 'newline':
24
- if (comment)
25
- sep += source;
26
- hasSpace = true;
27
- break;
28
- default:
29
- onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${type} at node end`);
30
- }
31
- offset += source.length;
32
- }
33
- }
34
- return { comment, offset };
35
- }
36
-
37
- export { resolveEnd };
@@ -1,207 +0,0 @@
1
- import { isPair } from '../nodes/identity.js';
2
- import { Pair } from '../nodes/Pair.js';
3
- import { YAMLMap } from '../nodes/YAMLMap.js';
4
- import { YAMLSeq } from '../nodes/YAMLSeq.js';
5
- import { resolveEnd } from './resolve-end.js';
6
- import { resolveProps } from './resolve-props.js';
7
- import { containsNewline } from './util-contains-newline.js';
8
- import { mapIncludes } from './util-map-includes.js';
9
-
10
- const blockMsg = 'Block collections are not allowed within flow collections';
11
- const isBlock = (token) => token && (token.type === 'block-map' || token.type === 'block-seq');
12
- function resolveFlowCollection({ composeNode, composeEmptyNode }, ctx, fc, onError, tag) {
13
- const isMap = fc.start.source === '{';
14
- const fcName = isMap ? 'flow map' : 'flow sequence';
15
- const NodeClass = (tag?.nodeClass ?? (isMap ? YAMLMap : YAMLSeq));
16
- const coll = new NodeClass(ctx.schema);
17
- coll.flow = true;
18
- const atRoot = ctx.atRoot;
19
- if (atRoot)
20
- ctx.atRoot = false;
21
- if (ctx.atKey)
22
- ctx.atKey = false;
23
- let offset = fc.offset + fc.start.source.length;
24
- for (let i = 0; i < fc.items.length; ++i) {
25
- const collItem = fc.items[i];
26
- const { start, key, sep, value } = collItem;
27
- const props = resolveProps(start, {
28
- flow: fcName,
29
- indicator: 'explicit-key-ind',
30
- next: key ?? sep?.[0],
31
- offset,
32
- onError,
33
- parentIndent: fc.indent,
34
- startOnNewline: false
35
- });
36
- if (!props.found) {
37
- if (!props.anchor && !props.tag && !sep && !value) {
38
- if (i === 0 && props.comma)
39
- onError(props.comma, 'UNEXPECTED_TOKEN', `Unexpected , in ${fcName}`);
40
- else if (i < fc.items.length - 1)
41
- onError(props.start, 'UNEXPECTED_TOKEN', `Unexpected empty item in ${fcName}`);
42
- if (props.comment) {
43
- if (coll.comment)
44
- coll.comment += '\n' + props.comment;
45
- else
46
- coll.comment = props.comment;
47
- }
48
- offset = props.end;
49
- continue;
50
- }
51
- if (!isMap && ctx.options.strict && containsNewline(key))
52
- onError(key, // checked by containsNewline()
53
- 'MULTILINE_IMPLICIT_KEY', 'Implicit keys of flow sequence pairs need to be on a single line');
54
- }
55
- if (i === 0) {
56
- if (props.comma)
57
- onError(props.comma, 'UNEXPECTED_TOKEN', `Unexpected , in ${fcName}`);
58
- }
59
- else {
60
- if (!props.comma)
61
- onError(props.start, 'MISSING_CHAR', `Missing , between ${fcName} items`);
62
- if (props.comment) {
63
- let prevItemComment = '';
64
- loop: for (const st of start) {
65
- switch (st.type) {
66
- case 'comma':
67
- case 'space':
68
- break;
69
- case 'comment':
70
- prevItemComment = st.source.substring(1);
71
- break loop;
72
- default:
73
- break loop;
74
- }
75
- }
76
- if (prevItemComment) {
77
- let prev = coll.items[coll.items.length - 1];
78
- if (isPair(prev))
79
- prev = prev.value ?? prev.key;
80
- if (prev.comment)
81
- prev.comment += '\n' + prevItemComment;
82
- else
83
- prev.comment = prevItemComment;
84
- props.comment = props.comment.substring(prevItemComment.length + 1);
85
- }
86
- }
87
- }
88
- if (!isMap && !sep && !props.found) {
89
- // item is a value in a seq
90
- // → key & sep are empty, start does not include ? or :
91
- const valueNode = value
92
- ? composeNode(ctx, value, props, onError)
93
- : composeEmptyNode(ctx, props.end, sep, null, props, onError);
94
- coll.items.push(valueNode);
95
- offset = valueNode.range[2];
96
- if (isBlock(value))
97
- onError(valueNode.range, 'BLOCK_IN_FLOW', blockMsg);
98
- }
99
- else {
100
- // item is a key+value pair
101
- // key value
102
- ctx.atKey = true;
103
- const keyStart = props.end;
104
- const keyNode = key
105
- ? composeNode(ctx, key, props, onError)
106
- : composeEmptyNode(ctx, keyStart, start, null, props, onError);
107
- if (isBlock(key))
108
- onError(keyNode.range, 'BLOCK_IN_FLOW', blockMsg);
109
- ctx.atKey = false;
110
- // value properties
111
- const valueProps = resolveProps(sep ?? [], {
112
- flow: fcName,
113
- indicator: 'map-value-ind',
114
- next: value,
115
- offset: keyNode.range[2],
116
- onError,
117
- parentIndent: fc.indent,
118
- startOnNewline: false
119
- });
120
- if (valueProps.found) {
121
- if (!isMap && !props.found && ctx.options.strict) {
122
- if (sep)
123
- for (const st of sep) {
124
- if (st === valueProps.found)
125
- break;
126
- if (st.type === 'newline') {
127
- onError(st, 'MULTILINE_IMPLICIT_KEY', 'Implicit keys of flow sequence pairs need to be on a single line');
128
- break;
129
- }
130
- }
131
- if (props.start < valueProps.found.offset - 1024)
132
- onError(valueProps.found, 'KEY_OVER_1024_CHARS', 'The : indicator must be at most 1024 chars after the start of an implicit flow sequence key');
133
- }
134
- }
135
- else if (value) {
136
- if ('source' in value && value.source?.[0] === ':')
137
- onError(value, 'MISSING_CHAR', `Missing space after : in ${fcName}`);
138
- else
139
- onError(valueProps.start, 'MISSING_CHAR', `Missing , or : between ${fcName} items`);
140
- }
141
- // value value
142
- const valueNode = value
143
- ? composeNode(ctx, value, valueProps, onError)
144
- : valueProps.found
145
- ? composeEmptyNode(ctx, valueProps.end, sep, null, valueProps, onError)
146
- : null;
147
- if (valueNode) {
148
- if (isBlock(value))
149
- onError(valueNode.range, 'BLOCK_IN_FLOW', blockMsg);
150
- }
151
- else if (valueProps.comment) {
152
- if (keyNode.comment)
153
- keyNode.comment += '\n' + valueProps.comment;
154
- else
155
- keyNode.comment = valueProps.comment;
156
- }
157
- const pair = new Pair(keyNode, valueNode);
158
- if (ctx.options.keepSourceTokens)
159
- pair.srcToken = collItem;
160
- if (isMap) {
161
- const map = coll;
162
- if (mapIncludes(ctx, map.items, keyNode))
163
- onError(keyStart, 'DUPLICATE_KEY', 'Map keys must be unique');
164
- map.items.push(pair);
165
- }
166
- else {
167
- const map = new YAMLMap(ctx.schema);
168
- map.flow = true;
169
- map.items.push(pair);
170
- const endRange = (valueNode ?? keyNode).range;
171
- map.range = [keyNode.range[0], endRange[1], endRange[2]];
172
- coll.items.push(map);
173
- }
174
- offset = valueNode ? valueNode.range[2] : valueProps.end;
175
- }
176
- }
177
- const expectedEnd = isMap ? '}' : ']';
178
- const [ce, ...ee] = fc.end;
179
- let cePos = offset;
180
- if (ce?.source === expectedEnd)
181
- cePos = ce.offset + ce.source.length;
182
- else {
183
- const name = fcName[0].toUpperCase() + fcName.substring(1);
184
- const msg = atRoot
185
- ? `${name} must end with a ${expectedEnd}`
186
- : `${name} in block collection must be sufficiently indented and end with a ${expectedEnd}`;
187
- onError(offset, atRoot ? 'MISSING_CHAR' : 'BAD_INDENT', msg);
188
- if (ce && ce.source.length !== 1)
189
- ee.unshift(ce);
190
- }
191
- if (ee.length > 0) {
192
- const end = resolveEnd(ee, cePos, ctx.options.strict, onError);
193
- if (end.comment) {
194
- if (coll.comment)
195
- coll.comment += '\n' + end.comment;
196
- else
197
- coll.comment = end.comment;
198
- }
199
- coll.range = [fc.offset, cePos, end.offset];
200
- }
201
- else {
202
- coll.range = [fc.offset, cePos, cePos];
203
- }
204
- return coll;
205
- }
206
-
207
- export { resolveFlowCollection };