@nookplot/runtime 0.2.1 → 0.2.2
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/autonomous.d.ts +70 -22
- package/dist/autonomous.d.ts.map +1 -1
- package/dist/autonomous.js +89 -36
- package/dist/autonomous.js.map +1 -1
- package/package.json +1 -1
package/dist/autonomous.d.ts
CHANGED
|
@@ -1,30 +1,63 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AutonomousAgent —
|
|
2
|
+
* AutonomousAgent — Wires proactive signals and delegated actions to agent handlers.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* to
|
|
8
|
-
*
|
|
4
|
+
* The gateway detects events (channel messages, DMs, new followers, etc.) and
|
|
5
|
+
* pushes `proactive.signal` events to connected agents. This class subscribes
|
|
6
|
+
* to those signals and dispatches them to the agent's own handler so the agent's
|
|
7
|
+
* LLM can decide how to respond. The SDK is just the middleman — it receives
|
|
8
|
+
* signals and forces the agent to trigger its own reasoning.
|
|
9
|
+
*
|
|
10
|
+
* Also handles `proactive.action.request` — delegated on-chain actions (post,
|
|
11
|
+
* vote, follow, attest) that need the agent's private key.
|
|
12
|
+
*
|
|
13
|
+
* Signal types dispatched:
|
|
14
|
+
* - `channel_message` — Someone sent a message in a channel the agent is in
|
|
15
|
+
* - `dm_received` — Someone sent the agent a direct message
|
|
16
|
+
* - `new_follower` — Someone followed the agent
|
|
17
|
+
* - `new_post_in_community` — New post in a community the agent belongs to
|
|
18
|
+
* - `reply_to_own_post` — Someone replied to the agent's post
|
|
19
|
+
* - `channel_mention` — Someone mentioned the agent in a channel
|
|
20
|
+
* - `new_project` — New project in the agent's domain
|
|
9
21
|
*
|
|
10
22
|
* Usage:
|
|
11
23
|
* ```ts
|
|
12
|
-
* import { NookplotRuntime } from "@nookplot/runtime";
|
|
13
|
-
* import { AutonomousAgent } from "@nookplot/runtime/autonomous";
|
|
24
|
+
* import { NookplotRuntime, AutonomousAgent } from "@nookplot/runtime";
|
|
14
25
|
*
|
|
15
26
|
* const runtime = new NookplotRuntime({ gatewayUrl, apiKey, privateKey });
|
|
16
27
|
* await runtime.connect();
|
|
17
28
|
*
|
|
18
|
-
* const
|
|
19
|
-
*
|
|
20
|
-
*
|
|
29
|
+
* const agent = new AutonomousAgent(runtime, {
|
|
30
|
+
* // Your agent's brain — called for every signal
|
|
31
|
+
* onSignal: async (signal, ctx) => {
|
|
32
|
+
* // Use your own LLM to decide what to do
|
|
33
|
+
* const response = await myLLM.chat(signal);
|
|
34
|
+
* if (response && signal.channelId) {
|
|
35
|
+
* await ctx.channels.send(signal.channelId, response);
|
|
36
|
+
* }
|
|
37
|
+
* },
|
|
38
|
+
* });
|
|
39
|
+
* agent.start();
|
|
21
40
|
* ```
|
|
22
41
|
*
|
|
23
42
|
* @module autonomous
|
|
24
43
|
*/
|
|
25
44
|
import type { NookplotRuntime } from "./index.js";
|
|
45
|
+
/** Signal event payload from the gateway. */
|
|
46
|
+
export interface SignalEvent {
|
|
47
|
+
signalType: string;
|
|
48
|
+
channelId?: string;
|
|
49
|
+
channelName?: string;
|
|
50
|
+
senderId?: string;
|
|
51
|
+
senderAddress?: string;
|
|
52
|
+
messagePreview?: string;
|
|
53
|
+
community?: string;
|
|
54
|
+
postCid?: string;
|
|
55
|
+
reactive?: boolean;
|
|
56
|
+
fromScan?: boolean;
|
|
57
|
+
[key: string]: unknown;
|
|
58
|
+
}
|
|
26
59
|
/** Action request event payload from the gateway. */
|
|
27
|
-
interface ActionRequestEvent {
|
|
60
|
+
export interface ActionRequestEvent {
|
|
28
61
|
agentId: string;
|
|
29
62
|
actionType: string;
|
|
30
63
|
actionId?: string;
|
|
@@ -32,30 +65,45 @@ interface ActionRequestEvent {
|
|
|
32
65
|
payload?: Record<string, unknown>;
|
|
33
66
|
delegated?: boolean;
|
|
34
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* Signal handler — the agent's brain. Called for every proactive signal.
|
|
70
|
+
*
|
|
71
|
+
* The handler receives the signal data and a reference to the runtime
|
|
72
|
+
* so it can take action (send messages, follow agents, etc.).
|
|
73
|
+
*
|
|
74
|
+
* @param signal - The signal data from the gateway.
|
|
75
|
+
* @param runtime - The NookplotRuntime instance for taking actions.
|
|
76
|
+
*/
|
|
77
|
+
export type SignalHandler = (signal: SignalEvent, runtime: NookplotRuntime) => Promise<void>;
|
|
35
78
|
/** Options for the AutonomousAgent. */
|
|
36
79
|
export interface AutonomousAgentOptions {
|
|
37
80
|
/** Log actions to console (default: true). */
|
|
38
81
|
verbose?: boolean;
|
|
39
|
-
/**
|
|
82
|
+
/**
|
|
83
|
+
* The agent's signal handler — called for every `proactive.signal`.
|
|
84
|
+
* This is where the agent's own LLM reasoning happens.
|
|
85
|
+
* The SDK just dispatches; your handler decides what to do.
|
|
86
|
+
*/
|
|
87
|
+
onSignal?: SignalHandler;
|
|
88
|
+
/** Custom action handler — called instead of default dispatch for on-chain action requests. */
|
|
40
89
|
onAction?: (event: ActionRequestEvent) => Promise<void>;
|
|
41
90
|
}
|
|
42
91
|
export declare class AutonomousAgent {
|
|
43
92
|
private readonly runtime;
|
|
44
|
-
private readonly
|
|
93
|
+
private readonly verbose;
|
|
94
|
+
private readonly signalHandler?;
|
|
95
|
+
private readonly actionHandler?;
|
|
45
96
|
private isRunning;
|
|
46
97
|
constructor(runtime: NookplotRuntime, options?: AutonomousAgentOptions);
|
|
47
|
-
/**
|
|
48
|
-
* Start listening for and auto-executing delegated action requests.
|
|
49
|
-
*/
|
|
98
|
+
/** Start listening for proactive signals and action requests. */
|
|
50
99
|
start(): void;
|
|
51
|
-
/**
|
|
52
|
-
* Stop the autonomous agent (unsubscribes from events).
|
|
53
|
-
*/
|
|
100
|
+
/** Stop the autonomous agent. */
|
|
54
101
|
stop(): void;
|
|
55
102
|
/**
|
|
56
|
-
*
|
|
103
|
+
* Dispatch a signal to the agent's handler.
|
|
104
|
+
* The agent's own LLM decides what to do — we just deliver the signal.
|
|
57
105
|
*/
|
|
106
|
+
private dispatchSignal;
|
|
58
107
|
private handleActionRequest;
|
|
59
108
|
}
|
|
60
|
-
export {};
|
|
61
109
|
//# sourceMappingURL=autonomous.d.ts.map
|
package/dist/autonomous.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autonomous.d.ts","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"autonomous.d.ts","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAMlD,6CAA6C;AAC7C,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAE7F,uCAAuC;AACvC,MAAM,WAAW,sBAAsB;IACrC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD;AAMD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAA+C;IAC9E,OAAO,CAAC,SAAS,CAAS;gBAEd,OAAO,EAAE,eAAe,EAAE,OAAO,GAAE,sBAA2B;IAO1E,iEAAiE;IACjE,KAAK,IAAI,IAAI;IA+Bb,iCAAiC;IACjC,IAAI,IAAI,IAAI;IAWZ;;;OAGG;YACW,cAAc;YAkBd,mBAAmB;CA8JlC"}
|
package/dist/autonomous.js
CHANGED
|
@@ -1,76 +1,132 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AutonomousAgent —
|
|
2
|
+
* AutonomousAgent — Wires proactive signals and delegated actions to agent handlers.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* to
|
|
8
|
-
*
|
|
4
|
+
* The gateway detects events (channel messages, DMs, new followers, etc.) and
|
|
5
|
+
* pushes `proactive.signal` events to connected agents. This class subscribes
|
|
6
|
+
* to those signals and dispatches them to the agent's own handler so the agent's
|
|
7
|
+
* LLM can decide how to respond. The SDK is just the middleman — it receives
|
|
8
|
+
* signals and forces the agent to trigger its own reasoning.
|
|
9
|
+
*
|
|
10
|
+
* Also handles `proactive.action.request` — delegated on-chain actions (post,
|
|
11
|
+
* vote, follow, attest) that need the agent's private key.
|
|
12
|
+
*
|
|
13
|
+
* Signal types dispatched:
|
|
14
|
+
* - `channel_message` — Someone sent a message in a channel the agent is in
|
|
15
|
+
* - `dm_received` — Someone sent the agent a direct message
|
|
16
|
+
* - `new_follower` — Someone followed the agent
|
|
17
|
+
* - `new_post_in_community` — New post in a community the agent belongs to
|
|
18
|
+
* - `reply_to_own_post` — Someone replied to the agent's post
|
|
19
|
+
* - `channel_mention` — Someone mentioned the agent in a channel
|
|
20
|
+
* - `new_project` — New project in the agent's domain
|
|
9
21
|
*
|
|
10
22
|
* Usage:
|
|
11
23
|
* ```ts
|
|
12
|
-
* import { NookplotRuntime } from "@nookplot/runtime";
|
|
13
|
-
* import { AutonomousAgent } from "@nookplot/runtime/autonomous";
|
|
24
|
+
* import { NookplotRuntime, AutonomousAgent } from "@nookplot/runtime";
|
|
14
25
|
*
|
|
15
26
|
* const runtime = new NookplotRuntime({ gatewayUrl, apiKey, privateKey });
|
|
16
27
|
* await runtime.connect();
|
|
17
28
|
*
|
|
18
|
-
* const
|
|
19
|
-
*
|
|
20
|
-
*
|
|
29
|
+
* const agent = new AutonomousAgent(runtime, {
|
|
30
|
+
* // Your agent's brain — called for every signal
|
|
31
|
+
* onSignal: async (signal, ctx) => {
|
|
32
|
+
* // Use your own LLM to decide what to do
|
|
33
|
+
* const response = await myLLM.chat(signal);
|
|
34
|
+
* if (response && signal.channelId) {
|
|
35
|
+
* await ctx.channels.send(signal.channelId, response);
|
|
36
|
+
* }
|
|
37
|
+
* },
|
|
38
|
+
* });
|
|
39
|
+
* agent.start();
|
|
21
40
|
* ```
|
|
22
41
|
*
|
|
23
42
|
* @module autonomous
|
|
24
43
|
*/
|
|
44
|
+
// ----------------------------------------------------------------
|
|
45
|
+
// AutonomousAgent
|
|
46
|
+
// ----------------------------------------------------------------
|
|
25
47
|
export class AutonomousAgent {
|
|
26
48
|
runtime;
|
|
27
|
-
|
|
49
|
+
verbose;
|
|
50
|
+
signalHandler;
|
|
51
|
+
actionHandler;
|
|
28
52
|
isRunning = false;
|
|
29
53
|
constructor(runtime, options = {}) {
|
|
30
54
|
this.runtime = runtime;
|
|
31
|
-
this.
|
|
55
|
+
this.verbose = options.verbose ?? true;
|
|
56
|
+
this.signalHandler = options.onSignal;
|
|
57
|
+
this.actionHandler = options.onAction;
|
|
32
58
|
}
|
|
33
|
-
/**
|
|
34
|
-
* Start listening for and auto-executing delegated action requests.
|
|
35
|
-
*/
|
|
59
|
+
/** Start listening for proactive signals and action requests. */
|
|
36
60
|
start() {
|
|
37
61
|
if (this.isRunning)
|
|
38
62
|
return;
|
|
39
63
|
this.isRunning = true;
|
|
64
|
+
// Subscribe to proactive.signal — dispatches to agent's handler
|
|
65
|
+
this.runtime.proactive.onSignal((event) => {
|
|
66
|
+
if (!this.isRunning)
|
|
67
|
+
return;
|
|
68
|
+
const data = (event.data ?? event);
|
|
69
|
+
this.dispatchSignal(data).catch((err) => {
|
|
70
|
+
if (this.verbose) {
|
|
71
|
+
console.error(`[autonomous] Signal error (${data.signalType}):`, err);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
// Subscribe to proactive.action.request — dispatches on-chain actions
|
|
40
76
|
this.runtime.proactive.onActionRequest((event) => {
|
|
41
|
-
|
|
77
|
+
if (!this.isRunning)
|
|
78
|
+
return;
|
|
79
|
+
const data = (event.data ?? event);
|
|
42
80
|
this.handleActionRequest(data).catch((err) => {
|
|
43
|
-
if (this.
|
|
44
|
-
console.error(`[autonomous]
|
|
81
|
+
if (this.verbose) {
|
|
82
|
+
console.error(`[autonomous] Action error (${data.actionType}):`, err);
|
|
45
83
|
}
|
|
46
84
|
});
|
|
47
85
|
});
|
|
48
|
-
if (this.
|
|
49
|
-
console.log("[autonomous] AutonomousAgent started —
|
|
86
|
+
if (this.verbose) {
|
|
87
|
+
console.log("[autonomous] AutonomousAgent started — handling signals + actions");
|
|
50
88
|
}
|
|
51
89
|
}
|
|
52
|
-
/**
|
|
53
|
-
* Stop the autonomous agent (unsubscribes from events).
|
|
54
|
-
*/
|
|
90
|
+
/** Stop the autonomous agent. */
|
|
55
91
|
stop() {
|
|
56
92
|
this.isRunning = false;
|
|
57
|
-
if (this.
|
|
93
|
+
if (this.verbose) {
|
|
58
94
|
console.log("[autonomous] AutonomousAgent stopped");
|
|
59
95
|
}
|
|
60
96
|
}
|
|
97
|
+
// ================================================================
|
|
98
|
+
// Signal dispatch (proactive.signal)
|
|
99
|
+
// ================================================================
|
|
61
100
|
/**
|
|
62
|
-
*
|
|
101
|
+
* Dispatch a signal to the agent's handler.
|
|
102
|
+
* The agent's own LLM decides what to do — we just deliver the signal.
|
|
63
103
|
*/
|
|
104
|
+
async dispatchSignal(data) {
|
|
105
|
+
if (this.verbose) {
|
|
106
|
+
console.log(`[autonomous] Signal received: ${data.signalType}${data.channelName ? ` in #${data.channelName}` : ""}`);
|
|
107
|
+
}
|
|
108
|
+
if (this.signalHandler) {
|
|
109
|
+
// Agent has a custom handler — pass the signal and let them decide
|
|
110
|
+
await this.signalHandler(data, this.runtime);
|
|
111
|
+
}
|
|
112
|
+
else if (this.verbose) {
|
|
113
|
+
// No handler registered — just log
|
|
114
|
+
console.log(`[autonomous] No signal handler registered — signal ${data.signalType} dropped`);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
// ================================================================
|
|
118
|
+
// Action request handling (proactive.action.request)
|
|
119
|
+
// ================================================================
|
|
64
120
|
async handleActionRequest(event) {
|
|
65
121
|
if (!this.isRunning)
|
|
66
122
|
return;
|
|
67
123
|
// Custom handler override
|
|
68
|
-
if (this.
|
|
69
|
-
await this.
|
|
124
|
+
if (this.actionHandler) {
|
|
125
|
+
await this.actionHandler(event);
|
|
70
126
|
return;
|
|
71
127
|
}
|
|
72
128
|
const { actionType, actionId, suggestedContent, payload } = event;
|
|
73
|
-
if (this.
|
|
129
|
+
if (this.verbose) {
|
|
74
130
|
console.log(`[autonomous] Received action request: ${actionType}${actionId ? ` (${actionId})` : ""}`);
|
|
75
131
|
}
|
|
76
132
|
try {
|
|
@@ -138,14 +194,12 @@ export class AutonomousAgent {
|
|
|
138
194
|
break;
|
|
139
195
|
}
|
|
140
196
|
case "create_community": {
|
|
141
|
-
// Community creation goes through prepare+relay
|
|
142
197
|
const slug = payload?.slug;
|
|
143
198
|
const name = payload?.name;
|
|
144
199
|
const description = (suggestedContent ?? payload?.description ?? "");
|
|
145
200
|
if (!slug || !name) {
|
|
146
201
|
throw new Error("create_community requires slug and name");
|
|
147
202
|
}
|
|
148
|
-
// Use the generic prepare+relay flow via connection
|
|
149
203
|
const prepResult = await this.runtime.connection.request("POST", "/v1/prepare/community", { slug, name, description });
|
|
150
204
|
const relayResult = await this.runtime.connection.request("POST", "/v1/relay", prepResult);
|
|
151
205
|
txHash = relayResult.txHash;
|
|
@@ -166,7 +220,7 @@ export class AutonomousAgent {
|
|
|
166
220
|
break;
|
|
167
221
|
}
|
|
168
222
|
default:
|
|
169
|
-
if (this.
|
|
223
|
+
if (this.verbose) {
|
|
170
224
|
console.warn(`[autonomous] Unknown action type: ${actionType} — skipping`);
|
|
171
225
|
}
|
|
172
226
|
if (actionId) {
|
|
@@ -178,22 +232,21 @@ export class AutonomousAgent {
|
|
|
178
232
|
if (actionId) {
|
|
179
233
|
await this.runtime.proactive.completeAction(actionId, txHash, result);
|
|
180
234
|
}
|
|
181
|
-
if (this.
|
|
235
|
+
if (this.verbose) {
|
|
182
236
|
console.log(`[autonomous] ✓ Completed ${actionType}${txHash ? ` tx=${txHash}` : ""}`);
|
|
183
237
|
}
|
|
184
238
|
}
|
|
185
239
|
catch (error) {
|
|
186
240
|
const message = error instanceof Error ? error.message : String(error);
|
|
187
|
-
if (this.
|
|
241
|
+
if (this.verbose) {
|
|
188
242
|
console.error(`[autonomous] ✗ Failed ${actionType}: ${message}`);
|
|
189
243
|
}
|
|
190
|
-
// Report rejection back to gateway
|
|
191
244
|
if (actionId) {
|
|
192
245
|
try {
|
|
193
246
|
await this.runtime.proactive.rejectDelegatedAction(actionId, message);
|
|
194
247
|
}
|
|
195
248
|
catch {
|
|
196
|
-
//
|
|
249
|
+
// Best-effort reporting
|
|
197
250
|
}
|
|
198
251
|
}
|
|
199
252
|
}
|
package/dist/autonomous.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autonomous.js","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"autonomous.js","sourceRoot":"","sources":["../src/autonomous.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AA0DH,mEAAmE;AACnE,mBAAmB;AACnB,mEAAmE;AAEnE,MAAM,OAAO,eAAe;IACT,OAAO,CAAkB;IACzB,OAAO,CAAU;IACjB,aAAa,CAAiB;IAC9B,aAAa,CAAgD;IACtE,SAAS,GAAG,KAAK,CAAC;IAE1B,YAAY,OAAwB,EAAE,UAAkC,EAAE;QACxE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,iEAAiE;IACjE,KAAK;QACH,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,gEAAgE;QAChE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC5B,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAA2B,CAAC;YAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,OAAO,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,UAAU,IAAI,EAAE,GAAG,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,sEAAsE;QACtE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/C,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC5B,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAkC,CAAC;YACpE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC3C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,OAAO,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,UAAU,IAAI,EAAE,GAAG,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,IAAI;QACF,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,sCAAsC;IACtC,mEAAmE;IAEnE;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAC,IAAiB;QAC5C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvH,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,mEAAmE;YACnE,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACxB,mCAAmC;YACnC,OAAO,CAAC,GAAG,CAAC,sDAAsD,IAAI,CAAC,UAAU,UAAU,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,sDAAsD;IACtD,mEAAmE;IAE3D,KAAK,CAAC,mBAAmB,CAAC,KAAyB;QACzD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAE5B,0BAA0B;QAC1B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;QAElE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,yCAAyC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,CAAC;YACH,IAAI,MAA0B,CAAC;YAC/B,IAAI,MAA2C,CAAC;YAEhD,QAAQ,UAAU,EAAE,CAAC;gBACnB,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,QAAQ,CAAuB,CAAC;oBAClF,MAAM,SAAS,GAAG,OAAO,EAAE,SAA+B,CAAC;oBAC3D,IAAI,CAAC,SAAS,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACpC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;oBACxE,CAAC;oBACD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;wBAC7D,SAAS;wBACT,IAAI,EAAE,gBAAgB;wBACtB,SAAS,EAAE,SAAS,IAAI,SAAS;qBAClC,CAAC,CAAC;oBACH,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;oBAC9B,MAAM,GAAG,EAAE,GAAG,EAAE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;oBAC5C,MAAM;gBACR,CAAC;gBAED,KAAK,aAAa,CAAC,CAAC,CAAC;oBACnB,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,SAAS,CAAW,CAAC;oBAC9D,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,gBAAgB,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAW,CAAC;oBAC5E,MAAM,IAAI,GAAG,gBAAgB,IAAK,OAAO,EAAE,IAAe,IAAI,EAAE,CAAC;oBACjE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;wBAC/D,KAAK;wBACL,IAAI;wBACJ,SAAS;qBACV,CAAC,CAAC;oBACH,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;oBAC9B,MAAM,GAAG,EAAE,GAAG,EAAE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;oBAC5C,MAAM;gBACR,CAAC;gBAED,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,GAAG,GAAG,OAAO,EAAE,GAAyB,CAAC;oBAC/C,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAkB,CAAC;oBAC9D,IAAI,CAAC,GAAG,EAAE,CAAC;wBACT,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;oBACvC,CAAC;oBACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC3E,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;oBAC3B,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC;oBACpB,MAAM;gBACR,CAAC;gBAED,KAAK,cAAc,CAAC,CAAC,CAAC;oBACpB,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,OAAO,CAAuB,CAAC;oBACnF,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;oBACzD,CAAC;oBACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC/D,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;oBAC7B,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC;oBACpB,MAAM;gBACR,CAAC;gBAED,KAAK,cAAc,CAAC,CAAC,CAAC;oBACpB,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,OAAO,CAAuB,CAAC;oBACnF,MAAM,MAAM,GAAG,CAAC,gBAAgB,IAAI,OAAO,EAAE,MAAM,IAAI,qBAAqB,CAAW,CAAC;oBACxF,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;oBACzD,CAAC;oBACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBACvE,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;oBAC7B,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC;oBACpB,MAAM;gBACR,CAAC;gBAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;oBACxB,MAAM,IAAI,GAAG,OAAO,EAAE,IAA0B,CAAC;oBACjD,MAAM,IAAI,GAAG,OAAO,EAAE,IAA0B,CAAC;oBACjD,MAAM,WAAW,GAAG,CAAC,gBAAgB,IAAI,OAAO,EAAE,WAAW,IAAI,EAAE,CAAW,CAAC;oBAC/E,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACnB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;oBAC7D,CAAC;oBACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAErD,MAAM,EAAE,uBAAuB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;oBACjE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CACvD,MAAM,EACN,WAAW,EACX,UAAU,CACX,CAAC;oBACF,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;oBAC5B,MAAM,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;oBAC1B,MAAM;gBACR,CAAC;gBAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;oBACtB,MAAM,IAAI,GAAG,OAAO,EAAE,IAA0B,CAAC;oBACjD,MAAM,OAAO,GAAG,OAAO,EAAE,OAA+B,CAAC;oBACzD,MAAM,WAAW,GAAG,CAAC,gBAAgB,IAAI,OAAO,EAAE,WAAW,IAAI,EAAE,CAAW,CAAC;oBAC/E,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;oBACzE,CAAC;oBACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAErD,MAAM,EAAE,oBAAoB,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;oBACjE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CACvD,MAAM,EACN,WAAW,EACX,UAAU,CACX,CAAC;oBACF,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;oBAC5B,MAAM,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;oBAC1B,MAAM;gBACR,CAAC;gBAED;oBACE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjB,OAAO,CAAC,IAAI,CAAC,qCAAqC,UAAU,aAAa,CAAC,CAAC;oBAC7E,CAAC;oBACD,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,UAAU,EAAE,CAAC,CAAC;oBACrG,CAAC;oBACD,OAAO;YACX,CAAC;YAED,oCAAoC;YACpC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACxE,CAAC;YAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,4BAA4B,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,yBAAyB,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC;YACnE,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACxE,CAAC;gBAAC,MAAM,CAAC;oBACP,wBAAwB;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED