@qqbrowser/qbot-dsh 0.0.7 → 0.0.8
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/node_modules/@deepseek-ai/dsh-agent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-default-model/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-instructions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-loop/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-presets/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-agent-tool-presentation/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-anonymous-user-id/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-api-gateway/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-api-remotes/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-app-boot/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-atomic-write/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-attachment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-attachment-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-base/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-bash-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-bash-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-brand/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-connection/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-hmr/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-locale/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-locale/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-modules/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-runtime/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-schema-form/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-agent-preset/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-attachment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-commands/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/lib/client.js +5 -5
- package/node_modules/@deepseek-ai/dsh-client-ui-conversation/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-cordis/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-deliverables/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-browse/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-browse/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-directory-picker-native/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-goal/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-input-trigger/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-jobs/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-jobs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-layout/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-message-feedback/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-message-feedback/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-model-selection/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-permission-presets/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-permission-presets/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-plan/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-primitives/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-general/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-models/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-settings-plugins/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-sidebar/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-skill/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-skill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-slots/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-subagent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-theme/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-tool/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-tool/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/lib/client.js +3 -3
- package/node_modules/@deepseek-ai/dsh-client-ui-trajectory/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-user-questions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workflow-run/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +1 -1
- package/node_modules/@deepseek-ai/dsh-client-ui-workspace/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-web/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-client-web-react/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-cmdline/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-code-runtime/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-code-runtime-worker-thread/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-compact/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-feedback/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-command-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-commands/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction-basic/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-compaction-tool-result-pruner/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-content-review/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-cordis-client-runner/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-cordis-host-runner/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-credentials/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-credentials-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs-observation-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-fs-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-goal-round-driver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-headless/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-home-paths/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-apiproxy/package.json +1 -1
- 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 +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-browse/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-directory-picker-native/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-frontend-static/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-plugin-inventory/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-host-webserver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-invariants/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-jobs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-jobs-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-launch-environment/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-deepseek/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-gateway-openai/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-pi-ai/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-llm-retry/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-mcp-client/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-message-feedback/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-native-command/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-output-retention/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-permission-presets/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-persona/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-plan-mode/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-pwsh-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-pwsh-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-qb-auth/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-repeat-tool-reminder/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-schedule/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-scope/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-checkpoint-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-log-export/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-persistence/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-persistence-jsonl/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-projection/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-projection-cache/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-query/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-query-sqlite/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-reference/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-stats/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-telemetry/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-telemetry-otel/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-title/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-title-first-prompt-llm/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-session-title-llm/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-settings/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-settings-file/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-shell/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-shell-env/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-skill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-skill-badge/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-skill-filesystem/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-spill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-spill-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-spill-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage-domain/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-storage-json/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent-fork-in-process/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent-in-process-driver/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subagent-spawn-in-process/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subprocess/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-subprocess-local/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-system-prompt/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-terminal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-terminal-bash/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-time-context/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-timeout/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tmux-context/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-token-meter/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-ask-user/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-bash/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-bash-persistent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-call-timeout-policy/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-cordis/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-fs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-fs-search/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-goal/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-jobs/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-pwsh/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-ralph/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-skill/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-str-replace-editor/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-subagent/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-subagent-control/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-subagent-report/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-todo/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-web/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tool-workflow/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-tools/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-loader/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-protocol/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-typert-registry/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-user-approval/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-user-questions/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web-app/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/{index-9qKLIol0.js → index-Dqw48FrP.js} +24 -24
- package/node_modules/@deepseek-ai/dsh-web-frontend/dist/index.html +1 -1
- package/node_modules/@deepseek-ai/dsh-web-frontend/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-web-search-deepseek/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-workflow/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-workflow-worker-thread/package.json +1 -1
- package/node_modules/@deepseek-ai/dsh-workspace/package.json +1 -1
- package/package.json +1 -1
- package/lib/args-DEvDJqPu.js +0 -9
- package/lib/args-DUXD3Svv.js +0 -9
- package/lib/args-LilI9aDQ.js +0 -9
- package/lib/dump-config-B-jqGSDT.js +0 -1
- package/lib/dump-config-B2DyR4dg.js +0 -1
- package/lib/dump-config-BITsCIFc.js +0 -1
- package/lib/dump-config-BgUmNyUE.js +0 -1
- package/lib/dump-config-C3uXMpb-.js +0 -1
- package/lib/dump-config-CAkgocAS.js +0 -1
- package/lib/dump-config-DRyeYoJB.js +0 -1
- package/lib/dump-config-k4Eekk03.js +0 -1
- package/lib/plugin-BVDd3xNU.js +0 -6
- package/lib/plugin-CgVEvqQM.js +0 -6
- package/lib/plugin-CuZ9TQG6.js +0 -6
- package/lib/plugin-DMh4mi7q.js +0 -6
- package/lib/plugin-Dio596JS.js +0 -6
- package/lib/plugin-DtRgTK19.js +0 -6
- package/lib/plugin-GoEpG7Lt.js +0 -6
- package/lib/plugin-peKc7sV-.js +0 -6
- package/lib/profile-boot-9oPlPpAm.js +0 -5
- package/lib/profile-boot-B1cY1jRh.js +0 -5
- package/lib/profile-boot-B4JIT6XQ.js +0 -1
- package/lib/profile-boot-B4SoKsRj.js +0 -5
- package/lib/profile-boot-BAgU8KvC.js +0 -5
- package/lib/profile-boot-BE0MdixS.js +0 -5
- package/lib/profile-boot-BigmdPnS.js +0 -1
- package/lib/profile-boot-Bk4jvF5L.js +0 -1
- package/lib/profile-boot-CC3d8SUg.js +0 -5
- package/lib/profile-boot-CWiF3YiI.js +0 -1
- package/lib/profile-boot-DF9Fqljf.js +0 -1
- package/lib/profile-boot-DWe3gnqV.js +0 -1
- package/lib/profile-boot-DWtNaORu.js +0 -5
- package/lib/profile-boot-DrHl5XxG.js +0 -5
- package/lib/profile-boot-KD3x0Z2S.js +0 -1
- package/lib/profile-boot-o7vgfnwK.js +0 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/lib/types-CNjZgO4h.js +0 -1
- package/node_modules/@deepseek-ai/dsh-sandbox-windows-acl/lib/types-CPImuxZD.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
var X=Object.defineProperty;var a=(p,x)=>X(p,"name",{value:x,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-input-trigger",factory:a(p=>{var x={exports:{}},g=x.exports;Object.defineProperty(g,Symbol.toStringTag,{value:"Module"});let N=p("@deepseek-ai/cordis"),b=p("@deepseek-ai/dsh-client-runtime/client"),h=p("react/jsx-runtime"),f=p("react"),O=p("@deepseek-ai/dsh-client-ui-primitives");const C=/[\p{L}\p{N}_]/u,w=/\s/u;function A(e,t,i){if(t===0)return!0;const s=e.charAt(t-1);return w.test(s)?!0:!(C.test(s)||i==="/"&&(s==="/"||s===":"&&t>=2&&!w.test(e.charAt(t-2))))}a(A,"boundaryOk");const $=a((e,t,i)=>{if(i.tier==="frozen")return null;for(let s=t-1;s>=0;s--){const r=e.charAt(s);if(w.test(r))return null;if(!(r!=="/"&&r!=="@")&&!(i.tier==="claimed"&&r==="/")&&A(e,s,r))return{trigger:r,query:e.slice(s+1,t),position:e.search(/\S/)===s?"leading":"inline",span:{start:s,end:t,draftRev:0}}}return null},"detectTrigger"),F={open:!1,hit:null,generation:0,groups:[],highlight:null};function _(e,t){return{...e,groups:t.map(i=>({source:i,status:"pending",items:[]})),highlight:null}}a(_,"seedGroups");const v=a(e=>e.open||e.hit!==null||e.groups.length>0||e.highlight!==null?{open:!1,hit:null,generation:e.generation,groups:[],highlight:null}:e,"closed");function k(e){for(const t of e)if(t.status==="ready"&&t.items.length>0)return{source:t.source,index:0};return null}a(k,"firstHighlight");function S(e,t){if(!e)return null;const i=t.find(s=>s.source===e.source);return i&&i.status==="ready"&&e.index<i.items.length?e:null}a(S,"validHighlight");function R(e){const t=[];for(const i of e)if(i.status==="ready")for(let s=0;s<i.items.length;s++)t.push({source:i.source,index:s});return t}a(R,"positions");const j=a(e=>e.every(t=>t.status==="ready"&&t.items.length===0),"allReadyEmpty"),z=a((e,t)=>{switch(t.type){case"hit":return t.hit===null?v(e):{open:!0,hit:t.hit,generation:e.generation+1,groups:e.groups.map(i=>({source:i.source,status:"pending",items:[]})),highlight:null};case"source-settled":{if(!e.open||t.generation!==e.generation)return e;const i=e.groups.findIndex(n=>n.source===t.source);if(i<0)return e;const s=t.items??[],r=e.groups.map((n,c)=>c===i?{source:n.source,status:"ready",items:s}:n);if(j(r))return v(e);const o=S(e.highlight,r)??k(r);return{...e,groups:r,highlight:o}}case"source-failed":{if(!e.open||t.generation!==e.generation||!e.groups.some(r=>r.source===t.source))return e;const i=e.groups.filter(r=>r.source!==t.source);if(i.length===0||j(i))return v(e);const s=S(e.highlight,i)??k(i);return{...e,groups:i,highlight:s}}case"move":{if(!e.open)return e;const i=R(e.groups);if(i.length===0)return e;const s=e.highlight,r=s?i.findIndex(n=>n.source===s.source&&n.index===s.index):-1,o=i[r<0?t.dir===1?0:i.length-1:(r+t.dir+i.length)%i.length];return o===void 0||s&&o.source===s.source&&o.index===s.index?e:{...e,highlight:o}}case"close":return v(e)}},"menuReduce");var T=class{static{a(this,"InputTriggerController")}deps;menu=(0,b.createSnapshotStore)(F);launcher=(0,b.createSnapshotStore)(null);lexicon=(0,b.createSnapshotStore)(new Map);hit=null;fetch=null;disposed=!1;lexiconOffs=new Map;constructor(e){this.deps=e;const t=this.project();for(const i of e.roster.all())i.warm?.(t),this.watchLexicon(i,t);this.refreshLexicon()}track(e,t,i,s){if(this.disposed)return;const r=this.launcher.getSnapshot()!==null;this.clearLauncher();const o=$(e,t,i);if(o===null){this.hit=null,this.stopFetch(),this.reduce({type:"close"});return}const n={...o,span:{...o.span,draftRev:s}},c=this.menu.getSnapshot(),l=!r&&c.open&&c.hit!==null&&c.hit.trigger===n.trigger&&c.hit.query===n.query&&c.hit.span.start===n.span.start&&c.hit.span.end===n.span.end;if(this.hit=n,l)return;const u=this.deps.roster.sources(n.trigger);if(u.length===0){this.stopFetch(),this.reduce({type:"close"});return}(r||!c.open||c.hit===null||c.hit.trigger!==n.trigger)&&this.menu.set(_(this.menu.getSnapshot(),u.map(m=>m.name))),this.reduce({type:"hit",hit:n}),this.fetchCandidates(n,u)}toggleSource(e,t){if(this.disposed)return;if(this.launcher.getSnapshot()===e&&this.menu.getSnapshot().open){this.dismiss();return}const i=this.deps.roster.sources(t.trigger).find(s=>s.name===e);if(i===void 0){this.dismiss();return}this.stopFetch(),this.hit=t,this.launcher.set(e),this.menu.set(_(this.menu.getSnapshot(),[e])),this.reduce({type:"hit",hit:t}),this.fetchCandidates(t,[i])}pick(e,t){const i=this.menu.getSnapshot(),s=this.hit;if(this.disposed||!i.open||s===null)return;const r=i.groups.find(l=>l.source===e),o=r!==void 0&&r.status==="ready"?r.items[t]:void 0;if(o===void 0)return;const n=this.deps.roster.sources(s.trigger).find(l=>l.name===e);if(n===void 0)return;const c=n.onPick({candidate:o,session:this.project(),position:s.position,via:"menu",span:s.span});this.stopFetch(),this.reduce({type:"close"}),this.execute(c,s.span)}arbitrate(e,t){if(t||this.disposed)return"pass";const i=this.menu.getSnapshot();if(!i.open)return"pass";switch(e){case"up":return this.reduce({type:"move",dir:-1}),"consumed";case"down":return this.reduce({type:"move",dir:1}),"consumed";case"escape":return this.stopFetch(),this.reduce({type:"close"}),"consumed";case"enter":return i.highlight===null?"pass":(this.pick(i.highlight.source,i.highlight.index),"pick-highlighted")}}onSpace(){const e=this.hit;if(this.disposed||e===null||e.position!=="leading")return!1;const t=e.trigger+e.query,i=this.project();for(const s of this.deps.roster.sources(e.trigger)){if(s.matchSpace===void 0)continue;const r=s.matchSpace(i,t);if(r!==void 0)return r==="handled"?!0:this.execute(r,e.span)}return!1}serializeReference(e,t,i){const s=this.deps.roster.all().find(r=>r.name===e);return s?.codec===void 0?Promise.reject(new Error(`slash: no serializer for reference source "${e}"`)):s.codec.serialize(t,i)}async adjudicate(e,t){const i=this.project();for(const s of this.deps.roster.all()){if(t.aborted)throw t.reason instanceof Error?t.reason:new Error("slash adjudication aborted");if(s.matchEnter===void 0||!e.startsWith(s.trigger))continue;const r=await s.matchEnter(i,e,t);if(r!==void 0)return r}}sourceRemoved(e){const t=this.menu.getSnapshot();t.open&&t.hit!==null&&t.hit.trigger===e.trigger&&this.reduce({type:"source-failed",generation:t.generation,source:e.name}),this.lexiconOffs.get(e)?.(),this.lexiconOffs.delete(e),this.refreshLexicon()}sourceAdded(e){const t=this.project();e.warm?.(t),this.watchLexicon(e,t),this.refreshLexicon()}dismiss(){this.disposed||(this.stopFetch(),this.reduce({type:"close"}))}dispose(){this.disposed=!0,this.stopFetch(),this.reduce({type:"close"}),this.hit=null;for(const e of this.lexiconOffs.values())e();this.lexiconOffs.clear()}project(){return{sessionId:this.deps.sessionId}}execute(e,t){const{actx:i}=this.deps;return e===void 0||e==="handled"?!1:"claim"in e?i.bail(i,"slash/input-begin-command",{claim:e.claim,span:t})===!0:"text"in e?i.bail(i,"slash/input-insert-text",{text:e.text,span:t})===!0:i.bail(i,"slash/input-insert-reference",{reference:e.insert,span:t})===!0}refreshLexicon(){const e=this.project(),t=new Map;for(const i of this.deps.roster.all()){if(i.lexicon===void 0)continue;let s;try{s=i.lexicon(e)}catch(o){console.error(`[ui-input-trigger] source "${i.name}" lexicon failed:`,o);continue}if(s===void 0)continue;const r=t.get(i.trigger);t.set(i.trigger,r===void 0?s:[...r,...s])}this.lexicon.set(t)}watchLexicon(e,t){e.lexicon===void 0||e.subscribeLexicon===void 0||this.lexiconOffs.set(e,e.subscribeLexicon(t,()=>{this.refreshLexicon()}))}fetchCandidates(e,t){this.stopFetch();const i=new AbortController;this.fetch=i;const s=this.menu.getSnapshot().generation,r=this.project();for(const o of t)o.candidates(r,{query:e.query,position:e.position,signal:i.signal}).then(n=>{i.signal.aborted||this.reduce({type:"source-settled",generation:s,source:o.name,items:n})},n=>{i.signal.aborted||(console.error(`[ui-input-trigger] source "${o.name}" candidates failed:`,n),this.reduce({type:"source-failed",generation:s,source:o.name}))})}stopFetch(){this.fetch?.abort(),this.fetch=null}clearLauncher(){this.launcher.getSnapshot()!==null&&this.launcher.set(null)}reduce(e){const t=this.menu.getSnapshot(),i=z(t,e);i!==t&&this.menu.set(i),i.open||this.clearLauncher()}},M=class extends N.Service{static{a(this,"InputTriggerService")}static inject=["sessions"];live={sources:[],controllers:new Map};constructor(e){super(e,"inputTriggers")}registerSource(e){const{live:t}=this;if(t.sources.some(i=>i.trigger===e.trigger&&i.name===e.name))throw new Error(`slash source "${e.trigger}${e.name}" is already registered`);t.sources.push(e);for(const i of t.controllers.values())try{i.sourceAdded(e)}catch(s){console.error(`[ui-input-trigger] source "${e.trigger}${e.name}" late-registration setup failed:`,s)}return()=>{const i=t.sources.indexOf(e);if(!(i<0)){t.sources.splice(i,1);for(const s of t.controllers.values())s.sourceRemoved(e)}}}sessionOf(e){const t=this.sessions().scopeOf(e);if(t===void 0)throw new Error("slash.sessionOf requires a session scope");const{live:i}=this,s=i.controllers.get(t);if(s!==void 0)return s;const r=new T({actx:e,sessionId:t,roster:{sources:a(o=>i.sources.filter(n=>n.trigger===o).sort((n,c)=>(n.order??0)-(c.order??0)),"sources"),all:a(()=>i.sources,"all")}});return i.controllers.set(t,r),e.effect(()=>()=>{r.dispose(),i.controllers.delete(t)},"slash: session controller"),r}sessions(){const e=this.ctx.get("sessions");if(e===void 0)throw new Error("ui-input-trigger: sessions service unavailable");return e}};function E(e){var t,i,s="";if(typeof e=="string"||typeof e=="number")s+=e;else if(typeof e=="object")if(Array.isArray(e)){var r=e.length;for(t=0;t<r;t++)e[t]&&(i=E(e[t]))&&(s&&(s+=" "),s+=i)}else for(i in e)e[i]&&(s&&(s+=" "),s+=i);return s}a(E,"r");function D(){for(var e,t,i=0,s="",r=arguments.length;i<r;i++)(e=arguments[i])&&(t=E(e))&&(s&&(s+=" "),s+=t);return s}a(D,"clsx");const H=".kbM7TW_menu{z-index:100;--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);min-width:min(260px,100%);max-width:min(537px,100%);max-height:320px;box-shadow:var(--dsw-shadow-lv3);border-radius:12px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 4px);left:0;overflow:hidden}.kbM7TW_viewport{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.kbM7TW_item{cursor:pointer;width:100%;min-height:40px;color:var(--dsw-alias-label-primary);text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;line-height:22px;display:flex}.kbM7TW_item:hover,.kbM7TW_item.kbM7TW_active{background:var(--dsw-alias-interactive-bg-hover)}.kbM7TW_itemIcon{width:16px;height:16px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:center;align-items:center;display:inline-flex}.kbM7TW_itemName{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:40%;overflow:hidden}.kbM7TW_itemDescription{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dsw-alias-label-tertiary);flex:1;overflow:hidden}.kbM7TW_groupTitle{color:var(--dsw-alias-label-tertiary);padding:8px 10px;font-size:12px;line-height:16px}.kbM7TW_loading{min-height:40px;color:var(--dsw-alias-label-dimmed);align-items:center;padding:8px 10px;font-size:14px;line-height:22px;display:flex}",W="@deepseek-ai/dsh-client-ui-input-trigger/MenuView.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(W)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-input-trigger",e.dataset.pluginCss=W,e.textContent=H,document.head.appendChild(e)}var d={itemDescription:"kbM7TW_itemDescription",active:"kbM7TW_active",loading:"kbM7TW_loading",itemName:"kbM7TW_itemName",groupTitle:"kbM7TW_groupTitle",viewport:"kbM7TW_viewport",item:"kbM7TW_item",menu:"kbM7TW_menu",itemIcon:"kbM7TW_itemIcon"};const P=320;function y(e,t){return`dsh-slash-option-${e}-${t}`}a(y,"optionId");function q({menu:e,onPick:t,onDismiss:i,t:s}){const r=(0,f.useSyncExternalStore)(l=>e.subscribe(l),()=>e.getSnapshot()),o=(0,f.useRef)(null),n=(0,O.useAnchoredMaxHeight)(o,P,r),c=r.open?r.highlight:null;return(0,f.useEffect)(()=>{c!==null&&document.getElementById(y(c.source,c.index))?.scrollIntoView({block:"nearest"})},[c]),(0,f.useEffect)(()=>{if(!r.open)return;const l=a(u=>{u.target instanceof Node&&(o.current?.contains(u.target)||o.current?.closest("[data-composer-card]")?.contains(u.target)||i())},"onPointerDown");return document.addEventListener("pointerdown",l,!0),()=>{document.removeEventListener("pointerdown",l,!0)}},[r.open,i]),r.open?(0,h.jsx)("div",{ref:o,className:d.menu,style:{maxHeight:n},role:"listbox","aria-label":s("suggestions.aria"),"aria-activedescendant":c!==null?y(c.source,c.index):void 0,children:(0,h.jsx)("div",{className:d.viewport,children:r.groups.map(l=>l.status==="ready"&&l.items.length===0?null:(0,h.jsxs)(f.Fragment,{children:[(0,h.jsx)("div",{className:d.groupTitle,role:"presentation","data-source":l.source,children:s(l.source)}),l.status==="pending"?(0,h.jsx)("div",{className:d.loading,"data-source":l.source,children:s("loading")}):l.items.map((u,m)=>{const I=c!==null&&c.source===l.source&&c.index===m;return(0,h.jsxs)("button",{id:y(l.source,m),type:"button",role:"option","aria-selected":I,className:D(d.item,I&&d.active),onMouseDown:a(J=>{J.preventDefault(),t(l.source,m)},"onMouseDown"),children:[u.icon!==void 0&&(0,h.jsx)("span",{className:d.itemIcon,"aria-hidden":!0,children:u.icon}),(0,h.jsx)("span",{className:d.itemName,children:u.name}),u.description!==void 0&&(0,h.jsx)("span",{className:d.itemDescription,children:u.description})]},`${l.source}:${u.name}`)})]},l.source))})}):null}a(q,"MenuView");const V={command:"命令",skill:"技能",subagent:"子智能体",loading:"正在加载…","suggestions.aria":"触发候选建议"},G={command:"Commands",skill:"Skills",subagent:"Subagents",loading:"Loading…","suggestions.aria":"Trigger suggestions"},L="slash.menu",U=["sessions","locale"];function B(e){e.plugin(M),e.effect(()=>e.locale.register(L,{zh:V,en:G}),"ui-input-trigger: menu dictionaries"),e.inject(["slots","inputTriggers","sessions"],t=>{const i=t.inputTriggers,s=t.sessions;t.slots.inject("conversation.input.overlay",()=>t.slots.register({name:"conversation.input.overlay",id:"slash-menu",order:0,locale:L,inject:a(r=>{const o=s.scope(r);if(o===void 0)throw new Error(`ui-input-trigger: session "${String(r)}" resolved no scope`);const n=i.sessionOf(o);return{menu:n.menu,onPick:a((c,l)=>{n.pick(c,l)},"onPick"),onDismiss:a(()=>{n.dismiss()},"onDismiss")}},"inject")},q))})}return a(B,"apply"),g.InputTriggerController=T,g.InputTriggerService=M,g.apply=B,g.inject=U,x.exports},"factory")});
|
|
1
|
+
var X=Object.defineProperty;var a=(p,x)=>X(p,"name",{value:x,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-input-trigger",factory:a(p=>{var x={exports:{}},g=x.exports;Object.defineProperty(g,Symbol.toStringTag,{value:"Module"});let N=p("@deepseek-ai/cordis"),b=p("@deepseek-ai/dsh-client-runtime/client"),h=p("react/jsx-runtime"),f=p("react"),O=p("@deepseek-ai/dsh-client-ui-primitives");const C=/[\p{L}\p{N}_]/u,w=/\s/u;function A(e,t,i){if(t===0)return!0;const s=e.charAt(t-1);return w.test(s)?!0:!(C.test(s)||i==="/"&&(s==="/"||s===":"&&t>=2&&!w.test(e.charAt(t-2))))}a(A,"boundaryOk");const $=a((e,t,i)=>{if(i.tier==="frozen")return null;for(let s=t-1;s>=0;s--){const r=e.charAt(s);if(w.test(r))return null;if(!(r!=="/"&&r!=="@")&&!(i.tier==="claimed"&&r==="/")&&A(e,s,r))return{trigger:r,query:e.slice(s+1,t),position:e.search(/\S/)===s?"leading":"inline",span:{start:s,end:t,draftRev:0}}}return null},"detectTrigger"),F={open:!1,hit:null,generation:0,groups:[],highlight:null};function _(e,t){return{...e,groups:t.map(i=>({source:i,status:"pending",items:[]})),highlight:null}}a(_,"seedGroups");const v=a(e=>e.open||e.hit!==null||e.groups.length>0||e.highlight!==null?{open:!1,hit:null,generation:e.generation,groups:[],highlight:null}:e,"closed");function k(e){for(const t of e)if(t.status==="ready"&&t.items.length>0)return{source:t.source,index:0};return null}a(k,"firstHighlight");function S(e,t){if(!e)return null;const i=t.find(s=>s.source===e.source);return i&&i.status==="ready"&&e.index<i.items.length?e:null}a(S,"validHighlight");function R(e){const t=[];for(const i of e)if(i.status==="ready")for(let s=0;s<i.items.length;s++)t.push({source:i.source,index:s});return t}a(R,"positions");const j=a(e=>e.every(t=>t.status==="ready"&&t.items.length===0),"allReadyEmpty"),z=a((e,t)=>{switch(t.type){case"hit":return t.hit===null?v(e):{open:!0,hit:t.hit,generation:e.generation+1,groups:e.groups.map(i=>({source:i.source,status:"pending",items:[]})),highlight:null};case"source-settled":{if(!e.open||t.generation!==e.generation)return e;const i=e.groups.findIndex(n=>n.source===t.source);if(i<0)return e;const s=t.items??[],r=e.groups.map((n,c)=>c===i?{source:n.source,status:"ready",items:s}:n);if(j(r))return v(e);const o=S(e.highlight,r)??k(r);return{...e,groups:r,highlight:o}}case"source-failed":{if(!e.open||t.generation!==e.generation||!e.groups.some(r=>r.source===t.source))return e;const i=e.groups.filter(r=>r.source!==t.source);if(i.length===0||j(i))return v(e);const s=S(e.highlight,i)??k(i);return{...e,groups:i,highlight:s}}case"move":{if(!e.open)return e;const i=R(e.groups);if(i.length===0)return e;const s=e.highlight,r=s?i.findIndex(n=>n.source===s.source&&n.index===s.index):-1,o=i[r<0?t.dir===1?0:i.length-1:(r+t.dir+i.length)%i.length];return o===void 0||s&&o.source===s.source&&o.index===s.index?e:{...e,highlight:o}}case"close":return v(e)}},"menuReduce");var T=class{static{a(this,"InputTriggerController")}deps;menu=(0,b.createSnapshotStore)(F);launcher=(0,b.createSnapshotStore)(null);lexicon=(0,b.createSnapshotStore)(new Map);hit=null;fetch=null;disposed=!1;lexiconOffs=new Map;constructor(e){this.deps=e;const t=this.project();for(const i of e.roster.all())i.warm?.(t),this.watchLexicon(i,t);this.refreshLexicon()}track(e,t,i,s){if(this.disposed)return;const r=this.launcher.getSnapshot()!==null;this.clearLauncher();const o=$(e,t,i);if(o===null){this.hit=null,this.stopFetch(),this.reduce({type:"close"});return}const n={...o,span:{...o.span,draftRev:s}},c=this.menu.getSnapshot(),l=!r&&c.open&&c.hit!==null&&c.hit.trigger===n.trigger&&c.hit.query===n.query&&c.hit.span.start===n.span.start&&c.hit.span.end===n.span.end;if(this.hit=n,l)return;const u=this.deps.roster.sources(n.trigger);if(u.length===0){this.stopFetch(),this.reduce({type:"close"});return}(r||!c.open||c.hit===null||c.hit.trigger!==n.trigger)&&this.menu.set(_(this.menu.getSnapshot(),u.map(m=>m.name))),this.reduce({type:"hit",hit:n}),this.fetchCandidates(n,u)}toggleSource(e,t){if(this.disposed)return;if(this.launcher.getSnapshot()===e&&this.menu.getSnapshot().open){this.dismiss();return}const i=this.deps.roster.sources(t.trigger).find(s=>s.name===e);if(i===void 0){this.dismiss();return}this.stopFetch(),this.hit=t,this.launcher.set(e),this.menu.set(_(this.menu.getSnapshot(),[e])),this.reduce({type:"hit",hit:t}),this.fetchCandidates(t,[i])}pick(e,t){const i=this.menu.getSnapshot(),s=this.hit;if(this.disposed||!i.open||s===null)return;const r=i.groups.find(l=>l.source===e),o=r!==void 0&&r.status==="ready"?r.items[t]:void 0;if(o===void 0)return;const n=this.deps.roster.sources(s.trigger).find(l=>l.name===e);if(n===void 0)return;const c=n.onPick({candidate:o,session:this.project(),position:s.position,via:"menu",span:s.span});this.stopFetch(),this.reduce({type:"close"}),this.execute(c,s.span)}arbitrate(e,t){if(t||this.disposed)return"pass";const i=this.menu.getSnapshot();if(!i.open)return"pass";switch(e){case"up":return this.reduce({type:"move",dir:-1}),"consumed";case"down":return this.reduce({type:"move",dir:1}),"consumed";case"escape":return this.stopFetch(),this.reduce({type:"close"}),"consumed";case"enter":return i.highlight===null?"pass":(this.pick(i.highlight.source,i.highlight.index),"pick-highlighted")}}onSpace(){const e=this.hit;if(this.disposed||e===null||e.position!=="leading")return!1;const t=e.trigger+e.query,i=this.project();for(const s of this.deps.roster.sources(e.trigger)){if(s.matchSpace===void 0)continue;const r=s.matchSpace(i,t);if(r!==void 0)return r==="handled"?!0:this.execute(r,e.span)}return!1}serializeReference(e,t,i){const s=this.deps.roster.all().find(r=>r.name===e);return s?.codec===void 0?Promise.reject(new Error(`slash: no serializer for reference source "${e}"`)):s.codec.serialize(t,i)}async adjudicate(e,t){const i=this.project();for(const s of this.deps.roster.all()){if(t.aborted)throw t.reason instanceof Error?t.reason:new Error("slash adjudication aborted");if(s.matchEnter===void 0||!e.startsWith(s.trigger))continue;const r=await s.matchEnter(i,e,t);if(r!==void 0)return r}}sourceRemoved(e){const t=this.menu.getSnapshot();t.open&&t.hit!==null&&t.hit.trigger===e.trigger&&this.reduce({type:"source-failed",generation:t.generation,source:e.name}),this.lexiconOffs.get(e)?.(),this.lexiconOffs.delete(e),this.refreshLexicon()}sourceAdded(e){const t=this.project();e.warm?.(t),this.watchLexicon(e,t),this.refreshLexicon()}dismiss(){this.disposed||(this.stopFetch(),this.reduce({type:"close"}))}dispose(){this.disposed=!0,this.stopFetch(),this.reduce({type:"close"}),this.hit=null;for(const e of this.lexiconOffs.values())e();this.lexiconOffs.clear()}project(){return{sessionId:this.deps.sessionId}}execute(e,t){const{actx:i}=this.deps;return e===void 0||e==="handled"?!1:"claim"in e?i.bail(i,"slash/input-begin-command",{claim:e.claim,span:t})===!0:"text"in e?i.bail(i,"slash/input-insert-text",{text:e.text,span:t})===!0:i.bail(i,"slash/input-insert-reference",{reference:e.insert,span:t})===!0}refreshLexicon(){const e=this.project(),t=new Map;for(const i of this.deps.roster.all()){if(i.lexicon===void 0)continue;let s;try{s=i.lexicon(e)}catch(o){console.error(`[ui-input-trigger] source "${i.name}" lexicon failed:`,o);continue}if(s===void 0)continue;const r=t.get(i.trigger);t.set(i.trigger,r===void 0?s:[...r,...s])}this.lexicon.set(t)}watchLexicon(e,t){e.lexicon===void 0||e.subscribeLexicon===void 0||this.lexiconOffs.set(e,e.subscribeLexicon(t,()=>{this.refreshLexicon()}))}fetchCandidates(e,t){this.stopFetch();const i=new AbortController;this.fetch=i;const s=this.menu.getSnapshot().generation,r=this.project();for(const o of t)o.candidates(r,{query:e.query,position:e.position,signal:i.signal}).then(n=>{i.signal.aborted||this.reduce({type:"source-settled",generation:s,source:o.name,items:n})},n=>{i.signal.aborted||(console.error(`[ui-input-trigger] source "${o.name}" candidates failed:`,n),this.reduce({type:"source-failed",generation:s,source:o.name}))})}stopFetch(){this.fetch?.abort(),this.fetch=null}clearLauncher(){this.launcher.getSnapshot()!==null&&this.launcher.set(null)}reduce(e){const t=this.menu.getSnapshot(),i=z(t,e);i!==t&&this.menu.set(i),i.open||this.clearLauncher()}},M=class extends N.Service{static{a(this,"InputTriggerService")}static inject=["sessions"];live={sources:[],controllers:new Map};constructor(e){super(e,"inputTriggers")}registerSource(e){const{live:t}=this;if(t.sources.some(i=>i.trigger===e.trigger&&i.name===e.name))throw new Error(`slash source "${e.trigger}${e.name}" is already registered`);t.sources.push(e);for(const i of t.controllers.values())try{i.sourceAdded(e)}catch(s){console.error(`[ui-input-trigger] source "${e.trigger}${e.name}" late-registration setup failed:`,s)}return()=>{const i=t.sources.indexOf(e);if(!(i<0)){t.sources.splice(i,1);for(const s of t.controllers.values())s.sourceRemoved(e)}}}sessionOf(e){const t=this.sessions().scopeOf(e);if(t===void 0)throw new Error("slash.sessionOf requires a session scope");const{live:i}=this,s=i.controllers.get(t);if(s!==void 0)return s;const r=new T({actx:e,sessionId:t,roster:{sources:a(o=>i.sources.filter(n=>n.trigger===o).sort((n,c)=>(n.order??0)-(c.order??0)),"sources"),all:a(()=>i.sources,"all")}});return i.controllers.set(t,r),e.effect(()=>()=>{r.dispose(),i.controllers.delete(t)},"slash: session controller"),r}sessions(){const e=this.ctx.get("sessions");if(e===void 0)throw new Error("ui-input-trigger: sessions service unavailable");return e}};function E(e){var t,i,s="";if(typeof e=="string"||typeof e=="number")s+=e;else if(typeof e=="object")if(Array.isArray(e)){var r=e.length;for(t=0;t<r;t++)e[t]&&(i=E(e[t]))&&(s&&(s+=" "),s+=i)}else for(i in e)e[i]&&(s&&(s+=" "),s+=i);return s}a(E,"r");function D(){for(var e,t,i=0,s="",r=arguments.length;i<r;i++)(e=arguments[i])&&(t=E(e))&&(s&&(s+=" "),s+=t);return s}a(D,"clsx");const H=".kbM7TW_menu{z-index:100;--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);min-width:min(260px,100%);max-width:min(537px,100%);max-height:320px;box-shadow:var(--dsw-shadow-lv3);border-radius:12px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 4px);left:0;overflow:hidden}.kbM7TW_viewport{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.kbM7TW_item{cursor:pointer;width:100%;min-height:40px;color:var(--dsw-alias-label-primary);text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;line-height:22px;display:flex}.kbM7TW_item:hover,.kbM7TW_item.kbM7TW_active{background:var(--dsw-alias-interactive-bg-hover)}.kbM7TW_itemIcon{width:16px;height:16px;color:var(--dsw-alias-label-tertiary);flex:none;justify-content:center;align-items:center;display:inline-flex}.kbM7TW_itemName{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:40%;overflow:hidden}.kbM7TW_itemDescription{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dsw-alias-label-tertiary);flex:1;overflow:hidden}.kbM7TW_groupTitle{color:var(--dsw-alias-label-tertiary);padding:8px 10px;font-size:12px;line-height:16px}.kbM7TW_loading{min-height:40px;color:var(--dsw-alias-label-dimmed);align-items:center;padding:8px 10px;font-size:14px;line-height:22px;display:flex}",W="@deepseek-ai/dsh-client-ui-input-trigger/MenuView.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(W)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-input-trigger",e.dataset.pluginCss=W,e.textContent=H,document.head.appendChild(e)}var d={loading:"kbM7TW_loading",viewport:"kbM7TW_viewport",itemName:"kbM7TW_itemName",groupTitle:"kbM7TW_groupTitle",active:"kbM7TW_active",itemIcon:"kbM7TW_itemIcon",item:"kbM7TW_item",itemDescription:"kbM7TW_itemDescription",menu:"kbM7TW_menu"};const P=320;function y(e,t){return`dsh-slash-option-${e}-${t}`}a(y,"optionId");function q({menu:e,onPick:t,onDismiss:i,t:s}){const r=(0,f.useSyncExternalStore)(l=>e.subscribe(l),()=>e.getSnapshot()),o=(0,f.useRef)(null),n=(0,O.useAnchoredMaxHeight)(o,P,r),c=r.open?r.highlight:null;return(0,f.useEffect)(()=>{c!==null&&document.getElementById(y(c.source,c.index))?.scrollIntoView({block:"nearest"})},[c]),(0,f.useEffect)(()=>{if(!r.open)return;const l=a(u=>{u.target instanceof Node&&(o.current?.contains(u.target)||o.current?.closest("[data-composer-card]")?.contains(u.target)||i())},"onPointerDown");return document.addEventListener("pointerdown",l,!0),()=>{document.removeEventListener("pointerdown",l,!0)}},[r.open,i]),r.open?(0,h.jsx)("div",{ref:o,className:d.menu,style:{maxHeight:n},role:"listbox","aria-label":s("suggestions.aria"),"aria-activedescendant":c!==null?y(c.source,c.index):void 0,children:(0,h.jsx)("div",{className:d.viewport,children:r.groups.map(l=>l.status==="ready"&&l.items.length===0?null:(0,h.jsxs)(f.Fragment,{children:[(0,h.jsx)("div",{className:d.groupTitle,role:"presentation","data-source":l.source,children:s(l.source)}),l.status==="pending"?(0,h.jsx)("div",{className:d.loading,"data-source":l.source,children:s("loading")}):l.items.map((u,m)=>{const I=c!==null&&c.source===l.source&&c.index===m;return(0,h.jsxs)("button",{id:y(l.source,m),type:"button",role:"option","aria-selected":I,className:D(d.item,I&&d.active),onMouseDown:a(J=>{J.preventDefault(),t(l.source,m)},"onMouseDown"),children:[u.icon!==void 0&&(0,h.jsx)("span",{className:d.itemIcon,"aria-hidden":!0,children:u.icon}),(0,h.jsx)("span",{className:d.itemName,children:u.name}),u.description!==void 0&&(0,h.jsx)("span",{className:d.itemDescription,children:u.description})]},`${l.source}:${u.name}`)})]},l.source))})}):null}a(q,"MenuView");const V={command:"命令",skill:"技能",subagent:"子智能体",loading:"正在加载…","suggestions.aria":"触发候选建议"},G={command:"Commands",skill:"Skills",subagent:"Subagents",loading:"Loading…","suggestions.aria":"Trigger suggestions"},L="slash.menu",U=["sessions","locale"];function B(e){e.plugin(M),e.effect(()=>e.locale.register(L,{zh:V,en:G}),"ui-input-trigger: menu dictionaries"),e.inject(["slots","inputTriggers","sessions"],t=>{const i=t.inputTriggers,s=t.sessions;t.slots.inject("conversation.input.overlay",()=>t.slots.register({name:"conversation.input.overlay",id:"slash-menu",order:0,locale:L,inject:a(r=>{const o=s.scope(r);if(o===void 0)throw new Error(`ui-input-trigger: session "${String(r)}" resolved no scope`);const n=i.sessionOf(o);return{menu:n.menu,onPick:a((c,l)=>{n.pick(c,l)},"onPick"),onDismiss:a(()=>{n.dismiss()},"onDismiss")}},"inject")},q))})}return a(B,"apply"),g.InputTriggerController=T,g.InputTriggerService=M,g.apply=B,g.inject=U,x.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-input-trigger","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-input-trigger","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-locale"],"platform":"web"}},"license":"MIT","dependencies":{"clsx":"^2.0.0"},"peerDependencies":{"react":"^18.2.0","@deepseek-ai/dsh-client-locale":"^0.0.8","@deepseek-ai/dsh-client-ui-primitives":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-invariants":"^0.0.8","@deepseek-ai/cordis":"^4.0.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var I=Object.defineProperty;var a=(g,f)=>I(g,"name",{value:f,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-jobs",factory:a(g=>{var f={exports:{}},m=f.exports;Object.defineProperty(m,Symbol.toStringTag,{value:"Module"});let l=g("react/jsx-runtime"),d=g("react"),x=g("@deepseek-ai/dsh-client-ui-primitives");const y=".kHd2ZW_root{position:relative}.kHd2ZW_trigger{min-height:28px;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:3px;padding:3px 2px;font-size:12px;line-height:18px;display:inline-flex}.kHd2ZW_trigger:hover,.kHd2ZW_trigger:focus-visible{color:var(--dsw-alias-label-secondary)}.kHd2ZW_trigger svg{transition:transform .12s}.kHd2ZW_triggerOpen{transform:rotate(180deg)}.kHd2ZW_triggerDot{flex:none}.kHd2ZW_count{margin:0 5px}.kHd2ZW_menu{z-index:100;box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-specific-menu);--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);width:336px;max-width:min(400px,100vw - 32px);max-height:min(420px,100vh - 140px);box-shadow:var(--dsw-shadow-lv3);border-radius:12px;flex-direction:column;gap:1px;margin:0;padding:4px;list-style:none;display:flex;position:absolute;top:calc(100% + 5px);left:0;overflow:auto}.kHd2ZW_row{box-sizing:border-box;width:100%;min-height:32px;color:var(--dsw-alias-label-primary);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;line-height:18px;display:flex}.kHd2ZW_rowSettled{color:var(--dsw-alias-label-tertiary)}.kHd2ZW_rowDot{flex:none}.kHd2ZW_kind{background:var(--dsw-alias-fill-l2);color:var(--dsw-alias-label-secondary);border-radius:5px;flex:none;padding:0 6px;font-size:11px;line-height:18px}.kHd2ZW_label{min-width:0;font-family:var(--dsw-font-mono);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.kHd2ZW_status,.kHd2ZW_duration{color:var(--dsw-alias-label-tertiary);flex:none;font-size:11px;line-height:18px}.kHd2ZW_status{white-space:nowrap;text-overflow:ellipsis;max-width:40%;overflow:hidden}.kHd2ZW_duration{font-variant-numeric:tabular-nums}",k="@deepseek-ai/dsh-client-ui-jobs/JobListAction.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(k)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-jobs",e.dataset.pluginCss=k,e.textContent=y,document.head.appendChild(e)}var i={
|
|
1
|
+
var I=Object.defineProperty;var a=(g,f)=>I(g,"name",{value:f,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-jobs",factory:a(g=>{var f={exports:{}},m=f.exports;Object.defineProperty(m,Symbol.toStringTag,{value:"Module"});let l=g("react/jsx-runtime"),d=g("react"),x=g("@deepseek-ai/dsh-client-ui-primitives");const y=".kHd2ZW_root{position:relative}.kHd2ZW_trigger{min-height:28px;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:3px;padding:3px 2px;font-size:12px;line-height:18px;display:inline-flex}.kHd2ZW_trigger:hover,.kHd2ZW_trigger:focus-visible{color:var(--dsw-alias-label-secondary)}.kHd2ZW_trigger svg{transition:transform .12s}.kHd2ZW_triggerOpen{transform:rotate(180deg)}.kHd2ZW_triggerDot{flex:none}.kHd2ZW_count{margin:0 5px}.kHd2ZW_menu{z-index:100;box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-specific-menu);--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);width:336px;max-width:min(400px,100vw - 32px);max-height:min(420px,100vh - 140px);box-shadow:var(--dsw-shadow-lv3);border-radius:12px;flex-direction:column;gap:1px;margin:0;padding:4px;list-style:none;display:flex;position:absolute;top:calc(100% + 5px);left:0;overflow:auto}.kHd2ZW_row{box-sizing:border-box;width:100%;min-height:32px;color:var(--dsw-alias-label-primary);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;line-height:18px;display:flex}.kHd2ZW_rowSettled{color:var(--dsw-alias-label-tertiary)}.kHd2ZW_rowDot{flex:none}.kHd2ZW_kind{background:var(--dsw-alias-fill-l2);color:var(--dsw-alias-label-secondary);border-radius:5px;flex:none;padding:0 6px;font-size:11px;line-height:18px}.kHd2ZW_label{min-width:0;font-family:var(--dsw-font-mono);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.kHd2ZW_status,.kHd2ZW_duration{color:var(--dsw-alias-label-tertiary);flex:none;font-size:11px;line-height:18px}.kHd2ZW_status{white-space:nowrap;text-overflow:ellipsis;max-width:40%;overflow:hidden}.kHd2ZW_duration{font-variant-numeric:tabular-nums}",k="@deepseek-ai/dsh-client-ui-jobs/JobListAction.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(k)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-jobs",e.dataset.pluginCss=k,e.textContent=y,document.head.appendChild(e)}var i={trigger:"kHd2ZW_trigger",rowSettled:"kHd2ZW_rowSettled",kind:"kHd2ZW_kind",root:"kHd2ZW_root",menu:"kHd2ZW_menu",row:"kHd2ZW_row",rowDot:"kHd2ZW_rowDot",triggerDot:"kHd2ZW_triggerDot",label:"kHd2ZW_label",status:"kHd2ZW_status",triggerOpen:"kHd2ZW_triggerOpen",duration:"kHd2ZW_duration",count:"kHd2ZW_count"};const j=[];function h(e){return e.status==="running"||e.status==="stopping"}a(h,"isLive");function v(e){throw new Error(`unhandled job status: ${JSON.stringify(e)}`)}a(v,"assertNever");function D(e){switch(e){case"running":return"ongoing";case"stopping":return"warning";case"completed":return"done";case"killed":return"warning";case"failed":return"error";default:return v(e)}}a(D,"dotState");function N(e,n){switch(e){case"running":return n("status.running");case"stopping":return n("status.stopping");case"completed":return n("status.completed");case"killed":return n("status.killed");case"failed":return n("status.failed");default:return v(e)}}a(N,"statusLabel");function S(e,n){const r=Math.max(0,Math.floor(e/1e3)),o=r%60,s=Math.floor(r/60)%60,u=Math.floor(r/3600);return u>0?n("duration.hours",{hours:u,minutes:s}):s>0?n("duration.minutes",{minutes:s,seconds:o}):n("duration.seconds",{seconds:o})}a(S,"formatDuration");function A(e){return[...e].sort((n,r)=>{const o=h(n);if(o!==h(r))return o?-1:1;if(o)return n.startedAt-r.startedAt;const s=(r.finishedAt??r.startedAt)-(n.finishedAt??n.startedAt);return s!==0?s:n.startedAt-r.startedAt})}a(A,"ordered");function O({sessionId:e,useSessions:n,t:r}){const o=n(t=>t.jobsBySession[e])??j,[s,u]=(0,d.useState)(!1),[C,w]=(0,d.useState)(()=>Date.now()),b=(0,d.useRef)(null),_=(0,d.useRef)(null),J=(0,d.useMemo)(()=>A(o),[o]),c=(0,d.useMemo)(()=>o.filter(h).length,[o]);if((0,d.useEffect)(()=>{if(!s)return;const t=a(p=>{p.target instanceof Node&&!b.current?.contains(p.target)&&u(!1)},"closeOutside");return document.addEventListener("pointerdown",t),()=>{document.removeEventListener("pointerdown",t)}},[s]),(0,d.useEffect)(()=>{if(!s||c===0)return;w(Date.now());const t=setInterval(()=>{w(Date.now())},1e3);return()=>{clearInterval(t)}},[s,c]),(0,d.useEffect)(()=>{o.length===0&&s&&u(!1)},[o.length,s]),o.length===0)return null;const H=r(c>0?c===1?"count.live.one":"count.live.other":o.length===1?"count.idle.one":"count.idle.other",{count:c>0?c:o.length}),R=a(t=>{t.key!=="Escape"||!s||(t.preventDefault(),u(!1),_.current?.focus())},"onKeyDown");return(0,l.jsxs)("div",{ref:b,className:i.root,onKeyDown:R,children:[(0,l.jsxs)("button",{ref:_,type:"button",className:i.trigger,"aria-expanded":s,"aria-label":H,onClick:a(()=>{w(Date.now()),u(t=>!t)},"onClick"),children:[c>0?(0,l.jsx)(x.StateDot,{state:"ongoing",className:i.triggerDot}):null,(0,l.jsx)("span",{className:i.count,children:H}),(0,l.jsx)(x.IconChevronDownOutline14,{className:s?i.triggerOpen:void 0})]}),s?(0,l.jsx)("ul",{className:i.menu,"aria-label":r("list.aria"),children:J.map(t=>{const p=h(t),W=S(p?C-t.startedAt:(t.finishedAt??t.startedAt)-t.startedAt,r),Z=N(t.status,r);return(0,l.jsxs)("li",{className:p?i.row:`${i.row} ${i.rowSettled}`,children:[(0,l.jsx)(x.StateDot,{state:D(t.status),className:i.rowDot}),(0,l.jsx)("span",{className:i.kind,children:t.kind}),(0,l.jsx)("span",{className:i.label,title:t.label,children:t.label}),(0,l.jsx)("span",{className:i.status,title:t.detail??Z,children:t.detail??Z}),(0,l.jsx)("span",{className:i.duration,title:r(p?"duration.title.live":"duration.title.done",{duration:W}),children:W})]},t.id)})}):null]})}a(O,"JobListAction");const L={"count.live.one":"{count} 个后台任务运行中","count.live.other":"{count} 个后台任务运行中","count.idle.one":"{count} 个后台任务","count.idle.other":"{count} 个后台任务","list.aria":"后台任务","status.running":"运行中","status.stopping":"正在停止","status.completed":"已完成","status.killed":"已取消","status.failed":"已失败","duration.seconds":"{seconds}秒","duration.minutes":"{minutes}分{seconds}秒","duration.hours":"{hours}小时{minutes}分","duration.title.live":"已运行 {duration}","duration.title.done":"耗时 {duration}"},z={"count.live.one":"{count} background job running","count.live.other":"{count} background jobs running","count.idle.one":"{count} background job","count.idle.other":"{count} background jobs","list.aria":"Background jobs","status.running":"running","status.stopping":"stopping","status.completed":"completed","status.killed":"cancelled","status.failed":"failed","duration.seconds":"{seconds}s","duration.minutes":"{minutes}m {seconds}s","duration.hours":"{hours}h {minutes}m","duration.title.live":"Running for {duration}","duration.title.done":"Took {duration}"},E=["sessions","slots","locale"];function M(e){e.effect(()=>e.locale.register("job",{zh:L,en:z}),"ui-job: dictionaries"),e.slots.inject("conversation.session.header.actions",()=>e.slots.register({name:"conversation.session.header.actions",id:"job-list",order:20,locale:"job"},O))}return a(M,"apply"),m.apply=M,m.inject=E,f.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-jobs","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-jobs","version":"0.0.8","type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-conversation","@deepseek-ai/dsh-client-ui-primitives"],"platform":"web"}},"license":"MIT","publishConfig":{"access":"public"},"dependencies":{"react":"^18.2.0"},"peerDependencies":{"@deepseek-ai/dsh-client-locale":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-client-ui-conversation":"^0.0.8","@deepseek-ai/dsh-client-ui-primitives":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-invariants":"^0.0.8"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var V=Object.defineProperty;var s=(p,v)=>V(p,"name",{value:v,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-layout",factory:s(p=>{var v={exports:{}},_=v.exports;Object.defineProperty(_,Symbol.toStringTag,{value:"Module"});let d=p("react/jsx-runtime"),a=p("react"),A=p("@deepseek-ai/dsh-client-runtime/client");const M=1024;function k(e,n,t){return Math.min(t,Math.max(n,Math.round(e)))}s(k,"clampWidth");function L(e,n,t){const r=n===0?56:k(n,264,420),o=t===0?0:k(t,300,520);if(r+o+640<=e)return{sidebar:r,center:e-r-o,details:o};const l=o===0?0:Math.max(300,e-r-640);return r+l+640<=e?{sidebar:r,center:640,details:l}:{sidebar:r,center:Math.max(0,e-r),details:0}}s(L,"computeColumns");const N='._2Uki2G_frame{background:var(--dsw-alias-bg-base);height:100%;transition:grid-template-columns var(--ds-transition-duration-slow) var(--ds-ease-in-out);grid-template-rows:100%;display:grid;position:relative;overflow:hidden}._2Uki2G_frame[data-dragging]{transition:none}@media (prefers-reduced-motion:reduce){._2Uki2G_frame{transition:none}}._2Uki2G_sidebarCol{background:var(--dsw-specific-sidebar-fill);border-right:1px solid var(--dsw-alias-border-l1);min-width:0;overflow:hidden}._2Uki2G_centerCol{flex-direction:column;min-width:0;display:flex;overflow:hidden}._2Uki2G_detailsCol{border-left:1px solid var(--dsw-alias-border-l2);min-width:0;overflow:hidden}._2Uki2G_frame[data-details-collapsed] ._2Uki2G_detailsCol{border-left:none}._2Uki2G_handle{cursor:col-resize;z-index:2;touch-action:none;width:8px;transition:left var(--ds-transition-duration-slow) var(--ds-ease-in-out);margin-left:-4px;position:absolute;top:0;bottom:0}._2Uki2G_frame[data-dragging] ._2Uki2G_handle{transition:none}@media (prefers-reduced-motion:reduce){._2Uki2G_handle{transition:none}}._2Uki2G_handle[data-side=details]:after{content:"";box-sizing:border-box;background:var(--dsw-alias-button-floating-fill);border:1px solid var(--dsw-alias-border-l2-darkmode-thin);opacity:0;width:12px;height:32px;transition:opacity var(--ds-transition-duration-slow) var(--ds-ease-in-out), background var(--ds-transition-duration-slow) var(--ds-ease-in-out);border-radius:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}._2Uki2G_detailsCol:hover~._2Uki2G_handle[data-side=details]:after,._2Uki2G_handle[data-side=details]:hover:after,._2Uki2G_handle[data-side=details][data-dragging=true]:after{opacity:1}._2Uki2G_handle[data-side=details]:hover:after,._2Uki2G_handle[data-side=details][data-dragging=true]:after{background:var(--dsw-alias-button-floating-hover);border-color:var(--dsw-alias-border-l3)}._2Uki2G_overlayLayer{z-index:20;pointer-events:none;position:absolute;inset:0}._2Uki2G_overlayLayer>*{pointer-events:auto}',S="@deepseek-ai/dsh-client-ui-layout/AppFrame.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(S)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-layout",e.dataset.pluginCss=S,e.textContent=N,document.head.appendChild(e)}var h={
|
|
1
|
+
var V=Object.defineProperty;var s=(p,v)=>V(p,"name",{value:v,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-layout",factory:s(p=>{var v={exports:{}},_=v.exports;Object.defineProperty(_,Symbol.toStringTag,{value:"Module"});let d=p("react/jsx-runtime"),a=p("react"),A=p("@deepseek-ai/dsh-client-runtime/client");const M=1024;function k(e,n,t){return Math.min(t,Math.max(n,Math.round(e)))}s(k,"clampWidth");function L(e,n,t){const r=n===0?56:k(n,264,420),o=t===0?0:k(t,300,520);if(r+o+640<=e)return{sidebar:r,center:e-r-o,details:o};const l=o===0?0:Math.max(300,e-r-640);return r+l+640<=e?{sidebar:r,center:640,details:l}:{sidebar:r,center:Math.max(0,e-r),details:0}}s(L,"computeColumns");const N='._2Uki2G_frame{background:var(--dsw-alias-bg-base);height:100%;transition:grid-template-columns var(--ds-transition-duration-slow) var(--ds-ease-in-out);grid-template-rows:100%;display:grid;position:relative;overflow:hidden}._2Uki2G_frame[data-dragging]{transition:none}@media (prefers-reduced-motion:reduce){._2Uki2G_frame{transition:none}}._2Uki2G_sidebarCol{background:var(--dsw-specific-sidebar-fill);border-right:1px solid var(--dsw-alias-border-l1);min-width:0;overflow:hidden}._2Uki2G_centerCol{flex-direction:column;min-width:0;display:flex;overflow:hidden}._2Uki2G_detailsCol{border-left:1px solid var(--dsw-alias-border-l2);min-width:0;overflow:hidden}._2Uki2G_frame[data-details-collapsed] ._2Uki2G_detailsCol{border-left:none}._2Uki2G_handle{cursor:col-resize;z-index:2;touch-action:none;width:8px;transition:left var(--ds-transition-duration-slow) var(--ds-ease-in-out);margin-left:-4px;position:absolute;top:0;bottom:0}._2Uki2G_frame[data-dragging] ._2Uki2G_handle{transition:none}@media (prefers-reduced-motion:reduce){._2Uki2G_handle{transition:none}}._2Uki2G_handle[data-side=details]:after{content:"";box-sizing:border-box;background:var(--dsw-alias-button-floating-fill);border:1px solid var(--dsw-alias-border-l2-darkmode-thin);opacity:0;width:12px;height:32px;transition:opacity var(--ds-transition-duration-slow) var(--ds-ease-in-out), background var(--ds-transition-duration-slow) var(--ds-ease-in-out);border-radius:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}._2Uki2G_detailsCol:hover~._2Uki2G_handle[data-side=details]:after,._2Uki2G_handle[data-side=details]:hover:after,._2Uki2G_handle[data-side=details][data-dragging=true]:after{opacity:1}._2Uki2G_handle[data-side=details]:hover:after,._2Uki2G_handle[data-side=details][data-dragging=true]:after{background:var(--dsw-alias-button-floating-hover);border-color:var(--dsw-alias-border-l3)}._2Uki2G_overlayLayer{z-index:20;pointer-events:none;position:absolute;inset:0}._2Uki2G_overlayLayer>*{pointer-events:auto}',S="@deepseek-ai/dsh-client-ui-layout/AppFrame.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(S)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-layout",e.dataset.pluginCss=S,e.textContent=N,document.head.appendChild(e)}var h={sidebarCol:"_2Uki2G_sidebarCol",overlayLayer:"_2Uki2G_overlayLayer",centerCol:"_2Uki2G_centerCol",handle:"_2Uki2G_handle",detailsCol:"_2Uki2G_detailsCol",frame:"_2Uki2G_frame"};function F(e){return(0,d.jsx)("div",{className:h.centerCol,children:e.children})}s(F,"CenterColumn");function I(e){return(0,d.jsx)("div",{className:h.detailsCol,children:e.children})}s(I,"DetailsColumn");function U(e){const[n,t]=(0,a.useState)(!1),r=(0,a.useRef)(0),o=(0,a.useRef)(0),l=(0,a.useRef)(null),m=(0,a.useRef)({onStart:e.onStart,onDrag:e.onDrag,onEnd:e.onEnd});m.current={onStart:e.onStart,onDrag:e.onDrag,onEnd:e.onEnd};const g=(0,a.useCallback)(i=>{i.preventDefault(),i.currentTarget.setPointerCapture(i.pointerId),r.current=i.clientX,o.current=i.clientX,m.current.onStart(),t(!0)},[]),w=(0,a.useCallback)(i=>{i.currentTarget.hasPointerCapture(i.pointerId)&&(o.current=i.clientX,l.current??=requestAnimationFrame(()=>{l.current=null,m.current.onDrag(o.current-r.current)}))},[]),b=(0,a.useCallback)(i=>{i.currentTarget.hasPointerCapture(i.pointerId)&&(i.currentTarget.releasePointerCapture(i.pointerId),l.current!==null&&(cancelAnimationFrame(l.current),l.current=null),m.current.onDrag(o.current-r.current),t(!1),m.current.onEnd())},[]);return(0,d.jsx)("div",{className:h.handle,style:{left:e.left},"data-side":e.side,"data-dragging":n||void 0,onPointerDown:g,onPointerMove:w,onPointerUp:b})}s(U,"DragHandle");function O({useStore:e,useSessions:n,actions:t,renderSlot:r}){const o=e(c=>c),l=n(c=>{const f=c.current;return f!==void 0&&c.byId[f]?.blank===!1?f:void 0}),m=(0,a.useRef)(null),[g,w]=(0,a.useState)(()=>window.innerWidth),b=(0,a.useRef)(l);(0,a.useLayoutEffect)(()=>{l!==void 0&&(b.current!==void 0&&b.current!==l&&t.closeDetails(),b.current=l)},[t,l]),(0,a.useEffect)(()=>{const c=m.current;if(c===null)return;let f=null;const R=new ResizeObserver(()=>{f??=requestAnimationFrame(()=>{f=null;const P=c.getBoundingClientRect().width;P>0&&w(P)})});return R.observe(c),()=>{R.disconnect(),f!==null&&cancelAnimationFrame(f)}},[]);const i=g<M;(0,a.useEffect)(()=>{t.setNarrow(i)},[t,i]);const y=i?!o.narrowExpanded:o.sidebar===0,u=L(g,y?0:o.sidebar===0?280:o.sidebar,l===void 0?0:o.details),x=(0,a.useRef)(u);x.current=u;const E=(0,a.useRef)(0),j=(0,a.useRef)(0),[W,D]=(0,a.useState)(!1),T=(0,a.useCallback)(()=>{D(!1)},[]),$=(0,a.useCallback)(()=>{E.current=x.current.sidebar,D(!0)},[]),H=(0,a.useCallback)(()=>{j.current=x.current.details,D(!0)},[]),J=(0,a.useCallback)(c=>{t.setSidebar(E.current+c)},[t]),K=(0,a.useCallback)(c=>{t.setDetails(j.current-c)},[t]);return(0,d.jsxs)("div",{ref:m,className:h.frame,style:{gridTemplateColumns:`${u.sidebar}px minmax(0, 1fr) ${u.details}px`},"data-sidebar-collapsed":y||void 0,"data-details-collapsed":u.details===0||void 0,"data-dragging":W||void 0,children:[(0,d.jsx)("div",{className:h.sidebarCol,children:r("sidebar",{collapsed:y,width:u.sidebar})}),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(F,{children:r("conversation",{})}),(0,d.jsx)(I,{children:r("details",{})})]}),(0,d.jsx)("div",{className:h.overlayLayer,"data-shell-overlay":!0,children:r("shell.overlay",{})}),!y&&(0,d.jsx)(U,{side:"sidebar",left:u.sidebar,onStart:$,onDrag:J,onEnd:T}),u.details>0&&(0,d.jsx)(U,{side:"details",left:g-u.details,onStart:H,onDrag:K,onEnd:T})]})}s(O,"AppFrame");function z(){return(0,A.defineStore)({init:s(()=>({sidebar:280,details:0,narrow:!1,narrowExpanded:!1}),"init"),actions:{setSidebar:s((e,n)=>{e.sidebar=k(n,264,420)},"setSidebar"),setDetails:s((e,n)=>{e.details=k(n,300,520)},"setDetails"),toggleSidebar:s(e=>{e.narrow?e.narrowExpanded=!e.narrowExpanded:e.sidebar=e.sidebar===0?280:0},"toggleSidebar"),setNarrow:s((e,n)=>{e.narrow!==n&&(e.narrow=n,e.narrowExpanded=!1)},"setNarrow"),openDetails:s(e=>{e.details===0&&(e.details=360)},"openDetails"),closeDetails:s(e=>{e.details=0},"closeDetails")}})}s(z,"createLayoutStore");var G=class{static{s(this,"LayoutController")}#e;attachPanels(e){this.#e=e}toggleSidebar(){this.#t().toggleSidebar()}openDetails(){this.#t().openDetails()}closeDetails(){this.#t().closeDetails()}#t(){if(this.#e===void 0)throw new Error("layout: panel actions not wired (root entry not mounted)");return this.#e}};const C="data-ds-dark-theme";var B=class{static{s(this,"ThemePresenter")}appliedTokens=[];themeColorMeta;constructor(){this.themeColorMeta=document.createElement("meta"),this.themeColorMeta.name="theme-color"}apply(e){const n=e.active.colorScheme;document.documentElement.style.colorScheme=n;const t=document.body;n==="dark"?t.setAttribute(C,""):t.removeAttribute(C);for(const r of this.appliedTokens)t.style.removeProperty(r);this.appliedTokens=[];for(const[r,o]of Object.entries(e.active.tokens))t.style.setProperty(r,o),this.appliedTokens.push(r);this.themeColorMeta.content=getComputedStyle(t).backgroundColor,this.themeColorMeta.isConnected||document.head.append(this.themeColorMeta)}dispose(){document.documentElement.style.removeProperty("color-scheme");const e=document.body;e.removeAttribute(C);for(const n of this.appliedTokens)e.style.removeProperty(n);this.appliedTokens=[],this.themeColorMeta.remove()}};const X=["slots","theme"];function q(e){const n=new G;e.effect(()=>{const t=e.reflect.provide("layout",n),r=e.slots.register({name:"root",children:{sidebar:{kind:"single",scope:"root"},conversation:{kind:"single",scope:"session-maybe"},details:{kind:"single",scope:"session"},"shell.overlay":{kind:"list",scope:"root"}},store:z,inject:s(o=>(n.attachPanels(o),{}),"inject")},O);return()=>{r(),t()}},"ui-layout: service + root registration"),e.effect(()=>{const t=new B;t.apply(e.theme.getTheme());const r=e.on("theme/change",o=>{t.apply(o)});return()=>{r(),t.dispose()}},"ui-layout: theme presenter")}return s(q,"apply"),_.LayoutController=G,_.apply=q,_.inject=X,v.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-layout","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-layout","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-theme"],"platform":"web"}},"license":"MIT","peerDependencies":{"react":"^18.2.0","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/dsh-client-ui-theme":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-invariants":"^0.0.8"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var q=Object.defineProperty;var o=(v,m)=>q(v,"name",{value:m,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-message-feedback",factory:o(v=>{var m={exports:{}},x=m.exports;Object.defineProperty(x,Symbol.toStringTag,{value:"Module"});let a=v("react/jsx-runtime"),c=v("react"),b=v("@deepseek-ai/dsh-client-ui-primitives");const B=Object.freeze({status:"cold",items:new Map,error:null}),f=Object.freeze({ok:!0}),N=Object.freeze({ok:!1,error:Object.freeze({code:"disposed",message:"feedback controller is disposed"})});function F(e){switch(e){case"session-not-found":return"this session is no longer persisted";case"target-not-found":return"this message is not a persisted assistant message";case"version-conflict":return"feedback changed elsewhere";case"note-blank":return"a note must contain a non-whitespace character";case"note-too-large":return"the note is too long";default:return e}}o(F,"describe");function _(e){return{ok:!1,error:{code:e,message:F(e)}}}o(_,"fail");function C(e){return{ok:!1,error:{code:e.code,message:e.message}}}o(C,"carrierFailure");var J=class{static{o(this,"MessageFeedbackController")}remote;sessionId;view=B;listeners=new Set;loadPromise=null;operationTail=Promise.resolve();disposed=!1;constructor(e,t){this.remote=e,this.sessionId=t}getSnapshot=o(()=>this.view,"getSnapshot");subscribe=o(e=>(this.listeners.add(e),()=>{this.listeners.delete(e)}),"subscribe");ensure(){return this.view.status==="ready"?Promise.resolve(f):this.refresh()}refresh(){if(this.loadPromise!==null)return this.loadPromise;this.publish({status:"loading",items:this.view.items,error:null});const e=this.load();return this.loadPromise=e,e.finally(()=>{this.loadPromise=null})}resync(){return this.mutate(()=>this.refresh(),{seed:!1})}rate(e,t,r){return this.mutate(async()=>{const s=this.view.items.get(e);return await this.putCommitted(e,t,r??s?.note,s)})}toggle(e,t){return this.mutate(async()=>{const r=this.view.items.get(e);return r?.rating===t?await this.deleteCommitted(e,r):await this.putCommitted(e,t,r?.note,r)})}clearNote(e){return this.mutate(async()=>{const t=this.view.items.get(e);return t===void 0||t.note===void 0?f:await this.putCommitted(e,t.rating,void 0,t)})}clear(e){return this.mutate(async()=>{const t=this.view.items.get(e);return t===void 0?f:await this.deleteCommitted(e,t)})}async putCommitted(e,t,r,s){const i=await this.remote.put({sessionId:this.sessionId,messageId:e,rating:t,...r===void 0?{}:{note:r},ifVersion:s?.version??null});if(!i.ok)return C(i.error);const l=i.value;return l.ok?(this.commit(e,l.value),f):(l.error.code==="version-conflict"&&this.commit(e,l.error.current),_(l.error.code))}async deleteCommitted(e,t){const r=await this.remote.delete({sessionId:this.sessionId,messageId:e,ifVersion:t.version});if(!r.ok)return C(r.error);const s=r.value;return s.ok?(this.commit(e,null),f):(s.error.code==="version-conflict"&&this.commit(e,s.error.current),_(s.error.code))}dispose(){this.disposed=!0,this.listeners.clear()}async load(){try{const e=await this.remote.list({sessionId:this.sessionId});if(this.disposed)return f;if(!e.ok)return this.publish({status:"error",items:this.view.items,error:e.error.message}),C(e.error);const t=e.value;if(!t.ok)return this.publish({status:"error",items:this.view.items,error:F(t.error.code)}),_(t.error.code);const r=new Map;for(const s of t.value.items)r.set(s.messageId,s);return this.publish({status:"ready",items:r,error:null}),f}catch(e){if(this.disposed)return f;const t=e instanceof Error?e.message:"message feedback list failed";return this.publish({status:"error",items:this.view.items,error:t}),{ok:!1,error:{code:"transport",message:t}}}}mutate(e,t={}){const r=o(async()=>{if(this.disposed)return N;if(t.seed!==!1){const i=await this.ensure();if(!i.ok)return i;if(this.disposed)return N}try{return await e()}catch(i){return{ok:!1,error:{code:"transport",message:i instanceof Error?i.message:"message feedback mutation failed"}}}},"guarded"),s=this.operationTail.then(r,r);return this.operationTail=s.then(()=>{}),s}commit(e,t){const r=new Map(this.view.items);t===null?r.delete(e):r.set(e,t),this.publish({status:"ready",items:r,error:null})}publish(e){this.view=Object.freeze(e);for(const t of this.listeners)try{t()}catch(r){console.error("[ui-message-feedback] subscriber threw:",r)}}};const K=".kVpW9G_action{width:28px;height:28px;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:none;border-radius:28px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.kVpW9G_action:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.kVpW9G_action:disabled{cursor:default;opacity:.4}.kVpW9G_action[data-active]{color:var(--dsw-alias-label-primary)}.kVpW9G_noteOpen{max-width:220px;color:var(--dsw-alias-label-tertiary);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;border-radius:14px;padding:0 8px;font-size:13px;line-height:28px;overflow:hidden}.kVpW9G_noteOpen:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.kVpW9G_noteEditor{align-items:flex-start;gap:6px;display:inline-flex}.kVpW9G_noteInput{border:1px solid var(--dsw-alias-border-secondary);background:var(--dsw-alias-bg-primary);width:260px;color:var(--dsw-alias-label-primary);font:inherit;resize:vertical;border-radius:8px;padding:6px 8px;font-size:13px}.kVpW9G_noteSave,.kVpW9G_noteCancel{cursor:pointer;border:none;border-radius:14px;height:28px;padding:0 10px;font-size:13px}.kVpW9G_noteSave{background:var(--dsw-alias-interactive-bg-primary);color:var(--dsw-alias-label-inverse)}.kVpW9G_noteSave:disabled{cursor:default;opacity:.4}.kVpW9G_noteCancel{color:var(--dsw-alias-label-tertiary);background:0 0}.kVpW9G_noteCancel:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.kVpW9G_failure{color:var(--dsw-alias-label-tertiary);padding-left:4px;font-size:13px;line-height:28px}",E="@deepseek-ai/dsh-client-ui-message-feedback/MessageFeedbackActions.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(E)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-message-feedback",e.dataset.pluginCss=E,e.textContent=K,document.head.appendChild(e)}var u={noteCancel:"kVpW9G_noteCancel",noteOpen:"kVpW9G_noteOpen",noteInput:"kVpW9G_noteInput",noteSave:"kVpW9G_noteSave",failure:"kVpW9G_failure",noteEditor:"kVpW9G_noteEditor",action:"kVpW9G_action"};function H({messageId:e,ensure:t,rate:r,toggle:s,clearNote:i,useFeedback:l,t:n}){const p=l(d=>d.items.get(e)),j=l(d=>d.status==="error"),h=p?.rating,[z,k]=(0,c.useState)(!1),[V,A]=(0,c.useState)(""),[W,G]=(0,c.useState)(!1),[S,g]=(0,c.useState)(null),M=(0,c.useRef)(!1),w=(0,c.useCallback)(()=>{M.current||(M.current=!0,t())},[t]),O=(0,c.useRef)(!0);(0,c.useEffect)(()=>()=>{O.current=!1},[]);const y=(0,c.useCallback)(d=>{if(O.current){if(G(!1),d.ok){g(null);return}g(d.error?.code==="version-conflict"?n("error.conflict"):n("error.generic"))}},[n]),T=(0,c.useCallback)(d=>{G(!0),g(null),k(!1),s(e,d).then(y)},[e,y,s]),Z=(0,c.useCallback)(d=>{const D=V.trim();G(!0),g(null),(D.length===0?i(e):r(e,d,D)).then(I=>{y(I),I.ok&&O.current&&k(!1)})},[i,V,e,r,y]),$=(0,c.useCallback)(()=>{A(p?.note??""),k(!0)},[p?.note]),L=n(h==="positive"?"action.likeActive":"action.like"),R=n(h==="negative"?"action.dislikeActive":"action.dislike");return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(b.Tooltip,{label:L,side:"bottom",children:(0,a.jsx)("button",{type:"button",className:u.action,"aria-label":L,"aria-pressed":h==="positive","data-active":h==="positive"||void 0,disabled:W,onFocus:w,onPointerEnter:w,onClick:o(()=>{T("positive")},"onClick"),children:(0,a.jsx)(b.IconLikeOutline16,{})})}),(0,a.jsx)(b.Tooltip,{label:R,side:"bottom",children:(0,a.jsx)("button",{type:"button",className:u.action,"aria-label":R,"aria-pressed":h==="negative","data-active":h==="negative"||void 0,disabled:W,onFocus:w,onPointerEnter:w,onClick:o(()=>{T("negative")},"onClick"),children:(0,a.jsx)(b.IconDislikeOutline16,{})})}),h!==void 0&&!z&&(0,a.jsx)("button",{type:"button",className:u.noteOpen,onClick:$,children:p?.note===void 0?n("note.open"):p.note}),h!==void 0&&z&&(0,a.jsxs)("span",{className:u.noteEditor,children:[(0,a.jsx)("textarea",{className:u.noteInput,"aria-label":n("note.aria"),placeholder:n("note.placeholder"),value:V,rows:2,onChange:o(d=>{A(d.target.value)},"onChange")}),(0,a.jsx)("button",{type:"button",className:u.noteSave,disabled:W,onClick:o(()=>{Z(h)},"onClick"),children:n("note.save")}),(0,a.jsx)("button",{type:"button",className:u.noteCancel,onClick:o(()=>{k(!1)},"onClick"),children:n("note.cancel")})]}),S===null&&j&&(0,a.jsx)("span",{className:u.failure,role:"status",children:n("error.load")}),S!==null&&(0,a.jsx)("span",{className:u.failure,role:"status",children:S})]})}o(H,"MessageFeedbackActions");const Q={"action.like":"好的回答","action.likeActive":"取消标记","action.dislike":"有问题的回答","action.dislikeActive":"取消标记","note.open":"补充说明","note.placeholder":"这条回答哪里好,或哪里有问题?(可选)","note.save":"保存","note.cancel":"取消","note.aria":"反馈说明","error.conflict":"这条反馈已在别处改动,已显示最新状态","error.load":"反馈状态加载失败","error.generic":"反馈保存失败"},U={"action.like":"Good response","action.likeActive":"Remove rating","action.dislike":"Bad response","action.dislikeActive":"Remove rating","note.open":"Add a note","note.placeholder":"What was good, or what went wrong? (optional)","note.save":"Save","note.cancel":"Cancel","note.aria":"Feedback note","error.conflict":"This feedback changed elsewhere; the latest state is shown","error.load":"Could not load feedback","error.generic":"Could not save feedback"},P="feedback",X=["slots","remote","remote.messageFeedback","locale"];function Y(e){e.effect(()=>e.locale.register(P,{zh:Q,en:U}),"ui-message-feedback: dictionaries");const t=new Map,r=o(s=>{let i=t.get(s);return i===void 0&&(i=new J(e.remote.messageFeedback,s),t.set(s,i)),i},"controllerFor");e.on("connection/reset",()=>{for(const s of t.values())s.getSnapshot().status!=="cold"&&s.resync()}),e.slots.inject("conversation.chat.assistant-actions",()=>{const s=e.slots.register({name:"conversation.chat.assistant-actions",id:"feedback",order:10,locale:P,inject:o(i=>{const l=r(i);return{hooks:{feedback:l},ensure:o(()=>l.ensure(),"ensure"),rate:o((n,p,j)=>l.rate(n,p,j),"rate"),toggle:o((n,p)=>l.toggle(n,p),"toggle"),clearNote:o(n=>l.clearNote(n),"clearNote"),clear:o(n=>l.clear(n),"clear")}},"inject")},H);return()=>{s();for(const i of t.values())i.dispose();t.clear()}})}return o(Y,"apply"),x.apply=Y,x.inject=X,m.exports},"factory")});
|
|
1
|
+
var q=Object.defineProperty;var o=(v,m)=>q(v,"name",{value:m,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-message-feedback",factory:o(v=>{var m={exports:{}},x=m.exports;Object.defineProperty(x,Symbol.toStringTag,{value:"Module"});let a=v("react/jsx-runtime"),c=v("react"),b=v("@deepseek-ai/dsh-client-ui-primitives");const B=Object.freeze({status:"cold",items:new Map,error:null}),f=Object.freeze({ok:!0}),N=Object.freeze({ok:!1,error:Object.freeze({code:"disposed",message:"feedback controller is disposed"})});function F(e){switch(e){case"session-not-found":return"this session is no longer persisted";case"target-not-found":return"this message is not a persisted assistant message";case"version-conflict":return"feedback changed elsewhere";case"note-blank":return"a note must contain a non-whitespace character";case"note-too-large":return"the note is too long";default:return e}}o(F,"describe");function _(e){return{ok:!1,error:{code:e,message:F(e)}}}o(_,"fail");function C(e){return{ok:!1,error:{code:e.code,message:e.message}}}o(C,"carrierFailure");var J=class{static{o(this,"MessageFeedbackController")}remote;sessionId;view=B;listeners=new Set;loadPromise=null;operationTail=Promise.resolve();disposed=!1;constructor(e,t){this.remote=e,this.sessionId=t}getSnapshot=o(()=>this.view,"getSnapshot");subscribe=o(e=>(this.listeners.add(e),()=>{this.listeners.delete(e)}),"subscribe");ensure(){return this.view.status==="ready"?Promise.resolve(f):this.refresh()}refresh(){if(this.loadPromise!==null)return this.loadPromise;this.publish({status:"loading",items:this.view.items,error:null});const e=this.load();return this.loadPromise=e,e.finally(()=>{this.loadPromise=null})}resync(){return this.mutate(()=>this.refresh(),{seed:!1})}rate(e,t,r){return this.mutate(async()=>{const s=this.view.items.get(e);return await this.putCommitted(e,t,r??s?.note,s)})}toggle(e,t){return this.mutate(async()=>{const r=this.view.items.get(e);return r?.rating===t?await this.deleteCommitted(e,r):await this.putCommitted(e,t,r?.note,r)})}clearNote(e){return this.mutate(async()=>{const t=this.view.items.get(e);return t===void 0||t.note===void 0?f:await this.putCommitted(e,t.rating,void 0,t)})}clear(e){return this.mutate(async()=>{const t=this.view.items.get(e);return t===void 0?f:await this.deleteCommitted(e,t)})}async putCommitted(e,t,r,s){const i=await this.remote.put({sessionId:this.sessionId,messageId:e,rating:t,...r===void 0?{}:{note:r},ifVersion:s?.version??null});if(!i.ok)return C(i.error);const l=i.value;return l.ok?(this.commit(e,l.value),f):(l.error.code==="version-conflict"&&this.commit(e,l.error.current),_(l.error.code))}async deleteCommitted(e,t){const r=await this.remote.delete({sessionId:this.sessionId,messageId:e,ifVersion:t.version});if(!r.ok)return C(r.error);const s=r.value;return s.ok?(this.commit(e,null),f):(s.error.code==="version-conflict"&&this.commit(e,s.error.current),_(s.error.code))}dispose(){this.disposed=!0,this.listeners.clear()}async load(){try{const e=await this.remote.list({sessionId:this.sessionId});if(this.disposed)return f;if(!e.ok)return this.publish({status:"error",items:this.view.items,error:e.error.message}),C(e.error);const t=e.value;if(!t.ok)return this.publish({status:"error",items:this.view.items,error:F(t.error.code)}),_(t.error.code);const r=new Map;for(const s of t.value.items)r.set(s.messageId,s);return this.publish({status:"ready",items:r,error:null}),f}catch(e){if(this.disposed)return f;const t=e instanceof Error?e.message:"message feedback list failed";return this.publish({status:"error",items:this.view.items,error:t}),{ok:!1,error:{code:"transport",message:t}}}}mutate(e,t={}){const r=o(async()=>{if(this.disposed)return N;if(t.seed!==!1){const i=await this.ensure();if(!i.ok)return i;if(this.disposed)return N}try{return await e()}catch(i){return{ok:!1,error:{code:"transport",message:i instanceof Error?i.message:"message feedback mutation failed"}}}},"guarded"),s=this.operationTail.then(r,r);return this.operationTail=s.then(()=>{}),s}commit(e,t){const r=new Map(this.view.items);t===null?r.delete(e):r.set(e,t),this.publish({status:"ready",items:r,error:null})}publish(e){this.view=Object.freeze(e);for(const t of this.listeners)try{t()}catch(r){console.error("[ui-message-feedback] subscriber threw:",r)}}};const K=".kVpW9G_action{width:28px;height:28px;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:none;border-radius:28px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.kVpW9G_action:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.kVpW9G_action:disabled{cursor:default;opacity:.4}.kVpW9G_action[data-active]{color:var(--dsw-alias-label-primary)}.kVpW9G_noteOpen{max-width:220px;color:var(--dsw-alias-label-tertiary);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;border-radius:14px;padding:0 8px;font-size:13px;line-height:28px;overflow:hidden}.kVpW9G_noteOpen:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.kVpW9G_noteEditor{align-items:flex-start;gap:6px;display:inline-flex}.kVpW9G_noteInput{border:1px solid var(--dsw-alias-border-secondary);background:var(--dsw-alias-bg-primary);width:260px;color:var(--dsw-alias-label-primary);font:inherit;resize:vertical;border-radius:8px;padding:6px 8px;font-size:13px}.kVpW9G_noteSave,.kVpW9G_noteCancel{cursor:pointer;border:none;border-radius:14px;height:28px;padding:0 10px;font-size:13px}.kVpW9G_noteSave{background:var(--dsw-alias-interactive-bg-primary);color:var(--dsw-alias-label-inverse)}.kVpW9G_noteSave:disabled{cursor:default;opacity:.4}.kVpW9G_noteCancel{color:var(--dsw-alias-label-tertiary);background:0 0}.kVpW9G_noteCancel:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.kVpW9G_failure{color:var(--dsw-alias-label-tertiary);padding-left:4px;font-size:13px;line-height:28px}",E="@deepseek-ai/dsh-client-ui-message-feedback/MessageFeedbackActions.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(E)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-message-feedback",e.dataset.pluginCss=E,e.textContent=K,document.head.appendChild(e)}var u={noteSave:"kVpW9G_noteSave",noteCancel:"kVpW9G_noteCancel",noteInput:"kVpW9G_noteInput",failure:"kVpW9G_failure",noteOpen:"kVpW9G_noteOpen",noteEditor:"kVpW9G_noteEditor",action:"kVpW9G_action"};function H({messageId:e,ensure:t,rate:r,toggle:s,clearNote:i,useFeedback:l,t:n}){const p=l(d=>d.items.get(e)),j=l(d=>d.status==="error"),h=p?.rating,[z,k]=(0,c.useState)(!1),[V,A]=(0,c.useState)(""),[W,G]=(0,c.useState)(!1),[S,g]=(0,c.useState)(null),M=(0,c.useRef)(!1),w=(0,c.useCallback)(()=>{M.current||(M.current=!0,t())},[t]),O=(0,c.useRef)(!0);(0,c.useEffect)(()=>()=>{O.current=!1},[]);const y=(0,c.useCallback)(d=>{if(O.current){if(G(!1),d.ok){g(null);return}g(d.error?.code==="version-conflict"?n("error.conflict"):n("error.generic"))}},[n]),T=(0,c.useCallback)(d=>{G(!0),g(null),k(!1),s(e,d).then(y)},[e,y,s]),Z=(0,c.useCallback)(d=>{const D=V.trim();G(!0),g(null),(D.length===0?i(e):r(e,d,D)).then(I=>{y(I),I.ok&&O.current&&k(!1)})},[i,V,e,r,y]),$=(0,c.useCallback)(()=>{A(p?.note??""),k(!0)},[p?.note]),L=n(h==="positive"?"action.likeActive":"action.like"),R=n(h==="negative"?"action.dislikeActive":"action.dislike");return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(b.Tooltip,{label:L,side:"bottom",children:(0,a.jsx)("button",{type:"button",className:u.action,"aria-label":L,"aria-pressed":h==="positive","data-active":h==="positive"||void 0,disabled:W,onFocus:w,onPointerEnter:w,onClick:o(()=>{T("positive")},"onClick"),children:(0,a.jsx)(b.IconLikeOutline16,{})})}),(0,a.jsx)(b.Tooltip,{label:R,side:"bottom",children:(0,a.jsx)("button",{type:"button",className:u.action,"aria-label":R,"aria-pressed":h==="negative","data-active":h==="negative"||void 0,disabled:W,onFocus:w,onPointerEnter:w,onClick:o(()=>{T("negative")},"onClick"),children:(0,a.jsx)(b.IconDislikeOutline16,{})})}),h!==void 0&&!z&&(0,a.jsx)("button",{type:"button",className:u.noteOpen,onClick:$,children:p?.note===void 0?n("note.open"):p.note}),h!==void 0&&z&&(0,a.jsxs)("span",{className:u.noteEditor,children:[(0,a.jsx)("textarea",{className:u.noteInput,"aria-label":n("note.aria"),placeholder:n("note.placeholder"),value:V,rows:2,onChange:o(d=>{A(d.target.value)},"onChange")}),(0,a.jsx)("button",{type:"button",className:u.noteSave,disabled:W,onClick:o(()=>{Z(h)},"onClick"),children:n("note.save")}),(0,a.jsx)("button",{type:"button",className:u.noteCancel,onClick:o(()=>{k(!1)},"onClick"),children:n("note.cancel")})]}),S===null&&j&&(0,a.jsx)("span",{className:u.failure,role:"status",children:n("error.load")}),S!==null&&(0,a.jsx)("span",{className:u.failure,role:"status",children:S})]})}o(H,"MessageFeedbackActions");const Q={"action.like":"好的回答","action.likeActive":"取消标记","action.dislike":"有问题的回答","action.dislikeActive":"取消标记","note.open":"补充说明","note.placeholder":"这条回答哪里好,或哪里有问题?(可选)","note.save":"保存","note.cancel":"取消","note.aria":"反馈说明","error.conflict":"这条反馈已在别处改动,已显示最新状态","error.load":"反馈状态加载失败","error.generic":"反馈保存失败"},U={"action.like":"Good response","action.likeActive":"Remove rating","action.dislike":"Bad response","action.dislikeActive":"Remove rating","note.open":"Add a note","note.placeholder":"What was good, or what went wrong? (optional)","note.save":"Save","note.cancel":"Cancel","note.aria":"Feedback note","error.conflict":"This feedback changed elsewhere; the latest state is shown","error.load":"Could not load feedback","error.generic":"Could not save feedback"},P="feedback",X=["slots","remote","remote.messageFeedback","locale"];function Y(e){e.effect(()=>e.locale.register(P,{zh:Q,en:U}),"ui-message-feedback: dictionaries");const t=new Map,r=o(s=>{let i=t.get(s);return i===void 0&&(i=new J(e.remote.messageFeedback,s),t.set(s,i)),i},"controllerFor");e.on("connection/reset",()=>{for(const s of t.values())s.getSnapshot().status!=="cold"&&s.resync()}),e.slots.inject("conversation.chat.assistant-actions",()=>{const s=e.slots.register({name:"conversation.chat.assistant-actions",id:"feedback",order:10,locale:P,inject:o(i=>{const l=r(i);return{hooks:{feedback:l},ensure:o(()=>l.ensure(),"ensure"),rate:o((n,p,j)=>l.rate(n,p,j),"rate"),toggle:o((n,p)=>l.toggle(n,p),"toggle"),clearNote:o(n=>l.clearNote(n),"clearNote"),clear:o(n=>l.clear(n),"clear")}},"inject")},H);return()=>{s();for(const i of t.values())i.dispose();t.clear()}})}return o(Y,"apply"),x.apply=Y,x.inject=X,m.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-message-feedback","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-message-feedback","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-conversation"],"platform":"web"}},"license":"MIT","peerDependencies":{"react":"^18.2.0","@deepseek-ai/dsh-api-remotes":"^0.0.8","@deepseek-ai/dsh-client-connection":"^0.0.8","@deepseek-ai/dsh-client-locale":"^0.0.8","@deepseek-ai/dsh-client-ui-conversation":"^0.0.8","@deepseek-ai/dsh-invariants":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-client-ui-primitives":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/dsh-message-feedback":"^0.0.8","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-typert-protocol":"^0.0.8"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var ge=Object.defineProperty;var l=(v,E)=>ge(v,"name",{value:E,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-model-selection",factory:l(v=>{var E={exports:{}},Y=E.exports;Object.defineProperty(Y,Symbol.toStringTag,{value:"Module"});let H=v("@deepseek-ai/cordis"),Q=v("@deepseek-ai/dsh-client-runtime/client"),i=v("react/jsx-runtime"),f=v("react"),b=v("@deepseek-ai/dsh-client-ui-primitives");var z=class{static{l(this,"ModelDirectory")}sessions;sessionId;available;store=(0,Q.createSnapshotStore)({current:null,routable:null,groups:[],failures:[],status:"idle",error:null});generation=0;disposed=!1;constructor(e,n,t){this.sessions=e,this.sessionId=n,this.available=t}async load(){this.assertAvailable();const e=++this.generation;this.store.update(s=>{s.status="loading",s.error=null});const{result:n}=await this.sessions.models({sessionId:this.sessionId});if(this.disposed||e!==this.generation){if(!n.ok)throw new Error(`${n.error.code}: ${n.error.message}`);return n.value}if(!n.ok)throw this.store.update(s=>{s.status="error",s.error=`${n.error.code}: ${n.error.message}`}),new Error(`session.models failed: ${n.error.code}: ${n.error.message}`);const{current:t,routable:o,groups:c,failures:d}=n.value;return this.store.update(s=>{s.current=t,s.routable=o,s.groups=c,s.failures=d,s.status="ready",s.error=null}),n.value}async select(e){this.assertAvailable();const n=++this.generation;this.store.update(o=>{o.status="selecting",o.error=null});const{result:t}=await this.sessions.selectModel({sessionId:this.sessionId,provider:e.provider,model:e.model,...e.reasoningEffort===void 0?{}:{reasoningEffort:e.reasoningEffort}});if(this.disposed||n!==this.generation){if(!t.ok)throw new Error(`${t.error.code}: ${t.error.message}`);return}if(!t.ok)throw this.store.update(o=>{o.status="error",o.error=`${t.error.code}: ${t.error.message}`}),new Error(`session.selectModel failed: ${t.error.code}: ${t.error.message}`);this.store.update(o=>{o.current=t.value.selected,o.routable=!0,o.status="ready",o.error=null})}resetConnected(){this.disposed||(++this.generation,this.store.update(e=>{e.current=null,e.routable=null,e.groups=[],e.failures=[],e.status="idle",e.error=null}),this.available()&&this.load().catch(()=>{}))}dispose(){this.disposed=!0}assertAvailable(){if(!this.available())throw new Error("model selection is unavailable for addressed subagent sessions")}},F=class extends H.Service{static{l(this,"ModelDirectoryResolver")}static inject=["connection","sessions","remote"];live={directories:new Map};blockReason;constructor(e,n){super(e,"modelDirectories"),this.blockReason=n.blockReason,e.on("connection/reset",()=>{for(const o of this.live.directories.values())o.resetConnected()});const t=l(()=>{for(const o of this.live.directories.values())o.load().catch(()=>{})},"refresh");e.remote.$on("llm/adapters-updated",t),e.remote.$on("settings/document-updated",t)}directoryFor(e){const{live:n}=this,t=n.directories.get(e);if(t!==void 0)return t;const o=this.ctx.get("sessions"),c=o.scope(e);if(c===void 0)throw new Error(`ui-model-selection: session "${String(e)}" resolved no scope`);const d=new z(this.ctx.get("connection").api.sessions,e,()=>o.subagentAddress(e)===void 0);n.directories.set(e,d);const s=this.ctx.get("conversation");if(s!==void 0){const p=l(()=>{s.blocks.set(e,d.store.getSnapshot().routable===!1?{reason:this.blockReason()}:void 0)},"publish");p(),c.effect(()=>{const m=d.store.subscribe(p);return()=>{m(),s.blocks.set(e,void 0)}},"ui-model-selection: composer block")}return c.effect(()=>()=>{d.dispose(),n.directories.delete(e)},"ui-model-selection: session directory"),d}};function V(e){var n,t,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var c=e.length;for(n=0;n<c;n++)e[n]&&(t=V(e[n]))&&(o&&(o+=" "),o+=t)}else for(t in e)e[t]&&(o&&(o+=" "),o+=t);return o}l(V,"r");function C(){for(var e,n,t=0,o="",c=arguments.length;t<c;t++)(e=arguments[t])&&(n=V(e))&&(o&&(o+=" "),o+=n);return o}l(C,"clsx");const X="._4DtYq_root{min-width:0;position:relative}._4DtYq_trigger{min-width:0;max-width:220px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:24px;outline:none;align-items:center;gap:4px;padding:0 4px 0 8px;font-size:13px;font-weight:500;line-height:20px;display:flex}._4DtYq_trigger:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}._4DtYq_trigger:focus-visible{box-shadow:0 0 0 2px var(--dsw-alias-border-l3)}._4DtYq_trigger:disabled{color:var(--dsw-alias-label-dimmed);cursor:default}._4DtYq_triggerLabel{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._4DtYq_triggerEffort{color:var(--dsw-alias-label-caption);flex:none}._4DtYq_chevron{color:var(--dsw-alias-label-caption);flex:none;transition:transform .12s}._4DtYq_chevronOpen{transform:rotate(180deg)}._4DtYq_menu{z-index:20;border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);width:min(240px,100vw - 32px);max-height:min(360px,100vh - 96px);box-shadow:var(--dsw-shadow-lv3);color:var(--dsw-alias-label-primary);--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);border-radius:12px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0;overflow:hidden}._4DtYq_status,._4DtYq_empty{color:var(--dsw-alias-label-tertiary);padding:10px;font-size:13px;line-height:20px}._4DtYq_error,._4DtYq_warning{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;padding:7px 8px;font-size:12px;line-height:18px;display:flex}._4DtYq_warning{background:var(--dsw-alias-bg-module-platform);color:var(--dsw-alias-state-warn-label)}._4DtYq_retry{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-weight:600}._4DtYq_groups{min-height:0;overflow-y:auto}._4DtYq_group+._4DtYq_group{margin-top:4px}._4DtYq_groupTitle{z-index:1;background:var(--dsw-specific-menu);color:var(--dsw-alias-label-tertiary);padding:5px 8px 3px;font-size:12px;font-weight:500;line-height:18px;position:sticky;top:0}._4DtYq_option{width:100%;min-height:38px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;outline:none;align-items:center;gap:8px;padding:6px 8px;display:flex}._4DtYq_option:hover:not(:disabled),._4DtYq_option:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}._4DtYq_selected{background:0 0}._4DtYq_option:disabled{color:var(--dsw-alias-label-dimmed);cursor:default}._4DtYq_optionCopy{flex-direction:column;flex:1;min-width:0;display:flex}._4DtYq_modelName{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}._4DtYq_description{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}._4DtYq_check{color:var(--dsw-alias-label-primary);flex:0 0 18px;place-items:center;display:grid}._4DtYq_cell{width:100%;height:40px;color:var(--dsw-alias-label-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:0 10px;font-size:14px;line-height:22px;display:flex}._4DtYq_cell:hover{background:var(--dsw-alias-interactive-bg-hover)}._4DtYq_cellLabel{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}._4DtYq_cellValue{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dsw-alias-label-tertiary);flex:0 auto;overflow:hidden}._4DtYq_cellChevron{color:var(--dsw-alias-label-tertiary);flex:none}",U="@deepseek-ai/dsh-client-ui-model-selection/ModelSelect.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(U)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-model-selection",e.dataset.pluginCss=U,e.textContent=X,document.head.appendChild(e)}var a={error:"_4DtYq_error",check:"_4DtYq_check",triggerEffort:"_4DtYq_triggerEffort",cell:"_4DtYq_cell",warning:"_4DtYq_warning",retry:"_4DtYq_retry",menu:"_4DtYq_menu",root:"_4DtYq_root",groups:"_4DtYq_groups",selected:"_4DtYq_selected",description:"_4DtYq_description",group:"_4DtYq_group",triggerLabel:"_4DtYq_triggerLabel",option:"_4DtYq_option",modelName:"_4DtYq_modelName",cellChevron:"_4DtYq_cellChevron",groupTitle:"_4DtYq_groupTitle",optionCopy:"_4DtYq_optionCopy",cellLabel:"_4DtYq_cellLabel",status:"_4DtYq_status",cellValue:"_4DtYq_cellValue",trigger:"_4DtYq_trigger",chevron:"_4DtYq_chevron",chevronOpen:"_4DtYq_chevronOpen",empty:"_4DtYq_empty"};function Z({locked:e,available:n,directory:t,load:o,select:c,t:d}){const s=(0,f.useSyncExternalStore)(r=>t.subscribe(r),()=>t.getSnapshot()),[p,m]=(0,f.useState)(!1),[_,j]=(0,f.useState)("root"),D=(0,f.useRef)("load"),[M,K]=(0,f.useState)(null),B=(0,f.useRef)(0),N=(0,f.useRef)(null),J=(0,f.useRef)(null),A=(0,f.useRef)([]),L=(0,f.useId)(),O=(0,f.useMemo)(()=>s.groups.flatMap(r=>r.models.map(u=>({group:r,model:u,selection:{provider:r.id,model:u.id,...u.reasoning?.defaultEffort===void 0?{}:{reasoningEffort:u.reasoning.defaultEffort}}}))),[s.groups]),I=O[s.current===null?-1:O.findIndex(r=>r.selection.provider===s.current?.provider&&r.selection.model===s.current.model)],h=I?.model.reasoning,x=s.current?.reasoningEffort??h?.defaultEffort,w=h===void 0?void 0:x===void 0?d("effort.providerDefault"):h.efforts.find(r=>r.id===x)?.name??x,W=(0,f.useMemo)(()=>h===void 0?[]:[...h.defaultEffort===void 0?[{key:"provider-default",effort:void 0,label:d("effort.providerDefault")}]:[],...h.efforts.map(r=>({key:`effort:${r.id}`,effort:r.id,label:r.name,...r.description===void 0?{}:{description:r.description}}))],[h,d]),T=s.status==="selecting",S=l(()=>{D.current="load",o()},"reload");if((0,f.useEffect)(()=>{n&&(D.current="load",o())},[n,o]),(0,f.useEffect)(()=>{if(!p)return;const r=l(u=>{N.current?.contains(u.target)||m(!1)},"closeOutside");return document.addEventListener("mousedown",r),()=>{document.removeEventListener("mousedown",r)}},[p]),!n)return null;const ne=l(()=>{j("root"),m(!0),S()},"show"),k=l((r=!1)=>{m(!1),j("root"),r&&queueMicrotask(()=>{J.current?.focus()})},"close"),ae=l(r=>{const u=A.current.filter(y=>y!==null);if(u.length===0)return;const g=u.findIndex(y=>y===document.activeElement);u[(Math.max(g,0)+r+u.length)%u.length]?.focus()},"moveFocus"),le=l(r=>{if(r.key==="Escape"&&p){r.preventDefault(),_!=="root"?j("root"):k(!0);return}p&&(r.key==="ArrowDown"||r.key==="ArrowUp")&&(r.preventDefault(),ae(r.key==="ArrowDown"?1:-1))},"onRootKeyDown"),de=l(r=>{r.relatedTarget instanceof Node&&N.current?.contains(r.relatedTarget)||k()},"onBlur"),G=l(r=>{if(r){N.current!==null&&k(!0);return}const u=t.getSnapshot().error;u!==null&&(B.current+=1,K({seq:B.current,text:d("error.action",{message:u})}))},"settleSelection"),ce=l(r=>{if(s.current?.provider===r.provider&&s.current.model===r.model){k(!0);return}D.current="select",c(r).then(G)},"choose"),ue=l(r=>{if(s.current===null)return;if(x===r){k(!0);return}const u={provider:s.current.provider,model:s.current.model,...r===void 0?{}:{reasoningEffort:r}};D.current="select",c(u).then(G)},"chooseEffort"),q=I?.model.name??d("trigger.fallback"),pe=w===void 0?q:`${q} · ${w}`,fe=I===void 0?d("trigger.selectAria"):w===void 0?d("trigger.aria",{model:q}):d("trigger.ariaEffort",{model:q,effort:w});A.current=[];let me=0;const $=l(()=>{const r=me++;return u=>{A.current[r]=u}},"itemRef");return(0,i.jsxs)("div",{ref:N,className:a.root,onKeyDown:le,onBlur:de,children:[(0,i.jsxs)("button",{ref:J,type:"button",className:a.trigger,"aria-label":fe,"aria-haspopup":"menu","aria-expanded":p,"aria-controls":p?`${L}-menu`:void 0,title:pe,disabled:e,onClick:l(()=>{p?k():ne()},"onClick"),children:[(0,i.jsx)("span",{className:a.triggerLabel,children:q}),w!==void 0&&(0,i.jsx)("span",{className:a.triggerEffort,children:w}),(0,i.jsx)(b.IconChevronDownOutline14,{className:C(a.chevron,p&&a.chevronOpen)})]}),p&&(0,i.jsxs)("div",{id:`${L}-menu`,className:a.menu,role:"menu","aria-label":d("menu.aria"),"aria-busy":s.status==="loading"||T,children:[_==="root"&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitem",className:a.cell,onClick:l(()=>{j("model")},"onClick"),children:[(0,i.jsx)("span",{className:a.cellLabel,children:d("menu.model")}),(0,i.jsx)("span",{className:a.cellValue,children:q}),(0,i.jsx)(b.IconChevronRightOutline14,{className:a.cellChevron})]}),h!==void 0&&(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitem",className:a.cell,onClick:l(()=>{j("effort")},"onClick"),children:[(0,i.jsx)("span",{className:a.cellLabel,children:d("menu.effort")}),(0,i.jsx)("span",{className:a.cellValue,children:w}),(0,i.jsx)(b.IconChevronRightOutline14,{className:a.cellChevron})]})]}),_==="model"&&(0,i.jsxs)(i.Fragment,{children:[s.status==="loading"&&(0,i.jsx)("div",{className:a.status,children:d("status.loading")}),s.error!==null&&D.current==="load"&&(0,i.jsxs)("div",{className:a.error,children:[(0,i.jsx)("span",{children:d("error.action",{message:s.error})}),(0,i.jsx)("button",{type:"button",className:a.retry,onClick:S,children:d("retry")})]}),s.failures.map(r=>(0,i.jsxs)("div",{className:a.warning,children:[(0,i.jsx)("span",{children:d("warning.groupLoad",{name:r.name,message:r.message})}),(0,i.jsx)("button",{type:"button",className:a.retry,onClick:S,children:d("retry")})]},r.id)),(0,i.jsx)("div",{className:C(a.groups,"scrollable"),children:s.groups.map(r=>{const u=`${L}-${r.id}`;return(0,i.jsxs)("section",{role:"group","aria-labelledby":u,className:a.group,children:[(0,i.jsx)("div",{className:a.groupTitle,id:u,children:r.name}),r.models.map(g=>{const y=s.current?.provider===r.id&&s.current.model===g.id;return(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitemradio","aria-checked":y,className:C(a.option,y&&a.selected),title:g.name,disabled:T,onClick:l(()=>{ce({provider:r.id,model:g.id})},"onClick"),children:[(0,i.jsxs)("span",{className:a.optionCopy,children:[(0,i.jsx)("span",{className:a.modelName,children:g.name}),g.description!==void 0&&(0,i.jsx)("span",{className:a.description,children:g.description})]}),(0,i.jsx)("span",{className:a.check,children:y?(0,i.jsx)(b.IconCheckOutline16,{}):null})]},g.id)})]},r.id)})}),s.status==="ready"&&O.length===0&&(0,i.jsx)("div",{className:a.empty,children:d("empty.models")})]}),_==="effort"&&(0,i.jsxs)(i.Fragment,{children:[s.error!==null&&D.current==="load"&&(0,i.jsxs)("div",{className:a.error,children:[(0,i.jsx)("span",{children:d("error.action",{message:s.error})}),(0,i.jsx)("button",{type:"button",className:a.retry,onClick:S,children:d("action.reload")})]}),W.length===0?(0,i.jsx)("div",{className:a.empty,children:d("empty.efforts")}):W.map(r=>(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitemradio","aria-checked":x===r.effort,className:C(a.option,x===r.effort&&a.selected),disabled:T,onClick:l(()=>{ue(r.effort)},"onClick"),children:[(0,i.jsxs)("span",{className:a.optionCopy,children:[(0,i.jsx)("span",{className:a.modelName,children:r.label}),r.description!==void 0&&(0,i.jsx)("span",{className:a.description,children:r.description})]}),(0,i.jsx)("span",{className:a.check,children:x===r.effort?(0,i.jsx)(b.IconCheckOutline16,{}):null})]},r.key))]})]}),M!==null&&(0,i.jsx)(b.Toast,{text:M.text,icon:(0,i.jsx)(b.IconWarningOutline16,{}),anchor:N.current?.closest("[data-composer-card]")??null,onDone:l(()=>{K(null)},"onDone")},M.seq)]})}l(Z,"ModelSelect");const ee={"command.description":"选择本会话使用的模型","option.loadError":"目录加载失败:{message}","trigger.fallback":"选择模型","trigger.selectAria":"选择模型","trigger.aria":"选择模型,当前 {model}","trigger.ariaEffort":"选择模型,当前 {model},推理等级 {effort}","menu.aria":"模型与推理等级","menu.model":"模型","menu.effort":"推理等级","effort.providerDefault":"Default","status.loading":"正在刷新模型列表…","error.action":"模型操作失败:{message}","action.reload":"重新加载","warning.groupLoad":"{name} 加载失败:{message}","empty.models":"没有可用的模型。","blocked.composer":"当前模型不可用,请先选择模型","empty.efforts":"当前模型未提供推理等级。"},re={"command.description":"Select the model for this conversation","option.loadError":"Catalog failed to load: {message}","trigger.fallback":"Select model","trigger.selectAria":"Select model","trigger.aria":"Select model, current {model}","trigger.ariaEffort":"Select model, current {model}, reasoning effort {effort}","menu.aria":"Model and reasoning effort","menu.model":"Model","menu.effort":"Effort","effort.providerDefault":"Default","status.loading":"Refreshing model list…","error.action":"Model operation failed: {message}","action.reload":"Reload","warning.groupLoad":"{name} failed to load: {message}","empty.models":"No models available.","blocked.composer":"This model is unavailable — select one to continue","empty.efforts":"This model provides no reasoning effort levels."};function P(e,n){return`${e}/${n}`}l(P,"rowId");function oe(e,n){const t=[];for(const o of e.groups)for(const c of o.models)t.push({id:P(o.id,c.id),label:c.name,detail:c.description!==void 0?`${o.name} · ${c.description}`:o.name,...e.current.provider===o.id&&e.current.model===c.id?{active:!0}:{}});for(const o of e.failures)t.push({id:`failure/${o.id}`,label:o.name,detail:n("option.loadError",{message:o.message})});return t}l(oe,"optionsOf");function te(e,n){for(const t of e.groups)for(const o of t.models){if(P(t.id,o.id)!==n)continue;const c=e.current?.provider===t.id&&e.current.model===o.id?e.current?.reasoningEffort??o.reasoning?.defaultEffort:o.reasoning?.defaultEffort;return{provider:t.id,model:o.id,...c===void 0?{}:{reasoningEffort:c}}}}l(te,"selectionOf");const R="model",se=["commandUi","connection","locale","sessions","slots","remote"];function ie(e){e.effect(()=>e.locale.register(R,{zh:ee,en:re}),"ui-model-selection: dictionaries");const n=e.locale.bind(R);e.plugin(F,{blockReason:l(()=>n("blocked.composer"),"blockReason")}),e.inject(["commandUi","modelDirectories"],t=>{const o=t.get("commandUi"),c=t.modelDirectories,d=t.sessions;t.effect(()=>o.register({name:"model",description:n("command.description"),available:l(s=>d.subagentAddress(s.sessionId)===void 0,"available"),ui:{kind:"popupSelect",options:l(async s=>{if(d.subagentAddress(s.sessionId)!==void 0)throw new Error("model selection is unavailable for addressed subagent sessions");return oe(await c.directoryFor(s.sessionId).load(),n)},"options"),onSelect:l(async(s,p)=>{if(d.subagentAddress(p.sessionId)!==void 0)throw new Error("model selection is unavailable for addressed subagent sessions");const m=c.directoryFor(p.sessionId),_=te(m.store.getSnapshot(),s.id);if(_===void 0)throw new Error("this provider's catalog failed to load — pick a model from a loaded group");await m.select(_)},"onSelect")}}),"ui-model-selection: /model contribution")}),e.inject(["slots","modelDirectories"],t=>{const o=t.modelDirectories,c=t.sessions;t.slots.inject("conversation.input.model",()=>t.slots.register({name:"conversation.input.model",locale:R,inject:l(d=>{const s=o.directoryFor(d),p=c.subagentAddress(d)===void 0;return{available:p,directory:s.store,load:l(()=>{p&&s.load().catch(()=>{})},"load"),select:l(m=>p?s.select(m).then(()=>!0,()=>!1):Promise.resolve(!1),"select")}},"inject")},Z))})}return l(ie,"apply"),Y.ModelDirectory=z,Y.ModelDirectoryResolver=F,Y.apply=ie,Y.inject=se,E.exports},"factory")});
|
|
1
|
+
var ge=Object.defineProperty;var l=(v,E)=>ge(v,"name",{value:E,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-model-selection",factory:l(v=>{var E={exports:{}},Y=E.exports;Object.defineProperty(Y,Symbol.toStringTag,{value:"Module"});let H=v("@deepseek-ai/cordis"),Q=v("@deepseek-ai/dsh-client-runtime/client"),i=v("react/jsx-runtime"),f=v("react"),b=v("@deepseek-ai/dsh-client-ui-primitives");var z=class{static{l(this,"ModelDirectory")}sessions;sessionId;available;store=(0,Q.createSnapshotStore)({current:null,routable:null,groups:[],failures:[],status:"idle",error:null});generation=0;disposed=!1;constructor(e,n,t){this.sessions=e,this.sessionId=n,this.available=t}async load(){this.assertAvailable();const e=++this.generation;this.store.update(s=>{s.status="loading",s.error=null});const{result:n}=await this.sessions.models({sessionId:this.sessionId});if(this.disposed||e!==this.generation){if(!n.ok)throw new Error(`${n.error.code}: ${n.error.message}`);return n.value}if(!n.ok)throw this.store.update(s=>{s.status="error",s.error=`${n.error.code}: ${n.error.message}`}),new Error(`session.models failed: ${n.error.code}: ${n.error.message}`);const{current:t,routable:o,groups:c,failures:d}=n.value;return this.store.update(s=>{s.current=t,s.routable=o,s.groups=c,s.failures=d,s.status="ready",s.error=null}),n.value}async select(e){this.assertAvailable();const n=++this.generation;this.store.update(o=>{o.status="selecting",o.error=null});const{result:t}=await this.sessions.selectModel({sessionId:this.sessionId,provider:e.provider,model:e.model,...e.reasoningEffort===void 0?{}:{reasoningEffort:e.reasoningEffort}});if(this.disposed||n!==this.generation){if(!t.ok)throw new Error(`${t.error.code}: ${t.error.message}`);return}if(!t.ok)throw this.store.update(o=>{o.status="error",o.error=`${t.error.code}: ${t.error.message}`}),new Error(`session.selectModel failed: ${t.error.code}: ${t.error.message}`);this.store.update(o=>{o.current=t.value.selected,o.routable=!0,o.status="ready",o.error=null})}resetConnected(){this.disposed||(++this.generation,this.store.update(e=>{e.current=null,e.routable=null,e.groups=[],e.failures=[],e.status="idle",e.error=null}),this.available()&&this.load().catch(()=>{}))}dispose(){this.disposed=!0}assertAvailable(){if(!this.available())throw new Error("model selection is unavailable for addressed subagent sessions")}},F=class extends H.Service{static{l(this,"ModelDirectoryResolver")}static inject=["connection","sessions","remote"];live={directories:new Map};blockReason;constructor(e,n){super(e,"modelDirectories"),this.blockReason=n.blockReason,e.on("connection/reset",()=>{for(const o of this.live.directories.values())o.resetConnected()});const t=l(()=>{for(const o of this.live.directories.values())o.load().catch(()=>{})},"refresh");e.remote.$on("llm/adapters-updated",t),e.remote.$on("settings/document-updated",t)}directoryFor(e){const{live:n}=this,t=n.directories.get(e);if(t!==void 0)return t;const o=this.ctx.get("sessions"),c=o.scope(e);if(c===void 0)throw new Error(`ui-model-selection: session "${String(e)}" resolved no scope`);const d=new z(this.ctx.get("connection").api.sessions,e,()=>o.subagentAddress(e)===void 0);n.directories.set(e,d);const s=this.ctx.get("conversation");if(s!==void 0){const p=l(()=>{s.blocks.set(e,d.store.getSnapshot().routable===!1?{reason:this.blockReason()}:void 0)},"publish");p(),c.effect(()=>{const m=d.store.subscribe(p);return()=>{m(),s.blocks.set(e,void 0)}},"ui-model-selection: composer block")}return c.effect(()=>()=>{d.dispose(),n.directories.delete(e)},"ui-model-selection: session directory"),d}};function V(e){var n,t,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var c=e.length;for(n=0;n<c;n++)e[n]&&(t=V(e[n]))&&(o&&(o+=" "),o+=t)}else for(t in e)e[t]&&(o&&(o+=" "),o+=t);return o}l(V,"r");function C(){for(var e,n,t=0,o="",c=arguments.length;t<c;t++)(e=arguments[t])&&(n=V(e))&&(o&&(o+=" "),o+=n);return o}l(C,"clsx");const X="._4DtYq_root{min-width:0;position:relative}._4DtYq_trigger{min-width:0;max-width:220px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:24px;outline:none;align-items:center;gap:4px;padding:0 4px 0 8px;font-size:13px;font-weight:500;line-height:20px;display:flex}._4DtYq_trigger:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}._4DtYq_trigger:focus-visible{box-shadow:0 0 0 2px var(--dsw-alias-border-l3)}._4DtYq_trigger:disabled{color:var(--dsw-alias-label-dimmed);cursor:default}._4DtYq_triggerLabel{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._4DtYq_triggerEffort{color:var(--dsw-alias-label-caption);flex:none}._4DtYq_chevron{color:var(--dsw-alias-label-caption);flex:none;transition:transform .12s}._4DtYq_chevronOpen{transform:rotate(180deg)}._4DtYq_menu{z-index:20;border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);width:min(240px,100vw - 32px);max-height:min(360px,100vh - 96px);box-shadow:var(--dsw-shadow-lv3);color:var(--dsw-alias-label-primary);--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);border-radius:12px;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0;overflow:hidden}._4DtYq_status,._4DtYq_empty{color:var(--dsw-alias-label-tertiary);padding:10px;font-size:13px;line-height:20px}._4DtYq_error,._4DtYq_warning{background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;padding:7px 8px;font-size:12px;line-height:18px;display:flex}._4DtYq_warning{background:var(--dsw-alias-bg-module-platform);color:var(--dsw-alias-state-warn-label)}._4DtYq_retry{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-weight:600}._4DtYq_groups{min-height:0;overflow-y:auto}._4DtYq_group+._4DtYq_group{margin-top:4px}._4DtYq_groupTitle{z-index:1;background:var(--dsw-specific-menu);color:var(--dsw-alias-label-tertiary);padding:5px 8px 3px;font-size:12px;font-weight:500;line-height:18px;position:sticky;top:0}._4DtYq_option{width:100%;min-height:38px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;outline:none;align-items:center;gap:8px;padding:6px 8px;display:flex}._4DtYq_option:hover:not(:disabled),._4DtYq_option:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}._4DtYq_selected{background:0 0}._4DtYq_option:disabled{color:var(--dsw-alias-label-dimmed);cursor:default}._4DtYq_optionCopy{flex-direction:column;flex:1;min-width:0;display:flex}._4DtYq_modelName{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}._4DtYq_description{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}._4DtYq_check{color:var(--dsw-alias-label-primary);flex:0 0 18px;place-items:center;display:grid}._4DtYq_cell{width:100%;height:40px;color:var(--dsw-alias-label-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:0 10px;font-size:14px;line-height:22px;display:flex}._4DtYq_cell:hover{background:var(--dsw-alias-interactive-bg-hover)}._4DtYq_cellLabel{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}._4DtYq_cellValue{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dsw-alias-label-tertiary);flex:0 auto;overflow:hidden}._4DtYq_cellChevron{color:var(--dsw-alias-label-tertiary);flex:none}",U="@deepseek-ai/dsh-client-ui-model-selection/ModelSelect.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(U)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-model-selection",e.dataset.pluginCss=U,e.textContent=X,document.head.appendChild(e)}var a={triggerLabel:"_4DtYq_triggerLabel",selected:"_4DtYq_selected",check:"_4DtYq_check",trigger:"_4DtYq_trigger",description:"_4DtYq_description",cellValue:"_4DtYq_cellValue",cellChevron:"_4DtYq_cellChevron",cell:"_4DtYq_cell",chevronOpen:"_4DtYq_chevronOpen",groupTitle:"_4DtYq_groupTitle",triggerEffort:"_4DtYq_triggerEffort",modelName:"_4DtYq_modelName",menu:"_4DtYq_menu",cellLabel:"_4DtYq_cellLabel",warning:"_4DtYq_warning",group:"_4DtYq_group",optionCopy:"_4DtYq_optionCopy",chevron:"_4DtYq_chevron",status:"_4DtYq_status",groups:"_4DtYq_groups",retry:"_4DtYq_retry",option:"_4DtYq_option",root:"_4DtYq_root",empty:"_4DtYq_empty",error:"_4DtYq_error"};function Z({locked:e,available:n,directory:t,load:o,select:c,t:d}){const s=(0,f.useSyncExternalStore)(r=>t.subscribe(r),()=>t.getSnapshot()),[p,m]=(0,f.useState)(!1),[_,j]=(0,f.useState)("root"),D=(0,f.useRef)("load"),[M,K]=(0,f.useState)(null),B=(0,f.useRef)(0),N=(0,f.useRef)(null),J=(0,f.useRef)(null),A=(0,f.useRef)([]),L=(0,f.useId)(),O=(0,f.useMemo)(()=>s.groups.flatMap(r=>r.models.map(u=>({group:r,model:u,selection:{provider:r.id,model:u.id,...u.reasoning?.defaultEffort===void 0?{}:{reasoningEffort:u.reasoning.defaultEffort}}}))),[s.groups]),I=O[s.current===null?-1:O.findIndex(r=>r.selection.provider===s.current?.provider&&r.selection.model===s.current.model)],h=I?.model.reasoning,x=s.current?.reasoningEffort??h?.defaultEffort,w=h===void 0?void 0:x===void 0?d("effort.providerDefault"):h.efforts.find(r=>r.id===x)?.name??x,W=(0,f.useMemo)(()=>h===void 0?[]:[...h.defaultEffort===void 0?[{key:"provider-default",effort:void 0,label:d("effort.providerDefault")}]:[],...h.efforts.map(r=>({key:`effort:${r.id}`,effort:r.id,label:r.name,...r.description===void 0?{}:{description:r.description}}))],[h,d]),T=s.status==="selecting",S=l(()=>{D.current="load",o()},"reload");if((0,f.useEffect)(()=>{n&&(D.current="load",o())},[n,o]),(0,f.useEffect)(()=>{if(!p)return;const r=l(u=>{N.current?.contains(u.target)||m(!1)},"closeOutside");return document.addEventListener("mousedown",r),()=>{document.removeEventListener("mousedown",r)}},[p]),!n)return null;const ne=l(()=>{j("root"),m(!0),S()},"show"),k=l((r=!1)=>{m(!1),j("root"),r&&queueMicrotask(()=>{J.current?.focus()})},"close"),ae=l(r=>{const u=A.current.filter(y=>y!==null);if(u.length===0)return;const g=u.findIndex(y=>y===document.activeElement);u[(Math.max(g,0)+r+u.length)%u.length]?.focus()},"moveFocus"),le=l(r=>{if(r.key==="Escape"&&p){r.preventDefault(),_!=="root"?j("root"):k(!0);return}p&&(r.key==="ArrowDown"||r.key==="ArrowUp")&&(r.preventDefault(),ae(r.key==="ArrowDown"?1:-1))},"onRootKeyDown"),de=l(r=>{r.relatedTarget instanceof Node&&N.current?.contains(r.relatedTarget)||k()},"onBlur"),G=l(r=>{if(r){N.current!==null&&k(!0);return}const u=t.getSnapshot().error;u!==null&&(B.current+=1,K({seq:B.current,text:d("error.action",{message:u})}))},"settleSelection"),ce=l(r=>{if(s.current?.provider===r.provider&&s.current.model===r.model){k(!0);return}D.current="select",c(r).then(G)},"choose"),ue=l(r=>{if(s.current===null)return;if(x===r){k(!0);return}const u={provider:s.current.provider,model:s.current.model,...r===void 0?{}:{reasoningEffort:r}};D.current="select",c(u).then(G)},"chooseEffort"),q=I?.model.name??d("trigger.fallback"),pe=w===void 0?q:`${q} · ${w}`,fe=I===void 0?d("trigger.selectAria"):w===void 0?d("trigger.aria",{model:q}):d("trigger.ariaEffort",{model:q,effort:w});A.current=[];let me=0;const $=l(()=>{const r=me++;return u=>{A.current[r]=u}},"itemRef");return(0,i.jsxs)("div",{ref:N,className:a.root,onKeyDown:le,onBlur:de,children:[(0,i.jsxs)("button",{ref:J,type:"button",className:a.trigger,"aria-label":fe,"aria-haspopup":"menu","aria-expanded":p,"aria-controls":p?`${L}-menu`:void 0,title:pe,disabled:e,onClick:l(()=>{p?k():ne()},"onClick"),children:[(0,i.jsx)("span",{className:a.triggerLabel,children:q}),w!==void 0&&(0,i.jsx)("span",{className:a.triggerEffort,children:w}),(0,i.jsx)(b.IconChevronDownOutline14,{className:C(a.chevron,p&&a.chevronOpen)})]}),p&&(0,i.jsxs)("div",{id:`${L}-menu`,className:a.menu,role:"menu","aria-label":d("menu.aria"),"aria-busy":s.status==="loading"||T,children:[_==="root"&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitem",className:a.cell,onClick:l(()=>{j("model")},"onClick"),children:[(0,i.jsx)("span",{className:a.cellLabel,children:d("menu.model")}),(0,i.jsx)("span",{className:a.cellValue,children:q}),(0,i.jsx)(b.IconChevronRightOutline14,{className:a.cellChevron})]}),h!==void 0&&(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitem",className:a.cell,onClick:l(()=>{j("effort")},"onClick"),children:[(0,i.jsx)("span",{className:a.cellLabel,children:d("menu.effort")}),(0,i.jsx)("span",{className:a.cellValue,children:w}),(0,i.jsx)(b.IconChevronRightOutline14,{className:a.cellChevron})]})]}),_==="model"&&(0,i.jsxs)(i.Fragment,{children:[s.status==="loading"&&(0,i.jsx)("div",{className:a.status,children:d("status.loading")}),s.error!==null&&D.current==="load"&&(0,i.jsxs)("div",{className:a.error,children:[(0,i.jsx)("span",{children:d("error.action",{message:s.error})}),(0,i.jsx)("button",{type:"button",className:a.retry,onClick:S,children:d("retry")})]}),s.failures.map(r=>(0,i.jsxs)("div",{className:a.warning,children:[(0,i.jsx)("span",{children:d("warning.groupLoad",{name:r.name,message:r.message})}),(0,i.jsx)("button",{type:"button",className:a.retry,onClick:S,children:d("retry")})]},r.id)),(0,i.jsx)("div",{className:C(a.groups,"scrollable"),children:s.groups.map(r=>{const u=`${L}-${r.id}`;return(0,i.jsxs)("section",{role:"group","aria-labelledby":u,className:a.group,children:[(0,i.jsx)("div",{className:a.groupTitle,id:u,children:r.name}),r.models.map(g=>{const y=s.current?.provider===r.id&&s.current.model===g.id;return(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitemradio","aria-checked":y,className:C(a.option,y&&a.selected),title:g.name,disabled:T,onClick:l(()=>{ce({provider:r.id,model:g.id})},"onClick"),children:[(0,i.jsxs)("span",{className:a.optionCopy,children:[(0,i.jsx)("span",{className:a.modelName,children:g.name}),g.description!==void 0&&(0,i.jsx)("span",{className:a.description,children:g.description})]}),(0,i.jsx)("span",{className:a.check,children:y?(0,i.jsx)(b.IconCheckOutline16,{}):null})]},g.id)})]},r.id)})}),s.status==="ready"&&O.length===0&&(0,i.jsx)("div",{className:a.empty,children:d("empty.models")})]}),_==="effort"&&(0,i.jsxs)(i.Fragment,{children:[s.error!==null&&D.current==="load"&&(0,i.jsxs)("div",{className:a.error,children:[(0,i.jsx)("span",{children:d("error.action",{message:s.error})}),(0,i.jsx)("button",{type:"button",className:a.retry,onClick:S,children:d("action.reload")})]}),W.length===0?(0,i.jsx)("div",{className:a.empty,children:d("empty.efforts")}):W.map(r=>(0,i.jsxs)("button",{ref:$(),type:"button",role:"menuitemradio","aria-checked":x===r.effort,className:C(a.option,x===r.effort&&a.selected),disabled:T,onClick:l(()=>{ue(r.effort)},"onClick"),children:[(0,i.jsxs)("span",{className:a.optionCopy,children:[(0,i.jsx)("span",{className:a.modelName,children:r.label}),r.description!==void 0&&(0,i.jsx)("span",{className:a.description,children:r.description})]}),(0,i.jsx)("span",{className:a.check,children:x===r.effort?(0,i.jsx)(b.IconCheckOutline16,{}):null})]},r.key))]})]}),M!==null&&(0,i.jsx)(b.Toast,{text:M.text,icon:(0,i.jsx)(b.IconWarningOutline16,{}),anchor:N.current?.closest("[data-composer-card]")??null,onDone:l(()=>{K(null)},"onDone")},M.seq)]})}l(Z,"ModelSelect");const ee={"command.description":"选择本会话使用的模型","option.loadError":"目录加载失败:{message}","trigger.fallback":"选择模型","trigger.selectAria":"选择模型","trigger.aria":"选择模型,当前 {model}","trigger.ariaEffort":"选择模型,当前 {model},推理等级 {effort}","menu.aria":"模型与推理等级","menu.model":"模型","menu.effort":"推理等级","effort.providerDefault":"Default","status.loading":"正在刷新模型列表…","error.action":"模型操作失败:{message}","action.reload":"重新加载","warning.groupLoad":"{name} 加载失败:{message}","empty.models":"没有可用的模型。","blocked.composer":"当前模型不可用,请先选择模型","empty.efforts":"当前模型未提供推理等级。"},re={"command.description":"Select the model for this conversation","option.loadError":"Catalog failed to load: {message}","trigger.fallback":"Select model","trigger.selectAria":"Select model","trigger.aria":"Select model, current {model}","trigger.ariaEffort":"Select model, current {model}, reasoning effort {effort}","menu.aria":"Model and reasoning effort","menu.model":"Model","menu.effort":"Effort","effort.providerDefault":"Default","status.loading":"Refreshing model list…","error.action":"Model operation failed: {message}","action.reload":"Reload","warning.groupLoad":"{name} failed to load: {message}","empty.models":"No models available.","blocked.composer":"This model is unavailable — select one to continue","empty.efforts":"This model provides no reasoning effort levels."};function P(e,n){return`${e}/${n}`}l(P,"rowId");function oe(e,n){const t=[];for(const o of e.groups)for(const c of o.models)t.push({id:P(o.id,c.id),label:c.name,detail:c.description!==void 0?`${o.name} · ${c.description}`:o.name,...e.current.provider===o.id&&e.current.model===c.id?{active:!0}:{}});for(const o of e.failures)t.push({id:`failure/${o.id}`,label:o.name,detail:n("option.loadError",{message:o.message})});return t}l(oe,"optionsOf");function te(e,n){for(const t of e.groups)for(const o of t.models){if(P(t.id,o.id)!==n)continue;const c=e.current?.provider===t.id&&e.current.model===o.id?e.current?.reasoningEffort??o.reasoning?.defaultEffort:o.reasoning?.defaultEffort;return{provider:t.id,model:o.id,...c===void 0?{}:{reasoningEffort:c}}}}l(te,"selectionOf");const R="model",se=["commandUi","connection","locale","sessions","slots","remote"];function ie(e){e.effect(()=>e.locale.register(R,{zh:ee,en:re}),"ui-model-selection: dictionaries");const n=e.locale.bind(R);e.plugin(F,{blockReason:l(()=>n("blocked.composer"),"blockReason")}),e.inject(["commandUi","modelDirectories"],t=>{const o=t.get("commandUi"),c=t.modelDirectories,d=t.sessions;t.effect(()=>o.register({name:"model",description:n("command.description"),available:l(s=>d.subagentAddress(s.sessionId)===void 0,"available"),ui:{kind:"popupSelect",options:l(async s=>{if(d.subagentAddress(s.sessionId)!==void 0)throw new Error("model selection is unavailable for addressed subagent sessions");return oe(await c.directoryFor(s.sessionId).load(),n)},"options"),onSelect:l(async(s,p)=>{if(d.subagentAddress(p.sessionId)!==void 0)throw new Error("model selection is unavailable for addressed subagent sessions");const m=c.directoryFor(p.sessionId),_=te(m.store.getSnapshot(),s.id);if(_===void 0)throw new Error("this provider's catalog failed to load — pick a model from a loaded group");await m.select(_)},"onSelect")}}),"ui-model-selection: /model contribution")}),e.inject(["slots","modelDirectories"],t=>{const o=t.modelDirectories,c=t.sessions;t.slots.inject("conversation.input.model",()=>t.slots.register({name:"conversation.input.model",locale:R,inject:l(d=>{const s=o.directoryFor(d),p=c.subagentAddress(d)===void 0;return{available:p,directory:s.store,load:l(()=>{p&&s.load().catch(()=>{})},"load"),select:l(m=>p?s.select(m).then(()=>!0,()=>!1):Promise.resolve(!1),"select")}},"inject")},Z))})}return l(ie,"apply"),Y.ModelDirectory=z,Y.ModelDirectoryResolver=F,Y.apply=ie,Y.inject=se,E.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-model-selection","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-model-selection","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-commands","@deepseek-ai/dsh-api-remotes"],"platform":"web"}},"license":"MIT","peerDependencies":{"clsx":"^2.1.1","react":"^18.2.0","@deepseek-ai/dsh-api-remotes":"^0.0.8","@deepseek-ai/dsh-client-connection":"^0.0.8","@deepseek-ai/dsh-client-locale":"^0.0.8","@deepseek-ai/dsh-client-ui-commands":"^0.0.8","@deepseek-ai/dsh-client-ui-conversation":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-client-ui-primitives":"^0.0.8","@deepseek-ai/dsh-client-ui-input-trigger":"^0.0.8","@deepseek-ai/dsh-invariants":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/cordis":"^4.0.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var G=Object.defineProperty;var o=(m,_)=>G(m,"name",{value:_,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-permission-presets",factory:o(m=>{var _={exports:{}},k=_.exports;Object.defineProperty(k,Symbol.toStringTag,{value:"Module"});let d=m("react/jsx-runtime"),v=m("react"),x=m("@deepseek-ai/dsh-client-ui-primitives"),M=m("@deepseek-ai/dsh-client-runtime/client"),C=m("@deepseek-ai/dsh-client-schema-form");const Q="danger-full-access";function q(e){return/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)?e.split("-").map(s=>s.charAt(0).toUpperCase()+s.slice(1)).join(" "):e}o(q,"displayPresetName");function S(e,s){return e==="danger-full-access"?"Full access":q(s)}o(S,"displayPermissionPreset");const N=".i75MQq_row{border-bottom:1px solid var(--dsw-alias-border-l2);align-items:center;gap:8px;padding:16px 0;display:flex}.i75MQq_rowText{flex-direction:column;flex:1;gap:4px;min-width:0;padding-right:48px;display:flex}.i75MQq_title{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:400;line-height:22px}.i75MQq_desc{color:var(--dsw-alias-label-tertiary);font-size:12px;font-weight:400;line-height:18px}.i75MQq_selector{background:var(--dsw-alias-bg-module-platform);height:36px;font:inherit;color:var(--dsw-alias-label-primary);cursor:pointer;border:none;border-radius:18px;align-items:center;gap:12px;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}.i75MQq_selector:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.i75MQq_selector:disabled{cursor:default}.i75MQq_chevron{flex:none}",P="@deepseek-ai/dsh-client-ui-permission-presets/PermissionRow.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(P)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-permission-presets",e.dataset.pluginCss=P,e.textContent=N,document.head.appendChild(e)}var h={desc:"i75MQq_desc",rowText:"i75MQq_rowText",row:"i75MQq_row",selector:"i75MQq_selector",chevron:"i75MQq_chevron",title:"i75MQq_title"};function L({load:e,select:s,usePermission:t,t:n}){const i=t(c=>c),[r,u]=(0,v.useState)(!1),[y,g]=(0,v.useState)(!1),[a,l]=(0,v.useState)(!1);if((0,v.useEffect)(()=>{e()},[e]),(0,v.useEffect)(()=>{i.writable&&i.status!=="unavailable"||(u(!1),l(!1),g(!1))},[i.status,i.writable]),i.status==="unavailable")return null;const f=i.options.find(c=>c.id===i.currentValue),p=i.status==="loading"||i.status==="saving"||y,$=f?.label??n(p?"loading":"unavailable"),D=i.error??n("description");return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:h.row,children:[(0,d.jsxs)("div",{className:h.rowText,children:[(0,d.jsx)("div",{className:h.title,children:n("title")}),(0,d.jsx)("div",{className:h.desc,role:i.error===null?void 0:"alert",children:D})]}),(0,d.jsx)(x.Menu,{open:r,onClose:o(()=>{u(!1)},"onClose"),items:i.options.map(c=>({id:c.id,label:c.label})),selectedId:i.currentValue,onSelect:o(c=>{if(u(!1),c!==i.currentValue){if(c==="danger-full-access"){l(!1),g(!0);return}s(c)}},"onSelect"),align:"end",portal:!0,anchor:(0,d.jsxs)("button",{type:"button",className:h.selector,"aria-haspopup":"menu","aria-expanded":r,disabled:p||!i.writable||i.options.length===0,onClick:o(()=>{u(c=>!c)},"onClick"),children:[$,(0,d.jsx)(x.IconChevronDownOutline14,{className:h.chevron})]})})]}),(0,d.jsx)(x.RiskConfirmation,{open:y,title:n("confirm.title"),description:n("confirm.description"),acknowledgeLabel:n("confirm.acknowledge"),cancelLabel:n("confirm.cancel"),confirmLabel:n("confirm.enable"),acknowledged:a,disabled:!i.writable||i.status==="saving",onAcknowledgedChange:l,onCancel:o(()=>{l(!1),g(!1)},"onCancel"),onConfirm:o(()=>{l(!1),g(!1),s(Q)},"onConfirm")})]})}o(L,"PermissionRow");const O={title:"权限",description:"选择新会话的默认权限模式",loading:"加载中",unavailable:"不可用","confirm.title":"确认启用 Full access?","confirm.description":"启用 Full access 后,新会话将减少确认步骤,并且可以直接执行更多操作,包括敏感操作、文件修改或外部命令。仅建议在你信任后续任务时使用。","confirm.acknowledge":"我已了解风险,并愿意继续","confirm.cancel":"取消","confirm.enable":"启用 Full access"},I={title:"Permission",description:"Choose the default permission mode for new sessions",loading:"Loading",unavailable:"Unavailable","confirm.title":"Enable Full access?","confirm.description":"Full access lets new sessions reduce confirmation steps and perform more actions directly, including sensitive operations, file changes, or external commands. Only use it when you trust subsequent tasks.","confirm.acknowledge":"I understand the risks and want to continue","confirm.cancel":"Cancel","confirm.enable":"Enable Full access"},w={"confirm.title":"确认启用 Full access?","confirm.description":"启用 Full access 后,agent 将减少确认步骤,并且可以直接执行更多操作,包括敏感操作、文件修改或外部命令。仅建议在你信任当前任务时使用。","confirm.acknowledge":"我已了解风险,并愿意继续","confirm.cancel":"取消","confirm.enable":"启用 Full access"},b={"confirm.title":"Enable Full access?","confirm.description":"Full access reduces confirmation steps and lets the agent perform more actions directly, including sensitive operations, file changes, or external commands. Only use it when you trust the current task.","confirm.acknowledge":"I understand the risks and want to continue","confirm.cancel":"Cancel","confirm.enable":"Enable Full access"},j="permission";function V(e){const s=e.value?.defaultPreset;if(typeof s!="string")throw new Error("permission settings has no defaultPreset value");const t=(0,C.nodeAtPath)((0,C.rehydrateSchema)(e.schema),["defaultPreset"]);if(t===void 0)throw new Error("permission settings schema has no defaultPreset field");const n=(t.type==="union"?t.list??[]:[t]).flatMap(i=>{const r=i;if(r.type!=="const"||typeof r.value!="string")return[];const u=r.meta?.description;return[{id:r.value,label:typeof u=="string"&&u.length>0?S(r.value,u):S(r.value,r.value)}]});if(n.length===0||!n.some(i=>i.id===s))throw new Error("permission settings schema does not advertise its current preset");return{currentValue:s,options:n}}o(V,"permissionDefaultOf");var z=class{static{o(this,"PermissionPresetSettingsController")}api;store=(0,M.createSnapshotStore)({status:"idle",error:null,writable:!1,currentValue:"",options:[],revision:0});generation=0;view;constructor(e){this.api=e}async load(){const e=++this.generation;this.store.update(s=>{s.status="loading",s.error=null});try{const s=await this.api.settings.describe({});if(!s.result.ok)throw new Error(s.result.error.message);if(e!==this.generation)return;const t=s.result.value.namespaces.find(n=>n.ns===j);if(t===void 0){this.view=void 0,this.store.update(n=>{n.status="unavailable",n.writable=!1,n.currentValue="",n.options=[]});return}this.accept(t,s.result.value.writable)}catch(s){if(e!==this.generation)return;this.fail(s)}}async select(e){const s=this.view,t=this.store.getSnapshot();if(s===void 0||!t.writable)return;const n=++this.generation;this.store.update(i=>{i.status="saving",i.error=null});try{const i=await this.api.settings.mutate({ns:j,ops:[{op:"set",path:["defaultPreset"],value:e}],expectedRevision:s.revision});if(n!==this.generation)return;if(!i.result.ok)throw new Error(i.result.error.message);this.accept(i.result.value,!0)}catch(i){if(n!==this.generation)return;this.fail(i)}}dispose(){this.generation+=1,this.view=void 0}accept(e,s){const t=V(e);this.view=e,this.store.update(n=>{n.status="ready",n.error=null,n.writable=s,n.currentValue=t.currentValue,n.options=t.options,n.revision=e.revision})}fail(e){this.store.update(s=>{s.status="error",s.error=e instanceof Error?e.message:String(e)})}};function A(e){e.store.getSnapshot().status!=="idle"&&e.load()}o(A,"refreshPermissionIfLoaded");const T=["commandUi","sessions","slots","locale","connection","remote"],E="permission.access";function F(e){return e?.projections.faceOf("permissions").getSnapshot()}o(F,"selectOf");function R(e,s){return e.options.filter(t=>t.value!=="custom").map(t=>({id:t.value,label:S(t.value,t.name),...t.description!==void 0?{detail:t.description}:{},...t.value===e.currentValue?{active:!0}:{},...t.value==="danger-full-access"?{confirmation:{title:s("confirm.title"),description:s("confirm.description"),acknowledgeLabel:s("confirm.acknowledge"),cancelLabel:s("confirm.cancel"),confirmLabel:s("confirm.enable")}}:{}}))}o(R,"optionsOf");function U(e){const s=e.get("commandUi"),t=e.sessions;e.effect(()=>{const a=[e.locale.register(E,"zh",{"confirm.title":w["confirm.title"],"confirm.description":w["confirm.description"],"confirm.acknowledge":w["confirm.acknowledge"],"confirm.cancel":w["confirm.cancel"],"confirm.enable":w["confirm.enable"]}),e.locale.register(E,"en",{"confirm.title":b["confirm.title"],"confirm.description":b["confirm.description"],"confirm.acknowledge":b["confirm.acknowledge"],"confirm.cancel":b["confirm.cancel"],"confirm.enable":b["confirm.enable"]})];return()=>{for(const l of a)l()}},"ui-permission: Full access confirmation dictionaries");const n=e.locale.bind(E),i=o(a=>t.binding(a.sessionId)?.session,"sessionFor");e.effect(()=>e.locale.register("settings.permission",{zh:O,en:I}),"ui-permission: settings row dictionaries");const r=new z(e.get("connection").api),u=o(()=>r.load(),"load"),y=o(a=>r.select(a),"select"),g=o(()=>({hooks:{permission:r.store},load:u,select:y}),"injected");e.effect(()=>{const a=o(()=>{A(r)},"refresh"),l=[e.remote.$on("settings/document-updated",f=>{f==="permission"&&a()}),e.on("connection/reset",()=>{a()})];return()=>{r.dispose();for(const f of l)f()}},"ui-permission: settings invalidations"),e.slots.inject("settings.general.item",()=>e.slots.register({name:"settings.general.item",id:"permission",order:-20,locale:"settings.permission",inject:g},L)),e.effect(()=>s.decorate({name:"permission",available:o(a=>F(i(a))!==void 0,"available"),ui:{kind:"popupSelect",options:o(a=>{const l=F(i(a));if(l===void 0)throw new Error("permission presets are not available on this host");return Promise.resolve(R(l,n))},"options"),onSelect:o(async(a,l)=>{const f=i(l);if(f===void 0)throw new Error("this session is not materialized yet");const p=await f.command(`/permission ${a.id}`);if(!p.ok)throw new Error(`permission switch failed: ${p.error.code}: ${p.error.message}`);if(!p.value.matched)throw new Error("the host offers no /permission command")},"onSelect")}}),"ui-permission: /permission decoration")}return o(U,"apply"),k.apply=U,k.inject=T,_.exports},"factory")});
|
|
1
|
+
var G=Object.defineProperty;var o=(m,_)=>G(m,"name",{value:_,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-permission-presets",factory:o(m=>{var _={exports:{}},k=_.exports;Object.defineProperty(k,Symbol.toStringTag,{value:"Module"});let d=m("react/jsx-runtime"),v=m("react"),x=m("@deepseek-ai/dsh-client-ui-primitives"),M=m("@deepseek-ai/dsh-client-runtime/client"),C=m("@deepseek-ai/dsh-client-schema-form");const Q="danger-full-access";function q(e){return/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)?e.split("-").map(s=>s.charAt(0).toUpperCase()+s.slice(1)).join(" "):e}o(q,"displayPresetName");function S(e,s){return e==="danger-full-access"?"Full access":q(s)}o(S,"displayPermissionPreset");const N=".i75MQq_row{border-bottom:1px solid var(--dsw-alias-border-l2);align-items:center;gap:8px;padding:16px 0;display:flex}.i75MQq_rowText{flex-direction:column;flex:1;gap:4px;min-width:0;padding-right:48px;display:flex}.i75MQq_title{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:400;line-height:22px}.i75MQq_desc{color:var(--dsw-alias-label-tertiary);font-size:12px;font-weight:400;line-height:18px}.i75MQq_selector{background:var(--dsw-alias-bg-module-platform);height:36px;font:inherit;color:var(--dsw-alias-label-primary);cursor:pointer;border:none;border-radius:18px;align-items:center;gap:12px;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}.i75MQq_selector:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.i75MQq_selector:disabled{cursor:default}.i75MQq_chevron{flex:none}",P="@deepseek-ai/dsh-client-ui-permission-presets/PermissionRow.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(P)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-permission-presets",e.dataset.pluginCss=P,e.textContent=N,document.head.appendChild(e)}var h={row:"i75MQq_row",rowText:"i75MQq_rowText",title:"i75MQq_title",selector:"i75MQq_selector",desc:"i75MQq_desc",chevron:"i75MQq_chevron"};function L({load:e,select:s,usePermission:t,t:n}){const i=t(c=>c),[r,u]=(0,v.useState)(!1),[y,g]=(0,v.useState)(!1),[a,l]=(0,v.useState)(!1);if((0,v.useEffect)(()=>{e()},[e]),(0,v.useEffect)(()=>{i.writable&&i.status!=="unavailable"||(u(!1),l(!1),g(!1))},[i.status,i.writable]),i.status==="unavailable")return null;const f=i.options.find(c=>c.id===i.currentValue),p=i.status==="loading"||i.status==="saving"||y,$=f?.label??n(p?"loading":"unavailable"),D=i.error??n("description");return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:h.row,children:[(0,d.jsxs)("div",{className:h.rowText,children:[(0,d.jsx)("div",{className:h.title,children:n("title")}),(0,d.jsx)("div",{className:h.desc,role:i.error===null?void 0:"alert",children:D})]}),(0,d.jsx)(x.Menu,{open:r,onClose:o(()=>{u(!1)},"onClose"),items:i.options.map(c=>({id:c.id,label:c.label})),selectedId:i.currentValue,onSelect:o(c=>{if(u(!1),c!==i.currentValue){if(c==="danger-full-access"){l(!1),g(!0);return}s(c)}},"onSelect"),align:"end",portal:!0,anchor:(0,d.jsxs)("button",{type:"button",className:h.selector,"aria-haspopup":"menu","aria-expanded":r,disabled:p||!i.writable||i.options.length===0,onClick:o(()=>{u(c=>!c)},"onClick"),children:[$,(0,d.jsx)(x.IconChevronDownOutline14,{className:h.chevron})]})})]}),(0,d.jsx)(x.RiskConfirmation,{open:y,title:n("confirm.title"),description:n("confirm.description"),acknowledgeLabel:n("confirm.acknowledge"),cancelLabel:n("confirm.cancel"),confirmLabel:n("confirm.enable"),acknowledged:a,disabled:!i.writable||i.status==="saving",onAcknowledgedChange:l,onCancel:o(()=>{l(!1),g(!1)},"onCancel"),onConfirm:o(()=>{l(!1),g(!1),s(Q)},"onConfirm")})]})}o(L,"PermissionRow");const O={title:"权限",description:"选择新会话的默认权限模式",loading:"加载中",unavailable:"不可用","confirm.title":"确认启用 Full access?","confirm.description":"启用 Full access 后,新会话将减少确认步骤,并且可以直接执行更多操作,包括敏感操作、文件修改或外部命令。仅建议在你信任后续任务时使用。","confirm.acknowledge":"我已了解风险,并愿意继续","confirm.cancel":"取消","confirm.enable":"启用 Full access"},I={title:"Permission",description:"Choose the default permission mode for new sessions",loading:"Loading",unavailable:"Unavailable","confirm.title":"Enable Full access?","confirm.description":"Full access lets new sessions reduce confirmation steps and perform more actions directly, including sensitive operations, file changes, or external commands. Only use it when you trust subsequent tasks.","confirm.acknowledge":"I understand the risks and want to continue","confirm.cancel":"Cancel","confirm.enable":"Enable Full access"},w={"confirm.title":"确认启用 Full access?","confirm.description":"启用 Full access 后,agent 将减少确认步骤,并且可以直接执行更多操作,包括敏感操作、文件修改或外部命令。仅建议在你信任当前任务时使用。","confirm.acknowledge":"我已了解风险,并愿意继续","confirm.cancel":"取消","confirm.enable":"启用 Full access"},b={"confirm.title":"Enable Full access?","confirm.description":"Full access reduces confirmation steps and lets the agent perform more actions directly, including sensitive operations, file changes, or external commands. Only use it when you trust the current task.","confirm.acknowledge":"I understand the risks and want to continue","confirm.cancel":"Cancel","confirm.enable":"Enable Full access"},j="permission";function V(e){const s=e.value?.defaultPreset;if(typeof s!="string")throw new Error("permission settings has no defaultPreset value");const t=(0,C.nodeAtPath)((0,C.rehydrateSchema)(e.schema),["defaultPreset"]);if(t===void 0)throw new Error("permission settings schema has no defaultPreset field");const n=(t.type==="union"?t.list??[]:[t]).flatMap(i=>{const r=i;if(r.type!=="const"||typeof r.value!="string")return[];const u=r.meta?.description;return[{id:r.value,label:typeof u=="string"&&u.length>0?S(r.value,u):S(r.value,r.value)}]});if(n.length===0||!n.some(i=>i.id===s))throw new Error("permission settings schema does not advertise its current preset");return{currentValue:s,options:n}}o(V,"permissionDefaultOf");var z=class{static{o(this,"PermissionPresetSettingsController")}api;store=(0,M.createSnapshotStore)({status:"idle",error:null,writable:!1,currentValue:"",options:[],revision:0});generation=0;view;constructor(e){this.api=e}async load(){const e=++this.generation;this.store.update(s=>{s.status="loading",s.error=null});try{const s=await this.api.settings.describe({});if(!s.result.ok)throw new Error(s.result.error.message);if(e!==this.generation)return;const t=s.result.value.namespaces.find(n=>n.ns===j);if(t===void 0){this.view=void 0,this.store.update(n=>{n.status="unavailable",n.writable=!1,n.currentValue="",n.options=[]});return}this.accept(t,s.result.value.writable)}catch(s){if(e!==this.generation)return;this.fail(s)}}async select(e){const s=this.view,t=this.store.getSnapshot();if(s===void 0||!t.writable)return;const n=++this.generation;this.store.update(i=>{i.status="saving",i.error=null});try{const i=await this.api.settings.mutate({ns:j,ops:[{op:"set",path:["defaultPreset"],value:e}],expectedRevision:s.revision});if(n!==this.generation)return;if(!i.result.ok)throw new Error(i.result.error.message);this.accept(i.result.value,!0)}catch(i){if(n!==this.generation)return;this.fail(i)}}dispose(){this.generation+=1,this.view=void 0}accept(e,s){const t=V(e);this.view=e,this.store.update(n=>{n.status="ready",n.error=null,n.writable=s,n.currentValue=t.currentValue,n.options=t.options,n.revision=e.revision})}fail(e){this.store.update(s=>{s.status="error",s.error=e instanceof Error?e.message:String(e)})}};function A(e){e.store.getSnapshot().status!=="idle"&&e.load()}o(A,"refreshPermissionIfLoaded");const T=["commandUi","sessions","slots","locale","connection","remote"],E="permission.access";function F(e){return e?.projections.faceOf("permissions").getSnapshot()}o(F,"selectOf");function R(e,s){return e.options.filter(t=>t.value!=="custom").map(t=>({id:t.value,label:S(t.value,t.name),...t.description!==void 0?{detail:t.description}:{},...t.value===e.currentValue?{active:!0}:{},...t.value==="danger-full-access"?{confirmation:{title:s("confirm.title"),description:s("confirm.description"),acknowledgeLabel:s("confirm.acknowledge"),cancelLabel:s("confirm.cancel"),confirmLabel:s("confirm.enable")}}:{}}))}o(R,"optionsOf");function U(e){const s=e.get("commandUi"),t=e.sessions;e.effect(()=>{const a=[e.locale.register(E,"zh",{"confirm.title":w["confirm.title"],"confirm.description":w["confirm.description"],"confirm.acknowledge":w["confirm.acknowledge"],"confirm.cancel":w["confirm.cancel"],"confirm.enable":w["confirm.enable"]}),e.locale.register(E,"en",{"confirm.title":b["confirm.title"],"confirm.description":b["confirm.description"],"confirm.acknowledge":b["confirm.acknowledge"],"confirm.cancel":b["confirm.cancel"],"confirm.enable":b["confirm.enable"]})];return()=>{for(const l of a)l()}},"ui-permission: Full access confirmation dictionaries");const n=e.locale.bind(E),i=o(a=>t.binding(a.sessionId)?.session,"sessionFor");e.effect(()=>e.locale.register("settings.permission",{zh:O,en:I}),"ui-permission: settings row dictionaries");const r=new z(e.get("connection").api),u=o(()=>r.load(),"load"),y=o(a=>r.select(a),"select"),g=o(()=>({hooks:{permission:r.store},load:u,select:y}),"injected");e.effect(()=>{const a=o(()=>{A(r)},"refresh"),l=[e.remote.$on("settings/document-updated",f=>{f==="permission"&&a()}),e.on("connection/reset",()=>{a()})];return()=>{r.dispose();for(const f of l)f()}},"ui-permission: settings invalidations"),e.slots.inject("settings.general.item",()=>e.slots.register({name:"settings.general.item",id:"permission",order:-20,locale:"settings.permission",inject:g},L)),e.effect(()=>s.decorate({name:"permission",available:o(a=>F(i(a))!==void 0,"available"),ui:{kind:"popupSelect",options:o(a=>{const l=F(i(a));if(l===void 0)throw new Error("permission presets are not available on this host");return Promise.resolve(R(l,n))},"options"),onSelect:o(async(a,l)=>{const f=i(l);if(f===void 0)throw new Error("this session is not materialized yet");const p=await f.command(`/permission ${a.id}`);if(!p.ok)throw new Error(`permission switch failed: ${p.error.code}: ${p.error.message}`);if(!p.value.matched)throw new Error("the host offers no /permission command")},"onSelect")}}),"ui-permission: /permission decoration")}return o(U,"apply"),k.apply=U,k.inject=T,_.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-permission-presets","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-permission-presets","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-commands","@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-ui-settings"],"platform":"web"}},"license":"MIT","peerDependencies":{"react":"^18.2.0","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-api-remotes":"^0.0.8","@deepseek-ai/dsh-client-connection":"^0.0.8","@deepseek-ai/dsh-client-schema-form":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-client-ui-commands":"^0.0.8","@deepseek-ai/dsh-client-ui-primitives":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/dsh-client-ui-settings":"^0.0.8","@deepseek-ai/dsh-client-locale":"^0.0.8","@deepseek-ai/dsh-client-ui-input-trigger":"^0.0.8","@deepseek-ai/dsh-invariants":"^0.0.8","@deepseek-ai/dsh-permission-presets":"^0.0.8"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var P=Object.defineProperty;var t=(a,r)=>P(a,"name",{value:r,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-plan",factory:t(a=>{var r={exports:{}},d=r.exports;Object.defineProperty(d,Symbol.toStringTag,{value:"Module"});let i=a("react/jsx-runtime"),o=a("react"),v=a("@deepseek-ai/dsh-client-ui-primitives");const k="._7tkIYq_wrap{align-items:center;gap:6px;display:inline-flex}._7tkIYq_chip{background:var(--dsw-alias-state-warn-tertiary);min-width:34px;color:var(--dsw-alias-state-warn-label);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:13px;font-weight:500;line-height:20px;display:inline-flex}._7tkIYq_chip:hover:not(:disabled){color:var(--dsw-alias-state-warn-primary)}._7tkIYq_chip:focus-visible{outline:2px solid var(--dsw-alias-state-warn-label);outline-offset:2px}._7tkIYq_chip:disabled{opacity:.6;cursor:default}._7tkIYq_close{color:currentColor;align-items:center;display:inline-flex}._7tkIYq_error{color:var(--dsw-alias-state-error-primary);font-size:12px;line-height:18px}",h="@deepseek-ai/dsh-client-ui-plan/PlanModeControl.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(h)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-plan",e.dataset.pluginCss=h,e.textContent=k,document.head.appendChild(e)}var s={chip:"_7tkIYq_chip",
|
|
1
|
+
var P=Object.defineProperty;var t=(a,r)=>P(a,"name",{value:r,configurable:!0});window.__ModuleLoader__.load({id:"@deepseek-ai/dsh-client-ui-plan",factory:t(a=>{var r={exports:{}},d=r.exports;Object.defineProperty(d,Symbol.toStringTag,{value:"Module"});let i=a("react/jsx-runtime"),o=a("react"),v=a("@deepseek-ai/dsh-client-ui-primitives");const k="._7tkIYq_wrap{align-items:center;gap:6px;display:inline-flex}._7tkIYq_chip{background:var(--dsw-alias-state-warn-tertiary);min-width:34px;color:var(--dsw-alias-state-warn-label);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:13px;font-weight:500;line-height:20px;display:inline-flex}._7tkIYq_chip:hover:not(:disabled){color:var(--dsw-alias-state-warn-primary)}._7tkIYq_chip:focus-visible{outline:2px solid var(--dsw-alias-state-warn-label);outline-offset:2px}._7tkIYq_chip:disabled{opacity:.6;cursor:default}._7tkIYq_close{color:currentColor;align-items:center;display:inline-flex}._7tkIYq_error{color:var(--dsw-alias-state-error-primary);font-size:12px;line-height:18px}",h="@deepseek-ai/dsh-client-ui-plan/PlanModeControl.module.css";if(typeof document<"u"&&document.querySelector("style[data-plugin-css="+JSON.stringify(h)+"]")===null){const e=document.createElement("style");e.dataset.plugin="@deepseek-ai/dsh-client-ui-plan",e.dataset.pluginCss=h,e.textContent=k,document.head.appendChild(e)}var s={error:"_7tkIYq_error",chip:"_7tkIYq_chip",wrap:"_7tkIYq_wrap",close:"_7tkIYq_close"};function w({useProjection:e,locked:u,exitPlanMode:n,t:g}){const c=e("plan"),[Y,f]=(0,o.useState)(!1),[x,m]=(0,o.useState)(null),p=(0,o.useRef)(!0);if((0,o.useEffect)(()=>(p.current=!0,()=>{p.current=!1}),[]),c===void 0||!(c.pending?!c.active:c.active))return null;const q=t(()=>{f(!0),m(null),n().then(l=>{p.current&&(f(!1),m(l))},l=>{p.current&&(f(!1),m(l instanceof Error?l.message:String(l)))})},"off");return(0,i.jsxs)("span",{className:s.wrap,children:[(0,i.jsxs)("button",{type:"button",className:s.chip,"aria-label":g("chip.on.aria"),title:g("chip.on.title"),disabled:u||Y,onClick:q,children:["Plan",(0,i.jsx)("span",{className:s.close,"aria-hidden":!0,children:(0,i.jsx)(v.IconCloseFill14,{size:12})})]}),x!==null&&(0,i.jsx)("span",{className:s.error,role:"status",title:x,children:"failed to exit plan mode"})]})}t(w,"PlanChip");const y={"chip.on.aria":"plan mode 已开启,按下关闭","chip.on.title":"plan mode 已开启 — 点击关闭(/plan off)","chip.off.aria":"plan mode 已关闭,按下开启","chip.off.title":"plan mode 已关闭 — 点击开启(/plan)"},b={"chip.on.aria":"Plan mode on, press to turn off","chip.on.title":"Plan mode on — click to turn off (/plan off)","chip.off.aria":"Plan mode off, press to turn on","chip.off.title":"Plan mode off — click to turn on (/plan)"},_="plan",I=["slots","remote","remote.commands","locale"];function j(e){e.effect(()=>e.locale.register(_,{zh:y,en:b}),"ui-plan: dictionaries"),e.slots.inject("conversation.input.plan",()=>e.slots.register({name:"conversation.input.plan",locale:_,inject:t(u=>({exitPlanMode:t(async()=>{const n=await e.remote.commands.execute(u,"/plan off");return n.ok?n.value===void 0?"unknown command: /plan off":null:`${n.error.message} (${n.error.code})`},"exitPlanMode")}),"inject")},w))}return t(j,"apply"),d.apply=j,d.inject=I,r.exports},"factory")});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-plan","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-plan","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-conversation"],"platform":"web"}},"license":"MIT","peerDependencies":{"react":"^18.2.0","@deepseek-ai/dsh-api-remotes":"^0.0.8","@deepseek-ai/dsh-client-ui-conversation":"^0.0.8","@deepseek-ai/dsh-client-locale":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-client-ui-primitives":"^0.0.8","@deepseek-ai/dsh-invariants":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/dsh-plan-mode":"^0.0.8","@deepseek-ai/cordis":"^4.0.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-primitives","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-primitives","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./src/*":"./src/*","./package.json":"./package.json"},"license":"MIT","dependencies":{"@shikijs/langs":"^4.3.1","@types/mdast":"^4.0.4","anser":"^2.3.5","clsx":"^2.0.0","katex":"^0.16.47","mdast-util-from-markdown":"^2.0.3","mdast-util-gfm":"^3.1.0","mdast-util-math":"^3.0.0","micromark-core-commonmark":"^2.0.3","micromark-extension-gfm":"^3.0.0","micromark-extension-math":"^3.1.0","micromark-factory-space":"^2.0.1","micromark-util-character":"^2.1.1","micromark-util-classify-character":"^2.0.1","micromark-util-sanitize-uri":"^2.0.1","micromark-util-symbol":"^2.0.1","micromark-util-types":"^2.0.2","react":"^18.2.0","react-dom":"^18.2.0","shiki":"^4.3.1"},"peerDependencies":{"@deepseek-ai/dsh-invariants":"^0.0.8","@deepseek-ai/cordis":"^4.0.1"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@deepseek-ai/dsh-client-ui-settings","version":"0.0.
|
|
1
|
+
{"name":"@deepseek-ai/dsh-client-ui-settings","version":"0.0.8","publishConfig":{"access":"public"},"type":"module","main":"lib/index.js","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./invariant":{"types":"./lib/types/invariant.d.ts","default":"./lib/invariant.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./src/*":"./src/*","./package.json":"./package.json"},"dsh":{"client":{"inject":["@deepseek-ai/dsh-client-connection","@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-api-remotes"],"platform":"web"}},"license":"MIT","peerDependencies":{"react":"^18.2.0","@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-api-remotes":"^0.0.8","@deepseek-ai/dsh-client-runtime":"^0.0.8","@deepseek-ai/dsh-client-ui-slots":"^0.0.8","@deepseek-ai/dsh-client-schema-form":"^0.0.8","@deepseek-ai/dsh-settings":"^0.0.8","@deepseek-ai/dsh-client-connection":"^0.0.8","@deepseek-ai/dsh-invariants":"^0.0.8"}}
|