js-agent-core 1.0.1
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/LICENSE +15 -0
- package/README.md +29 -0
- package/dist/core/AgentDashboard.d.ts +33 -0
- package/dist/core/AgentDashboard.d.ts.map +1 -0
- package/dist/core/AgentDashboard.js +477 -0
- package/dist/core/AgentDashboard.js.map +1 -0
- package/dist/core/AutoVectorStore.d.ts +23 -0
- package/dist/core/AutoVectorStore.d.ts.map +1 -0
- package/dist/core/AutoVectorStore.js +55 -0
- package/dist/core/AutoVectorStore.js.map +1 -0
- package/dist/core/BaseAgent.d.ts +70 -0
- package/dist/core/BaseAgent.d.ts.map +1 -0
- package/dist/core/BaseAgent.js +583 -0
- package/dist/core/BaseAgent.js.map +1 -0
- package/dist/core/EventEmitter.d.ts +8 -0
- package/dist/core/EventEmitter.d.ts.map +1 -0
- package/dist/core/EventEmitter.js +32 -0
- package/dist/core/EventEmitter.js.map +1 -0
- package/dist/core/LocalEmbedder.d.ts +25 -0
- package/dist/core/LocalEmbedder.d.ts.map +1 -0
- package/dist/core/LocalEmbedder.js +62 -0
- package/dist/core/LocalEmbedder.js.map +1 -0
- package/dist/core/LongTermMemory.d.ts +30 -0
- package/dist/core/LongTermMemory.d.ts.map +1 -0
- package/dist/core/LongTermMemory.js +123 -0
- package/dist/core/LongTermMemory.js.map +1 -0
- package/dist/core/MemoryVectorStore.d.ts +17 -0
- package/dist/core/MemoryVectorStore.d.ts.map +1 -0
- package/dist/core/MemoryVectorStore.js +44 -0
- package/dist/core/MemoryVectorStore.js.map +1 -0
- package/dist/core/OpenAIProvider.d.ts +21 -0
- package/dist/core/OpenAIProvider.d.ts.map +1 -0
- package/dist/core/OpenAIProvider.js +254 -0
- package/dist/core/OpenAIProvider.js.map +1 -0
- package/dist/core/SimpleMemory.d.ts +12 -0
- package/dist/core/SimpleMemory.d.ts.map +1 -0
- package/dist/core/SimpleMemory.js +27 -0
- package/dist/core/SimpleMemory.js.map +1 -0
- package/dist/core/StructuredPlanner.d.ts +13 -0
- package/dist/core/StructuredPlanner.d.ts.map +1 -0
- package/dist/core/StructuredPlanner.js +156 -0
- package/dist/core/StructuredPlanner.js.map +1 -0
- package/dist/core/ToolRegistry.d.ts +18 -0
- package/dist/core/ToolRegistry.d.ts.map +1 -0
- package/dist/core/ToolRegistry.js +74 -0
- package/dist/core/ToolRegistry.js.map +1 -0
- package/dist/core/index.d.ts +14 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +14 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/logging/CompositeLogger.d.ts +8 -0
- package/dist/core/logging/CompositeLogger.d.ts.map +1 -0
- package/dist/core/logging/CompositeLogger.js +23 -0
- package/dist/core/logging/CompositeLogger.js.map +1 -0
- package/dist/core/logging/NodeFsLogger.d.ts +12 -0
- package/dist/core/logging/NodeFsLogger.d.ts.map +1 -0
- package/dist/core/logging/NodeFsLogger.js +46 -0
- package/dist/core/logging/NodeFsLogger.js.map +1 -0
- package/dist/core/logging/WebIndexedDbLogger.d.ts +15 -0
- package/dist/core/logging/WebIndexedDbLogger.d.ts.map +1 -0
- package/dist/core/logging/WebIndexedDbLogger.js +65 -0
- package/dist/core/logging/WebIndexedDbLogger.js.map +1 -0
- package/dist/core/logging/index.d.ts +11 -0
- package/dist/core/logging/index.d.ts.map +1 -0
- package/dist/core/logging/index.js +33 -0
- package/dist/core/logging/index.js.map +1 -0
- package/dist/core/persistence/NodeFsSkillStore.d.ts +17 -0
- package/dist/core/persistence/NodeFsSkillStore.d.ts.map +1 -0
- package/dist/core/persistence/NodeFsSkillStore.js +124 -0
- package/dist/core/persistence/NodeFsSkillStore.js.map +1 -0
- package/dist/core/persistence/NodeFsVectorStore.d.ts +25 -0
- package/dist/core/persistence/NodeFsVectorStore.d.ts.map +1 -0
- package/dist/core/persistence/NodeFsVectorStore.js +74 -0
- package/dist/core/persistence/NodeFsVectorStore.js.map +1 -0
- package/dist/core/persistence/SkillLoader.d.ts +26 -0
- package/dist/core/persistence/SkillLoader.d.ts.map +1 -0
- package/dist/core/persistence/SkillLoader.js +144 -0
- package/dist/core/persistence/SkillLoader.js.map +1 -0
- package/dist/core/persistence/WebIndexedDbSkillStore.d.ts +21 -0
- package/dist/core/persistence/WebIndexedDbSkillStore.d.ts.map +1 -0
- package/dist/core/persistence/WebIndexedDbSkillStore.js +119 -0
- package/dist/core/persistence/WebIndexedDbSkillStore.js.map +1 -0
- package/dist/core/persistence/WebIndexedDbVectorStore.d.ts +30 -0
- package/dist/core/persistence/WebIndexedDbVectorStore.d.ts.map +1 -0
- package/dist/core/persistence/WebIndexedDbVectorStore.js +87 -0
- package/dist/core/persistence/WebIndexedDbVectorStore.js.map +1 -0
- package/dist/core/persistence/index.d.ts +6 -0
- package/dist/core/persistence/index.d.ts.map +1 -0
- package/dist/core/persistence/index.js +21 -0
- package/dist/core/persistence/index.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/IAgentEvent.d.ts +27 -0
- package/dist/interfaces/IAgentEvent.d.ts.map +1 -0
- package/dist/interfaces/IAgentEvent.js +2 -0
- package/dist/interfaces/IAgentEvent.js.map +1 -0
- package/dist/interfaces/IAgentState.d.ts +22 -0
- package/dist/interfaces/IAgentState.d.ts.map +1 -0
- package/dist/interfaces/IAgentState.js +2 -0
- package/dist/interfaces/IAgentState.js.map +1 -0
- package/dist/interfaces/ILLMProvider.d.ts +43 -0
- package/dist/interfaces/ILLMProvider.d.ts.map +1 -0
- package/dist/interfaces/ILLMProvider.js +2 -0
- package/dist/interfaces/ILLMProvider.js.map +1 -0
- package/dist/interfaces/ILogger.d.ts +15 -0
- package/dist/interfaces/ILogger.d.ts.map +1 -0
- package/dist/interfaces/ILogger.js +2 -0
- package/dist/interfaces/ILogger.js.map +1 -0
- package/dist/interfaces/IMemory.d.ts +32 -0
- package/dist/interfaces/IMemory.d.ts.map +1 -0
- package/dist/interfaces/IMemory.js +2 -0
- package/dist/interfaces/IMemory.js.map +1 -0
- package/dist/interfaces/IPlanner.d.ts +20 -0
- package/dist/interfaces/IPlanner.d.ts.map +1 -0
- package/dist/interfaces/IPlanner.js +2 -0
- package/dist/interfaces/IPlanner.js.map +1 -0
- package/dist/interfaces/ISkill.d.ts +9 -0
- package/dist/interfaces/ISkill.d.ts.map +1 -0
- package/dist/interfaces/ISkill.js +2 -0
- package/dist/interfaces/ISkill.js.map +1 -0
- package/dist/interfaces/ISkillStore.d.ts +53 -0
- package/dist/interfaces/ISkillStore.d.ts.map +1 -0
- package/dist/interfaces/ISkillStore.js +2 -0
- package/dist/interfaces/ISkillStore.js.map +1 -0
- package/dist/interfaces/ITool.d.ts +32 -0
- package/dist/interfaces/ITool.d.ts.map +1 -0
- package/dist/interfaces/ITool.js +2 -0
- package/dist/interfaces/ITool.js.map +1 -0
- package/dist/interfaces/index.d.ts +10 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +10 -0
- package/dist/interfaces/index.js.map +1 -0
- package/package.json +47 -0
- package/src/core/AgentDashboard.ts +533 -0
- package/src/core/AutoVectorStore.ts +60 -0
- package/src/core/BaseAgent.ts +676 -0
- package/src/core/EventEmitter.ts +35 -0
- package/src/core/LocalEmbedder.ts +68 -0
- package/src/core/LongTermMemory.ts +146 -0
- package/src/core/MemoryVectorStore.ts +54 -0
- package/src/core/OpenAIProvider.ts +274 -0
- package/src/core/SimpleMemory.ts +31 -0
- package/src/core/StructuredPlanner.ts +165 -0
- package/src/core/ToolRegistry.ts +89 -0
- package/src/core/index.ts +16 -0
- package/src/core/logging/CompositeLogger.ts +26 -0
- package/src/core/logging/NodeFsLogger.ts +53 -0
- package/src/core/logging/WebIndexedDbLogger.ts +76 -0
- package/src/core/logging/index.ts +35 -0
- package/src/core/persistence/NodeFsSkillStore.ts +138 -0
- package/src/core/persistence/NodeFsVectorStore.ts +86 -0
- package/src/core/persistence/SkillLoader.ts +153 -0
- package/src/core/persistence/WebIndexedDbSkillStore.ts +139 -0
- package/src/core/persistence/WebIndexedDbVectorStore.ts +106 -0
- package/src/core/persistence/index.ts +22 -0
- package/src/index.ts +2 -0
- package/src/interfaces/IAgentEvent.ts +46 -0
- package/src/interfaces/IAgentState.ts +22 -0
- package/src/interfaces/ILLMProvider.ts +47 -0
- package/src/interfaces/ILogger.ts +16 -0
- package/src/interfaces/IMemory.ts +29 -0
- package/src/interfaces/IPlanner.ts +22 -0
- package/src/interfaces/ISkill.ts +9 -0
- package/src/interfaces/ISkillStore.ts +60 -0
- package/src/interfaces/ITool.ts +38 -0
- package/src/interfaces/index.ts +10 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { MemoryVectorStore } from './MemoryVectorStore.js';
|
|
2
|
+
/**
|
|
3
|
+
* A proxy that dynamically loads the appropriate VectorStore implementation
|
|
4
|
+
* based on the runtime environment (Node.js vs Browser).
|
|
5
|
+
*/
|
|
6
|
+
export class AutoVectorStore {
|
|
7
|
+
instance = null;
|
|
8
|
+
options;
|
|
9
|
+
constructor(options = {}) {
|
|
10
|
+
this.options = options;
|
|
11
|
+
}
|
|
12
|
+
async getInstance() {
|
|
13
|
+
if (this.instance)
|
|
14
|
+
return this.instance;
|
|
15
|
+
const isNode = typeof process !== 'undefined' && process.versions?.node;
|
|
16
|
+
const isBrowser = typeof window !== 'undefined' && typeof indexedDB !== 'undefined';
|
|
17
|
+
try {
|
|
18
|
+
if (isNode) {
|
|
19
|
+
// Node.js: Dynamic import NodeFsVectorStore
|
|
20
|
+
const { NodeFsVectorStore } = await import('./persistence/NodeFsVectorStore.js');
|
|
21
|
+
this.instance = new NodeFsVectorStore(this.options);
|
|
22
|
+
}
|
|
23
|
+
else if (isBrowser) {
|
|
24
|
+
// Browser: Use WebIndexedDbVectorStore (already exported from persistence/index.js)
|
|
25
|
+
const { WebIndexedDbVectorStore } = await import('./persistence/WebIndexedDbVectorStore.js');
|
|
26
|
+
this.instance = new WebIndexedDbVectorStore(this.options);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
// Fallback: In-memory store
|
|
30
|
+
this.instance = new MemoryVectorStore();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
console.warn('Failed to load environment-specific VectorStore, falling back to MemoryVectorStore', error);
|
|
35
|
+
this.instance = new MemoryVectorStore();
|
|
36
|
+
}
|
|
37
|
+
return this.instance;
|
|
38
|
+
}
|
|
39
|
+
async add(text, embedding, metadata) {
|
|
40
|
+
const instance = await this.getInstance();
|
|
41
|
+
return instance.add(text, embedding, metadata);
|
|
42
|
+
}
|
|
43
|
+
async search(queryEmbedding, topK) {
|
|
44
|
+
const instance = await this.getInstance();
|
|
45
|
+
return instance.search(queryEmbedding, topK);
|
|
46
|
+
}
|
|
47
|
+
async searchByKeyword(keyword, topK) {
|
|
48
|
+
const instance = await this.getInstance();
|
|
49
|
+
if (instance.searchByKeyword) {
|
|
50
|
+
return instance.searchByKeyword(keyword, topK);
|
|
51
|
+
}
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=AutoVectorStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutoVectorStore.js","sourceRoot":"","sources":["../../src/core/AutoVectorStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;;;GAGG;AACH,MAAM,OAAO,eAAe;IAClB,QAAQ,GAAwB,IAAI,CAAC;IACrC,OAAO,CAAM;IAErB,YAAY,UAAe,EAAE;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;QAExC,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;QACxE,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,SAAS,KAAK,WAAW,CAAC;QAEpF,IAAI,CAAC;YACH,IAAI,MAAM,EAAE,CAAC;gBACX,4CAA4C;gBAC5C,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;gBACjF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC;iBAAM,IAAI,SAAS,EAAE,CAAC;gBACrB,oFAAoF;gBACpF,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;gBAC7F,IAAI,CAAC,QAAQ,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,4BAA4B;gBAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,oFAAoF,EAAE,KAAK,CAAC,CAAC;YAC1G,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC,QAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,SAAmB,EAAE,QAA8B;QACzE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,cAAwB,EAAE,IAAa;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAe,EAAE,IAAa;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;YAC7B,OAAO,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { IAgentEvent, ISkill, ITool, ILLMProvider, LLMMessage, IMemory, IPlanner, IAgentState, ISkillStore, SkillFile, SkillMetadata, ILogger } from '../interfaces/index.js';
|
|
2
|
+
export interface AgentOptions {
|
|
3
|
+
provider: ILLMProvider;
|
|
4
|
+
model: string;
|
|
5
|
+
systemPrompt?: string;
|
|
6
|
+
memory?: IMemory;
|
|
7
|
+
planner?: IPlanner;
|
|
8
|
+
maxIterations?: number;
|
|
9
|
+
enableDynamicSkills?: boolean;
|
|
10
|
+
routerModel?: string;
|
|
11
|
+
skillStore?: ISkillStore;
|
|
12
|
+
stream?: boolean;
|
|
13
|
+
logger?: ILogger;
|
|
14
|
+
agentId?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare class BaseAgent {
|
|
17
|
+
private eventEmitter;
|
|
18
|
+
private toolRegistry;
|
|
19
|
+
private provider;
|
|
20
|
+
private memory;
|
|
21
|
+
private planner;
|
|
22
|
+
private model;
|
|
23
|
+
private routerModel?;
|
|
24
|
+
private maxIterations;
|
|
25
|
+
private enableDynamicSkills;
|
|
26
|
+
private skillStore?;
|
|
27
|
+
private stream;
|
|
28
|
+
private logger?;
|
|
29
|
+
private agentId;
|
|
30
|
+
private currentTraceId?;
|
|
31
|
+
private skills;
|
|
32
|
+
private registeredSkills;
|
|
33
|
+
private activeSkills;
|
|
34
|
+
private currentTaskList?;
|
|
35
|
+
constructor(options: AgentOptions);
|
|
36
|
+
private initDefaultLogger;
|
|
37
|
+
registerSkill(skill: ISkill): void;
|
|
38
|
+
/**
|
|
39
|
+
* 持久化保存一个新技能并自动注册
|
|
40
|
+
*/
|
|
41
|
+
saveSkill(metadata: SkillMetadata, files: SkillFile[]): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* 从存储中加载所有已保存的技能
|
|
44
|
+
*/
|
|
45
|
+
loadStoredSkills(): Promise<void>;
|
|
46
|
+
use(skill: ISkill): Promise<void>;
|
|
47
|
+
registerTool(tool: ITool): void;
|
|
48
|
+
on<T = any>(event: IAgentEvent['type'], listener: (payload: T) => void): void;
|
|
49
|
+
getHistory(): Promise<LLMMessage[]>;
|
|
50
|
+
getMemoryUsage(): Promise<{
|
|
51
|
+
used: number;
|
|
52
|
+
total: number;
|
|
53
|
+
}>;
|
|
54
|
+
exportState(): Promise<IAgentState>;
|
|
55
|
+
/**
|
|
56
|
+
* 恢复 Agent 状态 (从快照中恢复)
|
|
57
|
+
* @param state 导出的状态快照
|
|
58
|
+
* @param availableSkills 可用的技能定义列表 (因为函数逻辑无法序列化,需手动提供)
|
|
59
|
+
* @param availableTools 可用的工具定义列表 (可选)
|
|
60
|
+
*/
|
|
61
|
+
restoreState(state: IAgentState, availableSkills?: ISkill[], availableTools?: ITool[]): Promise<void>;
|
|
62
|
+
run(input: string, options?: {
|
|
63
|
+
traceId?: string;
|
|
64
|
+
}): Promise<string>;
|
|
65
|
+
private emit;
|
|
66
|
+
private log;
|
|
67
|
+
private addToMemory;
|
|
68
|
+
private selectAndActivateSkills;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=BaseAgent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseAgent.d.ts","sourceRoot":"","sources":["../../src/core/BaseAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAe,QAAQ,EAAY,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAwB,MAAM,wBAAwB,CAAC;AAa1O,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,mBAAmB,CAAU;IACrC,OAAO,CAAC,UAAU,CAAC,CAAc;IACjC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,MAAM,CAAC,CAAU;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,eAAe,CAAC,CAAW;gBAEvB,OAAO,EAAE,YAAY;YA+BnB,iBAAiB;IAM/B,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlC;;OAEG;IACG,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAa3E;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBvC,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAI/B,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAIvE,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAInC,cAAc,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAO1D,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAsBzC;;;;;OAKG;IACG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,GAAE,MAAM,EAAO,EAAE,cAAc,GAAE,KAAK,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA8C7G,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAgXzE,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,GAAG;YAUG,WAAW;YAgBX,uBAAuB;CAgCtC"}
|