@kadi.build/core 0.0.1-alpha.0 → 0.0.1-alpha.10
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/README.md +1387 -214
- package/dist/abilities/AbilityCache.d.ts +242 -0
- package/dist/abilities/AbilityCache.d.ts.map +1 -0
- package/dist/abilities/AbilityCache.js +285 -0
- package/dist/abilities/AbilityCache.js.map +1 -0
- package/dist/abilities/AbilityContext.d.ts +215 -0
- package/dist/abilities/AbilityContext.d.ts.map +1 -0
- package/dist/abilities/AbilityContext.js +36 -0
- package/dist/abilities/AbilityContext.js.map +1 -0
- package/dist/abilities/AbilityLoader.d.ts +177 -0
- package/dist/abilities/AbilityLoader.d.ts.map +1 -0
- package/dist/abilities/AbilityLoader.js +277 -0
- package/dist/abilities/AbilityLoader.js.map +1 -0
- package/dist/abilities/AbilityProxy.d.ts +463 -0
- package/dist/abilities/AbilityProxy.d.ts.map +1 -0
- package/dist/abilities/AbilityProxy.js +511 -0
- package/dist/abilities/AbilityProxy.js.map +1 -0
- package/dist/abilities/AbilityValidator.d.ts +172 -0
- package/dist/abilities/AbilityValidator.d.ts.map +1 -0
- package/dist/abilities/AbilityValidator.js +253 -0
- package/dist/abilities/AbilityValidator.js.map +1 -0
- package/dist/abilities/index.d.ts +26 -0
- package/dist/abilities/index.d.ts.map +1 -0
- package/dist/abilities/index.js +23 -0
- package/dist/abilities/index.js.map +1 -0
- package/dist/abilities/types.d.ts +156 -0
- package/dist/abilities/types.d.ts.map +1 -0
- package/dist/abilities/types.js +10 -0
- package/dist/abilities/types.js.map +1 -0
- package/dist/api/index.d.ts +92 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +124 -0
- package/dist/api/index.js.map +1 -0
- package/dist/broker/BrokerConnection.d.ts +253 -0
- package/dist/broker/BrokerConnection.d.ts.map +1 -0
- package/dist/broker/BrokerConnection.js +434 -0
- package/dist/broker/BrokerConnection.js.map +1 -0
- package/dist/broker/BrokerConnectionManager.d.ts +216 -0
- package/dist/broker/BrokerConnectionManager.d.ts.map +1 -0
- package/dist/broker/BrokerConnectionManager.js +305 -0
- package/dist/broker/BrokerConnectionManager.js.map +1 -0
- package/dist/broker/BrokerProtocol.d.ts +280 -0
- package/dist/broker/BrokerProtocol.d.ts.map +1 -0
- package/dist/broker/BrokerProtocol.js +466 -0
- package/dist/broker/BrokerProtocol.js.map +1 -0
- package/dist/broker/index.d.ts +9 -0
- package/dist/broker/index.d.ts.map +1 -0
- package/dist/broker/index.js +9 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/client/KadiClient.d.ts +270 -0
- package/dist/client/KadiClient.d.ts.map +1 -0
- package/dist/client/KadiClient.js +492 -0
- package/dist/client/KadiClient.js.map +1 -0
- package/dist/client/index.d.ts +7 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +7 -0
- package/dist/client/index.js.map +1 -0
- package/dist/config/ConfigLoader.d.ts +138 -0
- package/dist/config/ConfigLoader.d.ts.map +1 -0
- package/dist/config/ConfigLoader.js +226 -0
- package/dist/config/ConfigLoader.js.map +1 -0
- package/dist/config/ConfigResolver.d.ts +135 -0
- package/dist/config/ConfigResolver.d.ts.map +1 -0
- package/dist/config/ConfigResolver.js +282 -0
- package/dist/config/ConfigResolver.js.map +1 -0
- package/dist/config/index.d.ts +8 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +8 -0
- package/dist/config/index.js.map +1 -0
- package/dist/errors/index.d.ts +9 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +8 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/events/EventHub.d.ts +172 -0
- package/dist/events/EventHub.d.ts.map +1 -0
- package/dist/events/EventHub.js +333 -0
- package/dist/events/EventHub.js.map +1 -0
- package/dist/events/index.d.ts +7 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +7 -0
- package/dist/events/index.js.map +1 -0
- package/dist/index.d.ts +49 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +63 -0
- package/dist/index.js.map +1 -0
- package/dist/messages/index.d.ts +33 -0
- package/dist/messages/index.d.ts.map +1 -0
- package/dist/messages/index.js +33 -0
- package/dist/messages/index.js.map +1 -0
- package/dist/schemas/index.d.ts +19 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +25 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/kadi-extensions.d.ts +231 -0
- package/dist/schemas/kadi-extensions.d.ts.map +1 -0
- package/dist/schemas/kadi-extensions.js +14 -0
- package/dist/schemas/kadi-extensions.js.map +1 -0
- package/dist/schemas/mcp/schema.d.ts +1399 -0
- package/dist/schemas/mcp/schema.d.ts.map +1 -0
- package/dist/schemas/mcp/schema.js +53 -0
- package/dist/schemas/mcp/schema.js.map +1 -0
- package/dist/schemas/mcp/version.d.ts +37 -0
- package/dist/schemas/mcp/version.d.ts.map +1 -0
- package/dist/schemas/mcp/version.js +39 -0
- package/dist/schemas/mcp/version.js.map +1 -0
- package/dist/schemas/schema-builders.d.ts +178 -0
- package/dist/schemas/schema-builders.d.ts.map +1 -0
- package/dist/schemas/schema-builders.js +258 -0
- package/dist/schemas/schema-builders.js.map +1 -0
- package/dist/tools/ToolRegistry.d.ts +256 -0
- package/dist/tools/ToolRegistry.d.ts.map +1 -0
- package/dist/tools/ToolRegistry.js +340 -0
- package/dist/tools/ToolRegistry.js.map +1 -0
- package/dist/tools/index.d.ts +7 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +7 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/transports/BrokerTransport.d.ts +151 -0
- package/dist/transports/BrokerTransport.d.ts.map +1 -0
- package/dist/transports/BrokerTransport.js +261 -0
- package/dist/transports/BrokerTransport.js.map +1 -0
- package/dist/transports/NativeTransport.d.ts +149 -0
- package/dist/transports/NativeTransport.d.ts.map +1 -0
- package/dist/transports/NativeTransport.js +302 -0
- package/dist/transports/NativeTransport.js.map +1 -0
- package/dist/transports/StdioTransport.d.ts +172 -0
- package/dist/transports/StdioTransport.d.ts.map +1 -0
- package/dist/transports/StdioTransport.js +410 -0
- package/dist/transports/StdioTransport.js.map +1 -0
- package/dist/transports/index.d.ts +10 -0
- package/dist/transports/index.d.ts.map +1 -0
- package/dist/transports/index.js +9 -0
- package/dist/transports/index.js.map +1 -0
- package/dist/types/broker.d.ts +301 -0
- package/dist/types/broker.d.ts.map +1 -0
- package/dist/types/broker.js +46 -0
- package/dist/types/broker.js.map +1 -0
- package/dist/types/config.d.ts +325 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +17 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/errors.d.ts +178 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +165 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/events.d.ts +210 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +8 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/index.d.ts +32 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +21 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/protocol.d.ts +48 -0
- package/dist/types/protocol.d.ts.map +1 -0
- package/dist/types/protocol.js +11 -0
- package/dist/types/protocol.js.map +1 -0
- package/dist/types/tools.d.ts +67 -0
- package/dist/types/tools.d.ts.map +1 -0
- package/dist/types/tools.js +16 -0
- package/dist/types/tools.js.map +1 -0
- package/dist/types/transport.d.ts +250 -0
- package/dist/types/transport.d.ts.map +1 -0
- package/dist/types/transport.js +18 -0
- package/dist/types/transport.js.map +1 -0
- package/dist/validation/SchemaValidator.d.ts +208 -0
- package/dist/validation/SchemaValidator.d.ts.map +1 -0
- package/dist/validation/SchemaValidator.js +411 -0
- package/dist/validation/SchemaValidator.js.map +1 -0
- package/dist/validation/index.d.ts +11 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +10 -0
- package/dist/validation/index.js.map +1 -0
- package/package.json +69 -5
- package/.prettierrc +0 -6
- package/agent.json +0 -18
- package/broker.js +0 -214
- package/index.js +0 -370
- package/ipc.js +0 -220
- package/ipcInterfaces/pythonAbilityIPC.py +0 -177
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ability Loader
|
|
3
|
+
*
|
|
4
|
+
* Orchestrates ability loading with excellent developer experience:
|
|
5
|
+
* - Smart transport inference (auto-detect or explicit)
|
|
6
|
+
* - Intelligent caching (composite keys)
|
|
7
|
+
* - Runtime validation (catch issues early)
|
|
8
|
+
* - Helpful error messages (actionable suggestions)
|
|
9
|
+
*
|
|
10
|
+
* @module abilities/AbilityLoader
|
|
11
|
+
*/
|
|
12
|
+
import { KadiError, ErrorCode } from '../types/index.js';
|
|
13
|
+
import { BrokerTransport } from '../transports/BrokerTransport.js';
|
|
14
|
+
import { AbilityProxy } from './AbilityProxy.js';
|
|
15
|
+
import { AbilityCache } from './AbilityCache.js';
|
|
16
|
+
import { AbilityValidator } from './AbilityValidator.js';
|
|
17
|
+
/**
|
|
18
|
+
* Ability Loader
|
|
19
|
+
*
|
|
20
|
+
* Orchestrates the complete ability loading process:
|
|
21
|
+
* - Transport inference (smart auto-detection)
|
|
22
|
+
* - Caching (avoid duplicate loads)
|
|
23
|
+
* - Transport creation (factory pattern)
|
|
24
|
+
* - Validation (runtime checks)
|
|
25
|
+
* - Error handling (helpful messages)
|
|
26
|
+
*
|
|
27
|
+
* Single responsibility: Load abilities, nothing else.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const loader = new AbilityLoader();
|
|
32
|
+
*
|
|
33
|
+
* // Auto-detect (recommended)
|
|
34
|
+
* const calc = await loader.load('calculator', {}, brokerClient);
|
|
35
|
+
*
|
|
36
|
+
* // Explicit transport
|
|
37
|
+
* const remote = await loader.load('service', {
|
|
38
|
+
* transport: 'broker',
|
|
39
|
+
* networks: ['global']
|
|
40
|
+
* }, brokerClient);
|
|
41
|
+
*
|
|
42
|
+
* // With validation
|
|
43
|
+
* const typed = await loader.load<CalcAPI>('calc', {
|
|
44
|
+
* validate: true
|
|
45
|
+
* }, brokerClient);
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export class AbilityLoader {
|
|
49
|
+
/**
|
|
50
|
+
* Ability cache with composite key strategy
|
|
51
|
+
*
|
|
52
|
+
* Handles complex scenarios:
|
|
53
|
+
* - Same name, different transports
|
|
54
|
+
* - Same name, different versions
|
|
55
|
+
* - Same name, different brokers
|
|
56
|
+
*/
|
|
57
|
+
cache = new AbilityCache();
|
|
58
|
+
/**
|
|
59
|
+
* Load an ability with explicit transport
|
|
60
|
+
*
|
|
61
|
+
* **Features:**
|
|
62
|
+
* - Explicit transport (no magic)
|
|
63
|
+
* - Smart caching (composite keys)
|
|
64
|
+
* - Runtime validation (optional)
|
|
65
|
+
* - Dynamic method access
|
|
66
|
+
*
|
|
67
|
+
* @param name - Ability name
|
|
68
|
+
* @param transport - Transport type (native, stdio, or broker)
|
|
69
|
+
* @param options - Load options (transport-specific)
|
|
70
|
+
* @param brokerClient - Broker client interface
|
|
71
|
+
* @returns Loaded ability with dynamic method access
|
|
72
|
+
*
|
|
73
|
+
* @throws {KadiError} If loading fails
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* // Broker transport
|
|
78
|
+
* const remote = await loader.load('service', 'broker', {
|
|
79
|
+
* networks: ['global']
|
|
80
|
+
* }, brokerClient);
|
|
81
|
+
*
|
|
82
|
+
* // With runtime validation
|
|
83
|
+
* const calc = await loader.load('calc', 'broker', {
|
|
84
|
+
* validate: true
|
|
85
|
+
* }, brokerClient);
|
|
86
|
+
*
|
|
87
|
+
* // Native transport
|
|
88
|
+
* const local = await loader.load('local-lib', 'native', {
|
|
89
|
+
* path: './abilities/local-lib'
|
|
90
|
+
* });
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
async load(name, transport, options = {}, brokerClient) {
|
|
94
|
+
// Step 1: Check cache first (avoid duplicate loading)
|
|
95
|
+
const cacheKey = {
|
|
96
|
+
name,
|
|
97
|
+
transport,
|
|
98
|
+
version: options.version,
|
|
99
|
+
broker: 'broker' in options ? options.broker : undefined
|
|
100
|
+
};
|
|
101
|
+
const cached = this.cache.get(cacheKey);
|
|
102
|
+
if (cached && cached.__isConnected()) {
|
|
103
|
+
// Cache hit! Return existing ability
|
|
104
|
+
return cached;
|
|
105
|
+
}
|
|
106
|
+
// Step 2: Create appropriate transport
|
|
107
|
+
const transportInstance = this.createTransport(name, transport, options, brokerClient);
|
|
108
|
+
// Step 3: Connect to ability
|
|
109
|
+
await transportInstance.connect();
|
|
110
|
+
// Step 4: Create proxy for natural method calling
|
|
111
|
+
const ability = AbilityProxy.create(name, transportInstance, transport);
|
|
112
|
+
// Step 5: Validate if requested
|
|
113
|
+
if (options.validate) {
|
|
114
|
+
AbilityValidator.validate(ability);
|
|
115
|
+
}
|
|
116
|
+
// Step 6: Cache for future use
|
|
117
|
+
this.cache.set(cacheKey, ability);
|
|
118
|
+
return ability;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Unload all abilities
|
|
122
|
+
*
|
|
123
|
+
* Disconnects all transports and clears cache.
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```typescript
|
|
127
|
+
* await loader.unloadAll();
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
130
|
+
async unloadAll() {
|
|
131
|
+
// Step 1: Get all cached abilities
|
|
132
|
+
const abilities = this.cache.getAll();
|
|
133
|
+
// Step 2: Disconnect all transports in parallel
|
|
134
|
+
const disconnectPromises = abilities.map(ability => ability.__disconnect().catch(() => {
|
|
135
|
+
// Ignore disconnect errors during cleanup
|
|
136
|
+
}));
|
|
137
|
+
await Promise.all(disconnectPromises);
|
|
138
|
+
// Step 3: Clear cache
|
|
139
|
+
this.cache.clear();
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Get all loaded abilities
|
|
143
|
+
*
|
|
144
|
+
* @returns Array of loaded abilities
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```typescript
|
|
148
|
+
* const abilities = loader.getAll();
|
|
149
|
+
* console.log(`Loaded ${abilities.length} abilities`);
|
|
150
|
+
* ```
|
|
151
|
+
*/
|
|
152
|
+
getAll() {
|
|
153
|
+
return this.cache.getAll();
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Get cache statistics
|
|
157
|
+
*
|
|
158
|
+
* Useful for debugging and monitoring.
|
|
159
|
+
*
|
|
160
|
+
* @returns Cache statistics
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```typescript
|
|
164
|
+
* const stats = loader.getStats();
|
|
165
|
+
* console.log(`Cached: ${stats.totalCached}, Connected: ${stats.connected}`);
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
getStats() {
|
|
169
|
+
return this.cache.getStats();
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Cleanup disconnected abilities
|
|
173
|
+
*
|
|
174
|
+
* Removes stale cache entries.
|
|
175
|
+
*
|
|
176
|
+
* @returns Number of stale entries removed
|
|
177
|
+
*
|
|
178
|
+
* @example
|
|
179
|
+
* ```typescript
|
|
180
|
+
* const removed = loader.cleanup();
|
|
181
|
+
* console.log(`Cleaned up ${removed} disconnected abilities`);
|
|
182
|
+
* ```
|
|
183
|
+
*/
|
|
184
|
+
cleanup() {
|
|
185
|
+
return this.cache.cleanup();
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Create appropriate transport instance
|
|
189
|
+
*
|
|
190
|
+
* Clean factory pattern - delegates to specialized creation methods.
|
|
191
|
+
* Each transport type has its own dedicated method with proper validation.
|
|
192
|
+
*
|
|
193
|
+
* @param name - Ability name
|
|
194
|
+
* @param transport - Transport type (from inference)
|
|
195
|
+
* @param options - Load options
|
|
196
|
+
* @param brokerClient - Broker client (for broker transport)
|
|
197
|
+
* @returns Transport instance ready to connect
|
|
198
|
+
*
|
|
199
|
+
* @throws {KadiError} If transport creation fails
|
|
200
|
+
*/
|
|
201
|
+
createTransport(name, transport, options, brokerClient) {
|
|
202
|
+
// Delegate to appropriate transport creation method
|
|
203
|
+
switch (transport) {
|
|
204
|
+
case 'broker':
|
|
205
|
+
return this.createBrokerTransport(name, options, brokerClient);
|
|
206
|
+
case 'native':
|
|
207
|
+
// TODO: Implement native transport
|
|
208
|
+
// Phase 2 implementation
|
|
209
|
+
throw new KadiError('Native transport not yet implemented', ErrorCode.NOT_IMPLEMENTED, 501, {
|
|
210
|
+
abilityName: name,
|
|
211
|
+
transport: 'native',
|
|
212
|
+
suggestion: 'Use broker transport for now: { transport: "broker" }',
|
|
213
|
+
roadmap: 'Native transport coming in Phase 2',
|
|
214
|
+
documentation: 'See docs/ability-loading-design.md for implementation guide'
|
|
215
|
+
});
|
|
216
|
+
case 'stdio':
|
|
217
|
+
// TODO: Implement stdio transport
|
|
218
|
+
// Phase 2 implementation
|
|
219
|
+
throw new KadiError('Stdio transport not yet implemented', ErrorCode.NOT_IMPLEMENTED, 501, {
|
|
220
|
+
abilityName: name,
|
|
221
|
+
transport: 'stdio',
|
|
222
|
+
suggestion: 'Use broker transport for now: { transport: "broker" }',
|
|
223
|
+
roadmap: 'Stdio transport coming in Phase 2',
|
|
224
|
+
documentation: 'See docs/ability-chaining-corrected.md for implementation guide'
|
|
225
|
+
});
|
|
226
|
+
default:
|
|
227
|
+
// TypeScript exhaustiveness check ensures this is unreachable
|
|
228
|
+
const never = transport;
|
|
229
|
+
throw new KadiError(`Unknown transport type: ${never}`, ErrorCode.INVALID_CONFIG, 400, { abilityName: name });
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Create broker transport with excellent error handling
|
|
234
|
+
*
|
|
235
|
+
* Validates broker connection and creates transport with proper configuration.
|
|
236
|
+
*
|
|
237
|
+
* @param name - Ability name
|
|
238
|
+
* @param options - Load options (broker-specific)
|
|
239
|
+
* @param brokerClient - Broker client interface
|
|
240
|
+
* @returns Broker transport instance
|
|
241
|
+
*
|
|
242
|
+
* @throws {KadiError} If broker client missing or invalid config
|
|
243
|
+
*/
|
|
244
|
+
createBrokerTransport(name, options, brokerClient) {
|
|
245
|
+
// Step 1: Validate broker client exists
|
|
246
|
+
if (!brokerClient) {
|
|
247
|
+
throw new KadiError('Cannot use broker transport - not connected to broker', ErrorCode.BROKER_NOT_CONNECTED, 503, {
|
|
248
|
+
abilityName: name,
|
|
249
|
+
transport: 'broker',
|
|
250
|
+
reason: 'Broker client not provided to AbilityLoader',
|
|
251
|
+
suggestion: 'Connect to broker first: await client.connect()',
|
|
252
|
+
alternatives: [
|
|
253
|
+
'Connect to broker before loading abilities',
|
|
254
|
+
'Use different transport like native or stdio'
|
|
255
|
+
],
|
|
256
|
+
hint: 'Broker transport requires active broker connection'
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
// Step 2: Extract broker-specific options (type-safe!)
|
|
260
|
+
const brokerOptions = options;
|
|
261
|
+
// Step 3: Determine networks to search
|
|
262
|
+
// Priority: explicit options > client networks
|
|
263
|
+
const networks = brokerOptions.networks ?? brokerClient.networks;
|
|
264
|
+
// Step 4: Determine which broker to use
|
|
265
|
+
// Priority: explicit broker > client default
|
|
266
|
+
const broker = brokerOptions.broker ?? brokerClient.getBrokerManager().getDefaultBrokerName() ?? undefined;
|
|
267
|
+
// Step 5: Create transport with validated config
|
|
268
|
+
return new BrokerTransport({
|
|
269
|
+
abilityName: name,
|
|
270
|
+
brokerUrl: '', // Not needed - using existing connection
|
|
271
|
+
brokerName: broker,
|
|
272
|
+
networks,
|
|
273
|
+
timeout: options.timeout
|
|
274
|
+
}, brokerClient);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
//# sourceMappingURL=AbilityLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbilityLoader.js","sourceRoot":"","sources":["../../src/abilities/AbilityLoader.ts"],"names":[],"mappings":"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"}
|