@songtonyli/dsh-cli 0.1.12 → 0.1.13
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 +1 -1
- package/bin/dsh.mjs +1 -1
- package/node_modules/@deepseek-ai/cordis/lib/index.js +3 -2
- package/node_modules/@deepseek-ai/cordis/src/logger.ts +3 -2
- package/node_modules/@deepseek-ai/cordis-plugin-loader/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/cordis-plugin-loader/src/config/entry.ts +1 -1
- package/node_modules/@deepseek-ai/dsh/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh/README.md +6 -4
- package/node_modules/@deepseek-ai/dsh/README.zh.md +6 -4
- package/node_modules/@deepseek-ai/dsh/lib/bin.js +118 -54
- package/node_modules/@deepseek-ai/dsh/lib/{dump-config-CpQgpJa2.js → dump-config-Bb5YvFIX.js} +1 -1
- package/node_modules/@deepseek-ai/dsh/lib/plugin-DJ-rVHUS.js +31 -0
- package/node_modules/@deepseek-ai/dsh/lib/{profile-boot-CuwbWsnH.js → profile-boot-BNu17Y9U.js} +82 -135
- package/node_modules/@deepseek-ai/dsh/lib/profile-boot.js +2 -0
- package/node_modules/@deepseek-ai/dsh/package.json +117 -102
- package/node_modules/@deepseek-ai/dsh-acp/package.json +22 -22
- package/node_modules/@deepseek-ai/dsh-acp-app/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-acp-app/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-acp-app/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-acp-app/cordis.patch.yml +3 -0
- package/node_modules/@deepseek-ai/dsh-acp-app/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-agent/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-agent-default-model/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-agent-instructions/package.json +21 -21
- package/node_modules/@deepseek-ai/dsh-agent-loop/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-agent-loop/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-loop/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-loop/lib/index.js +2 -3
- package/node_modules/@deepseek-ai/dsh-agent-loop/package.json +25 -25
- package/node_modules/@deepseek-ai/dsh-agent-presets/package.json +27 -27
- package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/agent.cordis.yml +23 -13
- package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/preset.yml +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/skills/cordis-plugin-development/SKILL.md +73 -385
- package/node_modules/@deepseek-ai/dsh-agent-presets/presets/cordis/skills/editing-cordis-compositions/SKILL.md +9 -72
- package/node_modules/@deepseek-ai/dsh-agent-presets/presets/ptc/agent.cordis.yml +4 -0
- package/node_modules/@deepseek-ai/dsh-agent-presets/presets/standard/agent.cordis.yml +4 -0
- package/node_modules/@deepseek-ai/dsh-agent-tool-presentation/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-anonymous-user-id/package.json +5 -5
- package/node_modules/@deepseek-ai/dsh-api-authorization-controller/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-api-gateway/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-api-gateway/README.md +9 -5
- package/node_modules/@deepseek-ai/dsh-api-gateway/README.zh.md +9 -5
- package/node_modules/@deepseek-ai/dsh-api-gateway/lib/client.js +41 -51
- package/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/index.js +4 -17
- package/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/remote-events.js +33 -38
- package/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/stream-client.js +2 -1
- package/node_modules/@deepseek-ai/dsh-api-gateway/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-api-remotes/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-api-remotes/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-api-remotes/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-api-remotes/lib/client.js +754 -76
- package/node_modules/@deepseek-ai/dsh-api-remotes/lib/index.js +12 -0
- package/node_modules/@deepseek-ai/dsh-api-remotes/lib/types/client/index.js +5 -4
- package/node_modules/@deepseek-ai/dsh-api-remotes/lib/types/remote-events.js +3 -0
- package/node_modules/@deepseek-ai/dsh-api-remotes/package.json +37 -35
- package/node_modules/@deepseek-ai/dsh-api-session-controller/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-api-session-controller/README.md +15 -3
- package/node_modules/@deepseek-ai/dsh-api-session-controller/README.zh.md +15 -3
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/client.js +428 -471
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/index.js +16 -47
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.host.js +11 -32
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.remote-client.js +0 -21
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/agent.js +8 -1
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/index.js +16 -5
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/scope.js +15 -22
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/lineage.js +1 -3
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/manager.js +75 -174
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/projection-store.js +6 -14
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/service.js +259 -244
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/client/sessions/session.js +29 -33
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/commands.js +10 -4
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/control.js +1 -41
- package/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-api-session-controller/package.json +66 -66
- package/node_modules/@deepseek-ai/dsh-api-settings-controller/package.json +13 -13
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/README.md +14 -5
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/README.zh.md +14 -5
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/client.js +249 -19
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/index.js +258 -50
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/typert.host.js +67 -11
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/typert.remote-client.js +54 -9
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/bindings.js +71 -0
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/index.js +83 -8
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/model.js +20 -7
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/client/retention.js +77 -0
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/index.js +49 -43
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/retention.js +153 -0
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/lib/types/terminal.js +35 -0
- package/node_modules/@deepseek-ai/dsh-api-terminal-controller/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-api-workspace-controller/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/index.js +6 -11
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/typert.host.js +4 -4
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/typert.remote-client.js +4 -4
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/lib/types/index.js +6 -7
- package/node_modules/@deepseek-ai/dsh-api-workspace-files/package.json +11 -10
- package/node_modules/@deepseek-ai/dsh-app-boot/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-app-boot/README.md +18 -8
- package/node_modules/@deepseek-ai/dsh-app-boot/README.zh.md +17 -7
- package/node_modules/@deepseek-ai/dsh-app-boot/lib/index.js +360 -202
- package/node_modules/@deepseek-ai/dsh-app-boot/package.json +9 -17
- package/node_modules/@deepseek-ai/dsh-atomic-write/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-atomic-write/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-atomic-write/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-atomic-write/lib/index.js +8 -3
- package/node_modules/@deepseek-ai/dsh-atomic-write/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-attachment/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-attachment-local/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-authorization/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-base/cordis.patch.yml +12 -5
- package/node_modules/@deepseek-ai/dsh-base/package.json +89 -88
- package/node_modules/@deepseek-ai/dsh-bash-local/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-bash-sandbox/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-brand/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-chunked-list/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-connection/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-connection/README.md +4 -0
- package/node_modules/@deepseek-ai/dsh-client-connection/README.zh.md +4 -0
- package/node_modules/@deepseek-ai/dsh-client-connection/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-connection/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-client-file-upload/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-client-hmr/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-hmr/README.md +11 -11
- package/node_modules/@deepseek-ai/dsh-client-hmr/README.zh.md +11 -11
- package/node_modules/@deepseek-ai/dsh-client-hmr/lib/client.js +10 -59
- package/node_modules/@deepseek-ai/dsh-client-hmr/lib/index.js +15 -7
- package/node_modules/@deepseek-ai/dsh-client-hmr/package.json +5 -5
- package/node_modules/@deepseek-ai/dsh-client-locale/package.json +8 -6
- package/node_modules/@deepseek-ai/dsh-client-modules/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-modules/README.md +14 -4
- package/node_modules/@deepseek-ai/dsh-client-modules/README.zh.md +14 -4
- package/node_modules/@deepseek-ai/dsh-client-modules/lib/client.js +407 -26
- package/node_modules/@deepseek-ai/dsh-client-modules/lib/index.js +62 -10
- package/node_modules/@deepseek-ai/dsh-client-modules/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-client-resources/package.json +4 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/lib/client.js +140 -48
- package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/package.json +15 -12
- package/node_modules/@deepseek-ai/dsh-client-ui-approval/package.json +12 -10
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/lib/client.js +24 -12
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/package.json +9 -7
- package/node_modules/@deepseek-ai/dsh-client-ui-brand-official/package.json +4 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-chat/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-chat/README.md +4 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-chat/README.zh.md +4 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-chat/lib/client.js +49 -34
- package/node_modules/@deepseek-ai/dsh-client-ui-chat/package.json +33 -29
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/lib/client.js +107 -34
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/package.json +14 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/README.md +13 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/README.zh.md +13 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/lib/client.js +520 -384
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/package.json +30 -26
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/README.md +9 -13
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/README.zh.md +9 -13
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/lib/client.js +3 -35
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/README.md +25 -15
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/README.zh.md +25 -15
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/client.js +1364 -160
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/index.js +164 -41
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/package.json +27 -22
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-browse/package.json +7 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/README.md +8 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/README.zh.md +7 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/lib/client.js +3 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-goal/package.json +14 -12
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/lib/client.js +112 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/package.json +11 -8
- package/node_modules/@deepseek-ai/dsh-client-ui-jobs/package.json +8 -6
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/lib/client.js +27 -8
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/package.json +7 -6
- package/node_modules/@deepseek-ai/dsh-client-ui-message-feedback/package.json +15 -13
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/README.md +5 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/README.zh.md +5 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/client.js +152 -33
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/package.json +14 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-open-in-app/package.json +10 -8
- package/node_modules/@deepseek-ai/dsh-client-ui-permission-presets/package.json +14 -12
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/README.md +9 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/README.zh.md +9 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/lib/client.js +564 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/package.json +26 -10
- package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/README.md +129 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/README.zh.md +129 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/lib/client.js +2550 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/lib/index.js +6 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-plugin-manager/package.json +65 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/LICENSE +21 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/README.md +172 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/README.zh.md +172 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Button.module.css +79 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Checkbox.module.css +28 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/ConnectionIndicator.module.css +123 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/DiffBlock.module.css +109 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/DisclosureRow.module.css +84 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/FileTypeIcon.module.css +50 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/HoverCard.module.css +54 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Input.module.css +38 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/JsonTree.module.css +345 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Menu.module.css +261 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Modal.module.css +103 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/OnboardingSurface.module.css +29 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Pill.module.css +27 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/ReadBlock.module.css +111 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/RiskConfirmation.module.css +73 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/SearchBlock.module.css +112 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/StateDot.module.css +73 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Switch.module.css +50 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Tag.module.css +57 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/TerminalBlock.module.css +205 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Toast.module.css +72 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/Tooltip.module.css +42 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/WebBlock.module.css +141 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/index.js +8666 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/CodeBlock.module.css +130 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/JsonBlock.module.css +32 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/MarkdownText.module.css +462 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/BrandWordmark.d.ts +15 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Button.d.ts +18 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Checkbox.d.ts +20 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/CodeFileIcon.d.ts +12 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ConnectionIndicator.d.ts +26 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/DiffBlock.d.ts +52 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/DisclosureRow.d.ts +29 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/FileTypeIcon.d.ts +43 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/FishLogo.d.ts +16 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/FoldToggle.d.ts +20 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/HoverCard.d.ts +24 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Input.d.ts +11 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/JsonTree.d.ts +59 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/LinkIcon.d.ts +49 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Menu.d.ts +90 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Modal.d.ts +36 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/OnboardingSurface.d.ts +11 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Pill.d.ts +13 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ReadBlock.d.ts +47 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ReferenceIcon.d.ts +16 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/RiskConfirmation.d.ts +20 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/SearchBlock.d.ts +72 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/SiteGlyph.d.ts +25 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/StateDot.d.ts +18 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Switch.d.ts +20 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Tag.d.ts +32 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/TerminalBlock.d.ts +66 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Toast.d.ts +32 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/Tooltip.d.ts +34 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/WebBlock.d.ts +61 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/ansi.d.ts +17 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/clipboard.d.ts +9 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/code-file-icon-artwork.d.ts +54 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/code-file-types.d.ts +30 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/darwin-desktop.d.ts +9 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/file-size.d.ts +8 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/head-tail-cap.d.ts +23 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/icons/index.d.ts +200 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/icons/props.d.ts +9 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/index.d.ts +70 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/CodeBlock.d.ts +30 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/JsonBlock.d.ts +8 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/MarkdownDelegate.d.ts +36 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/MarkdownText.d.ts +49 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/cjkFriendlyStrong.d.ts +9 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/file-link.d.ts +13 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/highlight.d.ts +142 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/incremental.d.ts +80 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/katex.d.ts +27 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/mathCompatibility.d.ts +11 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/parse.d.ts +25 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/plain-text.d.ts +22 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/render.d.ts +138 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/markdown/useViewportHighlighting.d.ts +11 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/pointer-grace.d.ts +22 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/rank-by-name.d.ts +22 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/relative-time.d.ts +23 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/use-copy-feedback.d.ts +14 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/useAnchoredMaxHeight.d.ts +11 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/useAnchoredPosition.d.ts +34 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/useDismissOnOutsidePointer.d.ts +11 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/types/user-text.d.ts +37 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/user-text.module.css +43 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/package.json +60 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-reference/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-reference/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-reference/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-reference/lib/client.js +19 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-reference/package.json +13 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-renderer/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-renderer/README.md +4 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-renderer/README.zh.md +4 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-renderer/lib/client.js +463 -57
- package/node_modules/@deepseek-ai/dsh-client-ui-renderer/package.json +3 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-schedule/package.json +10 -8
- package/node_modules/@deepseek-ai/dsh-client-ui-session/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-session/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-session/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-session/lib/client.js +232 -72
- package/node_modules/@deepseek-ai/dsh-client-ui-session/package.json +8 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-settings/package.json +5 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +293 -27
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/package.json +11 -9
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/README.md +4 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/README.zh.md +4 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/lib/client.js +244 -227
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/package.json +8 -6
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/README.md +6 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/README.zh.md +6 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/lib/client.js +52 -10
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/package.json +12 -8
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/README.md +24 -19
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/README.zh.md +23 -18
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/lib/client.js +649 -509
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/package.json +10 -7
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-signin/package.json +7 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-unarchive-sessions/package.json +11 -9
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/README.md +8 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/README.zh.md +8 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +105 -25
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/package.json +11 -7
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/README.md +117 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/README.zh.md +117 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/lib/client.js +821 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/lib/index.js +6 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-browser/package.json +60 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/README.md +39 -6
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/README.zh.md +39 -6
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/lib/client.js +1821 -25130
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/lib/client.pdf.js +32609 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/lib/index.js +26 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-documentpreview/package.json +25 -15
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-files/package.json +11 -9
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/README.md +9 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/README.zh.md +9 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/lib/client.js +4538 -13
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-right/package.json +13 -10
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/README.md +8 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/README.zh.md +8 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/lib/client.js +42 -13423
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/lib/client.terminal.js +13494 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar-terminal/package.json +14 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-skill/package.json +13 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/LICENSE +21 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/README.md +111 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/README.zh.md +111 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/index.js +577 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/types/index.d.ts +951 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/types/renderer.d.ts +263 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/lib/types/store.d.ts +3 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/package.json +37 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/README.md +3 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/README.zh.md +3 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/lib/client.js +212 -16
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/package.json +22 -12
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/index.js +1 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/package.json +10 -8
- package/node_modules/@deepseek-ai/dsh-client-ui-tool/lib/client.js +1 -0
- package/node_modules/@deepseek-ai/dsh-client-ui-tool/package.json +21 -19
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/README.md +5 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/README.zh.md +5 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/lib/client.js +132 -66
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/package.json +15 -13
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/README.md +6 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/README.zh.md +6 -4
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/lib/client.js +71 -74
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/package.json +18 -15
- package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/lib/client.js +12 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/package.json +15 -11
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/README.md +10 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/README.zh.md +10 -2
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +403 -217
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/package.json +18 -15
- package/node_modules/@deepseek-ai/dsh-cmdline/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-compact/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-command-feedback/package.json +11 -11
- package/node_modules/@deepseek-ai/dsh-command-goal/package.json +11 -11
- package/node_modules/@deepseek-ai/dsh-commands/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-compaction/package.json +11 -11
- package/node_modules/@deepseek-ai/dsh-compaction-basic/package.json +22 -22
- package/node_modules/@deepseek-ai/dsh-compaction-image-offload/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-compaction-tool-result-pruner/package.json +13 -13
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/README.md +7 -7
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/README.zh.md +7 -7
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/lib/client.js +736 -219
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/README.md +7 -7
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/README.zh.md +7 -7
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/lib/index.js +5 -5
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/lib/types/index.js +5 -8
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/lib/types/lifecycle.js +2 -2
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-credentials/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-credentials-local/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-deepseek-llm-api-extensions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-deque/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/README.md +220 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/README.zh.md +220 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/index.js +1894 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/invariant.js +361 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/typert.host.js +879 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/typert.remote-client.js +218 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/activity.js +85 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/client.js +3 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/error.js +23 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/index.js +313 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/invariant.js +26 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/journal.js +63 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/lifecycle.js +85 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/mailbox.js +293 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/persisted.js +20 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/projection.js +260 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/roster.js +448 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/session-message.js +23 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/task-board.js +275 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/task-graph.js +62 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/types.js +26 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/lib/types/validation.js +33 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team/package.json +87 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/README.md +107 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/README.zh.md +107 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/cordis.patch.yml +30 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/lib/index.js +1 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-profile/package.json +48 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/README.md +98 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/README.zh.md +98 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/cordis.patch.yml +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/lib/index.js +1 -0
- package/node_modules/@deepseek-ai/dsh-experimental-agent-team-web-profile/package.json +47 -0
- package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/README.md +98 -0
- package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/README.zh.md +98 -0
- package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/lib/client.js +4979 -0
- package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/lib/index.js +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-client-ui-agent-team/package.json +81 -0
- package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/README.md +159 -0
- package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/README.zh.md +159 -0
- package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/lib/index.js +550 -0
- package/node_modules/@deepseek-ai/dsh-experimental-tool-agent-team/package.json +59 -0
- package/node_modules/@deepseek-ai/dsh-file-reference/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-file-reference-local/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-fs/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-fs-local/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-fs-observation-policy/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-fs-sandbox/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-goal/package.json +22 -22
- package/node_modules/@deepseek-ai/dsh-goal-round-driver/package.json +15 -15
- package/node_modules/@deepseek-ai/dsh-headless/cordis.patch.yml +3 -0
- package/node_modules/@deepseek-ai/dsh-headless/package.json +17 -17
- package/node_modules/@deepseek-ai/dsh-hmr/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-hmr/README.md +95 -0
- package/node_modules/@deepseek-ai/dsh-hmr/README.zh.md +95 -0
- package/node_modules/@deepseek-ai/dsh-hmr/lib/index.js +672 -0
- package/node_modules/@deepseek-ai/{cordis-plugin-hmr → dsh-hmr}/package.json +18 -21
- package/node_modules/@deepseek-ai/dsh-home-paths/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-hook-protocol/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-hooks-claude-code/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-hooks-codex/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-host-directory-picker/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-auto/package.json +13 -13
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-browse/package.json +2 -2
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-native/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-host-frontend-static/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-host-open-in-app/package.json +5 -5
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/index.js +40 -24
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/typert.host.js +2 -1
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/typert.remote-client.js +2 -1
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/lib/types/index.js +36 -24
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-host-webserver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-http-proxy/package.json +2 -2
- package/node_modules/@deepseek-ai/dsh-invariants/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-jobs/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-jobs-local/package.json +11 -11
- package/node_modules/@deepseek-ai/dsh-launch-environment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-lazy-require/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-llm/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-llm/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-llm/lib/index.js +2 -1
- package/node_modules/@deepseek-ai/dsh-llm/lib/typert.host.js +3 -2
- package/node_modules/@deepseek-ai/dsh-llm/lib/typert.remote-client.js +2 -1
- package/node_modules/@deepseek-ai/dsh-llm/lib/types/index.js +1 -0
- package/node_modules/@deepseek-ai/dsh-llm/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/README.md +4 -4
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/README.zh.md +4 -4
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/lib/index.js +33 -37
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/package.json +37 -37
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/README.md +3 -2
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/README.zh.md +3 -2
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/lib/index.js +47 -3
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/package.json +21 -21
- package/node_modules/@deepseek-ai/dsh-llm-retry/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-mcp-client/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-mcp-resources/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-message-feedback/package.json +14 -14
- package/node_modules/@deepseek-ai/dsh-native-command/package.json +2 -2
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/README.md +105 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/README.zh.md +105 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/index.js +659 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/typert.host.js +193 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/typert.remote-client.js +94 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/errors.js +15 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/identity.js +23 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/index.js +287 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/output.js +47 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/queue.js +246 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/lib/types/types.js +2 -0
- package/node_modules/@deepseek-ai/dsh-office-to-pdf/package.json +64 -0
- package/node_modules/@deepseek-ai/dsh-output-retention/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-package-manifest/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-permission-presets/package.json +21 -21
- package/node_modules/@deepseek-ai/dsh-persona/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-plan-mode/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-plan-mode/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-plan-mode/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-plan-mode/lib/index.js +2 -1
- package/node_modules/@deepseek-ai/dsh-plan-mode/lib/types/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-plan-mode/package.json +22 -22
- package/node_modules/@deepseek-ai/dsh-plugin-manager/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/README.md +133 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/README.zh.md +133 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/index.js +1174 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/typert.host.js +604 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/typert.remote-client.js +393 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/build-approval.js +56 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/failure.js +8 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/index.js +623 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/install-failure.js +33 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/install-spec.js +73 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/operations.js +177 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/patch.js +50 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/tools.js +74 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/lib/types/types.js +2 -0
- package/node_modules/@deepseek-ai/dsh-plugin-manager/package.json +102 -0
- package/node_modules/@deepseek-ai/dsh-plugin-package-inventory-deepseek/package.json +13 -13
- package/node_modules/@deepseek-ai/dsh-ptc-runtime/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/lib/index.js +1 -1
- package/node_modules/@deepseek-ai/dsh-ptc-runtime-node/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-pwsh-local/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-pwsh-sandbox/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-repeat-tool-reminder/lib/index.js +2 -1
- package/node_modules/@deepseek-ai/dsh-repeat-tool-reminder/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-sandbox/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-sandbox/README.md +2 -2
- package/node_modules/@deepseek-ai/dsh-sandbox/README.zh.md +2 -2
- package/node_modules/@deepseek-ai/dsh-sandbox/lib/index.js +6 -9
- package/node_modules/@deepseek-ai/dsh-sandbox/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-sandbox-local/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-sandbox-policy/package.json +13 -13
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-schedule/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-scope/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-sdk-app/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-sdk-app/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-sdk-app/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-sdk-app/cordis.patch.yml +3 -0
- package/node_modules/@deepseek-ai/dsh-sdk-app/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-sdk-jsonrpc-server/package.json +21 -21
- package/node_modules/@deepseek-ai/dsh-sdk-minimal/package.json +28 -28
- package/node_modules/@deepseek-ai/dsh-sdk-protocol/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-session/lib/index.js +2 -1
- package/node_modules/@deepseek-ai/dsh-session/lib/types/known-event-types.js +1 -0
- package/node_modules/@deepseek-ai/dsh-session/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-session-checkpoint-policy/package.json +15 -15
- package/node_modules/@deepseek-ai/dsh-session-format/package.json +2 -2
- package/node_modules/@deepseek-ai/dsh-session-format-catalog/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-session-format-v0-to-v1/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-session-format-v1-to-v2/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-session-format-v2-to-v3/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-session-log-deepseek/package.json +14 -14
- package/node_modules/@deepseek-ai/dsh-session-log-export/package.json +19 -17
- package/node_modules/@deepseek-ai/dsh-session-persistence/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/lib/worker.cjs +7 -4
- package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-session-projection/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-session-projection-cache/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-session-query/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-session-query-sqlite/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-session-reference/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-session-reference/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-session-reference/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-session-reference/lib/index.js +20 -16
- package/node_modules/@deepseek-ai/dsh-session-reference/lib/typert.host.js +4 -3
- package/node_modules/@deepseek-ai/dsh-session-reference/lib/typert.remote-client.js +2 -1
- package/node_modules/@deepseek-ai/dsh-session-reference/lib/types/index.js +30 -23
- package/node_modules/@deepseek-ai/dsh-session-reference/package.json +34 -32
- package/node_modules/@deepseek-ai/dsh-session-stats/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-session-telemetry/package.json +5 -5
- package/node_modules/@deepseek-ai/dsh-session-telemetry-otel/package.json +19 -19
- package/node_modules/@deepseek-ai/dsh-session-title/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-session-title-first-prompt-llm/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-session-title-llm/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-session-turn-outline/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-settings/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-settings-file/package.json +8 -8
- package/node_modules/@deepseek-ai/dsh-shell/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-shell-env/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-skill/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-skill-badge/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-skill-filesystem/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-spill/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-spill-local/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-spill-policy/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-storage/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage-domain/package.json +5 -5
- package/node_modules/@deepseek-ai/dsh-storage-json/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-subagent/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-subagent/README.md +12 -0
- package/node_modules/@deepseek-ai/dsh-subagent/README.zh.md +12 -0
- package/node_modules/@deepseek-ai/dsh-subagent/lib/index.js +116 -50
- package/node_modules/@deepseek-ai/dsh-subagent/lib/typert.host.js +11 -4
- package/node_modules/@deepseek-ai/dsh-subagent/lib/typert.remote-client.js +3 -3
- package/node_modules/@deepseek-ai/dsh-subagent/lib/types/continuation-activation.js +41 -4
- package/node_modules/@deepseek-ai/dsh-subagent/lib/types/continuation.js +2 -2
- package/node_modules/@deepseek-ai/dsh-subagent/lib/types/control.js +1 -0
- package/node_modules/@deepseek-ai/dsh-subagent/lib/types/index.js +29 -3
- package/node_modules/@deepseek-ai/dsh-subagent/package.json +54 -48
- package/node_modules/@deepseek-ai/dsh-subagent-acp/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-subagent-fork-in-process/package.json +14 -14
- package/node_modules/@deepseek-ai/dsh-subagent-in-process-driver/package.json +22 -22
- package/node_modules/@deepseek-ai/dsh-subagent-spawn-in-process/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-subprocess/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-subprocess/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-subprocess/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-subprocess/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-subprocess-local/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-subprocess-local/README.md +7 -0
- package/node_modules/@deepseek-ai/dsh-subprocess-local/README.zh.md +7 -0
- package/node_modules/@deepseek-ai/dsh-subprocess-local/lib/index.js +267 -20
- package/node_modules/@deepseek-ai/dsh-subprocess-local/lib/runner-launch-DGV26RBf.js +1525 -0
- package/node_modules/@deepseek-ai/dsh-subprocess-local/lib/runner.js +1 -1
- package/node_modules/@deepseek-ai/dsh-subprocess-local/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-system-prompt/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-terminal/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-terminal-bash/package.json +17 -17
- package/node_modules/@deepseek-ai/dsh-time-context/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-timeout/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tmux-context/lib/index.js +2 -1
- package/node_modules/@deepseek-ai/dsh-tmux-context/package.json +11 -11
- package/node_modules/@deepseek-ai/dsh-token-meter/package.json +14 -14
- package/node_modules/@deepseek-ai/dsh-tool-ask-user/package.json +9 -9
- package/node_modules/@deepseek-ai/dsh-tool-bash/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-bash/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-bash/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-bash/package.json +29 -29
- package/node_modules/@deepseek-ai/dsh-tool-bash-persistent/package.json +17 -17
- package/node_modules/@deepseek-ai/dsh-tool-call-timeout-policy/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-tool-cordis/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-cordis/README.md +11 -131
- package/node_modules/@deepseek-ai/dsh-tool-cordis/README.zh.md +15 -135
- package/node_modules/@deepseek-ai/dsh-tool-cordis/lib/index.js +688 -743
- package/node_modules/@deepseek-ai/dsh-tool-cordis/package.json +10 -16
- package/node_modules/@deepseek-ai/dsh-tool-fs/lib/index.js +10 -6
- package/node_modules/@deepseek-ai/dsh-tool-fs/package.json +27 -27
- package/node_modules/@deepseek-ai/dsh-tool-fs-search/package.json +20 -20
- package/node_modules/@deepseek-ai/dsh-tool-goal/package.json +16 -16
- package/node_modules/@deepseek-ai/dsh-tool-jobs/package.json +15 -15
- package/node_modules/@deepseek-ai/dsh-tool-present/README.i18n.yaml +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-present/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-tool-pwsh/package.json +28 -28
- package/node_modules/@deepseek-ai/dsh-tool-pwsh-persistent/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-tool-ralph/package.json +19 -19
- package/node_modules/@deepseek-ai/dsh-tool-skill/package.json +12 -12
- package/node_modules/@deepseek-ai/dsh-tool-str-replace-editor/package.json +17 -17
- package/node_modules/@deepseek-ai/dsh-tool-subagent/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-subagent/README.md +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-subagent/README.zh.md +2 -2
- package/node_modules/@deepseek-ai/dsh-tool-subagent/lib/index.js +3 -3
- package/node_modules/@deepseek-ai/dsh-tool-subagent/package.json +28 -28
- package/node_modules/@deepseek-ai/dsh-tool-subagent-control/package.json +19 -19
- package/node_modules/@deepseek-ai/dsh-tool-todo/package.json +15 -15
- package/node_modules/@deepseek-ai/dsh-tool-web/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-tool-workflow/package.json +18 -18
- package/node_modules/@deepseek-ai/dsh-tools/package.json +24 -24
- package/node_modules/@deepseek-ai/dsh-tui-app/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-tui-app/README.md +5 -4
- package/node_modules/@deepseek-ai/dsh-tui-app/README.zh.md +5 -4
- package/node_modules/@deepseek-ai/dsh-tui-app/cordis.patch.yml +9 -0
- package/node_modules/@deepseek-ai/dsh-tui-app/lib/index.js +298 -13
- package/node_modules/@deepseek-ai/dsh-tui-app/package.json +68 -62
- package/node_modules/@deepseek-ai/dsh-typert-loader/package.json +4 -4
- package/node_modules/@deepseek-ai/dsh-typert-protocol/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-typert-protocol/README.md +3 -1
- package/node_modules/@deepseek-ai/dsh-typert-protocol/README.zh.md +3 -1
- package/node_modules/@deepseek-ai/dsh-typert-protocol/lib/index.js +32 -1
- package/node_modules/@deepseek-ai/dsh-typert-protocol/lib/types/index.js +1 -0
- package/node_modules/@deepseek-ai/dsh-typert-protocol/lib/types/owned-value.js +32 -0
- package/node_modules/@deepseek-ai/dsh-typert-protocol/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-registry/package.json +2 -2
- package/node_modules/@deepseek-ai/dsh-user-approval/package.json +15 -15
- package/node_modules/@deepseek-ai/dsh-user-questions/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-user-questions/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-user-questions/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-user-questions/lib/index.js +2 -1
- package/node_modules/@deepseek-ai/dsh-user-questions/lib/types/plan-review.js +5 -1
- package/node_modules/@deepseek-ai/dsh-user-questions/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-util-crypto/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-util-time/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-util-values/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-util-values/README.md +6 -3
- package/node_modules/@deepseek-ai/dsh-util-values/README.zh.md +6 -3
- package/node_modules/@deepseek-ai/dsh-util-values/lib/index.js +62 -1
- package/node_modules/@deepseek-ai/dsh-util-values/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-util-workspace-path/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web/package.json +3 -3
- package/node_modules/@deepseek-ai/dsh-web-app/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-web-app/README.md +1 -1
- package/node_modules/@deepseek-ai/dsh-web-app/README.zh.md +1 -1
- package/node_modules/@deepseek-ai/dsh-web-app/cordis.patch.yml +35 -12
- package/node_modules/@deepseek-ai/dsh-web-app/package.json +98 -86
- package/node_modules/@deepseek-ai/dsh-web-fetch-http/package.json +7 -7
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-8VXBH-f-.js +127 -0
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-lP1BfJ4l.css +1 -0
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/index.html +2 -2
- package/node_modules/@deepseek-ai/dsh-web-frontend/package.json +9 -6
- package/node_modules/@deepseek-ai/dsh-web-search-deepseek/package.json +15 -15
- package/node_modules/@deepseek-ai/dsh-web-search-exa/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-web-search-perplexity/package.json +6 -6
- package/node_modules/@deepseek-ai/dsh-webhook/package.json +21 -21
- package/node_modules/@deepseek-ai/dsh-webhook-github/package.json +10 -10
- package/node_modules/@deepseek-ai/dsh-win32-process/README.i18n.yaml +2 -2
- package/node_modules/@deepseek-ai/dsh-win32-process/README.md +2 -0
- package/node_modules/@deepseek-ai/dsh-win32-process/README.zh.md +2 -0
- package/node_modules/@deepseek-ai/dsh-win32-process/lib/index.js +7 -4
- package/node_modules/@deepseek-ai/dsh-win32-process/package.json +2 -2
- package/node_modules/@deepseek-ai/dsh-workflow/package.json +11 -11
- package/node_modules/@deepseek-ai/dsh-workflow-ptc/package.json +33 -33
- package/node_modules/@deepseek-ai/dsh-workspace/package.json +14 -14
- package/node_modules/@deepseek-ai/dsh-workspace-changes/README.i18n.yaml +6 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/README.md +108 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/README.zh.md +108 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/index.js +1106 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/capture.js +107 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/compare.js +56 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/git.js +224 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/index.js +139 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/numstat.js +45 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/paths.js +106 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/recorder.js +333 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/lib/types/types.js +2 -0
- package/node_modules/@deepseek-ai/dsh-workspace-changes/package.json +56 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/LICENSE +373 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/NOTICE +26 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/README.md +73 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/README.zh.md +73 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/lib/index.js +924 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/lib/worker.js +800 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/CHANGELOG.md +115 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/LICENSE +21 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/README.md +558 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/esm/browser.js +2665 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/esm/index.mjs +2679 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/browser.cjs +2688 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/index.cjs +2668 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/node-worker.cjs +32 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/node.cjs +2700 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/lib/worker.cjs +20 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/package.json +127 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/node_modules/fflate/umd/index.js +1 -0
- package/node_modules/@deepseek-ai/libreoffice-kit/package.json +39 -0
- package/node_modules/@sec-ant/readable-stream/LICENSE +21 -0
- package/node_modules/@sec-ant/readable-stream/README.md +230 -0
- package/node_modules/@sec-ant/readable-stream/dist/index/asyncIterator.js +5 -0
- package/node_modules/@sec-ant/readable-stream/dist/index/fromAnyIterable.js +5 -0
- package/node_modules/@sec-ant/readable-stream/dist/index/index.js +8 -0
- package/node_modules/@sec-ant/readable-stream/dist/polyfill/asyncIterator.js +3 -0
- package/node_modules/@sec-ant/readable-stream/dist/polyfill/fromAnyIterable.js +2 -0
- package/node_modules/@sec-ant/readable-stream/dist/polyfill/index.js +4 -0
- package/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.js +89 -0
- package/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.js +34 -0
- package/node_modules/@sec-ant/readable-stream/dist/ponyfill/index.js +6 -0
- package/node_modules/@sec-ant/readable-stream/package.json +73 -0
- package/node_modules/@sindresorhus/merge-streams/index.js +265 -0
- package/node_modules/@sindresorhus/merge-streams/license +9 -0
- package/node_modules/@sindresorhus/merge-streams/package.json +46 -0
- package/node_modules/@sindresorhus/merge-streams/readme.md +53 -0
- package/node_modules/@swc/helpers/LICENSE +201 -0
- package/node_modules/@swc/helpers/_/_apply_decorated_descriptor/package.json +4 -0
- package/node_modules/@swc/helpers/_/_apply_decs_2203_r/package.json +4 -0
- package/node_modules/@swc/helpers/_/_apply_decs_2311/package.json +4 -0
- package/node_modules/@swc/helpers/_/_array_like_to_array/package.json +4 -0
- package/node_modules/@swc/helpers/_/_array_with_holes/package.json +4 -0
- package/node_modules/@swc/helpers/_/_array_without_holes/package.json +4 -0
- package/node_modules/@swc/helpers/_/_assert_this_initialized/package.json +4 -0
- package/node_modules/@swc/helpers/_/_async_generator/package.json +4 -0
- package/node_modules/@swc/helpers/_/_async_generator_delegate/package.json +4 -0
- package/node_modules/@swc/helpers/_/_async_iterator/package.json +4 -0
- package/node_modules/@swc/helpers/_/_async_to_generator/package.json +4 -0
- package/node_modules/@swc/helpers/_/_await_async_generator/package.json +4 -0
- package/node_modules/@swc/helpers/_/_await_value/package.json +4 -0
- package/node_modules/@swc/helpers/_/_call_super/package.json +4 -0
- package/node_modules/@swc/helpers/_/_check_private_redeclaration/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_apply_descriptor_destructure/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_apply_descriptor_get/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_apply_descriptor_set/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_apply_descriptor_update/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_call_check/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_check_private_static_access/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_check_private_static_field_descriptor/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_extract_field_descriptor/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_name_tdz_error/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_destructure/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_get/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_init/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_loose_base/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_loose_key/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_set/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_field_update/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_method_get/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_method_init/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_private_method_set/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_static_private_field_destructure/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_static_private_field_spec_get/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_static_private_field_spec_set/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_static_private_field_update/package.json +4 -0
- package/node_modules/@swc/helpers/_/_class_static_private_method_get/package.json +4 -0
- package/node_modules/@swc/helpers/_/_construct/package.json +4 -0
- package/node_modules/@swc/helpers/_/_create_class/package.json +4 -0
- package/node_modules/@swc/helpers/_/_create_for_of_iterator_helper_loose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_create_super/package.json +4 -0
- package/node_modules/@swc/helpers/_/_decorate/package.json +4 -0
- package/node_modules/@swc/helpers/_/_defaults/package.json +4 -0
- package/node_modules/@swc/helpers/_/_define_enumerable_properties/package.json +4 -0
- package/node_modules/@swc/helpers/_/_define_property/package.json +4 -0
- package/node_modules/@swc/helpers/_/_dispose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_export_star/package.json +4 -0
- package/node_modules/@swc/helpers/_/_extends/package.json +4 -0
- package/node_modules/@swc/helpers/_/_get/package.json +4 -0
- package/node_modules/@swc/helpers/_/_get_prototype_of/package.json +4 -0
- package/node_modules/@swc/helpers/_/_identity/package.json +4 -0
- package/node_modules/@swc/helpers/_/_inherits/package.json +4 -0
- package/node_modules/@swc/helpers/_/_inherits_loose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_initializer_define_property/package.json +4 -0
- package/node_modules/@swc/helpers/_/_initializer_warning_helper/package.json +4 -0
- package/node_modules/@swc/helpers/_/_instanceof/package.json +4 -0
- package/node_modules/@swc/helpers/_/_interop_require_default/package.json +4 -0
- package/node_modules/@swc/helpers/_/_interop_require_wildcard/package.json +4 -0
- package/node_modules/@swc/helpers/_/_is_native_function/package.json +4 -0
- package/node_modules/@swc/helpers/_/_is_native_reflect_construct/package.json +4 -0
- package/node_modules/@swc/helpers/_/_iterable_to_array/package.json +4 -0
- package/node_modules/@swc/helpers/_/_iterable_to_array_limit/package.json +4 -0
- package/node_modules/@swc/helpers/_/_iterable_to_array_limit_loose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_jsx/package.json +4 -0
- package/node_modules/@swc/helpers/_/_new_arrow_check/package.json +4 -0
- package/node_modules/@swc/helpers/_/_non_iterable_rest/package.json +4 -0
- package/node_modules/@swc/helpers/_/_non_iterable_spread/package.json +4 -0
- package/node_modules/@swc/helpers/_/_object_destructuring_empty/package.json +4 -0
- package/node_modules/@swc/helpers/_/_object_spread/package.json +4 -0
- package/node_modules/@swc/helpers/_/_object_spread_props/package.json +4 -0
- package/node_modules/@swc/helpers/_/_object_without_properties/package.json +4 -0
- package/node_modules/@swc/helpers/_/_object_without_properties_loose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_overload_yield/package.json +4 -0
- package/node_modules/@swc/helpers/_/_possible_constructor_return/package.json +4 -0
- package/node_modules/@swc/helpers/_/_read_only_error/package.json +4 -0
- package/node_modules/@swc/helpers/_/_set/package.json +4 -0
- package/node_modules/@swc/helpers/_/_set_prototype_of/package.json +4 -0
- package/node_modules/@swc/helpers/_/_skip_first_generator_next/package.json +4 -0
- package/node_modules/@swc/helpers/_/_sliced_to_array/package.json +4 -0
- package/node_modules/@swc/helpers/_/_sliced_to_array_loose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_super_prop_base/package.json +4 -0
- package/node_modules/@swc/helpers/_/_tagged_template_literal/package.json +4 -0
- package/node_modules/@swc/helpers/_/_tagged_template_literal_loose/package.json +4 -0
- package/node_modules/@swc/helpers/_/_throw/package.json +4 -0
- package/node_modules/@swc/helpers/_/_to_array/package.json +4 -0
- package/node_modules/@swc/helpers/_/_to_consumable_array/package.json +4 -0
- package/node_modules/@swc/helpers/_/_to_primitive/package.json +4 -0
- package/node_modules/@swc/helpers/_/_to_property_key/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_add_disposable_resource/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_decorate/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_dispose_resources/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_generator/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_metadata/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_param/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_rewrite_relative_import_extension/package.json +4 -0
- package/node_modules/@swc/helpers/_/_ts_values/package.json +4 -0
- package/node_modules/@swc/helpers/_/_type_of/package.json +4 -0
- package/node_modules/@swc/helpers/_/_unsupported_iterable_to_array/package.json +4 -0
- package/node_modules/@swc/helpers/_/_update/package.json +4 -0
- package/node_modules/@swc/helpers/_/_using/package.json +4 -0
- package/node_modules/@swc/helpers/_/_using_ctx/package.json +4 -0
- package/node_modules/@swc/helpers/_/_wrap_async_generator/package.json +4 -0
- package/node_modules/@swc/helpers/_/_wrap_native_super/package.json +4 -0
- package/node_modules/@swc/helpers/_/_wrap_reg_exp/package.json +4 -0
- package/node_modules/@swc/helpers/_/_write_only_error/package.json +4 -0
- package/node_modules/@swc/helpers/_/index/package.json +4 -0
- package/node_modules/@swc/helpers/cjs/_apply_decorated_descriptor.cjs +35 -0
- package/node_modules/@swc/helpers/cjs/_apply_decs_2203_r.cjs +574 -0
- package/node_modules/@swc/helpers/cjs/_apply_decs_2311.cjs +346 -0
- package/node_modules/@swc/helpers/cjs/_array_like_to_array.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_array_with_holes.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_array_without_holes.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_assert_this_initialized.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_async_generator.cjs +76 -0
- package/node_modules/@swc/helpers/cjs/_async_generator_delegate.cjs +53 -0
- package/node_modules/@swc/helpers/cjs/_async_iterator.cjs +46 -0
- package/node_modules/@swc/helpers/cjs/_async_to_generator.cjs +33 -0
- package/node_modules/@swc/helpers/cjs/_await_async_generator.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_await_value.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_call_super.cjs +19 -0
- package/node_modules/@swc/helpers/cjs/_check_private_redeclaration.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_destructure.cjs +25 -0
- package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_get.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_set.cjs +15 -0
- package/node_modules/@swc/helpers/cjs/_class_apply_descriptor_update.cjs +30 -0
- package/node_modules/@swc/helpers/cjs/_class_call_check.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_class_check_private_static_access.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_class_check_private_static_field_descriptor.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_class_extract_field_descriptor.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_class_name_tdz_error.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_destructure.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_get.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_init.cjs +9 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_loose_base.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_loose_key.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_set.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_class_private_field_update.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_class_private_method_get.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_class_private_method_init.cjs +9 -0
- package/node_modules/@swc/helpers/cjs/_class_private_method_set.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_class_static_private_field_destructure.cjs +13 -0
- package/node_modules/@swc/helpers/cjs/_class_static_private_field_spec_get.cjs +13 -0
- package/node_modules/@swc/helpers/cjs/_class_static_private_field_spec_set.cjs +14 -0
- package/node_modules/@swc/helpers/cjs/_class_static_private_field_update.cjs +13 -0
- package/node_modules/@swc/helpers/cjs/_class_static_private_method_get.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_construct.cjs +22 -0
- package/node_modules/@swc/helpers/cjs/_create_class.cjs +20 -0
- package/node_modules/@swc/helpers/cjs/_create_for_of_iterator_helper_loose.cjs +24 -0
- package/node_modules/@swc/helpers/cjs/_create_super.cjs +23 -0
- package/node_modules/@swc/helpers/cjs/_decorate.cjs +270 -0
- package/node_modules/@swc/helpers/cjs/_defaults.cjs +15 -0
- package/node_modules/@swc/helpers/cjs/_define_enumerable_properties.cjs +26 -0
- package/node_modules/@swc/helpers/cjs/_define_property.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_dispose.cjs +43 -0
- package/node_modules/@swc/helpers/cjs/_export_star.cjs +17 -0
- package/node_modules/@swc/helpers/cjs/_extends.cjs +15 -0
- package/node_modules/@swc/helpers/cjs/_get.cjs +23 -0
- package/node_modules/@swc/helpers/cjs/_get_prototype_of.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_identity.cjs +7 -0
- package/node_modules/@swc/helpers/cjs/_inherits.cjs +14 -0
- package/node_modules/@swc/helpers/cjs/_inherits_loose.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_initializer_define_property.cjs +13 -0
- package/node_modules/@swc/helpers/cjs/_initializer_warning_helper.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_instanceof.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_interop_require_default.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs +38 -0
- package/node_modules/@swc/helpers/cjs/_is_native_function.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_is_native_reflect_construct.cjs +18 -0
- package/node_modules/@swc/helpers/cjs/_iterable_to_array.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_iterable_to_array_limit.cjs +31 -0
- package/node_modules/@swc/helpers/cjs/_iterable_to_array_limit_loose.cjs +17 -0
- package/node_modules/@swc/helpers/cjs/_jsx.cjs +28 -0
- package/node_modules/@swc/helpers/cjs/_new_arrow_check.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_non_iterable_rest.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_non_iterable_spread.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_object_destructuring_empty.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_object_spread.cjs +25 -0
- package/node_modules/@swc/helpers/cjs/_object_spread_props.cjs +30 -0
- package/node_modules/@swc/helpers/cjs/_object_without_properties.cjs +35 -0
- package/node_modules/@swc/helpers/cjs/_object_without_properties_loose.cjs +16 -0
- package/node_modules/@swc/helpers/cjs/_overload_yield.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_possible_constructor_return.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_read_only_error.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_set.cjs +44 -0
- package/node_modules/@swc/helpers/cjs/_set_prototype_of.cjs +12 -0
- package/node_modules/@swc/helpers/cjs/_skip_first_generator_next.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_sliced_to_array.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_sliced_to_array_loose.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_super_prop_base.cjs +13 -0
- package/node_modules/@swc/helpers/cjs/_tagged_template_literal.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_tagged_template_literal_loose.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_throw.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/_to_array.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_to_consumable_array.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_to_primitive.cjs +18 -0
- package/node_modules/@swc/helpers/cjs/_to_property_key.cjs +11 -0
- package/node_modules/@swc/helpers/cjs/_ts_add_disposable_resource.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_ts_decorate.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_ts_dispose_resources.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_ts_generator.cjs +31 -0
- package/node_modules/@swc/helpers/cjs/_ts_metadata.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_ts_param.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_ts_rewrite_relative_import_extension.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_ts_values.cjs +3 -0
- package/node_modules/@swc/helpers/cjs/_type_of.cjs +8 -0
- package/node_modules/@swc/helpers/cjs/_unsupported_iterable_to_array.cjs +15 -0
- package/node_modules/@swc/helpers/cjs/_update.cjs +16 -0
- package/node_modules/@swc/helpers/cjs/_using.cjs +24 -0
- package/node_modules/@swc/helpers/cjs/_using_ctx.cjs +75 -0
- package/node_modules/@swc/helpers/cjs/_wrap_async_generator.cjs +10 -0
- package/node_modules/@swc/helpers/cjs/_wrap_native_super.cjs +28 -0
- package/node_modules/@swc/helpers/cjs/_wrap_reg_exp.cjs +84 -0
- package/node_modules/@swc/helpers/cjs/_write_only_error.cjs +6 -0
- package/node_modules/@swc/helpers/cjs/index.cjs +439 -0
- package/node_modules/@swc/helpers/esm/_apply_decorated_descriptor.js +33 -0
- package/node_modules/@swc/helpers/esm/_apply_decs_2203_r.js +572 -0
- package/node_modules/@swc/helpers/esm/_apply_decs_2311.js +344 -0
- package/node_modules/@swc/helpers/esm/_array_like_to_array.js +8 -0
- package/node_modules/@swc/helpers/esm/_array_with_holes.js +4 -0
- package/node_modules/@swc/helpers/esm/_array_without_holes.js +6 -0
- package/node_modules/@swc/helpers/esm/_assert_this_initialized.js +6 -0
- package/node_modules/@swc/helpers/esm/_async_generator.js +74 -0
- package/node_modules/@swc/helpers/esm/_async_generator_delegate.js +51 -0
- package/node_modules/@swc/helpers/esm/_async_iterator.js +44 -0
- package/node_modules/@swc/helpers/esm/_async_to_generator.js +31 -0
- package/node_modules/@swc/helpers/esm/_await_async_generator.js +6 -0
- package/node_modules/@swc/helpers/esm/_await_value.js +4 -0
- package/node_modules/@swc/helpers/esm/_call_super.js +17 -0
- package/node_modules/@swc/helpers/esm/_check_private_redeclaration.js +6 -0
- package/node_modules/@swc/helpers/esm/_class_apply_descriptor_destructure.js +23 -0
- package/node_modules/@swc/helpers/esm/_class_apply_descriptor_get.js +6 -0
- package/node_modules/@swc/helpers/esm/_class_apply_descriptor_set.js +13 -0
- package/node_modules/@swc/helpers/esm/_class_apply_descriptor_update.js +28 -0
- package/node_modules/@swc/helpers/esm/_class_call_check.js +4 -0
- package/node_modules/@swc/helpers/esm/_class_check_private_static_access.js +4 -0
- package/node_modules/@swc/helpers/esm/_class_check_private_static_field_descriptor.js +6 -0
- package/node_modules/@swc/helpers/esm/_class_extract_field_descriptor.js +6 -0
- package/node_modules/@swc/helpers/esm/_class_name_tdz_error.js +4 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_destructure.js +8 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_get.js +8 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_init.js +7 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_loose_base.js +8 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_loose_key.js +6 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_set.js +9 -0
- package/node_modules/@swc/helpers/esm/_class_private_field_update.js +8 -0
- package/node_modules/@swc/helpers/esm/_class_private_method_get.js +6 -0
- package/node_modules/@swc/helpers/esm/_class_private_method_init.js +7 -0
- package/node_modules/@swc/helpers/esm/_class_private_method_set.js +4 -0
- package/node_modules/@swc/helpers/esm/_class_static_private_field_destructure.js +11 -0
- package/node_modules/@swc/helpers/esm/_class_static_private_field_spec_get.js +11 -0
- package/node_modules/@swc/helpers/esm/_class_static_private_field_spec_set.js +12 -0
- package/node_modules/@swc/helpers/esm/_class_static_private_field_update.js +11 -0
- package/node_modules/@swc/helpers/esm/_class_static_private_method_get.js +8 -0
- package/node_modules/@swc/helpers/esm/_construct.js +20 -0
- package/node_modules/@swc/helpers/esm/_create_class.js +18 -0
- package/node_modules/@swc/helpers/esm/_create_for_of_iterator_helper_loose.js +22 -0
- package/node_modules/@swc/helpers/esm/_create_super.js +21 -0
- package/node_modules/@swc/helpers/esm/_decorate.js +268 -0
- package/node_modules/@swc/helpers/esm/_defaults.js +13 -0
- package/node_modules/@swc/helpers/esm/_define_enumerable_properties.js +24 -0
- package/node_modules/@swc/helpers/esm/_define_property.js +8 -0
- package/node_modules/@swc/helpers/esm/_dispose.js +41 -0
- package/node_modules/@swc/helpers/esm/_export_star.js +15 -0
- package/node_modules/@swc/helpers/esm/_extends.js +13 -0
- package/node_modules/@swc/helpers/esm/_get.js +21 -0
- package/node_modules/@swc/helpers/esm/_get_prototype_of.js +8 -0
- package/node_modules/@swc/helpers/esm/_identity.js +5 -0
- package/node_modules/@swc/helpers/esm/_inherits.js +12 -0
- package/node_modules/@swc/helpers/esm/_inherits_loose.js +6 -0
- package/node_modules/@swc/helpers/esm/_initializer_define_property.js +11 -0
- package/node_modules/@swc/helpers/esm/_initializer_warning_helper.js +9 -0
- package/node_modules/@swc/helpers/esm/_instanceof.js +8 -0
- package/node_modules/@swc/helpers/esm/_interop_require_default.js +4 -0
- package/node_modules/@swc/helpers/esm/_interop_require_wildcard.js +36 -0
- package/node_modules/@swc/helpers/esm/_is_native_function.js +4 -0
- package/node_modules/@swc/helpers/esm/_is_native_reflect_construct.js +16 -0
- package/node_modules/@swc/helpers/esm/_iterable_to_array.js +6 -0
- package/node_modules/@swc/helpers/esm/_iterable_to_array_limit.js +29 -0
- package/node_modules/@swc/helpers/esm/_iterable_to_array_limit_loose.js +15 -0
- package/node_modules/@swc/helpers/esm/_jsx.js +26 -0
- package/node_modules/@swc/helpers/esm/_new_arrow_check.js +4 -0
- package/node_modules/@swc/helpers/esm/_non_iterable_rest.js +4 -0
- package/node_modules/@swc/helpers/esm/_non_iterable_spread.js +4 -0
- package/node_modules/@swc/helpers/esm/_object_destructuring_empty.js +6 -0
- package/node_modules/@swc/helpers/esm/_object_spread.js +23 -0
- package/node_modules/@swc/helpers/esm/_object_spread_props.js +28 -0
- package/node_modules/@swc/helpers/esm/_object_without_properties.js +33 -0
- package/node_modules/@swc/helpers/esm/_object_without_properties_loose.js +14 -0
- package/node_modules/@swc/helpers/esm/_overload_yield.js +6 -0
- package/node_modules/@swc/helpers/esm/_possible_constructor_return.js +9 -0
- package/node_modules/@swc/helpers/esm/_read_only_error.js +4 -0
- package/node_modules/@swc/helpers/esm/_set.js +42 -0
- package/node_modules/@swc/helpers/esm/_set_prototype_of.js +10 -0
- package/node_modules/@swc/helpers/esm/_skip_first_generator_next.js +9 -0
- package/node_modules/@swc/helpers/esm/_sliced_to_array.js +9 -0
- package/node_modules/@swc/helpers/esm/_sliced_to_array_loose.js +9 -0
- package/node_modules/@swc/helpers/esm/_super_prop_base.js +11 -0
- package/node_modules/@swc/helpers/esm/_tagged_template_literal.js +6 -0
- package/node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js +8 -0
- package/node_modules/@swc/helpers/esm/_throw.js +4 -0
- package/node_modules/@swc/helpers/esm/_to_array.js +9 -0
- package/node_modules/@swc/helpers/esm/_to_consumable_array.js +9 -0
- package/node_modules/@swc/helpers/esm/_to_primitive.js +16 -0
- package/node_modules/@swc/helpers/esm/_to_property_key.js +9 -0
- package/node_modules/@swc/helpers/esm/_ts_add_disposable_resource.js +1 -0
- package/node_modules/@swc/helpers/esm/_ts_decorate.js +1 -0
- package/node_modules/@swc/helpers/esm/_ts_dispose_resources.js +1 -0
- package/node_modules/@swc/helpers/esm/_ts_generator.js +29 -0
- package/node_modules/@swc/helpers/esm/_ts_metadata.js +1 -0
- package/node_modules/@swc/helpers/esm/_ts_param.js +1 -0
- package/node_modules/@swc/helpers/esm/_ts_rewrite_relative_import_extension.js +1 -0
- package/node_modules/@swc/helpers/esm/_ts_values.js +1 -0
- package/node_modules/@swc/helpers/esm/_type_of.js +6 -0
- package/node_modules/@swc/helpers/esm/_unsupported_iterable_to_array.js +13 -0
- package/node_modules/@swc/helpers/esm/_update.js +14 -0
- package/node_modules/@swc/helpers/esm/_using.js +22 -0
- package/node_modules/@swc/helpers/esm/_using_ctx.js +73 -0
- package/node_modules/@swc/helpers/esm/_wrap_async_generator.js +8 -0
- package/node_modules/@swc/helpers/esm/_wrap_native_super.js +26 -0
- package/node_modules/@swc/helpers/esm/_wrap_reg_exp.js +82 -0
- package/node_modules/@swc/helpers/esm/_write_only_error.js +4 -0
- package/node_modules/@swc/helpers/esm/index.js +110 -0
- package/node_modules/@swc/helpers/package.json +702 -0
- package/node_modules/@swc/helpers/scripts/ast_grep.js +218 -0
- package/node_modules/@swc/helpers/scripts/build.js +133 -0
- package/node_modules/@swc/helpers/scripts/errors.js +1 -0
- package/node_modules/@swc/helpers/scripts/utils.js +3 -0
- package/node_modules/@swc/helpers/src/_apply_decorated_descriptor.mjs +1 -0
- package/node_modules/@swc/helpers/src/_apply_decs_2203_r.mjs +1 -0
- package/node_modules/@swc/helpers/src/_apply_decs_2311.mjs +1 -0
- package/node_modules/@swc/helpers/src/_array_like_to_array.mjs +1 -0
- package/node_modules/@swc/helpers/src/_array_with_holes.mjs +1 -0
- package/node_modules/@swc/helpers/src/_array_without_holes.mjs +1 -0
- package/node_modules/@swc/helpers/src/_assert_this_initialized.mjs +1 -0
- package/node_modules/@swc/helpers/src/_async_generator.mjs +1 -0
- package/node_modules/@swc/helpers/src/_async_generator_delegate.mjs +1 -0
- package/node_modules/@swc/helpers/src/_async_iterator.mjs +1 -0
- package/node_modules/@swc/helpers/src/_async_to_generator.mjs +1 -0
- package/node_modules/@swc/helpers/src/_await_async_generator.mjs +1 -0
- package/node_modules/@swc/helpers/src/_await_value.mjs +1 -0
- package/node_modules/@swc/helpers/src/_call_super.mjs +1 -0
- package/node_modules/@swc/helpers/src/_check_private_redeclaration.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_apply_descriptor_destructure.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_apply_descriptor_get.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_apply_descriptor_set.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_apply_descriptor_update.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_call_check.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_check_private_static_access.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_check_private_static_field_descriptor.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_extract_field_descriptor.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_name_tdz_error.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_destructure.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_get.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_init.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_loose_base.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_loose_key.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_set.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_field_update.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_method_get.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_method_init.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_private_method_set.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_static_private_field_destructure.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_static_private_field_spec_get.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_static_private_field_spec_set.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_static_private_field_update.mjs +1 -0
- package/node_modules/@swc/helpers/src/_class_static_private_method_get.mjs +1 -0
- package/node_modules/@swc/helpers/src/_construct.mjs +1 -0
- package/node_modules/@swc/helpers/src/_create_class.mjs +1 -0
- package/node_modules/@swc/helpers/src/_create_for_of_iterator_helper_loose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_create_super.mjs +1 -0
- package/node_modules/@swc/helpers/src/_decorate.mjs +1 -0
- package/node_modules/@swc/helpers/src/_defaults.mjs +1 -0
- package/node_modules/@swc/helpers/src/_define_enumerable_properties.mjs +1 -0
- package/node_modules/@swc/helpers/src/_define_property.mjs +1 -0
- package/node_modules/@swc/helpers/src/_dispose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_export_star.mjs +1 -0
- package/node_modules/@swc/helpers/src/_extends.mjs +1 -0
- package/node_modules/@swc/helpers/src/_get.mjs +1 -0
- package/node_modules/@swc/helpers/src/_get_prototype_of.mjs +1 -0
- package/node_modules/@swc/helpers/src/_identity.mjs +1 -0
- package/node_modules/@swc/helpers/src/_inherits.mjs +1 -0
- package/node_modules/@swc/helpers/src/_inherits_loose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_initializer_define_property.mjs +1 -0
- package/node_modules/@swc/helpers/src/_initializer_warning_helper.mjs +1 -0
- package/node_modules/@swc/helpers/src/_instanceof.mjs +1 -0
- package/node_modules/@swc/helpers/src/_interop_require_default.mjs +1 -0
- package/node_modules/@swc/helpers/src/_interop_require_wildcard.mjs +1 -0
- package/node_modules/@swc/helpers/src/_is_native_function.mjs +1 -0
- package/node_modules/@swc/helpers/src/_is_native_reflect_construct.mjs +1 -0
- package/node_modules/@swc/helpers/src/_iterable_to_array.mjs +1 -0
- package/node_modules/@swc/helpers/src/_iterable_to_array_limit.mjs +1 -0
- package/node_modules/@swc/helpers/src/_iterable_to_array_limit_loose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_jsx.mjs +1 -0
- package/node_modules/@swc/helpers/src/_new_arrow_check.mjs +1 -0
- package/node_modules/@swc/helpers/src/_non_iterable_rest.mjs +1 -0
- package/node_modules/@swc/helpers/src/_non_iterable_spread.mjs +1 -0
- package/node_modules/@swc/helpers/src/_object_destructuring_empty.mjs +1 -0
- package/node_modules/@swc/helpers/src/_object_spread.mjs +1 -0
- package/node_modules/@swc/helpers/src/_object_spread_props.mjs +1 -0
- package/node_modules/@swc/helpers/src/_object_without_properties.mjs +1 -0
- package/node_modules/@swc/helpers/src/_object_without_properties_loose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_overload_yield.mjs +1 -0
- package/node_modules/@swc/helpers/src/_possible_constructor_return.mjs +1 -0
- package/node_modules/@swc/helpers/src/_read_only_error.mjs +1 -0
- package/node_modules/@swc/helpers/src/_set.mjs +1 -0
- package/node_modules/@swc/helpers/src/_set_prototype_of.mjs +1 -0
- package/node_modules/@swc/helpers/src/_skip_first_generator_next.mjs +1 -0
- package/node_modules/@swc/helpers/src/_sliced_to_array.mjs +1 -0
- package/node_modules/@swc/helpers/src/_sliced_to_array_loose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_super_prop_base.mjs +1 -0
- package/node_modules/@swc/helpers/src/_tagged_template_literal.mjs +1 -0
- package/node_modules/@swc/helpers/src/_tagged_template_literal_loose.mjs +1 -0
- package/node_modules/@swc/helpers/src/_throw.mjs +1 -0
- package/node_modules/@swc/helpers/src/_to_array.mjs +1 -0
- package/node_modules/@swc/helpers/src/_to_consumable_array.mjs +1 -0
- package/node_modules/@swc/helpers/src/_to_primitive.mjs +1 -0
- package/node_modules/@swc/helpers/src/_to_property_key.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_add_disposable_resource.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_decorate.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_dispose_resources.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_generator.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_metadata.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_param.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_rewrite_relative_import_extension.mjs +1 -0
- package/node_modules/@swc/helpers/src/_ts_values.mjs +1 -0
- package/node_modules/@swc/helpers/src/_type_of.mjs +1 -0
- package/node_modules/@swc/helpers/src/_unsupported_iterable_to_array.mjs +1 -0
- package/node_modules/@swc/helpers/src/_update.mjs +1 -0
- package/node_modules/@swc/helpers/src/_using.mjs +1 -0
- package/node_modules/@swc/helpers/src/_using_ctx.mjs +1 -0
- package/node_modules/@swc/helpers/src/_wrap_async_generator.mjs +1 -0
- package/node_modules/@swc/helpers/src/_wrap_native_super.mjs +1 -0
- package/node_modules/@swc/helpers/src/_wrap_reg_exp.mjs +1 -0
- package/node_modules/@swc/helpers/src/_write_only_error.mjs +1 -0
- package/node_modules/@swc/helpers/src/index.mjs +1 -0
- package/node_modules/brotli/build/encode.js +57 -0
- package/node_modules/brotli/build/mem.js +1 -0
- package/node_modules/brotli/compress.js +43 -0
- package/node_modules/brotli/dec/bit_reader.js +124 -0
- package/node_modules/brotli/dec/context.js +250 -0
- package/node_modules/brotli/dec/decode.js +938 -0
- package/node_modules/brotli/dec/dictionary-browser.js +14 -0
- package/node_modules/brotli/dec/dictionary-data.js +9469 -0
- package/node_modules/brotli/dec/dictionary.bin.js +1 -0
- package/node_modules/brotli/dec/dictionary.js +36 -0
- package/node_modules/brotli/dec/huffman.js +123 -0
- package/node_modules/brotli/dec/prefix.js +60 -0
- package/node_modules/brotli/dec/streams.js +34 -0
- package/node_modules/brotli/dec/transform.js +247 -0
- package/node_modules/brotli/decompress.js +1 -0
- package/node_modules/brotli/enc/pre.js +7 -0
- package/node_modules/brotli/index.js +2 -0
- package/node_modules/brotli/package.json +31 -0
- package/node_modules/brotli/readme.md +61 -0
- package/node_modules/clone/.npmignore +4 -0
- package/node_modules/clone/LICENSE +18 -0
- package/node_modules/clone/README.md +194 -0
- package/node_modules/clone/clone.iml +10 -0
- package/node_modules/clone/clone.js +257 -0
- package/node_modules/clone/package.json +53 -0
- package/node_modules/dfa/README.md +83 -0
- package/node_modules/dfa/compile.js +1834 -0
- package/node_modules/dfa/index.js +91 -0
- package/node_modules/dfa/package.json +38 -0
- package/node_modules/execa/index.js +25 -0
- package/node_modules/execa/lib/arguments/command-file.js +201 -0
- package/node_modules/execa/lib/arguments/command.js +20 -0
- package/node_modules/execa/lib/arguments/cwd.js +39 -0
- package/node_modules/execa/lib/arguments/encoding-option.js +50 -0
- package/node_modules/execa/lib/arguments/escape.js +88 -0
- package/node_modules/execa/lib/arguments/fd-options.js +109 -0
- package/node_modules/execa/lib/arguments/file-url.js +25 -0
- package/node_modules/execa/lib/arguments/options.js +105 -0
- package/node_modules/execa/lib/arguments/shell.js +11 -0
- package/node_modules/execa/lib/arguments/specific.js +112 -0
- package/node_modules/execa/lib/convert/add.js +19 -0
- package/node_modules/execa/lib/convert/concurrent.js +33 -0
- package/node_modules/execa/lib/convert/duplex.js +69 -0
- package/node_modules/execa/lib/convert/iterable.js +34 -0
- package/node_modules/execa/lib/convert/readable.js +129 -0
- package/node_modules/execa/lib/convert/shared.js +46 -0
- package/node_modules/execa/lib/convert/web.js +7 -0
- package/node_modules/execa/lib/convert/writable.js +111 -0
- package/node_modules/execa/lib/io/contents.js +116 -0
- package/node_modules/execa/lib/io/input-sync.js +44 -0
- package/node_modules/execa/lib/io/iterate.js +110 -0
- package/node_modules/execa/lib/io/max-buffer.js +89 -0
- package/node_modules/execa/lib/io/output-async.js +82 -0
- package/node_modules/execa/lib/io/output-sync.js +136 -0
- package/node_modules/execa/lib/io/pipeline.js +48 -0
- package/node_modules/execa/lib/io/strip-newline.js +12 -0
- package/node_modules/execa/lib/ipc/array.js +4 -0
- package/node_modules/execa/lib/ipc/buffer-messages.js +47 -0
- package/node_modules/execa/lib/ipc/forward.js +56 -0
- package/node_modules/execa/lib/ipc/get-each.js +113 -0
- package/node_modules/execa/lib/ipc/get-one.js +92 -0
- package/node_modules/execa/lib/ipc/graceful.js +72 -0
- package/node_modules/execa/lib/ipc/incoming.js +79 -0
- package/node_modules/execa/lib/ipc/ipc-input.js +50 -0
- package/node_modules/execa/lib/ipc/methods.js +50 -0
- package/node_modules/execa/lib/ipc/outgoing.js +53 -0
- package/node_modules/execa/lib/ipc/reference.js +48 -0
- package/node_modules/execa/lib/ipc/send.js +91 -0
- package/node_modules/execa/lib/ipc/strict.js +113 -0
- package/node_modules/execa/lib/ipc/validation.js +111 -0
- package/node_modules/execa/lib/methods/bind.js +23 -0
- package/node_modules/execa/lib/methods/command.js +27 -0
- package/node_modules/execa/lib/methods/create.js +63 -0
- package/node_modules/execa/lib/methods/main-async.js +235 -0
- package/node_modules/execa/lib/methods/main-sync.js +167 -0
- package/node_modules/execa/lib/methods/node.js +63 -0
- package/node_modules/execa/lib/methods/parameters.js +32 -0
- package/node_modules/execa/lib/methods/promise.js +2 -0
- package/node_modules/execa/lib/methods/script.js +22 -0
- package/node_modules/execa/lib/methods/template.js +153 -0
- package/node_modules/execa/lib/pipe/abort.js +20 -0
- package/node_modules/execa/lib/pipe/pipe-arguments.js +91 -0
- package/node_modules/execa/lib/pipe/sequence.js +24 -0
- package/node_modules/execa/lib/pipe/setup.js +230 -0
- package/node_modules/execa/lib/pipe/streaming.js +51 -0
- package/node_modules/execa/lib/pipe/throw.js +58 -0
- package/node_modules/execa/lib/resolve/all-async.js +46 -0
- package/node_modules/execa/lib/resolve/all-sync.js +33 -0
- package/node_modules/execa/lib/resolve/exit-async.js +54 -0
- package/node_modules/execa/lib/resolve/exit-sync.js +25 -0
- package/node_modules/execa/lib/resolve/stdio.js +47 -0
- package/node_modules/execa/lib/resolve/wait-stream.js +97 -0
- package/node_modules/execa/lib/resolve/wait-subprocess.js +150 -0
- package/node_modules/execa/lib/return/duration.js +8 -0
- package/node_modules/execa/lib/return/early-error.js +77 -0
- package/node_modules/execa/lib/return/final-error.js +44 -0
- package/node_modules/execa/lib/return/message.js +157 -0
- package/node_modules/execa/lib/return/reject.js +13 -0
- package/node_modules/execa/lib/return/result.js +186 -0
- package/node_modules/execa/lib/stdio/direction.js +89 -0
- package/node_modules/execa/lib/stdio/duplicate.js +119 -0
- package/node_modules/execa/lib/stdio/handle-async.js +52 -0
- package/node_modules/execa/lib/stdio/handle-sync.js +68 -0
- package/node_modules/execa/lib/stdio/handle.js +243 -0
- package/node_modules/execa/lib/stdio/input-option.js +54 -0
- package/node_modules/execa/lib/stdio/native.js +106 -0
- package/node_modules/execa/lib/stdio/stdio-option.js +95 -0
- package/node_modules/execa/lib/stdio/type.js +181 -0
- package/node_modules/execa/lib/terminate/cancel.js +20 -0
- package/node_modules/execa/lib/terminate/cleanup.js +16 -0
- package/node_modules/execa/lib/terminate/graceful.js +73 -0
- package/node_modules/execa/lib/terminate/kill-descendants.js +79 -0
- package/node_modules/execa/lib/terminate/kill.js +93 -0
- package/node_modules/execa/lib/terminate/signal.js +70 -0
- package/node_modules/execa/lib/terminate/timeout.js +21 -0
- package/node_modules/execa/lib/transform/encoding-transform.js +51 -0
- package/node_modules/execa/lib/transform/generator.js +107 -0
- package/node_modules/execa/lib/transform/normalize.js +106 -0
- package/node_modules/execa/lib/transform/object-mode.js +41 -0
- package/node_modules/execa/lib/transform/run-async.js +60 -0
- package/node_modules/execa/lib/transform/run-sync.js +50 -0
- package/node_modules/execa/lib/transform/split.js +112 -0
- package/node_modules/execa/lib/transform/validate.js +43 -0
- package/node_modules/execa/lib/utils/abort-signal.js +8 -0
- package/node_modules/execa/lib/utils/deferred.js +7 -0
- package/node_modules/execa/lib/utils/max-listeners.js +14 -0
- package/node_modules/execa/lib/utils/standard-stream.js +6 -0
- package/node_modules/execa/lib/utils/uint-array.js +69 -0
- package/node_modules/execa/lib/verbose/complete.js +24 -0
- package/node_modules/execa/lib/verbose/custom.js +26 -0
- package/node_modules/execa/lib/verbose/default.js +54 -0
- package/node_modules/execa/lib/verbose/error.js +13 -0
- package/node_modules/execa/lib/verbose/info.js +39 -0
- package/node_modules/execa/lib/verbose/ipc.js +15 -0
- package/node_modules/execa/lib/verbose/log.js +54 -0
- package/node_modules/execa/lib/verbose/output.js +60 -0
- package/node_modules/execa/lib/verbose/start.js +15 -0
- package/node_modules/execa/lib/verbose/values.js +33 -0
- package/node_modules/execa/license +9 -0
- package/node_modules/execa/package.json +124 -0
- package/node_modules/execa/readme.md +461 -0
- package/node_modules/fast-deep-equal/LICENSE +21 -0
- package/node_modules/fast-deep-equal/README.md +96 -0
- package/node_modules/fast-deep-equal/es6/index.js +72 -0
- package/node_modules/fast-deep-equal/es6/react.js +79 -0
- package/node_modules/fast-deep-equal/index.js +46 -0
- package/node_modules/fast-deep-equal/package.json +51 -0
- package/node_modules/fast-deep-equal/react.js +53 -0
- package/node_modules/figures/index.js +292 -0
- package/node_modules/figures/license +9 -0
- package/node_modules/figures/package.json +46 -0
- package/node_modules/figures/readme.md +337 -0
- package/node_modules/fontkit/README.md +266 -0
- package/node_modules/fontkit/dist/browser-module.mjs +13316 -0
- package/node_modules/fontkit/dist/browser.cjs +13333 -0
- package/node_modules/fontkit/dist/main.cjs +13355 -0
- package/node_modules/fontkit/dist/module.mjs +13337 -0
- package/node_modules/fontkit/package.json +87 -0
- package/node_modules/fontkit/src/CmapProcessor.js +286 -0
- package/node_modules/fontkit/src/DFont.js +117 -0
- package/node_modules/fontkit/src/TTFFont.js +554 -0
- package/node_modules/fontkit/src/TrueTypeCollection.js +67 -0
- package/node_modules/fontkit/src/WOFF2Font.js +216 -0
- package/node_modules/fontkit/src/WOFFFont.js +36 -0
- package/node_modules/fontkit/src/aat/AATFeatureMap.js +543 -0
- package/node_modules/fontkit/src/aat/AATLayoutEngine.js +49 -0
- package/node_modules/fontkit/src/aat/AATLookupTable.js +125 -0
- package/node_modules/fontkit/src/aat/AATMorxProcessor.js +430 -0
- package/node_modules/fontkit/src/aat/AATStateMachine.js +96 -0
- package/node_modules/fontkit/src/base.js +29 -0
- package/node_modules/fontkit/src/cff/CFFCharsets.js +99 -0
- package/node_modules/fontkit/src/cff/CFFDict.js +167 -0
- package/node_modules/fontkit/src/cff/CFFEncodings.js +48 -0
- package/node_modules/fontkit/src/cff/CFFFont.js +159 -0
- package/node_modules/fontkit/src/cff/CFFIndex.js +150 -0
- package/node_modules/fontkit/src/cff/CFFOperand.js +134 -0
- package/node_modules/fontkit/src/cff/CFFPointer.js +50 -0
- package/node_modules/fontkit/src/cff/CFFPrivateDict.js +39 -0
- package/node_modules/fontkit/src/cff/CFFStandardStrings.js +71 -0
- package/node_modules/fontkit/src/cff/CFFTop.js +237 -0
- package/node_modules/fontkit/src/decorators.js +36 -0
- package/node_modules/fontkit/src/encodings.js +219 -0
- package/node_modules/fontkit/src/fs.js +17 -0
- package/node_modules/fontkit/src/glyph/BBox.js +72 -0
- package/node_modules/fontkit/src/glyph/CFFGlyph.js +604 -0
- package/node_modules/fontkit/src/glyph/COLRGlyph.js +90 -0
- package/node_modules/fontkit/src/glyph/Glyph.js +212 -0
- package/node_modules/fontkit/src/glyph/GlyphVariationProcessor.js +486 -0
- package/node_modules/fontkit/src/glyph/Path.js +244 -0
- package/node_modules/fontkit/src/glyph/SBIXGlyph.js +54 -0
- package/node_modules/fontkit/src/glyph/StandardNames.js +27 -0
- package/node_modules/fontkit/src/glyph/TTFGlyph.js +393 -0
- package/node_modules/fontkit/src/glyph/TTFGlyphEncoder.js +158 -0
- package/node_modules/fontkit/src/glyph/WOFF2Glyph.js +17 -0
- package/node_modules/fontkit/src/index.js +15 -0
- package/node_modules/fontkit/src/layout/GlyphPosition.js +30 -0
- package/node_modules/fontkit/src/layout/GlyphRun.js +108 -0
- package/node_modules/fontkit/src/layout/KernProcessor.js +94 -0
- package/node_modules/fontkit/src/layout/LayoutEngine.js +189 -0
- package/node_modules/fontkit/src/layout/Script.js +231 -0
- package/node_modules/fontkit/src/layout/UnicodeLayoutEngine.js +250 -0
- package/node_modules/fontkit/src/node.js +17 -0
- package/node_modules/fontkit/src/opentype/GPOSProcessor.js +353 -0
- package/node_modules/fontkit/src/opentype/GSUBProcessor.js +192 -0
- package/node_modules/fontkit/src/opentype/GlyphInfo.js +57 -0
- package/node_modules/fontkit/src/opentype/GlyphIterator.js +70 -0
- package/node_modules/fontkit/src/opentype/OTLayoutEngine.js +113 -0
- package/node_modules/fontkit/src/opentype/OTProcessor.js +438 -0
- package/node_modules/fontkit/src/opentype/ShapingPlan.js +118 -0
- package/node_modules/fontkit/src/opentype/shapers/ArabicShaper.js +123 -0
- package/node_modules/fontkit/src/opentype/shapers/DefaultShaper.js +72 -0
- package/node_modules/fontkit/src/opentype/shapers/HangulShaper.js +285 -0
- package/node_modules/fontkit/src/opentype/shapers/IndicShaper.js +911 -0
- package/node_modules/fontkit/src/opentype/shapers/UniversalShaper.js +185 -0
- package/node_modules/fontkit/src/opentype/shapers/data.trie +0 -0
- package/node_modules/fontkit/src/opentype/shapers/gen-indic.js +208 -0
- package/node_modules/fontkit/src/opentype/shapers/gen-use.js +287 -0
- package/node_modules/fontkit/src/opentype/shapers/generate-data.js +33 -0
- package/node_modules/fontkit/src/opentype/shapers/index.js +102 -0
- package/node_modules/fontkit/src/opentype/shapers/indic-data.js +175 -0
- package/node_modules/fontkit/src/opentype/shapers/indic.json +1 -0
- package/node_modules/fontkit/src/opentype/shapers/indic.machine +31 -0
- package/node_modules/fontkit/src/opentype/shapers/indic.trie +0 -0
- package/node_modules/fontkit/src/opentype/shapers/use.json +1 -0
- package/node_modules/fontkit/src/opentype/shapers/use.machine +44 -0
- package/node_modules/fontkit/src/opentype/shapers/use.trie +0 -0
- package/node_modules/fontkit/src/subset/CFFSubset.js +171 -0
- package/node_modules/fontkit/src/subset/Subset.js +27 -0
- package/node_modules/fontkit/src/subset/TTFSubset.js +131 -0
- package/node_modules/fontkit/src/tables/BASE.js +78 -0
- package/node_modules/fontkit/src/tables/COLR.js +25 -0
- package/node_modules/fontkit/src/tables/CPAL.js +24 -0
- package/node_modules/fontkit/src/tables/DSIG.js +21 -0
- package/node_modules/fontkit/src/tables/EBDT.js +91 -0
- package/node_modules/fontkit/src/tables/EBLC.js +80 -0
- package/node_modules/fontkit/src/tables/GDEF.js +57 -0
- package/node_modules/fontkit/src/tables/GPOS.js +209 -0
- package/node_modules/fontkit/src/tables/GSUB.js +84 -0
- package/node_modules/fontkit/src/tables/HVAR.js +44 -0
- package/node_modules/fontkit/src/tables/JSTF.js +43 -0
- package/node_modules/fontkit/src/tables/LTSH.js +10 -0
- package/node_modules/fontkit/src/tables/OS2.js +84 -0
- package/node_modules/fontkit/src/tables/PCLT.js +21 -0
- package/node_modules/fontkit/src/tables/VDMX.js +33 -0
- package/node_modules/fontkit/src/tables/VORG.js +14 -0
- package/node_modules/fontkit/src/tables/WOFF2Directory.js +74 -0
- package/node_modules/fontkit/src/tables/WOFFDirectory.js +38 -0
- package/node_modules/fontkit/src/tables/aat.js +157 -0
- package/node_modules/fontkit/src/tables/avar.js +19 -0
- package/node_modules/fontkit/src/tables/bsln.js +31 -0
- package/node_modules/fontkit/src/tables/cmap.js +127 -0
- package/node_modules/fontkit/src/tables/cvt.js +6 -0
- package/node_modules/fontkit/src/tables/directory.js +58 -0
- package/node_modules/fontkit/src/tables/feat.js +28 -0
- package/node_modules/fontkit/src/tables/fpgm.js +8 -0
- package/node_modules/fontkit/src/tables/fvar.js +31 -0
- package/node_modules/fontkit/src/tables/gasp.js +15 -0
- package/node_modules/fontkit/src/tables/glyf.js +4 -0
- package/node_modules/fontkit/src/tables/gvar.js +27 -0
- package/node_modules/fontkit/src/tables/hdmx.js +15 -0
- package/node_modules/fontkit/src/tables/head.js +25 -0
- package/node_modules/fontkit/src/tables/hhea.js +19 -0
- package/node_modules/fontkit/src/tables/hmtx.js +11 -0
- package/node_modules/fontkit/src/tables/index.js +117 -0
- package/node_modules/fontkit/src/tables/just.js +81 -0
- package/node_modules/fontkit/src/tables/kern.js +91 -0
- package/node_modules/fontkit/src/tables/loca.js +30 -0
- package/node_modules/fontkit/src/tables/maxp.js +20 -0
- package/node_modules/fontkit/src/tables/morx.js +79 -0
- package/node_modules/fontkit/src/tables/name.js +130 -0
- package/node_modules/fontkit/src/tables/opbd.js +15 -0
- package/node_modules/fontkit/src/tables/opentype.js +217 -0
- package/node_modules/fontkit/src/tables/post.js +34 -0
- package/node_modules/fontkit/src/tables/prep.js +6 -0
- package/node_modules/fontkit/src/tables/sbix.js +17 -0
- package/node_modules/fontkit/src/tables/variations.js +81 -0
- package/node_modules/fontkit/src/tables/vhea.js +19 -0
- package/node_modules/fontkit/src/tables/vmtx.js +12 -0
- package/node_modules/fontkit/src/utils.js +62 -0
- package/node_modules/get-stream/license +9 -0
- package/node_modules/get-stream/package.json +56 -0
- package/node_modules/get-stream/readme.md +303 -0
- package/node_modules/get-stream/source/array-buffer.js +84 -0
- package/node_modules/get-stream/source/array.js +32 -0
- package/node_modules/get-stream/source/buffer.js +19 -0
- package/node_modules/get-stream/source/contents.js +121 -0
- package/node_modules/get-stream/source/exports.js +5 -0
- package/node_modules/get-stream/source/index.js +13 -0
- package/node_modules/get-stream/source/stream.js +65 -0
- package/node_modules/get-stream/source/string.js +41 -0
- package/node_modules/get-stream/source/utils.js +11 -0
- package/node_modules/human-signals/LICENSE +201 -0
- package/node_modules/human-signals/README.md +171 -0
- package/node_modules/human-signals/build/src/core.js +273 -0
- package/node_modules/human-signals/build/src/main.js +70 -0
- package/node_modules/human-signals/build/src/realtime.js +16 -0
- package/node_modules/human-signals/build/src/signals.js +34 -0
- package/node_modules/human-signals/package.json +63 -0
- package/node_modules/is-plain-obj/index.js +8 -0
- package/node_modules/is-plain-obj/license +9 -0
- package/node_modules/is-plain-obj/package.json +38 -0
- package/node_modules/is-plain-obj/readme.md +58 -0
- package/node_modules/is-stream/index.js +37 -0
- package/node_modules/is-stream/license +9 -0
- package/node_modules/is-stream/package.json +45 -0
- package/node_modules/is-stream/readme.md +57 -0
- package/node_modules/is-unicode-supported/index.js +21 -0
- package/node_modules/is-unicode-supported/license +9 -0
- package/node_modules/is-unicode-supported/package.json +44 -0
- package/node_modules/is-unicode-supported/readme.md +35 -0
- package/node_modules/npm-run-path/index.js +55 -0
- package/node_modules/npm-run-path/license +9 -0
- package/node_modules/npm-run-path/node_modules/path-key/index.js +12 -0
- package/node_modules/npm-run-path/node_modules/path-key/license +9 -0
- package/node_modules/npm-run-path/node_modules/path-key/package.json +41 -0
- package/node_modules/npm-run-path/node_modules/path-key/readme.md +57 -0
- package/node_modules/npm-run-path/package.json +49 -0
- package/node_modules/npm-run-path/readme.md +104 -0
- package/node_modules/pako/LICENSE +21 -0
- package/node_modules/pako/README.md +176 -0
- package/node_modules/pako/dist/pako.js +6606 -0
- package/node_modules/pako/dist/pako.min.js +3 -0
- package/node_modules/pako/dist/pako_deflate.js +3879 -0
- package/node_modules/pako/dist/pako_deflate.min.js +2 -0
- package/node_modules/pako/dist/pako_inflate.js +3127 -0
- package/node_modules/pako/dist/pako_inflate.min.js +2 -0
- package/node_modules/pako/index.js +14 -0
- package/node_modules/pako/lib/deflate.js +400 -0
- package/node_modules/pako/lib/inflate.js +418 -0
- package/node_modules/pako/lib/utils/common.js +102 -0
- package/node_modules/pako/lib/utils/strings.js +185 -0
- package/node_modules/pako/lib/zlib/adler32.js +32 -0
- package/node_modules/pako/lib/zlib/constants.js +50 -0
- package/node_modules/pako/lib/zlib/crc32.js +41 -0
- package/node_modules/pako/lib/zlib/deflate.js +1855 -0
- package/node_modules/pako/lib/zlib/gzheader.js +40 -0
- package/node_modules/pako/lib/zlib/inffast.js +326 -0
- package/node_modules/pako/lib/zlib/inflate.js +1538 -0
- package/node_modules/pako/lib/zlib/inftrees.js +327 -0
- package/node_modules/pako/lib/zlib/messages.js +13 -0
- package/node_modules/pako/lib/zlib/trees.js +1202 -0
- package/node_modules/pako/lib/zlib/zstream.js +29 -0
- package/node_modules/pako/package.json +40 -0
- package/node_modules/parse-ms/index.js +45 -0
- package/node_modules/parse-ms/license +9 -0
- package/node_modules/parse-ms/package.json +44 -0
- package/node_modules/parse-ms/readme.md +46 -0
- package/node_modules/pretty-ms/index.js +150 -0
- package/node_modules/pretty-ms/license +9 -0
- package/node_modules/pretty-ms/package.json +52 -0
- package/node_modules/pretty-ms/readme.md +198 -0
- package/node_modules/restructure/LICENSE +21 -0
- package/node_modules/restructure/README.md +300 -0
- package/node_modules/restructure/dist/main.cjs +1019 -0
- package/node_modules/restructure/index.js +17 -0
- package/node_modules/restructure/package.json +36 -0
- package/node_modules/restructure/src/Array.js +106 -0
- package/node_modules/restructure/src/Base.js +17 -0
- package/node_modules/restructure/src/Bitfield.js +39 -0
- package/node_modules/restructure/src/Boolean.js +22 -0
- package/node_modules/restructure/src/Buffer.js +38 -0
- package/node_modules/restructure/src/DecodeStream.js +85 -0
- package/node_modules/restructure/src/EncodeStream.js +129 -0
- package/node_modules/restructure/src/Enum.js +27 -0
- package/node_modules/restructure/src/LazyArray.js +74 -0
- package/node_modules/restructure/src/Number.js +77 -0
- package/node_modules/restructure/src/Optional.js +44 -0
- package/node_modules/restructure/src/Pointer.js +167 -0
- package/node_modules/restructure/src/Reserved.js +23 -0
- package/node_modules/restructure/src/String.js +155 -0
- package/node_modules/restructure/src/Struct.js +113 -0
- package/node_modules/restructure/src/VersionedStruct.js +139 -0
- package/node_modules/restructure/src/utils.js +35 -0
- package/node_modules/restructure/test/Array.js +103 -0
- package/node_modules/restructure/test/Bitfield.js +29 -0
- package/node_modules/restructure/test/Boolean.js +39 -0
- package/node_modules/restructure/test/Buffer.js +45 -0
- package/node_modules/restructure/test/DecodeStream.js +101 -0
- package/node_modules/restructure/test/EncodeStream.js +104 -0
- package/node_modules/restructure/test/Enum.js +24 -0
- package/node_modules/restructure/test/LazyArray.js +59 -0
- package/node_modules/restructure/test/Number.js +356 -0
- package/node_modules/restructure/test/Optional.js +100 -0
- package/node_modules/restructure/test/Pointer.js +289 -0
- package/node_modules/restructure/test/Reserved.js +26 -0
- package/node_modules/restructure/test/String.js +151 -0
- package/node_modules/restructure/test/Struct.js +146 -0
- package/node_modules/restructure/test/VersionedStruct.js +495 -0
- package/node_modules/saxes/README.md +323 -0
- package/node_modules/saxes/package.json +55 -0
- package/node_modules/saxes/saxes.js +2053 -0
- package/node_modules/signal-exit/LICENSE.txt +16 -0
- package/node_modules/signal-exit/README.md +74 -0
- package/node_modules/signal-exit/dist/cjs/browser.js +10 -0
- package/node_modules/signal-exit/dist/cjs/index.js +279 -0
- package/node_modules/signal-exit/dist/cjs/package.json +3 -0
- package/node_modules/signal-exit/dist/cjs/signals.js +42 -0
- package/node_modules/signal-exit/dist/mjs/browser.js +4 -0
- package/node_modules/signal-exit/dist/mjs/index.js +275 -0
- package/node_modules/signal-exit/dist/mjs/package.json +3 -0
- package/node_modules/signal-exit/dist/mjs/signals.js +39 -0
- package/node_modules/signal-exit/package.json +93 -0
- package/node_modules/strip-final-newline/index.js +26 -0
- package/node_modules/strip-final-newline/license +9 -0
- package/node_modules/strip-final-newline/package.json +46 -0
- package/node_modules/strip-final-newline/readme.md +34 -0
- package/node_modules/tiny-inflate/LICENSE +21 -0
- package/node_modules/tiny-inflate/index.js +375 -0
- package/node_modules/tiny-inflate/package.json +25 -0
- package/node_modules/tiny-inflate/readme.md +31 -0
- package/node_modules/tiny-inflate/test/index.js +75 -0
- package/node_modules/tiny-inflate/test/lorem.txt +199 -0
- package/node_modules/unicode-properties/LICENSE +8 -0
- package/node_modules/unicode-properties/dist/main.cjs +150 -0
- package/node_modules/unicode-properties/dist/module.mjs +127 -0
- package/node_modules/unicode-properties/package.json +44 -0
- package/node_modules/unicode-properties/readme.md +78 -0
- package/node_modules/unicode-trie/LICENSE +8 -0
- package/node_modules/unicode-trie/README.md +77 -0
- package/node_modules/unicode-trie/builder.js +966 -0
- package/node_modules/unicode-trie/index.js +136 -0
- package/node_modules/unicode-trie/package.json +23 -0
- package/node_modules/unicode-trie/swap.js +25 -0
- package/node_modules/unicode-trie/test/mocha.opts +1 -0
- package/node_modules/unicode-trie/test/test.js +243 -0
- package/node_modules/unicorn-magic/default.js +14 -0
- package/node_modules/unicorn-magic/license +9 -0
- package/node_modules/unicorn-magic/node.js +49 -0
- package/node_modules/unicorn-magic/package.json +59 -0
- package/node_modules/unicorn-magic/readme.md +25 -0
- package/node_modules/which-command/cli.js +74 -0
- package/node_modules/which-command/index.js +170 -0
- package/node_modules/which-command/license +9 -0
- package/node_modules/which-command/package.json +46 -0
- package/node_modules/which-command/readme.md +121 -0
- package/node_modules/xmlchars/LICENSE +18 -0
- package/node_modules/xmlchars/README.md +33 -0
- package/node_modules/xmlchars/package.json +34 -0
- package/node_modules/xmlchars/xml/1.0/ed4.js +44 -0
- package/node_modules/xmlchars/xml/1.0/ed5.js +105 -0
- package/node_modules/xmlchars/xml/1.1/ed2.js +145 -0
- package/node_modules/xmlchars/xmlchars.js +191 -0
- package/node_modules/xmlchars/xmlns/1.0/ed3.js +65 -0
- package/node_modules/yoctocolors/base.js +118 -0
- package/node_modules/yoctocolors/index.js +2 -0
- package/node_modules/yoctocolors/license +9 -0
- package/node_modules/yoctocolors/package.json +66 -0
- package/node_modules/yoctocolors/readme.md +163 -0
- package/package.json +337 -246
- package/node_modules/@deepseek-ai/cordis-plugin-hmr/README.md +0 -51
- package/node_modules/@deepseek-ai/cordis-plugin-hmr/lib/index.js +0 -401
- package/node_modules/@deepseek-ai/cordis-plugin-hmr/src/error.ts +0 -36
- package/node_modules/@deepseek-ai/cordis-plugin-hmr/src/index.ts +0 -427
- package/node_modules/@deepseek-ai/dsh/lib/plugin-Bk_PbPwP.js +0 -130
- package/node_modules/@deepseek-ai/dsh/lib/profile-boot-DB8eVKBx.js +0 -2
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-BRtJ62WN.css +0 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-Ly7KS3xS.js +0 -127
- /package/node_modules/@deepseek-ai/{cordis-plugin-hmr → dsh-hmr}/LICENSE +0 -0
|
@@ -8,6 +8,258 @@ window.__ModuleLoader__.load({
|
|
|
8
8
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
9
9
|
let react = require("react");
|
|
10
10
|
let _deepseek_ai_dsh_client_ui_primitives = require("@deepseek-ai/dsh-client-ui-primitives");
|
|
11
|
+
//#region lib/types/changes.js
|
|
12
|
+
/** Authenticated GET route serving one announced change summary while its Session lives. */
|
|
13
|
+
const CHANGED_FILES_PATH = "/api/changes.summary";
|
|
14
|
+
/** Authenticated GET route serving one listed file's turn-start and turn-end comparison while its Session lives. */
|
|
15
|
+
const CHANGES_DIFF_PATH = "/api/changes.diff";
|
|
16
|
+
/** Authenticated POST route for opening a changed file on the Host desktop. */
|
|
17
|
+
const CHANGES_OPEN_PATH = "/api/changes.open";
|
|
18
|
+
/** Resource-address prefix of a turn's review tab in the right Sidebar. */
|
|
19
|
+
const CHANGES_REVIEW_ADDRESS = "dsh-resource://changes-review/session/";
|
|
20
|
+
function isRecord$1(value) {
|
|
21
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Validate one changed-file record read from the summary route.
|
|
25
|
+
* @param value - decoded JSON.
|
|
26
|
+
* @returns whether the record carries a path, a display path, and line counts.
|
|
27
|
+
*/
|
|
28
|
+
function isChangedFile(value) {
|
|
29
|
+
if (!isRecord$1(value)) return false;
|
|
30
|
+
const { path, display, added, deleted, binary, oversized } = value;
|
|
31
|
+
return typeof path === "string" && path.length > 0 && typeof display === "string" && display.length > 0 && Number.isSafeInteger(added) && Number.isSafeInteger(deleted) && (binary === void 0 || binary === true) && (oversized === void 0 || oversized === true);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Validate a summary read from the summary route.
|
|
35
|
+
* @param value - decoded JSON.
|
|
36
|
+
* @returns whether the value identifies a turn, a complete file list, the total count, and the line totals.
|
|
37
|
+
*/
|
|
38
|
+
function isChangesSummary(value) {
|
|
39
|
+
if (!isRecord$1(value)) return false;
|
|
40
|
+
const { turn, files, total, added, deleted } = value;
|
|
41
|
+
return Number.isSafeInteger(turn) && turn >= 1 && Number.isSafeInteger(total) && Number.isSafeInteger(added) && Number.isSafeInteger(deleted) && Array.isArray(files) && files.every(isChangedFile);
|
|
42
|
+
}
|
|
43
|
+
function isHunk(value) {
|
|
44
|
+
if (!isRecord$1(value)) return false;
|
|
45
|
+
const { oldStart, oldLines, newStart, newLines, lines } = value;
|
|
46
|
+
return [
|
|
47
|
+
oldStart,
|
|
48
|
+
oldLines,
|
|
49
|
+
newStart,
|
|
50
|
+
newLines
|
|
51
|
+
].every((field) => Number.isSafeInteger(field) && field >= 0) && Array.isArray(lines) && lines.every((line) => typeof line === "string" && /^[+ -]/.test(line));
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Validate a comparison read from the comparison route.
|
|
55
|
+
* @param value - decoded JSON.
|
|
56
|
+
* @returns whether the value is a text comparison with well-formed hunks, or a binary or oversized refusal.
|
|
57
|
+
*/
|
|
58
|
+
function isChangesDiff(value) {
|
|
59
|
+
if (!isRecord$1(value)) return false;
|
|
60
|
+
const { kind, path, display } = value;
|
|
61
|
+
if (typeof path !== "string" || path.length === 0 || typeof display !== "string" || display.length === 0) return false;
|
|
62
|
+
if (kind === "binary" || kind === "oversized") return true;
|
|
63
|
+
if (kind !== "text") return false;
|
|
64
|
+
const { before, after, hunks, coarse } = value;
|
|
65
|
+
return typeof before === "boolean" && typeof after === "boolean" && typeof coarse === "boolean" && Array.isArray(hunks) && hunks.every(isHunk);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Validate the `workspace/changes` event data read from a Session log.
|
|
69
|
+
* @param value - decoded durable event data.
|
|
70
|
+
* @returns whether the event names a turn.
|
|
71
|
+
*/
|
|
72
|
+
function isChangesEvent(value) {
|
|
73
|
+
return isRecord$1(value) && Number.isSafeInteger(value.turn) && value.turn >= 1;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Build authenticated coordinates for the summary one `workspace/changes` event announced.
|
|
77
|
+
* @param sessionId - owning Session.
|
|
78
|
+
* @param seq - event sequence.
|
|
79
|
+
* @returns same-origin summary URL.
|
|
80
|
+
*/
|
|
81
|
+
function changesSummaryUrl(sessionId, seq) {
|
|
82
|
+
return `${CHANGED_FILES_PATH}?${new URLSearchParams({
|
|
83
|
+
sessionId,
|
|
84
|
+
seq: String(seq)
|
|
85
|
+
})}`;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Build authenticated coordinates for one listed file's comparison.
|
|
89
|
+
* @param sessionId - owning Session.
|
|
90
|
+
* @param seq - workspace/changes event sequence.
|
|
91
|
+
* @param index - original index in the summary's files array.
|
|
92
|
+
* @returns same-origin comparison URL.
|
|
93
|
+
*/
|
|
94
|
+
function changesDiffUrl(sessionId, seq, index) {
|
|
95
|
+
return `${CHANGES_DIFF_PATH}?${new URLSearchParams({
|
|
96
|
+
sessionId,
|
|
97
|
+
seq: String(seq),
|
|
98
|
+
index: String(index)
|
|
99
|
+
})}`;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Build authenticated coordinates for a changed file's native open.
|
|
103
|
+
* @param sessionId - owning Session.
|
|
104
|
+
* @param seq - workspace/changes event sequence.
|
|
105
|
+
* @param index - original index in the summary's files array.
|
|
106
|
+
* @returns same-origin action URL.
|
|
107
|
+
*/
|
|
108
|
+
function changedFileUrl(sessionId, seq, index) {
|
|
109
|
+
return `${CHANGES_OPEN_PATH}?${new URLSearchParams({
|
|
110
|
+
sessionId,
|
|
111
|
+
seq: String(seq),
|
|
112
|
+
index: String(index)
|
|
113
|
+
})}`;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* The right-Sidebar address of one turn's review. The Session and the event
|
|
117
|
+
* sequence identify the content; the turn rides along for the tab title.
|
|
118
|
+
* @param coordinates - viewed Session, announcing event, and turn.
|
|
119
|
+
* @returns a `dsh-resource://changes-review/session/…` address.
|
|
120
|
+
*/
|
|
121
|
+
function changesReviewAddress(coordinates) {
|
|
122
|
+
const { sessionId, seq, turn } = coordinates;
|
|
123
|
+
return `${CHANGES_REVIEW_ADDRESS}${encodeURIComponent(sessionId)}/${seq}/${turn}`;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Read the coordinates back out of a review address.
|
|
127
|
+
* @param address - a resource address.
|
|
128
|
+
* @returns the coordinates, or undefined for any other address.
|
|
129
|
+
*/
|
|
130
|
+
function parseChangesReviewAddress(address) {
|
|
131
|
+
if (!address.startsWith("dsh-resource://changes-review/session/")) return void 0;
|
|
132
|
+
const parts = address.slice(38).split("/");
|
|
133
|
+
if (parts.length !== 3) return void 0;
|
|
134
|
+
const [sessionId, seq, turn] = parts;
|
|
135
|
+
if (sessionId === "" || !/^\d+$/.test(seq) || !/^[1-9]\d*$/.test(turn)) return void 0;
|
|
136
|
+
try {
|
|
137
|
+
return {
|
|
138
|
+
sessionId: decodeURIComponent(sessionId),
|
|
139
|
+
seq: Number(seq),
|
|
140
|
+
turn: Number(turn)
|
|
141
|
+
};
|
|
142
|
+
} catch {
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//#endregion
|
|
147
|
+
//#region lib/types/client/host-read-store.js
|
|
148
|
+
/**
|
|
149
|
+
* Fetch-once cache of Host-served records keyed by their authenticated URL:
|
|
150
|
+
* one read per URL while a state stands, cleared on connection replacement,
|
|
151
|
+
* cancelled on disposal. Each store decides what a response means and which
|
|
152
|
+
* states a later request reads again.
|
|
153
|
+
*/
|
|
154
|
+
/** One browser plugin's reads of one record kind. */
|
|
155
|
+
var HostReadStore = class {
|
|
156
|
+
policy;
|
|
157
|
+
/** Record URLs key the state across Sessions and turns. */
|
|
158
|
+
state = (0, _deepseek_ai_dsh_client_store.createSnapshotStore)({});
|
|
159
|
+
lifetime = new AbortController();
|
|
160
|
+
/** The connection generation the current states belong to; a reset aborts it so no older read publishes. */
|
|
161
|
+
generation = new AbortController();
|
|
162
|
+
pending = /* @__PURE__ */ new Set();
|
|
163
|
+
constructor(policy) {
|
|
164
|
+
this.policy = policy;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Read one URL unless a state the policy keeps already stands for it.
|
|
168
|
+
* @param url - the record's authenticated URL.
|
|
169
|
+
* @returns after the state is published.
|
|
170
|
+
*/
|
|
171
|
+
async loadUrl(url) {
|
|
172
|
+
const current = this.state.getSnapshot()[url];
|
|
173
|
+
if (this.lifetime.signal.aborted || current !== void 0 && !this.policy.retryable(current)) return;
|
|
174
|
+
this.state.update((state) => {
|
|
175
|
+
state[url] = this.policy.loading;
|
|
176
|
+
});
|
|
177
|
+
const task = this.read(url, AbortSignal.any([this.lifetime.signal, this.generation.signal]));
|
|
178
|
+
this.pending.add(task);
|
|
179
|
+
try {
|
|
180
|
+
await task;
|
|
181
|
+
} finally {
|
|
182
|
+
this.pending.delete(task);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
/** Forget every state and abandon in-flight reads; a replaced connection may reach a Host that no longer serves them. */
|
|
186
|
+
reset() {
|
|
187
|
+
this.generation.abort();
|
|
188
|
+
this.generation = new AbortController();
|
|
189
|
+
this.state.set({});
|
|
190
|
+
}
|
|
191
|
+
/** Cancel outstanding reads and wait until none can publish state. */
|
|
192
|
+
async dispose() {
|
|
193
|
+
this.lifetime.abort();
|
|
194
|
+
await Promise.all(this.pending);
|
|
195
|
+
}
|
|
196
|
+
async read(url, signal) {
|
|
197
|
+
let next;
|
|
198
|
+
try {
|
|
199
|
+
next = await this.policy.decode(await fetch(url, { signal }));
|
|
200
|
+
} catch {
|
|
201
|
+
next = this.policy.failed;
|
|
202
|
+
}
|
|
203
|
+
if (!signal.aborted) this.state.update((state) => {
|
|
204
|
+
state[url] = next;
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
};
|
|
208
|
+
//#endregion
|
|
209
|
+
//#region lib/types/client/changes-diff.js
|
|
210
|
+
/** One browser plugin's comparison reads; a failed read is the one state a later request replaces. */
|
|
211
|
+
var ChangesDiffStore = class extends HostReadStore {
|
|
212
|
+
constructor() {
|
|
213
|
+
super({
|
|
214
|
+
loading: "loading",
|
|
215
|
+
failed: "error",
|
|
216
|
+
retryable: (state) => state === "error",
|
|
217
|
+
decode: async (response) => {
|
|
218
|
+
if (response.status === 404) return "missing";
|
|
219
|
+
if (!response.ok) return "error";
|
|
220
|
+
const value = await response.json();
|
|
221
|
+
return isChangesDiff(value) ? value : "error";
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Read one comparison; a cached comparison or a missing one is kept, a failed one is read again.
|
|
227
|
+
* @param sessionId - viewed Session.
|
|
228
|
+
* @param seq - the announcing event's sequence.
|
|
229
|
+
* @param index - the file's index in the summary.
|
|
230
|
+
* @returns after the state is published.
|
|
231
|
+
*/
|
|
232
|
+
load(sessionId, seq, index) {
|
|
233
|
+
return this.loadUrl(changesDiffUrl(sessionId, seq, index));
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
//#endregion
|
|
237
|
+
//#region lib/types/client/changes-summary.js
|
|
238
|
+
/** One browser plugin's summary reads; a summary or a missing answer is kept until the connection is replaced. */
|
|
239
|
+
var ChangesSummaryStore = class extends HostReadStore {
|
|
240
|
+
constructor() {
|
|
241
|
+
super({
|
|
242
|
+
loading: "loading",
|
|
243
|
+
failed: "missing",
|
|
244
|
+
retryable: () => false,
|
|
245
|
+
decode: async (response) => {
|
|
246
|
+
if (!response.ok) return "missing";
|
|
247
|
+
const value = await response.json();
|
|
248
|
+
return isChangesSummary(value) ? value : "missing";
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Read one summary once; a later read of the same coordinates returns the cached state.
|
|
254
|
+
* @param sessionId - viewed Session.
|
|
255
|
+
* @param seq - the announcing event's sequence.
|
|
256
|
+
* @returns after the state is published.
|
|
257
|
+
*/
|
|
258
|
+
load(sessionId, seq) {
|
|
259
|
+
return this.loadUrl(changesSummaryUrl(sessionId, seq));
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
//#endregion
|
|
11
263
|
//#region lib/types/presented.js
|
|
12
264
|
/** Authenticated POST route for opening a workspace file on the Host desktop. */
|
|
13
265
|
const PRESENT_OPEN_PATH = "/api/present.open";
|
|
@@ -68,7 +320,7 @@ window.__ModuleLoader__.load({
|
|
|
68
320
|
}
|
|
69
321
|
//#endregion
|
|
70
322
|
//#region lib/types/client/present-open.js
|
|
71
|
-
/** Shared native-open status for delivery cards and closing-message file mentions. */
|
|
323
|
+
/** Shared native-open status for delivery cards, the changed-files card, and closing-message file mentions. */
|
|
72
324
|
/** One browser plugin's file-open requests, cancelled when that plugin is disposed. */
|
|
73
325
|
var PresentedOpenController = class {
|
|
74
326
|
/** File action URLs key the state across Sessions, turns, and both clickable surfaces. */
|
|
@@ -88,8 +340,20 @@ window.__ModuleLoader__.load({
|
|
|
88
340
|
* @param action - default application open or file-manager reveal.
|
|
89
341
|
* @returns after the Host acknowledges opening or the error state is published.
|
|
90
342
|
*/
|
|
91
|
-
|
|
92
|
-
|
|
343
|
+
open(sessionId, seq, index, action = "open") {
|
|
344
|
+
return this.openUrl(presentedFileUrl(sessionId, seq, index), action);
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Open one recorded changed file in the Host's default application.
|
|
348
|
+
* @param sessionId - viewed Session.
|
|
349
|
+
* @param seq - durable workspace/changes event sequence.
|
|
350
|
+
* @param index - original file index within that event.
|
|
351
|
+
* @returns after the Host acknowledges opening or the error state is published.
|
|
352
|
+
*/
|
|
353
|
+
openChanged(sessionId, seq, index) {
|
|
354
|
+
return this.openUrl(changedFileUrl(sessionId, seq, index), "open");
|
|
355
|
+
}
|
|
356
|
+
async openUrl(url, action) {
|
|
93
357
|
const phase = this.state.getSnapshot()[url];
|
|
94
358
|
if (this.lifetime.signal.aborted || phase === "opening" || phase === "revealing") return;
|
|
95
359
|
this.state.update((state) => {
|
|
@@ -167,13 +431,13 @@ window.__ModuleLoader__.load({
|
|
|
167
431
|
};
|
|
168
432
|
//#endregion
|
|
169
433
|
//#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/PresentRow.module.css.mjs
|
|
170
|
-
const css$
|
|
171
|
-
const tagId$
|
|
172
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$
|
|
434
|
+
const css$3 = "._2XWtrW_summary{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;margin-left:8px;font-size:12px;display:flex}._2XWtrW_summary>:first-child{flex-shrink:0}._2XWtrW_paths{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}._2XWtrW_output{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-secondary);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:8px 0;padding:12px;font-size:12px}._2XWtrW_inspect{color:var(--dsw-alias-link);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 0;font-size:12px}";
|
|
435
|
+
const tagId$3 = "@deepseek-ai/dsh-client-ui-deliverables/PresentRow.module.css";
|
|
436
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
|
|
173
437
|
const tag = document.createElement("style");
|
|
174
438
|
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
|
|
175
|
-
tag.dataset.pluginCss = tagId$
|
|
176
|
-
tag.textContent = css$
|
|
439
|
+
tag.dataset.pluginCss = tagId$3;
|
|
440
|
+
tag.textContent = css$3;
|
|
177
441
|
document.head.appendChild(tag);
|
|
178
442
|
}
|
|
179
443
|
var PresentRow_module_css_default = {
|
|
@@ -240,6 +504,216 @@ window.__ModuleLoader__.load({
|
|
|
240
504
|
});
|
|
241
505
|
}
|
|
242
506
|
//#endregion
|
|
507
|
+
//#region ../../util/workspace-path/lib/index.js
|
|
508
|
+
/**
|
|
509
|
+
* The `dsh-resource://file/…` address grammar: how a file is named across the
|
|
510
|
+
* Sidebar and the resource model, built and parsed without touching a
|
|
511
|
+
* filesystem.
|
|
512
|
+
* @module
|
|
513
|
+
*/
|
|
514
|
+
/** The scheme and type every file address opens with. */
|
|
515
|
+
const FILE_ADDRESS_PREFIX = "dsh-resource://file/";
|
|
516
|
+
/** Component-encode one id or path segment, keeping `:` literal for drive letters. */
|
|
517
|
+
function encodeSegment(segment) {
|
|
518
|
+
return encodeURIComponent(segment).replace(/%3A/gi, ":");
|
|
519
|
+
}
|
|
520
|
+
/** Encode a `/`-separated path segment by segment. */
|
|
521
|
+
function encodePath(path) {
|
|
522
|
+
return path.split("/").map(encodeSegment).join("/");
|
|
523
|
+
}
|
|
524
|
+
/**
|
|
525
|
+
* Build the address of a file read through one Session.
|
|
526
|
+
* @param sessionId - the Session whose Host workspace resolves the path.
|
|
527
|
+
* @param path - absolute or workspace-relative path; backslashes are normalized to `/`, and leading `./` prefixes are dropped.
|
|
528
|
+
* @returns the `dsh-resource://file/session/<sessionId>/<path>` address.
|
|
529
|
+
*/
|
|
530
|
+
function sessionFileAddress(sessionId, path) {
|
|
531
|
+
const normalized = path.replace(/\\/g, "/").replace(/^(?:\.\/)+/, "");
|
|
532
|
+
return `${FILE_ADDRESS_PREFIX}session/${encodeSegment(sessionId)}/${encodePath(normalized)}`;
|
|
533
|
+
}
|
|
534
|
+
/**
|
|
535
|
+
* Browser-safe Workspace path and display helpers.
|
|
536
|
+
* @module @deepseek-ai/dsh-util-workspace-path
|
|
537
|
+
*/
|
|
538
|
+
/** Whether a path uses a Windows drive or UNC prefix. */
|
|
539
|
+
function isWindowsStylePath(value) {
|
|
540
|
+
return /^[A-Za-z]:[/\\]/.test(value) || value.startsWith("\\\\");
|
|
541
|
+
}
|
|
542
|
+
/**
|
|
543
|
+
* Whether a path is absolute in either spelling the Host accepts: POSIX (`/a/b`) or Windows drive or UNC.
|
|
544
|
+
* @param path - the path to classify.
|
|
545
|
+
* @returns `true` for an absolute path; `false` for a Workspace-relative one.
|
|
546
|
+
*/
|
|
547
|
+
function isAbsoluteWorkspacePath(path) {
|
|
548
|
+
return path.startsWith("/") || isWindowsStylePath(path);
|
|
549
|
+
}
|
|
550
|
+
/**
|
|
551
|
+
* Resolve a Workspace-relative path into the Host-facing spelling used by path operations.
|
|
552
|
+
* @param cwd - Session Workspace root, when known.
|
|
553
|
+
* @param path - Absolute or Workspace-relative path.
|
|
554
|
+
* @returns an absolute path when a Workspace root is available, otherwise the original path.
|
|
555
|
+
*/
|
|
556
|
+
function resolveWorkspacePath(cwd, path) {
|
|
557
|
+
if (isAbsoluteWorkspacePath(path)) return path;
|
|
558
|
+
if (cwd === void 0 || cwd === "") return path;
|
|
559
|
+
const separator = isWindowsStylePath(cwd) && cwd.includes("\\") ? "\\" : "/";
|
|
560
|
+
return `${cwd.replace(/[/\\]+$/, "")}${separator}${path.replace(/^[/\\]+/, "")}`;
|
|
561
|
+
}
|
|
562
|
+
/**
|
|
563
|
+
* The address for a path as a caller holds it: a relative path, or an absolute
|
|
564
|
+
* path inside the Session's workspace, becomes a `session`-scoped address; an
|
|
565
|
+
* absolute path outside it, or one whose workspace root is unknown, keeps its
|
|
566
|
+
* absolute path in that Session's address.
|
|
567
|
+
* @param sessionId - the Session the path is read in.
|
|
568
|
+
* @param cwd - that Session's workspace root, when known.
|
|
569
|
+
* @param path - absolute or workspace-relative path, in either separator spelling.
|
|
570
|
+
* @returns the `dsh-resource://file/…` address.
|
|
571
|
+
*/
|
|
572
|
+
function fileAddressFor(sessionId, cwd, path) {
|
|
573
|
+
const normalized = path.replace(/\\/g, "/");
|
|
574
|
+
if (!isAbsoluteWorkspacePath(normalized)) return sessionFileAddress(sessionId, normalized);
|
|
575
|
+
const root = cwd === void 0 ? "" : cwd.replace(/\\/g, "/").replace(/\/+$/, "");
|
|
576
|
+
if (root !== "" && normalized === root) return sessionFileAddress(sessionId, "");
|
|
577
|
+
if (root !== "" && normalized.startsWith(`${root}/`)) return sessionFileAddress(sessionId, normalized.slice(root.length + 1));
|
|
578
|
+
return sessionFileAddress(sessionId, normalized);
|
|
579
|
+
}
|
|
580
|
+
//#endregion
|
|
581
|
+
//#region lib/types/client/icons.js
|
|
582
|
+
/** Angle brackets, the code mark the card's header tile shows. */
|
|
583
|
+
const IconCodeBracketsOutline16 = ({ size = 16, className }) => (0, react_jsx_runtime.jsx)("svg", {
|
|
584
|
+
width: size,
|
|
585
|
+
height: size,
|
|
586
|
+
className,
|
|
587
|
+
viewBox: "0 0 16 16",
|
|
588
|
+
fill: "none",
|
|
589
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
590
|
+
"aria-hidden": "true",
|
|
591
|
+
children: (0, react_jsx_runtime.jsx)("path", {
|
|
592
|
+
d: "M5.6 3.4 1 8l4.6 4.6M10.4 3.4 15 8l-4.6 4.6",
|
|
593
|
+
stroke: "currentColor",
|
|
594
|
+
strokeWidth: "1.8",
|
|
595
|
+
strokeLinecap: "round",
|
|
596
|
+
strokeLinejoin: "round"
|
|
597
|
+
})
|
|
598
|
+
});
|
|
599
|
+
//#endregion
|
|
600
|
+
//#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/ChangedFiles.module.css.mjs
|
|
601
|
+
const css$2 = ".yZYUSG_card{--changes-fill:var(--dsw-static-neutral-50);--changes-hover:var(--dsw-static-neutral-100);border:.5px solid var(--dsw-alias-border-l1);min-width:0;color:var(--dsw-alias-label-primary);border-radius:16px;flex-direction:column;margin-top:4px;display:flex;overflow:hidden}body[data-ds-dark-theme] .yZYUSG_card{--changes-fill:var(--dsw-static-neutral-850);--changes-hover:var(--dsw-static-neutral-800)}.yZYUSG_header{box-sizing:border-box;background:var(--changes-fill);width:100%;min-width:0;color:inherit;font:inherit;text-align:left;border:0;align-items:center;gap:12px;margin:0;padding:12px 16px;display:flex}button.yZYUSG_header{cursor:pointer;transition:background-color .12s}button.yZYUSG_header:hover:not(:disabled),button.yZYUSG_header:focus-visible{background:var(--changes-hover)}button.yZYUSG_header:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-brand-primary);outline:none}button.yZYUSG_header:disabled{cursor:progress}.yZYUSG_tile{background:var(--dsw-alias-link);width:36px;height:36px;color:var(--dsw-static-neutral-00);border-radius:10px;flex:none;place-items:center;display:grid}.yZYUSG_titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.yZYUSG_title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:22px;overflow:hidden}.yZYUSG_stat{font-family:var(--ds-font-family-code);color:var(--dsw-alias-label-tertiary);gap:6px;font-size:12px;line-height:18px;display:inline-flex}.yZYUSG_stat[data-error=true],.yZYUSG_counts[data-error=true]{color:var(--dsw-alias-state-error-primary)}.yZYUSG_added{color:var(--dsw-alias-state-success-primary)}.yZYUSG_deleted{color:var(--dsw-alias-state-error-primary)}.yZYUSG_list{border-top:.5px solid var(--dsw-alias-border-l1);margin:0;padding:4px 0;list-style:none}.yZYUSG_row{box-sizing:border-box;width:100%;min-width:0;color:var(--dsw-alias-label-secondary);cursor:pointer;font-family:var(--ds-font-family-code);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:6px 16px;font-size:12px;line-height:18px;display:flex}.yZYUSG_row:hover:not(:disabled),.yZYUSG_row:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.yZYUSG_row:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-border-l3);outline:none}.yZYUSG_row:disabled{cursor:progress}.yZYUSG_path{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.yZYUSG_counts{white-space:nowrap;color:var(--dsw-alias-label-tertiary);flex:none;gap:6px;display:inline-flex}.yZYUSG_toggle{box-sizing:border-box;border:0;border-top:.5px solid var(--dsw-alias-border-l1);width:100%;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;text-align:left;background:0 0;align-items:center;gap:4px;margin:0;padding:8px 16px;font-size:12px;line-height:18px;display:inline-flex}.yZYUSG_toggle:hover{background:var(--dsw-alias-interactive-bg-hover)}.yZYUSG_toggle svg{flex:none;width:14px;height:14px}@media (pointer:coarse){.yZYUSG_row,.yZYUSG_toggle{min-height:44px}}";
|
|
602
|
+
const tagId$2 = "@deepseek-ai/dsh-client-ui-deliverables/ChangedFiles.module.css";
|
|
603
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
|
|
604
|
+
const tag = document.createElement("style");
|
|
605
|
+
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
|
|
606
|
+
tag.dataset.pluginCss = tagId$2;
|
|
607
|
+
tag.textContent = css$2;
|
|
608
|
+
document.head.appendChild(tag);
|
|
609
|
+
}
|
|
610
|
+
var ChangedFiles_module_css_default = {
|
|
611
|
+
"added": "yZYUSG_added",
|
|
612
|
+
"card": "yZYUSG_card",
|
|
613
|
+
"counts": "yZYUSG_counts",
|
|
614
|
+
"deleted": "yZYUSG_deleted",
|
|
615
|
+
"header": "yZYUSG_header",
|
|
616
|
+
"list": "yZYUSG_list",
|
|
617
|
+
"path": "yZYUSG_path",
|
|
618
|
+
"row": "yZYUSG_row",
|
|
619
|
+
"stat": "yZYUSG_stat",
|
|
620
|
+
"tile": "yZYUSG_tile",
|
|
621
|
+
"title": "yZYUSG_title",
|
|
622
|
+
"titles": "yZYUSG_titles",
|
|
623
|
+
"toggle": "yZYUSG_toggle"
|
|
624
|
+
};
|
|
625
|
+
//#endregion
|
|
626
|
+
//#region lib/types/client/ChangedFiles.js
|
|
627
|
+
/** The changed-files card: a header and per-file rows that open the turn's review, and a three-row fold. */
|
|
628
|
+
/** Rows shown before the fold; the design's summary height for a closing message. */
|
|
629
|
+
const COLLAPSED_ROWS = 3;
|
|
630
|
+
const GROUPED$1 = new Intl.NumberFormat("en-US");
|
|
631
|
+
/** Added and deleted line counts in the card's colors. */
|
|
632
|
+
function Counts$1({ added, deleted, t }) {
|
|
633
|
+
return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)("span", {
|
|
634
|
+
className: ChangedFiles_module_css_default.added,
|
|
635
|
+
children: t("changes.added", { count: GROUPED$1.format(added) })
|
|
636
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
637
|
+
className: ChangedFiles_module_css_default.deleted,
|
|
638
|
+
children: t("changes.deleted", { count: GROUPED$1.format(deleted) })
|
|
639
|
+
})] });
|
|
640
|
+
}
|
|
641
|
+
/**
|
|
642
|
+
* Render one turn's changed files. The header opens the turn's review in the
|
|
643
|
+
* right Sidebar on its first file; each row opens it on that row's file.
|
|
644
|
+
* @param props - the recorded summary, the review opener, and localized copy.
|
|
645
|
+
* @returns the card.
|
|
646
|
+
*/
|
|
647
|
+
function ChangedFiles({ changes, cwd, openReview, t }) {
|
|
648
|
+
const [expanded, setExpanded] = (0, react.useState)(false);
|
|
649
|
+
const foldable = changes.files.length > COLLAPSED_ROWS;
|
|
650
|
+
const rows = foldable && !expanded ? changes.files.slice(0, COLLAPSED_ROWS) : changes.files;
|
|
651
|
+
return (0, react_jsx_runtime.jsxs)("div", {
|
|
652
|
+
className: ChangedFiles_module_css_default.card,
|
|
653
|
+
"data-changed-files": true,
|
|
654
|
+
children: [
|
|
655
|
+
(0, react_jsx_runtime.jsxs)("button", {
|
|
656
|
+
type: "button",
|
|
657
|
+
className: ChangedFiles_module_css_default.header,
|
|
658
|
+
"aria-label": t("changes.openReview"),
|
|
659
|
+
onClick: () => {
|
|
660
|
+
openReview(0);
|
|
661
|
+
},
|
|
662
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
663
|
+
className: ChangedFiles_module_css_default.tile,
|
|
664
|
+
children: (0, react_jsx_runtime.jsx)(IconCodeBracketsOutline16, { size: 18 })
|
|
665
|
+
}), (0, react_jsx_runtime.jsxs)("span", {
|
|
666
|
+
className: ChangedFiles_module_css_default.titles,
|
|
667
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
668
|
+
className: ChangedFiles_module_css_default.title,
|
|
669
|
+
children: t("changes.title", { count: String(changes.total) })
|
|
670
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
671
|
+
className: ChangedFiles_module_css_default.stat,
|
|
672
|
+
children: (0, react_jsx_runtime.jsx)(Counts$1, {
|
|
673
|
+
t,
|
|
674
|
+
added: changes.added,
|
|
675
|
+
deleted: changes.deleted
|
|
676
|
+
})
|
|
677
|
+
})]
|
|
678
|
+
})]
|
|
679
|
+
}),
|
|
680
|
+
(0, react_jsx_runtime.jsx)("ul", {
|
|
681
|
+
className: ChangedFiles_module_css_default.list,
|
|
682
|
+
children: rows.map((file, index) => (0, react_jsx_runtime.jsx)("li", { children: (0, react_jsx_runtime.jsxs)("button", {
|
|
683
|
+
type: "button",
|
|
684
|
+
className: ChangedFiles_module_css_default.row,
|
|
685
|
+
title: resolveWorkspacePath(cwd, file.path),
|
|
686
|
+
"aria-label": t("changes.viewDiff", { name: file.display }),
|
|
687
|
+
onClick: () => {
|
|
688
|
+
openReview(index);
|
|
689
|
+
},
|
|
690
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
691
|
+
className: ChangedFiles_module_css_default.path,
|
|
692
|
+
children: file.display
|
|
693
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
694
|
+
className: ChangedFiles_module_css_default.counts,
|
|
695
|
+
children: file.binary === true ? t("changes.binary") : file.oversized === true ? t("changes.oversized") : (0, react_jsx_runtime.jsx)(Counts$1, {
|
|
696
|
+
t,
|
|
697
|
+
added: file.added,
|
|
698
|
+
deleted: file.deleted
|
|
699
|
+
})
|
|
700
|
+
})]
|
|
701
|
+
}) }, file.display))
|
|
702
|
+
}),
|
|
703
|
+
foldable && (0, react_jsx_runtime.jsxs)("button", {
|
|
704
|
+
type: "button",
|
|
705
|
+
className: ChangedFiles_module_css_default.toggle,
|
|
706
|
+
"aria-expanded": expanded,
|
|
707
|
+
"aria-label": t(expanded ? "changes.collapseAria" : "changes.expandAria", { count: String(changes.files.length) }),
|
|
708
|
+
onClick: () => {
|
|
709
|
+
setExpanded((value) => !value);
|
|
710
|
+
},
|
|
711
|
+
children: [(0, react_jsx_runtime.jsx)("span", { children: t(expanded ? "changes.collapse" : "changes.all", { count: String(changes.files.length) }) }), expanded ? (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronUpOutline14, {}) : (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutline14, {})]
|
|
712
|
+
})
|
|
713
|
+
]
|
|
714
|
+
});
|
|
715
|
+
}
|
|
716
|
+
//#endregion
|
|
243
717
|
//#region ../../core/session/lib/types/surface.js
|
|
244
718
|
/** Runtime counterpart of the message-producing event union. */
|
|
245
719
|
const SURFACE_EVENT_TYPES = new Set([
|
|
@@ -275,8 +749,9 @@ window.__ModuleLoader__.load({
|
|
|
275
749
|
//#region lib/types/client/turn-deliverables.js
|
|
276
750
|
/**
|
|
277
751
|
* Turn-scoped produced-file Definition and readers. Client-only and
|
|
278
|
-
* model-free:
|
|
279
|
-
*
|
|
752
|
+
* model-free: produced paths come from successful first-party mutation calls,
|
|
753
|
+
* changed files from the Host's recorded git summary, and deliveries from
|
|
754
|
+
* `present`; never from presentation data or the closing prose.
|
|
280
755
|
*/
|
|
281
756
|
/**
|
|
282
757
|
* Extract the path from a supported first-party mutation call. Session
|
|
@@ -377,6 +852,10 @@ window.__ModuleLoader__.load({
|
|
|
377
852
|
id: String(event.data.turn),
|
|
378
853
|
role: "update"
|
|
379
854
|
} : null;
|
|
855
|
+
if (event.type === "workspace/changes") return isChangesEvent(event.data) ? {
|
|
856
|
+
id: String(event.data.turn),
|
|
857
|
+
role: "update"
|
|
858
|
+
} : null;
|
|
380
859
|
if (event.type === "tool/result" && isAppendSurfaceEvent(event)) return {
|
|
381
860
|
id: String(event.data.turn),
|
|
382
861
|
role: "update"
|
|
@@ -392,6 +871,10 @@ window.__ModuleLoader__.load({
|
|
|
392
871
|
};
|
|
393
872
|
},
|
|
394
873
|
update: (context, match) => {
|
|
874
|
+
if (match.event.type === "workspace/changes") return {
|
|
875
|
+
...context.state,
|
|
876
|
+
changes: { seq: match.event.seq }
|
|
877
|
+
};
|
|
395
878
|
if (match.event.type === "deliverables/presented") {
|
|
396
879
|
const { files } = match.event.data;
|
|
397
880
|
const seq = match.event.seq;
|
|
@@ -432,19 +915,28 @@ window.__ModuleLoader__.load({
|
|
|
432
915
|
},
|
|
433
916
|
buildLocationData: (context, scope, previous) => {
|
|
434
917
|
if (scope !== "turn" || context.state === void 0) return null;
|
|
435
|
-
if (previous?.kind === "turn" && previous.turn === context.state.turn && previous.key === "deliverables" && previous.value.produced === context.state.produced && previous.value.presented === context.state.presented) return previous;
|
|
918
|
+
if (previous?.kind === "turn" && previous.turn === context.state.turn && previous.key === "deliverables" && previous.value.produced === context.state.produced && previous.value.presented === context.state.presented && previous.value.changes === context.state.changes) return previous;
|
|
436
919
|
return {
|
|
437
920
|
kind: "turn",
|
|
438
921
|
turn: context.state.turn,
|
|
439
922
|
key: "deliverables",
|
|
440
923
|
value: {
|
|
441
924
|
produced: context.state.produced,
|
|
442
|
-
...context.state.presented === void 0 ? {} : { presented: context.state.presented }
|
|
925
|
+
...context.state.presented === void 0 ? {} : { presented: context.state.presented },
|
|
926
|
+
...context.state.changes === void 0 ? {} : { changes: context.state.changes }
|
|
443
927
|
}
|
|
444
928
|
};
|
|
445
929
|
}
|
|
446
930
|
};
|
|
447
931
|
/**
|
|
932
|
+
* The turn's latest change announcement.
|
|
933
|
+
* @param owner - closing turn.
|
|
934
|
+
* @returns the announcement, or null when the Host recorded none.
|
|
935
|
+
*/
|
|
936
|
+
function changesForClosing(owner) {
|
|
937
|
+
return owner.turn.data.get("deliverables")?.changes ?? null;
|
|
938
|
+
}
|
|
939
|
+
/**
|
|
448
940
|
* Select the latest declaration of each path before the closing reply.
|
|
449
941
|
* @param owner - closing turn and sequence.
|
|
450
942
|
* @returns replayable deliveries in first-seen path order.
|
|
@@ -483,9 +975,9 @@ window.__ModuleLoader__.load({
|
|
|
483
975
|
return matches.length === 1 ? matches[0] : void 0;
|
|
484
976
|
}
|
|
485
977
|
//#endregion
|
|
486
|
-
//#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/
|
|
487
|
-
const css$1 = ".
|
|
488
|
-
const tagId$1 = "@deepseek-ai/dsh-client-ui-deliverables/
|
|
978
|
+
//#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/Deliverables.module.css.mjs
|
|
979
|
+
const css$1 = ".udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-50);--deliverable-hover:var(--dsw-static-neutral-100);flex-direction:column;gap:16px;min-width:0;margin-top:4px;display:flex;container-type:inline-size}.udUtqW_root[data-after-changes=true]{margin-top:0}body[data-ds-dark-theme] .udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-850);--deliverable-hover:var(--dsw-static-neutral-800)}.udUtqW_hostStatus{color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;font-size:12px;line-height:18px;display:flex}.udUtqW_presented{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.udUtqW_presented[data-single=true]{grid-template-columns:minmax(0,1fr)}.udUtqW_file{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);min-width:0;height:60px;color:var(--dsw-alias-label-primary);border-radius:18px;align-items:center;gap:10px;padding:8px 10px;transition:background-color .12s;display:flex;position:relative;overflow:hidden}.udUtqW_file:hover{background:var(--deliverable-hover)}.udUtqW_cardPreview{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.udUtqW_cardPreview:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-brand-primary);outline:none}.udUtqW_fileIcon{z-index:2;box-sizing:border-box;pointer-events:none;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);width:40px;height:40px;color:var(--dsw-alias-link);border-radius:10px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.udUtqW_fileBody{z-index:2;pointer-events:none;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex;position:relative}.udUtqW_details{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}.udUtqW_fileName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.udUtqW_description{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:16px;overflow:hidden}.udUtqW_description[data-error=true]{color:var(--dsw-alias-state-error-primary)}.udUtqW_previewHint,.udUtqW_file:hover .udUtqW_secondaryText{display:none}.udUtqW_file:hover .udUtqW_previewHint{display:inline}.udUtqW_split{box-sizing:border-box;pointer-events:auto;border:.5px solid var(--dsw-alias-border-l3);background:var(--dsw-alias-button-floating-fill);border-radius:10px;flex:none;align-items:stretch;height:28px;display:inline-flex;overflow:hidden}.udUtqW_menuAnchor{align-self:stretch}.udUtqW_open,.udUtqW_chevron{color:var(--dsw-alias-label-primary);cursor:pointer;font-family:var(--dsw-font-family);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.udUtqW_open{padding:4px 8px;font-size:12px;line-height:18px}.udUtqW_chevron{border-left:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-secondary);padding:4px 5px}.udUtqW_open:hover,.udUtqW_open:focus-visible,.udUtqW_chevron:hover:not(:disabled),.udUtqW_chevron:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_chevron:disabled{color:var(--dsw-alias-label-dimmed);cursor:not-allowed}.udUtqW_menuActionIcon{width:16px;height:16px;display:block}.udUtqW_toggle{min-width:0;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-self:center;align-items:center;gap:4px;padding:1px 11px;font-size:12px;line-height:18px;display:inline-flex}.udUtqW_toggle:hover{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_toggle svg{flex:none;width:14px;height:14px}@container (width<=620px){.udUtqW_presented{grid-template-columns:minmax(0,1fr)}}@media (pointer:coarse){.udUtqW_split{min-height:44px}.udUtqW_open,.udUtqW_chevron{min-width:44px}}";
|
|
980
|
+
const tagId$1 = "@deepseek-ai/dsh-client-ui-deliverables/Deliverables.module.css";
|
|
489
981
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
|
|
490
982
|
const tag = document.createElement("style");
|
|
491
983
|
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
|
|
@@ -493,110 +985,6 @@ window.__ModuleLoader__.load({
|
|
|
493
985
|
tag.textContent = css$1;
|
|
494
986
|
document.head.appendChild(tag);
|
|
495
987
|
}
|
|
496
|
-
var ProducedFiles_module_css_default = {
|
|
497
|
-
"file": "Lg-HGW_file",
|
|
498
|
-
"fileIcon": "Lg-HGW_fileIcon",
|
|
499
|
-
"fileName": "Lg-HGW_fileName",
|
|
500
|
-
"label": "Lg-HGW_label",
|
|
501
|
-
"lane": "Lg-HGW_lane",
|
|
502
|
-
"more": "Lg-HGW_more",
|
|
503
|
-
"root": "Lg-HGW_root",
|
|
504
|
-
"row": "Lg-HGW_row"
|
|
505
|
-
};
|
|
506
|
-
//#endregion
|
|
507
|
-
//#region lib/types/client/ProducedFiles.js
|
|
508
|
-
/** Maximum number of file chips rendered before the remainder counter. */
|
|
509
|
-
const SHOWN_LIMIT = 6;
|
|
510
|
-
function moreLabel(t, count) {
|
|
511
|
-
return count === 1 ? t("produced.moreOne") : t("produced.more", { count: String(count) });
|
|
512
|
-
}
|
|
513
|
-
/**
|
|
514
|
-
* Render one turn's produced files as openable chips.
|
|
515
|
-
* @param props - selector-matched paths, the chat view's file opener, and the locale seat.
|
|
516
|
-
* @returns The produced-files row.
|
|
517
|
-
*/
|
|
518
|
-
function ProducedFiles({ matched: paths, openFile, t }) {
|
|
519
|
-
const shown = paths.slice(0, SHOWN_LIMIT);
|
|
520
|
-
return (0, react_jsx_runtime.jsxs)("div", {
|
|
521
|
-
className: ProducedFiles_module_css_default.root,
|
|
522
|
-
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
523
|
-
className: ProducedFiles_module_css_default.label,
|
|
524
|
-
children: t("produced.label")
|
|
525
|
-
}), (0, react_jsx_runtime.jsx)("div", {
|
|
526
|
-
className: ProducedFiles_module_css_default.lane,
|
|
527
|
-
children: (0, react_jsx_runtime.jsxs)("div", {
|
|
528
|
-
className: ProducedFiles_module_css_default.row,
|
|
529
|
-
"data-produced-files-row": true,
|
|
530
|
-
children: [shown.map((path) => (0, react_jsx_runtime.jsxs)("button", {
|
|
531
|
-
type: "button",
|
|
532
|
-
className: ProducedFiles_module_css_default.file,
|
|
533
|
-
title: path,
|
|
534
|
-
"aria-label": t("produced.open", { name: path }),
|
|
535
|
-
onClick: () => {
|
|
536
|
-
openFile(path);
|
|
537
|
-
},
|
|
538
|
-
children: [(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.LinkIcon, {
|
|
539
|
-
kind: (0, _deepseek_ai_dsh_client_ui_primitives.classifyLinkPath)(path),
|
|
540
|
-
className: ProducedFiles_module_css_default.fileIcon
|
|
541
|
-
}), (0, react_jsx_runtime.jsx)("span", {
|
|
542
|
-
className: ProducedFiles_module_css_default.fileName,
|
|
543
|
-
children: basename(path)
|
|
544
|
-
})]
|
|
545
|
-
}, path)), shown.map((_, index) => {
|
|
546
|
-
const shownCount = index + 1;
|
|
547
|
-
const remainder = paths.length - shownCount;
|
|
548
|
-
if (remainder <= 0) return null;
|
|
549
|
-
return (0, react_jsx_runtime.jsx)("span", {
|
|
550
|
-
className: ProducedFiles_module_css_default.more,
|
|
551
|
-
"data-shown": shownCount,
|
|
552
|
-
children: moreLabel(t, remainder)
|
|
553
|
-
}, shownCount);
|
|
554
|
-
})]
|
|
555
|
-
})
|
|
556
|
-
})]
|
|
557
|
-
});
|
|
558
|
-
}
|
|
559
|
-
//#endregion
|
|
560
|
-
//#region ../../util/workspace-path/lib/index.js
|
|
561
|
-
/**
|
|
562
|
-
* Browser-safe Workspace path and display helpers.
|
|
563
|
-
* @module @deepseek-ai/dsh-util-workspace-path
|
|
564
|
-
*/
|
|
565
|
-
/** Whether a path uses a Windows drive or UNC prefix. */
|
|
566
|
-
function isWindowsStylePath(value) {
|
|
567
|
-
return /^[A-Za-z]:[/\\]/.test(value) || value.startsWith("\\\\");
|
|
568
|
-
}
|
|
569
|
-
/**
|
|
570
|
-
* Whether a path is absolute in either spelling the Host accepts: POSIX (`/a/b`) or Windows drive or UNC.
|
|
571
|
-
* @param path - the path to classify.
|
|
572
|
-
* @returns `true` for an absolute path; `false` for a Workspace-relative one.
|
|
573
|
-
*/
|
|
574
|
-
function isAbsoluteWorkspacePath(path) {
|
|
575
|
-
return path.startsWith("/") || isWindowsStylePath(path);
|
|
576
|
-
}
|
|
577
|
-
/**
|
|
578
|
-
* Resolve a Workspace-relative path into the Host-facing spelling used by path operations.
|
|
579
|
-
* @param cwd - Session Workspace root, when known.
|
|
580
|
-
* @param path - Absolute or Workspace-relative path.
|
|
581
|
-
* @returns an absolute path when a Workspace root is available, otherwise the original path.
|
|
582
|
-
*/
|
|
583
|
-
function resolveWorkspacePath(cwd, path) {
|
|
584
|
-
if (isAbsoluteWorkspacePath(path)) return path;
|
|
585
|
-
if (cwd === void 0 || cwd === "") return path;
|
|
586
|
-
const separator = isWindowsStylePath(cwd) && cwd.includes("\\") ? "\\" : "/";
|
|
587
|
-
return `${cwd.replace(/[/\\]+$/, "")}${separator}${path.replace(/^[/\\]+/, "")}`;
|
|
588
|
-
}
|
|
589
|
-
//#endregion
|
|
590
|
-
//#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/Deliverables.module.css.mjs
|
|
591
|
-
const css = ".udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-50);--deliverable-hover:var(--dsw-static-neutral-100);flex-direction:column;gap:16px;min-width:0;margin-top:4px;display:flex;container-type:inline-size}.udUtqW_root[data-after-produced-files=true]{margin-top:0}body[data-ds-dark-theme] .udUtqW_root{--deliverable-fill:var(--dsw-static-neutral-850);--deliverable-hover:var(--dsw-static-neutral-800)}.udUtqW_hostStatus{color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;font-size:12px;line-height:18px;display:flex}.udUtqW_presented{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.udUtqW_presented[data-single=true]{grid-template-columns:minmax(0,1fr)}.udUtqW_file{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);min-width:0;height:60px;color:var(--dsw-alias-label-primary);border-radius:18px;align-items:center;gap:10px;padding:8px 10px;transition:background-color .12s;display:flex;position:relative;overflow:hidden}.udUtqW_file:hover{background:var(--deliverable-hover)}.udUtqW_cardPreview{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0}.udUtqW_cardPreview:focus-visible{box-shadow:inset 0 0 0 2px var(--dsw-alias-brand-primary);outline:none}.udUtqW_fileIcon{z-index:2;box-sizing:border-box;pointer-events:none;border:.5px solid var(--dsw-alias-border-l1);background:var(--deliverable-fill);width:40px;height:40px;color:var(--dsw-alias-link);border-radius:10px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.udUtqW_fileBody{z-index:2;pointer-events:none;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex;position:relative}.udUtqW_details{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}.udUtqW_fileName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.udUtqW_description{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:16px;overflow:hidden}.udUtqW_description[data-error=true]{color:var(--dsw-alias-state-error-primary)}.udUtqW_previewHint,.udUtqW_file:hover .udUtqW_secondaryText{display:none}.udUtqW_file:hover .udUtqW_previewHint{display:inline}.udUtqW_split{box-sizing:border-box;pointer-events:auto;border:.5px solid var(--dsw-alias-border-l3);background:var(--dsw-alias-button-floating-fill);border-radius:10px;flex:none;align-items:stretch;height:28px;display:inline-flex;overflow:hidden}.udUtqW_menuAnchor{align-self:stretch}.udUtqW_open,.udUtqW_chevron{color:var(--dsw-alias-label-primary);cursor:pointer;font-family:var(--dsw-font-family);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.udUtqW_open{padding:4px 8px;font-size:12px;line-height:18px}.udUtqW_chevron{border-left:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-secondary);padding:4px 5px}.udUtqW_open:hover,.udUtqW_open:focus-visible,.udUtqW_chevron:hover:not(:disabled),.udUtqW_chevron:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_chevron:disabled{color:var(--dsw-alias-label-dimmed);cursor:not-allowed}.udUtqW_menuActionIcon{width:16px;height:16px;display:block}.udUtqW_toggle{min-width:0;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-self:center;align-items:center;gap:4px;padding:1px 11px;font-size:12px;line-height:18px;display:inline-flex}.udUtqW_toggle:hover{background:var(--dsw-alias-interactive-bg-hover)}.udUtqW_toggle svg{flex:none;width:14px;height:14px}@container (width<=620px){.udUtqW_presented{grid-template-columns:minmax(0,1fr)}}@media (pointer:coarse){.udUtqW_split{min-height:44px}.udUtqW_open,.udUtqW_chevron{min-width:44px}}";
|
|
592
|
-
const tagId = "@deepseek-ai/dsh-client-ui-deliverables/Deliverables.module.css";
|
|
593
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
594
|
-
const tag = document.createElement("style");
|
|
595
|
-
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
|
|
596
|
-
tag.dataset.pluginCss = tagId;
|
|
597
|
-
tag.textContent = css;
|
|
598
|
-
document.head.appendChild(tag);
|
|
599
|
-
}
|
|
600
988
|
var Deliverables_module_css_default = {
|
|
601
989
|
"cardPreview": "udUtqW_cardPreview",
|
|
602
990
|
"chevron": "udUtqW_chevron",
|
|
@@ -733,47 +1121,78 @@ window.__ModuleLoader__.load({
|
|
|
733
1121
|
}
|
|
734
1122
|
//#endregion
|
|
735
1123
|
//#region lib/types/client/Deliverables.js
|
|
736
|
-
/**
|
|
1124
|
+
/** The changed-files card, shown only while the Host serves the turn's summary, and explicitly declared files for a closing turn. */
|
|
737
1125
|
const COLLAPSED_PRESENTED_COUNT = 4;
|
|
738
1126
|
/**
|
|
739
|
-
* Claim turns
|
|
1127
|
+
* Claim turns with a change announcement or declared files.
|
|
740
1128
|
* @param owner - closing turn.
|
|
741
|
-
* @returns matched
|
|
1129
|
+
* @returns matched announcement and deliveries, or null for a turn with neither.
|
|
742
1130
|
*/
|
|
743
1131
|
function selectDeliverables(owner) {
|
|
744
|
-
const
|
|
1132
|
+
const changes = changesForClosing(owner);
|
|
745
1133
|
const presented = presentedForClosing(owner);
|
|
746
|
-
return
|
|
747
|
-
|
|
1134
|
+
return changes === null && presented.length === 0 ? null : {
|
|
1135
|
+
changes,
|
|
748
1136
|
presented
|
|
749
1137
|
};
|
|
750
1138
|
}
|
|
751
1139
|
/**
|
|
752
|
-
*
|
|
753
|
-
* @param props -
|
|
1140
|
+
* Contribute file deliveries alongside other completed-Turn artifacts.
|
|
1141
|
+
* @param props - closing Turn, file actions, and localized copy.
|
|
1142
|
+
* @returns file rows, or null when the Turn declares none.
|
|
1143
|
+
*/
|
|
1144
|
+
function DeliverablesTail(props) {
|
|
1145
|
+
const matched = selectDeliverables(props);
|
|
1146
|
+
return matched === null ? null : (0, react_jsx_runtime.jsx)(Deliverables, {
|
|
1147
|
+
...props,
|
|
1148
|
+
matched
|
|
1149
|
+
});
|
|
1150
|
+
}
|
|
1151
|
+
/**
|
|
1152
|
+
* Render the changed-files card, once the Host has served the announced
|
|
1153
|
+
* summary and it lists a file, and default-application buttons for declared
|
|
1154
|
+
* files. A summary the Host no longer serves leaves no card.
|
|
1155
|
+
* @param props - matched announcement and files, workspace opener, and localized copy.
|
|
754
1156
|
* @returns the closing turn's file rows.
|
|
755
1157
|
*/
|
|
756
|
-
function Deliverables({ matched, openFile, t, sessionId, useSessions, openPresented, usePresentedOpen, usePresentedHost, reloadPresentedHost }) {
|
|
1158
|
+
function Deliverables({ matched, openFile, t, sessionId, useSessions, openPresented, openChangesReview, usePresentedOpen, usePresentedHost, useChangesSummary, reloadPresentedHost, loadChangesSummary }) {
|
|
757
1159
|
const [expanded, setExpanded] = (0, react.useState)(false);
|
|
758
1160
|
const cwd = useSessions((state) => state.byId[sessionId]?.cwd);
|
|
759
1161
|
const states = usePresentedOpen((value) => value);
|
|
760
1162
|
const host = usePresentedHost((value) => value);
|
|
761
|
-
const
|
|
762
|
-
const
|
|
1163
|
+
const announced = matched.changes;
|
|
1164
|
+
const summary = useChangesSummary((value) => announced === null ? void 0 : value[changesSummaryUrl(sessionId, announced.seq)]);
|
|
763
1165
|
(0, react.useEffect)(() => {
|
|
764
|
-
if (
|
|
1166
|
+
if (announced !== null && summary === void 0) loadChangesSummary(sessionId, announced.seq);
|
|
765
1167
|
}, [
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
1168
|
+
announced,
|
|
1169
|
+
summary,
|
|
1170
|
+
sessionId,
|
|
1171
|
+
loadChangesSummary
|
|
769
1172
|
]);
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
1173
|
+
const changes = announced !== null && typeof summary === "object" && summary.files.length > 0 ? {
|
|
1174
|
+
seq: announced.seq,
|
|
1175
|
+
...summary
|
|
1176
|
+
} : null;
|
|
1177
|
+
const collapsible = matched.presented.length > COLLAPSED_PRESENTED_COUNT;
|
|
1178
|
+
const presented = collapsible && !expanded ? matched.presented.slice(0, COLLAPSED_PRESENTED_COUNT) : matched.presented;
|
|
1179
|
+
(0, react.useEffect)(() => {
|
|
1180
|
+
if (host === null) reloadPresentedHost();
|
|
1181
|
+
}, [host, reloadPresentedHost]);
|
|
1182
|
+
return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [changes !== null && (0, react_jsx_runtime.jsx)(ChangedFiles, {
|
|
1183
|
+
changes,
|
|
1184
|
+
cwd,
|
|
1185
|
+
t,
|
|
1186
|
+
openReview: (index) => {
|
|
1187
|
+
openChangesReview({
|
|
1188
|
+
sessionId,
|
|
1189
|
+
seq: changes.seq,
|
|
1190
|
+
turn: changes.turn
|
|
1191
|
+
}, index);
|
|
1192
|
+
}
|
|
774
1193
|
}), matched.presented.length > 0 && (0, react_jsx_runtime.jsxs)("div", {
|
|
775
1194
|
className: Deliverables_module_css_default.root,
|
|
776
|
-
"data-after-
|
|
1195
|
+
"data-after-changes": changes !== null || void 0,
|
|
777
1196
|
children: [
|
|
778
1197
|
host === "error" && (0, react_jsx_runtime.jsxs)("div", {
|
|
779
1198
|
className: Deliverables_module_css_default.hostStatus,
|
|
@@ -821,8 +1240,700 @@ window.__ModuleLoader__.load({
|
|
|
821
1240
|
})] });
|
|
822
1241
|
}
|
|
823
1242
|
//#endregion
|
|
1243
|
+
//#region \0dsh-css:/Users/songli/deepseek-harness/packages/client/ui-deliverables/src/client/ReviewTab.module.css.mjs
|
|
1244
|
+
const css = "._3Oi8kG_root{box-sizing:border-box;width:100%;height:100%;min-height:0;color:var(--dsw-alias-label-primary);flex-direction:column;display:flex}._3Oi8kG_header{box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l3);flex:none;align-items:center;gap:6px;height:38px;padding:0 6px 0 8px;display:flex}._3Oi8kG_selector{flex:0 auto;min-width:0}._3Oi8kG_selectorLabel{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:12px;overflow:hidden}._3Oi8kG_selectorButton{box-sizing:border-box;max-width:100%;height:28px;color:var(--dsw-alias-label-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:4px;padding:0 6px 0 8px;font-size:12px;display:inline-flex}._3Oi8kG_selectorButton:hover,._3Oi8kG_selectorButton[aria-expanded=true]{background:var(--dsw-alias-interactive-bg-hover)}._3Oi8kG_selectorText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._3Oi8kG_item{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}._3Oi8kG_itemPath{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._3Oi8kG_itemCounts,._3Oi8kG_counts{font-family:var(--ds-font-family-code);color:var(--dsw-alias-label-tertiary);flex:none;gap:6px;font-size:12px;display:inline-flex}._3Oi8kG_counts{min-width:0;margin-right:auto}._3Oi8kG_added{color:var(--dsw-alias-state-success-primary)}._3Oi8kG_deleted{color:var(--dsw-alias-state-error-primary)}._3Oi8kG_label{color:var(--dsw-alias-label-tertiary)}._3Oi8kG_tools{flex:none;align-items:center;gap:2px;margin-left:auto;display:inline-flex}._3Oi8kG_tool{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:6px;display:inline-flex}._3Oi8kG_tool svg{width:15px;height:15px}._3Oi8kG_tool:hover:not(:disabled),._3Oi8kG_tool[aria-pressed=true]{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}._3Oi8kG_tool:disabled{cursor:progress}._3Oi8kG_tool[data-error]{color:var(--dsw-alias-state-error-primary)}._3Oi8kG_status{color:var(--dsw-alias-label-secondary);align-items:center;gap:12px;margin:0;padding:16px;font-size:13px;display:flex}._3Oi8kG_body{min-height:0;font:var(--dsw-font-markdown-code-block);flex-direction:column;flex:auto;padding:8px 0 16px;display:flex;overflow:auto}._3Oi8kG_columns{flex:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}._3Oi8kG_column{min-width:0;overflow-x:auto}._3Oi8kG_column+._3Oi8kG_column{border-left:.5px solid var(--dsw-alias-border-l3)}._3Oi8kG_sideLine{box-sizing:border-box;white-space:pre;grid-template-columns:3.5em max-content;width:max-content;min-width:100%;min-height:22px;line-height:22px;display:grid}._3Oi8kG_note{font:var(--dsw-font-xs-13);color:var(--dsw-alias-label-tertiary);margin:0;padding:4px 16px 8px}._3Oi8kG_hunk{margin-bottom:8px}._3Oi8kG_hunkHeader{color:var(--dsw-alias-label-tertiary);white-space:pre;padding:4px 16px}._3Oi8kG_line{white-space:pre;grid-template-columns:3.5em 3.5em 1.2em minmax(0,1fr);min-height:22px;line-height:22px;display:grid}._3Oi8kG_splitLine{white-space:pre;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:22px;line-height:22px;display:grid}._3Oi8kG_cell{grid-template-columns:3.5em minmax(0,1fr);min-width:0;display:grid}._3Oi8kG_cell+._3Oi8kG_cell{border-left:.5px solid var(--dsw-alias-border-l3)}._3Oi8kG_number{color:var(--dsw-alias-label-tertiary);text-align:right;user-select:none;padding-right:8px}._3Oi8kG_sign{text-align:center;user-select:none}._3Oi8kG_text{padding-right:16px}._3Oi8kG_body[data-review-wrap] ._3Oi8kG_line,._3Oi8kG_body[data-review-wrap] ._3Oi8kG_splitLine{white-space:pre-wrap}._3Oi8kG_body[data-review-wrap] ._3Oi8kG_text{overflow-wrap:anywhere}._3Oi8kG_add{background:color-mix(in srgb, var(--dsw-alias-state-success-primary) 12%, transparent)}._3Oi8kG_add ._3Oi8kG_sign,._3Oi8kG_add ._3Oi8kG_text{color:var(--dsw-alias-state-success-primary)}._3Oi8kG_del{background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, transparent)}._3Oi8kG_del ._3Oi8kG_sign,._3Oi8kG_del ._3Oi8kG_text{color:var(--dsw-alias-state-error-primary)}._3Oi8kG_context ._3Oi8kG_text{color:var(--dsw-alias-label-secondary)}._3Oi8kG_empty{background:var(--dsw-alias-interactive-bg-hover)}";
|
|
1245
|
+
const tagId = "@deepseek-ai/dsh-client-ui-deliverables/ReviewTab.module.css";
|
|
1246
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
1247
|
+
const tag = document.createElement("style");
|
|
1248
|
+
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-deliverables";
|
|
1249
|
+
tag.dataset.pluginCss = tagId;
|
|
1250
|
+
tag.textContent = css;
|
|
1251
|
+
document.head.appendChild(tag);
|
|
1252
|
+
}
|
|
1253
|
+
var ReviewTab_module_css_default = {
|
|
1254
|
+
"add": "_3Oi8kG_add",
|
|
1255
|
+
"added": "_3Oi8kG_added",
|
|
1256
|
+
"body": "_3Oi8kG_body",
|
|
1257
|
+
"cell": "_3Oi8kG_cell",
|
|
1258
|
+
"column": "_3Oi8kG_column",
|
|
1259
|
+
"columns": "_3Oi8kG_columns",
|
|
1260
|
+
"context": "_3Oi8kG_context",
|
|
1261
|
+
"counts": "_3Oi8kG_counts",
|
|
1262
|
+
"del": "_3Oi8kG_del",
|
|
1263
|
+
"deleted": "_3Oi8kG_deleted",
|
|
1264
|
+
"empty": "_3Oi8kG_empty",
|
|
1265
|
+
"header": "_3Oi8kG_header",
|
|
1266
|
+
"hunk": "_3Oi8kG_hunk",
|
|
1267
|
+
"hunkHeader": "_3Oi8kG_hunkHeader",
|
|
1268
|
+
"item": "_3Oi8kG_item",
|
|
1269
|
+
"itemCounts": "_3Oi8kG_itemCounts",
|
|
1270
|
+
"itemPath": "_3Oi8kG_itemPath",
|
|
1271
|
+
"label": "_3Oi8kG_label",
|
|
1272
|
+
"line": "_3Oi8kG_line",
|
|
1273
|
+
"note": "_3Oi8kG_note",
|
|
1274
|
+
"number": "_3Oi8kG_number",
|
|
1275
|
+
"root": "_3Oi8kG_root",
|
|
1276
|
+
"selector": "_3Oi8kG_selector",
|
|
1277
|
+
"selectorButton": "_3Oi8kG_selectorButton",
|
|
1278
|
+
"selectorLabel": "_3Oi8kG_selectorLabel",
|
|
1279
|
+
"selectorText": "_3Oi8kG_selectorText",
|
|
1280
|
+
"sideLine": "_3Oi8kG_sideLine",
|
|
1281
|
+
"sign": "_3Oi8kG_sign",
|
|
1282
|
+
"splitLine": "_3Oi8kG_splitLine",
|
|
1283
|
+
"status": "_3Oi8kG_status",
|
|
1284
|
+
"text": "_3Oi8kG_text",
|
|
1285
|
+
"tool": "_3Oi8kG_tool",
|
|
1286
|
+
"tools": "_3Oi8kG_tools"
|
|
1287
|
+
};
|
|
1288
|
+
//#endregion
|
|
1289
|
+
//#region lib/types/client/ReviewTab.js
|
|
1290
|
+
/**
|
|
1291
|
+
* The review tab: one turn's changed files behind a file selector, with the
|
|
1292
|
+
* selected file's turn-start and turn-end comparison drawn unified or side by
|
|
1293
|
+
* side, wrapped or scrolling, and controls to open the file itself.
|
|
1294
|
+
*/
|
|
1295
|
+
/** Lines drawn before the tab stops; a coarse comparison of a file near the byte cap would otherwise draw every line. */
|
|
1296
|
+
const MAX_RENDERED_LINES = 5e3;
|
|
1297
|
+
const GROUPED = new Intl.NumberFormat("en-US");
|
|
1298
|
+
/**
|
|
1299
|
+
* Number a hunk's lines: context lines count on both sides, deletions on the
|
|
1300
|
+
* old side, additions on the new side.
|
|
1301
|
+
* @param hunk - a served hunk.
|
|
1302
|
+
* @returns the rows in order.
|
|
1303
|
+
*/
|
|
1304
|
+
function hunkRows(hunk) {
|
|
1305
|
+
let oldNo = hunk.oldStart;
|
|
1306
|
+
let newNo = hunk.newStart;
|
|
1307
|
+
return hunk.lines.map((line) => {
|
|
1308
|
+
const text = line.slice(1);
|
|
1309
|
+
switch (line[0]) {
|
|
1310
|
+
case "+": return {
|
|
1311
|
+
kind: "add",
|
|
1312
|
+
old: void 0,
|
|
1313
|
+
new: newNo++,
|
|
1314
|
+
text
|
|
1315
|
+
};
|
|
1316
|
+
case "-": return {
|
|
1317
|
+
kind: "del",
|
|
1318
|
+
old: oldNo++,
|
|
1319
|
+
new: void 0,
|
|
1320
|
+
text
|
|
1321
|
+
};
|
|
1322
|
+
default: return {
|
|
1323
|
+
kind: "context",
|
|
1324
|
+
old: oldNo++,
|
|
1325
|
+
new: newNo++,
|
|
1326
|
+
text
|
|
1327
|
+
};
|
|
1328
|
+
}
|
|
1329
|
+
});
|
|
1330
|
+
}
|
|
1331
|
+
/**
|
|
1332
|
+
* Pair a hunk's lines for the side-by-side view: each run of deletions is
|
|
1333
|
+
* aligned with the run of additions that follows it, row by row, and context
|
|
1334
|
+
* lines sit on both sides.
|
|
1335
|
+
* @param hunk - a served hunk.
|
|
1336
|
+
* @returns the rows in order.
|
|
1337
|
+
*/
|
|
1338
|
+
function splitRows(hunk) {
|
|
1339
|
+
const rows = [];
|
|
1340
|
+
let dels = [];
|
|
1341
|
+
let adds = [];
|
|
1342
|
+
const flush = () => {
|
|
1343
|
+
for (let at = 0; at < Math.max(dels.length, adds.length); at += 1) {
|
|
1344
|
+
const left = dels[at];
|
|
1345
|
+
const right = adds[at];
|
|
1346
|
+
rows.push({
|
|
1347
|
+
...left === void 0 ? {} : { left },
|
|
1348
|
+
...right === void 0 ? {} : { right }
|
|
1349
|
+
});
|
|
1350
|
+
}
|
|
1351
|
+
dels = [];
|
|
1352
|
+
adds = [];
|
|
1353
|
+
};
|
|
1354
|
+
for (const row of hunkRows(hunk)) if (row.kind === "del") dels.push({
|
|
1355
|
+
no: row.old,
|
|
1356
|
+
text: row.text,
|
|
1357
|
+
kind: "del"
|
|
1358
|
+
});
|
|
1359
|
+
else if (row.kind === "add") adds.push({
|
|
1360
|
+
no: row.new,
|
|
1361
|
+
text: row.text,
|
|
1362
|
+
kind: "add"
|
|
1363
|
+
});
|
|
1364
|
+
else {
|
|
1365
|
+
flush();
|
|
1366
|
+
rows.push({
|
|
1367
|
+
left: {
|
|
1368
|
+
no: row.old,
|
|
1369
|
+
text: row.text,
|
|
1370
|
+
kind: "context"
|
|
1371
|
+
},
|
|
1372
|
+
right: {
|
|
1373
|
+
no: row.new,
|
|
1374
|
+
text: row.text,
|
|
1375
|
+
kind: "context"
|
|
1376
|
+
}
|
|
1377
|
+
});
|
|
1378
|
+
}
|
|
1379
|
+
flush();
|
|
1380
|
+
return rows;
|
|
1381
|
+
}
|
|
1382
|
+
/**
|
|
1383
|
+
* The hunks to draw, cut at {@link MAX_RENDERED_LINES} lines in total.
|
|
1384
|
+
* @param hunks - served hunks.
|
|
1385
|
+
* @returns the hunks with the last one shortened as needed, and whether anything was cut.
|
|
1386
|
+
*/
|
|
1387
|
+
function renderedHunks(hunks) {
|
|
1388
|
+
let budget = MAX_RENDERED_LINES;
|
|
1389
|
+
const kept = [];
|
|
1390
|
+
for (const hunk of hunks) {
|
|
1391
|
+
if (budget === 0) return {
|
|
1392
|
+
hunks: kept,
|
|
1393
|
+
truncated: true
|
|
1394
|
+
};
|
|
1395
|
+
kept.push(hunk.lines.length <= budget ? hunk : {
|
|
1396
|
+
...hunk,
|
|
1397
|
+
lines: hunk.lines.slice(0, budget)
|
|
1398
|
+
});
|
|
1399
|
+
budget -= Math.min(budget, hunk.lines.length);
|
|
1400
|
+
}
|
|
1401
|
+
return {
|
|
1402
|
+
hunks: kept,
|
|
1403
|
+
truncated: hunks.some((hunk, at) => kept[at] !== hunk)
|
|
1404
|
+
};
|
|
1405
|
+
}
|
|
1406
|
+
/** The one-line fact about a text comparison worth stating above its hunks, if any. */
|
|
1407
|
+
function noteOf(diff) {
|
|
1408
|
+
if (!diff.before) return "diff.created";
|
|
1409
|
+
if (!diff.after) return "diff.deleted";
|
|
1410
|
+
if (diff.hunks.length === 0) return "diff.unchanged";
|
|
1411
|
+
}
|
|
1412
|
+
/** The file index a navigation names, when it names one. */
|
|
1413
|
+
function navigatedIndex(params) {
|
|
1414
|
+
const index = params?.index;
|
|
1415
|
+
return typeof index === "number" && Number.isSafeInteger(index) && index >= 0 ? index : void 0;
|
|
1416
|
+
}
|
|
1417
|
+
/** Added and deleted line counts in the card's colors. */
|
|
1418
|
+
function Counts({ file, t }) {
|
|
1419
|
+
if (file.binary === true) return (0, react_jsx_runtime.jsx)("span", {
|
|
1420
|
+
className: ReviewTab_module_css_default.label,
|
|
1421
|
+
children: t("changes.binary")
|
|
1422
|
+
});
|
|
1423
|
+
if (file.oversized === true) return (0, react_jsx_runtime.jsx)("span", {
|
|
1424
|
+
className: ReviewTab_module_css_default.label,
|
|
1425
|
+
children: t("changes.oversized")
|
|
1426
|
+
});
|
|
1427
|
+
return (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)("span", {
|
|
1428
|
+
className: ReviewTab_module_css_default.added,
|
|
1429
|
+
children: t("changes.added", { count: GROUPED.format(file.added) })
|
|
1430
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1431
|
+
className: ReviewTab_module_css_default.deleted,
|
|
1432
|
+
children: t("changes.deleted", { count: GROUPED.format(file.deleted) })
|
|
1433
|
+
})] });
|
|
1434
|
+
}
|
|
1435
|
+
/**
|
|
1436
|
+
* The review type's body, registered under `sidebar.right.pane.tab` as `changes-review`.
|
|
1437
|
+
* @param props - composed slot props.
|
|
1438
|
+
* @returns the selected file's comparison behind the file selector, or the state that stands in for it.
|
|
1439
|
+
*/
|
|
1440
|
+
function ReviewTab({ useTabInfo, sessionId, useSessions, useStore, actions, useChangesSummary, useChangesDiff, usePresentedOpen, usePresentedHost, loadChangesSummary, loadChangesDiff, reloadPresentedHost, openChanged, t }) {
|
|
1441
|
+
const { tab } = useTabInfo();
|
|
1442
|
+
const { navigation, signal } = tab;
|
|
1443
|
+
const coordinates = (0, react.useMemo)(() => parseChangesReviewAddress(tab.contentId), [tab.contentId]);
|
|
1444
|
+
if (coordinates === void 0) throw new Error(`ui-deliverables: not a review address "${tab.contentId}"`);
|
|
1445
|
+
const { seq } = coordinates;
|
|
1446
|
+
const cwd = useSessions((sessions) => sessions.byId[sessionId]?.cwd);
|
|
1447
|
+
const summary = useChangesSummary((value) => value[changesSummaryUrl(sessionId, seq)]);
|
|
1448
|
+
const state = useStore((store) => store.byTab[tab.id]);
|
|
1449
|
+
const host = usePresentedHost((value) => value);
|
|
1450
|
+
(0, react.useEffect)(() => {
|
|
1451
|
+
if (state?.navigated === navigation.revision) return;
|
|
1452
|
+
actions.navigated(tab.id, navigation.revision, navigatedIndex(navigation.params) ?? state?.index ?? 0);
|
|
1453
|
+
}, [
|
|
1454
|
+
state,
|
|
1455
|
+
navigation.revision,
|
|
1456
|
+
navigation.params,
|
|
1457
|
+
actions,
|
|
1458
|
+
tab.id
|
|
1459
|
+
]);
|
|
1460
|
+
(0, react.useEffect)(() => {
|
|
1461
|
+
const forget = () => {
|
|
1462
|
+
actions.forget(tab.id);
|
|
1463
|
+
};
|
|
1464
|
+
signal.addEventListener("abort", forget, { once: true });
|
|
1465
|
+
return () => {
|
|
1466
|
+
signal.removeEventListener("abort", forget);
|
|
1467
|
+
};
|
|
1468
|
+
}, [
|
|
1469
|
+
signal,
|
|
1470
|
+
actions,
|
|
1471
|
+
tab.id
|
|
1472
|
+
]);
|
|
1473
|
+
(0, react.useEffect)(() => {
|
|
1474
|
+
if (summary === void 0) loadChangesSummary(sessionId, seq);
|
|
1475
|
+
}, [
|
|
1476
|
+
summary,
|
|
1477
|
+
sessionId,
|
|
1478
|
+
seq,
|
|
1479
|
+
loadChangesSummary
|
|
1480
|
+
]);
|
|
1481
|
+
(0, react.useEffect)(() => {
|
|
1482
|
+
if (host === null) reloadPresentedHost();
|
|
1483
|
+
}, [host, reloadPresentedHost]);
|
|
1484
|
+
const files = typeof summary === "object" ? summary.files : [];
|
|
1485
|
+
const index = state !== void 0 && files[state.index] !== void 0 ? state.index : 0;
|
|
1486
|
+
const file = files[index];
|
|
1487
|
+
const diffState = useChangesDiff((value) => file === void 0 ? void 0 : value[changesDiffUrl(sessionId, seq, index)]);
|
|
1488
|
+
(0, react.useEffect)(() => {
|
|
1489
|
+
if (file !== void 0 && diffState === void 0) loadChangesDiff(sessionId, seq, index);
|
|
1490
|
+
}, [
|
|
1491
|
+
file,
|
|
1492
|
+
diffState,
|
|
1493
|
+
sessionId,
|
|
1494
|
+
seq,
|
|
1495
|
+
index,
|
|
1496
|
+
loadChangesDiff
|
|
1497
|
+
]);
|
|
1498
|
+
const phase = usePresentedOpen((value) => file === void 0 ? void 0 : value[changedFileUrl(sessionId, seq, index)]);
|
|
1499
|
+
const [menuOpen, setMenuOpen] = (0, react.useState)(false);
|
|
1500
|
+
const split = state?.split === true;
|
|
1501
|
+
const wrap = state?.wrap === true;
|
|
1502
|
+
const native = host !== null && host !== "error" && host.available && phase !== "nativeUnavailable";
|
|
1503
|
+
const summaryState = summary === void 0 || summary === "loading" ? "loading" : summary === "missing" ? "missing" : "ready";
|
|
1504
|
+
return (0, react_jsx_runtime.jsxs)("div", {
|
|
1505
|
+
className: ReviewTab_module_css_default.root,
|
|
1506
|
+
"data-changes-review": true,
|
|
1507
|
+
"data-review-state": summaryState,
|
|
1508
|
+
children: [
|
|
1509
|
+
(0, react_jsx_runtime.jsxs)("div", {
|
|
1510
|
+
className: ReviewTab_module_css_default.header,
|
|
1511
|
+
children: [
|
|
1512
|
+
file === void 0 ? (0, react_jsx_runtime.jsx)("span", {
|
|
1513
|
+
className: ReviewTab_module_css_default.selectorLabel,
|
|
1514
|
+
children: t("review.title", { turn: String(coordinates.turn) })
|
|
1515
|
+
}) : (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Menu, {
|
|
1516
|
+
className: ReviewTab_module_css_default.selector,
|
|
1517
|
+
open: menuOpen,
|
|
1518
|
+
autoFocus: true,
|
|
1519
|
+
portal: true,
|
|
1520
|
+
align: "start",
|
|
1521
|
+
dense: true,
|
|
1522
|
+
onClose: () => {
|
|
1523
|
+
setMenuOpen(false);
|
|
1524
|
+
},
|
|
1525
|
+
anchor: (0, react_jsx_runtime.jsxs)("button", {
|
|
1526
|
+
type: "button",
|
|
1527
|
+
className: ReviewTab_module_css_default.selectorButton,
|
|
1528
|
+
"aria-haspopup": "menu",
|
|
1529
|
+
"aria-expanded": menuOpen,
|
|
1530
|
+
"aria-label": t("review.selectFile"),
|
|
1531
|
+
title: file.display,
|
|
1532
|
+
"data-review-file": file.path,
|
|
1533
|
+
onClick: () => {
|
|
1534
|
+
setMenuOpen((value) => !value);
|
|
1535
|
+
},
|
|
1536
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
1537
|
+
className: ReviewTab_module_css_default.selectorText,
|
|
1538
|
+
children: file.display
|
|
1539
|
+
}), (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutline14, { size: 12 })]
|
|
1540
|
+
}),
|
|
1541
|
+
items: files.map((entry, at) => ({
|
|
1542
|
+
id: String(at),
|
|
1543
|
+
label: (0, react_jsx_runtime.jsxs)("span", {
|
|
1544
|
+
className: ReviewTab_module_css_default.item,
|
|
1545
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
1546
|
+
className: ReviewTab_module_css_default.itemPath,
|
|
1547
|
+
children: entry.display
|
|
1548
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1549
|
+
className: ReviewTab_module_css_default.itemCounts,
|
|
1550
|
+
children: (0, react_jsx_runtime.jsx)(Counts, {
|
|
1551
|
+
file: entry,
|
|
1552
|
+
t
|
|
1553
|
+
})
|
|
1554
|
+
})]
|
|
1555
|
+
})
|
|
1556
|
+
})),
|
|
1557
|
+
selectedId: String(index),
|
|
1558
|
+
onSelect: (id) => {
|
|
1559
|
+
actions.selected(tab.id, Number(id));
|
|
1560
|
+
setMenuOpen(false);
|
|
1561
|
+
}
|
|
1562
|
+
}),
|
|
1563
|
+
file !== void 0 && (0, react_jsx_runtime.jsx)("span", {
|
|
1564
|
+
className: ReviewTab_module_css_default.counts,
|
|
1565
|
+
children: (0, react_jsx_runtime.jsx)(Counts, {
|
|
1566
|
+
file,
|
|
1567
|
+
t
|
|
1568
|
+
})
|
|
1569
|
+
}),
|
|
1570
|
+
(0, react_jsx_runtime.jsxs)("span", {
|
|
1571
|
+
className: ReviewTab_module_css_default.tools,
|
|
1572
|
+
children: [
|
|
1573
|
+
(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
|
|
1574
|
+
label: t(split ? "review.unified" : "review.split"),
|
|
1575
|
+
side: "bottom",
|
|
1576
|
+
delayMs: 500,
|
|
1577
|
+
children: (0, react_jsx_runtime.jsx)("button", {
|
|
1578
|
+
type: "button",
|
|
1579
|
+
className: ReviewTab_module_css_default.tool,
|
|
1580
|
+
"aria-pressed": split,
|
|
1581
|
+
"aria-label": t("review.splitAria"),
|
|
1582
|
+
"data-review-tool": "split",
|
|
1583
|
+
onClick: () => {
|
|
1584
|
+
actions.toggledSplit(tab.id);
|
|
1585
|
+
},
|
|
1586
|
+
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPanelLeftOutline16, {})
|
|
1587
|
+
})
|
|
1588
|
+
}),
|
|
1589
|
+
(0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
|
|
1590
|
+
label: t(wrap ? "review.nowrap" : "review.wrap"),
|
|
1591
|
+
side: "bottom",
|
|
1592
|
+
delayMs: 500,
|
|
1593
|
+
children: (0, react_jsx_runtime.jsx)("button", {
|
|
1594
|
+
type: "button",
|
|
1595
|
+
className: ReviewTab_module_css_default.tool,
|
|
1596
|
+
"aria-pressed": wrap,
|
|
1597
|
+
"aria-label": t("review.wrapAria"),
|
|
1598
|
+
"data-review-tool": "wrap",
|
|
1599
|
+
onClick: () => {
|
|
1600
|
+
actions.toggledWrap(tab.id);
|
|
1601
|
+
},
|
|
1602
|
+
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconWrapLinesOutline16, {})
|
|
1603
|
+
})
|
|
1604
|
+
}),
|
|
1605
|
+
file !== void 0 && (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
|
|
1606
|
+
label: t("review.openFile"),
|
|
1607
|
+
side: "bottom",
|
|
1608
|
+
delayMs: 500,
|
|
1609
|
+
children: (0, react_jsx_runtime.jsx)("button", {
|
|
1610
|
+
type: "button",
|
|
1611
|
+
className: ReviewTab_module_css_default.tool,
|
|
1612
|
+
"aria-label": t("review.openFileAria", { name: file.display }),
|
|
1613
|
+
"data-review-tool": "open-file",
|
|
1614
|
+
onClick: () => {
|
|
1615
|
+
tab.actions.openResource(fileAddressFor(sessionId, cwd, file.path));
|
|
1616
|
+
},
|
|
1617
|
+
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconCodeOutline16, {})
|
|
1618
|
+
})
|
|
1619
|
+
}),
|
|
1620
|
+
file !== void 0 && native && (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Tooltip, {
|
|
1621
|
+
label: t(phase === "error" ? "diff.openNativeError" : "diff.openNative"),
|
|
1622
|
+
side: "bottom",
|
|
1623
|
+
delayMs: 500,
|
|
1624
|
+
children: (0, react_jsx_runtime.jsx)("button", {
|
|
1625
|
+
type: "button",
|
|
1626
|
+
className: ReviewTab_module_css_default.tool,
|
|
1627
|
+
disabled: phase === "opening",
|
|
1628
|
+
"data-review-tool": "open-native",
|
|
1629
|
+
"aria-label": t("diff.openNativeAria", { name: file.display }),
|
|
1630
|
+
"data-error": phase === "error" || void 0,
|
|
1631
|
+
onClick: () => {
|
|
1632
|
+
openChanged(sessionId, seq, index);
|
|
1633
|
+
},
|
|
1634
|
+
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconRightUpOutline16, {})
|
|
1635
|
+
})
|
|
1636
|
+
})
|
|
1637
|
+
]
|
|
1638
|
+
})
|
|
1639
|
+
]
|
|
1640
|
+
}),
|
|
1641
|
+
summaryState === "loading" && (0, react_jsx_runtime.jsx)("p", {
|
|
1642
|
+
className: ReviewTab_module_css_default.status,
|
|
1643
|
+
role: "status",
|
|
1644
|
+
children: t("diff.loading")
|
|
1645
|
+
}),
|
|
1646
|
+
summaryState === "missing" && (0, react_jsx_runtime.jsx)("p", {
|
|
1647
|
+
className: ReviewTab_module_css_default.status,
|
|
1648
|
+
children: t("diff.missing")
|
|
1649
|
+
}),
|
|
1650
|
+
file !== void 0 && (0, react_jsx_runtime.jsx)(FileBody, {
|
|
1651
|
+
state: diffState,
|
|
1652
|
+
split,
|
|
1653
|
+
wrap,
|
|
1654
|
+
t,
|
|
1655
|
+
retry: () => {
|
|
1656
|
+
loadChangesDiff(sessionId, seq, index);
|
|
1657
|
+
}
|
|
1658
|
+
})
|
|
1659
|
+
]
|
|
1660
|
+
});
|
|
1661
|
+
}
|
|
1662
|
+
/** The selected file's comparison, or the state that stands in for it. */
|
|
1663
|
+
function FileBody({ state, split, wrap, retry, t }) {
|
|
1664
|
+
if (state === void 0 || state === "loading") return (0, react_jsx_runtime.jsx)("p", {
|
|
1665
|
+
className: ReviewTab_module_css_default.status,
|
|
1666
|
+
role: "status",
|
|
1667
|
+
children: t("diff.loading")
|
|
1668
|
+
});
|
|
1669
|
+
if (state === "missing") return (0, react_jsx_runtime.jsx)("p", {
|
|
1670
|
+
className: ReviewTab_module_css_default.status,
|
|
1671
|
+
children: t("diff.missing")
|
|
1672
|
+
});
|
|
1673
|
+
if (state === "error") return (0, react_jsx_runtime.jsxs)("div", {
|
|
1674
|
+
className: ReviewTab_module_css_default.status,
|
|
1675
|
+
children: [(0, react_jsx_runtime.jsx)("span", { children: t("diff.error") }), (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
1676
|
+
size: "sm",
|
|
1677
|
+
onClick: retry,
|
|
1678
|
+
children: t("presented.retry")
|
|
1679
|
+
})]
|
|
1680
|
+
});
|
|
1681
|
+
if (state.kind === "binary") return (0, react_jsx_runtime.jsx)("p", {
|
|
1682
|
+
className: ReviewTab_module_css_default.status,
|
|
1683
|
+
children: t("diff.binary")
|
|
1684
|
+
});
|
|
1685
|
+
if (state.kind === "oversized") return (0, react_jsx_runtime.jsx)("p", {
|
|
1686
|
+
className: ReviewTab_module_css_default.status,
|
|
1687
|
+
children: t("diff.oversized")
|
|
1688
|
+
});
|
|
1689
|
+
return (0, react_jsx_runtime.jsx)(TextDiff, {
|
|
1690
|
+
diff: state,
|
|
1691
|
+
split,
|
|
1692
|
+
wrap,
|
|
1693
|
+
t
|
|
1694
|
+
});
|
|
1695
|
+
}
|
|
1696
|
+
/** The kind a paired row carries: a deletion or addition on either side, otherwise context. */
|
|
1697
|
+
function splitRowKind(row) {
|
|
1698
|
+
return row.left?.kind === "del" ? "del" : row.right?.kind === "add" ? "add" : "context";
|
|
1699
|
+
}
|
|
1700
|
+
function hunkHeader(hunk) {
|
|
1701
|
+
return `@@ -${hunk.oldStart},${hunk.oldLines} +${hunk.newStart},${hunk.newLines} @@`;
|
|
1702
|
+
}
|
|
1703
|
+
/**
|
|
1704
|
+
* The side-by-side view without wrapping: two columns that clip their long
|
|
1705
|
+
* lines and scroll sideways together, so a long line on one side never runs
|
|
1706
|
+
* under the other and both sides show the same columns of text. Every line is
|
|
1707
|
+
* one fixed-height row, which keeps the sides aligned.
|
|
1708
|
+
*/
|
|
1709
|
+
function SplitColumns({ hunks }) {
|
|
1710
|
+
const paired = (0, react.useMemo)(() => hunks.map((hunk) => ({
|
|
1711
|
+
header: hunkHeader(hunk),
|
|
1712
|
+
rows: splitRows(hunk)
|
|
1713
|
+
})), [hunks]);
|
|
1714
|
+
const columns = (0, react.useRef)({
|
|
1715
|
+
left: null,
|
|
1716
|
+
right: null
|
|
1717
|
+
});
|
|
1718
|
+
const follow = (side) => (event) => {
|
|
1719
|
+
const other = columns.current[side === "left" ? "right" : "left"];
|
|
1720
|
+
if (other !== null && other.scrollLeft !== event.currentTarget.scrollLeft) other.scrollLeft = event.currentTarget.scrollLeft;
|
|
1721
|
+
};
|
|
1722
|
+
return (0, react_jsx_runtime.jsx)("div", {
|
|
1723
|
+
className: ReviewTab_module_css_default.columns,
|
|
1724
|
+
children: ["left", "right"].map((side) => (0, react_jsx_runtime.jsx)("div", {
|
|
1725
|
+
className: ReviewTab_module_css_default.column,
|
|
1726
|
+
"data-diff-side": side,
|
|
1727
|
+
ref: (element) => {
|
|
1728
|
+
columns.current[side] = element;
|
|
1729
|
+
},
|
|
1730
|
+
onScroll: follow(side),
|
|
1731
|
+
children: paired.map((hunk, position) => (0, react_jsx_runtime.jsxs)("section", {
|
|
1732
|
+
className: ReviewTab_module_css_default.hunk,
|
|
1733
|
+
children: [(0, react_jsx_runtime.jsx)("div", {
|
|
1734
|
+
className: ReviewTab_module_css_default.hunkHeader,
|
|
1735
|
+
children: hunk.header
|
|
1736
|
+
}), hunk.rows.map((row, at) => {
|
|
1737
|
+
const cell = row[side];
|
|
1738
|
+
return (0, react_jsx_runtime.jsxs)("div", {
|
|
1739
|
+
className: `${ReviewTab_module_css_default.sideLine} ${cell === void 0 ? ReviewTab_module_css_default.empty : ReviewTab_module_css_default[cell.kind]}`,
|
|
1740
|
+
"data-diff-line": splitRowKind(row),
|
|
1741
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
1742
|
+
className: ReviewTab_module_css_default.number,
|
|
1743
|
+
children: cell?.no ?? ""
|
|
1744
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1745
|
+
className: ReviewTab_module_css_default.text,
|
|
1746
|
+
children: cell?.text ?? ""
|
|
1747
|
+
})]
|
|
1748
|
+
}, at);
|
|
1749
|
+
})]
|
|
1750
|
+
}, position))
|
|
1751
|
+
}, side))
|
|
1752
|
+
});
|
|
1753
|
+
}
|
|
1754
|
+
/** The hunks of a text comparison with their line numbers, unified or side by side. */
|
|
1755
|
+
function TextDiff({ diff, split, wrap, t }) {
|
|
1756
|
+
const note = noteOf(diff);
|
|
1757
|
+
const { hunks, truncated } = (0, react.useMemo)(() => renderedHunks(diff.hunks), [diff.hunks]);
|
|
1758
|
+
return (0, react_jsx_runtime.jsxs)("div", {
|
|
1759
|
+
className: ReviewTab_module_css_default.body,
|
|
1760
|
+
"data-review-view": split ? "split" : "unified",
|
|
1761
|
+
"data-review-wrap": wrap || void 0,
|
|
1762
|
+
children: [
|
|
1763
|
+
note !== void 0 && (0, react_jsx_runtime.jsx)("p", {
|
|
1764
|
+
className: ReviewTab_module_css_default.note,
|
|
1765
|
+
children: t(note)
|
|
1766
|
+
}),
|
|
1767
|
+
diff.coarse && (0, react_jsx_runtime.jsx)("p", {
|
|
1768
|
+
className: ReviewTab_module_css_default.note,
|
|
1769
|
+
"data-diff-coarse": true,
|
|
1770
|
+
children: t("diff.coarse")
|
|
1771
|
+
}),
|
|
1772
|
+
truncated && (0, react_jsx_runtime.jsx)("p", {
|
|
1773
|
+
className: ReviewTab_module_css_default.note,
|
|
1774
|
+
"data-diff-truncated": true,
|
|
1775
|
+
children: t("diff.truncated", { count: String(5e3) })
|
|
1776
|
+
}),
|
|
1777
|
+
split && !wrap ? (0, react_jsx_runtime.jsx)(SplitColumns, { hunks }) : hunks.map((hunk, position) => (0, react_jsx_runtime.jsxs)("section", {
|
|
1778
|
+
className: ReviewTab_module_css_default.hunk,
|
|
1779
|
+
children: [(0, react_jsx_runtime.jsx)("div", {
|
|
1780
|
+
className: ReviewTab_module_css_default.hunkHeader,
|
|
1781
|
+
children: hunkHeader(hunk)
|
|
1782
|
+
}), split ? splitRows(hunk).map((row, at) => (0, react_jsx_runtime.jsxs)("div", {
|
|
1783
|
+
className: ReviewTab_module_css_default.splitLine,
|
|
1784
|
+
"data-diff-line": splitRowKind(row),
|
|
1785
|
+
children: [(0, react_jsx_runtime.jsxs)("span", {
|
|
1786
|
+
className: `${ReviewTab_module_css_default.cell} ${row.left === void 0 ? ReviewTab_module_css_default.empty : ReviewTab_module_css_default[row.left.kind]}`,
|
|
1787
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
1788
|
+
className: ReviewTab_module_css_default.number,
|
|
1789
|
+
children: row.left?.no ?? ""
|
|
1790
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1791
|
+
className: ReviewTab_module_css_default.text,
|
|
1792
|
+
children: row.left?.text ?? ""
|
|
1793
|
+
})]
|
|
1794
|
+
}), (0, react_jsx_runtime.jsxs)("span", {
|
|
1795
|
+
className: `${ReviewTab_module_css_default.cell} ${row.right === void 0 ? ReviewTab_module_css_default.empty : ReviewTab_module_css_default[row.right.kind]}`,
|
|
1796
|
+
children: [(0, react_jsx_runtime.jsx)("span", {
|
|
1797
|
+
className: ReviewTab_module_css_default.number,
|
|
1798
|
+
children: row.right?.no ?? ""
|
|
1799
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1800
|
+
className: ReviewTab_module_css_default.text,
|
|
1801
|
+
children: row.right?.text ?? ""
|
|
1802
|
+
})]
|
|
1803
|
+
})]
|
|
1804
|
+
}, at)) : hunkRows(hunk).map((row, at) => (0, react_jsx_runtime.jsxs)("div", {
|
|
1805
|
+
className: `${ReviewTab_module_css_default.line} ${ReviewTab_module_css_default[row.kind]}`,
|
|
1806
|
+
"data-diff-line": row.kind,
|
|
1807
|
+
children: [
|
|
1808
|
+
(0, react_jsx_runtime.jsx)("span", {
|
|
1809
|
+
className: ReviewTab_module_css_default.number,
|
|
1810
|
+
children: row.old ?? ""
|
|
1811
|
+
}),
|
|
1812
|
+
(0, react_jsx_runtime.jsx)("span", {
|
|
1813
|
+
className: ReviewTab_module_css_default.number,
|
|
1814
|
+
children: row.new ?? ""
|
|
1815
|
+
}),
|
|
1816
|
+
(0, react_jsx_runtime.jsx)("span", {
|
|
1817
|
+
className: ReviewTab_module_css_default.sign,
|
|
1818
|
+
children: row.kind === "add" ? "+" : row.kind === "del" ? "-" : " "
|
|
1819
|
+
}),
|
|
1820
|
+
(0, react_jsx_runtime.jsx)("span", {
|
|
1821
|
+
className: ReviewTab_module_css_default.text,
|
|
1822
|
+
children: row.text
|
|
1823
|
+
})
|
|
1824
|
+
]
|
|
1825
|
+
}, at))]
|
|
1826
|
+
}, position))
|
|
1827
|
+
]
|
|
1828
|
+
});
|
|
1829
|
+
}
|
|
1830
|
+
//#endregion
|
|
1831
|
+
//#region lib/types/client/review-definition.js
|
|
1832
|
+
/** The tab kind this package owns. */
|
|
1833
|
+
const CHANGES_REVIEW_KIND = "changes-review";
|
|
1834
|
+
/** This implementation's identity in the tab system, and the key its body registers under. */
|
|
1835
|
+
const CHANGES_REVIEW_ID = "@deepseek-ai/dsh-client-ui-deliverables";
|
|
1836
|
+
/**
|
|
1837
|
+
* The review type's registry definition.
|
|
1838
|
+
* @param t - namespace-bound translate, read fresh on every title call.
|
|
1839
|
+
* @returns the definition to register.
|
|
1840
|
+
*/
|
|
1841
|
+
function changesReviewDefinition(t) {
|
|
1842
|
+
return {
|
|
1843
|
+
id: CHANGES_REVIEW_ID,
|
|
1844
|
+
kind: CHANGES_REVIEW_KIND,
|
|
1845
|
+
patterns: ["dsh-resource://changes-review/**"],
|
|
1846
|
+
priority: "builtin",
|
|
1847
|
+
canOpen: (address) => parseChangesReviewAddress(address) !== void 0,
|
|
1848
|
+
title: (address) => {
|
|
1849
|
+
const turn = parseChangesReviewAddress(address)?.turn;
|
|
1850
|
+
return turn === void 0 ? address : t("review.title", { turn: String(turn) });
|
|
1851
|
+
}
|
|
1852
|
+
};
|
|
1853
|
+
}
|
|
1854
|
+
//#endregion
|
|
1855
|
+
//#region lib/types/client/review-store.js
|
|
1856
|
+
/**
|
|
1857
|
+
* The review tab's view state: which listed file is shown, whether hunks are
|
|
1858
|
+
* drawn side by side, and whether long lines wrap. One bucket per tab, so two
|
|
1859
|
+
* reviews in one session keep their own choices; the bucket ends with the
|
|
1860
|
+
* tab record's signal.
|
|
1861
|
+
*/
|
|
1862
|
+
function bucket(state, tabId) {
|
|
1863
|
+
const tab = state.byTab[tabId];
|
|
1864
|
+
if (tab === void 0) throw new Error(`ui-deliverables: no review state for tab "${tabId}"`);
|
|
1865
|
+
return tab;
|
|
1866
|
+
}
|
|
1867
|
+
/**
|
|
1868
|
+
* Declare the review tab's store; the registration declares it as an
|
|
1869
|
+
* exclusive store, so the framework mints one instance per session.
|
|
1870
|
+
* @returns the store handle to declare on the registration.
|
|
1871
|
+
*/
|
|
1872
|
+
function createReviewStore() {
|
|
1873
|
+
return (0, _deepseek_ai_dsh_client_store.defineStore)({
|
|
1874
|
+
init: () => ({ byTab: {} }),
|
|
1875
|
+
actions: {
|
|
1876
|
+
/**
|
|
1877
|
+
* Apply a navigation: seed the tab on its first one, then show the navigated file.
|
|
1878
|
+
* @param d - draft state.
|
|
1879
|
+
* @param tabId - the tab being drawn.
|
|
1880
|
+
* @param revision - the navigation revision being applied.
|
|
1881
|
+
* @param index - the file index the navigation named, or the current one.
|
|
1882
|
+
*/
|
|
1883
|
+
navigated: (d, tabId, revision, index) => {
|
|
1884
|
+
const tab = d.byTab[tabId];
|
|
1885
|
+
if (tab === void 0) d.byTab[tabId] = {
|
|
1886
|
+
index,
|
|
1887
|
+
split: false,
|
|
1888
|
+
wrap: false,
|
|
1889
|
+
navigated: revision
|
|
1890
|
+
};
|
|
1891
|
+
else {
|
|
1892
|
+
tab.index = index;
|
|
1893
|
+
tab.navigated = revision;
|
|
1894
|
+
}
|
|
1895
|
+
},
|
|
1896
|
+
/**
|
|
1897
|
+
* Show another listed file.
|
|
1898
|
+
* @param d - draft state.
|
|
1899
|
+
* @param tabId - the tab being drawn.
|
|
1900
|
+
* @param index - original index in the summary's files array.
|
|
1901
|
+
*/
|
|
1902
|
+
selected: (d, tabId, index) => {
|
|
1903
|
+
bucket(d, tabId).index = index;
|
|
1904
|
+
},
|
|
1905
|
+
/**
|
|
1906
|
+
* Switch between the unified and the side-by-side view.
|
|
1907
|
+
* @param d - draft state.
|
|
1908
|
+
* @param tabId - the tab being drawn.
|
|
1909
|
+
*/
|
|
1910
|
+
toggledSplit: (d, tabId) => {
|
|
1911
|
+
const tab = bucket(d, tabId);
|
|
1912
|
+
tab.split = !tab.split;
|
|
1913
|
+
},
|
|
1914
|
+
/**
|
|
1915
|
+
* Switch line wrapping.
|
|
1916
|
+
* @param d - draft state.
|
|
1917
|
+
* @param tabId - the tab being drawn.
|
|
1918
|
+
*/
|
|
1919
|
+
toggledWrap: (d, tabId) => {
|
|
1920
|
+
const tab = bucket(d, tabId);
|
|
1921
|
+
tab.wrap = !tab.wrap;
|
|
1922
|
+
},
|
|
1923
|
+
/**
|
|
1924
|
+
* Drop a tab's bucket once its record is gone.
|
|
1925
|
+
* @param d - draft state.
|
|
1926
|
+
* @param tabId - the tab that ended.
|
|
1927
|
+
*/
|
|
1928
|
+
forget: (d, tabId) => {
|
|
1929
|
+
d.byTab = Object.fromEntries(Object.entries(d.byTab).filter(([id]) => id !== tabId));
|
|
1930
|
+
}
|
|
1931
|
+
}
|
|
1932
|
+
});
|
|
1933
|
+
}
|
|
1934
|
+
//#endregion
|
|
824
1935
|
//#region lib/types/client/locales.js
|
|
825
|
-
/** `deliverables` namespace dictionaries. */
|
|
1936
|
+
/** `deliverables` namespace dictionaries: cards, comparison tab, and file-mention copy. */
|
|
826
1937
|
/** Dictionary namespace owned by this plugin. */
|
|
827
1938
|
const NS = "deliverables";
|
|
828
1939
|
/** Simplified Chinese dictionary (the key-set source of truth). */
|
|
@@ -834,7 +1945,7 @@ window.__ModuleLoader__.load({
|
|
|
834
1945
|
"presented.directoryOpened": "已请求打开所在文件夹",
|
|
835
1946
|
"presented.revealed": "已请求在文件管理器中显示",
|
|
836
1947
|
"presented.revealing": "正在文件管理器中显示…",
|
|
837
|
-
"presented.unavailable": "
|
|
1948
|
+
"presented.unavailable": "此主机没有可用的桌面,无法使用外部程序打开文件或文件夹;文件仍可在侧边栏预览",
|
|
838
1949
|
"presented.retry": "重试",
|
|
839
1950
|
"presented.hostError": "无法读取主机桌面信息",
|
|
840
1951
|
"presented.directory": "打开所在文件夹",
|
|
@@ -860,10 +1971,40 @@ window.__ModuleLoader__.load({
|
|
|
860
1971
|
"row.error": "交付失败",
|
|
861
1972
|
"row.stopped": "已中断",
|
|
862
1973
|
"row.inspect": "查看调用",
|
|
863
|
-
"
|
|
864
|
-
"
|
|
865
|
-
"
|
|
866
|
-
"
|
|
1974
|
+
"changes.title": "已编辑 {count} 个文件",
|
|
1975
|
+
"changes.added": "+{count}",
|
|
1976
|
+
"changes.deleted": "-{count}",
|
|
1977
|
+
"changes.binary": "二进制",
|
|
1978
|
+
"changes.openReview": "在侧边栏查看本轮改动",
|
|
1979
|
+
"changes.all": "全部 {count} 个文件",
|
|
1980
|
+
"changes.expandAria": "展开全部 {count} 个改动文件",
|
|
1981
|
+
"changes.collapse": "收起",
|
|
1982
|
+
"changes.collapseAria": "收起改动文件列表",
|
|
1983
|
+
"changes.oversized": "过大",
|
|
1984
|
+
"changes.viewDiff": "查看 {name} 的改动",
|
|
1985
|
+
"review.title": "第 {turn} 轮改动",
|
|
1986
|
+
"review.selectFile": "选择要查看的文件",
|
|
1987
|
+
"review.split": "切换为左右对比",
|
|
1988
|
+
"review.unified": "切换为单栏对比",
|
|
1989
|
+
"review.splitAria": "左右对比",
|
|
1990
|
+
"review.wrap": "开启自动换行",
|
|
1991
|
+
"review.nowrap": "关闭自动换行",
|
|
1992
|
+
"review.wrapAria": "自动换行",
|
|
1993
|
+
"review.openFile": "在侧边栏打开整个文件",
|
|
1994
|
+
"review.openFileAria": "在侧边栏打开 {name}",
|
|
1995
|
+
"diff.openNativeAria": "用默认应用打开 {name}",
|
|
1996
|
+
"diff.loading": "正在读取改动…",
|
|
1997
|
+
"diff.missing": "这轮改动的内容已不可用",
|
|
1998
|
+
"diff.error": "无法读取改动",
|
|
1999
|
+
"diff.binary": "二进制文件,无法显示改动",
|
|
2000
|
+
"diff.oversized": "文件过大,无法显示改动",
|
|
2001
|
+
"diff.created": "本轮新建的文件",
|
|
2002
|
+
"diff.deleted": "本轮删除的文件",
|
|
2003
|
+
"diff.unchanged": "两侧内容相同",
|
|
2004
|
+
"diff.coarse": "逐行对比超时,按整个文件替换显示",
|
|
2005
|
+
"diff.truncated": "只显示前 {count} 行",
|
|
2006
|
+
"diff.openNative": "用默认应用打开",
|
|
2007
|
+
"diff.openNativeError": "打开失败,点击重试"
|
|
867
2008
|
};
|
|
868
2009
|
/** English dictionary (same key set). */
|
|
869
2010
|
const en = {
|
|
@@ -874,7 +2015,7 @@ window.__ModuleLoader__.load({
|
|
|
874
2015
|
"presented.directoryOpened": "Requested opening containing folder",
|
|
875
2016
|
"presented.revealed": "Requested display in file manager",
|
|
876
2017
|
"presented.revealing": "Showing in file manager…",
|
|
877
|
-
"presented.unavailable": "This Host has no desktop available to open files or folders",
|
|
2018
|
+
"presented.unavailable": "This Host has no desktop available to open files or folders in external apps. Files can still be previewed in the sidebar.",
|
|
878
2019
|
"presented.retry": "Retry",
|
|
879
2020
|
"presented.hostError": "Could not read the Host desktop information",
|
|
880
2021
|
"presented.directory": "Open containing folder",
|
|
@@ -900,30 +2041,70 @@ window.__ModuleLoader__.load({
|
|
|
900
2041
|
"row.error": "Delivery failed",
|
|
901
2042
|
"row.stopped": "Interrupted",
|
|
902
2043
|
"row.inspect": "Inspect call",
|
|
903
|
-
"
|
|
904
|
-
"
|
|
905
|
-
"
|
|
906
|
-
"
|
|
2044
|
+
"changes.title": "Edited {count} files",
|
|
2045
|
+
"changes.added": "+{count}",
|
|
2046
|
+
"changes.deleted": "-{count}",
|
|
2047
|
+
"changes.binary": "binary",
|
|
2048
|
+
"changes.openReview": "Review this turn’s changes in the sidebar",
|
|
2049
|
+
"changes.all": "All {count} files",
|
|
2050
|
+
"changes.expandAria": "Show all {count} changed files",
|
|
2051
|
+
"changes.collapse": "Collapse",
|
|
2052
|
+
"changes.collapseAria": "Collapse changed files",
|
|
2053
|
+
"changes.oversized": "too large",
|
|
2054
|
+
"changes.viewDiff": "View changes to {name}",
|
|
2055
|
+
"review.title": "Review · turn {turn}",
|
|
2056
|
+
"review.selectFile": "Choose the file to review",
|
|
2057
|
+
"review.split": "Switch to split view",
|
|
2058
|
+
"review.unified": "Switch to unified view",
|
|
2059
|
+
"review.splitAria": "Split view",
|
|
2060
|
+
"review.wrap": "Enable line wrap",
|
|
2061
|
+
"review.nowrap": "Disable line wrap",
|
|
2062
|
+
"review.wrapAria": "Line wrap",
|
|
2063
|
+
"review.openFile": "Open the whole file in the sidebar",
|
|
2064
|
+
"review.openFileAria": "Open {name} in sidebar",
|
|
2065
|
+
"diff.openNativeAria": "Open {name} in default app",
|
|
2066
|
+
"diff.loading": "Reading changes…",
|
|
2067
|
+
"diff.missing": "The contents of this turn’s changes are no longer available",
|
|
2068
|
+
"diff.error": "Could not read the changes",
|
|
2069
|
+
"diff.binary": "Binary file; changes cannot be shown",
|
|
2070
|
+
"diff.oversized": "File too large; changes cannot be shown",
|
|
2071
|
+
"diff.created": "Created in this turn",
|
|
2072
|
+
"diff.deleted": "Deleted in this turn",
|
|
2073
|
+
"diff.unchanged": "Both sides hold the same lines",
|
|
2074
|
+
"diff.coarse": "Line comparison timed out; shown as a whole-file replacement",
|
|
2075
|
+
"diff.truncated": "Showing the first {count} lines",
|
|
2076
|
+
"diff.openNative": "Open in default app",
|
|
2077
|
+
"diff.openNativeError": "Could not open. Click to retry."
|
|
907
2078
|
};
|
|
908
2079
|
//#endregion
|
|
909
2080
|
//#region lib/types/client/index.js
|
|
910
|
-
/** Required services for the tail-slot
|
|
2081
|
+
/** Required services for the tail-slot and tab-type registrations and their dictionaries. */
|
|
911
2082
|
const inject = [
|
|
912
2083
|
"slots",
|
|
913
2084
|
"locale",
|
|
914
2085
|
"uiConversation",
|
|
915
2086
|
"remote",
|
|
916
|
-
"remote.session"
|
|
2087
|
+
"remote.session",
|
|
2088
|
+
"sidebarRightTabs",
|
|
2089
|
+
"sidebarRight"
|
|
917
2090
|
];
|
|
918
2091
|
/**
|
|
919
|
-
* Client plugin body: register the dictionaries
|
|
2092
|
+
* Client plugin body: register the dictionaries, the turn-tail entry, and the comparison tab type.
|
|
920
2093
|
* @param ctx - client root context.
|
|
921
2094
|
*/
|
|
922
2095
|
function apply(ctx) {
|
|
923
2096
|
const opener = new PresentedOpenController();
|
|
924
|
-
|
|
2097
|
+
const summaries = new ChangesSummaryStore();
|
|
2098
|
+
const diffs = new ChangesDiffStore();
|
|
2099
|
+
ctx.effect(() => () => Promise.all([
|
|
2100
|
+
opener.dispose(),
|
|
2101
|
+
summaries.dispose(),
|
|
2102
|
+
diffs.dispose()
|
|
2103
|
+
]));
|
|
925
2104
|
ctx.on("connection/reset", () => {
|
|
926
2105
|
opener.resetHost();
|
|
2106
|
+
summaries.reset();
|
|
2107
|
+
diffs.reset();
|
|
927
2108
|
});
|
|
928
2109
|
ctx.uiConversation.events.register(deliverablesDefinition);
|
|
929
2110
|
ctx.effect(() => ctx.locale.register(NS, {
|
|
@@ -932,23 +2113,48 @@ window.__ModuleLoader__.load({
|
|
|
932
2113
|
}), "ui-deliverables: dictionaries");
|
|
933
2114
|
ctx.slots.inject("conversation.chat.turnTail", () => ctx.slots.register({
|
|
934
2115
|
name: "conversation.chat.turnTail",
|
|
935
|
-
|
|
2116
|
+
id: "@deepseek-ai/dsh-client-ui-deliverables",
|
|
936
2117
|
locale: NS,
|
|
937
2118
|
inject: () => ({
|
|
938
2119
|
hooks: {
|
|
939
2120
|
presentedOpen: opener.state,
|
|
940
|
-
presentedHost: opener.host
|
|
2121
|
+
presentedHost: opener.host,
|
|
2122
|
+
changesSummary: summaries.state
|
|
941
2123
|
},
|
|
942
2124
|
reloadPresentedHost: () => opener.loadHost(),
|
|
943
|
-
|
|
2125
|
+
loadChangesSummary: (sessionId, seq) => summaries.load(sessionId, seq),
|
|
2126
|
+
openPresented: (sessionId, seq, index, action) => opener.open(sessionId, seq, index, action),
|
|
2127
|
+
openChanged: (sessionId, seq, index) => opener.openChanged(sessionId, seq, index),
|
|
2128
|
+
openChangesReview: (coordinates, index) => {
|
|
2129
|
+
ctx.sidebarRight.openResource(changesReviewAddress(coordinates), { params: { index } });
|
|
2130
|
+
}
|
|
944
2131
|
})
|
|
945
|
-
},
|
|
2132
|
+
}, DeliverablesTail));
|
|
946
2133
|
ctx.slots.inject("tool.call.toolview", () => ctx.slots.register({
|
|
947
2134
|
name: "tool.call.toolview",
|
|
948
2135
|
key: "present",
|
|
949
2136
|
locale: NS
|
|
950
2137
|
}, PresentRow));
|
|
951
2138
|
const t = ctx.locale.bind(NS);
|
|
2139
|
+
ctx.effect(() => ctx.sidebarRightTabs.register(changesReviewDefinition(t)), "ui-deliverables: changes-review type");
|
|
2140
|
+
ctx.effect(() => ctx.slots.inject("sidebar.right.pane.tab", () => ctx.slots.register({
|
|
2141
|
+
name: "sidebar.right.pane.tab",
|
|
2142
|
+
key: CHANGES_REVIEW_ID,
|
|
2143
|
+
locale: NS,
|
|
2144
|
+
store: createReviewStore(),
|
|
2145
|
+
inject: () => ({
|
|
2146
|
+
hooks: {
|
|
2147
|
+
changesSummary: summaries.state,
|
|
2148
|
+
changesDiff: diffs.state,
|
|
2149
|
+
presentedOpen: opener.state,
|
|
2150
|
+
presentedHost: opener.host
|
|
2151
|
+
},
|
|
2152
|
+
loadChangesSummary: (sessionId, seq) => summaries.load(sessionId, seq),
|
|
2153
|
+
loadChangesDiff: (sessionId, seq, index) => diffs.load(sessionId, seq, index),
|
|
2154
|
+
reloadPresentedHost: () => opener.loadHost(),
|
|
2155
|
+
openChanged: (sessionId, seq, index) => opener.openChanged(sessionId, seq, index)
|
|
2156
|
+
})
|
|
2157
|
+
}, ReviewTab)), "ui-deliverables: changes-review body");
|
|
952
2158
|
ctx.provide("chatFileMentions", { forClosing(owner) {
|
|
953
2159
|
const paths = selectProducedFiles(owner);
|
|
954
2160
|
const presented = presentedForClosing(owner);
|
|
@@ -957,10 +2163,8 @@ window.__ModuleLoader__.load({
|
|
|
957
2163
|
} });
|
|
958
2164
|
}
|
|
959
2165
|
//#endregion
|
|
960
|
-
exports.ProducedFiles = ProducedFiles;
|
|
961
2166
|
exports.apply = apply;
|
|
962
2167
|
exports.inject = inject;
|
|
963
|
-
exports.producedForClosing = producedForClosing;
|
|
964
2168
|
return module.exports;
|
|
965
2169
|
}
|
|
966
2170
|
});
|