@zergai/ztc 0.5.0-beta.1 → 0.6.0-beta.1

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 (1166) hide show
  1. package/README.md +65 -46
  2. package/THIRD_PARTY_NOTICES.md +7 -2
  3. package/bin/zmux-darwin-arm64 +0 -0
  4. package/bin/ztc-audio-darwin-arm64 +0 -0
  5. package/bin/ztc-capture-darwin-arm64 +0 -0
  6. package/bin/ztc-computer-darwin-arm64 +0 -0
  7. package/bin/ztc-llm-darwin-arm64 +0 -0
  8. package/bin/ztc-tts-darwin-arm64 +0 -0
  9. package/bin/ztc-tui-darwin-arm64 +0 -0
  10. package/bin/zterm-darwin-arm64 +0 -0
  11. package/dist/App.js +26 -9
  12. package/dist/agent/agent.d.ts +77 -0
  13. package/dist/agent/agent.js +618 -94
  14. package/dist/agent/backends/account_login.js +3 -1
  15. package/dist/agent/backends/anthropic.js +4 -3
  16. package/dist/agent/backends/bedrock.d.ts +20 -0
  17. package/dist/agent/backends/bedrock.js +175 -0
  18. package/dist/agent/backends/claude_cli.js +8 -0
  19. package/dist/agent/backends/codex_app_server.js +2 -0
  20. package/dist/agent/backends/codex_auth.d.ts +5 -2
  21. package/dist/agent/backends/codex_auth.js +131 -31
  22. package/dist/agent/backends/gemini.js +1 -1
  23. package/dist/agent/backends/http_error.d.ts +2 -0
  24. package/dist/agent/backends/http_error.js +4 -0
  25. package/dist/agent/backends/index.d.ts +3 -0
  26. package/dist/agent/backends/index.js +16 -0
  27. package/dist/agent/backends/model_pool.d.ts +20 -0
  28. package/dist/agent/backends/model_pool.js +98 -0
  29. package/dist/agent/backends/openai.js +2 -0
  30. package/dist/agent/backends/openai_compatible.js +8 -3
  31. package/dist/agent/backends/openai_responses.d.ts +14 -3
  32. package/dist/agent/backends/openai_responses.js +91 -26
  33. package/dist/agent/backends/responses_reasoning.d.ts +5 -0
  34. package/dist/agent/backends/responses_reasoning.js +23 -0
  35. package/dist/agent/backends/transport_errors.d.ts +6 -0
  36. package/dist/agent/backends/transport_errors.js +11 -0
  37. package/dist/agent/backends/types.d.ts +25 -2
  38. package/dist/agent/backends/types.js +4 -0
  39. package/dist/agent/backends/zrouter_stream.d.ts +16 -0
  40. package/dist/agent/backends/zrouter_stream.js +162 -17
  41. package/dist/agent/background_workers.d.ts +68 -0
  42. package/dist/agent/background_workers.js +139 -0
  43. package/dist/agent/commands/accounts.d.ts +9 -1
  44. package/dist/agent/commands/accounts.js +13 -5
  45. package/dist/agent/commands/auth.d.ts +30 -1
  46. package/dist/agent/commands/auth.js +166 -35
  47. package/dist/agent/commands/command_refusal.d.ts +8 -0
  48. package/dist/agent/commands/command_refusal.js +8 -0
  49. package/dist/agent/commands/compact.js +16 -10
  50. package/dist/agent/commands/config.js +386 -80
  51. package/dist/agent/commands/connect.d.ts +20 -0
  52. package/dist/agent/commands/connect.js +150 -0
  53. package/dist/agent/commands/credential_redaction.d.ts +12 -0
  54. package/dist/agent/commands/credential_redaction.js +46 -0
  55. package/dist/agent/commands/credential_status.d.ts +72 -0
  56. package/dist/agent/commands/credential_status.js +181 -0
  57. package/dist/agent/commands/direct_credential_prompt.d.ts +71 -0
  58. package/dist/agent/commands/direct_credential_prompt.js +422 -0
  59. package/dist/agent/commands/effort.d.ts +1 -0
  60. package/dist/agent/commands/effort.js +16 -34
  61. package/dist/agent/commands/goal.d.ts +0 -4
  62. package/dist/agent/commands/goal.js +48 -10
  63. package/dist/agent/commands/handoff.d.ts +6 -0
  64. package/dist/agent/commands/handoff.js +17 -0
  65. package/dist/agent/commands/help.js +1 -1
  66. package/dist/agent/commands/inbox.js +3 -0
  67. package/dist/agent/commands/index.js +5 -3
  68. package/dist/agent/commands/keybindings.js +4 -3
  69. package/dist/agent/commands/mirror.js +29 -16
  70. package/dist/agent/commands/model.js +83 -4
  71. package/dist/agent/commands/models.d.ts +1 -1
  72. package/dist/agent/commands/models.js +89 -67
  73. package/dist/agent/commands/openai_compat_wizard.d.ts +3 -2
  74. package/dist/agent/commands/openai_compat_wizard.js +53 -15
  75. package/dist/agent/commands/provider_choices.d.ts +56 -0
  76. package/dist/agent/commands/provider_choices.js +72 -3
  77. package/dist/agent/commands/provider_model_defaults.d.ts +7 -0
  78. package/dist/agent/commands/provider_model_defaults.js +11 -0
  79. package/dist/agent/commands/provider_selection.d.ts +27 -2
  80. package/dist/agent/commands/provider_selection.js +143 -8
  81. package/dist/agent/commands/reasoning_page.d.ts +33 -0
  82. package/dist/agent/commands/reasoning_page.js +595 -0
  83. package/dist/agent/commands/reasoning_picker.d.ts +14 -0
  84. package/dist/agent/commands/reasoning_picker.js +99 -0
  85. package/dist/agent/commands/reasoning_settings.d.ts +18 -0
  86. package/dist/agent/commands/reasoning_settings.js +46 -0
  87. package/dist/agent/commands/settings.d.ts +2 -0
  88. package/dist/agent/commands/settings.js +689 -264
  89. package/dist/agent/commands/status.js +13 -44
  90. package/dist/agent/commands/types.d.ts +108 -2
  91. package/dist/agent/commands/update.d.ts +18 -0
  92. package/dist/agent/commands/update.js +55 -96
  93. package/dist/agent/completion_state.d.ts +18 -0
  94. package/dist/agent/completion_state.js +35 -3
  95. package/dist/agent/factory.d.ts +9 -1
  96. package/dist/agent/factory.js +61 -17
  97. package/dist/agent/loop_policy.d.ts +14 -0
  98. package/dist/agent/loop_policy.js +9 -0
  99. package/dist/agent/request_encoder.d.ts +6 -0
  100. package/dist/agent/request_encoder.js +36 -6
  101. package/dist/agent/result_emit_cap.d.ts +1 -0
  102. package/dist/agent/result_emit_cap.js +1 -0
  103. package/dist/agent/runaway_output.d.ts +32 -0
  104. package/dist/agent/runaway_output.js +80 -0
  105. package/dist/agent/runtime/command_execution_policy.d.ts +6 -0
  106. package/dist/agent/runtime/command_execution_policy.js +39 -0
  107. package/dist/agent/runtime/evidence.d.ts +17 -1
  108. package/dist/agent/runtime/evidence.js +58 -8
  109. package/dist/agent/runtime/execution_context.js +7 -3
  110. package/dist/agent/runtime/read_only_command.d.ts +15 -0
  111. package/dist/agent/runtime/read_only_command.js +265 -0
  112. package/dist/agent/runtime/recovery.js +2 -38
  113. package/dist/agent/runtime/source_verification.js +3 -1
  114. package/dist/agent/runtime/tool_checkpoints.js +5 -1
  115. package/dist/agent/runtime/tool_runtime.js +15 -1
  116. package/dist/agent/runtime/tool_scheduler.js +3 -1
  117. package/dist/agent/subagent.d.ts +4 -0
  118. package/dist/agent/subagent.js +195 -23
  119. package/dist/agent/system_prompt.d.ts +3 -1
  120. package/dist/agent/system_prompt.js +3 -1
  121. package/dist/agent/tool_response_store.d.ts +9 -0
  122. package/dist/agent/tool_response_store.js +39 -3
  123. package/dist/agent/tool_result_parsing.d.ts +2 -0
  124. package/dist/agent/tool_result_parsing.js +1 -0
  125. package/dist/agent/tool_result_presentation.d.ts +21 -0
  126. package/dist/agent/tool_result_presentation.js +237 -0
  127. package/dist/agent/tools/apply_patch.js +130 -42
  128. package/dist/agent/tools/deferred.js +22 -2
  129. package/dist/agent/tools/delegate.js +182 -49
  130. package/dist/agent/tools/edit_view.d.ts +13 -0
  131. package/dist/agent/tools/edit_view.js +134 -0
  132. package/dist/agent/tools/file.js +54 -16
  133. package/dist/agent/tools/recall_tool_response.d.ts +6 -0
  134. package/dist/agent/tools/recall_tool_response.js +60 -17
  135. package/dist/agent/tools/screenshot.js +5 -3
  136. package/dist/agent/tools/search.js +18 -9
  137. package/dist/agent/tools/shell.d.ts +1 -1
  138. package/dist/agent/tools/shell.js +48 -10
  139. package/dist/agent/tools/sim_domain_tools.js +7 -1
  140. package/dist/agent/tools/tool_groups.d.ts +34 -0
  141. package/dist/agent/tools/tool_groups.js +112 -0
  142. package/dist/agent/tools/types.d.ts +10 -0
  143. package/dist/app/activity.js +2 -1
  144. package/dist/app/agent_runner.js +13 -4
  145. package/dist/app/ask_user_response.d.ts +6 -0
  146. package/dist/app/ask_user_response.js +26 -0
  147. package/dist/app/command_context.js +11 -5
  148. package/dist/app/launch_notices.d.ts +10 -0
  149. package/dist/app/launch_notices.js +20 -0
  150. package/dist/app/selection_completion.d.ts +30 -1
  151. package/dist/app/selection_completion.js +191 -28
  152. package/dist/app/session_manager.d.ts +5 -0
  153. package/dist/app/session_manager.js +50 -12
  154. package/dist/app/session_messages.d.ts +3 -0
  155. package/dist/app/session_messages.js +34 -12
  156. package/dist/app/workspace_admission_details.d.ts +7 -0
  157. package/dist/app/workspace_admission_details.js +45 -1
  158. package/dist/cli_args.js +1 -1
  159. package/dist/cli_main.js +20 -3
  160. package/dist/cli_ratatui.d.ts +95 -3
  161. package/dist/cli_ratatui.js +654 -161
  162. package/dist/components/InputArea.js +1 -1
  163. package/dist/config/compaction.d.ts +2 -1
  164. package/dist/config/compaction.js +2 -1
  165. package/dist/config/defaults.js +20 -48
  166. package/dist/config/provider_api_key_env.d.ts +76 -0
  167. package/dist/config/provider_api_key_env.js +148 -0
  168. package/dist/config/resolved.d.ts +4 -4
  169. package/dist/config/types.d.ts +102 -1
  170. package/dist/config.d.ts +70 -8
  171. package/dist/config.js +253 -63
  172. package/dist/diagnostics/session_export.d.ts +1 -0
  173. package/dist/diagnostics/session_export.js +81 -13
  174. package/dist/emulation/catalog.d.ts +2 -0
  175. package/dist/emulation/catalog.js +50 -21
  176. package/dist/emulation/tool_adapters.d.ts +6 -0
  177. package/dist/emulation/tool_adapters.js +30 -0
  178. package/dist/emulation/ztc_addendum.d.ts +22 -0
  179. package/dist/emulation/ztc_addendum.js +37 -0
  180. package/dist/events.d.ts +3 -0
  181. package/dist/headless.d.ts +35 -1
  182. package/dist/headless.js +209 -14
  183. package/dist/headless_cli.js +6 -0
  184. package/dist/headless_cli_args.d.ts +4 -0
  185. package/dist/headless_cli_args.js +2 -0
  186. package/dist/headless_output_schema.d.ts +46 -0
  187. package/dist/headless_output_schema.js +386 -0
  188. package/dist/headless_trajectory.d.ts +44 -0
  189. package/dist/headless_trajectory.js +113 -0
  190. package/dist/library.d.ts +6 -3
  191. package/dist/library.js +8 -4
  192. package/dist/lsp/client.js +4 -1
  193. package/dist/lsp/servers.js +2 -0
  194. package/dist/onboarding/first_run.d.ts +26 -6
  195. package/dist/onboarding/first_run.js +63 -45
  196. package/dist/onboarding/router_tips.d.ts +7 -0
  197. package/dist/onboarding/router_tips.js +38 -0
  198. package/dist/onboarding/setup.js +1 -1
  199. package/dist/onboarding/wordmark.d.ts +7 -0
  200. package/dist/onboarding/wordmark.js +14 -0
  201. package/dist/onboarding/zergai_login.d.ts +48 -0
  202. package/dist/onboarding/zergai_login.js +60 -0
  203. package/dist/prompts/subagent_worker.j2 +20 -0
  204. package/dist/prompts/tool_delegate_task.j2 +5 -14
  205. package/dist/router_auth.d.ts +37 -3
  206. package/dist/router_auth.js +221 -73
  207. package/dist/runtime_info.d.ts +19 -6
  208. package/dist/runtime_info.js +64 -28
  209. package/dist/session.d.ts +9 -0
  210. package/dist/session.js +41 -8
  211. package/dist/session_handoff_contract.d.ts +13 -0
  212. package/dist/session_handoff_contract.js +81 -15
  213. package/dist/session_media.d.ts +5 -0
  214. package/dist/session_media.js +2 -1
  215. package/dist/simulation/domain_types.d.ts +3 -3
  216. package/dist/simulation/living/context.d.ts +9 -9
  217. package/dist/simulation/living/definition.d.ts +1 -1
  218. package/dist/simulation/living/open-world.d.ts +3 -3
  219. package/dist/simulation/living/recall.d.ts +1 -1
  220. package/dist/simulation/living/types.d.ts +18 -18
  221. package/dist/simulation/orchestration/world_response.d.ts +2 -2
  222. package/dist/simulation/toolkit/dynamic_meetings.d.ts +1 -1
  223. package/dist/simulation/toolkit/dynamic_state.d.ts +1 -1
  224. package/dist/simulation/world/bootstrap_schema.d.ts +1 -1
  225. package/dist/simulation/world/gm_schema.d.ts +8 -8
  226. package/dist/skills/loader.js +3 -1
  227. package/dist/types.d.ts +6 -2
  228. package/dist/ui/core/input.d.ts +5 -1
  229. package/dist/ui/core/input.js +5 -1
  230. package/dist/ui/core/input_segments.d.ts +5 -1
  231. package/dist/ui/core/input_segments.js +5 -3
  232. package/dist/ui/ratatui/headless_pane_manager.d.ts +3 -1
  233. package/dist/ui/ratatui/headless_pane_manager.js +16 -5
  234. package/dist/ui/ratatui/input.js +4 -3
  235. package/dist/ui/ratatui/process.js +22 -13
  236. package/dist/ui/ratatui/protocol.d.ts +14 -0
  237. package/dist/ui/ratatui/protocol.js +2 -0
  238. package/dist/ui/scrollback.d.ts +17 -0
  239. package/dist/ui/scrollback.js +138 -4
  240. package/dist/ui/terminal_image.d.ts +129 -0
  241. package/dist/ui/terminal_image.js +516 -0
  242. package/dist/ui/transcript_render_cache.d.ts +4 -4
  243. package/dist/ui/transcript_render_cache.js +7 -4
  244. package/dist/ui/views/app.d.ts +7 -3
  245. package/dist/ui/views/app.js +13 -6
  246. package/dist/ui/views/completion_menu.js +18 -10
  247. package/dist/ui/views/input_area.d.ts +1 -2
  248. package/dist/ui/views/input_area.js +2 -2
  249. package/dist/ui/views/message_list.d.ts +8 -1
  250. package/dist/ui/views/message_list.js +176 -45
  251. package/dist/ui/views/status_bar.js +7 -1
  252. package/dist/ui/views/theme.d.ts +2 -0
  253. package/dist/ui/views/theme.js +2 -0
  254. package/dist/ui/widgets/color_panel.js +4 -3
  255. package/dist/ui/widgets/form.d.ts +8 -1
  256. package/dist/ui/widgets/form.js +36 -22
  257. package/dist/ui/widgets/index.d.ts +1 -1
  258. package/dist/ui/widgets/index.js +1 -1
  259. package/dist/ui/widgets/log_view.js +4 -3
  260. package/dist/ui/widgets/navigator_panel.js +5 -4
  261. package/dist/ui/widgets/panel_frame.d.ts +2 -0
  262. package/dist/ui/widgets/panel_frame.js +14 -0
  263. package/dist/ui/widgets/prompt_viewer.js +2 -1
  264. package/dist/ui/widgets/questionnaire.js +3 -3
  265. package/dist/ui/widgets/reasoning_track.d.ts +60 -0
  266. package/dist/ui/widgets/reasoning_track.js +218 -0
  267. package/dist/ui/widgets/resume_panel.js +15 -10
  268. package/dist/ui/widgets/rewind_panel.js +4 -16
  269. package/dist/ui/widgets/select.d.ts +90 -4
  270. package/dist/ui/widgets/select.js +305 -135
  271. package/dist/ui/widgets/settings_panel.d.ts +21 -1
  272. package/dist/ui/widgets/settings_panel.js +266 -45
  273. package/dist/ui/widgets/status_line_panel.js +6 -5
  274. package/dist/ui/widgets/text_input.d.ts +4 -0
  275. package/dist/ui/widgets/text_input.js +20 -13
  276. package/dist/ui/widgets/types.d.ts +2 -0
  277. package/dist/utils/compaction.d.ts +24 -4
  278. package/dist/utils/compaction.js +228 -44
  279. package/dist/utils/context.js +1 -0
  280. package/dist/utils/debug_log.d.ts +12 -0
  281. package/dist/utils/debug_log.js +25 -3
  282. package/dist/utils/deepseek.d.ts +3 -1
  283. package/dist/utils/deepseek.js +29 -1
  284. package/dist/utils/docker_target.d.ts +28 -0
  285. package/dist/utils/docker_target.js +89 -0
  286. package/dist/utils/ephemeral.js +2 -0
  287. package/dist/utils/fireworks.d.ts +4 -4
  288. package/dist/utils/fireworks.js +11 -7
  289. package/dist/utils/idle_compaction.d.ts +32 -0
  290. package/dist/utils/idle_compaction.js +113 -0
  291. package/dist/utils/mid_turn_compaction.d.ts +12 -0
  292. package/dist/utils/mid_turn_compaction.js +17 -0
  293. package/dist/utils/open_url.d.ts +4 -0
  294. package/dist/utils/open_url.js +10 -0
  295. package/dist/utils/openrouter_prices.d.ts +165 -0
  296. package/dist/utils/openrouter_prices.js +313 -0
  297. package/dist/utils/router_catalog.d.ts +13 -0
  298. package/dist/utils/router_catalog.js +30 -3
  299. package/dist/utils/sandbox.d.ts +12 -0
  300. package/dist/utils/sandbox.js +23 -5
  301. package/dist/utils/session_interactivity.d.ts +21 -0
  302. package/dist/utils/session_interactivity.js +28 -0
  303. package/dist/utils/shell.d.ts +7 -0
  304. package/dist/utils/shell.js +43 -7
  305. package/dist/utils/subprocess_env.d.ts +27 -0
  306. package/dist/utils/subprocess_env.js +69 -3
  307. package/dist/utils/tool_output_copies.d.ts +44 -0
  308. package/dist/utils/tool_output_copies.js +196 -0
  309. package/dist/utils/tool_result_message.d.ts +7 -0
  310. package/dist/utils/tool_result_message.js +11 -0
  311. package/dist/utils/tool_trace.d.ts +15 -0
  312. package/dist/utils/tool_trace.js +40 -9
  313. package/dist/web/event_history_store.d.ts +2 -0
  314. package/dist/web/event_history_store.js +31 -6
  315. package/dist/web/mirror_client.d.ts +3 -0
  316. package/dist/web/mirror_stream.d.ts +11 -0
  317. package/dist/web/mirror_stream.js +23 -3
  318. package/dist/worker/executor.js +3 -1
  319. package/dist/worker/toolsets.d.ts +1 -1
  320. package/dist/worker/toolsets.js +4 -3
  321. package/dist/worker/types.d.ts +6 -0
  322. package/dist/worker/worker_models.d.ts +17 -0
  323. package/dist/worker/worker_models.js +79 -0
  324. package/dist/zlm-embed.mjs +53761 -10916
  325. package/node_modules/@zerg/model-contracts/README.md +16 -5
  326. package/node_modules/@zerg/model-contracts/index.d.ts +7 -3
  327. package/node_modules/@zerg/model-contracts/index.js +40 -18
  328. package/node_modules/abort-controller/LICENSE +21 -0
  329. package/node_modules/abort-controller/README.md +98 -0
  330. package/node_modules/abort-controller/browser.js +13 -0
  331. package/node_modules/abort-controller/browser.mjs +11 -0
  332. package/node_modules/abort-controller/dist/abort-controller.d.ts +43 -0
  333. package/node_modules/abort-controller/dist/abort-controller.js +127 -0
  334. package/node_modules/abort-controller/dist/abort-controller.js.map +1 -0
  335. package/node_modules/abort-controller/dist/abort-controller.mjs +118 -0
  336. package/node_modules/abort-controller/dist/abort-controller.mjs.map +1 -0
  337. package/node_modules/abort-controller/dist/abort-controller.umd.js +5 -0
  338. package/node_modules/abort-controller/dist/abort-controller.umd.js.map +1 -0
  339. package/node_modules/abort-controller/package.json +97 -0
  340. package/node_modules/abort-controller/polyfill.js +21 -0
  341. package/node_modules/abort-controller/polyfill.mjs +19 -0
  342. package/node_modules/bluebird/LICENSE +1 -1
  343. package/node_modules/bluebird/README.md +8 -2
  344. package/node_modules/bluebird/js/browser/bluebird.core.js +325 -150
  345. package/node_modules/bluebird/js/browser/bluebird.core.min.js +4 -4
  346. package/node_modules/bluebird/js/browser/bluebird.js +362 -165
  347. package/node_modules/bluebird/js/browser/bluebird.min.js +5 -5
  348. package/node_modules/bluebird/js/release/async.js +15 -56
  349. package/node_modules/bluebird/js/release/debuggability.js +118 -25
  350. package/node_modules/bluebird/js/release/finally.js +37 -2
  351. package/node_modules/bluebird/js/release/generators.js +1 -1
  352. package/node_modules/bluebird/js/release/join.js +4 -7
  353. package/node_modules/bluebird/js/release/map.js +10 -3
  354. package/node_modules/bluebird/js/release/promise.js +89 -43
  355. package/node_modules/bluebird/js/release/promise_array.js +2 -0
  356. package/node_modules/bluebird/js/release/props.js +1 -1
  357. package/node_modules/bluebird/js/release/reduce.js +16 -5
  358. package/node_modules/bluebird/js/release/schedule.js +6 -5
  359. package/node_modules/bluebird/js/release/settle.js +4 -0
  360. package/node_modules/bluebird/js/release/util.js +53 -11
  361. package/node_modules/bluebird/package.json +7 -5
  362. package/node_modules/buffer/AUTHORS.md +3 -0
  363. package/node_modules/buffer/README.md +1 -1
  364. package/node_modules/buffer/index.d.ts +11 -3
  365. package/node_modules/buffer/index.js +424 -135
  366. package/node_modules/buffer/package.json +8 -11
  367. package/node_modules/compress-commons/README.md +1 -1
  368. package/node_modules/compress-commons/lib/archivers/archive-entry.js +6 -16
  369. package/node_modules/compress-commons/lib/archivers/archive-output-stream.js +79 -98
  370. package/node_modules/compress-commons/lib/archivers/zip/constants.js +99 -70
  371. package/node_modules/compress-commons/lib/archivers/zip/general-purpose-bit.js +70 -92
  372. package/node_modules/compress-commons/lib/archivers/zip/unix-stat.js +19 -53
  373. package/node_modules/compress-commons/lib/archivers/zip/util.js +49 -49
  374. package/node_modules/compress-commons/lib/archivers/zip/zip-archive-entry.js +356 -389
  375. package/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js +335 -404
  376. package/node_modules/compress-commons/lib/compress-commons.js +18 -13
  377. package/node_modules/compress-commons/lib/util/index.js +11 -21
  378. package/node_modules/compress-commons/node_modules/readable-stream/README.md +116 -0
  379. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  380. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  381. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  382. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  383. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  384. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/shims/process.js +19 -0
  385. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  386. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  387. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  388. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  389. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  390. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  391. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  392. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  393. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  394. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/legacy.js +94 -0
  395. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  396. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  397. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  398. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  399. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  400. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  401. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  402. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  403. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/validators.js +530 -0
  404. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/browser.js +35 -0
  405. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/errors.js +343 -0
  406. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/index.js +65 -0
  407. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  408. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  409. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/util.js +148 -0
  410. package/node_modules/compress-commons/node_modules/readable-stream/lib/stream/promises.js +43 -0
  411. package/node_modules/compress-commons/node_modules/readable-stream/lib/stream.js +143 -0
  412. package/node_modules/compress-commons/node_modules/readable-stream/package.json +89 -0
  413. package/node_modules/compress-commons/package.json +13 -10
  414. package/node_modules/crc32-stream/README.md +8 -8
  415. package/node_modules/crc32-stream/lib/crc32-stream.js +4 -23
  416. package/node_modules/crc32-stream/lib/deflate-crc32-stream.js +5 -27
  417. package/node_modules/crc32-stream/lib/index.js +7 -6
  418. package/node_modules/crc32-stream/node_modules/readable-stream/README.md +116 -0
  419. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  420. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  421. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  422. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  423. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  424. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/shims/process.js +19 -0
  425. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  426. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  427. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  428. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  429. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  430. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  431. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  432. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  433. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  434. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/legacy.js +94 -0
  435. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  436. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  437. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  438. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  439. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  440. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  441. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  442. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  443. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/validators.js +530 -0
  444. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/browser.js +35 -0
  445. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/errors.js +343 -0
  446. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/index.js +65 -0
  447. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  448. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  449. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/util.js +148 -0
  450. package/node_modules/crc32-stream/node_modules/readable-stream/lib/stream/promises.js +43 -0
  451. package/node_modules/crc32-stream/node_modules/readable-stream/lib/stream.js +143 -0
  452. package/node_modules/crc32-stream/node_modules/readable-stream/package.json +89 -0
  453. package/node_modules/crc32-stream/package.json +9 -10
  454. package/node_modules/event-target-shim/LICENSE +22 -0
  455. package/node_modules/event-target-shim/README.md +293 -0
  456. package/node_modules/event-target-shim/dist/event-target-shim.js +871 -0
  457. package/node_modules/event-target-shim/dist/event-target-shim.js.map +1 -0
  458. package/node_modules/event-target-shim/dist/event-target-shim.mjs +862 -0
  459. package/node_modules/event-target-shim/dist/event-target-shim.mjs.map +1 -0
  460. package/node_modules/event-target-shim/dist/event-target-shim.umd.js +6 -0
  461. package/node_modules/event-target-shim/dist/event-target-shim.umd.js.map +1 -0
  462. package/node_modules/event-target-shim/index.d.ts +399 -0
  463. package/node_modules/event-target-shim/package.json +82 -0
  464. package/node_modules/events/.airtap.yml +15 -0
  465. package/node_modules/events/.github/FUNDING.yml +12 -0
  466. package/node_modules/events/.travis.yml +18 -0
  467. package/node_modules/events/History.md +118 -0
  468. package/node_modules/events/LICENSE +22 -0
  469. package/node_modules/events/Readme.md +50 -0
  470. package/node_modules/events/events.js +497 -0
  471. package/node_modules/events/package.json +37 -0
  472. package/node_modules/events/security.md +10 -0
  473. package/node_modules/events/tests/add-listeners.js +111 -0
  474. package/node_modules/events/tests/check-listener-leaks.js +101 -0
  475. package/node_modules/events/tests/common.js +104 -0
  476. package/node_modules/events/tests/errors.js +13 -0
  477. package/node_modules/events/tests/events-list.js +28 -0
  478. package/node_modules/events/tests/events-once.js +234 -0
  479. package/node_modules/events/tests/index.js +64 -0
  480. package/node_modules/events/tests/legacy-compat.js +16 -0
  481. package/node_modules/events/tests/listener-count.js +37 -0
  482. package/node_modules/events/tests/listeners-side-effects.js +56 -0
  483. package/node_modules/events/tests/listeners.js +168 -0
  484. package/node_modules/events/tests/max-listeners.js +47 -0
  485. package/node_modules/events/tests/method-names.js +35 -0
  486. package/node_modules/events/tests/modify-in-emit.js +90 -0
  487. package/node_modules/events/tests/num-args.js +60 -0
  488. package/node_modules/events/tests/once.js +83 -0
  489. package/node_modules/events/tests/prepend.js +31 -0
  490. package/node_modules/events/tests/remove-all-listeners.js +133 -0
  491. package/node_modules/events/tests/remove-listeners.js +212 -0
  492. package/node_modules/events/tests/set-max-listeners-side-effects.js +31 -0
  493. package/node_modules/events/tests/special-event-names.js +45 -0
  494. package/node_modules/events/tests/subclass.js +66 -0
  495. package/node_modules/events/tests/symbols.js +25 -0
  496. package/node_modules/exceljs/lib/stream/xlsx/workbook-reader.js +5 -1
  497. package/node_modules/exceljs/lib/stream/xlsx/workbook-writer.js +2 -2
  498. package/node_modules/exceljs/lib/utils/zip-archive.js +85 -0
  499. package/node_modules/exceljs/package.json +3 -3
  500. package/node_modules/fs-extra/LICENSE +15 -0
  501. package/node_modules/fs-extra/README.md +294 -0
  502. package/node_modules/fs-extra/lib/copy/copy-sync.js +171 -0
  503. package/node_modules/fs-extra/lib/copy/copy.js +182 -0
  504. package/node_modules/fs-extra/lib/copy/index.js +7 -0
  505. package/node_modules/fs-extra/lib/empty/index.js +39 -0
  506. package/node_modules/fs-extra/lib/ensure/file.js +66 -0
  507. package/node_modules/fs-extra/lib/ensure/index.js +23 -0
  508. package/node_modules/fs-extra/lib/ensure/link.js +64 -0
  509. package/node_modules/fs-extra/lib/ensure/symlink-paths.js +101 -0
  510. package/node_modules/fs-extra/lib/ensure/symlink-type.js +34 -0
  511. package/node_modules/fs-extra/lib/ensure/symlink.js +67 -0
  512. package/node_modules/fs-extra/lib/esm.mjs +68 -0
  513. package/node_modules/fs-extra/lib/fs/index.js +146 -0
  514. package/node_modules/fs-extra/lib/index.js +16 -0
  515. package/node_modules/fs-extra/lib/json/index.js +16 -0
  516. package/node_modules/fs-extra/lib/json/jsonfile.js +11 -0
  517. package/node_modules/fs-extra/lib/json/output-json-sync.js +12 -0
  518. package/node_modules/fs-extra/lib/json/output-json.js +12 -0
  519. package/node_modules/fs-extra/lib/mkdirs/index.js +14 -0
  520. package/node_modules/fs-extra/lib/mkdirs/make-dir.js +27 -0
  521. package/node_modules/fs-extra/lib/mkdirs/utils.js +21 -0
  522. package/node_modules/fs-extra/lib/move/index.js +7 -0
  523. package/node_modules/fs-extra/lib/move/move-sync.js +55 -0
  524. package/node_modules/fs-extra/lib/move/move.js +59 -0
  525. package/node_modules/fs-extra/lib/output-file/index.js +31 -0
  526. package/node_modules/fs-extra/lib/path-exists/index.js +12 -0
  527. package/node_modules/fs-extra/lib/remove/index.js +17 -0
  528. package/node_modules/fs-extra/lib/util/stat.js +159 -0
  529. package/node_modules/fs-extra/lib/util/utimes.js +36 -0
  530. package/node_modules/fs-extra/package.json +71 -0
  531. package/node_modules/is-stream/index.d.ts +90 -0
  532. package/node_modules/is-stream/index.js +37 -0
  533. package/node_modules/is-stream/license +9 -0
  534. package/node_modules/is-stream/package.json +48 -0
  535. package/node_modules/is-stream/readme.md +57 -0
  536. package/node_modules/jsonfile/LICENSE +15 -0
  537. package/node_modules/jsonfile/README.md +230 -0
  538. package/node_modules/jsonfile/index.js +88 -0
  539. package/node_modules/jsonfile/package.json +40 -0
  540. package/node_modules/jsonfile/utils.js +18 -0
  541. package/node_modules/node-int64/.npmignore +3 -0
  542. package/node_modules/node-int64/Int64.js +268 -0
  543. package/node_modules/node-int64/LICENSE +19 -0
  544. package/node_modules/node-int64/README.md +78 -0
  545. package/node_modules/node-int64/package.json +27 -0
  546. package/node_modules/node-int64/test.js +120 -0
  547. package/node_modules/process/.eslintrc +21 -0
  548. package/node_modules/process/LICENSE +22 -0
  549. package/node_modules/process/README.md +26 -0
  550. package/node_modules/process/browser.js +184 -0
  551. package/node_modules/process/index.js +2 -0
  552. package/node_modules/process/package.json +27 -0
  553. package/node_modules/process/test.js +199 -0
  554. package/node_modules/universalify/LICENSE +20 -0
  555. package/node_modules/universalify/README.md +76 -0
  556. package/node_modules/universalify/index.js +24 -0
  557. package/node_modules/universalify/package.json +34 -0
  558. package/node_modules/unzipper/README.md +206 -176
  559. package/node_modules/unzipper/eslint.config.mjs +29 -0
  560. package/node_modules/unzipper/lib/BufferStream.js +9 -15
  561. package/node_modules/unzipper/lib/Decrypt.js +58 -36
  562. package/node_modules/unzipper/lib/NoopStream.js +5 -10
  563. package/node_modules/unzipper/lib/Open/directory.js +140 -127
  564. package/node_modules/unzipper/lib/Open/index.js +72 -32
  565. package/node_modules/unzipper/lib/Open/unzip.js +68 -74
  566. package/node_modules/unzipper/lib/PullStream.js +50 -55
  567. package/node_modules/unzipper/lib/extract.js +26 -18
  568. package/node_modules/unzipper/lib/parse.js +119 -118
  569. package/node_modules/unzipper/lib/parseBuffer.js +55 -0
  570. package/node_modules/unzipper/lib/parseExtraField.js +17 -14
  571. package/node_modules/unzipper/lib/parseOne.js +23 -27
  572. package/node_modules/unzipper/package.json +12 -13
  573. package/node_modules/unzipper/unzip.js +0 -6
  574. package/node_modules/zip-stream/README.md +5 -5
  575. package/node_modules/zip-stream/index.js +143 -169
  576. package/node_modules/zip-stream/node_modules/readable-stream/README.md +116 -0
  577. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  578. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  579. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  580. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  581. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  582. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/shims/process.js +19 -0
  583. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  584. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  585. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  586. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  587. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  588. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  589. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  590. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  591. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  592. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/legacy.js +94 -0
  593. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  594. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  595. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  596. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  597. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  598. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  599. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  600. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  601. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/validators.js +530 -0
  602. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/browser.js +35 -0
  603. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/errors.js +343 -0
  604. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/index.js +65 -0
  605. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  606. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  607. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/util.js +148 -0
  608. package/node_modules/zip-stream/node_modules/readable-stream/lib/stream/promises.js +43 -0
  609. package/node_modules/zip-stream/node_modules/readable-stream/lib/stream.js +143 -0
  610. package/node_modules/zip-stream/node_modules/readable-stream/package.json +89 -0
  611. package/node_modules/zip-stream/package.json +15 -12
  612. package/node_modules/zip-stream/utils.js +21 -0
  613. package/package.json +22 -10
  614. package/packages/exceljs/PROVENANCE.md +24 -1
  615. package/packages/exceljs/lib/stream/xlsx/workbook-reader.js +5 -1
  616. package/packages/exceljs/lib/stream/xlsx/workbook-writer.js +2 -2
  617. package/packages/exceljs/lib/utils/zip-archive.js +85 -0
  618. package/packages/exceljs/package.json +3 -3
  619. package/packages/model-contracts/README.md +16 -5
  620. package/packages/model-contracts/index.d.ts +7 -3
  621. package/packages/model-contracts/index.js +40 -18
  622. package/scripts/install-macos-app.mjs +10 -1
  623. package/node_modules/archiver/LICENSE +0 -22
  624. package/node_modules/archiver/README.md +0 -94
  625. package/node_modules/archiver/index.js +0 -84
  626. package/node_modules/archiver/lib/core.js +0 -974
  627. package/node_modules/archiver/lib/error.js +0 -40
  628. package/node_modules/archiver/lib/plugins/json.js +0 -110
  629. package/node_modules/archiver/lib/plugins/tar.js +0 -167
  630. package/node_modules/archiver/lib/plugins/zip.js +0 -120
  631. package/node_modules/archiver/package.json +0 -60
  632. package/node_modules/archiver-utils/LICENSE +0 -22
  633. package/node_modules/archiver-utils/README.md +0 -7
  634. package/node_modules/archiver-utils/file.js +0 -209
  635. package/node_modules/archiver-utils/index.js +0 -156
  636. package/node_modules/archiver-utils/node_modules/readable-stream/.travis.yml +0 -34
  637. package/node_modules/archiver-utils/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  638. package/node_modules/archiver-utils/node_modules/readable-stream/GOVERNANCE.md +0 -136
  639. package/node_modules/archiver-utils/node_modules/readable-stream/README.md +0 -58
  640. package/node_modules/archiver-utils/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  641. package/node_modules/archiver-utils/node_modules/readable-stream/duplex-browser.js +0 -1
  642. package/node_modules/archiver-utils/node_modules/readable-stream/duplex.js +0 -1
  643. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  644. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  645. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  646. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  647. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_writable.js +0 -685
  648. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -78
  649. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -84
  650. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  651. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  652. package/node_modules/archiver-utils/node_modules/readable-stream/package.json +0 -52
  653. package/node_modules/archiver-utils/node_modules/readable-stream/passthrough.js +0 -1
  654. package/node_modules/archiver-utils/node_modules/readable-stream/readable-browser.js +0 -7
  655. package/node_modules/archiver-utils/node_modules/readable-stream/readable.js +0 -19
  656. package/node_modules/archiver-utils/node_modules/readable-stream/transform.js +0 -1
  657. package/node_modules/archiver-utils/node_modules/readable-stream/writable-browser.js +0 -1
  658. package/node_modules/archiver-utils/node_modules/readable-stream/writable.js +0 -8
  659. package/node_modules/archiver-utils/node_modules/safe-buffer/LICENSE +0 -21
  660. package/node_modules/archiver-utils/node_modules/safe-buffer/README.md +0 -584
  661. package/node_modules/archiver-utils/node_modules/safe-buffer/index.d.ts +0 -187
  662. package/node_modules/archiver-utils/node_modules/safe-buffer/index.js +0 -62
  663. package/node_modules/archiver-utils/node_modules/safe-buffer/package.json +0 -37
  664. package/node_modules/archiver-utils/node_modules/string_decoder/.travis.yml +0 -50
  665. package/node_modules/archiver-utils/node_modules/string_decoder/LICENSE +0 -48
  666. package/node_modules/archiver-utils/node_modules/string_decoder/README.md +0 -47
  667. package/node_modules/archiver-utils/node_modules/string_decoder/lib/string_decoder.js +0 -296
  668. package/node_modules/archiver-utils/node_modules/string_decoder/package.json +0 -31
  669. package/node_modules/archiver-utils/package.json +0 -54
  670. package/node_modules/async/CHANGELOG.md +0 -351
  671. package/node_modules/async/LICENSE +0 -19
  672. package/node_modules/async/README.md +0 -59
  673. package/node_modules/async/all.js +0 -119
  674. package/node_modules/async/allLimit.js +0 -46
  675. package/node_modules/async/allSeries.js +0 -45
  676. package/node_modules/async/any.js +0 -122
  677. package/node_modules/async/anyLimit.js +0 -47
  678. package/node_modules/async/anySeries.js +0 -46
  679. package/node_modules/async/apply.js +0 -11
  680. package/node_modules/async/applyEach.js +0 -57
  681. package/node_modules/async/applyEachSeries.js +0 -37
  682. package/node_modules/async/asyncify.js +0 -118
  683. package/node_modules/async/auto.js +0 -333
  684. package/node_modules/async/autoInject.js +0 -182
  685. package/node_modules/async/bower.json +0 -17
  686. package/node_modules/async/cargo.js +0 -63
  687. package/node_modules/async/cargoQueue.js +0 -71
  688. package/node_modules/async/compose.js +0 -55
  689. package/node_modules/async/concat.js +0 -115
  690. package/node_modules/async/concatLimit.js +0 -60
  691. package/node_modules/async/concatSeries.js +0 -41
  692. package/node_modules/async/constant.js +0 -14
  693. package/node_modules/async/detect.js +0 -96
  694. package/node_modules/async/detectLimit.js +0 -48
  695. package/node_modules/async/detectSeries.js +0 -47
  696. package/node_modules/async/dir.js +0 -43
  697. package/node_modules/async/dist/async.js +0 -6061
  698. package/node_modules/async/dist/async.min.js +0 -1
  699. package/node_modules/async/dist/async.mjs +0 -5948
  700. package/node_modules/async/doDuring.js +0 -68
  701. package/node_modules/async/doUntil.js +0 -46
  702. package/node_modules/async/doWhilst.js +0 -68
  703. package/node_modules/async/during.js +0 -78
  704. package/node_modules/async/each.js +0 -129
  705. package/node_modules/async/eachLimit.js +0 -50
  706. package/node_modules/async/eachOf.js +0 -185
  707. package/node_modules/async/eachOfLimit.js +0 -47
  708. package/node_modules/async/eachOfSeries.js +0 -39
  709. package/node_modules/async/eachSeries.js +0 -44
  710. package/node_modules/async/ensureAsync.js +0 -67
  711. package/node_modules/async/every.js +0 -119
  712. package/node_modules/async/everyLimit.js +0 -46
  713. package/node_modules/async/everySeries.js +0 -45
  714. package/node_modules/async/filter.js +0 -93
  715. package/node_modules/async/filterLimit.js +0 -45
  716. package/node_modules/async/filterSeries.js +0 -43
  717. package/node_modules/async/find.js +0 -96
  718. package/node_modules/async/findLimit.js +0 -48
  719. package/node_modules/async/findSeries.js +0 -47
  720. package/node_modules/async/flatMap.js +0 -115
  721. package/node_modules/async/flatMapLimit.js +0 -60
  722. package/node_modules/async/flatMapSeries.js +0 -41
  723. package/node_modules/async/foldl.js +0 -153
  724. package/node_modules/async/foldr.js +0 -41
  725. package/node_modules/async/forEach.js +0 -129
  726. package/node_modules/async/forEachLimit.js +0 -50
  727. package/node_modules/async/forEachOf.js +0 -185
  728. package/node_modules/async/forEachOfLimit.js +0 -47
  729. package/node_modules/async/forEachOfSeries.js +0 -39
  730. package/node_modules/async/forEachSeries.js +0 -44
  731. package/node_modules/async/forever.js +0 -68
  732. package/node_modules/async/groupBy.js +0 -108
  733. package/node_modules/async/groupByLimit.js +0 -71
  734. package/node_modules/async/groupBySeries.js +0 -36
  735. package/node_modules/async/index.js +0 -588
  736. package/node_modules/async/inject.js +0 -153
  737. package/node_modules/async/internal/DoublyLinkedList.js +0 -92
  738. package/node_modules/async/internal/Heap.js +0 -120
  739. package/node_modules/async/internal/applyEach.js +0 -29
  740. package/node_modules/async/internal/asyncEachOfLimit.js +0 -75
  741. package/node_modules/async/internal/awaitify.js +0 -28
  742. package/node_modules/async/internal/breakLoop.js +0 -10
  743. package/node_modules/async/internal/consoleFunc.js +0 -31
  744. package/node_modules/async/internal/createTester.js +0 -40
  745. package/node_modules/async/internal/eachOfLimit.js +0 -90
  746. package/node_modules/async/internal/filter.js +0 -55
  747. package/node_modules/async/internal/getIterator.js +0 -11
  748. package/node_modules/async/internal/initialParams.js +0 -14
  749. package/node_modules/async/internal/isArrayLike.js +0 -10
  750. package/node_modules/async/internal/iterator.js +0 -57
  751. package/node_modules/async/internal/map.js +0 -30
  752. package/node_modules/async/internal/once.js +0 -17
  753. package/node_modules/async/internal/onlyOnce.js +0 -15
  754. package/node_modules/async/internal/parallel.js +0 -34
  755. package/node_modules/async/internal/promiseCallback.js +0 -23
  756. package/node_modules/async/internal/queue.js +0 -294
  757. package/node_modules/async/internal/range.js +0 -14
  758. package/node_modules/async/internal/reject.js +0 -26
  759. package/node_modules/async/internal/setImmediate.js +0 -34
  760. package/node_modules/async/internal/withoutIndex.js +0 -10
  761. package/node_modules/async/internal/wrapAsync.js +0 -34
  762. package/node_modules/async/log.js +0 -41
  763. package/node_modules/async/map.js +0 -142
  764. package/node_modules/async/mapLimit.js +0 -45
  765. package/node_modules/async/mapSeries.js +0 -44
  766. package/node_modules/async/mapValues.js +0 -152
  767. package/node_modules/async/mapValuesLimit.js +0 -61
  768. package/node_modules/async/mapValuesSeries.js +0 -37
  769. package/node_modules/async/memoize.js +0 -91
  770. package/node_modules/async/nextTick.js +0 -52
  771. package/node_modules/async/package.json +0 -75
  772. package/node_modules/async/parallel.js +0 -180
  773. package/node_modules/async/parallelLimit.js +0 -41
  774. package/node_modules/async/priorityQueue.js +0 -60
  775. package/node_modules/async/queue.js +0 -24
  776. package/node_modules/async/race.js +0 -67
  777. package/node_modules/async/reduce.js +0 -153
  778. package/node_modules/async/reduceRight.js +0 -41
  779. package/node_modules/async/reflect.js +0 -78
  780. package/node_modules/async/reflectAll.js +0 -93
  781. package/node_modules/async/reject.js +0 -87
  782. package/node_modules/async/rejectLimit.js +0 -45
  783. package/node_modules/async/rejectSeries.js +0 -43
  784. package/node_modules/async/retry.js +0 -159
  785. package/node_modules/async/retryable.js +0 -77
  786. package/node_modules/async/select.js +0 -93
  787. package/node_modules/async/selectLimit.js +0 -45
  788. package/node_modules/async/selectSeries.js +0 -43
  789. package/node_modules/async/seq.js +0 -79
  790. package/node_modules/async/series.js +0 -186
  791. package/node_modules/async/setImmediate.js +0 -45
  792. package/node_modules/async/some.js +0 -122
  793. package/node_modules/async/someLimit.js +0 -47
  794. package/node_modules/async/someSeries.js +0 -46
  795. package/node_modules/async/sortBy.js +0 -190
  796. package/node_modules/async/timeout.js +0 -89
  797. package/node_modules/async/times.js +0 -50
  798. package/node_modules/async/timesLimit.js +0 -43
  799. package/node_modules/async/timesSeries.js +0 -32
  800. package/node_modules/async/transform.js +0 -173
  801. package/node_modules/async/tryEach.js +0 -78
  802. package/node_modules/async/unmemoize.js +0 -25
  803. package/node_modules/async/until.js +0 -61
  804. package/node_modules/async/waterfall.js +0 -105
  805. package/node_modules/async/whilst.js +0 -78
  806. package/node_modules/async/wrapSync.js +0 -118
  807. package/node_modules/big-integer/BigInteger.d.ts +0 -2393
  808. package/node_modules/big-integer/BigInteger.js +0 -1453
  809. package/node_modules/big-integer/BigInteger.min.js +0 -1
  810. package/node_modules/big-integer/LICENSE +0 -24
  811. package/node_modules/big-integer/README.md +0 -589
  812. package/node_modules/big-integer/bower.json +0 -29
  813. package/node_modules/big-integer/package.json +0 -48
  814. package/node_modules/big-integer/tsconfig.json +0 -24
  815. package/node_modules/binary/.npmignore +0 -1
  816. package/node_modules/binary/.travis.yml +0 -4
  817. package/node_modules/binary/README.markdown +0 -177
  818. package/node_modules/binary/example/buf.js +0 -11
  819. package/node_modules/binary/example/parse.js +0 -10
  820. package/node_modules/binary/example/stream.js +0 -12
  821. package/node_modules/binary/index.js +0 -397
  822. package/node_modules/binary/lib/vars.js +0 -28
  823. package/node_modules/binary/package.json +0 -38
  824. package/node_modules/binary/perf/loop.js +0 -92
  825. package/node_modules/binary/perf/small.js +0 -80
  826. package/node_modules/binary/test/bu.js +0 -46
  827. package/node_modules/binary/test/deferred.js +0 -20
  828. package/node_modules/binary/test/dots.js +0 -23
  829. package/node_modules/binary/test/eof.js +0 -41
  830. package/node_modules/binary/test/flush.js +0 -17
  831. package/node_modules/binary/test/from_buffer.js +0 -14
  832. package/node_modules/binary/test/get_buffer.js +0 -28
  833. package/node_modules/binary/test/immediate.js +0 -18
  834. package/node_modules/binary/test/interval.js +0 -38
  835. package/node_modules/binary/test/into_buffer.js +0 -35
  836. package/node_modules/binary/test/into_stream.js +0 -43
  837. package/node_modules/binary/test/loop.js +0 -44
  838. package/node_modules/binary/test/loop_scan.js +0 -54
  839. package/node_modules/binary/test/lu.js +0 -46
  840. package/node_modules/binary/test/negbs.js +0 -29
  841. package/node_modules/binary/test/negls.js +0 -29
  842. package/node_modules/binary/test/nested.js +0 -35
  843. package/node_modules/binary/test/not_enough_buf.js +0 -17
  844. package/node_modules/binary/test/not_enough_parse.js +0 -19
  845. package/node_modules/binary/test/parse.js +0 -54
  846. package/node_modules/binary/test/peek.js +0 -40
  847. package/node_modules/binary/test/pipe.js +0 -49
  848. package/node_modules/binary/test/posbs.js +0 -29
  849. package/node_modules/binary/test/posls.js +0 -29
  850. package/node_modules/binary/test/scan.js +0 -33
  851. package/node_modules/binary/test/scan_buf.js +0 -18
  852. package/node_modules/binary/test/scan_buf_null.js +0 -16
  853. package/node_modules/binary/test/skip.js +0 -58
  854. package/node_modules/binary/test/split.js +0 -34
  855. package/node_modules/bl/.travis.yml +0 -17
  856. package/node_modules/bl/BufferList.js +0 -396
  857. package/node_modules/bl/LICENSE.md +0 -13
  858. package/node_modules/bl/README.md +0 -247
  859. package/node_modules/bl/bl.js +0 -84
  860. package/node_modules/bl/package.json +0 -37
  861. package/node_modules/bl/test/convert.js +0 -21
  862. package/node_modules/bl/test/indexOf.js +0 -492
  863. package/node_modules/bl/test/isBufferList.js +0 -32
  864. package/node_modules/bl/test/test.js +0 -869
  865. package/node_modules/buffer-crc32/LICENSE +0 -19
  866. package/node_modules/buffer-crc32/README.md +0 -47
  867. package/node_modules/buffer-crc32/index.js +0 -111
  868. package/node_modules/buffer-crc32/package.json +0 -39
  869. package/node_modules/buffer-indexof-polyfill/.eslintrc +0 -33
  870. package/node_modules/buffer-indexof-polyfill/.travis.yml +0 -17
  871. package/node_modules/buffer-indexof-polyfill/LICENSE +0 -22
  872. package/node_modules/buffer-indexof-polyfill/README.md +0 -33
  873. package/node_modules/buffer-indexof-polyfill/index.js +0 -73
  874. package/node_modules/buffer-indexof-polyfill/init-buffer.js +0 -8
  875. package/node_modules/buffer-indexof-polyfill/package.json +0 -34
  876. package/node_modules/buffer-indexof-polyfill/test/indexof.js +0 -128
  877. package/node_modules/buffers/README.markdown +0 -122
  878. package/node_modules/buffers/examples/slice.js +0 -9
  879. package/node_modules/buffers/examples/splice.js +0 -17
  880. package/node_modules/buffers/index.js +0 -269
  881. package/node_modules/buffers/package.json +0 -14
  882. package/node_modules/buffers/test/buffers.js +0 -209
  883. package/node_modules/chainsaw/.npmignore +0 -1
  884. package/node_modules/chainsaw/README.markdown +0 -157
  885. package/node_modules/chainsaw/examples/add_do.js +0 -25
  886. package/node_modules/chainsaw/examples/prompt.js +0 -67
  887. package/node_modules/chainsaw/index.js +0 -145
  888. package/node_modules/chainsaw/package.json +0 -23
  889. package/node_modules/chainsaw/test/chainsaw.js +0 -418
  890. package/node_modules/concat-map/.travis.yml +0 -4
  891. package/node_modules/concat-map/LICENSE +0 -18
  892. package/node_modules/concat-map/README.markdown +0 -62
  893. package/node_modules/concat-map/example/map.js +0 -6
  894. package/node_modules/concat-map/index.js +0 -13
  895. package/node_modules/concat-map/package.json +0 -43
  896. package/node_modules/concat-map/test/map.js +0 -39
  897. package/node_modules/end-of-stream/LICENSE +0 -21
  898. package/node_modules/end-of-stream/README.md +0 -54
  899. package/node_modules/end-of-stream/index.js +0 -96
  900. package/node_modules/end-of-stream/package.json +0 -37
  901. package/node_modules/fs-constants/LICENSE +0 -21
  902. package/node_modules/fs-constants/README.md +0 -26
  903. package/node_modules/fs-constants/browser.js +0 -1
  904. package/node_modules/fs-constants/index.js +0 -1
  905. package/node_modules/fs-constants/package.json +0 -19
  906. package/node_modules/fs.realpath/LICENSE +0 -43
  907. package/node_modules/fs.realpath/README.md +0 -33
  908. package/node_modules/fs.realpath/index.js +0 -66
  909. package/node_modules/fs.realpath/old.js +0 -303
  910. package/node_modules/fs.realpath/package.json +0 -26
  911. package/node_modules/fstream/.travis.yml +0 -9
  912. package/node_modules/fstream/LICENSE +0 -15
  913. package/node_modules/fstream/README.md +0 -76
  914. package/node_modules/fstream/examples/filter-pipe.js +0 -134
  915. package/node_modules/fstream/examples/pipe.js +0 -118
  916. package/node_modules/fstream/examples/reader.js +0 -68
  917. package/node_modules/fstream/examples/symlink-write.js +0 -27
  918. package/node_modules/fstream/fstream.js +0 -35
  919. package/node_modules/fstream/lib/abstract.js +0 -85
  920. package/node_modules/fstream/lib/collect.js +0 -70
  921. package/node_modules/fstream/lib/dir-reader.js +0 -252
  922. package/node_modules/fstream/lib/dir-writer.js +0 -174
  923. package/node_modules/fstream/lib/file-reader.js +0 -150
  924. package/node_modules/fstream/lib/file-writer.js +0 -107
  925. package/node_modules/fstream/lib/get-type.js +0 -33
  926. package/node_modules/fstream/lib/link-reader.js +0 -53
  927. package/node_modules/fstream/lib/link-writer.js +0 -95
  928. package/node_modules/fstream/lib/proxy-reader.js +0 -95
  929. package/node_modules/fstream/lib/proxy-writer.js +0 -111
  930. package/node_modules/fstream/lib/reader.js +0 -255
  931. package/node_modules/fstream/lib/socket-reader.js +0 -36
  932. package/node_modules/fstream/lib/writer.js +0 -390
  933. package/node_modules/fstream/package.json +0 -28
  934. package/node_modules/glob/LICENSE +0 -21
  935. package/node_modules/glob/README.md +0 -378
  936. package/node_modules/glob/common.js +0 -238
  937. package/node_modules/glob/glob.js +0 -790
  938. package/node_modules/glob/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  939. package/node_modules/glob/node_modules/balanced-match/LICENSE.md +0 -21
  940. package/node_modules/glob/node_modules/balanced-match/README.md +0 -97
  941. package/node_modules/glob/node_modules/balanced-match/index.js +0 -62
  942. package/node_modules/glob/node_modules/balanced-match/package.json +0 -48
  943. package/node_modules/glob/node_modules/brace-expansion/LICENSE +0 -21
  944. package/node_modules/glob/node_modules/brace-expansion/README.md +0 -151
  945. package/node_modules/glob/node_modules/brace-expansion/index.js +0 -438
  946. package/node_modules/glob/node_modules/brace-expansion/package.json +0 -50
  947. package/node_modules/glob/node_modules/minimatch/LICENSE +0 -15
  948. package/node_modules/glob/node_modules/minimatch/README.md +0 -267
  949. package/node_modules/glob/node_modules/minimatch/minimatch.js +0 -1005
  950. package/node_modules/glob/node_modules/minimatch/package.json +0 -33
  951. package/node_modules/glob/package.json +0 -55
  952. package/node_modules/glob/sync.js +0 -486
  953. package/node_modules/inflight/LICENSE +0 -15
  954. package/node_modules/inflight/README.md +0 -37
  955. package/node_modules/inflight/inflight.js +0 -54
  956. package/node_modules/inflight/package.json +0 -29
  957. package/node_modules/lazystream/LICENSE +0 -23
  958. package/node_modules/lazystream/README.md +0 -114
  959. package/node_modules/lazystream/lib/lazystream.js +0 -54
  960. package/node_modules/lazystream/node_modules/readable-stream/.travis.yml +0 -34
  961. package/node_modules/lazystream/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  962. package/node_modules/lazystream/node_modules/readable-stream/GOVERNANCE.md +0 -136
  963. package/node_modules/lazystream/node_modules/readable-stream/README.md +0 -58
  964. package/node_modules/lazystream/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  965. package/node_modules/lazystream/node_modules/readable-stream/duplex-browser.js +0 -1
  966. package/node_modules/lazystream/node_modules/readable-stream/duplex.js +0 -1
  967. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  968. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  969. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  970. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  971. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_writable.js +0 -685
  972. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -78
  973. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -84
  974. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  975. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  976. package/node_modules/lazystream/node_modules/readable-stream/package.json +0 -52
  977. package/node_modules/lazystream/node_modules/readable-stream/passthrough.js +0 -1
  978. package/node_modules/lazystream/node_modules/readable-stream/readable-browser.js +0 -7
  979. package/node_modules/lazystream/node_modules/readable-stream/readable.js +0 -19
  980. package/node_modules/lazystream/node_modules/readable-stream/transform.js +0 -1
  981. package/node_modules/lazystream/node_modules/readable-stream/writable-browser.js +0 -1
  982. package/node_modules/lazystream/node_modules/readable-stream/writable.js +0 -8
  983. package/node_modules/lazystream/node_modules/safe-buffer/LICENSE +0 -21
  984. package/node_modules/lazystream/node_modules/safe-buffer/README.md +0 -584
  985. package/node_modules/lazystream/node_modules/safe-buffer/index.d.ts +0 -187
  986. package/node_modules/lazystream/node_modules/safe-buffer/index.js +0 -62
  987. package/node_modules/lazystream/node_modules/safe-buffer/package.json +0 -37
  988. package/node_modules/lazystream/node_modules/string_decoder/.travis.yml +0 -50
  989. package/node_modules/lazystream/node_modules/string_decoder/LICENSE +0 -48
  990. package/node_modules/lazystream/node_modules/string_decoder/README.md +0 -47
  991. package/node_modules/lazystream/node_modules/string_decoder/lib/string_decoder.js +0 -296
  992. package/node_modules/lazystream/node_modules/string_decoder/package.json +0 -31
  993. package/node_modules/lazystream/package.json +0 -46
  994. package/node_modules/lazystream/test/data.md +0 -13
  995. package/node_modules/lazystream/test/fs_test.js +0 -69
  996. package/node_modules/lazystream/test/helper.js +0 -39
  997. package/node_modules/lazystream/test/pipe_test.js +0 -36
  998. package/node_modules/lazystream/test/readable_test.js +0 -90
  999. package/node_modules/lazystream/test/writable_test.js +0 -59
  1000. package/node_modules/listenercount/.npmignore +0 -2
  1001. package/node_modules/listenercount/LICENSE.md +0 -5
  1002. package/node_modules/listenercount/README.md +0 -50
  1003. package/node_modules/listenercount/circle.yml +0 -6
  1004. package/node_modules/listenercount/index.js +0 -16
  1005. package/node_modules/listenercount/package.json +0 -27
  1006. package/node_modules/listenercount/test/test.js +0 -31
  1007. package/node_modules/lodash.defaults/LICENSE +0 -47
  1008. package/node_modules/lodash.defaults/README.md +0 -18
  1009. package/node_modules/lodash.defaults/index.js +0 -668
  1010. package/node_modules/lodash.defaults/package.json +0 -17
  1011. package/node_modules/lodash.difference/LICENSE +0 -47
  1012. package/node_modules/lodash.difference/README.md +0 -18
  1013. package/node_modules/lodash.difference/index.js +0 -1170
  1014. package/node_modules/lodash.difference/package.json +0 -17
  1015. package/node_modules/lodash.flatten/LICENSE +0 -47
  1016. package/node_modules/lodash.flatten/README.md +0 -18
  1017. package/node_modules/lodash.flatten/index.js +0 -349
  1018. package/node_modules/lodash.flatten/package.json +0 -17
  1019. package/node_modules/lodash.isplainobject/LICENSE +0 -47
  1020. package/node_modules/lodash.isplainobject/README.md +0 -18
  1021. package/node_modules/lodash.isplainobject/index.js +0 -139
  1022. package/node_modules/lodash.isplainobject/package.json +0 -17
  1023. package/node_modules/lodash.union/LICENSE +0 -47
  1024. package/node_modules/lodash.union/README.md +0 -18
  1025. package/node_modules/lodash.union/index.js +0 -1181
  1026. package/node_modules/lodash.union/package.json +0 -17
  1027. package/node_modules/minimist/.eslintrc +0 -29
  1028. package/node_modules/minimist/.github/FUNDING.yml +0 -12
  1029. package/node_modules/minimist/.nycrc +0 -14
  1030. package/node_modules/minimist/CHANGELOG.md +0 -298
  1031. package/node_modules/minimist/LICENSE +0 -18
  1032. package/node_modules/minimist/README.md +0 -121
  1033. package/node_modules/minimist/example/parse.js +0 -4
  1034. package/node_modules/minimist/index.js +0 -263
  1035. package/node_modules/minimist/package.json +0 -75
  1036. package/node_modules/minimist/test/all_bool.js +0 -34
  1037. package/node_modules/minimist/test/bool.js +0 -177
  1038. package/node_modules/minimist/test/dash.js +0 -43
  1039. package/node_modules/minimist/test/default_bool.js +0 -37
  1040. package/node_modules/minimist/test/dotted.js +0 -24
  1041. package/node_modules/minimist/test/kv_short.js +0 -32
  1042. package/node_modules/minimist/test/long.js +0 -33
  1043. package/node_modules/minimist/test/num.js +0 -38
  1044. package/node_modules/minimist/test/parse.js +0 -209
  1045. package/node_modules/minimist/test/parse_modified.js +0 -11
  1046. package/node_modules/minimist/test/proto.js +0 -64
  1047. package/node_modules/minimist/test/short.js +0 -69
  1048. package/node_modules/minimist/test/stop_early.js +0 -17
  1049. package/node_modules/minimist/test/unknown.js +0 -104
  1050. package/node_modules/minimist/test/whitespace.js +0 -10
  1051. package/node_modules/mkdirp/LICENSE +0 -21
  1052. package/node_modules/mkdirp/bin/cmd.js +0 -33
  1053. package/node_modules/mkdirp/bin/usage.txt +0 -12
  1054. package/node_modules/mkdirp/index.js +0 -102
  1055. package/node_modules/mkdirp/package.json +0 -33
  1056. package/node_modules/mkdirp/readme.markdown +0 -100
  1057. package/node_modules/once/LICENSE +0 -15
  1058. package/node_modules/once/README.md +0 -79
  1059. package/node_modules/once/once.js +0 -42
  1060. package/node_modules/once/package.json +0 -33
  1061. package/node_modules/path-is-absolute/index.js +0 -20
  1062. package/node_modules/path-is-absolute/license +0 -21
  1063. package/node_modules/path-is-absolute/package.json +0 -43
  1064. package/node_modules/path-is-absolute/readme.md +0 -59
  1065. package/node_modules/readdir-glob/LICENSE +0 -201
  1066. package/node_modules/readdir-glob/README.md +0 -85
  1067. package/node_modules/readdir-glob/index.js +0 -243
  1068. package/node_modules/readdir-glob/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  1069. package/node_modules/readdir-glob/node_modules/balanced-match/LICENSE.md +0 -21
  1070. package/node_modules/readdir-glob/node_modules/balanced-match/README.md +0 -97
  1071. package/node_modules/readdir-glob/node_modules/balanced-match/index.js +0 -62
  1072. package/node_modules/readdir-glob/node_modules/balanced-match/package.json +0 -48
  1073. package/node_modules/readdir-glob/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  1074. package/node_modules/readdir-glob/node_modules/brace-expansion/LICENSE +0 -21
  1075. package/node_modules/readdir-glob/node_modules/brace-expansion/README.md +0 -157
  1076. package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +0 -394
  1077. package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +0 -49
  1078. package/node_modules/readdir-glob/node_modules/minimatch/LICENSE +0 -15
  1079. package/node_modules/readdir-glob/node_modules/minimatch/README.md +0 -296
  1080. package/node_modules/readdir-glob/node_modules/minimatch/lib/path.js +0 -4
  1081. package/node_modules/readdir-glob/node_modules/minimatch/minimatch.js +0 -996
  1082. package/node_modules/readdir-glob/node_modules/minimatch/package.json +0 -35
  1083. package/node_modules/readdir-glob/package.json +0 -43
  1084. package/node_modules/rimraf/LICENSE +0 -15
  1085. package/node_modules/rimraf/README.md +0 -101
  1086. package/node_modules/rimraf/bin.js +0 -50
  1087. package/node_modules/rimraf/package.json +0 -29
  1088. package/node_modules/rimraf/rimraf.js +0 -372
  1089. package/node_modules/tar-stream/LICENSE +0 -21
  1090. package/node_modules/tar-stream/README.md +0 -168
  1091. package/node_modules/tar-stream/extract.js +0 -257
  1092. package/node_modules/tar-stream/headers.js +0 -295
  1093. package/node_modules/tar-stream/index.js +0 -2
  1094. package/node_modules/tar-stream/pack.js +0 -255
  1095. package/node_modules/tar-stream/package.json +0 -58
  1096. package/node_modules/tar-stream/sandbox.js +0 -11
  1097. package/node_modules/traverse/.npmignore +0 -1
  1098. package/node_modules/traverse/LICENSE +0 -24
  1099. package/node_modules/traverse/README.markdown +0 -247
  1100. package/node_modules/traverse/examples/json.js +0 -16
  1101. package/node_modules/traverse/examples/leaves.js +0 -15
  1102. package/node_modules/traverse/examples/negative.js +0 -8
  1103. package/node_modules/traverse/examples/stringify.js +0 -38
  1104. package/node_modules/traverse/index.js +0 -322
  1105. package/node_modules/traverse/package.json +0 -18
  1106. package/node_modules/traverse/test/circular.js +0 -114
  1107. package/node_modules/traverse/test/date.js +0 -35
  1108. package/node_modules/traverse/test/equal.js +0 -219
  1109. package/node_modules/traverse/test/instance.js +0 -17
  1110. package/node_modules/traverse/test/interface.js +0 -42
  1111. package/node_modules/traverse/test/json.js +0 -47
  1112. package/node_modules/traverse/test/leaves.js +0 -21
  1113. package/node_modules/traverse/test/mutability.js +0 -203
  1114. package/node_modules/traverse/test/negative.js +0 -20
  1115. package/node_modules/traverse/test/obj.js +0 -15
  1116. package/node_modules/traverse/test/stop.js +0 -41
  1117. package/node_modules/traverse/test/stringify.js +0 -36
  1118. package/node_modules/traverse/test/super_deep.js +0 -54
  1119. package/node_modules/unzipper/.circleci/config.yml +0 -13
  1120. package/node_modules/unzipper/.travis.yml +0 -21
  1121. package/node_modules/unzipper/lib/Buffer.js +0 -12
  1122. package/node_modules/unzipper/node_modules/readable-stream/.travis.yml +0 -34
  1123. package/node_modules/unzipper/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  1124. package/node_modules/unzipper/node_modules/readable-stream/GOVERNANCE.md +0 -136
  1125. package/node_modules/unzipper/node_modules/readable-stream/README.md +0 -58
  1126. package/node_modules/unzipper/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  1127. package/node_modules/unzipper/node_modules/readable-stream/duplex-browser.js +0 -1
  1128. package/node_modules/unzipper/node_modules/readable-stream/duplex.js +0 -1
  1129. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  1130. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  1131. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  1132. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  1133. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_writable.js +0 -685
  1134. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -78
  1135. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -84
  1136. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  1137. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  1138. package/node_modules/unzipper/node_modules/readable-stream/package.json +0 -52
  1139. package/node_modules/unzipper/node_modules/readable-stream/passthrough.js +0 -1
  1140. package/node_modules/unzipper/node_modules/readable-stream/readable-browser.js +0 -7
  1141. package/node_modules/unzipper/node_modules/readable-stream/readable.js +0 -19
  1142. package/node_modules/unzipper/node_modules/readable-stream/transform.js +0 -1
  1143. package/node_modules/unzipper/node_modules/readable-stream/writable-browser.js +0 -1
  1144. package/node_modules/unzipper/node_modules/readable-stream/writable.js +0 -8
  1145. package/node_modules/unzipper/node_modules/safe-buffer/LICENSE +0 -21
  1146. package/node_modules/unzipper/node_modules/safe-buffer/README.md +0 -584
  1147. package/node_modules/unzipper/node_modules/safe-buffer/index.d.ts +0 -187
  1148. package/node_modules/unzipper/node_modules/safe-buffer/index.js +0 -62
  1149. package/node_modules/unzipper/node_modules/safe-buffer/package.json +0 -37
  1150. package/node_modules/unzipper/node_modules/string_decoder/.travis.yml +0 -50
  1151. package/node_modules/unzipper/node_modules/string_decoder/LICENSE +0 -48
  1152. package/node_modules/unzipper/node_modules/string_decoder/README.md +0 -47
  1153. package/node_modules/unzipper/node_modules/string_decoder/lib/string_decoder.js +0 -296
  1154. package/node_modules/unzipper/node_modules/string_decoder/package.json +0 -31
  1155. package/node_modules/wrappy/LICENSE +0 -15
  1156. package/node_modules/wrappy/README.md +0 -36
  1157. package/node_modules/wrappy/package.json +0 -29
  1158. package/node_modules/wrappy/wrappy.js +0 -33
  1159. package/node_modules/zip-stream/node_modules/archiver-utils/LICENSE +0 -22
  1160. package/node_modules/zip-stream/node_modules/archiver-utils/README.md +0 -6
  1161. package/node_modules/zip-stream/node_modules/archiver-utils/file.js +0 -209
  1162. package/node_modules/zip-stream/node_modules/archiver-utils/index.js +0 -149
  1163. package/node_modules/zip-stream/node_modules/archiver-utils/package.json +0 -54
  1164. /package/node_modules/{archiver-utils → compress-commons}/node_modules/readable-stream/LICENSE +0 -0
  1165. /package/node_modules/{lazystream → crc32-stream}/node_modules/readable-stream/LICENSE +0 -0
  1166. /package/node_modules/{unzipper → zip-stream}/node_modules/readable-stream/LICENSE +0 -0
@@ -5,6 +5,25 @@
5
5
  */
6
6
  import { displayWidth } from '../core/text_width.js';
7
7
  import { wrapText } from '../core/wrap_text.js';
8
+ import { box, text } from '../core/index.js';
9
+ import { TERMINAL_THEME } from '../views/theme.js';
10
+ import { bottomBorder, framedLine, lineText, titleBorder } from './panel_frame.js';
11
+ import { isControlKey } from '../core/input.js';
12
+ import { ReasoningTrack } from './reasoning_track.js';
13
+ /** What a required select shows when it is typed into or escaped. */
14
+ export const REQUIRED_CHOICE_NUDGE = 'Choose one to continue';
15
+ /** Text typed or pasted, as opposed to a key that moves, confirms or edits. */
16
+ export function isTypedText(input, key) {
17
+ if (key.paste)
18
+ return input.length > 0;
19
+ return input.length > 0 && !/[\x00-\x1f\x7f]/.test(input)
20
+ && !(key.ctrl || key.meta || key.escape || key.return || key.tab || key.backspace || key.delete
21
+ || key.upArrow || key.downArrow || key.leftArrow || key.rightArrow || key.home || key.end || key.pageUp || key.pageDown);
22
+ }
23
+ /** The description a surface without per-row details shows, such as the ask_user fallback. */
24
+ export function selectOptionSummary(option) {
25
+ return [option.description, ...(option.details ?? [])].filter(part => part).join(' · ');
26
+ }
8
27
  export class SelectWidget {
9
28
  host;
10
29
  active = null;
@@ -12,10 +31,17 @@ export class SelectWidget {
12
31
  checked = new Set();
13
32
  otherMode = false;
14
33
  otherValue = '';
34
+ /** A required select was typed into or escaped, so its footer asks for a choice. */
35
+ nudged = false;
36
+ /** Text was typed into a required select since the last arrow; the next Enter ends it, not a choice. */
37
+ typing = false;
38
+ /** Set while a `layout: 'reasoning'` select is open; it draws and moves the effort track. */
39
+ track = null;
15
40
  /**
16
41
  * Columns the option gutter claims before the label: the `❯ `/` ` pointer
17
- * plus the state marker and its separator. Every body row (question, label,
18
- * description, Other hint) is indented by this, so the card has one left edge.
42
+ * plus the state marker and its separator. Descriptions, details and the
43
+ * Other hint start on this column, under the labels; the question starts at
44
+ * the box padding, under the pointer, as the site's film draws the select.
19
45
  */
20
46
  static labelColumn(type) {
21
47
  const marker = type === 'multiselect' ? '[✓]' : '○';
@@ -47,6 +73,19 @@ export class SelectWidget {
47
73
  this.checked.clear();
48
74
  this.otherMode = false;
49
75
  this.otherValue = '';
76
+ this.nudged = false;
77
+ this.typing = false;
78
+ this.track = data.layout === 'reasoning'
79
+ ? new ReasoningTrack(data.options, typeof data.defaultValue === 'string' ? data.defaultValue : undefined, data.resumeValue, data.routing?.value)
80
+ : null;
81
+ const track = this.track;
82
+ const prices = data.routing?.prices;
83
+ if (track && prices) {
84
+ track.setPrices('loading');
85
+ void prices.then(value => track.setPrices(value), () => track.setPrices(null))
86
+ .then(() => { if (this.track === track)
87
+ this.host.render(); });
88
+ }
50
89
  // Default to first selectable item
51
90
  this.selectedIndex = 0;
52
91
  for (let i = 0; i < data.options.length; i++) {
@@ -75,6 +114,7 @@ export class SelectWidget {
75
114
  }
76
115
  cancel() {
77
116
  this.active = null;
117
+ this.track = null;
78
118
  this.selectedIndex = 0;
79
119
  this.checked.clear();
80
120
  this.otherMode = false;
@@ -83,19 +123,61 @@ export class SelectWidget {
83
123
  isActive() {
84
124
  return this.active !== null;
85
125
  }
126
+ /**
127
+ * Handle one key. False when the select did not take it: a required select
128
+ * leaves Ctrl+C to the host.
129
+ */
86
130
  handleInput(input, key) {
87
131
  if (!this.active)
88
- return;
132
+ return false;
133
+ if (this.track) {
134
+ if (isControlKey(input, key, 'c') || key.escape)
135
+ this.dismiss();
136
+ else if (key.return) {
137
+ const routing = this.active.routing;
138
+ const route = this.track.routing();
139
+ if (routing && route !== undefined && route !== routing.value)
140
+ void routing.onChoose(route);
141
+ this.choose(this.track.value());
142
+ }
143
+ else if (isTypedText(input, key)) {
144
+ // Typing means the person has moved on: keep the setting and leave the key to the composer.
145
+ this.dismiss();
146
+ return false;
147
+ }
148
+ else if (this.track.handleKey(key))
149
+ this.host.render();
150
+ return true;
151
+ }
152
+ if (this.active.required && !this.otherMode) {
153
+ if (isControlKey(input, key, 'c'))
154
+ return false;
155
+ // Typing, editing it and Escape never close the choice. j/k are letters here.
156
+ const typed = isTypedText(input, key) || key.backspace || key.delete;
157
+ if (typed || key.escape) {
158
+ this.nudged = true;
159
+ if (typed)
160
+ this.typing = true;
161
+ this.host.render();
162
+ return true;
163
+ }
164
+ if (key.upArrow || key.downArrow)
165
+ this.typing = false;
166
+ if (key.return && this.typing) {
167
+ this.typing = false;
168
+ return true;
169
+ }
170
+ }
89
171
  if (key.paste) {
90
172
  if (!input)
91
- return;
173
+ return true;
92
174
  if (this.otherMode || (this.active.allowOther && this.active.type === 'select')) {
93
175
  this.otherMode = true;
94
176
  this.selectedIndex = this.active.options.length;
95
177
  this.otherValue += input;
96
178
  this.host.render();
97
179
  }
98
- return;
180
+ return true;
99
181
  }
100
182
  const options = this.active.options;
101
183
  const totalOptions = options.length + (this.active.allowOther ? 1 : 0);
@@ -106,7 +188,7 @@ export class SelectWidget {
106
188
  this.otherMode = false;
107
189
  this.otherValue = '';
108
190
  this.host.render();
109
- return;
191
+ return true;
110
192
  }
111
193
  // Enter to submit custom value
112
194
  if (key.return) {
@@ -119,30 +201,26 @@ export class SelectWidget {
119
201
  this.host.addSystemMessage(`Error: ${err.message}`);
120
202
  });
121
203
  }
122
- return;
204
+ return true;
123
205
  }
124
206
  // Backspace
125
207
  if (key.backspace || key.delete) {
126
208
  this.otherValue = this.otherValue.slice(0, -1);
127
209
  this.host.render();
128
- return;
210
+ return true;
129
211
  }
130
212
  // Regular character input
131
213
  if (input && input.length === 1 && !key.ctrl && !key.meta) {
132
214
  this.otherValue += input;
133
215
  this.host.render();
134
- return;
216
+ return true;
135
217
  }
136
- return;
218
+ return true;
137
219
  }
138
220
  // Ctrl+C or Escape to cancel
139
- if ((key.ctrl && input === 'c') || key.escape) {
140
- this.host.addSystemMessage('Cancelled.');
141
- const callback = this.active.callback;
142
- this.cancel();
143
- this.host.render();
144
- void Promise.resolve(callback(null)).catch(() => { });
145
- return;
221
+ if ((isControlKey(input, key, 'c')) || key.escape) {
222
+ this.dismiss();
223
+ return true;
146
224
  }
147
225
  // Navigate up — skip non-selectable items
148
226
  if (key.upArrow || input === 'k') {
@@ -152,7 +230,7 @@ export class SelectWidget {
152
230
  if (next >= 0)
153
231
  this.selectedIndex = next;
154
232
  this.host.render();
155
- return;
233
+ return true;
156
234
  }
157
235
  // Navigate down — skip non-selectable items
158
236
  if (key.downArrow || input === 'j') {
@@ -162,7 +240,7 @@ export class SelectWidget {
162
240
  if (next < totalOptions)
163
241
  this.selectedIndex = next;
164
242
  this.host.render();
165
- return;
243
+ return true;
166
244
  }
167
245
  // Secondary key actions (e.g. 'l' view logs, 'p' prompt viewer)
168
246
  if (this.active.secondaryActions && !key.ctrl && !key.meta && input && input.length === 1) {
@@ -173,7 +251,7 @@ export class SelectWidget {
173
251
  if (opt && !opt.value.startsWith('_')) {
174
252
  action.callback(idx, opt.value);
175
253
  }
176
- return;
254
+ return true;
177
255
  }
178
256
  }
179
257
  // Space to toggle (multiselect only)
@@ -188,13 +266,13 @@ export class SelectWidget {
188
266
  }
189
267
  this.host.render();
190
268
  }
191
- return;
269
+ return true;
192
270
  }
193
271
  // Enter to confirm selection
194
272
  if (key.return) {
195
273
  // Non-selectable rows (separators, headers) cannot be activated
196
274
  if (!this.isSelectable(this.selectedIndex) && !(this.active.allowOther && this.selectedIndex === options.length)) {
197
- return;
275
+ return true;
198
276
  }
199
277
  const callback = this.active.callback;
200
278
  const type = this.active.type;
@@ -203,16 +281,10 @@ export class SelectWidget {
203
281
  if (this.active.allowOther && idx === options.length) {
204
282
  this.otherMode = true;
205
283
  this.host.render();
206
- return;
284
+ return true;
207
285
  }
208
286
  if (type === 'select') {
209
- // Single select - return the value
210
- const value = options[idx]?.value || '';
211
- this.cancel();
212
- this.host.render();
213
- void Promise.resolve(callback(value)).catch((err) => {
214
- this.host.addSystemMessage(`Error: ${err.message}`);
215
- });
287
+ this.choose(options[idx]?.value || '');
216
288
  }
217
289
  else {
218
290
  // Multiselect - return array of checked values
@@ -225,7 +297,7 @@ export class SelectWidget {
225
297
  this.host.addSystemMessage(`Error: ${err.message}`);
226
298
  });
227
299
  }
228
- return;
300
+ return true;
229
301
  }
230
302
  // Quick-start typing: if the widget allows an "Other..." value,
231
303
  // pressing any printable character auto-selects Other and drops the
@@ -263,135 +335,233 @@ export class SelectWidget {
263
335
  this.otherValue = input;
264
336
  this.selectedIndex = options.length;
265
337
  this.host.render();
266
- return;
338
+ return true;
267
339
  }
340
+ return true;
341
+ }
342
+ /** Close with a choice and hand it to the caller. */
343
+ choose(value) {
344
+ const callback = this.active.callback;
345
+ this.cancel();
346
+ this.host.render();
347
+ void Promise.resolve(callback(value)).catch((err) => {
348
+ this.host.addSystemMessage(`Error: ${err.message}`);
349
+ });
268
350
  }
269
- buildContent(cols) {
351
+ /** Close without a choice; the caller hears null. */
352
+ dismiss() {
353
+ if (!this.active.silentCancel)
354
+ this.host.addSystemMessage('Cancelled.');
355
+ const callback = this.active.callback;
356
+ this.cancel();
357
+ this.host.render();
358
+ void Promise.resolve(callback(null)).catch(() => { });
359
+ }
360
+ /** An open select its caller asked to draw compact (SelectData.compact). */
361
+ isCompact() {
362
+ return this.active?.compact === true;
363
+ }
364
+ /** An open select that must end in a choice (SelectData.required). */
365
+ isRequired() {
366
+ return this.active?.required === true;
367
+ }
368
+ /** The select as framed plain text, the rows the layout measures. See buildSurface. */
369
+ buildContent(cols, rows) {
370
+ return this.buildSurface(cols, rows).content;
371
+ }
372
+ /**
373
+ * The select as the renderer paints it, and as the plain text the layout
374
+ * measures. It reads as the site's First Contact film draws it: the title in
375
+ * the accent on the border, the question at the box padding, the highlighted
376
+ * option's pointer and radio in the accent with its label bright, the others
377
+ * muted, the description muted, details after teal squares, and the key hints
378
+ * muted right under the options. With `rows`, it fits in that many rows: the
379
+ * borders, the key hints and every option label stay, and the highlighted
380
+ * option's details are trimmed first (see fitEntries).
381
+ */
382
+ buildSurface(cols, rows) {
270
383
  if (!this.active)
271
- return '';
384
+ return { content: '', view: box([], {}) };
385
+ if (this.track)
386
+ return surfaceOf(this.track.lines(cols, this.active.title, this.active.question, this.active.footer));
272
387
  const { title, question, type, options, allowOther } = this.active;
273
- const lines = [];
274
388
  const width = Math.min(Math.max(cols - 4, 40), 72);
275
- // `pad` sizes to the full interior by default. Rows that carry a leading
276
- // gutter pass an explicit width so the indent does not eat into the text
277
- // budget (which would clip a line that still had room).
278
- const pad = (s, w = width - 4) => {
279
- if (displayWidth(s) > w) {
280
- // Slice on visible width, not code units: the gutter holds wide glyphs
281
- // (❯, ○, [✓]) and a code-unit slice would cut them in half.
282
- let clipped = '';
283
- for (const ch of s) {
284
- if (displayWidth(clipped + ch) > w - 1)
285
- break;
286
- clipped += ch;
287
- }
288
- return clipped + '…';
289
- }
290
- return s + ' '.repeat(Math.max(0, w - displayWidth(s)));
291
- };
292
- // Top border with title
293
- const titlePart = title ? ` ${title} ` : '';
294
- // Body rows reserve 4 fixed cells ('│ ' + ' │'). The title border reserves
295
- // only 3 ('╭─' + '╮'), so it was drawn one column short of every other row
296
- // and the right edge did not line up. Fill to the same interior width.
297
- const titleFill = Math.max(0, width - 3 - displayWidth(titlePart));
298
- const topLine = '╭─' + titlePart + '─'.repeat(titleFill) + '╮';
299
- lines.push(topLine);
389
+ const interior = width - 4;
390
+ const lines = [titleBorder(width, title)];
391
+ const framed = (segments) => framedLine(segments, width);
392
+ const blank = () => framed([]);
300
393
  // Keep explicit metadata rows and wrap long path tokens at visible cells.
301
- const maxQWidth = width - 4;
302
- const questionGutter = SelectWidget.labelColumn(type);
303
- const innerQ = Math.max(1, maxQWidth - displayWidth(questionGutter));
304
- for (const line of wrapText(question, innerQ)) {
305
- lines.push('│ ' + pad(questionGutter + line, maxQWidth) + ' │');
306
- }
307
- lines.push('│' + ' '.repeat(width - 2) + '│');
394
+ for (const line of wrapText(question, interior))
395
+ lines.push(framed([{ text: line, style: STYLE.question }]));
308
396
  // If in "Other" text input mode
309
397
  if (this.otherMode) {
310
- lines.push('│ ' + pad('Enter custom value:') + ' │');
311
- const cursor = '█';
312
- const fullInput = ` ${this.otherValue}${cursor}`;
398
+ lines.push(blank());
399
+ lines.push(framed([{ text: 'Enter custom value:', style: STYLE.question }]));
400
+ const fullInput = ` ${this.otherValue}█`;
313
401
  // Word-wrap the input text instead of truncating
314
402
  const maxInputWidth = width - 6; // borders + padding
315
- if (fullInput.length <= maxInputWidth) {
316
- lines.push('│ ' + pad(fullInput) + ' │');
317
- }
318
- else {
319
- // Wrap at maxInputWidth boundaries
320
- for (let pos = 0; pos < fullInput.length; pos += maxInputWidth) {
321
- const chunk = fullInput.slice(pos, pos + maxInputWidth);
322
- lines.push('│ ' + pad(chunk) + ' │');
323
- }
403
+ for (let pos = 0; pos < fullInput.length; pos += maxInputWidth) {
404
+ lines.push(framed([{ text: fullInput.slice(pos, pos + maxInputWidth), style: STYLE.label }]));
324
405
  }
325
- lines.push('│' + ' '.repeat(width - 2) + '│');
326
- lines.push('├' + '─'.repeat(width - 2) + '┤');
327
- lines.push('│ ' + pad('Enter: confirm • Esc: back') + ' │');
328
- lines.push('╰' + '─'.repeat(width - 2) + '╯');
329
- return lines.join('\n');
406
+ lines.push(blank());
407
+ lines.push(framed([{ text: 'Enter: confirm • Esc: back', style: STYLE.hints }]));
408
+ lines.push(bottomBorder(width));
409
+ return surfaceOf(lines);
330
410
  }
331
- // Options
411
+ // One entry per option row (and header). Only the highlighted entry
412
+ // carries its description and details, as rows of their own.
413
+ const indent = SelectWidget.labelColumn(type);
414
+ const entries = [];
415
+ const describe = (description) => wrapText(description, Math.max(1, interior - displayWidth(indent)))
416
+ .map(line => [{ text: indent }, { text: line, style: STYLE.description }]);
332
417
  for (let i = 0; i < options.length; i++) {
333
418
  const opt = options[i];
334
- const isNonSelectable = opt.value.startsWith('_');
335
419
  const isSelected = i === this.selectedIndex;
336
- if (isNonSelectable) {
420
+ if (opt.value.startsWith('_')) {
337
421
  // Separator / header row — render as plain text, no pointer or radio
338
- lines.push('│ ' + pad(opt.label) + ' │');
422
+ entries.push({ label: [{ text: opt.label, style: STYLE.note }], description: [], details: [] });
339
423
  continue;
340
424
  }
341
- const pointer = isSelected ? '❯ ' : ' ';
342
- if (type === 'select') {
343
- const radio = isSelected ? '●' : '○';
344
- const labelLine = `${pointer}${radio} ${opt.label}`;
345
- lines.push('│ ' + pad(labelLine) + ' │');
346
- }
347
- else {
348
- const checked = this.checked.has(i);
349
- const checkbox = checked ? '[✓]' : '[ ]';
350
- const labelLine = `${pointer}${checkbox} ${opt.label}`;
351
- lines.push('│ ' + pad(labelLine) + ' │');
352
- }
353
- // Description (if selected and has description) - word-wrap instead of truncate
354
- if (isSelected && opt.description) {
355
- const indent = SelectWidget.labelColumn(type);
356
- const maxDescWidth = width - 3 - displayWidth(indent); // borders + padding
357
- const words = opt.description.split(' ');
358
- let line = indent;
359
- for (const word of words) {
360
- if ((line + word).length > maxDescWidth && line.trim().length > 0) {
361
- lines.push('│ ' + pad(line) + ' │');
362
- line = indent + word + ' ';
363
- }
364
- else {
365
- line += word + ' ';
366
- }
367
- }
368
- if (line.trim().length > 0) {
369
- lines.push('│ ' + pad(line) + ' │');
370
- }
371
- }
425
+ const chosen = type === 'select' ? isSelected : this.checked.has(i);
426
+ const marker = type === 'select' ? (isSelected ? '●' : '○') : (chosen ? '[✓]' : '[ ]');
427
+ const description = isSelected && opt.description ? describe(opt.description) : [];
428
+ // Details follow the description after a square. Wrap by display cells
429
+ // with a hanging indent so a long line never clips or breaks the frame.
430
+ const textWidth = Math.max(1, interior - displayWidth(indent) - displayWidth(DETAIL_MARK));
431
+ const details = isSelected && opt.details
432
+ ? opt.details.map(detail => wrapText(detail, textWidth).map((line, index) => index === 0
433
+ ? [{ text: indent }, { text: DETAIL_MARK, style: STYLE.square }, { text: line, style: STYLE.detail }]
434
+ : [{ text: indent + ' '.repeat(displayWidth(DETAIL_MARK)) }, { text: line, style: STYLE.detail }]))
435
+ : [];
436
+ entries.push({ label: optionRow(isSelected, marker, chosen, opt.label), description, details });
372
437
  }
373
438
  // "Other" option if allowed
374
439
  if (allowOther) {
375
440
  const isSelected = this.selectedIndex === options.length;
376
- const pointer = isSelected ? '❯ ' : ' ';
377
- const radio = isSelected ? '●' : '○';
378
- const labelLine = `${pointer}${radio} Other...`;
379
- lines.push('│ ' + pad(labelLine) + ' │');
380
- if (isSelected) {
381
- lines.push('│ ' + pad(SelectWidget.labelColumn(type) + 'Enter a custom value') + ' │');
382
- }
441
+ entries.push({
442
+ label: optionRow(isSelected, isSelected ? '●' : '○', isSelected, 'Other...'),
443
+ description: isSelected ? describe('Enter a custom value') : [],
444
+ details: [],
445
+ });
383
446
  }
384
- // Bottom separator and instructions
385
- lines.push('│' + ' '.repeat(width - 2) + '│');
386
- lines.push('├' + '─'.repeat(width - 2) + '┤');
387
447
  const secondaryHints = (type === 'select' && this.active.secondaryActions)
388
448
  ? this.active.secondaryActions.map(a => `${a.key.toUpperCase()} ${a.label}`).join(' • ')
389
449
  : '';
390
- const inst = type === 'select'
391
- ? `↑↓ navigate • Enter select${secondaryHints ? ' • ' + secondaryHints : ''} • Esc cancel`
392
- : '↑↓ navigate • Space toggle • Enter confirm';
393
- lines.push('│ ' + pad(inst) + ' │');
394
- lines.push('╰' + '─'.repeat(width - 2) + '╯');
395
- return lines.join('\n');
450
+ const inst = this.active.footer ?? (type === 'select'
451
+ ? `↑↓ navigate • Enter select${secondaryHints ? ' • ' + secondaryHints : ''}${this.active.required ? '' : ' • Esc cancel'}`
452
+ : '↑↓ navigate • Space toggle • Enter confirm');
453
+ const hints = this.nudged
454
+ ? [{ text: REQUIRED_CHOICE_NUDGE, style: STYLE.title }, { text: ` · ${inst}`, style: STYLE.hints }]
455
+ : [{ text: inst, style: STYLE.hints }];
456
+ const footer = [framed(hints), bottomBorder(width)];
457
+ const budget = rows === undefined ? undefined : rows - lines.length - footer.length;
458
+ const note = (text) => [{ text: indent + text, style: STYLE.note }];
459
+ lines.push(...fitEntries(entries, Math.min(this.selectedIndex, entries.length - 1), budget, note).map(framed));
460
+ lines.push(...footer);
461
+ return surfaceOf(lines);
462
+ }
463
+ }
464
+ /** The site film's palette on the terminal theme. */
465
+ const STYLE = {
466
+ border: { color: TERMINAL_THEME.border },
467
+ title: { color: TERMINAL_THEME.accent },
468
+ question: { color: TERMINAL_THEME.text },
469
+ pointer: { color: TERMINAL_THEME.accent },
470
+ chosen: { color: TERMINAL_THEME.accent },
471
+ marker: { color: TERMINAL_THEME.muted },
472
+ label: { color: TERMINAL_THEME.text },
473
+ other: { color: TERMINAL_THEME.muted },
474
+ description: { color: TERMINAL_THEME.muted },
475
+ square: { color: TERMINAL_THEME.info },
476
+ detail: { color: TERMINAL_THEME.text },
477
+ note: { color: TERMINAL_THEME.muted },
478
+ hints: { color: TERMINAL_THEME.muted },
479
+ };
480
+ /** Each detail of the highlighted option follows a small square, as the site film lists benefits. */
481
+ const DETAIL_MARK = '▪ ';
482
+ /** An option: the pointer and its radio (or checkbox) in the accent when highlighted or chosen, the others muted. */
483
+ function optionRow(highlighted, marker, chosen, label) {
484
+ return [
485
+ { text: highlighted ? '❯ ' : ' ', style: STYLE.pointer },
486
+ { text: marker, style: chosen ? STYLE.chosen : STYLE.marker },
487
+ { text: ' ' },
488
+ { text: label, style: highlighted ? STYLE.label : STYLE.other },
489
+ ];
490
+ }
491
+ function surfaceOf(lines) {
492
+ return {
493
+ content: lines.map(lineText).join('\n'),
494
+ view: box(lines.map(line => box(line.segments.map(segment => text(segment.text, segment.style)), { flexDirection: 'row', height: 1, flexShrink: 0 })), { flexDirection: 'column', height: lines.length, flexShrink: 0 }),
495
+ };
496
+ }
497
+ /**
498
+ * The rows between the question and the key hints, within `budget` rows when
499
+ * one is given. Short on rows, the blank row that ends the highlighted entry's
500
+ * listing goes first, then its details (the leading ones stay, with a "+N
501
+ * more" line), then its description. Every label
502
+ * stays unless the labels alone do not fit; then the list scrolls around the
503
+ * highlighted entry and says how many rows it hides above and below.
504
+ */
505
+ function fitEntries(entries, selected, budget, note) {
506
+ const current = entries[selected];
507
+ const render = (description, details, hidden, spaced = false) => entries.flatMap((entry, index) => {
508
+ if (index !== selected)
509
+ return [entry.label];
510
+ const listing = [...description, ...details.flat(), ...(hidden > 0 ? [note(`+${hidden} more`)] : [])];
511
+ // With room, the listing ends on a blank row when another option follows,
512
+ // so each option reads as its own item.
513
+ const end = spaced && listing.length > 0 && index < entries.length - 1 ? [[]] : [];
514
+ return [entry.label, ...listing, ...end];
515
+ });
516
+ const spaced = render(current?.description ?? [], current?.details ?? [], 0, true);
517
+ if (budget === undefined || spaced.length <= budget)
518
+ return spaced;
519
+ const full = render(current?.description ?? [], current?.details ?? [], 0);
520
+ if (full.length <= budget)
521
+ return full;
522
+ // Rows the highlighted entry has left for its description and details.
523
+ const room = budget - entries.length;
524
+ const description = current?.description ?? [];
525
+ if (current && room >= description.length) {
526
+ const details = current.details;
527
+ const detailRoom = room - description.length;
528
+ let kept = 0;
529
+ let used = 0;
530
+ for (const detail of details) {
531
+ // Keep a row for the "+N more" line while later details remain.
532
+ const reserve = kept + 1 < details.length ? 1 : 0;
533
+ if (used + detail.length + reserve > detailRoom)
534
+ break;
535
+ kept += 1;
536
+ used += detail.length;
537
+ }
538
+ const hidden = details.length - kept;
539
+ return render(description, details.slice(0, kept), used < detailRoom ? hidden : 0);
540
+ }
541
+ if (current && room >= 0) {
542
+ const kept = description.slice(0, room).map(row => [...row]);
543
+ const last = kept.at(-1);
544
+ if (last && last.length)
545
+ last[last.length - 1] = { ...last[last.length - 1], text: last[last.length - 1].text.trimEnd() + '…' };
546
+ return render(kept, [], 0);
547
+ }
548
+ // The labels alone do not fit: show a window around the highlighted entry,
549
+ // with its description while one label and both markers still fit.
550
+ const total = entries.length;
551
+ const kept = description.slice(0, Math.max(0, budget - 3));
552
+ const labelRows = budget - kept.length;
553
+ const windowAt = (size) => Math.max(0, Math.min(selected - Math.floor((size - 1) / 2), total - size));
554
+ let visible = Math.max(1, Math.min(total, labelRows));
555
+ while (visible > 1) {
556
+ const start = windowAt(visible);
557
+ if (visible + (start > 0 ? 1 : 0) + (start + visible < total ? 1 : 0) <= labelRows)
558
+ break;
559
+ visible -= 1;
396
560
  }
561
+ const start = windowAt(visible);
562
+ return [
563
+ ...(start > 0 ? [note(`↑ ${start} more`)] : []),
564
+ ...entries.slice(start, start + visible).flatMap((entry, index) => (start + index === selected ? [entry.label, ...kept] : [entry.label])),
565
+ ...(start + visible < total ? [note(`↓ ${total - start - visible} more`)] : []),
566
+ ];
397
567
  }
@@ -11,9 +11,17 @@ export interface SettingsPanelData {
11
11
  categories: SettingCategory[];
12
12
  layout?: 'page';
13
13
  notice?: string;
14
+ /** An error unless the notice reports a success. */
15
+ noticeTone?: 'error' | 'success';
14
16
  initialSetting?: string;
15
17
  initialCategory?: string;
16
18
  initialFilter?: string;
19
+ /** Up to two lines under the title, read on every paint, such as the price the rows' choices lead to. */
20
+ summary?: () => string;
21
+ /** Hands the owner a function that repaints the panel, for a summary or rows that change without a key press. */
22
+ connectRepaint?: (repaint: () => void) => void;
23
+ /** Typed text closes the panel and is left to the composer, as for a picker that opens on its own. */
24
+ typingCloses?: boolean;
17
25
  onSettingChange: (setting: string, value: string) => void | Promise<void>;
18
26
  /**
19
27
  * Notifies the owner when a keybinding row starts/stops capturing keys, so
@@ -88,7 +96,11 @@ export declare class SettingsPanelWidget {
88
96
  * from a pane that is no longer under the pointer.
89
97
  */
90
98
  private frameInset;
99
+ /** First table row painted, kept so the highlight moves through a long table instead of the table jumping. */
100
+ private tableScroll;
91
101
  constructor(host: WidgetHost);
102
+ /** The open select when it draws as a table. */
103
+ private openTable;
92
104
  private isPage;
93
105
  show(data: SettingsPanelData): void;
94
106
  cancel(): void;
@@ -136,7 +148,9 @@ export declare class SettingsPanelWidget {
136
148
  private stopCapture;
137
149
  private notifyCaptureState;
138
150
  private commitSettingValue;
139
- handleInput(input: string, key: KeyEvent): void;
151
+ /** False only when the key is left to the composer: text typed on a page that typing closes. */
152
+ handleInput(input: string, key: KeyEvent): boolean;
153
+ private handlePanelInput;
140
154
  /**
141
155
  * A value that always reads the same for a given setting, so a row can show
142
156
  * it without consulting live state.
@@ -176,6 +190,12 @@ export declare class SettingsPanelWidget {
176
190
  /** One content column: a body row indented to where labels start. */
177
191
  private indented;
178
192
  private buildSettingRows;
193
+ /**
194
+ * The open table's body: its caption and heading, as many rows as fit
195
+ * around the highlighted option, a divider before each group, then its
196
+ * notes. Every row is a run of styled segments `width` cells wide.
197
+ */
198
+ private buildTableLines;
179
199
  private visibleSettingWindow;
180
200
  private categoryWindow;
181
201
  private footerHint;