@orion-agents/orion-code 0.1.1 → 0.1.3
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 +165 -68
- package/README.zh-CN.md +252 -212
- package/dist/cli.js +13 -17
- package/dist/cli.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +381 -168
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/target-command.d.ts.map +1 -1
- package/dist/commands/target-command.js +42 -8
- package/dist/commands/target-command.js.map +1 -1
- package/dist/commands/types.d.ts +3 -1
- package/dist/commands/types.d.ts.map +1 -1
- package/dist/commands/types.js.map +1 -1
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +2 -2
- package/dist/core/agent.js.map +1 -1
- package/dist/framework/external-assertion.d.ts +65 -0
- package/dist/framework/external-assertion.d.ts.map +1 -0
- package/dist/framework/external-assertion.js +571 -0
- package/dist/framework/external-assertion.js.map +1 -0
- package/dist/framework/index.d.ts +6 -4
- package/dist/framework/index.d.ts.map +1 -1
- package/dist/framework/index.js +4 -1
- package/dist/framework/index.js.map +1 -1
- package/dist/framework/query.d.ts +18 -1
- package/dist/framework/query.d.ts.map +1 -1
- package/dist/framework/query.js +43 -23
- package/dist/framework/query.js.map +1 -1
- package/dist/framework/tool-scheduler.d.ts +63 -1
- package/dist/framework/tool-scheduler.d.ts.map +1 -1
- package/dist/framework/tool-scheduler.js +183 -51
- package/dist/framework/tool-scheduler.js.map +1 -1
- package/dist/framework/tool-serializer.d.ts.map +1 -1
- package/dist/framework/tool-serializer.js +20 -4
- package/dist/framework/tool-serializer.js.map +1 -1
- package/dist/framework/tool.d.ts +17 -5
- package/dist/framework/tool.d.ts.map +1 -1
- package/dist/framework/tool.js +2 -0
- package/dist/framework/tool.js.map +1 -1
- package/dist/harness/safety.d.ts.map +1 -1
- package/dist/harness/safety.js +19 -3
- package/dist/harness/safety.js.map +1 -1
- package/dist/init.d.ts +1 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +115 -34
- package/dist/init.js.map +1 -1
- package/dist/ink-ui/screens/ReplScreen.d.ts +2 -1
- package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
- package/dist/ink-ui/screens/ReplScreen.js +65 -0
- package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
- package/dist/memory/storage.d.ts.map +1 -1
- package/dist/memory/storage.js +1 -0
- package/dist/memory/storage.js.map +1 -1
- package/dist/memory/store.d.ts.map +1 -1
- package/dist/memory/store.js +11 -5
- package/dist/memory/store.js.map +1 -1
- package/dist/print-ui/launch.d.ts +6 -1
- package/dist/print-ui/launch.d.ts.map +1 -1
- package/dist/print-ui/launch.js +109 -9
- package/dist/print-ui/launch.js.map +1 -1
- package/dist/product/identity.d.ts +2 -2
- package/dist/product/identity.d.ts.map +1 -1
- package/dist/product/identity.js +2 -2
- package/dist/product/identity.js.map +1 -1
- package/dist/product/index.d.ts +2 -1
- package/dist/product/index.d.ts.map +1 -1
- package/dist/product/index.js +5 -1
- package/dist/product/index.js.map +1 -1
- package/dist/product/version.d.ts +12 -0
- package/dist/product/version.d.ts.map +1 -0
- package/dist/product/version.js +31 -0
- package/dist/product/version.js.map +1 -0
- package/dist/runtime/agent-runtime-controller.d.ts +35 -0
- package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
- package/dist/runtime/agent-runtime-controller.js +975 -149
- package/dist/runtime/agent-runtime-controller.js.map +1 -1
- package/dist/runtime/agent-runtime-protocol.d.ts +20 -3
- package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
- package/dist/runtime/agent-runtime-protocol.js +12 -0
- package/dist/runtime/agent-runtime-protocol.js.map +1 -1
- package/dist/runtime/chat-controller.d.ts +12 -0
- package/dist/runtime/chat-controller.d.ts.map +1 -1
- package/dist/runtime/chat-controller.js +213 -19
- package/dist/runtime/chat-controller.js.map +1 -1
- package/dist/runtime/goals/accounting.d.ts +28 -0
- package/dist/runtime/goals/accounting.d.ts.map +1 -1
- package/dist/runtime/goals/accounting.js +69 -0
- package/dist/runtime/goals/accounting.js.map +1 -1
- package/dist/runtime/goals/completion-audit.d.ts +13 -8
- package/dist/runtime/goals/completion-audit.d.ts.map +1 -1
- package/dist/runtime/goals/completion-audit.js +598 -16
- package/dist/runtime/goals/completion-audit.js.map +1 -1
- package/dist/runtime/goals/coordinator.d.ts +44 -5
- package/dist/runtime/goals/coordinator.d.ts.map +1 -1
- package/dist/runtime/goals/coordinator.js +1124 -58
- package/dist/runtime/goals/coordinator.js.map +1 -1
- package/dist/runtime/goals/evidence.d.ts +37 -0
- package/dist/runtime/goals/evidence.d.ts.map +1 -0
- package/dist/runtime/goals/evidence.js +300 -0
- package/dist/runtime/goals/evidence.js.map +1 -0
- package/dist/runtime/goals/presentation.d.ts +4 -0
- package/dist/runtime/goals/presentation.d.ts.map +1 -0
- package/dist/runtime/goals/presentation.js +50 -0
- package/dist/runtime/goals/presentation.js.map +1 -0
- package/dist/runtime/goals/prompt.d.ts.map +1 -1
- package/dist/runtime/goals/prompt.js +38 -8
- package/dist/runtime/goals/prompt.js.map +1 -1
- package/dist/runtime/goals/tools.d.ts +18 -1
- package/dist/runtime/goals/tools.d.ts.map +1 -1
- package/dist/runtime/goals/tools.js +310 -30
- package/dist/runtime/goals/tools.js.map +1 -1
- package/dist/runtime/goals/types.d.ts +247 -7
- package/dist/runtime/goals/types.d.ts.map +1 -1
- package/dist/runtime/goals/types.js +8 -2
- package/dist/runtime/goals/types.js.map +1 -1
- package/dist/runtime/subagents/child-executor-guard.d.ts +12 -4
- package/dist/runtime/subagents/child-executor-guard.d.ts.map +1 -1
- package/dist/runtime/subagents/child-executor-guard.js +397 -61
- package/dist/runtime/subagents/child-executor-guard.js.map +1 -1
- package/dist/runtime/subagents/presets.d.ts +4 -5
- package/dist/runtime/subagents/presets.d.ts.map +1 -1
- package/dist/runtime/subagents/presets.js +18 -33
- package/dist/runtime/subagents/presets.js.map +1 -1
- package/dist/runtime/subagents/production.d.ts +3 -1
- package/dist/runtime/subagents/production.d.ts.map +1 -1
- package/dist/runtime/subagents/production.js +37 -7
- package/dist/runtime/subagents/production.js.map +1 -1
- package/dist/runtime/subagents/runner.d.ts.map +1 -1
- package/dist/runtime/subagents/runner.js +24 -3
- package/dist/runtime/subagents/runner.js.map +1 -1
- package/dist/runtime/subagents/runtime-integration.d.ts +3 -0
- package/dist/runtime/subagents/runtime-integration.d.ts.map +1 -1
- package/dist/runtime/subagents/runtime-integration.js +18 -7
- package/dist/runtime/subagents/runtime-integration.js.map +1 -1
- package/dist/runtime/subagents/supervisor.d.ts +4 -4
- package/dist/runtime/subagents/supervisor.d.ts.map +1 -1
- package/dist/runtime/subagents/supervisor.js +39 -19
- package/dist/runtime/subagents/supervisor.js.map +1 -1
- package/dist/runtime/subagents/types.d.ts +7 -0
- package/dist/runtime/subagents/types.d.ts.map +1 -1
- package/dist/runtime/subagents/types.js +12 -1
- package/dist/runtime/subagents/types.js.map +1 -1
- package/dist/runtime/turn-controller.d.ts.map +1 -1
- package/dist/runtime/turn-controller.js +3 -1
- package/dist/runtime/turn-controller.js.map +1 -1
- package/dist/runtime/ui-events.d.ts +23 -0
- package/dist/runtime/ui-events.d.ts.map +1 -1
- package/dist/runtime/ui-events.js +5 -5
- package/dist/runtime/ui-events.js.map +1 -1
- package/dist/services/config.d.ts +1 -1
- package/dist/services/config.d.ts.map +1 -1
- package/dist/services/config.js +55 -49
- package/dist/services/config.js.map +1 -1
- package/dist/services/doctor.d.ts.map +1 -1
- package/dist/services/doctor.js +163 -17
- package/dist/services/doctor.js.map +1 -1
- package/dist/services/global-config.d.ts +31 -0
- package/dist/services/global-config.d.ts.map +1 -1
- package/dist/services/global-config.js.map +1 -1
- package/dist/services/goal-storage.d.ts +9 -4
- package/dist/services/goal-storage.d.ts.map +1 -1
- package/dist/services/goal-storage.js +1113 -75
- package/dist/services/goal-storage.js.map +1 -1
- package/dist/services/llm.d.ts +19 -0
- package/dist/services/llm.d.ts.map +1 -1
- package/dist/services/llm.js +153 -20
- package/dist/services/llm.js.map +1 -1
- package/dist/services/model-catalog.d.ts +2 -0
- package/dist/services/model-catalog.d.ts.map +1 -1
- package/dist/services/model-catalog.js +25 -15
- package/dist/services/model-catalog.js.map +1 -1
- package/dist/services/model-context.d.ts.map +1 -1
- package/dist/services/model-context.js +36 -0
- package/dist/services/model-context.js.map +1 -1
- package/dist/services/model-registry.d.ts +1 -1
- package/dist/services/model-registry.d.ts.map +1 -1
- package/dist/services/model-registry.js +101 -19
- package/dist/services/model-registry.js.map +1 -1
- package/dist/services/provider-resilience/coordinator.d.ts +2 -1
- package/dist/services/provider-resilience/coordinator.d.ts.map +1 -1
- package/dist/services/provider-resilience/coordinator.js +7 -6
- package/dist/services/provider-resilience/coordinator.js.map +1 -1
- package/dist/services/provider-resilience/error-classifier.d.ts.map +1 -1
- package/dist/services/provider-resilience/error-classifier.js +67 -17
- package/dist/services/provider-resilience/error-classifier.js.map +1 -1
- package/dist/services/provider-resilience/types.d.ts +1 -1
- package/dist/services/provider-resilience/types.d.ts.map +1 -1
- package/dist/services/provider-resilience/types.js.map +1 -1
- package/dist/services/redaction.d.ts.map +1 -1
- package/dist/services/redaction.js +9 -1
- package/dist/services/redaction.js.map +1 -1
- package/dist/services/session-storage.d.ts +12 -1
- package/dist/services/session-storage.d.ts.map +1 -1
- package/dist/services/session-storage.js +23 -7
- package/dist/services/session-storage.js.map +1 -1
- package/dist/services/storage-maintenance.d.ts +73 -3
- package/dist/services/storage-maintenance.d.ts.map +1 -1
- package/dist/services/storage-maintenance.js +771 -104
- package/dist/services/storage-maintenance.js.map +1 -1
- package/dist/services/task-manager.d.ts.map +1 -1
- package/dist/services/task-manager.js +2 -2
- package/dist/services/task-manager.js.map +1 -1
- package/dist/services/tool-allowlist.d.ts +100 -0
- package/dist/services/tool-allowlist.d.ts.map +1 -0
- package/dist/services/tool-allowlist.js +250 -0
- package/dist/services/tool-allowlist.js.map +1 -0
- package/dist/services/web-search-adapters.d.ts.map +1 -1
- package/dist/services/web-search-adapters.js +89 -49
- package/dist/services/web-search-adapters.js.map +1 -1
- package/dist/services/web-search-mcp.d.ts.map +1 -1
- package/dist/services/web-search-mcp.js +34 -37
- package/dist/services/web-search-mcp.js.map +1 -1
- package/dist/services/workspace-state.d.ts +4 -0
- package/dist/services/workspace-state.d.ts.map +1 -1
- package/dist/services/workspace-state.js +30 -9
- package/dist/services/workspace-state.js.map +1 -1
- package/dist/terminal-ui/launch.d.ts +24 -2
- package/dist/terminal-ui/launch.d.ts.map +1 -1
- package/dist/terminal-ui/launch.js +166 -8
- package/dist/terminal-ui/launch.js.map +1 -1
- package/dist/tools/git.d.ts +4 -0
- package/dist/tools/git.d.ts.map +1 -1
- package/dist/tools/git.js +585 -30
- package/dist/tools/git.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +79 -11
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/mcp.d.ts.map +1 -1
- package/dist/tools/mcp.js +20 -12
- package/dist/tools/mcp.js.map +1 -1
- package/dist/tools/sandbox.d.ts +139 -0
- package/dist/tools/sandbox.d.ts.map +1 -0
- package/dist/tools/sandbox.js +485 -0
- package/dist/tools/sandbox.js.map +1 -0
- package/dist/tools/web.d.ts.map +1 -1
- package/dist/tools/web.js +149 -54
- package/dist/tools/web.js.map +1 -1
- package/dist/tui-ui/launch.d.ts.map +1 -1
- package/dist/tui-ui/launch.js +46 -8
- package/dist/tui-ui/launch.js.map +1 -1
- package/dist/tui-ui/layout.d.ts.map +1 -1
- package/dist/tui-ui/layout.js +98 -23
- package/dist/tui-ui/layout.js.map +1 -1
- package/dist/tui-ui/pickers.d.ts.map +1 -1
- package/dist/tui-ui/pickers.js +4 -3
- package/dist/tui-ui/pickers.js.map +1 -1
- package/dist/tui-ui/runner.d.ts +7 -0
- package/dist/tui-ui/runner.d.ts.map +1 -1
- package/dist/tui-ui/runner.js +95 -1
- package/dist/tui-ui/runner.js.map +1 -1
- package/dist/tui-ui/state.d.ts +25 -1
- package/dist/tui-ui/state.d.ts.map +1 -1
- package/dist/tui-ui/state.js +95 -37
- package/dist/tui-ui/state.js.map +1 -1
- package/dist/tui-ui/terminal-image.d.ts +3 -13
- package/dist/tui-ui/terminal-image.d.ts.map +1 -1
- package/dist/tui-ui/terminal-image.js +5 -160
- package/dist/tui-ui/terminal-image.js.map +1 -1
- package/dist/utils/mask.d.ts +28 -0
- package/dist/utils/mask.d.ts.map +1 -0
- package/dist/utils/mask.js +54 -0
- package/dist/utils/mask.js.map +1 -0
- package/package.json +14 -9
- package/dist/core/state.d.ts +0 -94
- package/dist/core/state.d.ts.map +0 -1
- package/dist/core/state.js +0 -178
- package/dist/core/state.js.map +0 -1
- package/dist/ink/bidi.d.ts +0 -16
- package/dist/ink/bidi.d.ts.map +0 -1
- package/dist/ink/bidi.js +0 -124
- package/dist/ink/bidi.js.map +0 -1
- package/dist/ink/clearTerminal.d.ts +0 -14
- package/dist/ink/clearTerminal.d.ts.map +0 -1
- package/dist/ink/clearTerminal.js +0 -63
- package/dist/ink/clearTerminal.js.map +0 -1
- package/dist/ink/colorize.d.ts +0 -17
- package/dist/ink/colorize.d.ts.map +0 -1
- package/dist/ink/colorize.js +0 -208
- package/dist/ink/colorize.js.map +0 -1
- package/dist/ink/components/App.d.ts +0 -73
- package/dist/ink/components/App.d.ts.map +0 -1
- package/dist/ink/components/App.js +0 -646
- package/dist/ink/components/App.js.map +0 -1
- package/dist/ink/components/AppContext.d.ts +0 -12
- package/dist/ink/components/AppContext.d.ts.map +0 -1
- package/dist/ink/components/AppContext.js +0 -14
- package/dist/ink/components/AppContext.js.map +0 -1
- package/dist/ink/components/Box.d.ts +0 -44
- package/dist/ink/components/Box.d.ts.map +0 -1
- package/dist/ink/components/Box.js +0 -191
- package/dist/ink/components/Box.js.map +0 -1
- package/dist/ink/components/ClockContext.d.ts +0 -9
- package/dist/ink/components/ClockContext.d.ts.map +0 -1
- package/dist/ink/components/ClockContext.js +0 -146
- package/dist/ink/components/ClockContext.js.map +0 -1
- package/dist/ink/components/CursorDeclarationContext.d.ts +0 -23
- package/dist/ink/components/CursorDeclarationContext.d.ts.map +0 -1
- package/dist/ink/components/CursorDeclarationContext.js +0 -6
- package/dist/ink/components/CursorDeclarationContext.js.map +0 -1
- package/dist/ink/components/ErrorOverview.d.ts +0 -6
- package/dist/ink/components/ErrorOverview.d.ts.map +0 -1
- package/dist/ink/components/ErrorOverview.js +0 -27
- package/dist/ink/components/ErrorOverview.js.map +0 -1
- package/dist/ink/components/Newline.d.ts +0 -13
- package/dist/ink/components/Newline.d.ts.map +0 -1
- package/dist/ink/components/Newline.js +0 -36
- package/dist/ink/components/Newline.js.map +0 -1
- package/dist/ink/components/NoSelect.d.ts +0 -20
- package/dist/ink/components/NoSelect.d.ts.map +0 -1
- package/dist/ink/components/NoSelect.js +0 -63
- package/dist/ink/components/NoSelect.js.map +0 -1
- package/dist/ink/components/RawAnsi.d.ts +0 -17
- package/dist/ink/components/RawAnsi.d.ts.map +0 -1
- package/dist/ink/components/RawAnsi.js +0 -52
- package/dist/ink/components/RawAnsi.js.map +0 -1
- package/dist/ink/components/Spacer.d.ts +0 -6
- package/dist/ink/components/Spacer.d.ts.map +0 -1
- package/dist/ink/components/Spacer.js +0 -26
- package/dist/ink/components/Spacer.js.map +0 -1
- package/dist/ink/components/StdinContext.d.ts +0 -28
- package/dist/ink/components/StdinContext.d.ts.map +0 -1
- package/dist/ink/components/StdinContext.js +0 -19
- package/dist/ink/components/StdinContext.js.map +0 -1
- package/dist/ink/components/TerminalFocusContext.d.ts +0 -10
- package/dist/ink/components/TerminalFocusContext.d.ts.map +0 -1
- package/dist/ink/components/TerminalFocusContext.js +0 -81
- package/dist/ink/components/TerminalFocusContext.js.map +0 -1
- package/dist/ink/components/TerminalSizeContext.d.ts +0 -6
- package/dist/ink/components/TerminalSizeContext.d.ts.map +0 -1
- package/dist/ink/components/TerminalSizeContext.js +0 -6
- package/dist/ink/components/TerminalSizeContext.js.map +0 -1
- package/dist/ink/components/Text.d.ts +0 -56
- package/dist/ink/components/Text.d.ts.map +0 -1
- package/dist/ink/components/Text.js +0 -201
- package/dist/ink/components/Text.js.map +0 -1
- package/dist/ink/constants.d.ts +0 -2
- package/dist/ink/constants.d.ts.map +0 -1
- package/dist/ink/constants.js +0 -6
- package/dist/ink/constants.js.map +0 -1
- package/dist/ink/devtools.d.ts +0 -3
- package/dist/ink/devtools.d.ts.map +0 -1
- package/dist/ink/devtools.js +0 -5
- package/dist/ink/devtools.js.map +0 -1
- package/dist/ink/dom.d.ts +0 -77
- package/dist/ink/dom.d.ts.map +0 -1
- package/dist/ink/dom.js +0 -322
- package/dist/ink/dom.js.map +0 -1
- package/dist/ink/events/click-event.d.ts +0 -32
- package/dist/ink/events/click-event.d.ts.map +0 -1
- package/dist/ink/events/click-event.js +0 -30
- package/dist/ink/events/click-event.js.map +0 -1
- package/dist/ink/events/dispatcher.d.ts +0 -41
- package/dist/ink/events/dispatcher.d.ts.map +0 -1
- package/dist/ink/events/dispatcher.js +0 -181
- package/dist/ink/events/dispatcher.js.map +0 -1
- package/dist/ink/events/emitter.d.ts +0 -6
- package/dist/ink/events/emitter.d.ts.map +0 -1
- package/dist/ink/events/emitter.js +0 -36
- package/dist/ink/events/emitter.js.map +0 -1
- package/dist/ink/events/event-handlers.d.ts +0 -47
- package/dist/ink/events/event-handlers.d.ts.map +0 -1
- package/dist/ink/events/event-handlers.js +0 -34
- package/dist/ink/events/event-handlers.js.map +0 -1
- package/dist/ink/events/event.d.ts +0 -6
- package/dist/ink/events/event.d.ts.map +0 -1
- package/dist/ink/events/event.js +0 -16
- package/dist/ink/events/event.js.map +0 -1
- package/dist/ink/events/focus-event.d.ts +0 -14
- package/dist/ink/events/focus-event.d.ts.map +0 -1
- package/dist/ink/events/focus-event.js +0 -20
- package/dist/ink/events/focus-event.js.map +0 -1
- package/dist/ink/events/input-event.d.ts +0 -31
- package/dist/ink/events/input-event.d.ts.map +0 -1
- package/dist/ink/events/input-event.js +0 -163
- package/dist/ink/events/input-event.js.map +0 -1
- package/dist/ink/events/keyboard-event.d.ts +0 -20
- package/dist/ink/events/keyboard-event.d.ts.map +0 -1
- package/dist/ink/events/keyboard-event.js +0 -44
- package/dist/ink/events/keyboard-event.js.map +0 -1
- package/dist/ink/events/terminal-event.d.ts +0 -55
- package/dist/ink/events/terminal-event.d.ts.map +0 -1
- package/dist/ink/events/terminal-event.js +0 -79
- package/dist/ink/events/terminal-event.js.map +0 -1
- package/dist/ink/events/terminal-focus-event.d.ts +0 -14
- package/dist/ink/events/terminal-focus-event.d.ts.map +0 -1
- package/dist/ink/events/terminal-focus-event.js +0 -19
- package/dist/ink/events/terminal-focus-event.js.map +0 -1
- package/dist/ink/focus.d.ts +0 -44
- package/dist/ink/focus.d.ts.map +0 -1
- package/dist/ink/focus.js +0 -164
- package/dist/ink/focus.js.map +0 -1
- package/dist/ink/frame.d.ts +0 -95
- package/dist/ink/frame.d.ts.map +0 -1
- package/dist/ink/frame.js +0 -35
- package/dist/ink/frame.js.map +0 -1
- package/dist/ink/get-max-width.d.ts +0 -18
- package/dist/ink/get-max-width.d.ts.map +0 -1
- package/dist/ink/get-max-width.js +0 -26
- package/dist/ink/get-max-width.js.map +0 -1
- package/dist/ink/hit-test.d.ts +0 -34
- package/dist/ink/hit-test.d.ts.map +0 -1
- package/dist/ink/hit-test.js +0 -119
- package/dist/ink/hit-test.js.map +0 -1
- package/dist/ink/hooks/use-animation-frame.d.ts +0 -27
- package/dist/ink/hooks/use-animation-frame.d.ts.map +0 -1
- package/dist/ink/hooks/use-animation-frame.js +0 -52
- package/dist/ink/hooks/use-animation-frame.js.map +0 -1
- package/dist/ink/hooks/use-app.d.ts +0 -6
- package/dist/ink/hooks/use-app.d.ts.map +0 -1
- package/dist/ink/hooks/use-app.js +0 -13
- package/dist/ink/hooks/use-app.js.map +0 -1
- package/dist/ink/hooks/use-declared-cursor.d.ts +0 -27
- package/dist/ink/hooks/use-declared-cursor.d.ts.map +0 -1
- package/dist/ink/hooks/use-declared-cursor.js +0 -67
- package/dist/ink/hooks/use-declared-cursor.js.map +0 -1
- package/dist/ink/hooks/use-input.d.ts +0 -38
- package/dist/ink/hooks/use-input.d.ts.map +0 -1
- package/dist/ink/hooks/use-input.js +0 -86
- package/dist/ink/hooks/use-input.js.map +0 -1
- package/dist/ink/hooks/use-interval.d.ts +0 -19
- package/dist/ink/hooks/use-interval.d.ts.map +0 -1
- package/dist/ink/hooks/use-interval.js +0 -59
- package/dist/ink/hooks/use-interval.js.map +0 -1
- package/dist/ink/hooks/use-search-highlight.d.ts +0 -31
- package/dist/ink/hooks/use-search-highlight.d.ts.map +0 -1
- package/dist/ink/hooks/use-search-highlight.js +0 -39
- package/dist/ink/hooks/use-search-highlight.js.map +0 -1
- package/dist/ink/hooks/use-selection.d.ts +0 -40
- package/dist/ink/hooks/use-selection.d.ts.map +0 -1
- package/dist/ink/hooks/use-selection.js +0 -68
- package/dist/ink/hooks/use-selection.js.map +0 -1
- package/dist/ink/hooks/use-stdin.d.ts +0 -6
- package/dist/ink/hooks/use-stdin.d.ts.map +0 -1
- package/dist/ink/hooks/use-stdin.js +0 -13
- package/dist/ink/hooks/use-stdin.js.map +0 -1
- package/dist/ink/hooks/use-tab-status.d.ts +0 -14
- package/dist/ink/hooks/use-tab-status.d.ts.map +0 -1
- package/dist/ink/hooks/use-tab-status.js +0 -61
- package/dist/ink/hooks/use-tab-status.js.map +0 -1
- package/dist/ink/hooks/use-terminal-focus.d.ts +0 -11
- package/dist/ink/hooks/use-terminal-focus.d.ts.map +0 -1
- package/dist/ink/hooks/use-terminal-focus.js +0 -22
- package/dist/ink/hooks/use-terminal-focus.js.map +0 -1
- package/dist/ink/hooks/use-terminal-title.d.ts +0 -13
- package/dist/ink/hooks/use-terminal-title.d.ts.map +0 -1
- package/dist/ink/hooks/use-terminal-title.js +0 -36
- package/dist/ink/hooks/use-terminal-title.js.map +0 -1
- package/dist/ink/hooks/use-terminal-viewport.d.ts +0 -30
- package/dist/ink/hooks/use-terminal-viewport.d.ts.map +0 -1
- package/dist/ink/hooks/use-terminal-viewport.js +0 -81
- package/dist/ink/hooks/use-terminal-viewport.js.map +0 -1
- package/dist/ink/ink.d.ts +0 -371
- package/dist/ink/ink.d.ts.map +0 -1
- package/dist/ink/ink.js +0 -1686
- package/dist/ink/ink.js.map +0 -1
- package/dist/ink/instances.d.ts +0 -4
- package/dist/ink/instances.d.ts.map +0 -1
- package/dist/ink/instances.js +0 -10
- package/dist/ink/instances.js.map +0 -1
- package/dist/ink/line-width-cache.d.ts +0 -2
- package/dist/ink/line-width-cache.d.ts.map +0 -1
- package/dist/ink/line-width-cache.js +0 -23
- package/dist/ink/line-width-cache.js.map +0 -1
- package/dist/ink/log-update.d.ts +0 -18
- package/dist/ink/log-update.d.ts.map +0 -1
- package/dist/ink/log-update.js +0 -637
- package/dist/ink/log-update.js.map +0 -1
- package/dist/ink/measure-element.d.ts +0 -17
- package/dist/ink/measure-element.d.ts.map +0 -1
- package/dist/ink/measure-element.js +0 -11
- package/dist/ink/measure-element.js.map +0 -1
- package/dist/ink/measure-text.d.ts +0 -7
- package/dist/ink/measure-text.d.ts.map +0 -1
- package/dist/ink/measure-text.js +0 -38
- package/dist/ink/measure-text.js.map +0 -1
- package/dist/ink/node-cache.d.ts +0 -21
- package/dist/ink/node-cache.d.ts.map +0 -1
- package/dist/ink/node-cache.js +0 -36
- package/dist/ink/node-cache.js.map +0 -1
- package/dist/ink/optimizer.d.ts +0 -16
- package/dist/ink/optimizer.d.ts.map +0 -1
- package/dist/ink/optimizer.js +0 -85
- package/dist/ink/optimizer.js.map +0 -1
- package/dist/ink/output.d.ts +0 -120
- package/dist/ink/output.d.ts.map +0 -1
- package/dist/ink/output.js +0 -559
- package/dist/ink/output.js.map +0 -1
- package/dist/ink/parse-keypress.d.ts +0 -112
- package/dist/ink/parse-keypress.d.ts.map +0 -1
- package/dist/ink/parse-keypress.js +0 -719
- package/dist/ink/parse-keypress.js.map +0 -1
- package/dist/ink/parse-keypress.test.d.ts +0 -2
- package/dist/ink/parse-keypress.test.d.ts.map +0 -1
- package/dist/ink/parse-keypress.test.js +0 -37
- package/dist/ink/parse-keypress.test.js.map +0 -1
- package/dist/ink/reconciler.d.ts +0 -12
- package/dist/ink/reconciler.d.ts.map +0 -1
- package/dist/ink/reconciler.js +0 -456
- package/dist/ink/reconciler.js.map +0 -1
- package/dist/ink/render-border.d.ts +0 -25
- package/dist/ink/render-border.d.ts.map +0 -1
- package/dist/ink/render-border.js +0 -141
- package/dist/ink/render-border.js.map +0 -1
- package/dist/ink/render-node-to-output.d.ts +0 -46
- package/dist/ink/render-node-to-output.d.ts.map +0 -1
- package/dist/ink/render-node-to-output.js +0 -1257
- package/dist/ink/render-node-to-output.js.map +0 -1
- package/dist/ink/render-to-screen.d.ts +0 -47
- package/dist/ink/render-to-screen.d.ts.map +0 -1
- package/dist/ink/render-to-screen.js +0 -213
- package/dist/ink/render-to-screen.js.map +0 -1
- package/dist/ink/renderer.d.ts +0 -15
- package/dist/ink/renderer.d.ts.map +0 -1
- package/dist/ink/renderer.js +0 -169
- package/dist/ink/renderer.js.map +0 -1
- package/dist/ink/root.d.ts +0 -75
- package/dist/ink/root.d.ts.map +0 -1
- package/dist/ink/root.js +0 -89
- package/dist/ink/root.js.map +0 -1
- package/dist/ink/screen.d.ts +0 -270
- package/dist/ink/screen.d.ts.map +0 -1
- package/dist/ink/screen.js +0 -1194
- package/dist/ink/screen.js.map +0 -1
- package/dist/ink/searchHighlight.d.ts +0 -21
- package/dist/ink/searchHighlight.d.ts.map +0 -1
- package/dist/ink/searchHighlight.js +0 -82
- package/dist/ink/searchHighlight.js.map +0 -1
- package/dist/ink/selection.d.ts +0 -230
- package/dist/ink/selection.d.ts.map +0 -1
- package/dist/ink/selection.js +0 -814
- package/dist/ink/selection.js.map +0 -1
- package/dist/ink/squash-text-nodes.d.ts +0 -23
- package/dist/ink/squash-text-nodes.d.ts.map +0 -1
- package/dist/ink/squash-text-nodes.js +0 -60
- package/dist/ink/squash-text-nodes.js.map +0 -1
- package/dist/ink/stringWidth.d.ts +0 -2
- package/dist/ink/stringWidth.d.ts.map +0 -1
- package/dist/ink/stringWidth.js +0 -207
- package/dist/ink/stringWidth.js.map +0 -1
- package/dist/ink/styles.d.ts +0 -307
- package/dist/ink/styles.d.ts.map +0 -1
- package/dist/ink/styles.js +0 -302
- package/dist/ink/styles.js.map +0 -1
- package/dist/ink/supports-hyperlinks.d.ts +0 -14
- package/dist/ink/supports-hyperlinks.d.ts.map +0 -1
- package/dist/ink/supports-hyperlinks.js +0 -48
- package/dist/ink/supports-hyperlinks.js.map +0 -1
- package/dist/ink/tabstops.d.ts +0 -2
- package/dist/ink/tabstops.d.ts.map +0 -1
- package/dist/ink/tabstops.js +0 -43
- package/dist/ink/tabstops.js.map +0 -1
- package/dist/ink/terminal-focus-state.d.ts +0 -7
- package/dist/ink/terminal-focus-state.d.ts.map +0 -1
- package/dist/ink/terminal-focus-state.js +0 -43
- package/dist/ink/terminal-focus-state.js.map +0 -1
- package/dist/ink/terminal-querier.d.ts +0 -130
- package/dist/ink/terminal-querier.d.ts.map +0 -1
- package/dist/ink/terminal-querier.js +0 -184
- package/dist/ink/terminal-querier.js.map +0 -1
- package/dist/ink/terminal.d.ts +0 -56
- package/dist/ink/terminal.d.ts.map +0 -1
- package/dist/ink/terminal.js +0 -249
- package/dist/ink/terminal.js.map +0 -1
- package/dist/ink/termio/csi.d.ts +0 -166
- package/dist/ink/termio/csi.d.ts.map +0 -1
- package/dist/ink/termio/csi.js +0 -285
- package/dist/ink/termio/csi.js.map +0 -1
- package/dist/ink/termio/dec.d.ts +0 -38
- package/dist/ink/termio/dec.d.ts.map +0 -1
- package/dist/ink/termio/dec.js +0 -59
- package/dist/ink/termio/dec.js.map +0 -1
- package/dist/ink/termio.d.ts +0 -25
- package/dist/ink/termio.d.ts.map +0 -1
- package/dist/ink/termio.js +0 -32
- package/dist/ink/termio.js.map +0 -1
- package/dist/ink/useTerminalNotification.d.ts +0 -27
- package/dist/ink/useTerminalNotification.d.ts.map +0 -1
- package/dist/ink/useTerminalNotification.js +0 -62
- package/dist/ink/useTerminalNotification.js.map +0 -1
- package/dist/ink/warn.d.ts +0 -2
- package/dist/ink/warn.d.ts.map +0 -1
- package/dist/ink/warn.js +0 -14
- package/dist/ink/warn.js.map +0 -1
- package/dist/ink/widest-line.d.ts +0 -2
- package/dist/ink/widest-line.d.ts.map +0 -1
- package/dist/ink/widest-line.js +0 -18
- package/dist/ink/widest-line.js.map +0 -1
- package/dist/ink/wrap-text.d.ts +0 -3
- package/dist/ink/wrap-text.d.ts.map +0 -1
- package/dist/ink/wrap-text.js +0 -61
- package/dist/ink/wrap-text.js.map +0 -1
- package/dist/ink/wrapAnsi.d.ts +0 -8
- package/dist/ink/wrapAnsi.d.ts.map +0 -1
- package/dist/ink/wrapAnsi.js +0 -13
- package/dist/ink/wrapAnsi.js.map +0 -1
- package/dist/ink-ui/components/TerminalCursor.d.ts +0 -15
- package/dist/ink-ui/components/TerminalCursor.d.ts.map +0 -1
- package/dist/ink-ui/components/TerminalCursor.js +0 -49
- package/dist/ink-ui/components/TerminalCursor.js.map +0 -1
- package/dist/ink-ui/runtime/stdout.d.ts +0 -11
- package/dist/ink-ui/runtime/stdout.d.ts.map +0 -1
- package/dist/ink-ui/runtime/stdout.js +0 -82
- package/dist/ink-ui/runtime/stdout.js.map +0 -1
- package/dist/runtime/goal-coordinator.d.ts +0 -66
- package/dist/runtime/goal-coordinator.d.ts.map +0 -1
- package/dist/runtime/goal-coordinator.js +0 -200
- package/dist/runtime/goal-coordinator.js.map +0 -1
- package/dist/screens/REPL.d.ts +0 -21
- package/dist/screens/REPL.d.ts.map +0 -1
- package/dist/screens/REPL.js +0 -139
- package/dist/screens/REPL.js.map +0 -1
- package/dist/services/goal-sidecar.d.ts +0 -96
- package/dist/services/goal-sidecar.d.ts.map +0 -1
- package/dist/services/goal-sidecar.js +0 -145
- package/dist/services/goal-sidecar.js.map +0 -1
- package/dist/tools/goal.d.ts +0 -17
- package/dist/tools/goal.d.ts.map +0 -1
- package/dist/tools/goal.js +0 -191
- package/dist/tools/goal.js.map +0 -1
- package/dist/ui/ink/components/App.d.ts +0 -6
- package/dist/ui/ink/components/App.d.ts.map +0 -1
- package/dist/ui/ink/components/App.js +0 -38
- package/dist/ui/ink/components/App.js.map +0 -1
- package/dist/ui/ink/components/CommandPanel.d.ts +0 -13
- package/dist/ui/ink/components/CommandPanel.d.ts.map +0 -1
- package/dist/ui/ink/components/CommandPanel.js +0 -41
- package/dist/ui/ink/components/CommandPanel.js.map +0 -1
- package/dist/ui/ink/components/InputLine.d.ts +0 -8
- package/dist/ui/ink/components/InputLine.d.ts.map +0 -1
- package/dist/ui/ink/components/InputLine.js +0 -15
- package/dist/ui/ink/components/InputLine.js.map +0 -1
- package/dist/ui/ink/components/StatusBar.d.ts +0 -9
- package/dist/ui/ink/components/StatusBar.d.ts.map +0 -1
- package/dist/ui/ink/components/StatusBar.js +0 -18
- package/dist/ui/ink/components/StatusBar.js.map +0 -1
- package/dist/ui/ink/components/index.d.ts +0 -5
- package/dist/ui/ink/components/index.d.ts.map +0 -1
- package/dist/ui/ink/components/index.js +0 -5
- package/dist/ui/ink/components/index.js.map +0 -1
- package/dist/utils/chalk.d.ts +0 -9
- package/dist/utils/chalk.d.ts.map +0 -1
- package/dist/utils/chalk.js +0 -16
- package/dist/utils/chalk.js.map +0 -1
package/dist/core/state.js
DELETED
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* openhorse - Bootstrap State 管理
|
|
4
|
-
*
|
|
5
|
-
* v0.1.11: 全局状态字段规范化
|
|
6
|
-
*
|
|
7
|
-
* 提供项目标识、成本追踪、会话状态、缓存等状态管理
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.STATE_MANAGER = void 0;
|
|
11
|
-
exports.initGlobalState = initGlobalState;
|
|
12
|
-
exports.getGlobalState = getGlobalState;
|
|
13
|
-
exports.ensureGlobalState = ensureGlobalState;
|
|
14
|
-
exports.resetGlobalState = resetGlobalState;
|
|
15
|
-
exports.updateActivity = updateActivity;
|
|
16
|
-
exports.recordToolCall = recordToolCall;
|
|
17
|
-
exports.recordError = recordError;
|
|
18
|
-
exports.addCost = addCost;
|
|
19
|
-
exports.setCachedMemory = setCachedMemory;
|
|
20
|
-
exports.clearCachedMemory = clearCachedMemory;
|
|
21
|
-
exports.setBypassPermissionsMode = setBypassPermissionsMode;
|
|
22
|
-
exports.markExitedPlanMode = markExitedPlanMode;
|
|
23
|
-
exports.getStateSummary = getStateSummary;
|
|
24
|
-
// ============================================================================
|
|
25
|
-
// Global State Singleton
|
|
26
|
-
// ============================================================================
|
|
27
|
-
let globalState = null;
|
|
28
|
-
/**
|
|
29
|
-
* 初始化全局状态
|
|
30
|
-
* @param projectRoot - 项目根目录
|
|
31
|
-
* @param sessionId - 会话 ID
|
|
32
|
-
*/
|
|
33
|
-
function initGlobalState(projectRoot, sessionId) {
|
|
34
|
-
globalState = {
|
|
35
|
-
projectRoot,
|
|
36
|
-
sessionId: sessionId || generateSessionId(),
|
|
37
|
-
totalCostUSD: 0,
|
|
38
|
-
modelUsage: new Map(),
|
|
39
|
-
sessionBypassPermissionsMode: false,
|
|
40
|
-
hasExitedPlanMode: false,
|
|
41
|
-
cachedMemoryContent: null,
|
|
42
|
-
initializedAt: Date.now(),
|
|
43
|
-
lastActivityAt: Date.now(),
|
|
44
|
-
toolCallCount: 0,
|
|
45
|
-
errorCount: 0,
|
|
46
|
-
};
|
|
47
|
-
return globalState;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* 获取全局状态
|
|
51
|
-
*/
|
|
52
|
-
function getGlobalState() {
|
|
53
|
-
return globalState;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* 确保全局状态已初始化
|
|
57
|
-
*/
|
|
58
|
-
function ensureGlobalState() {
|
|
59
|
-
if (!globalState) {
|
|
60
|
-
return initGlobalState(process.cwd());
|
|
61
|
-
}
|
|
62
|
-
return globalState;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* 重置全局状态
|
|
66
|
-
*/
|
|
67
|
-
function resetGlobalState() {
|
|
68
|
-
globalState = null;
|
|
69
|
-
}
|
|
70
|
-
// ============================================================================
|
|
71
|
-
// State Updates
|
|
72
|
-
// ============================================================================
|
|
73
|
-
/**
|
|
74
|
-
* 更新最后活动时间
|
|
75
|
-
*/
|
|
76
|
-
function updateActivity() {
|
|
77
|
-
const state = ensureGlobalState();
|
|
78
|
-
state.lastActivityAt = Date.now();
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* 记录工具调用
|
|
82
|
-
*/
|
|
83
|
-
function recordToolCall() {
|
|
84
|
-
const state = ensureGlobalState();
|
|
85
|
-
state.toolCallCount++;
|
|
86
|
-
updateActivity();
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* 记录错误
|
|
90
|
-
*/
|
|
91
|
-
function recordError() {
|
|
92
|
-
const state = ensureGlobalState();
|
|
93
|
-
state.errorCount++;
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* 添加成本
|
|
97
|
-
*/
|
|
98
|
-
function addCost(model, tokens, costUSD) {
|
|
99
|
-
const state = ensureGlobalState();
|
|
100
|
-
state.totalCostUSD += costUSD;
|
|
101
|
-
const existing = state.modelUsage.get(model) || { tokens: 0, cost: 0 };
|
|
102
|
-
state.modelUsage.set(model, {
|
|
103
|
-
tokens: existing.tokens + tokens,
|
|
104
|
-
cost: existing.cost + costUSD,
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* 设置内存缓存
|
|
109
|
-
*/
|
|
110
|
-
function setCachedMemory(content) {
|
|
111
|
-
const state = ensureGlobalState();
|
|
112
|
-
state.cachedMemoryContent = content;
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* 清除内存缓存
|
|
116
|
-
*/
|
|
117
|
-
function clearCachedMemory() {
|
|
118
|
-
const state = ensureGlobalState();
|
|
119
|
-
state.cachedMemoryContent = null;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* 设置绕过权限模式
|
|
123
|
-
*/
|
|
124
|
-
function setBypassPermissionsMode(enabled) {
|
|
125
|
-
const state = ensureGlobalState();
|
|
126
|
-
state.sessionBypassPermissionsMode = enabled;
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* 标记已退出计划模式
|
|
130
|
-
*/
|
|
131
|
-
function markExitedPlanMode() {
|
|
132
|
-
const state = ensureGlobalState();
|
|
133
|
-
state.hasExitedPlanMode = true;
|
|
134
|
-
}
|
|
135
|
-
// ============================================================================
|
|
136
|
-
// Helpers
|
|
137
|
-
// ============================================================================
|
|
138
|
-
function generateSessionId() {
|
|
139
|
-
const timestamp = Date.now().toString(36);
|
|
140
|
-
const random = Math.random().toString(36).slice(2, 8);
|
|
141
|
-
return `${timestamp}-${random}`;
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* 获取状态摘要
|
|
145
|
-
*/
|
|
146
|
-
function getStateSummary() {
|
|
147
|
-
const state = getGlobalState();
|
|
148
|
-
if (!state)
|
|
149
|
-
return 'State not initialized';
|
|
150
|
-
const lines = [
|
|
151
|
-
`Project: ${state.projectRoot}`,
|
|
152
|
-
`Session: ${state.sessionId}`,
|
|
153
|
-
`Cost: $${state.totalCostUSD.toFixed(4)}`,
|
|
154
|
-
`Tool calls: ${state.toolCallCount}`,
|
|
155
|
-
`Errors: ${state.errorCount}`,
|
|
156
|
-
`Uptime: ${Math.round((Date.now() - state.initializedAt) / 1000)}s`,
|
|
157
|
-
];
|
|
158
|
-
return lines.join('\n');
|
|
159
|
-
}
|
|
160
|
-
// ============================================================================
|
|
161
|
-
// Export
|
|
162
|
-
// ============================================================================
|
|
163
|
-
exports.STATE_MANAGER = {
|
|
164
|
-
initGlobalState,
|
|
165
|
-
getGlobalState,
|
|
166
|
-
ensureGlobalState,
|
|
167
|
-
resetGlobalState,
|
|
168
|
-
updateActivity,
|
|
169
|
-
recordToolCall,
|
|
170
|
-
recordError,
|
|
171
|
-
addCost,
|
|
172
|
-
setCachedMemory,
|
|
173
|
-
clearCachedMemory,
|
|
174
|
-
setBypassPermissionsMode,
|
|
175
|
-
markExitedPlanMode,
|
|
176
|
-
getStateSummary,
|
|
177
|
-
};
|
|
178
|
-
//# sourceMappingURL=state.js.map
|
package/dist/core/state.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/core/state.ts"],"names":[],"mappings":"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"}
|
package/dist/ink/bidi.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
type ClusteredChar = {
|
|
2
|
-
value: string;
|
|
3
|
-
width: number;
|
|
4
|
-
styleId: number;
|
|
5
|
-
hyperlink: string | undefined;
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* Reorder an array of ClusteredChars from logical order to visual order
|
|
9
|
-
* using the Unicode Bidi Algorithm. Active on terminals that lack native
|
|
10
|
-
* bidi support (Windows Terminal, conhost, WSL).
|
|
11
|
-
*
|
|
12
|
-
* Returns the same array on bidi-capable terminals (no-op).
|
|
13
|
-
*/
|
|
14
|
-
export declare function reorderBidi(characters: ClusteredChar[]): ClusteredChar[];
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=bidi.d.ts.map
|
package/dist/ink/bidi.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bidi.d.ts","sourceRoot":"","sources":["../../src/ink/bidi.ts"],"names":[],"mappings":"AAkBA,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,CAAA;AAsBD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAoDxE"}
|
package/dist/ink/bidi.js
DELETED
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.reorderBidi = reorderBidi;
|
|
7
|
-
/**
|
|
8
|
-
* Bidirectional text reordering for terminal rendering.
|
|
9
|
-
*
|
|
10
|
-
* Terminals on Windows do not implement the Unicode Bidi Algorithm,
|
|
11
|
-
* so RTL text (Hebrew, Arabic, etc.) appears reversed. This module
|
|
12
|
-
* applies the bidi algorithm to reorder ClusteredChar arrays from
|
|
13
|
-
* logical order to visual order before Ink's LTR cell placement loop.
|
|
14
|
-
*
|
|
15
|
-
* On macOS terminals (Terminal.app, iTerm2) bidi works natively.
|
|
16
|
-
* Windows Terminal (including WSL) does not implement bidi
|
|
17
|
-
* (https://github.com/microsoft/terminal/issues/538).
|
|
18
|
-
*
|
|
19
|
-
* Detection: Windows Terminal sets WT_SESSION; native Windows cmd/conhost
|
|
20
|
-
* also lacks bidi. We enable bidi reordering when running on Windows or
|
|
21
|
-
* inside Windows Terminal (covers WSL).
|
|
22
|
-
*/
|
|
23
|
-
const bidi_js_1 = __importDefault(require("bidi-js"));
|
|
24
|
-
let bidiInstance;
|
|
25
|
-
let needsSoftwareBidi;
|
|
26
|
-
function needsBidi() {
|
|
27
|
-
if (needsSoftwareBidi === undefined) {
|
|
28
|
-
needsSoftwareBidi =
|
|
29
|
-
process.platform === 'win32' ||
|
|
30
|
-
typeof process.env['WT_SESSION'] === 'string' || // WSL in Windows Terminal
|
|
31
|
-
process.env['TERM_PROGRAM'] === 'vscode'; // VS Code integrated terminal (xterm.js)
|
|
32
|
-
}
|
|
33
|
-
return needsSoftwareBidi;
|
|
34
|
-
}
|
|
35
|
-
function getBidi() {
|
|
36
|
-
if (!bidiInstance) {
|
|
37
|
-
bidiInstance = (0, bidi_js_1.default)();
|
|
38
|
-
}
|
|
39
|
-
return bidiInstance;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Reorder an array of ClusteredChars from logical order to visual order
|
|
43
|
-
* using the Unicode Bidi Algorithm. Active on terminals that lack native
|
|
44
|
-
* bidi support (Windows Terminal, conhost, WSL).
|
|
45
|
-
*
|
|
46
|
-
* Returns the same array on bidi-capable terminals (no-op).
|
|
47
|
-
*/
|
|
48
|
-
function reorderBidi(characters) {
|
|
49
|
-
if (!needsBidi() || characters.length === 0) {
|
|
50
|
-
return characters;
|
|
51
|
-
}
|
|
52
|
-
// Build a plain string from the clustered chars to run through bidi
|
|
53
|
-
const plainText = characters.map(c => c.value).join('');
|
|
54
|
-
// Check if there are any RTL characters — skip bidi if pure LTR
|
|
55
|
-
if (!hasRTLCharacters(plainText)) {
|
|
56
|
-
return characters;
|
|
57
|
-
}
|
|
58
|
-
const bidi = getBidi();
|
|
59
|
-
const { levels } = bidi.getEmbeddingLevels(plainText, 'auto');
|
|
60
|
-
// Map bidi levels back to ClusteredChar indices.
|
|
61
|
-
// Each ClusteredChar may be multiple code units in the joined string.
|
|
62
|
-
const charLevels = [];
|
|
63
|
-
let offset = 0;
|
|
64
|
-
for (let i = 0; i < characters.length; i++) {
|
|
65
|
-
charLevels.push(levels[offset]);
|
|
66
|
-
offset += characters[i].value.length;
|
|
67
|
-
}
|
|
68
|
-
// Get reorder segments from bidi-js, but we need to work at the
|
|
69
|
-
// ClusteredChar level, not the string level. We'll implement the
|
|
70
|
-
// standard bidi reordering: find the max level, then for each level
|
|
71
|
-
// from max down to 1, reverse all contiguous runs >= that level.
|
|
72
|
-
const reordered = [...characters];
|
|
73
|
-
const maxLevel = Math.max(...charLevels);
|
|
74
|
-
for (let level = maxLevel; level >= 1; level--) {
|
|
75
|
-
let i = 0;
|
|
76
|
-
while (i < reordered.length) {
|
|
77
|
-
if (charLevels[i] >= level) {
|
|
78
|
-
// Find the end of this run
|
|
79
|
-
let j = i + 1;
|
|
80
|
-
while (j < reordered.length && charLevels[j] >= level) {
|
|
81
|
-
j++;
|
|
82
|
-
}
|
|
83
|
-
// Reverse the run in both arrays
|
|
84
|
-
reverseRange(reordered, i, j - 1);
|
|
85
|
-
reverseRangeNumbers(charLevels, i, j - 1);
|
|
86
|
-
i = j;
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
i++;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return reordered;
|
|
94
|
-
}
|
|
95
|
-
function reverseRange(arr, start, end) {
|
|
96
|
-
while (start < end) {
|
|
97
|
-
const temp = arr[start];
|
|
98
|
-
arr[start] = arr[end];
|
|
99
|
-
arr[end] = temp;
|
|
100
|
-
start++;
|
|
101
|
-
end--;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
function reverseRangeNumbers(arr, start, end) {
|
|
105
|
-
while (start < end) {
|
|
106
|
-
const temp = arr[start];
|
|
107
|
-
arr[start] = arr[end];
|
|
108
|
-
arr[end] = temp;
|
|
109
|
-
start++;
|
|
110
|
-
end--;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Quick check for RTL characters (Hebrew, Arabic, and related scripts).
|
|
115
|
-
* Avoids running the full bidi algorithm on pure-LTR text.
|
|
116
|
-
*/
|
|
117
|
-
function hasRTLCharacters(text) {
|
|
118
|
-
// Hebrew: U+0590-U+05FF, U+FB1D-U+FB4F
|
|
119
|
-
// Arabic: U+0600-U+06FF, U+0750-U+077F, U+08A0-U+08FF, U+FB50-U+FDFF, U+FE70-U+FEFF
|
|
120
|
-
// Thaana: U+0780-U+07BF
|
|
121
|
-
// Syriac: U+0700-U+074F
|
|
122
|
-
return /[\u0590-\u05FF\uFB1D-\uFB4F\u0600-\u06FF\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF\u0780-\u07BF\u0700-\u074F]/u.test(text);
|
|
123
|
-
}
|
|
124
|
-
//# sourceMappingURL=bidi.js.map
|
package/dist/ink/bidi.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bidi.js","sourceRoot":"","sources":["../../src/ink/bidi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cross-platform terminal clearing with scrollback support.
|
|
3
|
-
* Detects modern terminals that support ESC[3J for clearing scrollback.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Returns the ANSI escape sequence to clear the terminal including scrollback.
|
|
7
|
-
* Automatically detects terminal capabilities.
|
|
8
|
-
*/
|
|
9
|
-
export declare function getClearTerminalSequence(): string;
|
|
10
|
-
/**
|
|
11
|
-
* Clears the terminal screen. On supported terminals, also clears scrollback.
|
|
12
|
-
*/
|
|
13
|
-
export declare const clearTerminal: string;
|
|
14
|
-
//# sourceMappingURL=clearTerminal.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clearTerminal.d.ts","sourceRoot":"","sources":["../../src/ink/clearTerminal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmDH;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAUjD;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,QAA6B,CAAA"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Cross-platform terminal clearing with scrollback support.
|
|
4
|
-
* Detects modern terminals that support ESC[3J for clearing scrollback.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.clearTerminal = void 0;
|
|
8
|
-
exports.getClearTerminalSequence = getClearTerminalSequence;
|
|
9
|
-
const csi_js_1 = require("./termio/csi.js");
|
|
10
|
-
// HVP (Horizontal Vertical Position) - legacy Windows cursor home
|
|
11
|
-
const CURSOR_HOME_WINDOWS = (0, csi_js_1.csi)(0, 'f');
|
|
12
|
-
function isWindowsTerminal() {
|
|
13
|
-
return process.platform === 'win32' && !!process.env.WT_SESSION;
|
|
14
|
-
}
|
|
15
|
-
function isMintty() {
|
|
16
|
-
// mintty 3.1.5+ sets TERM_PROGRAM to 'mintty'
|
|
17
|
-
if (process.env.TERM_PROGRAM === 'mintty') {
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
// GitBash/MSYS2/MINGW use mintty and set MSYSTEM
|
|
21
|
-
if (process.platform === 'win32' && process.env.MSYSTEM) {
|
|
22
|
-
return true;
|
|
23
|
-
}
|
|
24
|
-
return false;
|
|
25
|
-
}
|
|
26
|
-
function isModernWindowsTerminal() {
|
|
27
|
-
// Windows Terminal sets WT_SESSION environment variable
|
|
28
|
-
if (isWindowsTerminal()) {
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
|
-
// VS Code integrated terminal on Windows with ConPTY support
|
|
32
|
-
if (process.platform === 'win32' &&
|
|
33
|
-
process.env.TERM_PROGRAM === 'vscode' &&
|
|
34
|
-
process.env.TERM_PROGRAM_VERSION) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
// mintty (GitBash/MSYS2/Cygwin) supports modern escape sequences
|
|
38
|
-
if (isMintty()) {
|
|
39
|
-
return true;
|
|
40
|
-
}
|
|
41
|
-
return false;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Returns the ANSI escape sequence to clear the terminal including scrollback.
|
|
45
|
-
* Automatically detects terminal capabilities.
|
|
46
|
-
*/
|
|
47
|
-
function getClearTerminalSequence() {
|
|
48
|
-
if (process.platform === 'win32') {
|
|
49
|
-
if (isModernWindowsTerminal()) {
|
|
50
|
-
return csi_js_1.ERASE_SCREEN + csi_js_1.ERASE_SCROLLBACK + csi_js_1.CURSOR_HOME;
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
// Legacy Windows console - can't clear scrollback
|
|
54
|
-
return csi_js_1.ERASE_SCREEN + CURSOR_HOME_WINDOWS;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return csi_js_1.ERASE_SCREEN + csi_js_1.ERASE_SCROLLBACK + csi_js_1.CURSOR_HOME;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Clears the terminal screen. On supported terminals, also clears scrollback.
|
|
61
|
-
*/
|
|
62
|
-
exports.clearTerminal = getClearTerminalSequence();
|
|
63
|
-
//# sourceMappingURL=clearTerminal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clearTerminal.js","sourceRoot":"","sources":["../../src/ink/clearTerminal.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAuDH,4DAUC;AA/DD,4CAKwB;AAExB,kEAAkE;AAClE,MAAM,mBAAmB,GAAG,IAAA,YAAG,EAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAEvC,SAAS,iBAAiB;IACxB,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAA;AACjE,CAAC;AAED,SAAS,QAAQ;IACf,8CAA8C;IAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,iDAAiD;IACjD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACxD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,uBAAuB;IAC9B,wDAAwD;IACxD,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,6DAA6D;IAC7D,IACE,OAAO,CAAC,QAAQ,KAAK,OAAO;QAC5B,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,QAAQ;QACrC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAChC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,iEAAiE;IACjE,IAAI,QAAQ,EAAE,EAAE,CAAC;QACf,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;GAGG;AACH,SAAgB,wBAAwB;IACtC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,uBAAuB,EAAE,EAAE,CAAC;YAC9B,OAAO,qBAAY,GAAG,yBAAgB,GAAG,oBAAW,CAAA;QACtD,CAAC;aAAM,CAAC;YACN,kDAAkD;YAClD,OAAO,qBAAY,GAAG,mBAAmB,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,qBAAY,GAAG,yBAAgB,GAAG,oBAAW,CAAA;AACtD,CAAC;AAED;;GAEG;AACU,QAAA,aAAa,GAAG,wBAAwB,EAAE,CAAA"}
|
package/dist/ink/colorize.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { Color, TextStyles } from './styles.js';
|
|
2
|
-
export declare const CHALK_BOOSTED_FOR_XTERMJS: boolean;
|
|
3
|
-
export declare const CHALK_CLAMPED_FOR_TMUX: boolean;
|
|
4
|
-
export type ColorType = 'foreground' | 'background';
|
|
5
|
-
export declare const colorize: (str: string, color: string | undefined, type: ColorType) => string;
|
|
6
|
-
/**
|
|
7
|
-
* Apply TextStyles to a string using chalk.
|
|
8
|
-
* This is the inverse of parsing ANSI codes - we generate them from structured styles.
|
|
9
|
-
* Theme resolution happens at component layer, not here.
|
|
10
|
-
*/
|
|
11
|
-
export declare function applyTextStyles(text: string, styles: TextStyles): string;
|
|
12
|
-
/**
|
|
13
|
-
* Apply a raw color value to text.
|
|
14
|
-
* Theme resolution should happen at component layer, not here.
|
|
15
|
-
*/
|
|
16
|
-
export declare function applyColor(text: string, color: Color | undefined): string;
|
|
17
|
-
//# sourceMappingURL=colorize.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"colorize.d.ts","sourceRoot":"","sources":["../../src/ink/colorize.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AA2DpD,eAAO,MAAM,yBAAyB,SAA8B,CAAA;AACpE,eAAO,MAAM,sBAAsB,SAA2B,CAAA;AAE9D,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,YAAY,CAAA;AAKnD,eAAO,MAAM,QAAQ,GACnB,KAAK,MAAM,EACX,OAAO,MAAM,GAAG,SAAS,EACzB,MAAM,SAAS,KACd,MAgGF,CAAA;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CA4CxE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAKzE"}
|
package/dist/ink/colorize.js
DELETED
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.colorize = exports.CHALK_CLAMPED_FOR_TMUX = exports.CHALK_BOOSTED_FOR_XTERMJS = void 0;
|
|
7
|
-
exports.applyTextStyles = applyTextStyles;
|
|
8
|
-
exports.applyColor = applyColor;
|
|
9
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
10
|
-
/**
|
|
11
|
-
* xterm.js (VS Code, Cursor, code-server, Coder) has supported truecolor
|
|
12
|
-
* since 2017, but code-server/Coder containers often don't set
|
|
13
|
-
* COLORTERM=truecolor. chalk's supports-color doesn't recognize
|
|
14
|
-
* TERM_PROGRAM=vscode (it only knows iTerm.app/Apple_Terminal), so it falls
|
|
15
|
-
* through to the -256color regex → level 2. At level 2, chalk.rgb()
|
|
16
|
-
* downgrades to the nearest 6×6×6 cube color: rgb(215,119,87) (Claude
|
|
17
|
-
* orange) → idx 174 rgb(215,135,135) — washed-out salmon.
|
|
18
|
-
*
|
|
19
|
-
* Gated on level === 2 (not < 3) to respect NO_COLOR / FORCE_COLOR=0 —
|
|
20
|
-
* those yield level 0 and are an explicit "no colors" request. Desktop VS
|
|
21
|
-
* Code sets COLORTERM=truecolor itself, so this is a no-op there (already 3).
|
|
22
|
-
*
|
|
23
|
-
* Must run BEFORE the tmux clamp — if tmux is running inside a VS Code
|
|
24
|
-
* terminal, tmux's passthrough limitation wins and we want level 2.
|
|
25
|
-
*/
|
|
26
|
-
function boostChalkLevelForXtermJs() {
|
|
27
|
-
if (process.env.TERM_PROGRAM === 'vscode' && chalk_1.default.level === 2) {
|
|
28
|
-
chalk_1.default.level = 3;
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
|
-
return false;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* tmux parses truecolor SGR (\e[48;2;r;g;bm) into its cell buffer correctly,
|
|
35
|
-
* but its client-side emitter only re-emits truecolor to the outer terminal if
|
|
36
|
-
* the outer terminal advertises Tc/RGB capability (via terminal-overrides).
|
|
37
|
-
* Default tmux config doesn't set this, so tmux emits the cell to iTerm2/etc
|
|
38
|
-
* WITHOUT the bg sequence — outer terminal's buffer has bg=default → black on
|
|
39
|
-
* dark profiles. Clamping to level 2 makes chalk emit 256-color (\e[48;5;Nm),
|
|
40
|
-
* which tmux passes through cleanly. grey93 (255) is visually identical to
|
|
41
|
-
* rgb(240,240,240).
|
|
42
|
-
*
|
|
43
|
-
* Users who HAVE set `terminal-overrides ,*:Tc` get a technically-unnecessary
|
|
44
|
-
* downgrade, but the visual difference is imperceptible. Querying
|
|
45
|
-
* `tmux show -gv terminal-overrides` to detect this would add a subprocess on
|
|
46
|
-
* startup — not worth it.
|
|
47
|
-
*
|
|
48
|
-
* $TMUX is a pty-lifecycle env var set by tmux itself; it never comes from
|
|
49
|
-
* globalSettings.env, so reading it here is correct. chalk is a singleton, so
|
|
50
|
-
* this clamps ALL truecolor output (fg+bg+hex) across the entire app.
|
|
51
|
-
*/
|
|
52
|
-
function clampChalkLevelForTmux() {
|
|
53
|
-
// bg.ts sets terminal-overrides :Tc before attach, so truecolor passes
|
|
54
|
-
// through — skip the clamp. General escape hatch for anyone who's
|
|
55
|
-
// configured their tmux correctly.
|
|
56
|
-
if (process.env.CLAUDE_CODE_TMUX_TRUECOLOR)
|
|
57
|
-
return false;
|
|
58
|
-
if (process.env.TMUX && chalk_1.default.level > 2) {
|
|
59
|
-
chalk_1.default.level = 2;
|
|
60
|
-
return true;
|
|
61
|
-
}
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
// Computed once at module load — terminal/tmux environment doesn't change mid-session.
|
|
65
|
-
// Order matters: boost first so the tmux clamp can re-clamp if tmux is running
|
|
66
|
-
// inside a VS Code terminal. Exported for debugging — tree-shaken if unused.
|
|
67
|
-
exports.CHALK_BOOSTED_FOR_XTERMJS = boostChalkLevelForXtermJs();
|
|
68
|
-
exports.CHALK_CLAMPED_FOR_TMUX = clampChalkLevelForTmux();
|
|
69
|
-
const RGB_REGEX = /^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/;
|
|
70
|
-
const ANSI_REGEX = /^ansi256\(\s?(\d+)\s?\)$/;
|
|
71
|
-
const colorize = (str, color, type) => {
|
|
72
|
-
if (!color) {
|
|
73
|
-
return str;
|
|
74
|
-
}
|
|
75
|
-
if (color.startsWith('ansi:')) {
|
|
76
|
-
const value = color.substring('ansi:'.length);
|
|
77
|
-
switch (value) {
|
|
78
|
-
case 'black':
|
|
79
|
-
return type === 'foreground' ? chalk_1.default.black(str) : chalk_1.default.bgBlack(str);
|
|
80
|
-
case 'red':
|
|
81
|
-
return type === 'foreground' ? chalk_1.default.red(str) : chalk_1.default.bgRed(str);
|
|
82
|
-
case 'green':
|
|
83
|
-
return type === 'foreground' ? chalk_1.default.green(str) : chalk_1.default.bgGreen(str);
|
|
84
|
-
case 'yellow':
|
|
85
|
-
return type === 'foreground' ? chalk_1.default.yellow(str) : chalk_1.default.bgYellow(str);
|
|
86
|
-
case 'blue':
|
|
87
|
-
return type === 'foreground' ? chalk_1.default.blue(str) : chalk_1.default.bgBlue(str);
|
|
88
|
-
case 'magenta':
|
|
89
|
-
return type === 'foreground' ? chalk_1.default.magenta(str) : chalk_1.default.bgMagenta(str);
|
|
90
|
-
case 'cyan':
|
|
91
|
-
return type === 'foreground' ? chalk_1.default.cyan(str) : chalk_1.default.bgCyan(str);
|
|
92
|
-
case 'white':
|
|
93
|
-
return type === 'foreground' ? chalk_1.default.white(str) : chalk_1.default.bgWhite(str);
|
|
94
|
-
case 'blackBright':
|
|
95
|
-
return type === 'foreground'
|
|
96
|
-
? chalk_1.default.blackBright(str)
|
|
97
|
-
: chalk_1.default.bgBlackBright(str);
|
|
98
|
-
case 'redBright':
|
|
99
|
-
return type === 'foreground'
|
|
100
|
-
? chalk_1.default.redBright(str)
|
|
101
|
-
: chalk_1.default.bgRedBright(str);
|
|
102
|
-
case 'greenBright':
|
|
103
|
-
return type === 'foreground'
|
|
104
|
-
? chalk_1.default.greenBright(str)
|
|
105
|
-
: chalk_1.default.bgGreenBright(str);
|
|
106
|
-
case 'yellowBright':
|
|
107
|
-
return type === 'foreground'
|
|
108
|
-
? chalk_1.default.yellowBright(str)
|
|
109
|
-
: chalk_1.default.bgYellowBright(str);
|
|
110
|
-
case 'blueBright':
|
|
111
|
-
return type === 'foreground'
|
|
112
|
-
? chalk_1.default.blueBright(str)
|
|
113
|
-
: chalk_1.default.bgBlueBright(str);
|
|
114
|
-
case 'magentaBright':
|
|
115
|
-
return type === 'foreground'
|
|
116
|
-
? chalk_1.default.magentaBright(str)
|
|
117
|
-
: chalk_1.default.bgMagentaBright(str);
|
|
118
|
-
case 'cyanBright':
|
|
119
|
-
return type === 'foreground'
|
|
120
|
-
? chalk_1.default.cyanBright(str)
|
|
121
|
-
: chalk_1.default.bgCyanBright(str);
|
|
122
|
-
case 'whiteBright':
|
|
123
|
-
return type === 'foreground'
|
|
124
|
-
? chalk_1.default.whiteBright(str)
|
|
125
|
-
: chalk_1.default.bgWhiteBright(str);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
if (color.startsWith('#')) {
|
|
129
|
-
return type === 'foreground'
|
|
130
|
-
? chalk_1.default.hex(color)(str)
|
|
131
|
-
: chalk_1.default.bgHex(color)(str);
|
|
132
|
-
}
|
|
133
|
-
if (color.startsWith('ansi256')) {
|
|
134
|
-
const matches = ANSI_REGEX.exec(color);
|
|
135
|
-
if (!matches) {
|
|
136
|
-
return str;
|
|
137
|
-
}
|
|
138
|
-
const value = Number(matches[1]);
|
|
139
|
-
return type === 'foreground'
|
|
140
|
-
? chalk_1.default.ansi256(value)(str)
|
|
141
|
-
: chalk_1.default.bgAnsi256(value)(str);
|
|
142
|
-
}
|
|
143
|
-
if (color.startsWith('rgb')) {
|
|
144
|
-
const matches = RGB_REGEX.exec(color);
|
|
145
|
-
if (!matches) {
|
|
146
|
-
return str;
|
|
147
|
-
}
|
|
148
|
-
const firstValue = Number(matches[1]);
|
|
149
|
-
const secondValue = Number(matches[2]);
|
|
150
|
-
const thirdValue = Number(matches[3]);
|
|
151
|
-
return type === 'foreground'
|
|
152
|
-
? chalk_1.default.rgb(firstValue, secondValue, thirdValue)(str)
|
|
153
|
-
: chalk_1.default.bgRgb(firstValue, secondValue, thirdValue)(str);
|
|
154
|
-
}
|
|
155
|
-
return str;
|
|
156
|
-
};
|
|
157
|
-
exports.colorize = colorize;
|
|
158
|
-
/**
|
|
159
|
-
* Apply TextStyles to a string using chalk.
|
|
160
|
-
* This is the inverse of parsing ANSI codes - we generate them from structured styles.
|
|
161
|
-
* Theme resolution happens at component layer, not here.
|
|
162
|
-
*/
|
|
163
|
-
function applyTextStyles(text, styles) {
|
|
164
|
-
let result = text;
|
|
165
|
-
// Apply styles in reverse order of desired nesting.
|
|
166
|
-
// chalk wraps text so later calls become outer wrappers.
|
|
167
|
-
// Desired order (outermost to innermost):
|
|
168
|
-
// background > foreground > text modifiers
|
|
169
|
-
// So we apply: text modifiers first, then foreground, then background last.
|
|
170
|
-
if (styles.inverse) {
|
|
171
|
-
result = chalk_1.default.inverse(result);
|
|
172
|
-
}
|
|
173
|
-
if (styles.strikethrough) {
|
|
174
|
-
result = chalk_1.default.strikethrough(result);
|
|
175
|
-
}
|
|
176
|
-
if (styles.underline) {
|
|
177
|
-
result = chalk_1.default.underline(result);
|
|
178
|
-
}
|
|
179
|
-
if (styles.italic) {
|
|
180
|
-
result = chalk_1.default.italic(result);
|
|
181
|
-
}
|
|
182
|
-
if (styles.bold) {
|
|
183
|
-
result = chalk_1.default.bold(result);
|
|
184
|
-
}
|
|
185
|
-
if (styles.dim) {
|
|
186
|
-
result = chalk_1.default.dim(result);
|
|
187
|
-
}
|
|
188
|
-
if (styles.color) {
|
|
189
|
-
// Color is now always a raw color value (theme resolution happens at component layer)
|
|
190
|
-
result = (0, exports.colorize)(result, styles.color, 'foreground');
|
|
191
|
-
}
|
|
192
|
-
if (styles.backgroundColor) {
|
|
193
|
-
// backgroundColor is now always a raw color value
|
|
194
|
-
result = (0, exports.colorize)(result, styles.backgroundColor, 'background');
|
|
195
|
-
}
|
|
196
|
-
return result;
|
|
197
|
-
}
|
|
198
|
-
/**
|
|
199
|
-
* Apply a raw color value to text.
|
|
200
|
-
* Theme resolution should happen at component layer, not here.
|
|
201
|
-
*/
|
|
202
|
-
function applyColor(text, color) {
|
|
203
|
-
if (!color) {
|
|
204
|
-
return text;
|
|
205
|
-
}
|
|
206
|
-
return (0, exports.colorize)(text, color, 'foreground');
|
|
207
|
-
}
|
|
208
|
-
//# sourceMappingURL=colorize.js.map
|
package/dist/ink/colorize.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"colorize.js","sourceRoot":"","sources":["../../src/ink/colorize.ts"],"names":[],"mappings":"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"}
|