@deepseek-ai/dsh-client-ui-workspace 0.2.0-rc.1 → 0.2.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.i18n.yaml CHANGED
@@ -27,8 +27,8 @@
27
27
  en: 9eab3bfbaf98c987
28
28
  zh: 54e7e141dae5c9e8
29
29
  /deepseek-ai-dsh-client-ui-workspace/use-this-package/managing-sessions:
30
- en: f6c3a6cfd74f89c0
31
- zh: dbf60c29500e9ed1
30
+ en: 6b5c96c5b723c5f8
31
+ zh: f8ae5f73860dce45
32
32
  /deepseek-ai-dsh-client-ui-workspace/use-this-package/pending-interactions:
33
33
  en: 9fb88260380bf093
34
34
  zh: 3bace2b96ecd4a82
package/README.md CHANGED
@@ -57,7 +57,7 @@ Archive commits without a confirmation dialog for a quiet Session and retains th
57
57
 
58
58
  Session update times use the tertiary label color, including on archived rows. A Session title wider than its row is clipped with an ellipsis at rest. Hovering the row scrolls the title to its far edge — the incremented title of a fork, for example — and reveals it without the ellipsis; leaving the row returns the title to its start.
59
59
 
60
- The keyboard reference exposes New Session, Search sessions, Add workspace, Rename session, Fork session, and Archive session. Desktop defaults use the platform's primary modifier, with Mod+K for search; Windows and macOS Web use the [shortcut service’s platform defaults](../shortcuts/README.md); Linux Web leaves these commands unbound until configured. Button tooltips and Session row menus display the effective bindings. Clicking a menu item targets that row; pressing its shortcut targets the main Session. Windows and macOS Desktop bindings also execute from terminal input and modal dialogs; other environments follow the command's region and modal restrictions. Search and rename requests belong to this package; input drafts remain in the browser. The directory picker rejects another open while selection or Workspace adoption is pending. Fork captures the source Session and uses the row action's Host operation to select its last completed turn, without loading older Client history. Missing or blank Sessions are unavailable; the Host rejects a source with no completed turn. A rejected shortcut fork preserves the current selection, displays a localized notification, and can be retried; unexpected failures also retain diagnostic logging.
60
+ The keyboard reference exposes New Session, Search sessions, Add workspace, Rename session, Fork session, and Archive session. Desktop defaults use the platform's primary modifier, with Mod+K for search; Windows and macOS Web use the [shortcut service’s platform defaults](../shortcuts/README.md); Linux Web leaves these commands unbound until configured. Button tooltips and Session row menus display the effective bindings. Clicking a menu item targets that row; pressing its shortcut targets the main Session. Desktop and Windows/macOS Web rename use Mod+Alt+G, leaving Mod+Shift+R to browser reload. Rename requires a nonblank main Conversation with no modal obscuring it; a retained Session behind another main panel is unavailable. Other Windows and macOS Desktop bindings also execute from terminal input and modal dialogs; other environments follow the command's region and modal restrictions. Search and rename requests belong to this package; input drafts remain in the browser. The directory picker rejects another open while selection or Workspace adoption is pending. Fork captures the source Session and uses the row action's Host operation to select its last completed turn, without loading older Client history. Missing or blank Sessions are unavailable; the Host rejects a source with no completed turn. A rejected shortcut fork preserves the current selection, displays a localized notification, and can be retried; unexpected failures also retain diagnostic logging.
61
61
 
62
62
  ### Pending interactions
63
63
 
package/README.zh.md CHANGED
@@ -57,7 +57,7 @@ Session 行内的 Rename 操作打开一个以该行显示标题预填的对话
57
57
 
58
58
  会话更新时间使用 tertiary 文本色,包括已归档行。标题宽于所在行时,静止状态以省略号裁切。把指针停在行上,标题会滚动到远端——例如 fork 递增后的标题——并在揭示时不显示省略号;指针离开后标题回到开头。
59
59
 
60
- 快捷键速查提供新建会话、搜索会话、添加工作区、重命名会话、分叉会话和归档会话。桌面默认使用平台的主修饰键,搜索为 Mod+K;Windows 和 macOS Web 使用[快捷键服务的平台默认值](../shortcuts/README.zh.md);Linux Web 在用户配置前不绑定这些命令。按钮提示和会话行菜单显示当前有效绑定。点击菜单项操作该行,按快捷键操作主会话。Windows 和 macOS Desktop 的绑定也可从终端输入区域和模态对话框中执行;其他环境遵循命令的区域和模态限制。搜索和重命名的打开请求归本包管理,输入草稿保留在浏览器中。目录选择或工作区接纳尚未结束时,目录选择器拒绝重复打开。分叉捕获源会话,并使用会话行相同的 Host 操作选择最近已完成轮次,不读取更早的 Client 历史。没有会话或会话为空时不可用;没有已完成轮次的源会话由 Host 拒绝。快捷键分叉被拒绝时保留当前选择、显示本地化提示,并允许重试;非预期失败还会保留诊断日志。
60
+ 快捷键速查提供新建会话、搜索会话、添加工作区、重命名会话、分叉会话和归档会话。桌面默认使用平台的主修饰键,搜索为 Mod+K;Windows 和 macOS Web 使用[快捷键服务的平台默认值](../shortcuts/README.zh.md);Linux Web 在用户配置前不绑定这些命令。按钮提示和会话行菜单显示当前有效绑定。点击菜单项操作该行,按快捷键操作主会话。Desktop 和 Windows/macOS Web 的重命名均使用 Mod+Alt+G,将 Mod+Shift+R 留给浏览器刷新。重命名要求主区域正在显示非空会话,且没有模态对话框遮挡;切换到其他主面板后,后台保留的会话不可作为重命名目标。其他 Windows 和 macOS Desktop 绑定也可从终端输入区域和模态对话框中执行;其他环境遵循命令的区域和模态限制。搜索和重命名的打开请求归本包管理,输入草稿保留在浏览器中。目录选择或工作区接纳尚未结束时,目录选择器拒绝重复打开。分叉捕获源会话,并使用会话行相同的 Host 操作选择最近已完成轮次,不读取更早的 Client 历史。没有会话或会话为空时不可用;没有已完成轮次的源会话由 Host 拒绝。快捷键分叉被拒绝时保留当前选择、显示本地化提示,并允许重试;非预期失败还会保留诊断日志。
61
61
 
62
62
  ### 待处理交互
63
63
 
package/lib/client.js CHANGED
@@ -95,6 +95,7 @@ window.__ModuleLoader__.load({
95
95
  }
96
96
  /**
97
97
  * Register navigation commands against the existing workspace owner.
98
+ * Rename requires a nonblank main Conversation with no modal obscuring it.
98
99
  * @param ctx - plugin context with the shortcut, locale, and model services.
99
100
  * @param navigation - session creation and forking from the pointer controls' navigation service.
100
101
  * @param controls - browser-owned opening requests.
@@ -156,9 +157,9 @@ window.__ModuleLoader__.load({
156
157
  reason
157
158
  };
158
159
  });
159
- register("session.rename", () => t("rename.session.title"), ["rename session"], "KeyR", ["primary", "alt"], ["primary", "shift"], () => {
160
+ register("session.rename", () => t("rename.session.title"), ["rename session"], "KeyG", ["primary", "alt"], ["primary", "alt"], (context) => {
160
161
  const target = current();
161
- return target === void 0 ? {
162
+ return target === void 0 || target.blank || context.modal !== null || ctx.layout.panelInfo.getSnapshot().activePanelId !== null ? {
162
163
  status: "blocked",
163
164
  reason: t("shortcut.noSession")
164
165
  } : {
@@ -35,6 +35,7 @@ interface WorkspaceShortcutControls {
35
35
  export declare function createWorkspaceShortcutControls(): WorkspaceShortcutControls;
36
36
  /**
37
37
  * Register navigation commands against the existing workspace owner.
38
+ * Rename requires a nonblank main Conversation with no modal obscuring it.
38
39
  * @param ctx - plugin context with the shortcut, locale, and model services.
39
40
  * @param navigation - session creation and forking from the pointer controls' navigation service.
40
41
  * @param controls - browser-owned opening requests.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-client-ui-workspace",
3
3
  "description": "Workspace picker plugin: one WorkspacePicker registered into the sidebar and empty-state workspace slots",
4
- "version": "0.2.0-rc.1",
4
+ "version": "0.2.0-rc.2",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -51,31 +51,31 @@
51
51
  "@types/react": "~18.3.1",
52
52
  "clsx": "^2.0.0",
53
53
  "react": "^18.2.0",
54
- "@deepseek-ai/dsh-api-remotes": "0.2.0-rc.1",
55
- "@deepseek-ai/dsh-agent": "0.2.0-rc.1",
56
- "@deepseek-ai/dsh-api-session-controller": "0.2.0-rc.1",
57
- "@deepseek-ai/dsh-api-workspace-controller": "0.2.0-rc.1",
54
+ "@deepseek-ai/dsh-agent": "0.2.0-rc.2",
55
+ "@deepseek-ai/dsh-api-session-controller": "0.2.0-rc.2",
56
+ "@deepseek-ai/dsh-api-workspace-controller": "0.2.0-rc.2",
57
+ "@deepseek-ai/dsh-client-connection": "0.2.0-rc.2",
58
58
  "@deepseek-ai/cordis": "~4.0.4",
59
- "@deepseek-ai/dsh-client-connection": "0.2.0-rc.1",
60
- "@deepseek-ai/dsh-client-locale": "0.2.0-rc.1",
61
- "@deepseek-ai/dsh-client-test-runtime": "0.2.0-rc.1",
62
- "@deepseek-ai/dsh-client-ui-conversation": "0.2.0-rc.1",
63
- "@deepseek-ai/dsh-client-store": "0.2.0-rc.1",
64
- "@deepseek-ai/dsh-client-ui-layout": "0.2.0-rc.1",
65
- "@deepseek-ai/dsh-client-ui-primitives": "0.2.0-rc.1",
66
- "@deepseek-ai/dsh-client-ui-renderer": "0.2.0-rc.1",
67
- "@deepseek-ai/dsh-client-ui-session": "0.2.0-rc.1",
68
- "@deepseek-ai/dsh-client-ui-sidebar": "0.2.0-rc.1",
69
- "@deepseek-ai/dsh-client-ui-slots": "0.2.0-rc.1",
70
- "@deepseek-ai/dsh-jobs": "0.2.0-rc.1",
71
- "@deepseek-ai/dsh-schedule": "0.2.0-rc.1",
72
- "@deepseek-ai/dsh-session": "0.2.0-rc.1",
73
- "@deepseek-ai/dsh-subagent": "0.2.0-rc.1",
74
- "@deepseek-ai/dsh-typert-protocol": "0.2.0-rc.1",
75
- "@deepseek-ai/dsh-util-values": "0.2.0-rc.1",
76
- "@deepseek-ai/dsh-util-workspace-path": "0.2.0-rc.1",
77
- "@deepseek-ai/dsh-client-shortcuts": "0.2.0-rc.1",
78
- "@deepseek-ai/dsh-client-product-analytics": "0.2.0-rc.1"
59
+ "@deepseek-ai/dsh-client-locale": "0.2.0-rc.2",
60
+ "@deepseek-ai/dsh-client-store": "0.2.0-rc.2",
61
+ "@deepseek-ai/dsh-client-test-runtime": "0.2.0-rc.2",
62
+ "@deepseek-ai/dsh-client-ui-layout": "0.2.0-rc.2",
63
+ "@deepseek-ai/dsh-client-ui-primitives": "0.2.0-rc.2",
64
+ "@deepseek-ai/dsh-client-ui-session": "0.2.0-rc.2",
65
+ "@deepseek-ai/dsh-client-ui-renderer": "0.2.0-rc.2",
66
+ "@deepseek-ai/dsh-client-ui-conversation": "0.2.0-rc.2",
67
+ "@deepseek-ai/dsh-client-ui-sidebar": "0.2.0-rc.2",
68
+ "@deepseek-ai/dsh-client-ui-slots": "0.2.0-rc.2",
69
+ "@deepseek-ai/dsh-session": "0.2.0-rc.2",
70
+ "@deepseek-ai/dsh-subagent": "0.2.0-rc.2",
71
+ "@deepseek-ai/dsh-typert-protocol": "0.2.0-rc.2",
72
+ "@deepseek-ai/dsh-schedule": "0.2.0-rc.2",
73
+ "@deepseek-ai/dsh-util-values": "0.2.0-rc.2",
74
+ "@deepseek-ai/dsh-jobs": "0.2.0-rc.2",
75
+ "@deepseek-ai/dsh-util-workspace-path": "0.2.0-rc.2",
76
+ "@deepseek-ai/dsh-client-shortcuts": "0.2.0-rc.2",
77
+ "@deepseek-ai/dsh-client-product-analytics": "0.2.0-rc.2",
78
+ "@deepseek-ai/dsh-api-remotes": "0.2.0-rc.2"
79
79
  },
80
80
  "files": [
81
81
  "lib/index.js",