dsh-vscode-mode 0.15.5 → 0.15.6
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-vscode-mode",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.6",
|
|
4
4
|
"description": "DSH 上的类 VSCode 编码体验:Monaco 编辑器(文件页签/QuickOpen/状态栏,可驻 DSH 0.1.5+ 官方右侧 Sidebar 与对话同屏)+ 命令栏(Ctrl+Shift+P)与可扩展指令系统 + VS Code 兼容代码片段(.code-snippets 全局/项目,IntelliSense 展开)+ Agent 编辑差异审查(整文件差异/采纳/拒绝/归档/回滚)+ SVN 集成(侧栏变更面板/日志弹窗/并排差异)+ 语言服务器(LSP)智能(跳转定义/引用/hover/大纲 + VSIX 扩展市场安装),状态持久化到工作区旁车,界面状态(页签/光标/侧栏/编辑 Tab/导航历史)镜像到 DSH home 跨重启恢复",
|
|
5
5
|
"icon": "assets/icon.svg",
|
|
6
6
|
"keywords": [
|
|
@@ -418,6 +418,10 @@ export function FileExplorer(props) {
|
|
|
418
418
|
}))
|
|
419
419
|
: []
|
|
420
420
|
|
|
421
|
+
/** @private @author ddj 2026年10月15号 Open the existing update window for the current project root. */
|
|
422
|
+
function updateProject() { ctx?.openSvnUpdate?.('') }
|
|
423
|
+
const updateHint = !ctx?.svn?.svnCli ? 'SVN CLI 不可用' : !ctx?.openSvnUpdate ? 'SVN 更新窗口不可用' : '更新项目(打开 SVN 更新窗口)'
|
|
424
|
+
|
|
421
425
|
const errorList = Object.entries(errors)
|
|
422
426
|
const errorText = errorList.length ? errorList[0][1] : null
|
|
423
427
|
|
|
@@ -427,10 +431,10 @@ export function FileExplorer(props) {
|
|
|
427
431
|
React.createElement('span', { className: 'edrv-side-root', title: root || '' }, rootName),
|
|
428
432
|
React.createElement('span', { style: { flex: 1 } }),
|
|
429
433
|
ctx?.svn?.managed ? React.createElement(Button, {
|
|
430
|
-
variant: 'toolbar', size: 'sm', disabled: !svn.
|
|
431
|
-
title:
|
|
432
|
-
'aria-label': '
|
|
433
|
-
},
|
|
434
|
+
variant: 'toolbar', size: 'sm', disabled: !ctx.svn.svnCli || !ctx.openSvnUpdate,
|
|
435
|
+
title: updateHint, onClick: updateProject,
|
|
436
|
+
'aria-label': '更新项目',
|
|
437
|
+
}, '↓') : null,
|
|
434
438
|
React.createElement('button', { className: 'edrv-side-btn', title: '刷新目录树', onClick: () => emitRefresh({ scope, kind: 'unknown' }) }, refreshIconEl())),
|
|
435
439
|
svn.message ? React.createElement('div', { className: 'edrv-tree-status', role: 'status' }, svn.message) : null,
|
|
436
440
|
React.createElement('div', { className: 'edrv-tree', ref: treeRef },
|
|
@@ -975,6 +975,9 @@ export function SvnPanel(props) {
|
|
|
975
975
|
revert: onRevert,
|
|
976
976
|
}),
|
|
977
977
|
})
|
|
978
|
+
/** @private @author ddj 2026年10月15号 Open the shared update window independently of selection and local changes. */
|
|
979
|
+
function updateProject() { ctxRef.current?.openSvnUpdate?.('') }
|
|
980
|
+
const updateHint = !managed ? 'SVN CLI 或工作副本不可用' : !ctx?.openSvnUpdate ? 'SVN 更新窗口不可用' : '更新项目(打开 SVN 更新窗口)'
|
|
978
981
|
const rootName = ctx?.svn?.wcRoot ? String(ctx.svn.wcRoot).split(/[\\/]/).pop() || ctx.svn.wcRoot : ''
|
|
979
982
|
|
|
980
983
|
// W2-3:远端更新提示条(null = 未检查;failed = 降级文案;否则展示落后数与 against 修订)
|
|
@@ -1032,8 +1035,12 @@ export function SvnPanel(props) {
|
|
|
1032
1035
|
React.createElement('span', { className: 'edrv-side-title' }, 'SVN 变更'),
|
|
1033
1036
|
React.createElement('span', { className: 'edrv-side-root', title: ctx?.svn?.wcRoot || '' }, rootName),
|
|
1034
1037
|
React.createElement('span', { style: { flex: 1 } }),
|
|
1035
|
-
//
|
|
1038
|
+
// 项目更新、只读检查和本地刷新保持独立入口。
|
|
1036
1039
|
React.createElement('span', { className: 'edrv-svn-head-icons' },
|
|
1040
|
+
React.createElement('button', {
|
|
1041
|
+
className: 'edrv-side-btn', title: updateHint, 'aria-label': '更新项目',
|
|
1042
|
+
disabled: !managed || !ctx?.openSvnUpdate, onClick: updateProject,
|
|
1043
|
+
}, '↓'),
|
|
1037
1044
|
React.createElement('button', {
|
|
1038
1045
|
className: 'edrv-side-btn', title: '检查远端更新(svn status -u;约数秒,离线自动降级)',
|
|
1039
1046
|
onClick: checkRemote,
|
|
@@ -136,6 +136,6 @@ export function useExplorerSvn(ctx: SidebarCtx | undefined, rows: readonly SvnVi
|
|
|
136
136
|
/** @public @author ddj 2026年10月10号 Request an explicit offline full scan. */
|
|
137
137
|
function refreshLocal() { owner.current?.refresh() }
|
|
138
138
|
return { ...remote, local: snapshot?.view.marks ?? null, remote: snapshot ? remote.remote : null,
|
|
139
|
-
message: localMessage(snapshot?.view) + (remote.message ? ';' + remote.message : ''), canCheck: ready && snapshot !== null, refreshLocal }
|
|
139
|
+
message: ready ? localMessage(snapshot?.view) + (remote.message ? ';' + remote.message : '') : '', canCheck: ready && snapshot !== null, refreshLocal }
|
|
140
140
|
}
|
|
141
141
|
// --endregion
|