dsh-ssh-manage 0.3.4 → 0.3.5

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.en.md CHANGED
@@ -96,16 +96,16 @@ Creating a host requires alias, hostname and password. The password is not writt
96
96
 
97
97
  ### From npm (recommended)
98
98
 
99
- npm package: [`dsh-ssh-manage`](https://www.npmjs.com/package/dsh-ssh-manage) (current version `0.3.4`).
99
+ npm package: [`dsh-ssh-manage`](https://www.npmjs.com/package/dsh-ssh-manage) (current version `0.3.5`).
100
100
 
101
101
  ```text
102
- plugin_manager action=install_bundle target=dsh-ssh-manage@0.3.4
102
+ plugin_manager action=install_bundle target=dsh-ssh-manage@0.3.5
103
103
  ```
104
104
 
105
105
  Or with the DSH CLI:
106
106
 
107
107
  ```bash
108
- dsh plugin add dsh-ssh-manage@0.3.4
108
+ dsh plugin add dsh-ssh-manage@0.3.5
109
109
  ```
110
110
 
111
111
  After installation, refresh the Web page; the sidebar shows an "SSH Hosts" entry with id `dsh-ssh-manage`.
package/README.md CHANGED
@@ -98,16 +98,16 @@
98
98
 
99
99
  ### 从 npm 安装(推荐)
100
100
 
101
- npm 包:[`dsh-ssh-manage`](https://www.npmjs.com/package/dsh-ssh-manage)(当前版本 `0.3.4`)。
101
+ npm 包:[`dsh-ssh-manage`](https://www.npmjs.com/package/dsh-ssh-manage)(当前版本 `0.3.5`)。
102
102
 
103
103
  ```text
104
- plugin_manager action=install_bundle target=dsh-ssh-manage@0.3.4
104
+ plugin_manager action=install_bundle target=dsh-ssh-manage@0.3.5
105
105
  ```
106
106
 
107
107
  或使用 DSH CLI:
108
108
 
109
109
  ```bash
110
- dsh plugin add dsh-ssh-manage@0.3.4
110
+ dsh plugin add dsh-ssh-manage@0.3.5
111
111
  ```
112
112
 
113
113
  安装后刷新 Web 页面,左侧栏会出现「SSH 主机」入口,入口 id 为 `dsh-ssh-manage`。
package/lib/ssh-client.js CHANGED
@@ -1,7 +1,16 @@
1
1
  import path from 'node:path'
2
- import { Client } from 'ssh2'
2
+ import { createRequire } from 'node:module'
3
3
  import { verifyHostKey } from './known-hosts.js'
4
4
 
5
+ // DSH Host bundles/loads plugins in a variety of Node ESM/CJS interop modes.
6
+ // Resolve the CJS ssh2 export explicitly so `Client` is always a constructor.
7
+ const require = createRequire(import.meta.url)
8
+ const ssh2 = require('ssh2')
9
+ const Client = ssh2.Client ?? ssh2.default?.Client
10
+ if (typeof Client !== 'function') {
11
+ throw new Error('ssh2 is unavailable: Client export is missing from the installed ssh2 module')
12
+ }
13
+
5
14
  const DEFAULT_TIMEOUT = 15_000
6
15
  const MAX_OUTPUT_BYTES = 1024 * 1024
7
16
  const MAX_FILE_BYTES = 10 * 1024 * 1024
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-ssh-manage",
3
- "version": "0.3.4",
3
+ "version": "0.3.5",
4
4
  "description": "A DSH sidebar plugin for managing SSH host profiles with a real interactive PTY terminal.",
5
5
  "license": "MIT",
6
6
  "private": false,