kenaz 0.3.3 → 0.3.5

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 (413) 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 +14 -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/spec/task_operations.parity.test.js +0 -1
  44. package/core/.formation/tests/hello.txt +2 -2
  45. package/core/.formation/tools/dashboard-models-chain.test.js +0 -6
  46. package/core/.formation/tools/dispatch-detail/cross-project-worktree.md +1 -9
  47. package/core/.formation/tools/dispatch-detail/worktree-subagent-mode.md +2 -2
  48. package/core/.formation/tools/dispatch.js +28 -549
  49. package/core/.formation/tools/mcp-allowlist.test.js +0 -1
  50. package/core/.formation/tools/post-complete/task2345.test.js +0 -5
  51. package/core/.formation/tools/pre-dispatch-snapshot.test.js +0 -100
  52. package/core/.formation/tools/prompt.js +29 -1623
  53. package/core/.formation/tools/prompt.test.js +26 -594
  54. package/core/.kenaz/knowledge/ladybug_2c51da1e_shadow_file_frame_group.patch +163 -163
  55. package/core/.kenaz/knowledge/ladybug_30cf85690e_shadow_page_read_during_checkpoint.patch +393 -393
  56. package/core/.kenaz/knowledge/ladybug_7a17858d3a_node_group_delete_lock.patch +102 -102
  57. package/core/.kenaz/knowledge/ladybug_926a0ba1_column_checkpoint.patch +412 -412
  58. package/core/.kenaz/knowledge/ladybug_a346c4c4b6_pk_index_header_pages.patch +144 -144
  59. package/core/.kenaz/knowledge/ladybug_ba5f38815b_csr_node_group.patch +86 -86
  60. package/core/.kenaz/muninn_episode_write.ps1 +17 -17
  61. package/core/.kenaz/specialist/field_report_watermark.json +1 -1
  62. package/core/.kenaz/specialist/memory_guard_fired.json +1 -1
  63. package/core/.kenaz/specialist/memory_guard_trigger_cache.json +1 -1
  64. package/core/.kenaz/specialist/t1777_probe.txt +1 -1
  65. package/core/.matrix/index.matrix +5 -5
  66. package/core/.specialist/tools/__tests__/freya-cli-contract.test.js +0 -1
  67. package/core/KENAZ_CORE_VERSION +1 -1
  68. package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +355 -355
  69. package/core/dev/JEV_INTEGRATION_PLAN.md +189 -189
  70. package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +13 -13
  71. package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +9 -9
  72. package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +14 -14
  73. package/core/dev/design/matrix_v2_EXAMPLE.matrix +67 -67
  74. package/core/dev/jev-eval/ACTIVE_CORRECTION.md +52 -52
  75. package/core/dev/jev-eval/CONTEXT_REVIEW.md +31 -31
  76. package/core/dev/jev-eval/EVALUATION_STATUS.md +39 -39
  77. package/core/dev/jev-eval/HISTORICAL_CORPUS.md +33 -33
  78. package/core/dev/jev-eval/README.md +99 -99
  79. package/core/dev/jev-eval/THALAMUS_RANKING.md +58 -58
  80. package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +32 -32
  81. package/core/dev/jev-eval/reports/context-review-2026-09-20.json +48 -48
  82. package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +52 -52
  83. package/core/dev/pipeline/SELF_ENHANCEMENT_STATUS.json.bak +47 -47
  84. package/core/dev/pipeline/tasks/.gitkeep +1 -1
  85. package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +27 -27
  86. package/core/dev/scripts/init_git.sh +0 -0
  87. package/core/dev/scripts/init_project.sh +0 -0
  88. package/core/dev/scripts/legacy/dev_agent_scheduler.ps1.bak +536 -536
  89. package/core/dev/scripts/legacy/multi_agent_scheduler.ps1.bak +1978 -1978
  90. package/core/dev/scripts/matrix/src/cli/commands/list-tags.ts.wip +140 -140
  91. package/core/dev/scripts/matrix/src/cli/commands/manage-tags.ts.wip +173 -173
  92. package/core/dev/scripts/matrix/src/cli/commands/stats.ts.wip +168 -168
  93. package/core/dev/scripts/matrix/src/cli/commands/tokens.ts.wip +126 -126
  94. package/core/dev/scripts/multi_agent_scheduler.sh +0 -0
  95. package/core/dev/scripts/run_once.sh +0 -0
  96. package/core/dev/scripts/setup_mcp.sh +0 -0
  97. package/core/dev/scripts/setup_rag.sh +0 -0
  98. package/core/dev/scripts/start_dev_agent.sh +0 -0
  99. package/core/dev/scripts/start_multi_agent.sh +0 -0
  100. package/core/dev/scripts/sync_task_queue.sh +0 -0
  101. package/core/plugins/kenaz/commands/Amelia.md +1 -1
  102. package/core/plugins/kenaz/commands/Ansuz.md +15 -3
  103. package/core/plugins/kenaz/scripts/kenaz-mode.js +11 -1
  104. package/core/plugins/kenaz/scripts/sync.js +6 -2
  105. package/core/plugins/kenaz/scripts/ygg.js +13 -1
  106. package/core/plugins/kenaz/skills/product_manager/SKILL.md +12 -12
  107. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/charts.csv +26 -26
  108. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/colors.csv +97 -97
  109. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/icons.csv +101 -101
  110. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/landing.csv +31 -31
  111. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/products.csv +96 -96
  112. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
  113. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
  114. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  115. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  116. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
  117. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  118. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
  119. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
  120. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -52
  121. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  122. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
  123. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  124. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  125. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  126. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/styles.csv +68 -68
  127. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/typography.csv +57 -57
  128. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -101
  129. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/ux-guidelines.csv +99 -99
  130. package/core/plugins/kenaz/skills/ui-ux-pro-max/data/web-interface.csv +31 -31
  131. package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/core.py +253 -253
  132. package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/design_system.py +1067 -1067
  133. package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/search.py +106 -106
  134. package/lib/cli.js +11 -4
  135. package/package.json +11 -7
  136. package/vendor/install-kenaz-cli.js +18 -7
  137. package/core/.formation/tools/broadcast.js +0 -103
  138. package/core/.formation/tools/dispatch-dryrun.test.js +0 -54
  139. package/core/.formation/tools/dispatch-notifier.js +0 -84
  140. package/core/.formation/tools/formations.js +0 -1203
  141. package/core/.formation/tools/headless-branch-recovery.test.js +0 -64
  142. package/core/.formation/tools/headless-dryrun.test.js +0 -79
  143. package/core/.formation/tools/headless-v2.js +0 -659
  144. package/core/.formation/tools/headless.js +0 -1071
  145. package/core/.formation/tools/legacy-scheduler.js +0 -1994
  146. package/core/.formation/tools/logger.js +0 -273
  147. package/core/.formation/tools/memory-loader.js +0 -422
  148. package/core/.formation/tools/process-state.js +0 -33
  149. package/core/.formation/tools/remote-conflict.js +0 -98
  150. package/core/.formation/tools/runner.js +0 -1332
  151. package/core/.formation/tools/task-utils.js +0 -344
  152. package/core/.formation/tools/task2028-headless-worktree.test.js +0 -112
  153. package/core/.formation/tools/tests/headless-mcp-args-plumbing.test.js +0 -123
  154. package/core/.formation/tools/worktree-leak.test.js +0 -162
  155. package/core/k-cli/dist/alaya/run.js +0 -91
  156. package/core/k-cli/dist/core/output.js +0 -24
  157. package/core/k-cli/dist/core/process.js +0 -38
  158. package/core/k-cli/dist/core/project.js +0 -80
  159. package/core/k-cli/dist/core/spawn.js +0 -268
  160. package/core/k-cli/dist/core/types.js +0 -2
  161. package/core/k-cli/dist/dashboard/update.js +0 -53
  162. package/core/k-cli/dist/dashboard/version.js +0 -20
  163. package/core/k-cli/dist/dispatch/run.js +0 -241
  164. package/core/k-cli/dist/dispatch/status.js +0 -103
  165. package/core/k-cli/dist/index.js +0 -283
  166. package/core/k-cli/dist/project/initialize.js +0 -301
  167. package/core/k-cli/dist/project/install.js +0 -89
  168. package/core/k-cli/dist/project/status.js +0 -138
  169. package/core/k-cli/dist/specialist/list.js +0 -100
  170. package/core/k-cli/dist/specialist/run.js +0 -93
  171. package/core/k-cli/dist/task/create.js +0 -194
  172. package/core/k-cli/dist/task/delete.js +0 -98
  173. package/core/k-cli/dist/task/get.js +0 -55
  174. package/core/k-cli/dist/task/list.js +0 -58
  175. package/core/k-cli/dist/task/submit.js +0 -156
  176. package/core/k-cli/dist/ygg/run.js +0 -51
  177. package/core/k-cli/node_modules/.bin/yaml +0 -16
  178. package/core/k-cli/node_modules/.bin/yaml.cmd +0 -17
  179. package/core/k-cli/node_modules/.bin/yaml.ps1 +0 -28
  180. package/core/k-cli/node_modules/.package-lock.json +0 -23
  181. package/core/k-cli/node_modules/yaml/LICENSE +0 -13
  182. package/core/k-cli/node_modules/yaml/README.md +0 -172
  183. package/core/k-cli/node_modules/yaml/bin.mjs +0 -11
  184. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-collection.js +0 -88
  185. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-doc.js +0 -43
  186. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-node.js +0 -109
  187. package/core/k-cli/node_modules/yaml/browser/dist/compose/compose-scalar.js +0 -86
  188. package/core/k-cli/node_modules/yaml/browser/dist/compose/composer.js +0 -217
  189. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-block-map.js +0 -115
  190. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +0 -198
  191. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +0 -49
  192. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-end.js +0 -37
  193. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +0 -207
  194. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +0 -223
  195. package/core/k-cli/node_modules/yaml/browser/dist/compose/resolve-props.js +0 -146
  196. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-contains-newline.js +0 -34
  197. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +0 -26
  198. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +0 -15
  199. package/core/k-cli/node_modules/yaml/browser/dist/compose/util-map-includes.js +0 -13
  200. package/core/k-cli/node_modules/yaml/browser/dist/doc/Document.js +0 -335
  201. package/core/k-cli/node_modules/yaml/browser/dist/doc/anchors.js +0 -71
  202. package/core/k-cli/node_modules/yaml/browser/dist/doc/applyReviver.js +0 -55
  203. package/core/k-cli/node_modules/yaml/browser/dist/doc/createNode.js +0 -88
  204. package/core/k-cli/node_modules/yaml/browser/dist/doc/directives.js +0 -176
  205. package/core/k-cli/node_modules/yaml/browser/dist/errors.js +0 -57
  206. package/core/k-cli/node_modules/yaml/browser/dist/index.js +0 -17
  207. package/core/k-cli/node_modules/yaml/browser/dist/log.js +0 -11
  208. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Alias.js +0 -114
  209. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Collection.js +0 -147
  210. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Node.js +0 -38
  211. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Pair.js +0 -36
  212. package/core/k-cli/node_modules/yaml/browser/dist/nodes/Scalar.js +0 -24
  213. package/core/k-cli/node_modules/yaml/browser/dist/nodes/YAMLMap.js +0 -144
  214. package/core/k-cli/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +0 -113
  215. package/core/k-cli/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +0 -63
  216. package/core/k-cli/node_modules/yaml/browser/dist/nodes/identity.js +0 -36
  217. package/core/k-cli/node_modules/yaml/browser/dist/nodes/toJS.js +0 -37
  218. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst-scalar.js +0 -214
  219. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst-stringify.js +0 -61
  220. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst-visit.js +0 -97
  221. package/core/k-cli/node_modules/yaml/browser/dist/parse/cst.js +0 -98
  222. package/core/k-cli/node_modules/yaml/browser/dist/parse/lexer.js +0 -717
  223. package/core/k-cli/node_modules/yaml/browser/dist/parse/line-counter.js +0 -39
  224. package/core/k-cli/node_modules/yaml/browser/dist/parse/parser.js +0 -967
  225. package/core/k-cli/node_modules/yaml/browser/dist/public-api.js +0 -102
  226. package/core/k-cli/node_modules/yaml/browser/dist/schema/Schema.js +0 -37
  227. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/map.js +0 -17
  228. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/null.js +0 -15
  229. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/seq.js +0 -17
  230. package/core/k-cli/node_modules/yaml/browser/dist/schema/common/string.js +0 -14
  231. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/bool.js +0 -19
  232. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/float.js +0 -43
  233. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/int.js +0 -38
  234. package/core/k-cli/node_modules/yaml/browser/dist/schema/core/schema.js +0 -23
  235. package/core/k-cli/node_modules/yaml/browser/dist/schema/json/schema.js +0 -62
  236. package/core/k-cli/node_modules/yaml/browser/dist/schema/tags.js +0 -96
  237. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +0 -58
  238. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +0 -26
  239. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +0 -46
  240. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +0 -71
  241. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +0 -64
  242. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +0 -74
  243. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +0 -78
  244. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +0 -39
  245. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +0 -93
  246. package/core/k-cli/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +0 -101
  247. package/core/k-cli/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +0 -146
  248. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringify.js +0 -129
  249. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +0 -153
  250. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyComment.js +0 -20
  251. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +0 -85
  252. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +0 -24
  253. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyPair.js +0 -150
  254. package/core/k-cli/node_modules/yaml/browser/dist/stringify/stringifyString.js +0 -336
  255. package/core/k-cli/node_modules/yaml/browser/dist/util.js +0 -11
  256. package/core/k-cli/node_modules/yaml/browser/dist/visit.js +0 -233
  257. package/core/k-cli/node_modules/yaml/browser/index.js +0 -5
  258. package/core/k-cli/node_modules/yaml/browser/package.json +0 -3
  259. package/core/k-cli/node_modules/yaml/dist/cli.d.ts +0 -8
  260. package/core/k-cli/node_modules/yaml/dist/cli.mjs +0 -201
  261. package/core/k-cli/node_modules/yaml/dist/compose/compose-collection.d.ts +0 -11
  262. package/core/k-cli/node_modules/yaml/dist/compose/compose-collection.js +0 -90
  263. package/core/k-cli/node_modules/yaml/dist/compose/compose-doc.d.ts +0 -7
  264. package/core/k-cli/node_modules/yaml/dist/compose/compose-doc.js +0 -45
  265. package/core/k-cli/node_modules/yaml/dist/compose/compose-node.d.ts +0 -29
  266. package/core/k-cli/node_modules/yaml/dist/compose/compose-node.js +0 -112
  267. package/core/k-cli/node_modules/yaml/dist/compose/compose-scalar.d.ts +0 -5
  268. package/core/k-cli/node_modules/yaml/dist/compose/compose-scalar.js +0 -88
  269. package/core/k-cli/node_modules/yaml/dist/compose/composer.d.ts +0 -63
  270. package/core/k-cli/node_modules/yaml/dist/compose/composer.js +0 -222
  271. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-map.d.ts +0 -6
  272. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-map.js +0 -117
  273. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +0 -11
  274. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-scalar.js +0 -200
  275. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +0 -6
  276. package/core/k-cli/node_modules/yaml/dist/compose/resolve-block-seq.js +0 -51
  277. package/core/k-cli/node_modules/yaml/dist/compose/resolve-end.d.ts +0 -6
  278. package/core/k-cli/node_modules/yaml/dist/compose/resolve-end.js +0 -39
  279. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +0 -7
  280. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-collection.js +0 -209
  281. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +0 -10
  282. package/core/k-cli/node_modules/yaml/dist/compose/resolve-flow-scalar.js +0 -225
  283. package/core/k-cli/node_modules/yaml/dist/compose/resolve-props.d.ts +0 -23
  284. package/core/k-cli/node_modules/yaml/dist/compose/resolve-props.js +0 -148
  285. package/core/k-cli/node_modules/yaml/dist/compose/util-contains-newline.d.ts +0 -2
  286. package/core/k-cli/node_modules/yaml/dist/compose/util-contains-newline.js +0 -36
  287. package/core/k-cli/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +0 -2
  288. package/core/k-cli/node_modules/yaml/dist/compose/util-empty-scalar-position.js +0 -28
  289. package/core/k-cli/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +0 -3
  290. package/core/k-cli/node_modules/yaml/dist/compose/util-flow-indent-check.js +0 -17
  291. package/core/k-cli/node_modules/yaml/dist/compose/util-map-includes.d.ts +0 -4
  292. package/core/k-cli/node_modules/yaml/dist/compose/util-map-includes.js +0 -15
  293. package/core/k-cli/node_modules/yaml/dist/doc/Document.d.ts +0 -141
  294. package/core/k-cli/node_modules/yaml/dist/doc/Document.js +0 -337
  295. package/core/k-cli/node_modules/yaml/dist/doc/anchors.d.ts +0 -24
  296. package/core/k-cli/node_modules/yaml/dist/doc/anchors.js +0 -76
  297. package/core/k-cli/node_modules/yaml/dist/doc/applyReviver.d.ts +0 -9
  298. package/core/k-cli/node_modules/yaml/dist/doc/applyReviver.js +0 -57
  299. package/core/k-cli/node_modules/yaml/dist/doc/createNode.d.ts +0 -17
  300. package/core/k-cli/node_modules/yaml/dist/doc/createNode.js +0 -90
  301. package/core/k-cli/node_modules/yaml/dist/doc/directives.d.ts +0 -49
  302. package/core/k-cli/node_modules/yaml/dist/doc/directives.js +0 -178
  303. package/core/k-cli/node_modules/yaml/dist/errors.d.ts +0 -21
  304. package/core/k-cli/node_modules/yaml/dist/errors.js +0 -62
  305. package/core/k-cli/node_modules/yaml/dist/index.d.ts +0 -25
  306. package/core/k-cli/node_modules/yaml/dist/index.js +0 -50
  307. package/core/k-cli/node_modules/yaml/dist/log.d.ts +0 -3
  308. package/core/k-cli/node_modules/yaml/dist/log.js +0 -19
  309. package/core/k-cli/node_modules/yaml/dist/nodes/Alias.d.ts +0 -29
  310. package/core/k-cli/node_modules/yaml/dist/nodes/Alias.js +0 -116
  311. package/core/k-cli/node_modules/yaml/dist/nodes/Collection.d.ts +0 -73
  312. package/core/k-cli/node_modules/yaml/dist/nodes/Collection.js +0 -151
  313. package/core/k-cli/node_modules/yaml/dist/nodes/Node.d.ts +0 -53
  314. package/core/k-cli/node_modules/yaml/dist/nodes/Node.js +0 -40
  315. package/core/k-cli/node_modules/yaml/dist/nodes/Pair.d.ts +0 -22
  316. package/core/k-cli/node_modules/yaml/dist/nodes/Pair.js +0 -39
  317. package/core/k-cli/node_modules/yaml/dist/nodes/Scalar.d.ts +0 -43
  318. package/core/k-cli/node_modules/yaml/dist/nodes/Scalar.js +0 -27
  319. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLMap.d.ts +0 -53
  320. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLMap.js +0 -147
  321. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +0 -60
  322. package/core/k-cli/node_modules/yaml/dist/nodes/YAMLSeq.js +0 -115
  323. package/core/k-cli/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +0 -4
  324. package/core/k-cli/node_modules/yaml/dist/nodes/addPairToJSMap.js +0 -65
  325. package/core/k-cli/node_modules/yaml/dist/nodes/identity.d.ts +0 -23
  326. package/core/k-cli/node_modules/yaml/dist/nodes/identity.js +0 -53
  327. package/core/k-cli/node_modules/yaml/dist/nodes/toJS.d.ts +0 -29
  328. package/core/k-cli/node_modules/yaml/dist/nodes/toJS.js +0 -39
  329. package/core/k-cli/node_modules/yaml/dist/options.d.ts +0 -350
  330. package/core/k-cli/node_modules/yaml/dist/parse/cst-scalar.d.ts +0 -64
  331. package/core/k-cli/node_modules/yaml/dist/parse/cst-scalar.js +0 -218
  332. package/core/k-cli/node_modules/yaml/dist/parse/cst-stringify.d.ts +0 -8
  333. package/core/k-cli/node_modules/yaml/dist/parse/cst-stringify.js +0 -63
  334. package/core/k-cli/node_modules/yaml/dist/parse/cst-visit.d.ts +0 -39
  335. package/core/k-cli/node_modules/yaml/dist/parse/cst-visit.js +0 -99
  336. package/core/k-cli/node_modules/yaml/dist/parse/cst.d.ts +0 -109
  337. package/core/k-cli/node_modules/yaml/dist/parse/cst.js +0 -112
  338. package/core/k-cli/node_modules/yaml/dist/parse/lexer.d.ts +0 -87
  339. package/core/k-cli/node_modules/yaml/dist/parse/lexer.js +0 -719
  340. package/core/k-cli/node_modules/yaml/dist/parse/line-counter.d.ts +0 -22
  341. package/core/k-cli/node_modules/yaml/dist/parse/line-counter.js +0 -41
  342. package/core/k-cli/node_modules/yaml/dist/parse/parser.d.ts +0 -84
  343. package/core/k-cli/node_modules/yaml/dist/parse/parser.js +0 -972
  344. package/core/k-cli/node_modules/yaml/dist/public-api.d.ts +0 -44
  345. package/core/k-cli/node_modules/yaml/dist/public-api.js +0 -107
  346. package/core/k-cli/node_modules/yaml/dist/schema/Schema.d.ts +0 -17
  347. package/core/k-cli/node_modules/yaml/dist/schema/Schema.js +0 -39
  348. package/core/k-cli/node_modules/yaml/dist/schema/common/map.d.ts +0 -2
  349. package/core/k-cli/node_modules/yaml/dist/schema/common/map.js +0 -19
  350. package/core/k-cli/node_modules/yaml/dist/schema/common/null.d.ts +0 -4
  351. package/core/k-cli/node_modules/yaml/dist/schema/common/null.js +0 -17
  352. package/core/k-cli/node_modules/yaml/dist/schema/common/seq.d.ts +0 -2
  353. package/core/k-cli/node_modules/yaml/dist/schema/common/seq.js +0 -19
  354. package/core/k-cli/node_modules/yaml/dist/schema/common/string.d.ts +0 -2
  355. package/core/k-cli/node_modules/yaml/dist/schema/common/string.js +0 -16
  356. package/core/k-cli/node_modules/yaml/dist/schema/core/bool.d.ts +0 -4
  357. package/core/k-cli/node_modules/yaml/dist/schema/core/bool.js +0 -21
  358. package/core/k-cli/node_modules/yaml/dist/schema/core/float.d.ts +0 -4
  359. package/core/k-cli/node_modules/yaml/dist/schema/core/float.js +0 -47
  360. package/core/k-cli/node_modules/yaml/dist/schema/core/int.d.ts +0 -4
  361. package/core/k-cli/node_modules/yaml/dist/schema/core/int.js +0 -42
  362. package/core/k-cli/node_modules/yaml/dist/schema/core/schema.d.ts +0 -1
  363. package/core/k-cli/node_modules/yaml/dist/schema/core/schema.js +0 -25
  364. package/core/k-cli/node_modules/yaml/dist/schema/json/schema.d.ts +0 -2
  365. package/core/k-cli/node_modules/yaml/dist/schema/json/schema.js +0 -64
  366. package/core/k-cli/node_modules/yaml/dist/schema/json-schema.d.ts +0 -69
  367. package/core/k-cli/node_modules/yaml/dist/schema/tags.d.ts +0 -48
  368. package/core/k-cli/node_modules/yaml/dist/schema/tags.js +0 -99
  369. package/core/k-cli/node_modules/yaml/dist/schema/types.d.ts +0 -92
  370. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +0 -2
  371. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/binary.js +0 -70
  372. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +0 -7
  373. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/bool.js +0 -29
  374. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +0 -4
  375. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/float.js +0 -50
  376. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +0 -5
  377. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/int.js +0 -76
  378. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +0 -9
  379. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/merge.js +0 -68
  380. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +0 -22
  381. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/omap.js +0 -77
  382. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +0 -10
  383. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +0 -82
  384. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +0 -1
  385. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/schema.js +0 -41
  386. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +0 -28
  387. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/set.js +0 -96
  388. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +0 -6
  389. package/core/k-cli/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +0 -105
  390. package/core/k-cli/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +0 -34
  391. package/core/k-cli/node_modules/yaml/dist/stringify/foldFlowLines.js +0 -151
  392. package/core/k-cli/node_modules/yaml/dist/stringify/stringify.d.ts +0 -21
  393. package/core/k-cli/node_modules/yaml/dist/stringify/stringify.js +0 -132
  394. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +0 -17
  395. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyCollection.js +0 -155
  396. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyComment.d.ts +0 -10
  397. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyComment.js +0 -24
  398. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +0 -4
  399. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyDocument.js +0 -87
  400. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +0 -2
  401. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyNumber.js +0 -26
  402. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyPair.d.ts +0 -3
  403. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyPair.js +0 -152
  404. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyString.d.ts +0 -9
  405. package/core/k-cli/node_modules/yaml/dist/stringify/stringifyString.js +0 -338
  406. package/core/k-cli/node_modules/yaml/dist/test-events.d.ts +0 -4
  407. package/core/k-cli/node_modules/yaml/dist/test-events.js +0 -134
  408. package/core/k-cli/node_modules/yaml/dist/util.d.ts +0 -16
  409. package/core/k-cli/node_modules/yaml/dist/util.js +0 -28
  410. package/core/k-cli/node_modules/yaml/dist/visit.d.ts +0 -102
  411. package/core/k-cli/node_modules/yaml/dist/visit.js +0 -236
  412. package/core/k-cli/node_modules/yaml/package.json +0 -97
  413. package/core/k-cli/node_modules/yaml/util.js +0 -2
@@ -1,719 +0,0 @@
1
- 'use strict';
2
-
3
- var cst = require('./cst.js');
4
-
5
- /*
6
- START -> stream
7
-
8
- stream
9
- directive -> line-end -> stream
10
- indent + line-end -> stream
11
- [else] -> line-start
12
-
13
- line-end
14
- comment -> line-end
15
- newline -> .
16
- input-end -> END
17
-
18
- line-start
19
- doc-start -> doc
20
- doc-end -> stream
21
- [else] -> indent -> block-start
22
-
23
- block-start
24
- seq-item-start -> block-start
25
- explicit-key-start -> block-start
26
- map-value-start -> block-start
27
- [else] -> doc
28
-
29
- doc
30
- line-end -> line-start
31
- spaces -> doc
32
- anchor -> doc
33
- tag -> doc
34
- flow-start -> flow -> doc
35
- flow-end -> error -> doc
36
- seq-item-start -> error -> doc
37
- explicit-key-start -> error -> doc
38
- map-value-start -> doc
39
- alias -> doc
40
- quote-start -> quoted-scalar -> doc
41
- block-scalar-header -> line-end -> block-scalar(min) -> line-start
42
- [else] -> plain-scalar(false, min) -> doc
43
-
44
- flow
45
- line-end -> flow
46
- spaces -> flow
47
- anchor -> flow
48
- tag -> flow
49
- flow-start -> flow -> flow
50
- flow-end -> .
51
- seq-item-start -> error -> flow
52
- explicit-key-start -> flow
53
- map-value-start -> flow
54
- alias -> flow
55
- quote-start -> quoted-scalar -> flow
56
- comma -> flow
57
- [else] -> plain-scalar(true, 0) -> flow
58
-
59
- quoted-scalar
60
- quote-end -> .
61
- [else] -> quoted-scalar
62
-
63
- block-scalar(min)
64
- newline + peek(indent < min) -> .
65
- [else] -> block-scalar(min)
66
-
67
- plain-scalar(is-flow, min)
68
- scalar-end(is-flow) -> .
69
- peek(newline + (indent < min)) -> .
70
- [else] -> plain-scalar(min)
71
- */
72
- function isEmpty(ch) {
73
- switch (ch) {
74
- case undefined:
75
- case ' ':
76
- case '\n':
77
- case '\r':
78
- case '\t':
79
- return true;
80
- default:
81
- return false;
82
- }
83
- }
84
- const hexDigits = new Set('0123456789ABCDEFabcdef');
85
- const tagChars = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()");
86
- const flowIndicatorChars = new Set(',[]{}');
87
- const invalidAnchorChars = new Set(' ,[]{}\n\r\t');
88
- const isNotAnchorChar = (ch) => !ch || invalidAnchorChars.has(ch);
89
- /**
90
- * Splits an input string into lexical tokens, i.e. smaller strings that are
91
- * easily identifiable by `tokens.tokenType()`.
92
- *
93
- * Lexing starts always in a "stream" context. Incomplete input may be buffered
94
- * until a complete token can be emitted.
95
- *
96
- * In addition to slices of the original input, the following control characters
97
- * may also be emitted:
98
- *
99
- * - `\x02` (Start of Text): A document starts with the next token
100
- * - `\x18` (Cancel): Unexpected end of flow-mode (indicates an error)
101
- * - `\x1f` (Unit Separator): Next token is a scalar value
102
- * - `\u{FEFF}` (Byte order mark): Emitted separately outside documents
103
- */
104
- class Lexer {
105
- constructor() {
106
- /**
107
- * Flag indicating whether the end of the current buffer marks the end of
108
- * all input
109
- */
110
- this.atEnd = false;
111
- /**
112
- * Explicit indent set in block scalar header, as an offset from the current
113
- * minimum indent, so e.g. set to 1 from a header `|2+`. Set to -1 if not
114
- * explicitly set.
115
- */
116
- this.blockScalarIndent = -1;
117
- /**
118
- * Block scalars that include a + (keep) chomping indicator in their header
119
- * include trailing empty lines, which are otherwise excluded from the
120
- * scalar's contents.
121
- */
122
- this.blockScalarKeep = false;
123
- /** Current input */
124
- this.buffer = '';
125
- /**
126
- * Flag noting whether the map value indicator : can immediately follow this
127
- * node within a flow context.
128
- */
129
- this.flowKey = false;
130
- /** Count of surrounding flow collection levels. */
131
- this.flowLevel = 0;
132
- /**
133
- * Minimum level of indentation required for next lines to be parsed as a
134
- * part of the current scalar value.
135
- */
136
- this.indentNext = 0;
137
- /** Indentation level of the current line. */
138
- this.indentValue = 0;
139
- /** Position of the next \n character. */
140
- this.lineEndPos = null;
141
- /** Stores the state of the lexer if reaching the end of incpomplete input */
142
- this.next = null;
143
- /** A pointer to `buffer`; the current position of the lexer. */
144
- this.pos = 0;
145
- }
146
- /**
147
- * Generate YAML tokens from the `source` string. If `incomplete`,
148
- * a part of the last line may be left as a buffer for the next call.
149
- *
150
- * @returns A generator of lexical tokens
151
- */
152
- *lex(source, incomplete = false) {
153
- if (source) {
154
- if (typeof source !== 'string')
155
- throw TypeError('source is not a string');
156
- this.buffer = this.buffer ? this.buffer + source : source;
157
- this.lineEndPos = null;
158
- }
159
- this.atEnd = !incomplete;
160
- let next = this.next ?? 'stream';
161
- while (next && (incomplete || this.hasChars(1)))
162
- next = yield* this.parseNext(next);
163
- }
164
- atLineEnd() {
165
- let i = this.pos;
166
- let ch = this.buffer[i];
167
- while (ch === ' ' || ch === '\t')
168
- ch = this.buffer[++i];
169
- if (!ch || ch === '#' || ch === '\n')
170
- return true;
171
- if (ch === '\r')
172
- return this.buffer[i + 1] === '\n';
173
- return false;
174
- }
175
- charAt(n) {
176
- return this.buffer[this.pos + n];
177
- }
178
- continueScalar(offset) {
179
- let ch = this.buffer[offset];
180
- if (this.indentNext > 0) {
181
- let indent = 0;
182
- while (ch === ' ')
183
- ch = this.buffer[++indent + offset];
184
- if (ch === '\r') {
185
- const next = this.buffer[indent + offset + 1];
186
- if (next === '\n' || (!next && !this.atEnd))
187
- return offset + indent + 1;
188
- }
189
- return ch === '\n' || indent >= this.indentNext || (!ch && !this.atEnd)
190
- ? offset + indent
191
- : -1;
192
- }
193
- if (ch === '-' || ch === '.') {
194
- const dt = this.buffer.substr(offset, 3);
195
- if ((dt === '---' || dt === '...') && isEmpty(this.buffer[offset + 3]))
196
- return -1;
197
- }
198
- return offset;
199
- }
200
- getLine() {
201
- let end = this.lineEndPos;
202
- if (typeof end !== 'number' || (end !== -1 && end < this.pos)) {
203
- end = this.buffer.indexOf('\n', this.pos);
204
- this.lineEndPos = end;
205
- }
206
- if (end === -1)
207
- return this.atEnd ? this.buffer.substring(this.pos) : null;
208
- if (this.buffer[end - 1] === '\r')
209
- end -= 1;
210
- return this.buffer.substring(this.pos, end);
211
- }
212
- hasChars(n) {
213
- return this.pos + n <= this.buffer.length;
214
- }
215
- setNext(state) {
216
- this.buffer = this.buffer.substring(this.pos);
217
- this.pos = 0;
218
- this.lineEndPos = null;
219
- this.next = state;
220
- return null;
221
- }
222
- peek(n) {
223
- return this.buffer.substr(this.pos, n);
224
- }
225
- *parseNext(next) {
226
- switch (next) {
227
- case 'stream':
228
- return yield* this.parseStream();
229
- case 'line-start':
230
- return yield* this.parseLineStart();
231
- case 'block-start':
232
- return yield* this.parseBlockStart();
233
- case 'doc':
234
- return yield* this.parseDocument();
235
- case 'flow':
236
- return yield* this.parseFlowCollection();
237
- case 'quoted-scalar':
238
- return yield* this.parseQuotedScalar();
239
- case 'block-scalar':
240
- return yield* this.parseBlockScalar();
241
- case 'plain-scalar':
242
- return yield* this.parsePlainScalar();
243
- }
244
- }
245
- *parseStream() {
246
- let line = this.getLine();
247
- if (line === null)
248
- return this.setNext('stream');
249
- if (line[0] === cst.BOM) {
250
- yield* this.pushCount(1);
251
- line = line.substring(1);
252
- }
253
- if (line[0] === '%') {
254
- let dirEnd = line.length;
255
- let cs = line.indexOf('#');
256
- while (cs !== -1) {
257
- const ch = line[cs - 1];
258
- if (ch === ' ' || ch === '\t') {
259
- dirEnd = cs - 1;
260
- break;
261
- }
262
- else {
263
- cs = line.indexOf('#', cs + 1);
264
- }
265
- }
266
- while (true) {
267
- const ch = line[dirEnd - 1];
268
- if (ch === ' ' || ch === '\t')
269
- dirEnd -= 1;
270
- else
271
- break;
272
- }
273
- const n = (yield* this.pushCount(dirEnd)) + (yield* this.pushSpaces(true));
274
- yield* this.pushCount(line.length - n); // possible comment
275
- this.pushNewline();
276
- return 'stream';
277
- }
278
- if (this.atLineEnd()) {
279
- const sp = yield* this.pushSpaces(true);
280
- yield* this.pushCount(line.length - sp);
281
- yield* this.pushNewline();
282
- return 'stream';
283
- }
284
- yield cst.DOCUMENT;
285
- return yield* this.parseLineStart();
286
- }
287
- *parseLineStart() {
288
- const ch = this.charAt(0);
289
- if (!ch && !this.atEnd)
290
- return this.setNext('line-start');
291
- if (ch === '-' || ch === '.') {
292
- if (!this.atEnd && !this.hasChars(4))
293
- return this.setNext('line-start');
294
- const s = this.peek(3);
295
- if ((s === '---' || s === '...') && isEmpty(this.charAt(3))) {
296
- yield* this.pushCount(3);
297
- this.indentValue = 0;
298
- this.indentNext = 0;
299
- return s === '---' ? 'doc' : 'stream';
300
- }
301
- }
302
- this.indentValue = yield* this.pushSpaces(false);
303
- if (this.indentNext > this.indentValue && !isEmpty(this.charAt(1)))
304
- this.indentNext = this.indentValue;
305
- return yield* this.parseBlockStart();
306
- }
307
- *parseBlockStart() {
308
- const [ch0, ch1] = this.peek(2);
309
- if (!ch1 && !this.atEnd)
310
- return this.setNext('block-start');
311
- if ((ch0 === '-' || ch0 === '?' || ch0 === ':') && isEmpty(ch1)) {
312
- const n = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true));
313
- this.indentNext = this.indentValue + 1;
314
- this.indentValue += n;
315
- return yield* this.parseBlockStart();
316
- }
317
- return 'doc';
318
- }
319
- *parseDocument() {
320
- yield* this.pushSpaces(true);
321
- const line = this.getLine();
322
- if (line === null)
323
- return this.setNext('doc');
324
- let n = yield* this.pushIndicators();
325
- switch (line[n]) {
326
- case '#':
327
- yield* this.pushCount(line.length - n);
328
- // fallthrough
329
- case undefined:
330
- yield* this.pushNewline();
331
- return yield* this.parseLineStart();
332
- case '{':
333
- case '[':
334
- yield* this.pushCount(1);
335
- this.flowKey = false;
336
- this.flowLevel = 1;
337
- return 'flow';
338
- case '}':
339
- case ']':
340
- // this is an error
341
- yield* this.pushCount(1);
342
- return 'doc';
343
- case '*':
344
- yield* this.pushUntil(isNotAnchorChar);
345
- return 'doc';
346
- case '"':
347
- case "'":
348
- return yield* this.parseQuotedScalar();
349
- case '|':
350
- case '>':
351
- n += yield* this.parseBlockScalarHeader();
352
- n += yield* this.pushSpaces(true);
353
- yield* this.pushCount(line.length - n);
354
- yield* this.pushNewline();
355
- return yield* this.parseBlockScalar();
356
- default:
357
- return yield* this.parsePlainScalar();
358
- }
359
- }
360
- *parseFlowCollection() {
361
- let nl, sp;
362
- let indent = -1;
363
- do {
364
- nl = yield* this.pushNewline();
365
- if (nl > 0) {
366
- sp = yield* this.pushSpaces(false);
367
- this.indentValue = indent = sp;
368
- }
369
- else {
370
- sp = 0;
371
- }
372
- sp += yield* this.pushSpaces(true);
373
- } while (nl + sp > 0);
374
- const line = this.getLine();
375
- if (line === null)
376
- return this.setNext('flow');
377
- if ((indent !== -1 && indent < this.indentNext && line[0] !== '#') ||
378
- (indent === 0 &&
379
- (line.startsWith('---') || line.startsWith('...')) &&
380
- isEmpty(line[3]))) {
381
- // Allowing for the terminal ] or } at the same (rather than greater)
382
- // indent level as the initial [ or { is technically invalid, but
383
- // failing here would be surprising to users.
384
- const atFlowEndMarker = indent === this.indentNext - 1 &&
385
- this.flowLevel === 1 &&
386
- (line[0] === ']' || line[0] === '}');
387
- if (!atFlowEndMarker) {
388
- // this is an error
389
- this.flowLevel = 0;
390
- yield cst.FLOW_END;
391
- return yield* this.parseLineStart();
392
- }
393
- }
394
- let n = 0;
395
- while (line[n] === ',') {
396
- n += yield* this.pushCount(1);
397
- n += yield* this.pushSpaces(true);
398
- this.flowKey = false;
399
- }
400
- n += yield* this.pushIndicators();
401
- switch (line[n]) {
402
- case undefined:
403
- return 'flow';
404
- case '#':
405
- yield* this.pushCount(line.length - n);
406
- return 'flow';
407
- case '{':
408
- case '[':
409
- yield* this.pushCount(1);
410
- this.flowKey = false;
411
- this.flowLevel += 1;
412
- return 'flow';
413
- case '}':
414
- case ']':
415
- yield* this.pushCount(1);
416
- this.flowKey = true;
417
- this.flowLevel -= 1;
418
- return this.flowLevel ? 'flow' : 'doc';
419
- case '*':
420
- yield* this.pushUntil(isNotAnchorChar);
421
- return 'flow';
422
- case '"':
423
- case "'":
424
- this.flowKey = true;
425
- return yield* this.parseQuotedScalar();
426
- case ':': {
427
- const next = this.charAt(1);
428
- if (this.flowKey || isEmpty(next) || next === ',') {
429
- this.flowKey = false;
430
- yield* this.pushCount(1);
431
- yield* this.pushSpaces(true);
432
- return 'flow';
433
- }
434
- }
435
- // fallthrough
436
- default:
437
- this.flowKey = false;
438
- return yield* this.parsePlainScalar();
439
- }
440
- }
441
- *parseQuotedScalar() {
442
- const quote = this.charAt(0);
443
- let end = this.buffer.indexOf(quote, this.pos + 1);
444
- if (quote === "'") {
445
- while (end !== -1 && this.buffer[end + 1] === "'")
446
- end = this.buffer.indexOf("'", end + 2);
447
- }
448
- else {
449
- // double-quote
450
- while (end !== -1) {
451
- let n = 0;
452
- while (this.buffer[end - 1 - n] === '\\')
453
- n += 1;
454
- if (n % 2 === 0)
455
- break;
456
- end = this.buffer.indexOf('"', end + 1);
457
- }
458
- }
459
- // Only looking for newlines within the quotes
460
- const qb = this.buffer.substring(0, end);
461
- let nl = qb.indexOf('\n', this.pos);
462
- if (nl !== -1) {
463
- while (nl !== -1) {
464
- const cs = this.continueScalar(nl + 1);
465
- if (cs === -1)
466
- break;
467
- nl = qb.indexOf('\n', cs);
468
- }
469
- if (nl !== -1) {
470
- // this is an error caused by an unexpected unindent
471
- end = nl - (qb[nl - 1] === '\r' ? 2 : 1);
472
- }
473
- }
474
- if (end === -1) {
475
- if (!this.atEnd)
476
- return this.setNext('quoted-scalar');
477
- end = this.buffer.length;
478
- }
479
- yield* this.pushToIndex(end + 1, false);
480
- return this.flowLevel ? 'flow' : 'doc';
481
- }
482
- *parseBlockScalarHeader() {
483
- this.blockScalarIndent = -1;
484
- this.blockScalarKeep = false;
485
- let i = this.pos;
486
- while (true) {
487
- const ch = this.buffer[++i];
488
- if (ch === '+')
489
- this.blockScalarKeep = true;
490
- else if (ch > '0' && ch <= '9')
491
- this.blockScalarIndent = Number(ch) - 1;
492
- else if (ch !== '-')
493
- break;
494
- }
495
- return yield* this.pushUntil(ch => isEmpty(ch) || ch === '#');
496
- }
497
- *parseBlockScalar() {
498
- let nl = this.pos - 1; // may be -1 if this.pos === 0
499
- let indent = 0;
500
- let ch;
501
- loop: for (let i = this.pos; (ch = this.buffer[i]); ++i) {
502
- switch (ch) {
503
- case ' ':
504
- indent += 1;
505
- break;
506
- case '\n':
507
- nl = i;
508
- indent = 0;
509
- break;
510
- case '\r': {
511
- const next = this.buffer[i + 1];
512
- if (!next && !this.atEnd)
513
- return this.setNext('block-scalar');
514
- if (next === '\n')
515
- break;
516
- } // fallthrough
517
- default:
518
- break loop;
519
- }
520
- }
521
- if (!ch && !this.atEnd)
522
- return this.setNext('block-scalar');
523
- if (indent >= this.indentNext) {
524
- if (this.blockScalarIndent === -1)
525
- this.indentNext = indent;
526
- else {
527
- this.indentNext =
528
- this.blockScalarIndent + (this.indentNext === 0 ? 1 : this.indentNext);
529
- }
530
- do {
531
- const cs = this.continueScalar(nl + 1);
532
- if (cs === -1)
533
- break;
534
- nl = this.buffer.indexOf('\n', cs);
535
- } while (nl !== -1);
536
- if (nl === -1) {
537
- if (!this.atEnd)
538
- return this.setNext('block-scalar');
539
- nl = this.buffer.length;
540
- }
541
- }
542
- // Trailing insufficiently indented tabs are invalid.
543
- // To catch that during parsing, we include them in the block scalar value.
544
- let i = nl + 1;
545
- ch = this.buffer[i];
546
- while (ch === ' ')
547
- ch = this.buffer[++i];
548
- if (ch === '\t') {
549
- while (ch === '\t' || ch === ' ' || ch === '\r' || ch === '\n')
550
- ch = this.buffer[++i];
551
- nl = i - 1;
552
- }
553
- else if (!this.blockScalarKeep) {
554
- do {
555
- let i = nl - 1;
556
- let ch = this.buffer[i];
557
- if (ch === '\r')
558
- ch = this.buffer[--i];
559
- const lastChar = i; // Drop the line if last char not more indented
560
- while (ch === ' ')
561
- ch = this.buffer[--i];
562
- if (ch === '\n' && i >= this.pos && i + 1 + indent > lastChar)
563
- nl = i;
564
- else
565
- break;
566
- } while (true);
567
- }
568
- yield cst.SCALAR;
569
- yield* this.pushToIndex(nl + 1, true);
570
- return yield* this.parseLineStart();
571
- }
572
- *parsePlainScalar() {
573
- const inFlow = this.flowLevel > 0;
574
- let end = this.pos - 1;
575
- let i = this.pos - 1;
576
- let ch;
577
- while ((ch = this.buffer[++i])) {
578
- if (ch === ':') {
579
- const next = this.buffer[i + 1];
580
- if (isEmpty(next) || (inFlow && flowIndicatorChars.has(next)))
581
- break;
582
- end = i;
583
- }
584
- else if (isEmpty(ch)) {
585
- let next = this.buffer[i + 1];
586
- if (ch === '\r') {
587
- if (next === '\n') {
588
- i += 1;
589
- ch = '\n';
590
- next = this.buffer[i + 1];
591
- }
592
- else
593
- end = i;
594
- }
595
- if (next === '#' || (inFlow && flowIndicatorChars.has(next)))
596
- break;
597
- if (ch === '\n') {
598
- const cs = this.continueScalar(i + 1);
599
- if (cs === -1)
600
- break;
601
- i = Math.max(i, cs - 2); // to advance, but still account for ' #'
602
- }
603
- }
604
- else {
605
- if (inFlow && flowIndicatorChars.has(ch))
606
- break;
607
- end = i;
608
- }
609
- }
610
- if (!ch && !this.atEnd)
611
- return this.setNext('plain-scalar');
612
- yield cst.SCALAR;
613
- yield* this.pushToIndex(end + 1, true);
614
- return inFlow ? 'flow' : 'doc';
615
- }
616
- *pushCount(n) {
617
- if (n > 0) {
618
- yield this.buffer.substr(this.pos, n);
619
- this.pos += n;
620
- return n;
621
- }
622
- return 0;
623
- }
624
- *pushToIndex(i, allowEmpty) {
625
- const s = this.buffer.slice(this.pos, i);
626
- if (s) {
627
- yield s;
628
- this.pos += s.length;
629
- return s.length;
630
- }
631
- else if (allowEmpty)
632
- yield '';
633
- return 0;
634
- }
635
- *pushIndicators() {
636
- switch (this.charAt(0)) {
637
- case '!':
638
- return ((yield* this.pushTag()) +
639
- (yield* this.pushSpaces(true)) +
640
- (yield* this.pushIndicators()));
641
- case '&':
642
- return ((yield* this.pushUntil(isNotAnchorChar)) +
643
- (yield* this.pushSpaces(true)) +
644
- (yield* this.pushIndicators()));
645
- case '-': // this is an error
646
- case '?': // this is an error outside flow collections
647
- case ':': {
648
- const inFlow = this.flowLevel > 0;
649
- const ch1 = this.charAt(1);
650
- if (isEmpty(ch1) || (inFlow && flowIndicatorChars.has(ch1))) {
651
- if (!inFlow)
652
- this.indentNext = this.indentValue + 1;
653
- else if (this.flowKey)
654
- this.flowKey = false;
655
- return ((yield* this.pushCount(1)) +
656
- (yield* this.pushSpaces(true)) +
657
- (yield* this.pushIndicators()));
658
- }
659
- }
660
- }
661
- return 0;
662
- }
663
- *pushTag() {
664
- if (this.charAt(1) === '<') {
665
- let i = this.pos + 2;
666
- let ch = this.buffer[i];
667
- while (!isEmpty(ch) && ch !== '>')
668
- ch = this.buffer[++i];
669
- return yield* this.pushToIndex(ch === '>' ? i + 1 : i, false);
670
- }
671
- else {
672
- let i = this.pos + 1;
673
- let ch = this.buffer[i];
674
- while (ch) {
675
- if (tagChars.has(ch))
676
- ch = this.buffer[++i];
677
- else if (ch === '%' &&
678
- hexDigits.has(this.buffer[i + 1]) &&
679
- hexDigits.has(this.buffer[i + 2])) {
680
- ch = this.buffer[(i += 3)];
681
- }
682
- else
683
- break;
684
- }
685
- return yield* this.pushToIndex(i, false);
686
- }
687
- }
688
- *pushNewline() {
689
- const ch = this.buffer[this.pos];
690
- if (ch === '\n')
691
- return yield* this.pushCount(1);
692
- else if (ch === '\r' && this.charAt(1) === '\n')
693
- return yield* this.pushCount(2);
694
- else
695
- return 0;
696
- }
697
- *pushSpaces(allowTabs) {
698
- let i = this.pos - 1;
699
- let ch;
700
- do {
701
- ch = this.buffer[++i];
702
- } while (ch === ' ' || (allowTabs && ch === '\t'));
703
- const n = i - this.pos;
704
- if (n > 0) {
705
- yield this.buffer.substr(this.pos, n);
706
- this.pos = i;
707
- }
708
- return n;
709
- }
710
- *pushUntil(test) {
711
- let i = this.pos;
712
- let ch = this.buffer[i];
713
- while (!test(ch))
714
- ch = this.buffer[++i];
715
- return yield* this.pushToIndex(i, false);
716
- }
717
- }
718
-
719
- exports.Lexer = Lexer;