@zhin.js/core 1.0.39 → 1.0.40

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/lib/errors.js CHANGED
@@ -1,62 +1,8 @@
1
- // ============================================================================
2
- // 错误处理系统
3
- // ============================================================================
4
1
  /**
5
- * 基础错误类,所有自定义错误都应该继承此类
2
+ * Re-export generic errors from @zhin.js/kernel
6
3
  */
7
- export class ZhinError extends Error {
8
- code;
9
- timestamp;
10
- context;
11
- constructor(message, code = 'ZHIN_ERROR', context) {
12
- super(message);
13
- this.name = this.constructor.name;
14
- this.code = code;
15
- this.timestamp = new Date();
16
- this.context = context;
17
- // 确保错误堆栈正确显示
18
- if (Error.captureStackTrace) {
19
- Error.captureStackTrace(this, this.constructor);
20
- }
21
- }
22
- /**
23
- * 转换为JSON格式
24
- */
25
- toJSON() {
26
- return {
27
- name: this.name,
28
- message: this.message,
29
- code: this.code,
30
- timestamp: this.timestamp.toISOString(),
31
- context: this.context,
32
- stack: this.stack
33
- };
34
- }
35
- /**
36
- * 转换为用户友好的格式
37
- */
38
- toUserString() {
39
- return `[${this.code}] ${this.message}`;
40
- }
41
- }
42
- /**
43
- * 配置相关错误
44
- */
45
- export class ConfigError extends ZhinError {
46
- constructor(message, context) {
47
- super(message, 'CONFIG_ERROR', context);
48
- }
49
- }
50
- /**
51
- * 插件相关错误
52
- */
53
- export class PluginError extends ZhinError {
54
- pluginName;
55
- constructor(message, pluginName, context) {
56
- super(message, 'PLUGIN_ERROR', { ...context, pluginName });
57
- this.pluginName = pluginName;
58
- }
59
- }
4
+ export { ZhinError, ConfigError, PluginError, ConnectionError, ContextError, ValidationError, PermissionError, TimeoutError, ErrorManager, RetryManager, CircuitBreaker, } from '@zhin.js/kernel';
5
+ import { ZhinError } from '@zhin.js/kernel';
60
6
  /**
61
7
  * 适配器相关错误
62
8
  */
@@ -69,16 +15,6 @@ export class AdapterError extends ZhinError {
69
15
  this.botName = botName;
70
16
  }
71
17
  }
72
- /**
73
- * 连接相关错误
74
- */
75
- export class ConnectionError extends ZhinError {
76
- retryable;
77
- constructor(message, retryable = true, context) {
78
- super(message, 'CONNECTION_ERROR', { ...context, retryable });
79
- this.retryable = retryable;
80
- }
81
- }
82
18
  /**
83
19
  * 消息处理错误
84
20
  */
@@ -91,216 +27,4 @@ export class MessageError extends ZhinError {
91
27
  this.channelId = channelId;
92
28
  }
93
29
  }
94
- /**
95
- * 上下文相关错误
96
- */
97
- export class ContextError extends ZhinError {
98
- contextName;
99
- constructor(message, contextName, context) {
100
- super(message, 'CONTEXT_ERROR', { ...context, contextName });
101
- this.contextName = contextName;
102
- }
103
- }
104
- /**
105
- * 验证错误
106
- */
107
- export class ValidationError extends ZhinError {
108
- field;
109
- value;
110
- constructor(message, field, value, context) {
111
- super(message, 'VALIDATION_ERROR', { ...context, field, value });
112
- this.field = field;
113
- this.value = value;
114
- }
115
- }
116
- /**
117
- * 权限错误
118
- */
119
- export class PermissionError extends ZhinError {
120
- userId;
121
- requiredPermission;
122
- constructor(message, userId, requiredPermission, context) {
123
- super(message, 'PERMISSION_ERROR', { ...context, userId, requiredPermission });
124
- this.userId = userId;
125
- this.requiredPermission = requiredPermission;
126
- }
127
- }
128
- /**
129
- * 超时错误
130
- */
131
- export class TimeoutError extends ZhinError {
132
- timeoutMs;
133
- constructor(message, timeoutMs, context) {
134
- super(message, 'TIMEOUT_ERROR', { ...context, timeoutMs });
135
- this.timeoutMs = timeoutMs;
136
- }
137
- }
138
- /**
139
- * 错误管理器
140
- */
141
- export class ErrorManager {
142
- handlers = new Map();
143
- globalHandlers = [];
144
- /**
145
- * 注册错误处理器
146
- */
147
- register(errorType, handler) {
148
- if (!this.handlers.has(errorType)) {
149
- this.handlers.set(errorType, []);
150
- }
151
- this.handlers.get(errorType).push(handler);
152
- }
153
- /**
154
- * 注册全局错误处理器
155
- */
156
- registerGlobal(handler) {
157
- this.globalHandlers.push(handler);
158
- }
159
- /**
160
- * 处理错误
161
- */
162
- async handle(error, context) {
163
- // 首先调用全局处理器
164
- for (const handler of this.globalHandlers) {
165
- try {
166
- await handler(error, context);
167
- }
168
- catch (handlerError) {
169
- // console.error 已替换为注释
170
- }
171
- }
172
- // 然后调用特定类型的处理器
173
- const errorType = error.constructor.name;
174
- const handlers = this.handlers.get(errorType) || [];
175
- for (const handler of handlers) {
176
- try {
177
- await handler(error, context);
178
- }
179
- catch (handlerError) {
180
- // console.error 已替换为注释
181
- }
182
- }
183
- }
184
- /**
185
- * 移除错误处理器
186
- */
187
- unregister(errorType, handler) {
188
- const handlers = this.handlers.get(errorType);
189
- if (handlers) {
190
- const index = handlers.indexOf(handler);
191
- if (index !== -1) {
192
- handlers.splice(index, 1);
193
- return true;
194
- }
195
- }
196
- return false;
197
- }
198
- /**
199
- * 清理所有处理器
200
- */
201
- clear() {
202
- this.handlers.clear();
203
- this.globalHandlers.length = 0;
204
- }
205
- }
206
- /**
207
- * 错误重试工具
208
- */
209
- export class RetryManager {
210
- /**
211
- * 执行重试逻辑
212
- */
213
- static async retry(fn, options = {}) {
214
- const { maxRetries = 3, delay = 1000, exponentialBackoff = true, retryCondition = () => true } = options;
215
- let lastError;
216
- for (let attempt = 0; attempt <= maxRetries; attempt++) {
217
- try {
218
- return await fn();
219
- }
220
- catch (error) {
221
- lastError = error;
222
- // 如果是最后一次尝试或不满足重试条件,直接抛出错误
223
- if (attempt === maxRetries || !retryCondition(lastError)) {
224
- throw lastError;
225
- }
226
- // 计算延迟时间
227
- const currentDelay = exponentialBackoff
228
- ? delay * Math.pow(2, attempt)
229
- : delay;
230
- // 等待后重试
231
- await new Promise(resolve => setTimeout(resolve, currentDelay));
232
- }
233
- }
234
- throw lastError;
235
- }
236
- }
237
- /**
238
- * 断路器模式实现
239
- */
240
- export class CircuitBreaker {
241
- failureThreshold;
242
- timeoutMs;
243
- monitoringPeriodMs;
244
- failures = 0;
245
- lastFailureTime = 0;
246
- state = 'CLOSED';
247
- constructor(failureThreshold = 5, timeoutMs = 60000, monitoringPeriodMs = 10000) {
248
- this.failureThreshold = failureThreshold;
249
- this.timeoutMs = timeoutMs;
250
- this.monitoringPeriodMs = monitoringPeriodMs;
251
- }
252
- /**
253
- * 执行受保护的操作
254
- */
255
- async execute(fn) {
256
- if (this.state === 'OPEN') {
257
- if (Date.now() - this.lastFailureTime > this.timeoutMs) {
258
- this.state = 'HALF_OPEN';
259
- }
260
- else {
261
- throw new Error('Circuit breaker is OPEN');
262
- }
263
- }
264
- try {
265
- const result = await fn();
266
- this.onSuccess();
267
- return result;
268
- }
269
- catch (error) {
270
- this.onFailure();
271
- throw error;
272
- }
273
- }
274
- onSuccess() {
275
- this.failures = 0;
276
- this.state = 'CLOSED';
277
- }
278
- onFailure() {
279
- this.failures++;
280
- this.lastFailureTime = Date.now();
281
- if (this.failures >= this.failureThreshold) {
282
- this.state = 'OPEN';
283
- }
284
- }
285
- /**
286
- * 获取断路器状态
287
- */
288
- getState() {
289
- return this.state;
290
- }
291
- /**
292
- * 重置断路器
293
- */
294
- reset() {
295
- this.failures = 0;
296
- this.lastFailureTime = 0;
297
- this.state = 'CLOSED';
298
- }
299
- }
300
- // 默认错误管理器实例
301
- export const errorManager = new ErrorManager();
302
- // 默认错误处理器
303
- errorManager.registerGlobal((error, context) => {
304
- // Default error handler - logs to console
305
- });
306
30
  //# sourceMappingURL=errors.js.map
package/lib/errors.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,SAAS,EACT,WAAW,EACX,WAAW,EACX,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,SAAS;IACvB,WAAW,CAAQ;IACnB,OAAO,CAAS;IAEhC,YAAY,OAAe,EAAE,WAAmB,EAAE,OAAgB,EAAE,OAA6B;QAC7F,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAA;QACrE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,SAAS;IACvB,SAAS,CAAS;IAClB,SAAS,CAAS;IAElC,YAAY,OAAe,EAAE,SAAkB,EAAE,SAAkB,EAAE,OAA6B;QAC9F,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAA;QACrE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC9B,CAAC;CACJ"}
package/lib/feature.d.ts CHANGED
@@ -1,90 +1,8 @@
1
- import type { Plugin } from "./plugin.js";
2
1
  /**
3
- * Feature 抽象基类
4
- * 所有可追踪、可序列化的插件功能(命令、组件、定时任务、中间件等)的基类。
5
- * Feature 替换原来的 Context 接口,用于 provide/inject 机制。
2
+ * Re-export from @zhin.js/kernel for backward compatibility.
3
+ * Core's Plugin class implements PluginLike, so the Feature's
4
+ * mounted(plugin: PluginLike) signature is compatible.
6
5
  */
7
- /**
8
- * Feature 序列化后的 JSON 格式,用于 HTTP API 返回给前端
9
- */
10
- export interface FeatureJSON {
11
- name: string;
12
- icon: string;
13
- desc: string;
14
- count: number;
15
- items: any[];
16
- }
17
- /**
18
- * Feature 变更事件监听器类型
19
- */
20
- export type FeatureListener<T> = (item: T, pluginName: string) => void;
21
- /**
22
- * Feature<T> 抽象类
23
- * - name / icon / desc: 自描述元数据
24
- * - items: 全局 item 列表
25
- * - pluginItems: 按插件名分组的 item 列表
26
- * - toJSON: 控制 HTTP API 返回的数据格式
27
- * - extensions: 提供给 Plugin.prototype 的扩展方法(如 addCommand)
28
- * - mounted / dispose: 可选生命周期钩子
29
- * - on('add' | 'remove'): 变更事件通知
30
- */
31
- export declare abstract class Feature<T = any> {
32
- #private;
33
- abstract readonly name: string;
34
- abstract readonly icon: string;
35
- abstract readonly desc: string;
36
- /** 全局 item 列表 */
37
- readonly items: T[];
38
- /** 按插件名分组的 item 列表 */
39
- protected pluginItems: Map<string, T[]>;
40
- /**
41
- * 监听变更事件
42
- * @param event 'add' | 'remove'
43
- * @param listener 回调函数
44
- * @returns 取消监听的函数
45
- */
46
- on(event: 'add' | 'remove', listener: FeatureListener<T>): () => void;
47
- /** 触发事件 */
48
- protected emit(event: 'add' | 'remove', item: T, pluginName: string): void;
49
- /**
50
- * 添加 item,同时记录所属插件
51
- * @returns dispose 函数,用于移除该 item
52
- */
53
- add(item: T, pluginName: string): () => void;
54
- /**
55
- * 移除 item
56
- */
57
- remove(item: T, pluginName?: string): boolean;
58
- /**
59
- * 获取指定插件注册的 item 列表
60
- */
61
- getByPlugin(pluginName: string): T[];
62
- /**
63
- * 全局 item 数量
64
- */
65
- get count(): number;
66
- /**
67
- * 指定插件的 item 数量
68
- */
69
- countByPlugin(pluginName: string): number;
70
- /**
71
- * 序列化为 JSON(用于 HTTP API)
72
- * @param pluginName 如果提供,则只返回该插件的 item;否则返回全部
73
- */
74
- abstract toJSON(pluginName?: string): FeatureJSON;
75
- /**
76
- * 提供给 Plugin.prototype 的扩展方法
77
- * 子类重写此 getter 以注册扩展(如 addCommand)
78
- */
79
- get extensions(): Record<string, Function>;
80
- /**
81
- * 生命周期: 服务挂载时调用
82
- * @param plugin 宿主插件(通常是 root plugin)
83
- */
84
- mounted?(plugin: Plugin): void | Promise<void>;
85
- /**
86
- * 生命周期: 服务销毁时调用
87
- */
88
- dispose?(): void;
89
- }
6
+ export { Feature } from '@zhin.js/kernel';
7
+ export type { FeatureJSON, FeatureListener } from '@zhin.js/kernel';
90
8
  //# sourceMappingURL=feature.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../src/feature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,CAAC;CACd;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvE;;;;;;;;;GASG;AACH,8BAAsB,OAAO,CAAC,CAAC,GAAG,GAAG;;IACnC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B,iBAAiB;IACjB,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAM;IAEzB,sBAAsB;IACtB,SAAS,CAAC,WAAW,mBAA0B;IAK/C;;;;;OAKG;IACH,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAQrE,WAAW;IACX,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAQ1E;;;OAGG;IACH,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,IAAI;IAU5C;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO;IAuB7C;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,EAAE;IAIpC;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIzC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW;IAEjD;;;OAGG;IACH,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAEzC;IAED;;;OAGG;IACH,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9C;;OAEG;IACH,OAAO,CAAC,IAAI,IAAI;CACjB"}
1
+ {"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../src/feature.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
package/lib/feature.js CHANGED
@@ -1,108 +1,7 @@
1
1
  /**
2
- * Feature<T> 抽象类
3
- * - name / icon / desc: 自描述元数据
4
- * - items: 全局 item 列表
5
- * - pluginItems: 按插件名分组的 item 列表
6
- * - toJSON: 控制 HTTP API 返回的数据格式
7
- * - extensions: 提供给 Plugin.prototype 的扩展方法(如 addCommand)
8
- * - mounted / dispose: 可选生命周期钩子
9
- * - on('add' | 'remove'): 变更事件通知
2
+ * Re-export from @zhin.js/kernel for backward compatibility.
3
+ * Core's Plugin class implements PluginLike, so the Feature's
4
+ * mounted(plugin: PluginLike) signature is compatible.
10
5
  */
11
- export class Feature {
12
- /** 全局 item 列表 */
13
- items = [];
14
- /** 按插件名分组的 item 列表 */
15
- pluginItems = new Map();
16
- /** 事件监听器 */
17
- #listeners = new Map();
18
- /**
19
- * 监听变更事件
20
- * @param event 'add' | 'remove'
21
- * @param listener 回调函数
22
- * @returns 取消监听的函数
23
- */
24
- on(event, listener) {
25
- if (!this.#listeners.has(event)) {
26
- this.#listeners.set(event, new Set());
27
- }
28
- this.#listeners.get(event).add(listener);
29
- return () => { this.#listeners.get(event)?.delete(listener); };
30
- }
31
- /** 触发事件 */
32
- emit(event, item, pluginName) {
33
- const listeners = this.#listeners.get(event);
34
- if (!listeners)
35
- return;
36
- for (const listener of listeners) {
37
- try {
38
- listener(item, pluginName);
39
- }
40
- catch { /* 防止监听器异常影响主流程 */ }
41
- }
42
- }
43
- /**
44
- * 添加 item,同时记录所属插件
45
- * @returns dispose 函数,用于移除该 item
46
- */
47
- add(item, pluginName) {
48
- this.items.push(item);
49
- if (!this.pluginItems.has(pluginName)) {
50
- this.pluginItems.set(pluginName, []);
51
- }
52
- this.pluginItems.get(pluginName).push(item);
53
- this.emit('add', item, pluginName);
54
- return () => this.remove(item, pluginName);
55
- }
56
- /**
57
- * 移除 item
58
- */
59
- remove(item, pluginName) {
60
- const idx = this.items.indexOf(item);
61
- if (idx !== -1) {
62
- this.items.splice(idx, 1);
63
- const resolvedPluginName = pluginName ?? this.#findPluginName(item);
64
- for (const [, items] of this.pluginItems) {
65
- const i = items.indexOf(item);
66
- if (i !== -1)
67
- items.splice(i, 1);
68
- }
69
- this.emit('remove', item, resolvedPluginName ?? '');
70
- return true;
71
- }
72
- return false;
73
- }
74
- /** 反查 item 所属的 pluginName */
75
- #findPluginName(item) {
76
- for (const [name, items] of this.pluginItems) {
77
- if (items.includes(item))
78
- return name;
79
- }
80
- return undefined;
81
- }
82
- /**
83
- * 获取指定插件注册的 item 列表
84
- */
85
- getByPlugin(pluginName) {
86
- return this.pluginItems.get(pluginName) || [];
87
- }
88
- /**
89
- * 全局 item 数量
90
- */
91
- get count() {
92
- return this.items.length;
93
- }
94
- /**
95
- * 指定插件的 item 数量
96
- */
97
- countByPlugin(pluginName) {
98
- return this.getByPlugin(pluginName).length;
99
- }
100
- /**
101
- * 提供给 Plugin.prototype 的扩展方法
102
- * 子类重写此 getter 以注册扩展(如 addCommand)
103
- */
104
- get extensions() {
105
- return {};
106
- }
107
- }
6
+ export { Feature } from '@zhin.js/kernel';
108
7
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature.js","sourceRoot":"","sources":["../src/feature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature.js","sourceRoot":"","sources":["../src/feature.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
package/lib/index.d.ts CHANGED
@@ -29,4 +29,5 @@ export * from './scheduler/index.js';
29
29
  export * from '@zhin.js/database';
30
30
  export * from '@zhin.js/logger';
31
31
  export { Schema } from '@zhin.js/schema';
32
+ export type { PluginLike } from '@zhin.js/kernel';
32
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAE3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AAEnC,cAAc,iBAAiB,CAAA;AAE/B,cAAc,uBAAuB,CAAA;AAErC,cAAc,uBAAuB,CAAA;AAErC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,iCAAiC,CAAA;AAE/C,cAAc,eAAe,CAAA;AAE7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAE3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AAEnC,cAAc,iBAAiB,CAAA;AAE/B,cAAc,uBAAuB,CAAA;AAErC,cAAc,uBAAuB,CAAA;AAErC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,iCAAiC,CAAA;AAE/C,cAAc,eAAe,CAAA;AAE7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA"}
@@ -1,10 +1,6 @@
1
1
  /**
2
- * Scheduler module — at / every / cron + heartbeat
2
+ * Re-export from @zhin.js/kernel for backward compatibility.
3
3
  */
4
- export type { Schedule, JobPayload, JobState, ScheduledJob, JobStore, JobCallback, AddJobOptions, IScheduler, } from './types.js';
5
- export { Scheduler } from './scheduler.js';
6
- export type { SchedulerOptions } from './scheduler.js';
7
- import type { Scheduler } from './scheduler.js';
8
- export declare function getScheduler(): Scheduler | null;
9
- export declare function setScheduler(s: Scheduler | null): void;
4
+ export { Scheduler, getScheduler, setScheduler, } from '@zhin.js/kernel';
5
+ export type { Schedule, JobPayload, JobState, ScheduledJob, JobStore, JobCallback, AddJobOptions, IScheduler, SchedulerOptions, } from '@zhin.js/kernel';
10
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACV,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,aAAa,EACb,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAIhD,wBAAgB,YAAY,IAAI,SAAS,GAAG,IAAI,CAE/C;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAEtD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,SAAS,EACT,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,aAAa,EACb,UAAU,EACV,gBAAgB,GACjB,MAAM,iBAAiB,CAAC"}
@@ -1,12 +1,5 @@
1
1
  /**
2
- * Scheduler module — at / every / cron + heartbeat
2
+ * Re-export from @zhin.js/kernel for backward compatibility.
3
3
  */
4
- export { Scheduler } from './scheduler.js';
5
- let schedulerInstance = null;
6
- export function getScheduler() {
7
- return schedulerInstance;
8
- }
9
- export function setScheduler(s) {
10
- schedulerInstance = s;
11
- }
4
+ export { Scheduler, getScheduler, setScheduler, } from '@zhin.js/kernel';
12
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAK3C,IAAI,iBAAiB,GAAqB,IAAI,CAAC;AAE/C,MAAM,UAAU,YAAY;IAC1B,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,CAAmB;IAC9C,iBAAiB,GAAG,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,SAAS,EACT,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC"}
package/lib/types.d.ts CHANGED
@@ -176,7 +176,8 @@ export interface ToolParametersSchema<TArgs extends Record<string, any> = Record
176
176
  }
177
177
  /**
178
178
  * 工具执行上下文
179
- * 包含消息来源、发送者等信息
179
+ * 包含消息来源、发送者等 IM 信息。
180
+ * 通用(IM 无关)版本请使用 @zhin.js/ai 的 ToolContext。
180
181
  */
181
182
  export interface ToolContext {
182
183
  /** 来源平台 */
@@ -393,5 +394,11 @@ export declare namespace Tool {
393
394
  }
394
395
  /** @deprecated 使用 Tool 替代 */
395
396
  export type AITool = Tool;
397
+ /**
398
+ * IMToolContext — ToolContext 的显式 IM 别名。
399
+ * 当同时使用 @zhin.js/ai (通用 ToolContext) 和 @zhin.js/core (IM ToolContext) 时,
400
+ * 用此类型消除歧义。
401
+ */
402
+ export type IMToolContext = ToolContext;
396
403
  export {};
397
404
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}