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,129 +0,0 @@
1
- import { anchorIsValid } from '../doc/anchors.js';
2
- import { isPair, isAlias, isNode, isScalar, isCollection } from '../nodes/identity.js';
3
- import { stringifyComment } from './stringifyComment.js';
4
- import { stringifyString } from './stringifyString.js';
5
-
6
- function createStringifyContext(doc, options) {
7
- const opt = Object.assign({
8
- blockQuote: true,
9
- commentString: stringifyComment,
10
- defaultKeyType: null,
11
- defaultStringType: 'PLAIN',
12
- directives: null,
13
- doubleQuotedAsJSON: false,
14
- doubleQuotedMinMultiLineLength: 40,
15
- falseStr: 'false',
16
- flowCollectionPadding: true,
17
- indentSeq: true,
18
- lineWidth: 80,
19
- minContentWidth: 20,
20
- nullStr: 'null',
21
- simpleKeys: false,
22
- singleQuote: null,
23
- trailingComma: false,
24
- trueStr: 'true',
25
- verifyAliasOrder: true
26
- }, doc.schema.toStringOptions, options);
27
- let inFlow;
28
- switch (opt.collectionStyle) {
29
- case 'block':
30
- inFlow = false;
31
- break;
32
- case 'flow':
33
- inFlow = true;
34
- break;
35
- default:
36
- inFlow = null;
37
- }
38
- return {
39
- anchors: new Set(),
40
- doc,
41
- flowCollectionPadding: opt.flowCollectionPadding ? ' ' : '',
42
- indent: '',
43
- indentStep: typeof opt.indent === 'number' ? ' '.repeat(opt.indent) : ' ',
44
- inFlow,
45
- options: opt
46
- };
47
- }
48
- function getTagObject(tags, item) {
49
- if (item.tag) {
50
- const match = tags.filter(t => t.tag === item.tag);
51
- if (match.length > 0)
52
- return match.find(t => t.format === item.format) ?? match[0];
53
- }
54
- let tagObj = undefined;
55
- let obj;
56
- if (isScalar(item)) {
57
- obj = item.value;
58
- let match = tags.filter(t => t.identify?.(obj));
59
- if (match.length > 1) {
60
- const testMatch = match.filter(t => t.test);
61
- if (testMatch.length > 0)
62
- match = testMatch;
63
- }
64
- tagObj =
65
- match.find(t => t.format === item.format) ?? match.find(t => !t.format);
66
- }
67
- else {
68
- obj = item;
69
- tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
70
- }
71
- if (!tagObj) {
72
- const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj);
73
- throw new Error(`Tag not resolved for ${name} value`);
74
- }
75
- return tagObj;
76
- }
77
- // needs to be called before value stringifier to allow for circular anchor refs
78
- function stringifyProps(node, tagObj, { anchors, doc }) {
79
- if (!doc.directives)
80
- return '';
81
- const props = [];
82
- const anchor = (isScalar(node) || isCollection(node)) && node.anchor;
83
- if (anchor && anchorIsValid(anchor)) {
84
- anchors.add(anchor);
85
- props.push(`&${anchor}`);
86
- }
87
- const tag = node.tag ?? (tagObj.default ? null : tagObj.tag);
88
- if (tag)
89
- props.push(doc.directives.tagString(tag));
90
- return props.join(' ');
91
- }
92
- function stringify(item, ctx, onComment, onChompKeep) {
93
- if (isPair(item))
94
- return item.toString(ctx, onComment, onChompKeep);
95
- if (isAlias(item)) {
96
- if (ctx.doc.directives)
97
- return item.toString(ctx);
98
- if (ctx.resolvedAliases?.has(item)) {
99
- throw new TypeError(`Cannot stringify circular structure without alias nodes`);
100
- }
101
- else {
102
- if (ctx.resolvedAliases)
103
- ctx.resolvedAliases.add(item);
104
- else
105
- ctx.resolvedAliases = new Set([item]);
106
- item = item.resolve(ctx.doc);
107
- }
108
- }
109
- let tagObj = undefined;
110
- const node = isNode(item)
111
- ? item
112
- : ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) });
113
- tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node));
114
- const props = stringifyProps(node, tagObj, ctx);
115
- if (props.length > 0)
116
- ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1;
117
- const str = typeof tagObj.stringify === 'function'
118
- ? tagObj.stringify(node, ctx, onComment, onChompKeep)
119
- : isScalar(node)
120
- ? stringifyString(node, ctx, onComment, onChompKeep)
121
- : node.toString(ctx, onComment, onChompKeep);
122
- if (!props)
123
- return str;
124
- return isScalar(node) || str[0] === '{' || str[0] === '['
125
- ? `${props} ${str}`
126
- : `${props}\n${ctx.indent}${str}`;
127
- }
128
-
129
- export { createStringifyContext, stringify };
@@ -1,153 +0,0 @@
1
- import { isNode, isPair } from '../nodes/identity.js';
2
- import { stringify } from './stringify.js';
3
- import { lineComment, indentComment } from './stringifyComment.js';
4
-
5
- function stringifyCollection(collection, ctx, options) {
6
- const flow = ctx.inFlow ?? collection.flow;
7
- const stringify = flow ? stringifyFlowCollection : stringifyBlockCollection;
8
- return stringify(collection, ctx, options);
9
- }
10
- function stringifyBlockCollection({ comment, items }, ctx, { blockItemPrefix, flowChars, itemIndent, onChompKeep, onComment }) {
11
- const { indent, options: { commentString } } = ctx;
12
- const itemCtx = Object.assign({}, ctx, { indent: itemIndent, type: null });
13
- let chompKeep = false; // flag for the preceding node's status
14
- const lines = [];
15
- for (let i = 0; i < items.length; ++i) {
16
- const item = items[i];
17
- let comment = null;
18
- if (isNode(item)) {
19
- if (!chompKeep && item.spaceBefore)
20
- lines.push('');
21
- addCommentBefore(ctx, lines, item.commentBefore, chompKeep);
22
- if (item.comment)
23
- comment = item.comment;
24
- }
25
- else if (isPair(item)) {
26
- const ik = isNode(item.key) ? item.key : null;
27
- if (ik) {
28
- if (!chompKeep && ik.spaceBefore)
29
- lines.push('');
30
- addCommentBefore(ctx, lines, ik.commentBefore, chompKeep);
31
- }
32
- }
33
- chompKeep = false;
34
- let str = stringify(item, itemCtx, () => (comment = null), () => (chompKeep = true));
35
- if (comment)
36
- str += lineComment(str, itemIndent, commentString(comment));
37
- if (chompKeep && comment)
38
- chompKeep = false;
39
- lines.push(blockItemPrefix + str);
40
- }
41
- let str;
42
- if (lines.length === 0) {
43
- str = flowChars.start + flowChars.end;
44
- }
45
- else {
46
- str = lines[0];
47
- for (let i = 1; i < lines.length; ++i) {
48
- const line = lines[i];
49
- str += line ? `\n${indent}${line}` : '\n';
50
- }
51
- }
52
- if (comment) {
53
- str += '\n' + indentComment(commentString(comment), indent);
54
- if (onComment)
55
- onComment();
56
- }
57
- else if (chompKeep && onChompKeep)
58
- onChompKeep();
59
- return str;
60
- }
61
- function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) {
62
- const { indent, indentStep, flowCollectionPadding: fcPadding, options: { commentString } } = ctx;
63
- itemIndent += indentStep;
64
- const itemCtx = Object.assign({}, ctx, {
65
- indent: itemIndent,
66
- inFlow: true,
67
- type: null
68
- });
69
- let reqNewline = false;
70
- let linesAtValue = 0;
71
- const lines = [];
72
- for (let i = 0; i < items.length; ++i) {
73
- const item = items[i];
74
- let comment = null;
75
- if (isNode(item)) {
76
- if (item.spaceBefore)
77
- lines.push('');
78
- addCommentBefore(ctx, lines, item.commentBefore, false);
79
- if (item.comment)
80
- comment = item.comment;
81
- }
82
- else if (isPair(item)) {
83
- const ik = isNode(item.key) ? item.key : null;
84
- if (ik) {
85
- if (ik.spaceBefore)
86
- lines.push('');
87
- addCommentBefore(ctx, lines, ik.commentBefore, false);
88
- if (ik.comment)
89
- reqNewline = true;
90
- }
91
- const iv = isNode(item.value) ? item.value : null;
92
- if (iv) {
93
- if (iv.comment)
94
- comment = iv.comment;
95
- if (iv.commentBefore)
96
- reqNewline = true;
97
- }
98
- else if (item.value == null && ik?.comment) {
99
- comment = ik.comment;
100
- }
101
- }
102
- if (comment)
103
- reqNewline = true;
104
- let str = stringify(item, itemCtx, () => (comment = null));
105
- reqNewline || (reqNewline = lines.length > linesAtValue || str.includes('\n'));
106
- if (i < items.length - 1) {
107
- str += ',';
108
- }
109
- else if (ctx.options.trailingComma) {
110
- if (ctx.options.lineWidth > 0) {
111
- reqNewline || (reqNewline = lines.reduce((sum, line) => sum + line.length + 2, 2) +
112
- (str.length + 2) >
113
- ctx.options.lineWidth);
114
- }
115
- if (reqNewline) {
116
- str += ',';
117
- }
118
- }
119
- if (comment)
120
- str += lineComment(str, itemIndent, commentString(comment));
121
- lines.push(str);
122
- linesAtValue = lines.length;
123
- }
124
- const { start, end } = flowChars;
125
- if (lines.length === 0) {
126
- return start + end;
127
- }
128
- else {
129
- if (!reqNewline) {
130
- const len = lines.reduce((sum, line) => sum + line.length + 2, 2);
131
- reqNewline = ctx.options.lineWidth > 0 && len > ctx.options.lineWidth;
132
- }
133
- if (reqNewline) {
134
- let str = start;
135
- for (const line of lines)
136
- str += line ? `\n${indentStep}${indent}${line}` : '\n';
137
- return `${str}\n${indent}${end}`;
138
- }
139
- else {
140
- return `${start}${fcPadding}${lines.join(' ')}${fcPadding}${end}`;
141
- }
142
- }
143
- }
144
- function addCommentBefore({ indent, options: { commentString } }, lines, comment, chompKeep) {
145
- if (comment && chompKeep)
146
- comment = comment.replace(/^\n+/, '');
147
- if (comment) {
148
- const ic = indentComment(commentString(comment), indent);
149
- lines.push(ic.trimStart()); // Avoid double indent on first line
150
- }
151
- }
152
-
153
- export { stringifyCollection };
@@ -1,20 +0,0 @@
1
- /**
2
- * Stringifies a comment.
3
- *
4
- * Empty comment lines are left empty,
5
- * lines consisting of a single space are replaced by `#`,
6
- * and all other lines are prefixed with a `#`.
7
- */
8
- const stringifyComment = (str) => str.replace(/^(?!$)(?: $)?/gm, '#');
9
- function indentComment(comment, indent) {
10
- if (/^\n+$/.test(comment))
11
- return comment.substring(1);
12
- return indent ? comment.replace(/^(?! *$)/gm, indent) : comment;
13
- }
14
- const lineComment = (str, indent, comment) => str.endsWith('\n')
15
- ? indentComment(comment, indent)
16
- : comment.includes('\n')
17
- ? '\n' + indentComment(comment, indent)
18
- : (str.endsWith(' ') ? '' : ' ') + comment;
19
-
20
- export { indentComment, lineComment, stringifyComment };
@@ -1,85 +0,0 @@
1
- import { isNode } from '../nodes/identity.js';
2
- import { createStringifyContext, stringify } from './stringify.js';
3
- import { indentComment, lineComment } from './stringifyComment.js';
4
-
5
- function stringifyDocument(doc, options) {
6
- const lines = [];
7
- let hasDirectives = options.directives === true;
8
- if (options.directives !== false && doc.directives) {
9
- const dir = doc.directives.toString(doc);
10
- if (dir) {
11
- lines.push(dir);
12
- hasDirectives = true;
13
- }
14
- else if (doc.directives.docStart)
15
- hasDirectives = true;
16
- }
17
- if (hasDirectives)
18
- lines.push('---');
19
- const ctx = createStringifyContext(doc, options);
20
- const { commentString } = ctx.options;
21
- if (doc.commentBefore) {
22
- if (lines.length !== 1)
23
- lines.unshift('');
24
- const cs = commentString(doc.commentBefore);
25
- lines.unshift(indentComment(cs, ''));
26
- }
27
- let chompKeep = false;
28
- let contentComment = null;
29
- if (doc.contents) {
30
- if (isNode(doc.contents)) {
31
- if (doc.contents.spaceBefore && hasDirectives)
32
- lines.push('');
33
- if (doc.contents.commentBefore) {
34
- const cs = commentString(doc.contents.commentBefore);
35
- lines.push(indentComment(cs, ''));
36
- }
37
- // top-level block scalars need to be indented if followed by a comment
38
- ctx.forceBlockIndent = !!doc.comment;
39
- contentComment = doc.contents.comment;
40
- }
41
- const onChompKeep = contentComment ? undefined : () => (chompKeep = true);
42
- let body = stringify(doc.contents, ctx, () => (contentComment = null), onChompKeep);
43
- if (contentComment)
44
- body += lineComment(body, '', commentString(contentComment));
45
- if ((body[0] === '|' || body[0] === '>') &&
46
- lines[lines.length - 1] === '---') {
47
- // Top-level block scalars with a preceding doc marker ought to use the
48
- // same line for their header.
49
- lines[lines.length - 1] = `--- ${body}`;
50
- }
51
- else
52
- lines.push(body);
53
- }
54
- else {
55
- lines.push(stringify(doc.contents, ctx));
56
- }
57
- if (doc.directives?.docEnd) {
58
- if (doc.comment) {
59
- const cs = commentString(doc.comment);
60
- if (cs.includes('\n')) {
61
- lines.push('...');
62
- lines.push(indentComment(cs, ''));
63
- }
64
- else {
65
- lines.push(`... ${cs}`);
66
- }
67
- }
68
- else {
69
- lines.push('...');
70
- }
71
- }
72
- else {
73
- let dc = doc.comment;
74
- if (dc && chompKeep)
75
- dc = dc.replace(/^\n+/, '');
76
- if (dc) {
77
- if ((!chompKeep || contentComment) && lines[lines.length - 1] !== '')
78
- lines.push('');
79
- lines.push(indentComment(commentString(dc), ''));
80
- }
81
- }
82
- return lines.join('\n') + '\n';
83
- }
84
-
85
- export { stringifyDocument };
@@ -1,24 +0,0 @@
1
- function stringifyNumber({ format, minFractionDigits, tag, value }) {
2
- if (typeof value === 'bigint')
3
- return String(value);
4
- const num = typeof value === 'number' ? value : Number(value);
5
- if (!isFinite(num))
6
- return isNaN(num) ? '.nan' : num < 0 ? '-.inf' : '.inf';
7
- let n = Object.is(value, -0) ? '-0' : JSON.stringify(value);
8
- if (!format &&
9
- minFractionDigits &&
10
- (!tag || tag === 'tag:yaml.org,2002:float') &&
11
- /^\d/.test(n)) {
12
- let i = n.indexOf('.');
13
- if (i < 0) {
14
- i = n.length;
15
- n += '.';
16
- }
17
- let d = minFractionDigits - (n.length - i - 1);
18
- while (d-- > 0)
19
- n += '0';
20
- }
21
- return n;
22
- }
23
-
24
- export { stringifyNumber };
@@ -1,150 +0,0 @@
1
- import { isCollection, isNode, isScalar, isSeq } from '../nodes/identity.js';
2
- import { Scalar } from '../nodes/Scalar.js';
3
- import { stringify } from './stringify.js';
4
- import { lineComment, indentComment } from './stringifyComment.js';
5
-
6
- function stringifyPair({ key, value }, ctx, onComment, onChompKeep) {
7
- const { allNullValues, doc, indent, indentStep, options: { commentString, indentSeq, simpleKeys } } = ctx;
8
- let keyComment = (isNode(key) && key.comment) || null;
9
- if (simpleKeys) {
10
- if (keyComment) {
11
- throw new Error('With simple keys, key nodes cannot have comments');
12
- }
13
- if (isCollection(key) || (!isNode(key) && typeof key === 'object')) {
14
- const msg = 'With simple keys, collection cannot be used as a key value';
15
- throw new Error(msg);
16
- }
17
- }
18
- let explicitKey = !simpleKeys &&
19
- (!key ||
20
- (keyComment && value == null && !ctx.inFlow) ||
21
- isCollection(key) ||
22
- (isScalar(key)
23
- ? key.type === Scalar.BLOCK_FOLDED || key.type === Scalar.BLOCK_LITERAL
24
- : typeof key === 'object'));
25
- ctx = Object.assign({}, ctx, {
26
- allNullValues: false,
27
- implicitKey: !explicitKey && (simpleKeys || !allNullValues),
28
- indent: indent + indentStep
29
- });
30
- let keyCommentDone = false;
31
- let chompKeep = false;
32
- let str = stringify(key, ctx, () => (keyCommentDone = true), () => (chompKeep = true));
33
- if (!explicitKey && !ctx.inFlow && str.length > 1024) {
34
- if (simpleKeys)
35
- throw new Error('With simple keys, single line scalar must not span more than 1024 characters');
36
- explicitKey = true;
37
- }
38
- if (ctx.inFlow) {
39
- if (allNullValues || value == null) {
40
- if (keyCommentDone && onComment)
41
- onComment();
42
- return str === '' ? '?' : explicitKey ? `? ${str}` : str;
43
- }
44
- }
45
- else if ((allNullValues && !simpleKeys) || (value == null && explicitKey)) {
46
- str = `? ${str}`;
47
- if (keyComment && !keyCommentDone) {
48
- str += lineComment(str, ctx.indent, commentString(keyComment));
49
- }
50
- else if (chompKeep && onChompKeep)
51
- onChompKeep();
52
- return str;
53
- }
54
- if (keyCommentDone)
55
- keyComment = null;
56
- if (explicitKey) {
57
- if (keyComment)
58
- str += lineComment(str, ctx.indent, commentString(keyComment));
59
- str = `? ${str}\n${indent}:`;
60
- }
61
- else {
62
- str = `${str}:`;
63
- if (keyComment)
64
- str += lineComment(str, ctx.indent, commentString(keyComment));
65
- }
66
- let vsb, vcb, valueComment;
67
- if (isNode(value)) {
68
- vsb = !!value.spaceBefore;
69
- vcb = value.commentBefore;
70
- valueComment = value.comment;
71
- }
72
- else {
73
- vsb = false;
74
- vcb = null;
75
- valueComment = null;
76
- if (value && typeof value === 'object')
77
- value = doc.createNode(value);
78
- }
79
- ctx.implicitKey = false;
80
- if (!explicitKey && !keyComment && isScalar(value))
81
- ctx.indentAtStart = str.length + 1;
82
- chompKeep = false;
83
- if (!indentSeq &&
84
- indentStep.length >= 2 &&
85
- !ctx.inFlow &&
86
- !explicitKey &&
87
- isSeq(value) &&
88
- !value.flow &&
89
- !value.tag &&
90
- !value.anchor) {
91
- // If indentSeq === false, consider '- ' as part of indentation where possible
92
- ctx.indent = ctx.indent.substring(2);
93
- }
94
- let valueCommentDone = false;
95
- const valueStr = stringify(value, ctx, () => (valueCommentDone = true), () => (chompKeep = true));
96
- let ws = ' ';
97
- if (keyComment || vsb || vcb) {
98
- ws = vsb ? '\n' : '';
99
- if (vcb) {
100
- const cs = commentString(vcb);
101
- ws += `\n${indentComment(cs, ctx.indent)}`;
102
- }
103
- if (valueStr === '' && !ctx.inFlow) {
104
- if (ws === '\n' && valueComment)
105
- ws = '\n\n';
106
- }
107
- else {
108
- ws += `\n${ctx.indent}`;
109
- }
110
- }
111
- else if (!explicitKey && isCollection(value)) {
112
- const vs0 = valueStr[0];
113
- const nl0 = valueStr.indexOf('\n');
114
- const hasNewline = nl0 !== -1;
115
- const flow = ctx.inFlow ?? value.flow ?? value.items.length === 0;
116
- if (hasNewline || !flow) {
117
- let hasPropsLine = false;
118
- if (hasNewline && (vs0 === '&' || vs0 === '!')) {
119
- let sp0 = valueStr.indexOf(' ');
120
- if (vs0 === '&' &&
121
- sp0 !== -1 &&
122
- sp0 < nl0 &&
123
- valueStr[sp0 + 1] === '!') {
124
- sp0 = valueStr.indexOf(' ', sp0 + 1);
125
- }
126
- if (sp0 === -1 || nl0 < sp0)
127
- hasPropsLine = true;
128
- }
129
- if (!hasPropsLine)
130
- ws = `\n${ctx.indent}`;
131
- }
132
- }
133
- else if (valueStr === '' || valueStr[0] === '\n') {
134
- ws = '';
135
- }
136
- str += ws + valueStr;
137
- if (ctx.inFlow) {
138
- if (valueCommentDone && onComment)
139
- onComment();
140
- }
141
- else if (valueComment && !valueCommentDone) {
142
- str += lineComment(str, ctx.indent, commentString(valueComment));
143
- }
144
- else if (chompKeep && onChompKeep) {
145
- onChompKeep();
146
- }
147
- return str;
148
- }
149
-
150
- export { stringifyPair };