@aalis/core 0.2.0 → 0.5.0
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/dist/app.d.ts +1 -18
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +3 -42
- package/dist/app.js.map +1 -1
- package/dist/config.d.ts +4 -4
- package/dist/config.js +2 -2
- package/dist/context.d.ts +10 -39
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +11 -32
- package/dist/context.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -4
- package/dist/index.js.map +1 -1
- package/dist/plugin-activation.d.ts +0 -15
- package/dist/plugin-activation.d.ts.map +1 -1
- package/dist/plugin-activation.js +7 -81
- package/dist/plugin-activation.js.map +1 -1
- package/dist/plugin.d.ts +3 -22
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +7 -54
- package/dist/plugin.js.map +1 -1
- package/dist/providers.d.ts +1 -1
- package/dist/service-helpers.d.ts +4 -9
- package/dist/service-helpers.d.ts.map +1 -1
- package/dist/service-helpers.js +6 -19
- package/dist/service-helpers.js.map +1 -1
- package/dist/service.d.ts +11 -19
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +22 -68
- package/dist/service.js.map +1 -1
- package/dist/types/app.d.ts +0 -9
- package/dist/types/app.d.ts.map +1 -1
- package/dist/types/core.d.ts +1 -2
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js.map +1 -1
- package/dist/types/index.d.ts +0 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/service.d.ts +0 -2
- package/dist/types/service.d.ts.map +1 -1
- package/dist/types/service.js +1 -4
- package/dist/types/service.js.map +1 -1
- package/dist/types/services.d.ts.map +1 -1
- package/dist/types/services.js +1 -3
- package/dist/types/services.js.map +1 -1
- package/package.json +5 -1
package/dist/service.js
CHANGED
|
@@ -2,11 +2,11 @@ import { normalizeDependency, ServicePriority, } from './types/service.js';
|
|
|
2
2
|
// 类型与纯辅助 re-export,保留同名旧导入路径
|
|
3
3
|
export { normalizeDependency, ServicePriority };
|
|
4
4
|
/**
|
|
5
|
-
* 服务容器 —— 支持同名多实现
|
|
5
|
+
* 服务容器 —— 支持同名多实现
|
|
6
6
|
*
|
|
7
7
|
* 设计要点:
|
|
8
|
-
* -
|
|
9
|
-
* -
|
|
8
|
+
* - 同一个服务名可以有多个提供者(按 priority + 偏好解析)
|
|
9
|
+
* - 服务选择走「偏好 > 优先级 > 注册顺序」;领域级筛选(如按 LLM 模型能力)由各 -api 自理,不在内核 DI
|
|
10
10
|
* - 每个注册都关联 contextId, 以便在插件卸载时批量清理
|
|
11
11
|
*/
|
|
12
12
|
export class ServiceContainer {
|
|
@@ -18,7 +18,7 @@ export class ServiceContainer {
|
|
|
18
18
|
*
|
|
19
19
|
* @returns 刚插入的 ServiceEntry,调用方可以该引用调用 {@link unregisterEntry} 精确删除这一条。
|
|
20
20
|
*/
|
|
21
|
-
register(name, instance,
|
|
21
|
+
register(name, instance, priority = 0, contextId = 'root', label) {
|
|
22
22
|
let list = this.entries.get(name);
|
|
23
23
|
if (!list) {
|
|
24
24
|
list = [];
|
|
@@ -26,7 +26,6 @@ export class ServiceContainer {
|
|
|
26
26
|
}
|
|
27
27
|
const entry = {
|
|
28
28
|
instance,
|
|
29
|
-
capabilities: new Set(capabilities),
|
|
30
29
|
priority,
|
|
31
30
|
contextId,
|
|
32
31
|
label,
|
|
@@ -59,25 +58,15 @@ export class ServiceContainer {
|
|
|
59
58
|
/**
|
|
60
59
|
* 获取一个满足能力要求的服务实例
|
|
61
60
|
*/
|
|
62
|
-
get(name
|
|
61
|
+
get(name) {
|
|
63
62
|
const list = this.resolveEntries(name);
|
|
64
|
-
|
|
65
|
-
return undefined;
|
|
66
|
-
for (const entry of list) {
|
|
67
|
-
if (requiredCapabilities && requiredCapabilities.length > 0) {
|
|
68
|
-
const satisfied = requiredCapabilities.every(c => entry.capabilities.has(c));
|
|
69
|
-
if (!satisfied)
|
|
70
|
-
continue;
|
|
71
|
-
}
|
|
72
|
-
return entry.instance;
|
|
73
|
-
}
|
|
74
|
-
return undefined;
|
|
63
|
+
return list.length > 0 ? list[0].instance : undefined;
|
|
75
64
|
}
|
|
76
65
|
/**
|
|
77
|
-
*
|
|
66
|
+
* 检查某个服务是否存在
|
|
78
67
|
*/
|
|
79
|
-
has(name
|
|
80
|
-
return this.get(name
|
|
68
|
+
has(name) {
|
|
69
|
+
return this.get(name) !== undefined;
|
|
81
70
|
}
|
|
82
71
|
/**
|
|
83
72
|
* 检查指定 contextId 是否注册了某个服务。
|
|
@@ -92,20 +81,6 @@ export class ServiceContainer {
|
|
|
92
81
|
const prefix = `${contextId}/`;
|
|
93
82
|
return list.some(e => e.contextId === contextId || e.contextId.startsWith(prefix));
|
|
94
83
|
}
|
|
95
|
-
/**
|
|
96
|
-
* 获取某个服务的所有能力列表(合并所有提供者)
|
|
97
|
-
*/
|
|
98
|
-
getCapabilities(name) {
|
|
99
|
-
const list = this.entries.get(name);
|
|
100
|
-
if (!list)
|
|
101
|
-
return [];
|
|
102
|
-
const caps = new Set();
|
|
103
|
-
for (const entry of list) {
|
|
104
|
-
for (const c of entry.capabilities)
|
|
105
|
-
caps.add(c);
|
|
106
|
-
}
|
|
107
|
-
return [...caps];
|
|
108
|
-
}
|
|
109
84
|
/**
|
|
110
85
|
* 按 entry 引用精确删除某个提供者(推荐)
|
|
111
86
|
*
|
|
@@ -165,28 +140,14 @@ export class ServiceContainer {
|
|
|
165
140
|
/**
|
|
166
141
|
* 获取某个服务的所有实例(带提供者信息)
|
|
167
142
|
*
|
|
168
|
-
* 可选 requiredCapabilities 过滤:只返回满足所有所需能力的提供者。
|
|
169
143
|
* 返回顺序遵循「偏好 > 优先级 > 注册顺序」。
|
|
170
144
|
*/
|
|
171
|
-
getAll(name
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
if (requiredCapabilities && requiredCapabilities.length > 0) {
|
|
178
|
-
const satisfied = requiredCapabilities.every(c => entry.capabilities.has(c));
|
|
179
|
-
if (!satisfied)
|
|
180
|
-
continue;
|
|
181
|
-
}
|
|
182
|
-
result.push({
|
|
183
|
-
instance: entry.instance,
|
|
184
|
-
contextId: entry.contextId,
|
|
185
|
-
capabilities: [...entry.capabilities],
|
|
186
|
-
label: entry.label,
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
return result;
|
|
145
|
+
getAll(name) {
|
|
146
|
+
return this.resolveEntries(name).map(entry => ({
|
|
147
|
+
instance: entry.instance,
|
|
148
|
+
contextId: entry.contextId,
|
|
149
|
+
label: entry.label,
|
|
150
|
+
}));
|
|
190
151
|
}
|
|
191
152
|
/**
|
|
192
153
|
* 设置某服务的偏好 provider(按 contextId)
|
|
@@ -247,19 +208,14 @@ export class ScopedServiceContainer extends ServiceContainer {
|
|
|
247
208
|
super();
|
|
248
209
|
this.parent = parent;
|
|
249
210
|
}
|
|
250
|
-
get(name
|
|
251
|
-
const local = super.get(name
|
|
211
|
+
get(name) {
|
|
212
|
+
const local = super.get(name);
|
|
252
213
|
if (local !== undefined)
|
|
253
214
|
return local;
|
|
254
|
-
return this.parent.get(name
|
|
215
|
+
return this.parent.get(name);
|
|
255
216
|
}
|
|
256
|
-
has(name
|
|
257
|
-
return super.has(name
|
|
258
|
-
}
|
|
259
|
-
getCapabilities(name) {
|
|
260
|
-
const local = super.getCapabilities(name);
|
|
261
|
-
const parent = this.parent.getCapabilities(name);
|
|
262
|
-
return [...new Set([...local, ...parent])];
|
|
217
|
+
has(name) {
|
|
218
|
+
return super.has(name) || this.parent.has(name);
|
|
263
219
|
}
|
|
264
220
|
getServiceNames() {
|
|
265
221
|
return [...new Set([...super.getServiceNames(), ...this.parent.getServiceNames()])];
|
|
@@ -270,10 +226,8 @@ export class ScopedServiceContainer extends ServiceContainer {
|
|
|
270
226
|
// 本地条目优先(在前),父容器条目在后
|
|
271
227
|
return [...local, ...parent];
|
|
272
228
|
}
|
|
273
|
-
getAll(name
|
|
274
|
-
|
|
275
|
-
const parent = this.parent.getAll(name, requiredCapabilities);
|
|
276
|
-
return [...local, ...parent];
|
|
229
|
+
getAll(name) {
|
|
230
|
+
return [...super.getAll(name), ...this.parent.getAll(name)];
|
|
277
231
|
}
|
|
278
232
|
}
|
|
279
233
|
//# sourceMappingURL=service.js.map
|
package/dist/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EAEnB,eAAe,GAEhB,MAAM,oBAAoB,CAAC;AAG5B,6BAA6B;AAC7B,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAC;AAEhD;;;;;;;GAOG;AACH,MAAM,OAAO,gBAAgB;IACnB,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpD,uEAAuE;IAC/D,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEhD;;;;OAIG;IACH,QAAQ,CACN,IAAY,EACZ,QAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
package/dist/types/app.d.ts
CHANGED
|
@@ -21,13 +21,10 @@ export interface PluginStatusEntry {
|
|
|
21
21
|
name: string;
|
|
22
22
|
instanceId: string;
|
|
23
23
|
displayName?: string;
|
|
24
|
-
/** 子系统归属(manifest 声明),用于 WebUI 分组展示 */
|
|
25
|
-
subsystem?: string;
|
|
26
24
|
state: PluginState;
|
|
27
25
|
provides?: string[];
|
|
28
26
|
core?: boolean;
|
|
29
27
|
reusable?: boolean;
|
|
30
|
-
extends?: unknown;
|
|
31
28
|
/** 必需依赖的服务名(来自 inject.required,能力披露用:该插件「要调用哪些子系统」) */
|
|
32
29
|
requiredServices?: string[];
|
|
33
30
|
/** 可选依赖的服务名(来自 inject.optional) */
|
|
@@ -61,12 +58,6 @@ export interface PluginManagerService {
|
|
|
61
58
|
/** 删除实例 */
|
|
62
59
|
removeInstance(instanceId: string): Promise<boolean>;
|
|
63
60
|
}
|
|
64
|
-
declare module './capabilities.js' {
|
|
65
|
-
interface ServiceCapabilityMap {
|
|
66
|
-
app: 'lifecycle' | 'config';
|
|
67
|
-
plugins: 'plugin-mgmt';
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
61
|
declare module './services.js' {
|
|
71
62
|
interface ServiceTypeMap {
|
|
72
63
|
app: AppService;
|
package/dist/types/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/types/app.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,WAAW;IACX,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,gCAAgC;IAChC,OAAO,IAAI,IAAI,CAAC;IAChB,cAAc;IACd,UAAU,IAAI,IAAI,CAAC;IAEnB,uCAAuC;IACvC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACpC;AAED,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/types/app.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,WAAW;IACX,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,gCAAgC;IAChC,OAAO,IAAI,IAAI,CAAC;IAChB,cAAc;IACd,UAAU,IAAI,IAAI,CAAC;IAEnB,uCAAuC;IACvC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACpC;AAED,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,mBAAmB;IACnB,SAAS,IAAI,iBAAiB,EAAE,CAAC;IACjC,eAAe;IACf,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IACjD,sBAAsB;IACtB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpF,WAAW;IACX,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,WAAW;IACX,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,gEAAgE;IAChE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,wCAAwC;IACxC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAClH,WAAW;IACX,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtD;AAED,OAAO,QAAQ,eAAe,CAAC;IAC7B,UAAU,cAAc;QACtB,GAAG,EAAE,UAAU,CAAC;QAChB,OAAO,EAAE,oBAAoB,CAAC;KAC/B;CACF"}
|
package/dist/types/core.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export interface ServiceDependency {
|
|
2
2
|
service: string;
|
|
3
|
-
capabilities?: string[];
|
|
4
3
|
}
|
|
5
4
|
export type DependencyDeclaration = string | ServiceDependency;
|
|
6
5
|
export interface InjectDeclaration {
|
|
@@ -79,7 +78,7 @@ export type ConfigSchema = Record<string, SchemaField | SchemaGroup | SchemaArra
|
|
|
79
78
|
* ```
|
|
80
79
|
*/
|
|
81
80
|
export interface AalisEvents {
|
|
82
|
-
'service:registered': [name: string
|
|
81
|
+
'service:registered': [name: string];
|
|
83
82
|
'service:unregistered': [name: string];
|
|
84
83
|
/**
|
|
85
84
|
* 某服务的偏好 provider 发生切换(preferService / unpreferService)。
|
package/dist/types/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACpC;AAID;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,IAAI,CAAC;IACb,WAAW,EAAE,IAAI,CAAC;IAClB,QAAQ,EAAE,IAAI,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mCAAmC;IACnC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACrC;AAED,yCAAyC;AACzC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,mCAAmC;AACnC,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC;AAInF;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IAK1B,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrC,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvC;;;;OAIG;IACH,4BAA4B,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7C,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAClC,iBAAiB,EAAE,EAAE,CAAC;IACtB,KAAK,EAAE,EAAE,CAAC;IACV,uCAAuC;IACvC,aAAa,EAAE,EAAE,CAAC;IAClB,UAAU,EAAE,EAAE,CAAC;IACf,wCAAwC;IACxC,cAAc,EAAE,EAAE,CAAC;IACnB;;;;;;;OAOG;IACH,cAAc,EAAE,EAAE,CAAC;CACpB;AAID;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
package/dist/types/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"AAAA,qBAAqB;;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"AAAA,qBAAqB;;AAmJrB,2EAA2E;AAC3E,0FAA0F;AAC1F,6CAA6C"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
export type { AppService, PluginManagerService, PluginStatusEntry } from './app.js';
|
|
2
|
-
export type { CapabilityList, CapabilityOf, CapabilityProbe, ServiceCapabilityMap } from './capabilities.js';
|
|
3
|
-
export { probeCapability, registerCapabilityProbe } from './capabilities.js';
|
|
4
2
|
export type { AalisEvents, ConfigSchema, DependencyDeclaration, InjectDeclaration, MiddlewareFn, MiddlewareNext, SchemaArray, SchemaField, SchemaFieldType, SchemaFieldTypes, SchemaGroup, ServiceDependency, } from './core.js';
|
|
5
3
|
export type { DisposableService } from './disposable-service.js';
|
|
6
4
|
export type { HookContextMap } from './hooks.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAiBA,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEpF,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAiBA,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEpF,YAAY,EACV,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAEnB,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -13,5 +13,5 @@
|
|
|
13
13
|
// - LLM / Memory / Storage / Embedding / VectorStore / Tools / Commands / Gateway /
|
|
14
14
|
// WebUI / Authority / Agent / Platform 等服务接口同样在各自的 plugin-*-api。
|
|
15
15
|
// ============================================================
|
|
16
|
-
export {
|
|
16
|
+
export {};
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,8BAA8B;AAC9B,EAAE;AACF,kBAAkB;AAClB,kFAAkF;AAClF,8CAA8C;AAC9C,sCAAsC;AACtC,6BAA6B;AAC7B,EAAE;AACF,+BAA+B;AAC/B,mEAAmE;AACnE,yEAAyE;AACzE,sFAAsF;AACtF,qEAAqE;AACrE,+DAA+D
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,8BAA8B;AAC9B,EAAE;AACF,kBAAkB;AAClB,kFAAkF;AAClF,8CAA8C;AAC9C,sCAAsC;AACtC,6BAA6B;AAC7B,EAAE;AACF,+BAA+B;AAC/B,mEAAmE;AACnE,yEAAyE;AACzE,sFAAsF;AACtF,qEAAqE;AACrE,+DAA+D"}
|
package/dist/types/service.d.ts
CHANGED
|
@@ -26,7 +26,6 @@ export declare const ServicePriority: {
|
|
|
26
26
|
export type ServicePriorityValue = (typeof ServicePriority)[keyof typeof ServicePriority];
|
|
27
27
|
export interface ServiceEntry {
|
|
28
28
|
instance: unknown;
|
|
29
|
-
capabilities: Set<string>;
|
|
30
29
|
priority: number;
|
|
31
30
|
contextId: string;
|
|
32
31
|
/** 可选的展示标签(如 "OpenAI / gpt-4o") */
|
|
@@ -34,7 +33,6 @@ export interface ServiceEntry {
|
|
|
34
33
|
}
|
|
35
34
|
export interface NormalizedDependency {
|
|
36
35
|
service: string;
|
|
37
|
-
capabilities: string[];
|
|
38
36
|
}
|
|
39
37
|
/**
|
|
40
38
|
* 将 string | ServiceDependency 统一为 NormalizedDependency
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/types/service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AACX,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAE1F,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/types/service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AACX,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAE1F,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,qBAAqB,GAAG,oBAAoB,CAEpF"}
|
package/dist/types/service.js
CHANGED
|
@@ -30,9 +30,6 @@ export const ServicePriority = {
|
|
|
30
30
|
* 将 string | ServiceDependency 统一为 NormalizedDependency
|
|
31
31
|
*/
|
|
32
32
|
export function normalizeDependency(dep) {
|
|
33
|
-
|
|
34
|
-
return { service: dep, capabilities: [] };
|
|
35
|
-
}
|
|
36
|
-
return { service: dep.service, capabilities: dep.capabilities ?? [] };
|
|
33
|
+
return { service: typeof dep === 'string' ? dep : dep.service };
|
|
37
34
|
}
|
|
38
35
|
//# sourceMappingURL=service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/types/service.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,EAAE;AACF,qDAAqD;AACrD,sBAAsB;AAItB;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,GAAG;CACH,CAAC;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/types/service.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,EAAE;AACF,qDAAqD;AACrD,sBAAsB;AAItB;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,GAAG;CACH,CAAC;AAeX;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAA0B;IAC5D,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;AAClE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/types/services.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/types/services.ts"],"names":[],"mappings":"AAsCA;;;;;GAKG;AACH,MAAM,WAAW,cAAc;CAAG;AAElC;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,MAAM,IAAI,KAAK,SAAS,MAAM,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC"}
|
package/dist/types/services.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
// ----- 服务类型注册表(service name → service interface) -----
|
|
2
2
|
//
|
|
3
|
-
//
|
|
4
|
-
// union,这里登记服务名 → 服务实例接口本身。`Context.provide` / `getService`
|
|
5
|
-
// 在编译期同时受这两层约束。
|
|
3
|
+
// 登记服务名 → 服务实例接口本身,供 `Context.provide` / `getService` 在编译期约束类型。
|
|
6
4
|
//
|
|
7
5
|
// ## 用法
|
|
8
6
|
//
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/types/services.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,
|
|
1
|
+
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/types/services.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,gEAAgE;AAChE,EAAE;AACF,QAAQ;AACR,EAAE;AACF,mDAAmD;AACnD,EAAE;AACF,QAAQ;AACR,6CAA6C;AAC7C,iCAAiC;AACjC,+BAA+B;AAC/B,6BAA6B;AAC7B,MAAM;AACN,IAAI;AACJ,MAAM;AACN,EAAE;AACF,SAAS;AACT,EAAE;AACF,QAAQ;AACR,gFAAgF;AAChF,qDAAqD;AACrD,MAAM;AACN,EAAE;AACF,kBAAkB;AAClB,EAAE;AACF,+BAA+B;AAC/B,4EAA4E;AAC5E,gEAAgE;AAChE,oEAAoE;AACpE,yBAAyB;AACzB,EAAE;AACF,QAAQ;AACR,EAAE;AACF,mDAAmD;AACnD,8DAA8D;AAC9D,mDAAmD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"aalis": {
|
|
@@ -16,6 +16,10 @@
|
|
|
16
16
|
"typescript": "^5.7.0",
|
|
17
17
|
"@types/node": "^22.0.0"
|
|
18
18
|
},
|
|
19
|
+
"keywords": [
|
|
20
|
+
"aalis",
|
|
21
|
+
"aalis-core"
|
|
22
|
+
],
|
|
19
23
|
"scripts": {
|
|
20
24
|
"build": "tsc",
|
|
21
25
|
"dev": "tsc --watch"
|