@vite-plugin-opencode-assistant/shared 1.0.36 → 1.0.38

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
@@ -95,10 +95,18 @@ export declare const DEFAULT_CONFIG: {
95
95
  hostname: string;
96
96
  theme: "auto";
97
97
  open: boolean;
98
- autoReload: boolean;
99
98
  verbose: boolean;
100
99
  hotkey: string;
101
100
  warmupChromeMcp: boolean;
101
+ displayMode: "bubble";
102
+ splitMode: {
103
+ width?: number;
104
+ minWidth?: number;
105
+ maxWidth?: number;
106
+ resizable?: boolean;
107
+ shrinkPage?: boolean;
108
+ defaultOpen?: boolean;
109
+ } | undefined;
102
110
  language: OpenCodeLanguage | undefined;
103
111
  settings: OpenCodeSettings | undefined;
104
112
  };
package/es/constants.js CHANGED
@@ -47,10 +47,11 @@ const DEFAULT_CONFIG = {
47
47
  hostname: DEFAULT_HOSTNAME,
48
48
  theme: "auto",
49
49
  open: false,
50
- autoReload: true,
51
50
  verbose: false,
52
51
  hotkey: "ctrl+k",
53
52
  warmupChromeMcp: true,
53
+ displayMode: "bubble",
54
+ splitMode: void 0,
54
55
  // OpenCode 内部配置默认值
55
56
  language: void 0,
56
57
  settings: void 0
package/es/types.d.ts CHANGED
@@ -61,6 +61,27 @@ export interface OpenCodeSettings {
61
61
  errors?: string;
62
62
  };
63
63
  }
64
+ /**
65
+ * 展示模式类型
66
+ */
67
+ export type DisplayMode = "bubble" | "split" | "auto";
68
+ /**
69
+ * 分屏模式配置
70
+ */
71
+ export interface SplitModeOptions {
72
+ /** 面板宽度,默认 500 */
73
+ width?: number;
74
+ /** 最小宽度,默认 400 */
75
+ minWidth?: number;
76
+ /** 最大宽度,默认 800 */
77
+ maxWidth?: number;
78
+ /** 是否可调整宽度,默认 true */
79
+ resizable?: boolean;
80
+ /** 是否收缩主页面,默认 true */
81
+ shrinkPage?: boolean;
82
+ /** 默认是否展开,默认 true */
83
+ defaultOpen?: boolean;
84
+ }
64
85
  /**
65
86
  * OpenCode Vite 插件配置选项
66
87
  */
@@ -79,14 +100,16 @@ export interface OpenCodeOptions {
79
100
  theme?: "light" | "dark" | "auto";
80
101
  /** 是否自动打开面板,默认 false */
81
102
  open?: boolean;
82
- /** 是否自动重载,默认 true */
83
- autoReload?: boolean;
84
103
  /** 是否输出详细日志,默认 false */
85
104
  verbose?: boolean;
86
105
  /** 快捷键配置,默认 'ctrl+k' */
87
106
  hotkey?: string;
88
107
  /** 服务启动后是否立即预热 Chrome MCP,默认 true */
89
108
  warmupChromeMcp?: boolean;
109
+ /** 展示模式,默认 'bubble' */
110
+ displayMode?: DisplayMode;
111
+ /** 分屏模式配置 */
112
+ splitMode?: SplitModeOptions;
90
113
  /** OpenCode 界面语言,默认跟随浏览器语言 */
91
114
  language?: OpenCodeLanguage;
92
115
  /** OpenCode 内部设置,直接映射到 localStorage settings.v3 */
@@ -127,6 +150,10 @@ export interface WidgetOptions {
127
150
  proxyPort?: number;
128
151
  /** OpenCode 代理服务主机名 */
129
152
  proxyHost?: string;
153
+ /** 展示模式 */
154
+ displayMode?: DisplayMode;
155
+ /** 分屏模式配置 */
156
+ splitMode?: SplitModeOptions;
130
157
  }
131
158
  /**
132
159
  * OpenCode 会话信息
@@ -296,6 +323,12 @@ export interface OpenCodeWidgetProps {
296
323
  thinking?: boolean;
297
324
  /** 所有 session 的状态映射 */
298
325
  sessionStates?: Record<string, OpencodeSessionThinkingState>;
326
+ /** 展示模式 */
327
+ displayMode?: DisplayMode;
328
+ /** 分屏模式配置 */
329
+ splitMode?: SplitModeOptions;
330
+ /** 分屏面板宽度(运行时状态) */
331
+ splitPanelWidth?: number;
299
332
  }
300
333
  /**
301
334
  * 挂件组件事件
@@ -308,6 +341,7 @@ export type OpenCodeWidgetEmits = {
308
341
  (e: "update:selectedElements", value: OpenCodeSelectedElement[]): void;
309
342
  (e: "update:theme", value: OpenCodeWidgetTheme): void;
310
343
  (e: "update:thinking", value: boolean): void;
344
+ (e: "update:splitPanelWidth", value: number): void;
311
345
  (e: "toggle", value: boolean): void;
312
346
  (e: "close"): void;
313
347
  (e: "toggle-session-list", value: boolean): void;
@@ -322,6 +356,7 @@ export type OpenCodeWidgetEmits = {
322
356
  (e: "empty-action"): void;
323
357
  (e: "frame-loaded"): void;
324
358
  (e: "thinking-change", value: boolean): void;
359
+ (e: "split-panel-width-change", value: number): void;
325
360
  };
326
361
  /**
327
362
  * Chrome MCP 预热错误类型
@@ -95,10 +95,18 @@ export declare const DEFAULT_CONFIG: {
95
95
  hostname: string;
96
96
  theme: "auto";
97
97
  open: boolean;
98
- autoReload: boolean;
99
98
  verbose: boolean;
100
99
  hotkey: string;
101
100
  warmupChromeMcp: boolean;
101
+ displayMode: "bubble";
102
+ splitMode: {
103
+ width?: number;
104
+ minWidth?: number;
105
+ maxWidth?: number;
106
+ resizable?: boolean;
107
+ shrinkPage?: boolean;
108
+ defaultOpen?: boolean;
109
+ } | undefined;
102
110
  language: OpenCodeLanguage | undefined;
103
111
  settings: OpenCodeSettings | undefined;
104
112
  };
package/lib/constants.js CHANGED
@@ -101,10 +101,11 @@ const DEFAULT_CONFIG = {
101
101
  hostname: DEFAULT_HOSTNAME,
102
102
  theme: "auto",
103
103
  open: false,
104
- autoReload: true,
105
104
  verbose: false,
106
105
  hotkey: "ctrl+k",
107
106
  warmupChromeMcp: true,
107
+ displayMode: "bubble",
108
+ splitMode: void 0,
108
109
  // OpenCode 内部配置默认值
109
110
  language: void 0,
110
111
  settings: void 0
package/lib/types.d.ts CHANGED
@@ -61,6 +61,27 @@ export interface OpenCodeSettings {
61
61
  errors?: string;
62
62
  };
63
63
  }
64
+ /**
65
+ * 展示模式类型
66
+ */
67
+ export type DisplayMode = "bubble" | "split" | "auto";
68
+ /**
69
+ * 分屏模式配置
70
+ */
71
+ export interface SplitModeOptions {
72
+ /** 面板宽度,默认 500 */
73
+ width?: number;
74
+ /** 最小宽度,默认 400 */
75
+ minWidth?: number;
76
+ /** 最大宽度,默认 800 */
77
+ maxWidth?: number;
78
+ /** 是否可调整宽度,默认 true */
79
+ resizable?: boolean;
80
+ /** 是否收缩主页面,默认 true */
81
+ shrinkPage?: boolean;
82
+ /** 默认是否展开,默认 true */
83
+ defaultOpen?: boolean;
84
+ }
64
85
  /**
65
86
  * OpenCode Vite 插件配置选项
66
87
  */
@@ -79,14 +100,16 @@ export interface OpenCodeOptions {
79
100
  theme?: "light" | "dark" | "auto";
80
101
  /** 是否自动打开面板,默认 false */
81
102
  open?: boolean;
82
- /** 是否自动重载,默认 true */
83
- autoReload?: boolean;
84
103
  /** 是否输出详细日志,默认 false */
85
104
  verbose?: boolean;
86
105
  /** 快捷键配置,默认 'ctrl+k' */
87
106
  hotkey?: string;
88
107
  /** 服务启动后是否立即预热 Chrome MCP,默认 true */
89
108
  warmupChromeMcp?: boolean;
109
+ /** 展示模式,默认 'bubble' */
110
+ displayMode?: DisplayMode;
111
+ /** 分屏模式配置 */
112
+ splitMode?: SplitModeOptions;
90
113
  /** OpenCode 界面语言,默认跟随浏览器语言 */
91
114
  language?: OpenCodeLanguage;
92
115
  /** OpenCode 内部设置,直接映射到 localStorage settings.v3 */
@@ -127,6 +150,10 @@ export interface WidgetOptions {
127
150
  proxyPort?: number;
128
151
  /** OpenCode 代理服务主机名 */
129
152
  proxyHost?: string;
153
+ /** 展示模式 */
154
+ displayMode?: DisplayMode;
155
+ /** 分屏模式配置 */
156
+ splitMode?: SplitModeOptions;
130
157
  }
131
158
  /**
132
159
  * OpenCode 会话信息
@@ -296,6 +323,12 @@ export interface OpenCodeWidgetProps {
296
323
  thinking?: boolean;
297
324
  /** 所有 session 的状态映射 */
298
325
  sessionStates?: Record<string, OpencodeSessionThinkingState>;
326
+ /** 展示模式 */
327
+ displayMode?: DisplayMode;
328
+ /** 分屏模式配置 */
329
+ splitMode?: SplitModeOptions;
330
+ /** 分屏面板宽度(运行时状态) */
331
+ splitPanelWidth?: number;
299
332
  }
300
333
  /**
301
334
  * 挂件组件事件
@@ -308,6 +341,7 @@ export type OpenCodeWidgetEmits = {
308
341
  (e: "update:selectedElements", value: OpenCodeSelectedElement[]): void;
309
342
  (e: "update:theme", value: OpenCodeWidgetTheme): void;
310
343
  (e: "update:thinking", value: boolean): void;
344
+ (e: "update:splitPanelWidth", value: number): void;
311
345
  (e: "toggle", value: boolean): void;
312
346
  (e: "close"): void;
313
347
  (e: "toggle-session-list", value: boolean): void;
@@ -322,6 +356,7 @@ export type OpenCodeWidgetEmits = {
322
356
  (e: "empty-action"): void;
323
357
  (e: "frame-loaded"): void;
324
358
  (e: "thinking-change", value: boolean): void;
359
+ (e: "split-panel-width-change", value: number): void;
325
360
  };
326
361
  /**
327
362
  * Chrome MCP 预热错误类型
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vite-plugin-opencode-assistant/shared",
3
- "version": "1.0.36",
3
+ "version": "1.0.38",
4
4
  "type": "module",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",