@vite-plugin-opencode-assistant/shared 1.0.72 → 1.0.73

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/es/constants.d.ts CHANGED
@@ -98,6 +98,7 @@ export declare const DEFAULT_CONFIG: {
98
98
  verbose: boolean;
99
99
  hotkey: string;
100
100
  warmupChromeMcp: boolean;
101
+ chromeDevtoolsPort: number;
101
102
  displayMode: "bubble";
102
103
  splitMode: {
103
104
  width?: number;
package/es/constants.mjs CHANGED
@@ -50,6 +50,7 @@ const DEFAULT_CONFIG = {
50
50
  verbose: false,
51
51
  hotkey: "ctrl+k",
52
52
  warmupChromeMcp: true,
53
+ chromeDevtoolsPort: CHROME_DEVTOOLS_PORT,
53
54
  displayMode: "bubble",
54
55
  splitMode: void 0,
55
56
  // OpenCode 内部配置默认值
package/es/types.d.ts CHANGED
@@ -119,6 +119,8 @@ export interface OpenCodeOptions {
119
119
  hotkey?: string;
120
120
  /** 服务启动后是否立即预热 Chrome MCP,默认 true */
121
121
  warmupChromeMcp?: boolean;
122
+ /** Chrome DevTools Protocol 端口,默认 9222 */
123
+ chromeDevtoolsPort?: number;
122
124
  /** 展示模式,默认 'bubble' */
123
125
  displayMode?: DisplayMode;
124
126
  /** 分屏模式配置 */
package/es/utils.d.ts CHANGED
@@ -36,4 +36,4 @@ export declare function extractTextFromResponse(data: unknown): string | null;
36
36
  * @param timeout - 超时时间(毫秒),默认 2000ms
37
37
  * @returns Chrome DevTools 是否可用
38
38
  */
39
- export declare function checkChromeDevToolsAvailable(timeout?: number): Promise<boolean>;
39
+ export declare function checkChromeDevToolsAvailable(port?: number, timeout?: number): Promise<boolean>;
package/es/utils.mjs CHANGED
@@ -52,7 +52,9 @@ function extractTextFromResponse(data) {
52
52
  if (!data || typeof data !== "object") return null;
53
53
  const obj = data;
54
54
  if (obj.parts && Array.isArray(obj.parts)) {
55
- const textParts = obj.parts.filter((p) => p && typeof p === "object" && p.type === "text").map((p) => p.text).filter(Boolean);
55
+ const textParts = obj.parts.filter(
56
+ (p) => p && typeof p === "object" && p.type === "text"
57
+ ).map((p) => p.text).filter(Boolean);
56
58
  if (textParts.length > 0) return textParts.join("");
57
59
  }
58
60
  if (obj.text && typeof obj.text === "string") {
@@ -70,14 +72,14 @@ function extractTextFromResponse(data) {
70
72
  return null;
71
73
  }
72
74
  function checkChromeDevToolsAvailable() {
73
- return __async(this, arguments, function* (timeout = CHROME_DEVTOOLS_CHECK_TIMEOUT) {
75
+ return __async(this, arguments, function* (port = CHROME_DEVTOOLS_PORT, timeout = CHROME_DEVTOOLS_CHECK_TIMEOUT) {
74
76
  return new Promise((resolve) => {
75
77
  const socket = new net.Socket();
76
78
  const timer = setTimeout(() => {
77
79
  socket.destroy();
78
80
  resolve(false);
79
81
  }, timeout);
80
- socket.connect(CHROME_DEVTOOLS_PORT, "localhost", () => {
82
+ socket.connect(port, "localhost", () => {
81
83
  clearTimeout(timer);
82
84
  socket.removeAllListeners();
83
85
  socket.destroy();
package/lib/constants.cjs CHANGED
@@ -104,6 +104,7 @@ const DEFAULT_CONFIG = {
104
104
  verbose: false,
105
105
  hotkey: "ctrl+k",
106
106
  warmupChromeMcp: true,
107
+ chromeDevtoolsPort: CHROME_DEVTOOLS_PORT,
107
108
  displayMode: "bubble",
108
109
  splitMode: void 0,
109
110
  // OpenCode 内部配置默认值
@@ -98,6 +98,7 @@ export declare const DEFAULT_CONFIG: {
98
98
  verbose: boolean;
99
99
  hotkey: string;
100
100
  warmupChromeMcp: boolean;
101
+ chromeDevtoolsPort: number;
101
102
  displayMode: "bubble";
102
103
  splitMode: {
103
104
  width?: number;
package/lib/types.d.ts CHANGED
@@ -119,6 +119,8 @@ export interface OpenCodeOptions {
119
119
  hotkey?: string;
120
120
  /** 服务启动后是否立即预热 Chrome MCP,默认 true */
121
121
  warmupChromeMcp?: boolean;
122
+ /** Chrome DevTools Protocol 端口,默认 9222 */
123
+ chromeDevtoolsPort?: number;
122
124
  /** 展示模式,默认 'bubble' */
123
125
  displayMode?: DisplayMode;
124
126
  /** 分屏模式配置 */
package/lib/utils.cjs CHANGED
@@ -89,7 +89,9 @@ function extractTextFromResponse(data) {
89
89
  if (!data || typeof data !== "object") return null;
90
90
  const obj = data;
91
91
  if (obj.parts && Array.isArray(obj.parts)) {
92
- const textParts = obj.parts.filter((p) => p && typeof p === "object" && p.type === "text").map((p) => p.text).filter(Boolean);
92
+ const textParts = obj.parts.filter(
93
+ (p) => p && typeof p === "object" && p.type === "text"
94
+ ).map((p) => p.text).filter(Boolean);
93
95
  if (textParts.length > 0) return textParts.join("");
94
96
  }
95
97
  if (obj.text && typeof obj.text === "string") {
@@ -107,14 +109,14 @@ function extractTextFromResponse(data) {
107
109
  return null;
108
110
  }
109
111
  function checkChromeDevToolsAvailable() {
110
- return __async(this, arguments, function* (timeout = import_constants.CHROME_DEVTOOLS_CHECK_TIMEOUT) {
112
+ return __async(this, arguments, function* (port = import_constants.CHROME_DEVTOOLS_PORT, timeout = import_constants.CHROME_DEVTOOLS_CHECK_TIMEOUT) {
111
113
  return new Promise((resolve) => {
112
114
  const socket = new import_net.default.Socket();
113
115
  const timer = setTimeout(() => {
114
116
  socket.destroy();
115
117
  resolve(false);
116
118
  }, timeout);
117
- socket.connect(import_constants.CHROME_DEVTOOLS_PORT, "localhost", () => {
119
+ socket.connect(port, "localhost", () => {
118
120
  clearTimeout(timer);
119
121
  socket.removeAllListeners();
120
122
  socket.destroy();
package/lib/utils.d.ts CHANGED
@@ -36,4 +36,4 @@ export declare function extractTextFromResponse(data: unknown): string | null;
36
36
  * @param timeout - 超时时间(毫秒),默认 2000ms
37
37
  * @returns Chrome DevTools 是否可用
38
38
  */
39
- export declare function checkChromeDevToolsAvailable(timeout?: number): Promise<boolean>;
39
+ export declare function checkChromeDevToolsAvailable(port?: number, timeout?: number): Promise<boolean>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vite-plugin-opencode-assistant/shared",
3
- "version": "1.0.72",
3
+ "version": "1.0.73",
4
4
  "type": "module",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.mjs",
@@ -22,6 +22,7 @@
22
22
  },
23
23
  "scripts": {
24
24
  "build": "pagoda-cli build",
25
+ "test": "vitest run",
25
26
  "typecheck": "tsc -p tsconfig.declaration.json --noEmit"
26
27
  }
27
28
  }