@daniel156161/prism 0.2.100 → 0.2.105
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.
- package/README.md +2 -2
- package/dist/pi/pi-env.d.ts +1 -1
- package/dist/pi/pi-env.js +1 -1
- package/dist/prism-extensions/integrations/ai-memory-system.js +16 -9
- package/dist/prism-extensions/integrations/ai-memory-system.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +23 -25
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js +3 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts +3 -2
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js +13 -3
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js +14 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +3 -2
- package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/package.json +4 -4
- package/node_modules/@earendil-works/pi-ai/README.md +5 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +34 -19
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts +2 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js +9 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +131 -7
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js +17 -13
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts +5 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js +16 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js +15 -11
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js +7 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +4 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +3 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +160 -86
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +6 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts +4 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +17 -10
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js +98 -34
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js +1 -14
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts +75 -0
- package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +75 -0
- package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.d.ts +3 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/azure-openai-responses.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/cerebras.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/deepseek.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/fireworks.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/google-vertex.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/google.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax-cn.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/mistral.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/nvidia.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-cn.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-individual.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/together.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-ams.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-cn.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-sgp.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js +1 -5
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +29 -4
- package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.d.ts +2 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.js +15 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/package.json +3 -4
- package/node_modules/@earendil-works/pi-client/CHANGELOG.md +4 -0
- package/node_modules/@earendil-works/pi-client/package.json +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +127 -0
- package/node_modules/@earendil-works/pi-coding-agent/README.md +13 -8
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/anthropic-messages-JWX2WP65.js +45 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/anthropic.js +75 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/azure-openai-responses-5ENVCQ7U.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/bedrock-converse-stream.js +74 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-2KVJKXS2.js +50 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-4L3WN2XY.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-6CYCI3EJ.js +12 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-6R7UI4IY.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-AXIIZGTV.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-DRQDKNXA.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-GMWCTUPB.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-JUUC5AZY.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-L2ZPNLYD.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-MNAIPA3J.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-NBBFIJUL.js +11 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-NUHFSC37.js +25 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-OMWWHBTG.js +1548 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PGXDEOVV.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PJACZCIR.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PRRNXB7S.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-TEPMHNKQ.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-TRDNDS6A.js +4 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-UAQELI3K.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-XDUWOHPL.js +6 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-XNGRGP62.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/github-copilot.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/google-generative-ai-YMUPJBKR.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/google-vertex-MPWMV4OF.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/https-proxy-agent-2VXB7436.js +13 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/image-resize-worker.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/kimi-coding.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/lib-HGQMNYVT.js +9 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/mistral-conversations-Q3AWZJAZ.js +5 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/multipart-parser-SQ6GDJL7.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-codex-responses-GJVBJXLB.js +8 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-codex.js +75 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-completions-ERMU2SS7.js +7 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-responses-BSOJMSEV.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openrouter-images-N4XVVFSD.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openrouter.js +75 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/pi-messages-TPFH44NP.js +8 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/radius.js +75 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/src-UK77SYZE.js +4 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/xai.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/client.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/index.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/rpc-entry.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js +29 -9
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts +4 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/config.js +22 -14
- package/node_modules/@earendil-works/pi-coding-agent/dist/config.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts +38 -8
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +240 -104
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +6 -7
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js +7 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts +9 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js +59 -36
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.d.ts +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.js +9 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +115 -48
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts +5 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js +45 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts +56 -10
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts +20 -19
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js +26 -5
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts +5 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js +3 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js +14 -8
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +22 -14
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +3 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +10 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.d.ts +4 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.js +32 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.js.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +6 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.d.ts +9 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.js +21 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.js.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts +17 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +69 -10
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js +51 -33
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js +11 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts +14 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +36 -20
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts +0 -5
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js +2 -5
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +20 -4
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts +4 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js +18 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.d.ts +16 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.js +39 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.js.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.d.ts +6 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.js +7 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.d.ts +3 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js +29 -4
- package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts +6 -5
- package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/index.js +5 -4
- package/node_modules/@earendil-works/pi-coding-agent/dist/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts +4 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +20 -15
- package/node_modules/@earendil-works/pi-coding-agent/dist/main.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js +4 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts +9 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +56 -12
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +9 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +128 -56
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.d.ts +72 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.js +165 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.js.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts +15 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js +74 -17
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +15 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +230 -136
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.d.ts +16 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.js +188 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.js.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js +4 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts +16 -13
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js +20 -6
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts +7 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js +7 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts +12 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js +186 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.js +2 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts +5 -3
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js +14 -10
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js +23 -9
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js +60 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js.map +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.d.ts +8 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.js +9 -0
- package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.js.map +1 -0
- package/node_modules/@earendil-works/pi-coding-agent/docs/compaction.md +17 -0
- package/node_modules/@earendil-works/pi-coding-agent/docs/custom-provider.md +12 -9
- package/node_modules/@earendil-works/pi-coding-agent/docs/environment-variables.md +11 -8
- package/node_modules/@earendil-works/pi-coding-agent/docs/extensions.md +35 -7
- package/node_modules/@earendil-works/pi-coding-agent/docs/json.md +7 -2
- package/node_modules/@earendil-works/pi-coding-agent/docs/keybindings.md +9 -9
- package/node_modules/@earendil-works/pi-coding-agent/docs/llama-cpp.md +2 -0
- package/node_modules/@earendil-works/pi-coding-agent/docs/models.md +8 -2
- package/node_modules/@earendil-works/pi-coding-agent/docs/packages.md +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/docs/quickstart.md +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/docs/rpc.md +32 -3
- package/node_modules/@earendil-works/pi-coding-agent/docs/sdk.md +7 -2
- package/node_modules/@earendil-works/pi-coding-agent/docs/settings.md +23 -7
- package/node_modules/@earendil-works/pi-coding-agent/docs/skills.md +4 -3
- package/node_modules/@earendil-works/pi-coding-agent/docs/terminal-setup.md +23 -9
- package/node_modules/@earendil-works/pi-coding-agent/docs/usage.md +10 -5
- package/node_modules/@earendil-works/pi-coding-agent/docs/windows.md +24 -2
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/border-status-editor.ts +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/git-checkpoint.ts +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package-lock.json +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package.json +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/notify.ts +3 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package-lock.json +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/README.md +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/index.ts +6 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/titlebar-spinner.ts +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package-lock.json +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/rpc-extension-ui.ts +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/06-extensions.ts +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/README.md +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/package.json +12 -14
- package/node_modules/@earendil-works/pi-protocol/package.json +1 -1
- package/node_modules/@earendil-works/pi-telemetry/package.json +2 -2
- package/node_modules/@earendil-works/pi-tui/README.md +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js +36 -3
- package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +9 -4
- package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts +8 -2
- package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js +24 -4
- package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/text.js +5 -4
- package/node_modules/@earendil-works/pi-tui/dist/components/text.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.js +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts +2 -2
- package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/keybindings.js +2 -2
- package/node_modules/@earendil-works/pi-tui/dist/keybindings.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +2 -8
- package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/native-module-path.d.ts +7 -0
- package/node_modules/@earendil-works/pi-tui/dist/native-module-path.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/native-module-path.js +19 -0
- package/node_modules/@earendil-works/pi-tui/dist/native-module-path.js.map +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +2 -0
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +37 -2
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal.js +4 -10
- package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts +11 -0
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js +63 -16
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.js +105 -45
- package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/package.json +1 -1
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/buffer.buffer.d.ts +10 -5
- package/node_modules/@types/node/crypto.d.ts +2 -4
- package/node_modules/@types/node/dgram.d.ts +119 -4
- package/node_modules/@types/node/fs/promises.d.ts +61 -65
- package/node_modules/@types/node/fs.d.ts +86 -76
- package/node_modules/@types/node/http.d.ts +17 -1
- package/node_modules/@types/node/http2.d.ts +12 -4
- package/node_modules/@types/node/index.d.ts +1 -0
- package/node_modules/@types/node/inspector.d.ts +2 -1
- package/node_modules/@types/node/net.d.ts +108 -16
- package/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/node/process.d.ts +52 -0
- package/node_modules/@types/node/quic.d.ts +246 -38
- package/node_modules/@types/node/sqlite.d.ts +6 -2
- package/node_modules/@types/node/stream/iter.d.ts +4 -4
- package/node_modules/@types/node/test.d.ts +36 -0
- package/node_modules/@types/node/tls.d.ts +24 -0
- package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +5 -0
- package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
- package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
- package/node_modules/@types/node/tty.d.ts +4 -3
- package/node_modules/@types/node/vfs.d.ts +210 -0
- package/node_modules/@types/node/vm.d.ts +1 -1
- package/node_modules/brace-expansion/README.md +1 -2
- package/node_modules/brace-expansion/dist/commonjs/index.js +30 -4
- package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
- package/node_modules/brace-expansion/dist/esm/index.js +30 -4
- package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
- package/node_modules/brace-expansion/package.json +1 -1
- package/package.json +9 -9
- package/src/prism-extensions/integrations/ai-memory-system.ts +14 -9
- package/node_modules/@opentelemetry/api/LICENSE +0 -201
- package/node_modules/@opentelemetry/api/README.md +0 -116
- package/node_modules/@opentelemetry/api/build/esm/api/context.d.ts +0 -41
- package/node_modules/@opentelemetry/api/build/esm/api/context.js +0 -110
- package/node_modules/@opentelemetry/api/build/esm/api/context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/api/diag.d.ts +0 -30
- package/node_modules/@opentelemetry/api/build/esm/api/diag.js +0 -121
- package/node_modules/@opentelemetry/api/build/esm/api/diag.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/api/metrics.d.ts +0 -28
- package/node_modules/@opentelemetry/api/build/esm/api/metrics.js +0 -60
- package/node_modules/@opentelemetry/api/build/esm/api/metrics.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/api/propagation.d.ts +0 -49
- package/node_modules/@opentelemetry/api/build/esm/api/propagation.js +0 -89
- package/node_modules/@opentelemetry/api/build/esm/api/propagation.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/api/trace.d.ts +0 -40
- package/node_modules/@opentelemetry/api/build/esm/api/trace.js +0 -77
- package/node_modules/@opentelemetry/api/build/esm/api/trace.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.d.ts +0 -29
- package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js +0 -56
- package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.d.ts +0 -12
- package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js +0 -98
- package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.d.ts +0 -5
- package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js +0 -20
- package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/baggage/types.d.ts +0 -60
- package/node_modules/@opentelemetry/api/build/esm/baggage/types.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/baggage/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/baggage/utils.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js +0 -47
- package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/common/Attributes.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/common/Exception.d.ts +0 -26
- package/node_modules/@opentelemetry/api/build/esm/common/Exception.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/common/Exception.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/common/Time.d.ts +0 -20
- package/node_modules/@opentelemetry/api/build/esm/common/Time.js +0 -2
- package/node_modules/@opentelemetry/api/build/esm/common/Time.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.d.ts +0 -9
- package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js +0 -67
- package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/context/context.d.ts +0 -6
- package/node_modules/@opentelemetry/api/build/esm/context/context.js +0 -52
- package/node_modules/@opentelemetry/api/build/esm/context/context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/context/types.d.ts +0 -52
- package/node_modules/@opentelemetry/api/build/esm/context/types.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/context/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/context-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esm/context-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esm/context-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.d.ts +0 -20
- package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js +0 -102
- package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.d.ts +0 -38
- package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js +0 -59
- package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js +0 -41
- package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.d.ts +0 -8
- package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js +0 -31
- package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/diag/types.d.ts +0 -100
- package/node_modules/@opentelemetry/api/build/esm/diag/types.js +0 -41
- package/node_modules/@opentelemetry/api/build/esm/diag/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/diag-api.d.ts +0 -9
- package/node_modules/@opentelemetry/api/build/esm/diag-api.js +0 -26
- package/node_modules/@opentelemetry/api/build/esm/diag-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/experimental/index.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esm/experimental/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/experimental/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.d.ts +0 -64
- package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js +0 -92
- package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/index.d.ts +0 -54
- package/node_modules/@opentelemetry/api/build/esm/index.js +0 -53
- package/node_modules/@opentelemetry/api/build/esm/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.d.ts +0 -18
- package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js +0 -59
- package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/internal/semver.d.ts +0 -34
- package/node_modules/@opentelemetry/api/build/esm/internal/semver.js +0 -118
- package/node_modules/@opentelemetry/api/build/esm/internal/semver.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.d.ts +0 -110
- package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.d.ts +0 -17
- package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.d.ts +0 -115
- package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js +0 -22
- package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.d.ts +0 -82
- package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js +0 -181
- package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.d.ts +0 -11
- package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js +0 -31
- package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.d.ts +0 -31
- package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/metrics-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esm/metrics-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esm/metrics-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js +0 -35
- package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/platform/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esm/platform/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/platform/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js +0 -19
- package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/platform/node/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js +0 -34
- package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.d.ts +0 -84
- package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js +0 -38
- package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/propagation-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esm/propagation-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esm/propagation-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.d.ts +0 -28
- package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js +0 -68
- package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.d.ts +0 -14
- package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js +0 -76
- package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js +0 -32
- package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.d.ts +0 -27
- package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js +0 -53
- package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.d.ts +0 -25
- package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js +0 -54
- package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.d.ts +0 -31
- package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.d.ts +0 -49
- package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js +0 -39
- package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.d.ts +0 -23
- package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/attributes.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.d.ts +0 -41
- package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js +0 -73
- package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.d.ts +0 -22
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js +0 -102
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js +0 -41
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js +0 -20
- package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.d.ts +0 -5
- package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js +0 -24
- package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/link.d.ts +0 -26
- package/node_modules/@opentelemetry/api/build/esm/trace/link.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/link.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/span.d.ts +0 -120
- package/node_modules/@opentelemetry/api/build/esm/trace/span.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/span.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/span_context.d.ts +0 -53
- package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.d.ts +0 -27
- package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js +0 -43
- package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.d.ts +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js +0 -42
- package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/status.d.ts +0 -25
- package/node_modules/@opentelemetry/api/build/esm/trace/status.js +0 -20
- package/node_modules/@opentelemetry/api/build/esm/trace/status.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.d.ts +0 -7
- package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js +0 -23
- package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.d.ts +0 -38
- package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer.d.ts +0 -71
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.d.ts +0 -21
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js +0 -17
- package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/trace-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esm/trace-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esm/trace-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esm/version.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esm/version.js +0 -18
- package/node_modules/@opentelemetry/api/build/esm/version.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/api/context.d.ts +0 -41
- package/node_modules/@opentelemetry/api/build/esnext/api/context.js +0 -77
- package/node_modules/@opentelemetry/api/build/esnext/api/context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/api/diag.d.ts +0 -30
- package/node_modules/@opentelemetry/api/build/esnext/api/diag.js +0 -89
- package/node_modules/@opentelemetry/api/build/esnext/api/diag.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/api/metrics.d.ts +0 -28
- package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js +0 -57
- package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/api/propagation.d.ts +0 -49
- package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js +0 -85
- package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/api/trace.d.ts +0 -40
- package/node_modules/@opentelemetry/api/build/esnext/api/trace.js +0 -75
- package/node_modules/@opentelemetry/api/build/esnext/api/trace.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.d.ts +0 -29
- package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js +0 -56
- package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.d.ts +0 -12
- package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js +0 -51
- package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.d.ts +0 -5
- package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js +0 -20
- package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/baggage/types.d.ts +0 -60
- package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js +0 -46
- package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/common/Exception.d.ts +0 -26
- package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/common/Time.d.ts +0 -20
- package/node_modules/@opentelemetry/api/build/esnext/common/Time.js +0 -2
- package/node_modules/@opentelemetry/api/build/esnext/common/Time.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.d.ts +0 -9
- package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js +0 -34
- package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/context/context.d.ts +0 -6
- package/node_modules/@opentelemetry/api/build/esnext/context/context.js +0 -51
- package/node_modules/@opentelemetry/api/build/esnext/context/context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/context/types.d.ts +0 -52
- package/node_modules/@opentelemetry/api/build/esnext/context/types.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/context/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/context-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esnext/context-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esnext/context-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.d.ts +0 -20
- package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js +0 -55
- package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.d.ts +0 -38
- package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js +0 -53
- package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js +0 -41
- package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.d.ts +0 -8
- package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js +0 -31
- package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/diag/types.d.ts +0 -100
- package/node_modules/@opentelemetry/api/build/esnext/diag/types.js +0 -41
- package/node_modules/@opentelemetry/api/build/esnext/diag/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/diag-api.d.ts +0 -9
- package/node_modules/@opentelemetry/api/build/esnext/diag-api.js +0 -26
- package/node_modules/@opentelemetry/api/build/esnext/diag-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/experimental/index.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.d.ts +0 -64
- package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js +0 -88
- package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/index.d.ts +0 -54
- package/node_modules/@opentelemetry/api/build/esnext/index.js +0 -53
- package/node_modules/@opentelemetry/api/build/esnext/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.d.ts +0 -18
- package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js +0 -58
- package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/internal/semver.d.ts +0 -34
- package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js +0 -118
- package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.d.ts +0 -110
- package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.d.ts +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.d.ts +0 -115
- package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js +0 -22
- package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.d.ts +0 -82
- package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js +0 -113
- package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.d.ts +0 -11
- package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js +0 -27
- package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.d.ts +0 -31
- package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/metrics-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js +0 -35
- package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/platform/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esnext/platform/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/platform/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js +0 -19
- package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js +0 -30
- package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.d.ts +0 -84
- package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js +0 -38
- package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/propagation-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.d.ts +0 -28
- package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js +0 -65
- package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.d.ts +0 -14
- package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js +0 -71
- package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js +0 -28
- package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.d.ts +0 -27
- package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js +0 -51
- package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.d.ts +0 -25
- package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js +0 -50
- package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.d.ts +0 -31
- package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.d.ts +0 -49
- package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js +0 -39
- package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.d.ts +0 -23
- package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.d.ts +0 -41
- package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js +0 -73
- package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.d.ts +0 -22
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js +0 -99
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js +0 -41
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js +0 -20
- package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.d.ts +0 -5
- package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js +0 -24
- package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/link.d.ts +0 -26
- package/node_modules/@opentelemetry/api/build/esnext/trace/link.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/link.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/span.d.ts +0 -120
- package/node_modules/@opentelemetry/api/build/esnext/trace/span.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/span.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.d.ts +0 -53
- package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.d.ts +0 -27
- package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js +0 -43
- package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.d.ts +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js +0 -42
- package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/status.d.ts +0 -25
- package/node_modules/@opentelemetry/api/build/esnext/trace/status.js +0 -20
- package/node_modules/@opentelemetry/api/build/esnext/trace/status.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.d.ts +0 -7
- package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js +0 -23
- package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.d.ts +0 -38
- package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.d.ts +0 -71
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.d.ts +0 -21
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js +0 -17
- package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/trace-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/esnext/trace-api.js +0 -21
- package/node_modules/@opentelemetry/api/build/esnext/trace-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/esnext/version.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/esnext/version.js +0 -18
- package/node_modules/@opentelemetry/api/build/esnext/version.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/api/context.d.ts +0 -41
- package/node_modules/@opentelemetry/api/build/src/api/context.js +0 -81
- package/node_modules/@opentelemetry/api/build/src/api/context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/api/diag.d.ts +0 -30
- package/node_modules/@opentelemetry/api/build/src/api/diag.js +0 -93
- package/node_modules/@opentelemetry/api/build/src/api/diag.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/api/metrics.d.ts +0 -28
- package/node_modules/@opentelemetry/api/build/src/api/metrics.js +0 -61
- package/node_modules/@opentelemetry/api/build/src/api/metrics.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/api/propagation.d.ts +0 -49
- package/node_modules/@opentelemetry/api/build/src/api/propagation.js +0 -89
- package/node_modules/@opentelemetry/api/build/src/api/propagation.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/api/trace.d.ts +0 -40
- package/node_modules/@opentelemetry/api/build/src/api/trace.js +0 -79
- package/node_modules/@opentelemetry/api/build/src/api/trace.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.d.ts +0 -29
- package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +0 -63
- package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.d.ts +0 -12
- package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +0 -55
- package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.d.ts +0 -5
- package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +0 -23
- package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/baggage/types.d.ts +0 -60
- package/node_modules/@opentelemetry/api/build/src/baggage/types.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/baggage/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/baggage/utils.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/src/baggage/utils.js +0 -51
- package/node_modules/@opentelemetry/api/build/src/baggage/utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/common/Attributes.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/src/common/Attributes.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/common/Attributes.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/common/Exception.d.ts +0 -26
- package/node_modules/@opentelemetry/api/build/src/common/Exception.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/common/Exception.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/common/Time.d.ts +0 -20
- package/node_modules/@opentelemetry/api/build/src/common/Time.js +0 -3
- package/node_modules/@opentelemetry/api/build/src/common/Time.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.d.ts +0 -9
- package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +0 -38
- package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/context/context.d.ts +0 -6
- package/node_modules/@opentelemetry/api/build/src/context/context.js +0 -55
- package/node_modules/@opentelemetry/api/build/src/context/context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/context/types.d.ts +0 -52
- package/node_modules/@opentelemetry/api/build/src/context/types.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/context/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/context-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/src/context-api.js +0 -24
- package/node_modules/@opentelemetry/api/build/src/context-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.d.ts +0 -20
- package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +0 -59
- package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.d.ts +0 -38
- package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +0 -57
- package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +0 -45
- package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.d.ts +0 -8
- package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js +0 -35
- package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/diag/types.d.ts +0 -100
- package/node_modules/@opentelemetry/api/build/src/diag/types.js +0 -44
- package/node_modules/@opentelemetry/api/build/src/diag/types.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/diag-api.d.ts +0 -9
- package/node_modules/@opentelemetry/api/build/src/diag-api.js +0 -29
- package/node_modules/@opentelemetry/api/build/src/diag-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/experimental/index.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/src/experimental/index.js +0 -22
- package/node_modules/@opentelemetry/api/build/src/experimental/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.d.ts +0 -64
- package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js +0 -93
- package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/index.d.ts +0 -54
- package/node_modules/@opentelemetry/api/build/src/index.js +0 -81
- package/node_modules/@opentelemetry/api/build/src/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/internal/global-utils.d.ts +0 -18
- package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +0 -64
- package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/internal/semver.d.ts +0 -34
- package/node_modules/@opentelemetry/api/build/src/internal/semver.js +0 -122
- package/node_modules/@opentelemetry/api/build/src/internal/semver.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics/Meter.d.ts +0 -110
- package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.d.ts +0 -17
- package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics/Metric.d.ts +0 -115
- package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +0 -25
- package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.d.ts +0 -82
- package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +0 -127
- package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.d.ts +0 -11
- package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +0 -31
- package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.d.ts +0 -31
- package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/metrics-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/src/metrics-api.js +0 -24
- package/node_modules/@opentelemetry/api/build/src/metrics-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js +0 -38
- package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/platform/browser/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js +0 -29
- package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/platform/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/src/platform/index.js +0 -29
- package/node_modules/@opentelemetry/api/build/src/platform/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +0 -22
- package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/platform/node/index.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/src/platform/node/index.js +0 -29
- package/node_modules/@opentelemetry/api/build/src/platform/node/index.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +0 -34
- package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.d.ts +0 -84
- package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +0 -41
- package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/propagation-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/src/propagation-api.js +0 -24
- package/node_modules/@opentelemetry/api/build/src/propagation-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.d.ts +0 -28
- package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +0 -69
- package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.d.ts +0 -14
- package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +0 -75
- package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.d.ts +0 -13
- package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +0 -32
- package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.d.ts +0 -27
- package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +0 -55
- package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.d.ts +0 -25
- package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +0 -54
- package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/Sampler.d.ts +0 -31
- package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.d.ts +0 -49
- package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +0 -42
- package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.d.ts +0 -23
- package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/attributes.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/src/trace/attributes.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/attributes.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/context-utils.d.ts +0 -41
- package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +0 -82
- package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.d.ts +0 -22
- package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +0 -103
- package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.d.ts +0 -15
- package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +0 -46
- package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.d.ts +0 -3
- package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +0 -24
- package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.d.ts +0 -5
- package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +0 -27
- package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/link.d.ts +0 -26
- package/node_modules/@opentelemetry/api/build/src/trace/link.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/link.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/span.d.ts +0 -120
- package/node_modules/@opentelemetry/api/build/src/trace/span.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/span.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/span_context.d.ts +0 -53
- package/node_modules/@opentelemetry/api/build/src/trace/span_context.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/span_context.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/span_kind.d.ts +0 -27
- package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +0 -46
- package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.d.ts +0 -17
- package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +0 -49
- package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/status.d.ts +0 -25
- package/node_modules/@opentelemetry/api/build/src/trace/status.js +0 -23
- package/node_modules/@opentelemetry/api/build/src/trace/status.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.d.ts +0 -7
- package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +0 -26
- package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/trace_state.d.ts +0 -38
- package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/tracer.d.ts +0 -71
- package/node_modules/@opentelemetry/api/build/src/trace/tracer.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/tracer.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.d.ts +0 -10
- package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.d.ts +0 -21
- package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js +0 -18
- package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/trace-api.d.ts +0 -4
- package/node_modules/@opentelemetry/api/build/src/trace-api.js +0 -24
- package/node_modules/@opentelemetry/api/build/src/trace-api.js.map +0 -1
- package/node_modules/@opentelemetry/api/build/src/version.d.ts +0 -2
- package/node_modules/@opentelemetry/api/build/src/version.js +0 -21
- package/node_modules/@opentelemetry/api/build/src/version.js.map +0 -1
- package/node_modules/@opentelemetry/api/package.json +0 -113
- package/node_modules/glob/LICENSE.md +0 -63
- package/node_modules/glob/README.md +0 -1203
- package/node_modules/glob/dist/commonjs/glob.d.ts +0 -396
- package/node_modules/glob/dist/commonjs/glob.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/glob.js +0 -248
- package/node_modules/glob/dist/commonjs/glob.js.map +0 -1
- package/node_modules/glob/dist/commonjs/has-magic.d.ts +0 -14
- package/node_modules/glob/dist/commonjs/has-magic.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/has-magic.js +0 -27
- package/node_modules/glob/dist/commonjs/has-magic.js.map +0 -1
- package/node_modules/glob/dist/commonjs/ignore.d.ts +0 -24
- package/node_modules/glob/dist/commonjs/ignore.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/ignore.js +0 -119
- package/node_modules/glob/dist/commonjs/ignore.js.map +0 -1
- package/node_modules/glob/dist/commonjs/index.d.ts +0 -97
- package/node_modules/glob/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/index.js +0 -68
- package/node_modules/glob/dist/commonjs/index.js.map +0 -1
- package/node_modules/glob/dist/commonjs/index.min.js +0 -4
- package/node_modules/glob/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/glob/dist/commonjs/package.json +0 -3
- package/node_modules/glob/dist/commonjs/pattern.d.ts +0 -79
- package/node_modules/glob/dist/commonjs/pattern.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/pattern.js +0 -223
- package/node_modules/glob/dist/commonjs/pattern.js.map +0 -1
- package/node_modules/glob/dist/commonjs/processor.d.ts +0 -59
- package/node_modules/glob/dist/commonjs/processor.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/processor.js +0 -301
- package/node_modules/glob/dist/commonjs/processor.js.map +0 -1
- package/node_modules/glob/dist/commonjs/walker.d.ts +0 -97
- package/node_modules/glob/dist/commonjs/walker.d.ts.map +0 -1
- package/node_modules/glob/dist/commonjs/walker.js +0 -387
- package/node_modules/glob/dist/commonjs/walker.js.map +0 -1
- package/node_modules/glob/dist/esm/glob.d.ts +0 -396
- package/node_modules/glob/dist/esm/glob.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/glob.js +0 -244
- package/node_modules/glob/dist/esm/glob.js.map +0 -1
- package/node_modules/glob/dist/esm/has-magic.d.ts +0 -14
- package/node_modules/glob/dist/esm/has-magic.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/has-magic.js +0 -23
- package/node_modules/glob/dist/esm/has-magic.js.map +0 -1
- package/node_modules/glob/dist/esm/ignore.d.ts +0 -24
- package/node_modules/glob/dist/esm/ignore.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/ignore.js +0 -115
- package/node_modules/glob/dist/esm/ignore.js.map +0 -1
- package/node_modules/glob/dist/esm/index.d.ts +0 -97
- package/node_modules/glob/dist/esm/index.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/index.js +0 -55
- package/node_modules/glob/dist/esm/index.js.map +0 -1
- package/node_modules/glob/dist/esm/index.min.js +0 -4
- package/node_modules/glob/dist/esm/index.min.js.map +0 -7
- package/node_modules/glob/dist/esm/package.json +0 -3
- package/node_modules/glob/dist/esm/pattern.d.ts +0 -79
- package/node_modules/glob/dist/esm/pattern.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/pattern.js +0 -219
- package/node_modules/glob/dist/esm/pattern.js.map +0 -1
- package/node_modules/glob/dist/esm/processor.d.ts +0 -59
- package/node_modules/glob/dist/esm/processor.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/processor.js +0 -294
- package/node_modules/glob/dist/esm/processor.js.map +0 -1
- package/node_modules/glob/dist/esm/walker.d.ts +0 -97
- package/node_modules/glob/dist/esm/walker.d.ts.map +0 -1
- package/node_modules/glob/dist/esm/walker.js +0 -381
- package/node_modules/glob/dist/esm/walker.js.map +0 -1
- package/node_modules/glob/package.json +0 -98
- package/node_modules/minipass/LICENSE.md +0 -55
- package/node_modules/minipass/README.md +0 -825
- package/node_modules/minipass/dist/commonjs/index.d.ts +0 -545
- package/node_modules/minipass/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/minipass/dist/commonjs/index.js +0 -1038
- package/node_modules/minipass/dist/commonjs/index.js.map +0 -1
- package/node_modules/minipass/dist/commonjs/package.json +0 -3
- package/node_modules/minipass/dist/esm/index.d.ts +0 -545
- package/node_modules/minipass/dist/esm/index.d.ts.map +0 -1
- package/node_modules/minipass/dist/esm/index.js +0 -1020
- package/node_modules/minipass/dist/esm/index.js.map +0 -1
- package/node_modules/minipass/dist/esm/package.json +0 -3
- package/node_modules/minipass/package.json +0 -77
- package/node_modules/path-scurry/LICENSE.md +0 -55
- package/node_modules/path-scurry/README.md +0 -636
- package/node_modules/path-scurry/dist/commonjs/index.d.ts +0 -1115
- package/node_modules/path-scurry/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/path-scurry/dist/commonjs/index.js +0 -2018
- package/node_modules/path-scurry/dist/commonjs/index.js.map +0 -1
- package/node_modules/path-scurry/dist/commonjs/package.json +0 -3
- package/node_modules/path-scurry/dist/esm/index.d.ts +0 -1115
- package/node_modules/path-scurry/dist/esm/index.d.ts.map +0 -1
- package/node_modules/path-scurry/dist/esm/index.js +0 -1983
- package/node_modules/path-scurry/dist/esm/index.js.map +0 -1
- package/node_modules/path-scurry/dist/esm/package.json +0 -3
- package/node_modules/path-scurry/package.json +0 -72
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-selector.d.ts","sourceRoot":"","sources":["../../../../src/modes/interactive/components/settings-selector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAEN,SAAS,EAET,KAAK,mBAAmB,EAKxB,YAAY,EAGZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EACX,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,OAAO,EACP,eAAe,EACf,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAIN,KAAK,aAAa,EAElB,MAAM,mBAAmB,CAAC;AA6B3B,MAAM,WAAW,cAAc;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,KAAK,GAAG,eAAe,CAAC;IACtC,YAAY,EAAE,KAAK,GAAG,eAAe,CAAC;IACtC,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,uBAAuB,EAAE,aAAa,EAAE,CAAC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,OAAO,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7C,cAAc,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,cAAc,GAAG,KAAK,CAAC;IAC9E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,QAAQ,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,mBAAmB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,wBAAwB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,mBAAmB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,2BAA2B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,oBAAoB,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe,KAAK,IAAI,CAAC;IAC9D,oBAAoB,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe,KAAK,IAAI,CAAC;IAC9D,iBAAiB,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IAClD,yBAAyB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,qBAAqB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACtD,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,yBAAyB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,4BAA4B,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACnE,4BAA4B,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,yBAAyB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,8BAA8B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,0BAA0B,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACvE,sBAAsB,EAAE,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,cAAc,GAAG,KAAK,KAAK,IAAI,CAAC;IACtG,0BAA0B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IAC5C,8BAA8B,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,2BAA2B,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChF,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,4BAA4B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACzD,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,4BAA4B,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACrE,2BAA2B,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAkWD;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,SAAS;IACvD,OAAO,CAAC,YAAY,CAAe;IAEnC,YAAY,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EA8Y/D;IAED,eAAe,IAAI,YAAY,CAE9B;CACD","sourcesContent":["import type { ThinkingLevel } from \"@earendil-works/pi-agent-core\";\nimport type { Transport } from \"@earendil-works/pi-ai\";\nimport {\n\ttype Component,\n\tContainer,\n\tgetCapabilities,\n\ttype ScrollViewScrollbar,\n\ttype SelectItem,\n\tSelectList,\n\ttype SelectListLayoutOptions,\n\ttype SettingItem,\n\tSettingsList,\n\tSpacer,\n\tText,\n} from \"@earendil-works/pi-tui\";\nimport { formatHttpIdleTimeoutMs, HTTP_IDLE_TIMEOUT_CHOICES } from \"../../../core/http-dispatcher.ts\";\nimport type {\n\tDefaultProjectTrust,\n\tFullscreenExitOutput,\n\tMermaidRenderingMode,\n\tTuiMode,\n\tWarningSettings,\n} from \"../../../core/settings-manager.ts\";\nimport {\n\tgetSelectListTheme,\n\tgetSettingsListTheme,\n\tparseAutoThemeSetting,\n\ttype TerminalTheme,\n\ttheme,\n} from \"../theme/theme.ts\";\nimport { DynamicBorder } from \"./dynamic-border.ts\";\nimport { keyDisplayText } from \"./keybinding-hints.ts\";\n\nconst SETTINGS_SUBMENU_SELECT_LIST_LAYOUT: SelectListLayoutOptions = {\n\tminPrimaryColumnWidth: 12,\n\tmaxPrimaryColumnWidth: 32,\n};\n\nconst THINKING_DESCRIPTIONS: Record<ThinkingLevel, string> = {\n\toff: \"No reasoning\",\n\tminimal: \"Very brief reasoning (~1k tokens)\",\n\tlow: \"Light reasoning (~2k tokens)\",\n\tmedium: \"Moderate reasoning (~8k tokens)\",\n\thigh: \"Deep reasoning (~16k tokens)\",\n\txhigh: \"Extra-high reasoning (~32k tokens)\",\n\tmax: \"Maximum reasoning\",\n};\n\nconst DEFAULT_PROJECT_TRUST_LABELS: Record<DefaultProjectTrust, string> = {\n\task: \"Ask\",\n\talways: \"Always trust\",\n\tnever: \"Never trust\",\n};\n\nconst DEFAULT_PROJECT_TRUST_BY_LABEL = new Map(\n\tObject.entries(DEFAULT_PROJECT_TRUST_LABELS).map(([value, label]) => [label, value as DefaultProjectTrust]),\n);\n\nexport interface SettingsConfig {\n\tautoCompact: boolean;\n\tshowImages: boolean;\n\timageWidthCells: number;\n\tautoResizeImages: boolean;\n\tblockImages: boolean;\n\tenableSkillCommands: boolean;\n\tsteeringMode: \"all\" | \"one-at-a-time\";\n\tfollowUpMode: \"all\" | \"one-at-a-time\";\n\ttransport: Transport;\n\thttpIdleTimeoutMs: number;\n\tthinkingLevel: ThinkingLevel;\n\tavailableThinkingLevels: ThinkingLevel[];\n\tcurrentTheme: string;\n\tterminalTheme: TerminalTheme;\n\tavailableThemes: string[];\n\thideThinkingBlock: boolean;\n\tmermaidRenderingMode: MermaidRenderingMode;\n\tshowCacheMissNotices: boolean;\n\tcollapseChangelog: boolean;\n\tenableInstallTelemetry: boolean;\n\tdoubleEscapeAction: \"fork\" | \"tree\" | \"none\";\n\ttreeFilterMode: \"default\" | \"no-tools\" | \"user-only\" | \"labeled-only\" | \"all\";\n\tshowHardwareCursor: boolean;\n\teditorPaddingX: number;\n\toutputPad: 0 | 1;\n\tautocompleteMaxVisible: number;\n\tquietStartup: boolean;\n\tdefaultProjectTrust: DefaultProjectTrust;\n\tclearOnShrink: boolean;\n\tshowTerminalProgress: boolean;\n\ttuiMode: TuiMode;\n\tfullscreenExitOutput: FullscreenExitOutput;\n\tfullscreenScrollbar: ScrollViewScrollbar;\n\twarnings: WarningSettings;\n}\n\nexport interface SettingsCallbacks {\n\tonAutoCompactChange: (enabled: boolean) => void;\n\tonShowImagesChange: (enabled: boolean) => void;\n\tonImageWidthCellsChange: (width: number) => void;\n\tonAutoResizeImagesChange: (enabled: boolean) => void;\n\tonBlockImagesChange: (blocked: boolean) => void;\n\tonEnableSkillCommandsChange: (enabled: boolean) => void;\n\tonSteeringModeChange: (mode: \"all\" | \"one-at-a-time\") => void;\n\tonFollowUpModeChange: (mode: \"all\" | \"one-at-a-time\") => void;\n\tonTransportChange: (transport: Transport) => void;\n\tonHttpIdleTimeoutMsChange: (timeoutMs: number) => void;\n\tonThinkingLevelChange: (level: ThinkingLevel) => void;\n\tonThemeChange: (theme: string) => void;\n\tonThemePreview?: (theme: string) => void;\n\tonHideThinkingBlockChange: (hidden: boolean) => void;\n\tonMermaidRenderingModeChange: (mode: MermaidRenderingMode) => void;\n\tonShowCacheMissNoticesChange: (shown: boolean) => void;\n\tonCollapseChangelogChange: (collapsed: boolean) => void;\n\tonEnableInstallTelemetryChange: (enabled: boolean) => void;\n\tonDoubleEscapeActionChange: (action: \"fork\" | \"tree\" | \"none\") => void;\n\tonTreeFilterModeChange: (mode: \"default\" | \"no-tools\" | \"user-only\" | \"labeled-only\" | \"all\") => void;\n\tonShowHardwareCursorChange: (enabled: boolean) => void;\n\tonEditorPaddingXChange: (padding: number) => void;\n\tonOutputPadChange: (padding: 0 | 1) => void;\n\tonAutocompleteMaxVisibleChange: (maxVisible: number) => void;\n\tonQuietStartupChange: (enabled: boolean) => void;\n\tonDefaultProjectTrustChange: (defaultProjectTrust: DefaultProjectTrust) => void;\n\tonClearOnShrinkChange: (enabled: boolean) => void;\n\tonShowTerminalProgressChange: (enabled: boolean) => void;\n\tonTuiModeChange: (mode: TuiMode) => void;\n\tonFullscreenExitOutputChange: (output: FullscreenExitOutput) => void;\n\tonFullscreenScrollbarChange: (mode: ScrollViewScrollbar) => void;\n\tonWarningsChange: (warnings: WarningSettings) => void;\n\tonCancel: () => void;\n}\n\n/**\n * A submenu component for selecting from a list of options.\n */\nclass WarningSettingsSubmenu extends Container {\n\tprivate settingsList: SettingsList;\n\tprivate state: WarningSettings;\n\n\tconstructor(warnings: WarningSettings, onChange: (warnings: WarningSettings) => void, onCancel: () => void) {\n\t\tsuper();\n\n\t\tthis.state = { ...warnings };\n\n\t\tconst items: SettingItem[] = [\n\t\t\t{\n\t\t\t\tid: \"anthropic-extra-usage\",\n\t\t\t\tlabel: \"Anthropic extra usage\",\n\t\t\t\tdescription: \"Warn when Anthropic subscription auth may use paid extra usage\",\n\t\t\t\tcurrentValue: (this.state.anthropicExtraUsage ?? true) ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t];\n\n\t\tthis.settingsList = new SettingsList(\n\t\t\titems,\n\t\t\tMath.min(items.length, 10),\n\t\t\tgetSettingsListTheme(),\n\t\t\t(id, newValue) => {\n\t\t\t\tswitch (id) {\n\t\t\t\t\tcase \"anthropic-extra-usage\":\n\t\t\t\t\t\tthis.state = { ...this.state, anthropicExtraUsage: newValue === \"true\" };\n\t\t\t\t\t\tonChange({ ...this.state });\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonCancel,\n\t\t);\n\n\t\tthis.addChild(this.settingsList);\n\t}\n\n\thandleInput(data: string): void {\n\t\tthis.settingsList.handleInput(data);\n\t}\n}\n\nclass SelectSubmenu extends Container {\n\tprivate selectList: SelectList;\n\n\tconstructor(\n\t\ttitle: string,\n\t\tdescription: string,\n\t\toptions: SelectItem[],\n\t\tcurrentValue: string,\n\t\tonSelect: (value: string) => void,\n\t\tonCancel: () => void,\n\t\tonSelectionChange?: (value: string) => void,\n\t) {\n\t\tsuper();\n\n\t\t// Title\n\t\tthis.addChild(new Text(theme.bold(theme.fg(\"accent\", title)), 0, 0));\n\n\t\t// Description\n\t\tif (description) {\n\t\t\tthis.addChild(new Spacer(1));\n\t\t\tthis.addChild(new Text(theme.fg(\"muted\", description), 0, 0));\n\t\t}\n\n\t\t// Spacer\n\t\tthis.addChild(new Spacer(1));\n\n\t\t// Select list\n\t\tthis.selectList = new SelectList(\n\t\t\toptions,\n\t\t\tMath.min(options.length, 10),\n\t\t\tgetSelectListTheme(),\n\t\t\tSETTINGS_SUBMENU_SELECT_LIST_LAYOUT,\n\t\t);\n\n\t\t// Pre-select current value\n\t\tconst currentIndex = options.findIndex((o) => o.value === currentValue);\n\t\tif (currentIndex !== -1) {\n\t\t\tthis.selectList.setSelectedIndex(currentIndex);\n\t\t}\n\n\t\tthis.selectList.onSelect = (item) => {\n\t\t\tonSelect(item.value);\n\t\t};\n\n\t\tthis.selectList.onCancel = onCancel;\n\n\t\tif (onSelectionChange) {\n\t\t\tthis.selectList.onSelectionChange = (item) => {\n\t\t\t\tonSelectionChange(item.value);\n\t\t\t};\n\t\t}\n\n\t\tthis.addChild(this.selectList);\n\n\t\t// Hint\n\t\tthis.addChild(new Spacer(1));\n\t\tthis.addChild(new Text(theme.fg(\"dim\", \" Enter to select · Esc to go back\"), 0, 0));\n\t}\n\n\thandleInput(data: string): void {\n\t\tthis.selectList.handleInput(data);\n\t}\n}\n\nfunction themeItems(availableThemes: string[]): SelectItem[] {\n\treturn availableThemes.map((name) => ({ value: name, label: name }));\n}\n\nconst AUTOMATIC_THEME_VALUE = \"/\";\n\nfunction singleModeThemeItems(availableThemes: string[]): SelectItem[] {\n\treturn [\n\t\t{\n\t\t\tvalue: AUTOMATIC_THEME_VALUE,\n\t\t\tlabel: \"Automatic\",\n\t\t\tdescription: \"Use separate themes for light and dark terminal appearance\",\n\t\t},\n\t\t...themeItems(availableThemes),\n\t];\n}\n\nfunction preferredTheme(availableThemes: string[], preferred: string | undefined, fallback: string): string {\n\tif (preferred && availableThemes.includes(preferred)) return preferred;\n\tif (availableThemes.includes(fallback)) return fallback;\n\treturn availableThemes[0] ?? fallback;\n}\n\nfunction defaultAutomaticThemes(\n\tcurrentThemeSetting: string,\n\tavailableThemes: string[],\n): { lightTheme: string; darkTheme: string } {\n\tconst autoTheme = parseAutoThemeSetting(currentThemeSetting);\n\tif (autoTheme) return autoTheme;\n\n\tconst currentFixedTheme = currentThemeSetting.includes(\"/\") ? undefined : currentThemeSetting;\n\tconst themeName = preferredTheme(availableThemes, currentFixedTheme, \"dark\");\n\treturn { lightTheme: themeName, darkTheme: themeName };\n}\n\nclass ThemeSubmenu extends Container {\n\tprivate inputComponent: Component | undefined;\n\tprivate readonly callbacks: SettingsCallbacks;\n\tprivate readonly availableThemes: string[];\n\tprivate readonly terminalTheme: TerminalTheme;\n\tprivate readonly onDone: (selectedValue?: string) => void;\n\tprivate readonly originalThemeSetting: string;\n\tprivate mode: \"single\" | \"automatic\";\n\tprivate singleTheme: string;\n\tprivate lightTheme: string;\n\tprivate darkTheme: string;\n\n\tconstructor(\n\t\tcurrentThemeSetting: string,\n\t\tterminalTheme: TerminalTheme,\n\t\tavailableThemes: string[],\n\t\tcallbacks: SettingsCallbacks,\n\t\tonDone: (selectedValue?: string) => void,\n\t) {\n\t\tsuper();\n\t\tthis.callbacks = callbacks;\n\t\tthis.availableThemes = availableThemes;\n\t\tthis.terminalTheme = terminalTheme;\n\t\tthis.onDone = onDone;\n\t\tthis.originalThemeSetting = currentThemeSetting;\n\t\tconst autoTheme = parseAutoThemeSetting(currentThemeSetting);\n\t\tconst automaticThemes = defaultAutomaticThemes(currentThemeSetting, availableThemes);\n\t\tconst fixedTheme = autoTheme || currentThemeSetting.includes(\"/\") ? undefined : currentThemeSetting;\n\t\tthis.mode = autoTheme ? \"automatic\" : \"single\";\n\t\tthis.lightTheme = automaticThemes.lightTheme;\n\t\tthis.darkTheme = automaticThemes.darkTheme;\n\t\tthis.singleTheme = preferredTheme(\n\t\t\tavailableThemes,\n\t\t\tfixedTheme ?? (autoTheme ? this.getActiveAutomaticTheme() : undefined),\n\t\t\t\"dark\",\n\t\t);\n\n\t\tif (this.mode === \"automatic\") {\n\t\t\tthis.showAutomaticMenu();\n\t\t} else {\n\t\t\tthis.showSingleMenu();\n\t\t}\n\t}\n\n\thandleInput(data: string): void {\n\t\tthis.inputComponent?.handleInput?.(data);\n\t}\n\n\tprivate setContent(renderComponent: Component, inputComponent: Component = renderComponent): void {\n\t\tthis.clear();\n\t\tthis.addChild(renderComponent);\n\t\tthis.inputComponent = inputComponent;\n\t}\n\n\tprivate showSingleMenu(): void {\n\t\tthis.mode = \"single\";\n\t\tconst menu = new SelectSubmenu(\n\t\t\t\"Theme\",\n\t\t\t\"Select a theme, or choose Automatic to follow terminal appearance.\",\n\t\t\tsingleModeThemeItems(this.availableThemes),\n\t\t\tthis.singleTheme,\n\t\t\t(value) => {\n\t\t\t\tif (value === AUTOMATIC_THEME_VALUE) {\n\t\t\t\t\tthis.mode = \"automatic\";\n\t\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\t\tthis.showAutomaticMenu();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.singleTheme = value;\n\t\t\t\tthis.apply(value);\n\t\t\t},\n\t\t\t() => this.cancel(),\n\t\t\t(value) => {\n\t\t\t\tthis.callbacks.onThemePreview?.(value === AUTOMATIC_THEME_VALUE ? this.getAutomaticThemeSetting() : value);\n\t\t\t},\n\t\t);\n\t\tthis.setContent(menu);\n\t}\n\n\tprivate showAutomaticMenu(): void {\n\t\tthis.mode = \"automatic\";\n\t\tconst content = new Container();\n\t\tcontent.addChild(new Text(theme.bold(theme.fg(\"accent\", \"Automatic Theme\")), 0, 0));\n\t\tcontent.addChild(new Spacer(1));\n\t\tcontent.addChild(new Text(theme.fg(\"muted\", \"Choose themes for terminal light and dark appearance.\"), 0, 0));\n\t\tcontent.addChild(new Text(theme.fg(\"muted\", \"Light/dark detection requires terminal support.\"), 0, 0));\n\t\tcontent.addChild(new Spacer(1));\n\n\t\tconst items: SettingItem[] = [\n\t\t\t{\n\t\t\t\tid: \"light-theme\",\n\t\t\t\tlabel: \"Light theme\",\n\t\t\t\tdescription: \"Theme to use in automatic mode when the terminal is light\",\n\t\t\t\tcurrentValue: this.lightTheme,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tthis.createThemeSelect(\n\t\t\t\t\t\t\"Light Theme\",\n\t\t\t\t\t\t\"Select the theme to use for light terminal appearance\",\n\t\t\t\t\t\tcurrentValue,\n\t\t\t\t\t\tdone,\n\t\t\t\t\t\t(value) => {\n\t\t\t\t\t\t\tthis.lightTheme = value;\n\t\t\t\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\t\t\t\tdone(value);\n\t\t\t\t\t\t},\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"dark-theme\",\n\t\t\t\tlabel: \"Dark theme\",\n\t\t\t\tdescription: \"Theme to use in automatic mode when the terminal is dark\",\n\t\t\t\tcurrentValue: this.darkTheme,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tthis.createThemeSelect(\n\t\t\t\t\t\t\"Dark Theme\",\n\t\t\t\t\t\t\"Select the theme to use for dark terminal appearance\",\n\t\t\t\t\t\tcurrentValue,\n\t\t\t\t\t\tdone,\n\t\t\t\t\t\t(value) => {\n\t\t\t\t\t\t\tthis.darkTheme = value;\n\t\t\t\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\t\t\t\tdone(value);\n\t\t\t\t\t\t},\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"apply\",\n\t\t\t\tlabel: \"Apply\",\n\t\t\t\tdescription: \"Save and go back\",\n\t\t\t\tcurrentValue: \"save and go back\",\n\t\t\t\tvalues: [\"save and go back\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"single-mode\",\n\t\t\t\tlabel: \"Change mode\",\n\t\t\t\tdescription: \"Switch to one theme for light and dark\",\n\t\t\t\tcurrentValue: \"switch to single theme\",\n\t\t\t\tvalues: [\"switch to single theme\"],\n\t\t\t},\n\t\t];\n\n\t\tconst settingsList = new SettingsList(\n\t\t\titems,\n\t\t\tMath.min(items.length, 10),\n\t\t\tgetSettingsListTheme(),\n\t\t\t(id) => {\n\t\t\t\tswitch (id) {\n\t\t\t\t\tcase \"single-mode\":\n\t\t\t\t\t\tthis.mode = \"single\";\n\t\t\t\t\t\tthis.singleTheme = this.getActiveAutomaticTheme();\n\t\t\t\t\t\tthis.callbacks.onThemePreview?.(this.singleTheme);\n\t\t\t\t\t\tthis.showSingleMenu();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"apply\":\n\t\t\t\t\t\tthis.apply(this.getAutomaticThemeSetting());\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t},\n\t\t\t() => this.cancel(),\n\t\t);\n\t\tcontent.addChild(settingsList);\n\t\tthis.setContent(content, settingsList);\n\t}\n\n\tprivate createThemeSelect(\n\t\ttitle: string,\n\t\tdescription: string,\n\t\tcurrentValue: string,\n\t\tdone: (selectedValue?: string) => void,\n\t\tonSelect: (value: string) => void,\n\t): SelectSubmenu {\n\t\treturn new SelectSubmenu(\n\t\t\ttitle,\n\t\t\tdescription,\n\t\t\tthemeItems(this.availableThemes),\n\t\t\tcurrentValue,\n\t\t\tonSelect,\n\t\t\t() => {\n\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\tdone();\n\t\t\t},\n\t\t\t(value) => this.callbacks.onThemePreview?.(value),\n\t\t);\n\t}\n\n\tprivate getThemeSetting(): string {\n\t\treturn this.mode === \"automatic\" ? this.getAutomaticThemeSetting() : this.singleTheme;\n\t}\n\n\tprivate getActiveAutomaticTheme(): string {\n\t\treturn this.terminalTheme === \"light\" ? this.lightTheme : this.darkTheme;\n\t}\n\n\tprivate getAutomaticThemeSetting(): string {\n\t\treturn `${this.lightTheme}/${this.darkTheme}`;\n\t}\n\n\tprivate apply(themeSetting: string): void {\n\t\tthis.onDone(themeSetting);\n\t}\n\n\tprivate cancel(): void {\n\t\tthis.callbacks.onThemePreview?.(this.originalThemeSetting);\n\t\tthis.onDone();\n\t}\n}\n\n/**\n * Main settings selector component.\n */\nexport class SettingsSelectorComponent extends Container {\n\tprivate settingsList: SettingsList;\n\n\tconstructor(config: SettingsConfig, callbacks: SettingsCallbacks) {\n\t\tsuper();\n\n\t\tconst supportsImages = getCapabilities().images;\n\t\tconst followUpKey = keyDisplayText(\"app.message.followUp\");\n\t\tlet currentWarnings = { ...config.warnings };\n\n\t\tconst items: SettingItem[] = [\n\t\t\t{\n\t\t\t\tid: \"autocompact\",\n\t\t\t\tlabel: \"Auto-compact\",\n\t\t\t\tdescription: \"Automatically compact context when it gets too large\",\n\t\t\t\tcurrentValue: config.autoCompact ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"steering-mode\",\n\t\t\t\tlabel: \"Steering mode\",\n\t\t\t\tdescription:\n\t\t\t\t\t\"Enter while streaming queues steering messages. 'one-at-a-time': deliver one, wait for response. 'all': deliver all at once.\",\n\t\t\t\tcurrentValue: config.steeringMode,\n\t\t\t\tvalues: [\"one-at-a-time\", \"all\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"follow-up-mode\",\n\t\t\t\tlabel: \"Follow-up mode\",\n\t\t\t\tdescription: `${followUpKey} queues follow-up messages until agent stops. 'one-at-a-time': deliver one, wait for response. 'all': deliver all at once.`,\n\t\t\t\tcurrentValue: config.followUpMode,\n\t\t\t\tvalues: [\"one-at-a-time\", \"all\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"transport\",\n\t\t\t\tlabel: \"Transport\",\n\t\t\t\tdescription: \"Preferred transport for providers that support multiple transports\",\n\t\t\t\tcurrentValue: config.transport,\n\t\t\t\tvalues: [\"sse\", \"websocket\", \"websocket-cached\", \"auto\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"http-idle-timeout\",\n\t\t\t\tlabel: \"HTTP idle timeout\",\n\t\t\t\tdescription:\n\t\t\t\t\t\"Maximum idle gap while waiting for HTTP headers or body chunks. Disable for local models that pause longer than five minutes.\",\n\t\t\t\tcurrentValue: formatHttpIdleTimeoutMs(config.httpIdleTimeoutMs),\n\t\t\t\tvalues: HTTP_IDLE_TIMEOUT_CHOICES.map((choice) => choice.label),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"hide-thinking\",\n\t\t\t\tlabel: \"Hide thinking\",\n\t\t\t\tdescription: \"Hide thinking blocks in assistant responses\",\n\t\t\t\tcurrentValue: config.hideThinkingBlock ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"mermaid-rendering\",\n\t\t\t\tlabel: \"Mermaid diagrams\",\n\t\t\t\tdescription: \"Render Mermaid code blocks as Unicode diagrams\",\n\t\t\t\tcurrentValue: config.mermaidRenderingMode,\n\t\t\t\tvalues: [\"off\", \"final\", \"streaming\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"cache-miss-notices\",\n\t\t\t\tlabel: \"Cache miss notices\",\n\t\t\t\tdescription: \"Show transcript notices for significant prompt-cache misses\",\n\t\t\t\tcurrentValue: config.showCacheMissNotices ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"collapse-changelog\",\n\t\t\t\tlabel: \"Collapse changelog\",\n\t\t\t\tdescription: \"Show condensed changelog after updates\",\n\t\t\t\tcurrentValue: config.collapseChangelog ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"quiet-startup\",\n\t\t\t\tlabel: \"Quiet startup\",\n\t\t\t\tdescription: \"Disable verbose printing at startup\",\n\t\t\t\tcurrentValue: config.quietStartup ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"install-telemetry\",\n\t\t\t\tlabel: \"Install telemetry\",\n\t\t\t\tdescription: \"Send an anonymous version/update ping after changelog-detected updates\",\n\t\t\t\tcurrentValue: config.enableInstallTelemetry ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"default-project-trust\",\n\t\t\t\tlabel: \"Default project trust\",\n\t\t\t\tdescription: \"Fallback behavior when no extension or saved trust decision decides project trust\",\n\t\t\t\tcurrentValue: DEFAULT_PROJECT_TRUST_LABELS[config.defaultProjectTrust],\n\t\t\t\tvalues: Object.values(DEFAULT_PROJECT_TRUST_LABELS),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"double-escape-action\",\n\t\t\t\tlabel: \"Double-escape action\",\n\t\t\t\tdescription: \"Action when pressing Escape twice with empty editor\",\n\t\t\t\tcurrentValue: config.doubleEscapeAction,\n\t\t\t\tvalues: [\"tree\", \"fork\", \"none\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"tree-filter-mode\",\n\t\t\t\tlabel: \"Tree filter mode\",\n\t\t\t\tdescription: \"Default filter when opening /tree\",\n\t\t\t\tcurrentValue: config.treeFilterMode,\n\t\t\t\tvalues: [\"default\", \"no-tools\", \"user-only\", \"labeled-only\", \"all\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"warnings\",\n\t\t\t\tlabel: \"Warnings\",\n\t\t\t\tdescription: \"Enable or disable individual warnings\",\n\t\t\t\tcurrentValue: \"configure\",\n\t\t\t\tsubmenu: (_currentValue, done) =>\n\t\t\t\t\tnew WarningSettingsSubmenu(\n\t\t\t\t\t\tcurrentWarnings,\n\t\t\t\t\t\t(warnings) => {\n\t\t\t\t\t\t\tcurrentWarnings = warnings;\n\t\t\t\t\t\t\tcallbacks.onWarningsChange(warnings);\n\t\t\t\t\t\t},\n\t\t\t\t\t\t() => done(),\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"thinking\",\n\t\t\t\tlabel: \"Thinking level\",\n\t\t\t\tdescription: \"Reasoning depth for thinking-capable models\",\n\t\t\t\tcurrentValue: config.thinkingLevel,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tnew SelectSubmenu(\n\t\t\t\t\t\t\"Thinking Level\",\n\t\t\t\t\t\t\"Select reasoning depth for thinking-capable models\",\n\t\t\t\t\t\tconfig.availableThinkingLevels.map((level) => ({\n\t\t\t\t\t\t\tvalue: level,\n\t\t\t\t\t\t\tlabel: level,\n\t\t\t\t\t\t\tdescription: THINKING_DESCRIPTIONS[level],\n\t\t\t\t\t\t})),\n\t\t\t\t\t\tcurrentValue,\n\t\t\t\t\t\t(value) => {\n\t\t\t\t\t\t\tcallbacks.onThinkingLevelChange(value as ThinkingLevel);\n\t\t\t\t\t\t\tdone(value);\n\t\t\t\t\t\t},\n\t\t\t\t\t\t() => done(),\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"tui-mode\",\n\t\t\t\tlabel: \"TUI mode\",\n\t\t\t\tdescription: \"Interface layout; fullscreen mode is experimental\",\n\t\t\t\tcurrentValue: config.tuiMode,\n\t\t\t\tvalues: [\"regular\", \"fullscreen\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"fullscreen-exit-output\",\n\t\t\t\tlabel: \"Fullscreen exit output\",\n\t\t\t\tdescription: \"Print the transcript or only a session resume hint when exiting fullscreen mode\",\n\t\t\t\tcurrentValue: config.fullscreenExitOutput,\n\t\t\t\tvalues: [\"transcript\", \"resume-hint\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"fullscreen-scrollbar\",\n\t\t\t\tlabel: \"Fullscreen scrollbar\",\n\t\t\t\tdescription: \"Scrollbar behavior in fullscreen mode; has no effect in regular mode\",\n\t\t\t\tcurrentValue: config.fullscreenScrollbar,\n\t\t\t\tvalues: [\"auto\", \"always\", \"hidden\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"theme\",\n\t\t\t\tlabel: \"Theme\",\n\t\t\t\tdescription: \"Color theme for the interface\",\n\t\t\t\tcurrentValue: config.currentTheme,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tnew ThemeSubmenu(currentValue, config.terminalTheme, config.availableThemes, callbacks, done),\n\t\t\t},\n\t\t];\n\n\t\t// Only show image toggle if terminal supports it\n\t\tif (supportsImages) {\n\t\t\t// Insert after autocompact\n\t\t\titems.splice(1, 0, {\n\t\t\t\tid: \"show-images\",\n\t\t\t\tlabel: \"Show images\",\n\t\t\t\tdescription: \"Render images inline in terminal\",\n\t\t\t\tcurrentValue: config.showImages ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t});\n\t\t\titems.splice(2, 0, {\n\t\t\t\tid: \"image-width-cells\",\n\t\t\t\tlabel: \"Image width\",\n\t\t\t\tdescription: \"Preferred inline image width in terminal cells\",\n\t\t\t\tcurrentValue: String(config.imageWidthCells),\n\t\t\t\tvalues: [\"60\", \"80\", \"120\"],\n\t\t\t});\n\t\t}\n\n\t\t// Image auto-resize toggle (always available, affects both attached and read images)\n\t\titems.splice(supportsImages ? 3 : 1, 0, {\n\t\t\tid: \"auto-resize-images\",\n\t\t\tlabel: \"Auto-resize images\",\n\t\t\tdescription: \"Resize large images to 2000x2000 max for better model compatibility\",\n\t\t\tcurrentValue: config.autoResizeImages ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Block images toggle (always available, insert after auto-resize-images)\n\t\tconst autoResizeIndex = items.findIndex((item) => item.id === \"auto-resize-images\");\n\t\titems.splice(autoResizeIndex + 1, 0, {\n\t\t\tid: \"block-images\",\n\t\t\tlabel: \"Block images\",\n\t\t\tdescription: \"Prevent images from being sent to LLM providers\",\n\t\t\tcurrentValue: config.blockImages ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Skill commands toggle (insert after block-images)\n\t\tconst blockImagesIndex = items.findIndex((item) => item.id === \"block-images\");\n\t\titems.splice(blockImagesIndex + 1, 0, {\n\t\t\tid: \"skill-commands\",\n\t\t\tlabel: \"Skill commands\",\n\t\t\tdescription: \"Register skills as /skill:name commands\",\n\t\t\tcurrentValue: config.enableSkillCommands ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Hardware cursor toggle (insert after skill-commands)\n\t\tconst skillCommandsIndex = items.findIndex((item) => item.id === \"skill-commands\");\n\t\titems.splice(skillCommandsIndex + 1, 0, {\n\t\t\tid: \"show-hardware-cursor\",\n\t\t\tlabel: \"Show hardware cursor\",\n\t\t\tdescription: \"Show the terminal cursor while still positioning it for IME support\",\n\t\t\tcurrentValue: config.showHardwareCursor ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Editor padding toggle (insert after show-hardware-cursor)\n\t\tconst hardwareCursorIndex = items.findIndex((item) => item.id === \"show-hardware-cursor\");\n\t\titems.splice(hardwareCursorIndex + 1, 0, {\n\t\t\tid: \"editor-padding\",\n\t\t\tlabel: \"Editor padding\",\n\t\t\tdescription: \"Horizontal padding for input editor (0-3)\",\n\t\t\tcurrentValue: String(config.editorPaddingX),\n\t\t\tvalues: [\"0\", \"1\", \"2\", \"3\"],\n\t\t});\n\n\t\t// Output padding toggle (insert after editor-padding)\n\t\tconst editorPaddingIndex = items.findIndex((item) => item.id === \"editor-padding\");\n\t\titems.splice(editorPaddingIndex + 1, 0, {\n\t\t\tid: \"output-padding\",\n\t\t\tlabel: \"Output padding\",\n\t\t\tdescription: \"Horizontal padding for user messages, assistant messages, and thinking\",\n\t\t\tcurrentValue: String(config.outputPad),\n\t\t\tvalues: [\"0\", \"1\"],\n\t\t});\n\n\t\t// Autocomplete max visible toggle (insert after output-padding)\n\t\tconst outputPaddingIndex = items.findIndex((item) => item.id === \"output-padding\");\n\t\titems.splice(outputPaddingIndex + 1, 0, {\n\t\t\tid: \"autocomplete-max-visible\",\n\t\t\tlabel: \"Autocomplete max items\",\n\t\t\tdescription: \"Max visible items in autocomplete dropdown (3-20)\",\n\t\t\tcurrentValue: String(config.autocompleteMaxVisible),\n\t\t\tvalues: [\"3\", \"5\", \"7\", \"10\", \"15\", \"20\"],\n\t\t});\n\n\t\t// Clear on shrink toggle (insert after autocomplete-max-visible)\n\t\tconst autocompleteIndex = items.findIndex((item) => item.id === \"autocomplete-max-visible\");\n\t\titems.splice(autocompleteIndex + 1, 0, {\n\t\t\tid: \"clear-on-shrink\",\n\t\t\tlabel: \"Clear on shrink\",\n\t\t\tdescription: \"Clear empty rows when content shrinks (may cause flicker)\",\n\t\t\tcurrentValue: config.clearOnShrink ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Terminal progress toggle (insert after clear-on-shrink)\n\t\tconst clearOnShrinkIndex = items.findIndex((item) => item.id === \"clear-on-shrink\");\n\t\titems.splice(clearOnShrinkIndex + 1, 0, {\n\t\t\tid: \"terminal-progress\",\n\t\t\tlabel: \"Terminal progress\",\n\t\t\tdescription: \"Show OSC 9;4 progress indicators in the terminal tab bar\",\n\t\t\tcurrentValue: config.showTerminalProgress ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Add borders\n\t\tthis.addChild(new DynamicBorder());\n\n\t\tthis.settingsList = new SettingsList(\n\t\t\titems,\n\t\t\t10,\n\t\t\tgetSettingsListTheme(),\n\t\t\t(id, newValue) => {\n\t\t\t\tswitch (id) {\n\t\t\t\t\tcase \"autocompact\":\n\t\t\t\t\t\tcallbacks.onAutoCompactChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"show-images\":\n\t\t\t\t\t\tcallbacks.onShowImagesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image-width-cells\":\n\t\t\t\t\t\tcallbacks.onImageWidthCellsChange(parseInt(newValue, 10));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"auto-resize-images\":\n\t\t\t\t\t\tcallbacks.onAutoResizeImagesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"block-images\":\n\t\t\t\t\t\tcallbacks.onBlockImagesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"skill-commands\":\n\t\t\t\t\t\tcallbacks.onEnableSkillCommandsChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"steering-mode\":\n\t\t\t\t\t\tcallbacks.onSteeringModeChange(newValue as \"all\" | \"one-at-a-time\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"follow-up-mode\":\n\t\t\t\t\t\tcallbacks.onFollowUpModeChange(newValue as \"all\" | \"one-at-a-time\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"transport\":\n\t\t\t\t\t\tcallbacks.onTransportChange(newValue as Transport);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"http-idle-timeout\": {\n\t\t\t\t\t\tconst choice = HTTP_IDLE_TIMEOUT_CHOICES.find((item) => item.label === newValue);\n\t\t\t\t\t\tif (choice) {\n\t\t\t\t\t\t\tcallbacks.onHttpIdleTimeoutMsChange(choice.timeoutMs);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"hide-thinking\":\n\t\t\t\t\t\tcallbacks.onHideThinkingBlockChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"mermaid-rendering\":\n\t\t\t\t\t\tcallbacks.onMermaidRenderingModeChange(newValue as MermaidRenderingMode);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"cache-miss-notices\":\n\t\t\t\t\t\tcallbacks.onShowCacheMissNoticesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"collapse-changelog\":\n\t\t\t\t\t\tcallbacks.onCollapseChangelogChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"quiet-startup\":\n\t\t\t\t\t\tcallbacks.onQuietStartupChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"install-telemetry\":\n\t\t\t\t\t\tcallbacks.onEnableInstallTelemetryChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"default-project-trust\": {\n\t\t\t\t\t\tconst defaultProjectTrust = DEFAULT_PROJECT_TRUST_BY_LABEL.get(newValue);\n\t\t\t\t\t\tif (defaultProjectTrust) {\n\t\t\t\t\t\t\tcallbacks.onDefaultProjectTrustChange(defaultProjectTrust);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"double-escape-action\":\n\t\t\t\t\t\tcallbacks.onDoubleEscapeActionChange(newValue as \"fork\" | \"tree\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"tree-filter-mode\":\n\t\t\t\t\t\tcallbacks.onTreeFilterModeChange(\n\t\t\t\t\t\t\tnewValue as \"default\" | \"no-tools\" | \"user-only\" | \"labeled-only\" | \"all\",\n\t\t\t\t\t\t);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"show-hardware-cursor\":\n\t\t\t\t\t\tcallbacks.onShowHardwareCursorChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"editor-padding\":\n\t\t\t\t\t\tcallbacks.onEditorPaddingXChange(parseInt(newValue, 10));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"output-padding\":\n\t\t\t\t\t\tcallbacks.onOutputPadChange(newValue === \"0\" ? 0 : 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"autocomplete-max-visible\":\n\t\t\t\t\t\tcallbacks.onAutocompleteMaxVisibleChange(parseInt(newValue, 10));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"clear-on-shrink\":\n\t\t\t\t\t\tcallbacks.onClearOnShrinkChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"terminal-progress\":\n\t\t\t\t\t\tcallbacks.onShowTerminalProgressChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"tui-mode\":\n\t\t\t\t\t\tcallbacks.onTuiModeChange(newValue as TuiMode);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"fullscreen-exit-output\":\n\t\t\t\t\t\tcallbacks.onFullscreenExitOutputChange(newValue as FullscreenExitOutput);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"fullscreen-scrollbar\":\n\t\t\t\t\t\tcallbacks.onFullscreenScrollbarChange(newValue as ScrollViewScrollbar);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"theme\":\n\t\t\t\t\t\tcallbacks.onThemeChange(newValue);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t},\n\t\t\tcallbacks.onCancel,\n\t\t\t{ enableSearch: true },\n\t\t);\n\n\t\tthis.addChild(this.settingsList);\n\t\tthis.addChild(new DynamicBorder());\n\t}\n\n\tgetSettingsList(): SettingsList {\n\t\treturn this.settingsList;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"settings-selector.d.ts","sourceRoot":"","sources":["../../../../src/modes/interactive/components/settings-selector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAA8B,KAAK,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,EAEN,SAAS,EAET,KAAK,mBAAmB,EAGxB,YAAY,EAGZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EACX,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,OAAO,EACP,eAAe,EACf,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAA+C,KAAK,aAAa,EAAS,MAAM,mBAAmB,CAAC;AA2B3G,MAAM,WAAW,cAAc;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,sBAAsB,EAAE,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9C,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,KAAK,GAAG,eAAe,CAAC;IACtC,YAAY,EAAE,KAAK,GAAG,eAAe,CAAC;IACtC,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,uBAAuB,EAAE,aAAa,EAAE,CAAC;IACzC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,OAAO,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7C,cAAc,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,cAAc,GAAG,KAAK,CAAC;IAC9E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,sBAAsB,EAAE,OAAO,CAAC;IAChC,QAAQ,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,mBAAmB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,wBAAwB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,mBAAmB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,2BAA2B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,oBAAoB,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe,KAAK,IAAI,CAAC;IAC9D,oBAAoB,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,eAAe,KAAK,IAAI,CAAC;IAC9D,iBAAiB,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IAClD,yBAAyB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,0BAA0B,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9F,0BAA0B,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxE,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,yBAAyB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,4BAA4B,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACnE,4BAA4B,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,yBAAyB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,8BAA8B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,0BAA0B,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACvE,sBAAsB,EAAE,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,cAAc,GAAG,KAAK,KAAK,IAAI,CAAC;IACtG,0BAA0B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IAC5C,8BAA8B,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,2BAA2B,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChF,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,4BAA4B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACzD,eAAe,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,4BAA4B,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACrE,2BAA2B,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,8BAA8B,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,gBAAgB,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAsTD;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,SAAS;IACvD,OAAO,CAAC,YAAY,CAAe;IAEnC,YAAY,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EA6e/D;IAED,eAAe,IAAI,YAAY,CAE9B;CACD","sourcesContent":["import type { ThinkingLevel } from \"@earendil-works/pi-agent-core\";\nimport { getSupportedThinkingLevels, type Model, type Transport } from \"@earendil-works/pi-ai\";\nimport {\n\ttype Component,\n\tContainer,\n\tgetCapabilities,\n\ttype ScrollViewScrollbar,\n\ttype SelectItem,\n\ttype SettingItem,\n\tSettingsList,\n\tSpacer,\n\tText,\n} from \"@earendil-works/pi-tui\";\nimport { formatHttpIdleTimeoutMs, HTTP_IDLE_TIMEOUT_CHOICES } from \"../../../core/http-dispatcher.ts\";\nimport type {\n\tDefaultProjectTrust,\n\tFullscreenExitOutput,\n\tMermaidRenderingMode,\n\tTuiMode,\n\tWarningSettings,\n} from \"../../../core/settings-manager.ts\";\nimport { getSettingsListTheme, parseAutoThemeSetting, type TerminalTheme, theme } from \"../theme/theme.ts\";\nimport { DynamicBorder } from \"./dynamic-border.ts\";\nimport { keyDisplayText } from \"./keybinding-hints.ts\";\nimport { SelectSubmenu, SteppedSubmenu, type SteppedSubmenuStep } from \"./settings-submenu.ts\";\n\nconst MODEL_PICKER_LAYOUT = { minPrimaryColumnWidth: 12, maxPrimaryColumnWidth: 46 };\n\nconst THINKING_DESCRIPTIONS: Record<ThinkingLevel, string> = {\n\toff: \"No reasoning\",\n\tminimal: \"Very brief reasoning (~1k tokens)\",\n\tlow: \"Light reasoning (~2k tokens)\",\n\tmedium: \"Moderate reasoning (~8k tokens)\",\n\thigh: \"Deep reasoning (~16k tokens)\",\n\txhigh: \"Extra-high reasoning (~32k tokens)\",\n\tmax: \"Maximum reasoning\",\n};\n\nconst DEFAULT_PROJECT_TRUST_LABELS: Record<DefaultProjectTrust, string> = {\n\task: \"Ask\",\n\talways: \"Always trust\",\n\tnever: \"Never trust\",\n};\n\nconst DEFAULT_PROJECT_TRUST_BY_LABEL = new Map(\n\tObject.entries(DEFAULT_PROJECT_TRUST_LABELS).map(([value, label]) => [label, value as DefaultProjectTrust]),\n);\n\nexport interface SettingsConfig {\n\tautoCompact: boolean;\n\tdefaultModel: string;\n\tcurrentModel?: Model<any>;\n\tavailableDefaultModels: readonly Model<any>[];\n\tshowImages: boolean;\n\timageWidthCells: number;\n\tautoResizeImages: boolean;\n\tblockImages: boolean;\n\tenableSkillCommands: boolean;\n\tsteeringMode: \"all\" | \"one-at-a-time\";\n\tfollowUpMode: \"all\" | \"one-at-a-time\";\n\ttransport: Transport;\n\thttpIdleTimeoutMs: number;\n\tthinkingLevel: ThinkingLevel;\n\tavailableThinkingLevels: ThinkingLevel[];\n\tmodelThinkingLevels: Record<string, ThinkingLevel>;\n\tcurrentTheme: string;\n\tterminalTheme: TerminalTheme;\n\tavailableThemes: string[];\n\thideThinkingBlock: boolean;\n\tmermaidRenderingMode: MermaidRenderingMode;\n\tshowCacheMissNotices: boolean;\n\tcollapseChangelog: boolean;\n\tenableInstallTelemetry: boolean;\n\tdoubleEscapeAction: \"fork\" | \"tree\" | \"none\";\n\ttreeFilterMode: \"default\" | \"no-tools\" | \"user-only\" | \"labeled-only\" | \"all\";\n\tshowHardwareCursor: boolean;\n\teditorPaddingX: number;\n\toutputPad: 0 | 1;\n\tautocompleteMaxVisible: number;\n\tquietStartup: boolean;\n\tdefaultProjectTrust: DefaultProjectTrust;\n\tclearOnShrink: boolean;\n\tshowTerminalProgress: boolean;\n\ttuiMode: TuiMode;\n\tfullscreenExitOutput: FullscreenExitOutput;\n\tfullscreenScrollbar: ScrollViewScrollbar;\n\tfullscreenCopyOnSelect: boolean;\n\twarnings: WarningSettings;\n}\n\nexport interface SettingsCallbacks {\n\tonAutoCompactChange: (enabled: boolean) => void;\n\tonShowImagesChange: (enabled: boolean) => void;\n\tonImageWidthCellsChange: (width: number) => void;\n\tonAutoResizeImagesChange: (enabled: boolean) => void;\n\tonBlockImagesChange: (blocked: boolean) => void;\n\tonEnableSkillCommandsChange: (enabled: boolean) => void;\n\tonSteeringModeChange: (mode: \"all\" | \"one-at-a-time\") => void;\n\tonFollowUpModeChange: (mode: \"all\" | \"one-at-a-time\") => void;\n\tonTransportChange: (transport: Transport) => void;\n\tonHttpIdleTimeoutMsChange: (timeoutMs: number) => void;\n\tonModelThinkingLevelChange: (provider: string, modelId: string, level: ThinkingLevel) => void;\n\tonModelThinkingLevelRemove: (provider: string, modelId: string) => void;\n\tonThemeChange: (theme: string) => void;\n\tonThemePreview?: (theme: string) => void;\n\tonHideThinkingBlockChange: (hidden: boolean) => void;\n\tonMermaidRenderingModeChange: (mode: MermaidRenderingMode) => void;\n\tonShowCacheMissNoticesChange: (shown: boolean) => void;\n\tonCollapseChangelogChange: (collapsed: boolean) => void;\n\tonEnableInstallTelemetryChange: (enabled: boolean) => void;\n\tonDoubleEscapeActionChange: (action: \"fork\" | \"tree\" | \"none\") => void;\n\tonTreeFilterModeChange: (mode: \"default\" | \"no-tools\" | \"user-only\" | \"labeled-only\" | \"all\") => void;\n\tonShowHardwareCursorChange: (enabled: boolean) => void;\n\tonEditorPaddingXChange: (padding: number) => void;\n\tonOutputPadChange: (padding: 0 | 1) => void;\n\tonAutocompleteMaxVisibleChange: (maxVisible: number) => void;\n\tonQuietStartupChange: (enabled: boolean) => void;\n\tonDefaultProjectTrustChange: (defaultProjectTrust: DefaultProjectTrust) => void;\n\tonClearOnShrinkChange: (enabled: boolean) => void;\n\tonShowTerminalProgressChange: (enabled: boolean) => void;\n\tonTuiModeChange: (mode: TuiMode) => void;\n\tonFullscreenExitOutputChange: (output: FullscreenExitOutput) => void;\n\tonFullscreenScrollbarChange: (mode: ScrollViewScrollbar) => void;\n\tonFullscreenCopyOnSelectChange: (enabled: boolean) => void;\n\tonWarningsChange: (warnings: WarningSettings) => void;\n\tonCancel: () => void;\n}\n\n/**\n * A submenu component for selecting from a list of options.\n */\nclass WarningSettingsSubmenu extends Container {\n\tprivate settingsList: SettingsList;\n\tprivate state: WarningSettings;\n\n\tconstructor(warnings: WarningSettings, onChange: (warnings: WarningSettings) => void, onCancel: () => void) {\n\t\tsuper();\n\n\t\tthis.state = { ...warnings };\n\n\t\tconst items: SettingItem[] = [\n\t\t\t{\n\t\t\t\tid: \"anthropic-extra-usage\",\n\t\t\t\tlabel: \"Anthropic extra usage\",\n\t\t\t\tdescription: \"Warn when Anthropic subscription auth may use paid extra usage\",\n\t\t\t\tcurrentValue: (this.state.anthropicExtraUsage ?? true) ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t];\n\n\t\tthis.settingsList = new SettingsList(\n\t\t\titems,\n\t\t\tMath.min(items.length, 10),\n\t\t\tgetSettingsListTheme(),\n\t\t\t(id, newValue) => {\n\t\t\t\tswitch (id) {\n\t\t\t\t\tcase \"anthropic-extra-usage\":\n\t\t\t\t\t\tthis.state = { ...this.state, anthropicExtraUsage: newValue === \"true\" };\n\t\t\t\t\t\tonChange({ ...this.state });\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonCancel,\n\t\t);\n\n\t\tthis.addChild(this.settingsList);\n\t}\n\n\thandleInput(data: string): void {\n\t\tthis.settingsList.handleInput(data);\n\t}\n}\n\nconst CLEAR_OVERRIDE_VALUE = \"__clear__\";\n\nfunction modelSettingKey(model: Model<any>): string {\n\treturn `${model.provider}/${model.id}`;\n}\n\nfunction modelDisplayLabel(model: Model<any>): string {\n\treturn `${model.id} [${model.provider}]`;\n}\n\nfunction modelThinkingOverridesSummary(overrides: Record<string, ThinkingLevel>): string {\n\tconst count = Object.keys(overrides).length;\n\tif (count === 0) return \"none\";\n\treturn `${count} configured`;\n}\n\nfunction modelItemLabel(model: Model<any>): string {\n\treturn `${model.id} ${theme.fg(\"muted\", `[${model.provider}]`)}`;\n}\n\nfunction themeItems(availableThemes: string[]): SelectItem[] {\n\treturn availableThemes.map((name) => ({ value: name, label: name }));\n}\n\nconst AUTOMATIC_THEME_VALUE = \"/\";\n\nfunction singleModeThemeItems(availableThemes: string[]): SelectItem[] {\n\treturn [\n\t\t{\n\t\t\tvalue: AUTOMATIC_THEME_VALUE,\n\t\t\tlabel: \"Automatic\",\n\t\t\tdescription: \"Use separate themes for light and dark terminal appearance\",\n\t\t},\n\t\t...themeItems(availableThemes),\n\t];\n}\n\nfunction preferredTheme(availableThemes: string[], preferred: string | undefined, fallback: string): string {\n\tif (preferred && availableThemes.includes(preferred)) return preferred;\n\tif (availableThemes.includes(fallback)) return fallback;\n\treturn availableThemes[0] ?? fallback;\n}\n\nfunction defaultAutomaticThemes(\n\tcurrentThemeSetting: string,\n\tavailableThemes: string[],\n): { lightTheme: string; darkTheme: string } {\n\tconst autoTheme = parseAutoThemeSetting(currentThemeSetting);\n\tif (autoTheme) return autoTheme;\n\n\tconst currentFixedTheme = currentThemeSetting.includes(\"/\") ? undefined : currentThemeSetting;\n\tconst themeName = preferredTheme(availableThemes, currentFixedTheme, \"dark\");\n\treturn { lightTheme: themeName, darkTheme: themeName };\n}\n\nclass ThemeSubmenu extends Container {\n\tprivate inputComponent: Component | undefined;\n\tprivate readonly callbacks: SettingsCallbacks;\n\tprivate readonly availableThemes: string[];\n\tprivate readonly terminalTheme: TerminalTheme;\n\tprivate readonly onDone: (selectedValue?: string) => void;\n\tprivate readonly originalThemeSetting: string;\n\tprivate mode: \"single\" | \"automatic\";\n\tprivate singleTheme: string;\n\tprivate lightTheme: string;\n\tprivate darkTheme: string;\n\n\tconstructor(\n\t\tcurrentThemeSetting: string,\n\t\tterminalTheme: TerminalTheme,\n\t\tavailableThemes: string[],\n\t\tcallbacks: SettingsCallbacks,\n\t\tonDone: (selectedValue?: string) => void,\n\t) {\n\t\tsuper();\n\t\tthis.callbacks = callbacks;\n\t\tthis.availableThemes = availableThemes;\n\t\tthis.terminalTheme = terminalTheme;\n\t\tthis.onDone = onDone;\n\t\tthis.originalThemeSetting = currentThemeSetting;\n\t\tconst autoTheme = parseAutoThemeSetting(currentThemeSetting);\n\t\tconst automaticThemes = defaultAutomaticThemes(currentThemeSetting, availableThemes);\n\t\tconst fixedTheme = autoTheme || currentThemeSetting.includes(\"/\") ? undefined : currentThemeSetting;\n\t\tthis.mode = autoTheme ? \"automatic\" : \"single\";\n\t\tthis.lightTheme = automaticThemes.lightTheme;\n\t\tthis.darkTheme = automaticThemes.darkTheme;\n\t\tthis.singleTheme = preferredTheme(\n\t\t\tavailableThemes,\n\t\t\tfixedTheme ?? (autoTheme ? this.getActiveAutomaticTheme() : undefined),\n\t\t\t\"dark\",\n\t\t);\n\n\t\tif (this.mode === \"automatic\") {\n\t\t\tthis.showAutomaticMenu();\n\t\t} else {\n\t\t\tthis.showSingleMenu();\n\t\t}\n\t}\n\n\thandleInput(data: string): void {\n\t\tthis.inputComponent?.handleInput?.(data);\n\t}\n\n\tprivate setContent(renderComponent: Component, inputComponent: Component = renderComponent): void {\n\t\tthis.clear();\n\t\tthis.addChild(renderComponent);\n\t\tthis.inputComponent = inputComponent;\n\t}\n\n\tprivate showSingleMenu(): void {\n\t\tthis.mode = \"single\";\n\t\tconst menu = new SelectSubmenu(\n\t\t\t\"Theme\",\n\t\t\t\"Select a theme, or choose Automatic to follow terminal appearance.\",\n\t\t\tsingleModeThemeItems(this.availableThemes),\n\t\t\tthis.singleTheme,\n\t\t\t(value) => {\n\t\t\t\tif (value === AUTOMATIC_THEME_VALUE) {\n\t\t\t\t\tthis.mode = \"automatic\";\n\t\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\t\tthis.showAutomaticMenu();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.singleTheme = value;\n\t\t\t\tthis.apply(value);\n\t\t\t},\n\t\t\t() => this.cancel(),\n\t\t\t(value) => {\n\t\t\t\tthis.callbacks.onThemePreview?.(value === AUTOMATIC_THEME_VALUE ? this.getAutomaticThemeSetting() : value);\n\t\t\t},\n\t\t);\n\t\tthis.setContent(menu);\n\t}\n\n\tprivate showAutomaticMenu(): void {\n\t\tthis.mode = \"automatic\";\n\t\tconst content = new Container();\n\t\tcontent.addChild(new Text(theme.bold(theme.fg(\"accent\", \"Automatic Theme\")), 0, 0));\n\t\tcontent.addChild(new Spacer(1));\n\t\tcontent.addChild(new Text(theme.fg(\"muted\", \"Choose themes for terminal light and dark appearance.\"), 0, 0));\n\t\tcontent.addChild(new Text(theme.fg(\"muted\", \"Light/dark detection requires terminal support.\"), 0, 0));\n\t\tcontent.addChild(new Spacer(1));\n\n\t\tconst items: SettingItem[] = [\n\t\t\t{\n\t\t\t\tid: \"light-theme\",\n\t\t\t\tlabel: \"Light theme\",\n\t\t\t\tdescription: \"Theme to use in automatic mode when the terminal is light\",\n\t\t\t\tcurrentValue: this.lightTheme,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tthis.createThemeSelect(\n\t\t\t\t\t\t\"Light Theme\",\n\t\t\t\t\t\t\"Select the theme to use for light terminal appearance\",\n\t\t\t\t\t\tcurrentValue,\n\t\t\t\t\t\tdone,\n\t\t\t\t\t\t(value) => {\n\t\t\t\t\t\t\tthis.lightTheme = value;\n\t\t\t\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\t\t\t\tdone(value);\n\t\t\t\t\t\t},\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"dark-theme\",\n\t\t\t\tlabel: \"Dark theme\",\n\t\t\t\tdescription: \"Theme to use in automatic mode when the terminal is dark\",\n\t\t\t\tcurrentValue: this.darkTheme,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tthis.createThemeSelect(\n\t\t\t\t\t\t\"Dark Theme\",\n\t\t\t\t\t\t\"Select the theme to use for dark terminal appearance\",\n\t\t\t\t\t\tcurrentValue,\n\t\t\t\t\t\tdone,\n\t\t\t\t\t\t(value) => {\n\t\t\t\t\t\t\tthis.darkTheme = value;\n\t\t\t\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\t\t\t\tdone(value);\n\t\t\t\t\t\t},\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"apply\",\n\t\t\t\tlabel: \"Apply\",\n\t\t\t\tdescription: \"Save and go back\",\n\t\t\t\tcurrentValue: \"save and go back\",\n\t\t\t\tvalues: [\"save and go back\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"single-mode\",\n\t\t\t\tlabel: \"Change mode\",\n\t\t\t\tdescription: \"Switch to one theme for light and dark\",\n\t\t\t\tcurrentValue: \"switch to single theme\",\n\t\t\t\tvalues: [\"switch to single theme\"],\n\t\t\t},\n\t\t];\n\n\t\tconst settingsList = new SettingsList(\n\t\t\titems,\n\t\t\tMath.min(items.length, 10),\n\t\t\tgetSettingsListTheme(),\n\t\t\t(id) => {\n\t\t\t\tswitch (id) {\n\t\t\t\t\tcase \"single-mode\":\n\t\t\t\t\t\tthis.mode = \"single\";\n\t\t\t\t\t\tthis.singleTheme = this.getActiveAutomaticTheme();\n\t\t\t\t\t\tthis.callbacks.onThemePreview?.(this.singleTheme);\n\t\t\t\t\t\tthis.showSingleMenu();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"apply\":\n\t\t\t\t\t\tthis.apply(this.getAutomaticThemeSetting());\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t},\n\t\t\t() => this.cancel(),\n\t\t);\n\t\tcontent.addChild(settingsList);\n\t\tthis.setContent(content, settingsList);\n\t}\n\n\tprivate createThemeSelect(\n\t\ttitle: string,\n\t\tdescription: string,\n\t\tcurrentValue: string,\n\t\tdone: (selectedValue?: string) => void,\n\t\tonSelect: (value: string) => void,\n\t): SelectSubmenu {\n\t\treturn new SelectSubmenu(\n\t\t\ttitle,\n\t\t\tdescription,\n\t\t\tthemeItems(this.availableThemes),\n\t\t\tcurrentValue,\n\t\t\tonSelect,\n\t\t\t() => {\n\t\t\t\tthis.callbacks.onThemePreview?.(this.getThemeSetting());\n\t\t\t\tdone();\n\t\t\t},\n\t\t\t(value) => this.callbacks.onThemePreview?.(value),\n\t\t);\n\t}\n\n\tprivate getThemeSetting(): string {\n\t\treturn this.mode === \"automatic\" ? this.getAutomaticThemeSetting() : this.singleTheme;\n\t}\n\n\tprivate getActiveAutomaticTheme(): string {\n\t\treturn this.terminalTheme === \"light\" ? this.lightTheme : this.darkTheme;\n\t}\n\n\tprivate getAutomaticThemeSetting(): string {\n\t\treturn `${this.lightTheme}/${this.darkTheme}`;\n\t}\n\n\tprivate apply(themeSetting: string): void {\n\t\tthis.onDone(themeSetting);\n\t}\n\n\tprivate cancel(): void {\n\t\tthis.callbacks.onThemePreview?.(this.originalThemeSetting);\n\t\tthis.onDone();\n\t}\n}\n\n/**\n * Main settings selector component.\n */\nexport class SettingsSelectorComponent extends Container {\n\tprivate settingsList: SettingsList;\n\n\tconstructor(config: SettingsConfig, callbacks: SettingsCallbacks) {\n\t\tsuper();\n\n\t\tconst supportsImages = getCapabilities().images;\n\t\tconst followUpKey = keyDisplayText(\"app.message.followUp\");\n\t\tconst cycleThinkingKey = keyDisplayText(\"app.thinking.cycle\");\n\t\tlet currentWarnings = { ...config.warnings };\n\t\tconst currentModelThinkingLevels = { ...config.modelThinkingLevels };\n\t\tconst defaultModelByValue = new Map(\n\t\t\tconfig.availableDefaultModels.map((model) => [modelSettingKey(model), model]),\n\t\t);\n\t\tconst currentDefaultModelKey = defaultModelByValue.has(config.defaultModel) ? config.defaultModel : undefined;\n\t\tconst currentModelKey = config.currentModel ? modelSettingKey(config.currentModel) : undefined;\n\n\t\tconst items: SettingItem[] = [\n\t\t\t{\n\t\t\t\tid: \"autocompact\",\n\t\t\t\tlabel: \"Auto-compact\",\n\t\t\t\tdescription: \"Automatically compact context when it gets too large\",\n\t\t\t\tcurrentValue: config.autoCompact ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"steering-mode\",\n\t\t\t\tlabel: \"Steering mode\",\n\t\t\t\tdescription:\n\t\t\t\t\t\"Enter while streaming queues steering messages. 'one-at-a-time': deliver one, wait for response. 'all': deliver all at once.\",\n\t\t\t\tcurrentValue: config.steeringMode,\n\t\t\t\tvalues: [\"one-at-a-time\", \"all\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"follow-up-mode\",\n\t\t\t\tlabel: \"Follow-up mode\",\n\t\t\t\tdescription: `${followUpKey} queues follow-up messages until agent stops. 'one-at-a-time': deliver one, wait for response. 'all': deliver all at once.`,\n\t\t\t\tcurrentValue: config.followUpMode,\n\t\t\t\tvalues: [\"one-at-a-time\", \"all\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"transport\",\n\t\t\t\tlabel: \"Transport\",\n\t\t\t\tdescription: \"Preferred transport for providers that support multiple transports\",\n\t\t\t\tcurrentValue: config.transport,\n\t\t\t\tvalues: [\"sse\", \"websocket\", \"websocket-cached\", \"auto\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"http-idle-timeout\",\n\t\t\t\tlabel: \"HTTP idle timeout\",\n\t\t\t\tdescription:\n\t\t\t\t\t\"Maximum idle gap while waiting for HTTP headers or body chunks. Disable for local models that pause longer than five minutes.\",\n\t\t\t\tcurrentValue: formatHttpIdleTimeoutMs(config.httpIdleTimeoutMs),\n\t\t\t\tvalues: HTTP_IDLE_TIMEOUT_CHOICES.map((choice) => choice.label),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"hide-thinking\",\n\t\t\t\tlabel: \"Hide thinking\",\n\t\t\t\tdescription: \"Hide thinking blocks in assistant responses\",\n\t\t\t\tcurrentValue: config.hideThinkingBlock ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"mermaid-rendering\",\n\t\t\t\tlabel: \"Mermaid diagrams\",\n\t\t\t\tdescription: \"Render Mermaid code blocks as Unicode diagrams\",\n\t\t\t\tcurrentValue: config.mermaidRenderingMode,\n\t\t\t\tvalues: [\"off\", \"final\", \"streaming\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"cache-miss-notices\",\n\t\t\t\tlabel: \"Cache miss notices\",\n\t\t\t\tdescription: \"Show transcript notices for significant prompt-cache misses and compaction costs\",\n\t\t\t\tcurrentValue: config.showCacheMissNotices ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"collapse-changelog\",\n\t\t\t\tlabel: \"Collapse changelog\",\n\t\t\t\tdescription: \"Show condensed changelog after updates\",\n\t\t\t\tcurrentValue: config.collapseChangelog ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"quiet-startup\",\n\t\t\t\tlabel: \"Quiet startup\",\n\t\t\t\tdescription: \"Disable verbose printing at startup\",\n\t\t\t\tcurrentValue: config.quietStartup ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"install-telemetry\",\n\t\t\t\tlabel: \"Install telemetry\",\n\t\t\t\tdescription: \"Send an anonymous version/update ping after changelog-detected updates\",\n\t\t\t\tcurrentValue: config.enableInstallTelemetry ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"default-project-trust\",\n\t\t\t\tlabel: \"Default project trust\",\n\t\t\t\tdescription: \"Fallback behavior when no extension or saved trust decision decides project trust\",\n\t\t\t\tcurrentValue: DEFAULT_PROJECT_TRUST_LABELS[config.defaultProjectTrust],\n\t\t\t\tvalues: Object.values(DEFAULT_PROJECT_TRUST_LABELS),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"double-escape-action\",\n\t\t\t\tlabel: \"Double-escape action\",\n\t\t\t\tdescription: \"Action when pressing Escape twice with empty editor\",\n\t\t\t\tcurrentValue: config.doubleEscapeAction,\n\t\t\t\tvalues: [\"tree\", \"fork\", \"none\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"tree-filter-mode\",\n\t\t\t\tlabel: \"Tree filter mode\",\n\t\t\t\tdescription: \"Default filter when opening /tree\",\n\t\t\t\tcurrentValue: config.treeFilterMode,\n\t\t\t\tvalues: [\"default\", \"no-tools\", \"user-only\", \"labeled-only\", \"all\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"warnings\",\n\t\t\t\tlabel: \"Warnings\",\n\t\t\t\tdescription: \"Enable or disable individual warnings\",\n\t\t\t\tcurrentValue: \"configure\",\n\t\t\t\tsubmenu: (_currentValue, done) =>\n\t\t\t\t\tnew WarningSettingsSubmenu(\n\t\t\t\t\t\tcurrentWarnings,\n\t\t\t\t\t\t(warnings) => {\n\t\t\t\t\t\t\tcurrentWarnings = warnings;\n\t\t\t\t\t\t\tcallbacks.onWarningsChange(warnings);\n\t\t\t\t\t\t},\n\t\t\t\t\t\t() => done(),\n\t\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"model-thinking\",\n\t\t\t\tlabel: \"Default thinking level per model\",\n\t\t\t\tdescription: `Override the default thinking level for specific models. ${cycleThinkingKey} cycles in-session.`,\n\t\t\t\tcurrentValue: modelThinkingOverridesSummary(currentModelThinkingLevels),\n\t\t\t\tsubmenu: (_currentValue, done) => {\n\t\t\t\t\tconst steps: SteppedSubmenuStep[] = [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: \"model\",\n\t\t\t\t\t\t\ttitle: \"Per-Model Thinking Level\",\n\t\t\t\t\t\t\tdescription: \"Select a model to configure\",\n\t\t\t\t\t\t\toptions: () => {\n\t\t\t\t\t\t\t\tconst sorted = [...config.availableDefaultModels].sort((a, b) => {\n\t\t\t\t\t\t\t\t\tconst aKey = modelSettingKey(a);\n\t\t\t\t\t\t\t\t\tconst bKey = modelSettingKey(b);\n\t\t\t\t\t\t\t\t\tif (aKey === currentModelKey) return -1;\n\t\t\t\t\t\t\t\t\tif (bKey === currentModelKey) return 1;\n\t\t\t\t\t\t\t\t\tif (aKey === currentDefaultModelKey) return -1;\n\t\t\t\t\t\t\t\t\tif (bKey === currentDefaultModelKey) return 1;\n\t\t\t\t\t\t\t\t\treturn a.provider.localeCompare(b.provider);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tconst items: SelectItem[] = sorted.map((model) => {\n\t\t\t\t\t\t\t\t\tconst key = modelSettingKey(model);\n\t\t\t\t\t\t\t\t\tconst override = currentModelThinkingLevels[key];\n\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\tvalue: key,\n\t\t\t\t\t\t\t\t\t\tlabel: modelItemLabel(model),\n\t\t\t\t\t\t\t\t\t\tdescription: override ?? undefined,\n\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tif (items.length === 0) {\n\t\t\t\t\t\t\t\t\titems.push({\n\t\t\t\t\t\t\t\t\t\tvalue: \"__none__\",\n\t\t\t\t\t\t\t\t\t\tlabel: \"No models available\",\n\t\t\t\t\t\t\t\t\t\tdescription: \"Log in to a provider or configure an API key first\",\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn items;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tpreselect: () => currentModelKey ?? currentDefaultModelKey,\n\t\t\t\t\t\t\tsearchable: true,\n\t\t\t\t\t\t\tlayout: MODEL_PICKER_LAYOUT,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: \"level\",\n\t\t\t\t\t\t\ttitle: (ctx) => {\n\t\t\t\t\t\t\t\tconst m = defaultModelByValue.get(ctx.model);\n\t\t\t\t\t\t\t\treturn `Thinking Level for ${m ? modelDisplayLabel(m) : ctx.model}`;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdescription: \"Select default thinking level for this model\",\n\t\t\t\t\t\t\toptions: (ctx) => {\n\t\t\t\t\t\t\t\tconst model = defaultModelByValue.get(ctx.model);\n\t\t\t\t\t\t\t\tif (!model) return [];\n\t\t\t\t\t\t\t\tconst levels = (\n\t\t\t\t\t\t\t\t\tmodel.reasoning ? getSupportedThinkingLevels(model) : [\"off\"]\n\t\t\t\t\t\t\t\t) as ThinkingLevel[];\n\t\t\t\t\t\t\t\tconst items: SelectItem[] = levels.map((level) => ({\n\t\t\t\t\t\t\t\t\tvalue: level,\n\t\t\t\t\t\t\t\t\tlabel: level,\n\t\t\t\t\t\t\t\t\tdescription: THINKING_DESCRIPTIONS[level],\n\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\tif (currentModelThinkingLevels[ctx.model] !== undefined) {\n\t\t\t\t\t\t\t\t\titems.push({\n\t\t\t\t\t\t\t\t\t\tvalue: CLEAR_OVERRIDE_VALUE,\n\t\t\t\t\t\t\t\t\t\tlabel: \"(clear override)\",\n\t\t\t\t\t\t\t\t\t\tdescription: `Revert to global default (${config.thinkingLevel})`,\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn items;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tpreselect: (ctx) => currentModelThinkingLevels[ctx.model],\n\t\t\t\t\t\t},\n\t\t\t\t\t];\n\n\t\t\t\t\tconst summary = () => modelThinkingOverridesSummary(currentModelThinkingLevels);\n\n\t\t\t\t\treturn new SteppedSubmenu(\n\t\t\t\t\t\tsteps,\n\t\t\t\t\t\t(selections) => {\n\t\t\t\t\t\t\tconst model = defaultModelByValue.get(selections.model);\n\t\t\t\t\t\t\tif (!model) return;\n\t\t\t\t\t\t\tif (selections.level === CLEAR_OVERRIDE_VALUE) {\n\t\t\t\t\t\t\t\tcallbacks.onModelThinkingLevelRemove(model.provider, model.id);\n\t\t\t\t\t\t\t\tdelete currentModelThinkingLevels[selections.model];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tcallbacks.onModelThinkingLevelChange(\n\t\t\t\t\t\t\t\t\tmodel.provider,\n\t\t\t\t\t\t\t\t\tmodel.id,\n\t\t\t\t\t\t\t\t\tselections.level as ThinkingLevel,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tcurrentModelThinkingLevels[selections.model] = selections.level as ThinkingLevel;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\tdone(summary());\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{ loop: true },\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"tui-mode\",\n\t\t\t\tlabel: \"TUI mode\",\n\t\t\t\tdescription: \"Interface layout; fullscreen mode is experimental\",\n\t\t\t\tcurrentValue: config.tuiMode,\n\t\t\t\tvalues: [\"regular\", \"fullscreen\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"fullscreen-exit-output\",\n\t\t\t\tlabel: \"Fullscreen exit output\",\n\t\t\t\tdescription: \"Print the transcript or only a session resume hint when exiting fullscreen mode\",\n\t\t\t\tcurrentValue: config.fullscreenExitOutput,\n\t\t\t\tvalues: [\"transcript\", \"resume-hint\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"fullscreen-scrollbar\",\n\t\t\t\tlabel: \"Fullscreen scrollbar\",\n\t\t\t\tdescription: \"Scrollbar behavior in fullscreen mode; has no effect in regular mode\",\n\t\t\t\tcurrentValue: config.fullscreenScrollbar,\n\t\t\t\tvalues: [\"auto\", \"always\", \"hidden\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"fullscreen-copy-on-select\",\n\t\t\t\tlabel: \"Fullscreen copy on select\",\n\t\t\t\tdescription: \"Automatically copy selected text in fullscreen mode; disable to copy selections with Ctrl+X\",\n\t\t\t\tcurrentValue: config.fullscreenCopyOnSelect ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"theme\",\n\t\t\t\tlabel: \"Theme\",\n\t\t\t\tdescription: \"Color theme for the interface\",\n\t\t\t\tcurrentValue: config.currentTheme,\n\t\t\t\tsubmenu: (currentValue, done) =>\n\t\t\t\t\tnew ThemeSubmenu(currentValue, config.terminalTheme, config.availableThemes, callbacks, done),\n\t\t\t},\n\t\t];\n\n\t\t// Only show image toggle if terminal supports it\n\t\tif (supportsImages) {\n\t\t\t// Insert after autocompact\n\t\t\titems.splice(1, 0, {\n\t\t\t\tid: \"show-images\",\n\t\t\t\tlabel: \"Show images\",\n\t\t\t\tdescription: \"Render images inline in terminal\",\n\t\t\t\tcurrentValue: config.showImages ? \"true\" : \"false\",\n\t\t\t\tvalues: [\"true\", \"false\"],\n\t\t\t});\n\t\t\titems.splice(2, 0, {\n\t\t\t\tid: \"image-width-cells\",\n\t\t\t\tlabel: \"Image width\",\n\t\t\t\tdescription: \"Preferred inline image width in terminal cells\",\n\t\t\t\tcurrentValue: String(config.imageWidthCells),\n\t\t\t\tvalues: [\"60\", \"80\", \"120\"],\n\t\t\t});\n\t\t}\n\n\t\t// Image auto-resize toggle (always available, affects both attached and read images)\n\t\titems.splice(supportsImages ? 3 : 1, 0, {\n\t\t\tid: \"auto-resize-images\",\n\t\t\tlabel: \"Auto-resize images\",\n\t\t\tdescription: \"Resize large images to 2000x2000 max for better model compatibility\",\n\t\t\tcurrentValue: config.autoResizeImages ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Block images toggle (always available, insert after auto-resize-images)\n\t\tconst autoResizeIndex = items.findIndex((item) => item.id === \"auto-resize-images\");\n\t\titems.splice(autoResizeIndex + 1, 0, {\n\t\t\tid: \"block-images\",\n\t\t\tlabel: \"Block images\",\n\t\t\tdescription: \"Prevent images from being sent to LLM providers\",\n\t\t\tcurrentValue: config.blockImages ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Skill commands toggle (insert after block-images)\n\t\tconst blockImagesIndex = items.findIndex((item) => item.id === \"block-images\");\n\t\titems.splice(blockImagesIndex + 1, 0, {\n\t\t\tid: \"skill-commands\",\n\t\t\tlabel: \"Skill commands\",\n\t\t\tdescription: \"Register skills as /skill:name commands\",\n\t\t\tcurrentValue: config.enableSkillCommands ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Hardware cursor toggle (insert after skill-commands)\n\t\tconst skillCommandsIndex = items.findIndex((item) => item.id === \"skill-commands\");\n\t\titems.splice(skillCommandsIndex + 1, 0, {\n\t\t\tid: \"show-hardware-cursor\",\n\t\t\tlabel: \"Show hardware cursor\",\n\t\t\tdescription: \"Show the terminal cursor while still positioning it for IME support\",\n\t\t\tcurrentValue: config.showHardwareCursor ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Editor padding toggle (insert after show-hardware-cursor)\n\t\tconst hardwareCursorIndex = items.findIndex((item) => item.id === \"show-hardware-cursor\");\n\t\titems.splice(hardwareCursorIndex + 1, 0, {\n\t\t\tid: \"editor-padding\",\n\t\t\tlabel: \"Editor padding\",\n\t\t\tdescription: \"Horizontal padding for input editor (0-3)\",\n\t\t\tcurrentValue: String(config.editorPaddingX),\n\t\t\tvalues: [\"0\", \"1\", \"2\", \"3\"],\n\t\t});\n\n\t\t// Output padding toggle (insert after editor-padding)\n\t\tconst editorPaddingIndex = items.findIndex((item) => item.id === \"editor-padding\");\n\t\titems.splice(editorPaddingIndex + 1, 0, {\n\t\t\tid: \"output-padding\",\n\t\t\tlabel: \"Output padding\",\n\t\t\tdescription: \"Horizontal padding for user messages, assistant messages, and thinking\",\n\t\t\tcurrentValue: String(config.outputPad),\n\t\t\tvalues: [\"0\", \"1\"],\n\t\t});\n\n\t\t// Autocomplete max visible toggle (insert after output-padding)\n\t\tconst outputPaddingIndex = items.findIndex((item) => item.id === \"output-padding\");\n\t\titems.splice(outputPaddingIndex + 1, 0, {\n\t\t\tid: \"autocomplete-max-visible\",\n\t\t\tlabel: \"Autocomplete max items\",\n\t\t\tdescription: \"Max visible items in autocomplete dropdown (3-20)\",\n\t\t\tcurrentValue: String(config.autocompleteMaxVisible),\n\t\t\tvalues: [\"3\", \"5\", \"7\", \"10\", \"15\", \"20\"],\n\t\t});\n\n\t\t// Clear on shrink toggle (insert after autocomplete-max-visible)\n\t\tconst autocompleteIndex = items.findIndex((item) => item.id === \"autocomplete-max-visible\");\n\t\titems.splice(autocompleteIndex + 1, 0, {\n\t\t\tid: \"clear-on-shrink\",\n\t\t\tlabel: \"Clear on shrink\",\n\t\t\tdescription: \"Clear empty rows when content shrinks (may cause flicker)\",\n\t\t\tcurrentValue: config.clearOnShrink ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Terminal progress toggle (insert after clear-on-shrink)\n\t\tconst clearOnShrinkIndex = items.findIndex((item) => item.id === \"clear-on-shrink\");\n\t\titems.splice(clearOnShrinkIndex + 1, 0, {\n\t\t\tid: \"terminal-progress\",\n\t\t\tlabel: \"Terminal progress\",\n\t\t\tdescription: \"Show OSC 9;4 progress indicators in the terminal tab bar\",\n\t\t\tcurrentValue: config.showTerminalProgress ? \"true\" : \"false\",\n\t\t\tvalues: [\"true\", \"false\"],\n\t\t});\n\n\t\t// Add borders\n\t\tthis.addChild(new DynamicBorder());\n\n\t\tthis.settingsList = new SettingsList(\n\t\t\titems,\n\t\t\t10,\n\t\t\tgetSettingsListTheme(),\n\t\t\t(id, newValue) => {\n\t\t\t\tswitch (id) {\n\t\t\t\t\tcase \"autocompact\":\n\t\t\t\t\t\tcallbacks.onAutoCompactChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"show-images\":\n\t\t\t\t\t\tcallbacks.onShowImagesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image-width-cells\":\n\t\t\t\t\t\tcallbacks.onImageWidthCellsChange(parseInt(newValue, 10));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"auto-resize-images\":\n\t\t\t\t\t\tcallbacks.onAutoResizeImagesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"block-images\":\n\t\t\t\t\t\tcallbacks.onBlockImagesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"skill-commands\":\n\t\t\t\t\t\tcallbacks.onEnableSkillCommandsChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"steering-mode\":\n\t\t\t\t\t\tcallbacks.onSteeringModeChange(newValue as \"all\" | \"one-at-a-time\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"follow-up-mode\":\n\t\t\t\t\t\tcallbacks.onFollowUpModeChange(newValue as \"all\" | \"one-at-a-time\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"transport\":\n\t\t\t\t\t\tcallbacks.onTransportChange(newValue as Transport);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"http-idle-timeout\": {\n\t\t\t\t\t\tconst choice = HTTP_IDLE_TIMEOUT_CHOICES.find((item) => item.label === newValue);\n\t\t\t\t\t\tif (choice) {\n\t\t\t\t\t\t\tcallbacks.onHttpIdleTimeoutMsChange(choice.timeoutMs);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"hide-thinking\":\n\t\t\t\t\t\tcallbacks.onHideThinkingBlockChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"mermaid-rendering\":\n\t\t\t\t\t\tcallbacks.onMermaidRenderingModeChange(newValue as MermaidRenderingMode);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"cache-miss-notices\":\n\t\t\t\t\t\tcallbacks.onShowCacheMissNoticesChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"collapse-changelog\":\n\t\t\t\t\t\tcallbacks.onCollapseChangelogChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"quiet-startup\":\n\t\t\t\t\t\tcallbacks.onQuietStartupChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"install-telemetry\":\n\t\t\t\t\t\tcallbacks.onEnableInstallTelemetryChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"default-project-trust\": {\n\t\t\t\t\t\tconst defaultProjectTrust = DEFAULT_PROJECT_TRUST_BY_LABEL.get(newValue);\n\t\t\t\t\t\tif (defaultProjectTrust) {\n\t\t\t\t\t\t\tcallbacks.onDefaultProjectTrustChange(defaultProjectTrust);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"double-escape-action\":\n\t\t\t\t\t\tcallbacks.onDoubleEscapeActionChange(newValue as \"fork\" | \"tree\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"tree-filter-mode\":\n\t\t\t\t\t\tcallbacks.onTreeFilterModeChange(\n\t\t\t\t\t\t\tnewValue as \"default\" | \"no-tools\" | \"user-only\" | \"labeled-only\" | \"all\",\n\t\t\t\t\t\t);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"show-hardware-cursor\":\n\t\t\t\t\t\tcallbacks.onShowHardwareCursorChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"editor-padding\":\n\t\t\t\t\t\tcallbacks.onEditorPaddingXChange(parseInt(newValue, 10));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"output-padding\":\n\t\t\t\t\t\tcallbacks.onOutputPadChange(newValue === \"0\" ? 0 : 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"autocomplete-max-visible\":\n\t\t\t\t\t\tcallbacks.onAutocompleteMaxVisibleChange(parseInt(newValue, 10));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"clear-on-shrink\":\n\t\t\t\t\t\tcallbacks.onClearOnShrinkChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"terminal-progress\":\n\t\t\t\t\t\tcallbacks.onShowTerminalProgressChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"tui-mode\":\n\t\t\t\t\t\tcallbacks.onTuiModeChange(newValue as TuiMode);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"fullscreen-exit-output\":\n\t\t\t\t\t\tcallbacks.onFullscreenExitOutputChange(newValue as FullscreenExitOutput);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"fullscreen-scrollbar\":\n\t\t\t\t\t\tcallbacks.onFullscreenScrollbarChange(newValue as ScrollViewScrollbar);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"fullscreen-copy-on-select\":\n\t\t\t\t\t\tcallbacks.onFullscreenCopyOnSelectChange(newValue === \"true\");\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"theme\":\n\t\t\t\t\t\tcallbacks.onThemeChange(newValue);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t},\n\t\t\tcallbacks.onCancel,\n\t\t\t{ enableSearch: true },\n\t\t);\n\n\t\tthis.addChild(this.settingsList);\n\t\tthis.addChild(new DynamicBorder());\n\t}\n\n\tgetSettingsList(): SettingsList {\n\t\treturn this.settingsList;\n\t}\n}\n"]}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getSupportedThinkingLevels } from "@earendil-works/pi-ai";
|
|
2
|
+
import { Container, getCapabilities, SettingsList, Spacer, Text, } from "@earendil-works/pi-tui";
|
|
2
3
|
import { formatHttpIdleTimeoutMs, HTTP_IDLE_TIMEOUT_CHOICES } from "../../../core/http-dispatcher.js";
|
|
3
|
-
import {
|
|
4
|
+
import { getSettingsListTheme, parseAutoThemeSetting, theme } from "../theme/theme.js";
|
|
4
5
|
import { DynamicBorder } from "./dynamic-border.js";
|
|
5
6
|
import { keyDisplayText } from "./keybinding-hints.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
maxPrimaryColumnWidth: 32,
|
|
9
|
-
};
|
|
7
|
+
import { SelectSubmenu, SteppedSubmenu } from "./settings-submenu.js";
|
|
8
|
+
const MODEL_PICKER_LAYOUT = { minPrimaryColumnWidth: 12, maxPrimaryColumnWidth: 46 };
|
|
10
9
|
const THINKING_DESCRIPTIONS = {
|
|
11
10
|
off: "No reasoning",
|
|
12
11
|
minimal: "Very brief reasoning (~1k tokens)",
|
|
@@ -54,43 +53,21 @@ class WarningSettingsSubmenu extends Container {
|
|
|
54
53
|
this.settingsList.handleInput(data);
|
|
55
54
|
}
|
|
56
55
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
// Pre-select current value
|
|
73
|
-
const currentIndex = options.findIndex((o) => o.value === currentValue);
|
|
74
|
-
if (currentIndex !== -1) {
|
|
75
|
-
this.selectList.setSelectedIndex(currentIndex);
|
|
76
|
-
}
|
|
77
|
-
this.selectList.onSelect = (item) => {
|
|
78
|
-
onSelect(item.value);
|
|
79
|
-
};
|
|
80
|
-
this.selectList.onCancel = onCancel;
|
|
81
|
-
if (onSelectionChange) {
|
|
82
|
-
this.selectList.onSelectionChange = (item) => {
|
|
83
|
-
onSelectionChange(item.value);
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
this.addChild(this.selectList);
|
|
87
|
-
// Hint
|
|
88
|
-
this.addChild(new Spacer(1));
|
|
89
|
-
this.addChild(new Text(theme.fg("dim", " Enter to select · Esc to go back"), 0, 0));
|
|
90
|
-
}
|
|
91
|
-
handleInput(data) {
|
|
92
|
-
this.selectList.handleInput(data);
|
|
93
|
-
}
|
|
56
|
+
const CLEAR_OVERRIDE_VALUE = "__clear__";
|
|
57
|
+
function modelSettingKey(model) {
|
|
58
|
+
return `${model.provider}/${model.id}`;
|
|
59
|
+
}
|
|
60
|
+
function modelDisplayLabel(model) {
|
|
61
|
+
return `${model.id} [${model.provider}]`;
|
|
62
|
+
}
|
|
63
|
+
function modelThinkingOverridesSummary(overrides) {
|
|
64
|
+
const count = Object.keys(overrides).length;
|
|
65
|
+
if (count === 0)
|
|
66
|
+
return "none";
|
|
67
|
+
return `${count} configured`;
|
|
68
|
+
}
|
|
69
|
+
function modelItemLabel(model) {
|
|
70
|
+
return `${model.id} ${theme.fg("muted", `[${model.provider}]`)}`;
|
|
94
71
|
}
|
|
95
72
|
function themeItems(availableThemes) {
|
|
96
73
|
return availableThemes.map((name) => ({ value: name, label: name }));
|
|
@@ -271,7 +248,12 @@ export class SettingsSelectorComponent extends Container {
|
|
|
271
248
|
super();
|
|
272
249
|
const supportsImages = getCapabilities().images;
|
|
273
250
|
const followUpKey = keyDisplayText("app.message.followUp");
|
|
251
|
+
const cycleThinkingKey = keyDisplayText("app.thinking.cycle");
|
|
274
252
|
let currentWarnings = { ...config.warnings };
|
|
253
|
+
const currentModelThinkingLevels = { ...config.modelThinkingLevels };
|
|
254
|
+
const defaultModelByValue = new Map(config.availableDefaultModels.map((model) => [modelSettingKey(model), model]));
|
|
255
|
+
const currentDefaultModelKey = defaultModelByValue.has(config.defaultModel) ? config.defaultModel : undefined;
|
|
256
|
+
const currentModelKey = config.currentModel ? modelSettingKey(config.currentModel) : undefined;
|
|
275
257
|
const items = [
|
|
276
258
|
{
|
|
277
259
|
id: "autocompact",
|
|
@@ -325,7 +307,7 @@ export class SettingsSelectorComponent extends Container {
|
|
|
325
307
|
{
|
|
326
308
|
id: "cache-miss-notices",
|
|
327
309
|
label: "Cache miss notices",
|
|
328
|
-
description: "Show transcript notices for significant prompt-cache misses",
|
|
310
|
+
description: "Show transcript notices for significant prompt-cache misses and compaction costs",
|
|
329
311
|
currentValue: config.showCacheMissNotices ? "true" : "false",
|
|
330
312
|
values: ["true", "false"],
|
|
331
313
|
},
|
|
@@ -382,18 +364,98 @@ export class SettingsSelectorComponent extends Container {
|
|
|
382
364
|
}, () => done()),
|
|
383
365
|
},
|
|
384
366
|
{
|
|
385
|
-
id: "thinking",
|
|
386
|
-
label: "
|
|
387
|
-
description:
|
|
388
|
-
currentValue:
|
|
389
|
-
submenu: (
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
367
|
+
id: "model-thinking",
|
|
368
|
+
label: "Default thinking level per model",
|
|
369
|
+
description: `Override the default thinking level for specific models. ${cycleThinkingKey} cycles in-session.`,
|
|
370
|
+
currentValue: modelThinkingOverridesSummary(currentModelThinkingLevels),
|
|
371
|
+
submenu: (_currentValue, done) => {
|
|
372
|
+
const steps = [
|
|
373
|
+
{
|
|
374
|
+
key: "model",
|
|
375
|
+
title: "Per-Model Thinking Level",
|
|
376
|
+
description: "Select a model to configure",
|
|
377
|
+
options: () => {
|
|
378
|
+
const sorted = [...config.availableDefaultModels].sort((a, b) => {
|
|
379
|
+
const aKey = modelSettingKey(a);
|
|
380
|
+
const bKey = modelSettingKey(b);
|
|
381
|
+
if (aKey === currentModelKey)
|
|
382
|
+
return -1;
|
|
383
|
+
if (bKey === currentModelKey)
|
|
384
|
+
return 1;
|
|
385
|
+
if (aKey === currentDefaultModelKey)
|
|
386
|
+
return -1;
|
|
387
|
+
if (bKey === currentDefaultModelKey)
|
|
388
|
+
return 1;
|
|
389
|
+
return a.provider.localeCompare(b.provider);
|
|
390
|
+
});
|
|
391
|
+
const items = sorted.map((model) => {
|
|
392
|
+
const key = modelSettingKey(model);
|
|
393
|
+
const override = currentModelThinkingLevels[key];
|
|
394
|
+
return {
|
|
395
|
+
value: key,
|
|
396
|
+
label: modelItemLabel(model),
|
|
397
|
+
description: override ?? undefined,
|
|
398
|
+
};
|
|
399
|
+
});
|
|
400
|
+
if (items.length === 0) {
|
|
401
|
+
items.push({
|
|
402
|
+
value: "__none__",
|
|
403
|
+
label: "No models available",
|
|
404
|
+
description: "Log in to a provider or configure an API key first",
|
|
405
|
+
});
|
|
406
|
+
}
|
|
407
|
+
return items;
|
|
408
|
+
},
|
|
409
|
+
preselect: () => currentModelKey ?? currentDefaultModelKey,
|
|
410
|
+
searchable: true,
|
|
411
|
+
layout: MODEL_PICKER_LAYOUT,
|
|
412
|
+
},
|
|
413
|
+
{
|
|
414
|
+
key: "level",
|
|
415
|
+
title: (ctx) => {
|
|
416
|
+
const m = defaultModelByValue.get(ctx.model);
|
|
417
|
+
return `Thinking Level for ${m ? modelDisplayLabel(m) : ctx.model}`;
|
|
418
|
+
},
|
|
419
|
+
description: "Select default thinking level for this model",
|
|
420
|
+
options: (ctx) => {
|
|
421
|
+
const model = defaultModelByValue.get(ctx.model);
|
|
422
|
+
if (!model)
|
|
423
|
+
return [];
|
|
424
|
+
const levels = (model.reasoning ? getSupportedThinkingLevels(model) : ["off"]);
|
|
425
|
+
const items = levels.map((level) => ({
|
|
426
|
+
value: level,
|
|
427
|
+
label: level,
|
|
428
|
+
description: THINKING_DESCRIPTIONS[level],
|
|
429
|
+
}));
|
|
430
|
+
if (currentModelThinkingLevels[ctx.model] !== undefined) {
|
|
431
|
+
items.push({
|
|
432
|
+
value: CLEAR_OVERRIDE_VALUE,
|
|
433
|
+
label: "(clear override)",
|
|
434
|
+
description: `Revert to global default (${config.thinkingLevel})`,
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
return items;
|
|
438
|
+
},
|
|
439
|
+
preselect: (ctx) => currentModelThinkingLevels[ctx.model],
|
|
440
|
+
},
|
|
441
|
+
];
|
|
442
|
+
const summary = () => modelThinkingOverridesSummary(currentModelThinkingLevels);
|
|
443
|
+
return new SteppedSubmenu(steps, (selections) => {
|
|
444
|
+
const model = defaultModelByValue.get(selections.model);
|
|
445
|
+
if (!model)
|
|
446
|
+
return;
|
|
447
|
+
if (selections.level === CLEAR_OVERRIDE_VALUE) {
|
|
448
|
+
callbacks.onModelThinkingLevelRemove(model.provider, model.id);
|
|
449
|
+
delete currentModelThinkingLevels[selections.model];
|
|
450
|
+
}
|
|
451
|
+
else {
|
|
452
|
+
callbacks.onModelThinkingLevelChange(model.provider, model.id, selections.level);
|
|
453
|
+
currentModelThinkingLevels[selections.model] = selections.level;
|
|
454
|
+
}
|
|
455
|
+
}, () => {
|
|
456
|
+
done(summary());
|
|
457
|
+
}, { loop: true });
|
|
458
|
+
},
|
|
397
459
|
},
|
|
398
460
|
{
|
|
399
461
|
id: "tui-mode",
|
|
@@ -416,6 +478,13 @@ export class SettingsSelectorComponent extends Container {
|
|
|
416
478
|
currentValue: config.fullscreenScrollbar,
|
|
417
479
|
values: ["auto", "always", "hidden"],
|
|
418
480
|
},
|
|
481
|
+
{
|
|
482
|
+
id: "fullscreen-copy-on-select",
|
|
483
|
+
label: "Fullscreen copy on select",
|
|
484
|
+
description: "Automatically copy selected text in fullscreen mode; disable to copy selections with Ctrl+X",
|
|
485
|
+
currentValue: config.fullscreenCopyOnSelect ? "true" : "false",
|
|
486
|
+
values: ["true", "false"],
|
|
487
|
+
},
|
|
419
488
|
{
|
|
420
489
|
id: "theme",
|
|
421
490
|
label: "Theme",
|
|
@@ -618,6 +687,9 @@ export class SettingsSelectorComponent extends Container {
|
|
|
618
687
|
case "fullscreen-scrollbar":
|
|
619
688
|
callbacks.onFullscreenScrollbarChange(newValue);
|
|
620
689
|
break;
|
|
690
|
+
case "fullscreen-copy-on-select":
|
|
691
|
+
callbacks.onFullscreenCopyOnSelectChange(newValue === "true");
|
|
692
|
+
break;
|
|
621
693
|
case "theme":
|
|
622
694
|
callbacks.onThemeChange(newValue);
|
|
623
695
|
break;
|