tellrun 1.3.8 → 2.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/README.md +42 -27
- package/README.zh-CN.md +36 -21
- package/dist/agents/codex-input.js +19 -0
- package/dist/agents/codex-input.js.map +1 -0
- package/dist/agents/codex-interaction.js +34 -27
- package/dist/agents/codex-interaction.js.map +1 -1
- package/dist/agents/codex.js +270 -52
- package/dist/agents/codex.js.map +1 -1
- package/dist/core/cron.js +226 -0
- package/dist/core/cron.js.map +1 -0
- package/dist/core/menus.js +1 -2
- package/dist/core/menus.js.map +1 -1
- package/dist/core/relay.js +198 -52
- package/dist/core/relay.js.map +1 -1
- package/dist/im/telegram-files.js +53 -0
- package/dist/im/telegram-files.js.map +1 -0
- package/dist/im/telegram.js +45 -26
- package/dist/im/telegram.js.map +1 -1
- package/dist/main.js +7 -2
- package/dist/main.js.map +1 -1
- package/dist/storage/attachments.js +129 -0
- package/dist/storage/attachments.js.map +1 -0
- package/dist/storage/schema.js +66 -50
- package/dist/storage/schema.js.map +1 -1
- package/dist/storage/store.js +141 -57
- package/dist/storage/store.js.map +1 -1
- package/docs/architecture.md +48 -20
- package/docs/prd.md +32 -9
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,2BAA2B;AAC3B,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAS;IAChD,QAAQ;IACR,aAAa;IACb,SAAS;IACT,YAAY;CACb,CAAC,CAAC;AAEH,mBAAmB;AACnB,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvC,qBAAqB;AACrB,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;AAE1D,2BAA2B;AAC3B,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAElF,qCAAqC;AACrC,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC;IAChC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;IACZ,SAAS,EAAE,kBAAkB;IAC7B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAC9B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;CACvE,CAAC,CAAC;AAEH,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/store.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { chmodSync, mkdirSync, readFileSync } from "node:fs";
|
|
1
|
+
import { chmodSync, mkdirSync, readFileSync, realpathSync } from "node:fs";
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
3
|
import { appDirectory } from "../config.js";
|
|
4
|
+
import { createCrons } from "../core/cron.js";
|
|
4
5
|
import { createMenus } from "../core/menus.js";
|
|
5
6
|
import { writeJson } from "./json.js";
|
|
6
7
|
import { acquireLock } from "./lock.js";
|
|
@@ -32,7 +33,15 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
32
33
|
catch (error) {
|
|
33
34
|
if (!(error instanceof Error && "code" in error && error.code === "ENOENT"))
|
|
34
35
|
throw error;
|
|
35
|
-
state = {
|
|
36
|
+
state = {
|
|
37
|
+
channels: [],
|
|
38
|
+
inboundUpdates: [],
|
|
39
|
+
nextCronId: 1,
|
|
40
|
+
crons: [],
|
|
41
|
+
tasks: [],
|
|
42
|
+
interactions: [],
|
|
43
|
+
outbox: [],
|
|
44
|
+
};
|
|
36
45
|
writeJson(path, state);
|
|
37
46
|
}
|
|
38
47
|
/** 交互撤回可能清空发送队列;实例内保持递增,避免迟到发送回执删除新消息。 */
|
|
@@ -90,12 +99,52 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
90
99
|
...delivery,
|
|
91
100
|
...(delivery.permissionMenuId ||
|
|
92
101
|
delivery.modelMenuId ||
|
|
102
|
+
delivery.sessions?.length ||
|
|
93
103
|
(delivery.interactionId && !delivery.messageId)
|
|
94
104
|
? { promptEnd: index === parts.length - 1 }
|
|
95
105
|
: {}),
|
|
96
106
|
});
|
|
97
107
|
}
|
|
98
108
|
}
|
|
109
|
+
/** 手动和定时输入共用任务快照,始终只允许一个未结束的编码任务。 */
|
|
110
|
+
function createTask(channel, prompt, attachments = [], cron = null) {
|
|
111
|
+
return update(() => {
|
|
112
|
+
if (state.tasks.some((task) => activeTaskStatuses.has(task.status)))
|
|
113
|
+
throw new Error("A task is already running.");
|
|
114
|
+
const task = {
|
|
115
|
+
id: state.tasks.reduce((max, item) => Math.max(max, item.id), 0) + 1,
|
|
116
|
+
channelId: channel.id,
|
|
117
|
+
cron,
|
|
118
|
+
cwd: channel.cwd,
|
|
119
|
+
sessionId: channel.sessionId,
|
|
120
|
+
runId: null,
|
|
121
|
+
prompt,
|
|
122
|
+
attachments,
|
|
123
|
+
permissionMode: channel.permissionMode,
|
|
124
|
+
model: channel.model,
|
|
125
|
+
reasoningEffort: channel.reasoningEffort,
|
|
126
|
+
inputs: [],
|
|
127
|
+
status: "queued",
|
|
128
|
+
result: null,
|
|
129
|
+
};
|
|
130
|
+
state.tasks.push(task);
|
|
131
|
+
return task;
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
/** 定时执行固定创建时的选择,每次新建会话,不改变聊天当前会话。 */
|
|
135
|
+
const crons = createCrons({
|
|
136
|
+
read: () => state,
|
|
137
|
+
update,
|
|
138
|
+
enqueueReply,
|
|
139
|
+
createTask: (channel, cron, scheduledAt) => createTask({
|
|
140
|
+
...channel,
|
|
141
|
+
cwd: cron.cwd,
|
|
142
|
+
sessionId: null,
|
|
143
|
+
model: cron.model,
|
|
144
|
+
reasoningEffort: cron.reasoningEffort,
|
|
145
|
+
permissionMode: cron.permissionMode,
|
|
146
|
+
}, cron.prompt, [], { id: cron.id, scheduledAt }),
|
|
147
|
+
});
|
|
99
148
|
/** 菜单始终读取当前事务快照,避免捕获 update 替换前的状态。 */
|
|
100
149
|
const { closeMenu, ...menus } = createMenus({ read: () => state, update, enqueueReply });
|
|
101
150
|
/** 关闭请求或单个已答问题;撤回未发送提示,已发送消息保留正文并移除按钮。 */
|
|
@@ -127,7 +176,7 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
127
176
|
}
|
|
128
177
|
});
|
|
129
178
|
}
|
|
130
|
-
/**
|
|
179
|
+
/** 终态与最终回复一起保存;定时结果标注来源,迟到事件不能覆盖已完成结果。 */
|
|
131
180
|
function finishTask(id, result) {
|
|
132
181
|
if (!state.tasks.some((task) => task.id === id && activeTaskStatuses.has(task.status)))
|
|
133
182
|
return;
|
|
@@ -140,20 +189,22 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
140
189
|
closeInteraction(interaction.id, "Task ended. Request closed.");
|
|
141
190
|
if (result.status === "interrupted") {
|
|
142
191
|
const channel = state.channels.find((channel) => channel.id === task.channelId);
|
|
143
|
-
if (channel)
|
|
192
|
+
if (channel) {
|
|
144
193
|
channel.paused = true;
|
|
194
|
+
crons.resetCronPending(channel.id);
|
|
195
|
+
}
|
|
145
196
|
}
|
|
146
|
-
enqueueReply(task.channelId, result.status === "completed"
|
|
197
|
+
enqueueReply(task.channelId, `${task.cron ? `Cron #${task.cron.id}\n` : ""}${result.status === "completed"
|
|
147
198
|
? result.text
|
|
148
199
|
: `Task #${id} ${{
|
|
149
200
|
failed: "Failed",
|
|
150
201
|
cancelled: "Stopped",
|
|
151
202
|
interrupted: "Unconfirmed",
|
|
152
|
-
}[result.status]}\n${result.text}`);
|
|
203
|
+
}[result.status]}\n${result.text}`}`);
|
|
153
204
|
for (const [index, input] of task.inputs.entries()) {
|
|
154
|
-
if (
|
|
205
|
+
if (!["pending", "preparing", "sending"].includes(input.status))
|
|
155
206
|
continue;
|
|
156
|
-
enqueueReply(task.channelId, `Task #${id}, message ${index + 1}: ${input.status === "
|
|
207
|
+
enqueueReply(task.channelId, `Task #${id}, message ${index + 1}: ${input.status === "sending" ? "delivery unconfirmed" : "not sent"}. Task ended; not retried. Check the session before resending.`);
|
|
157
208
|
input.status = "failed";
|
|
158
209
|
}
|
|
159
210
|
});
|
|
@@ -162,7 +213,7 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
162
213
|
}
|
|
163
214
|
/** 命令与交互按钮共用停止逻辑;先使交互失效,再由核心层请求中断。 */
|
|
164
215
|
function cancelTask(id) {
|
|
165
|
-
if (state.tasks.find((task) => task.id === id)?.status
|
|
216
|
+
if (["queued", "preparing"].includes(state.tasks.find((task) => task.id === id)?.status ?? "")) {
|
|
166
217
|
finishTask(id, { status: "cancelled", text: "Cancelled before starting." });
|
|
167
218
|
}
|
|
168
219
|
else
|
|
@@ -182,7 +233,7 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
182
233
|
channel.chatId === message.channel.chatId);
|
|
183
234
|
if (existing &&
|
|
184
235
|
state.inboundUpdates.some((item) => item.channelId === existing.id && item.eventId === message.eventId))
|
|
185
|
-
return ["interaction", "permissions", "model"].includes(message.content.type)
|
|
236
|
+
return ["interaction", "permissions", "model", "session"].includes(message.content.type)
|
|
186
237
|
? "Already handled."
|
|
187
238
|
: undefined;
|
|
188
239
|
return update(() => {
|
|
@@ -191,7 +242,8 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
191
242
|
channel = {
|
|
192
243
|
...message.channel,
|
|
193
244
|
id: state.channels.reduce((max, item) => Math.max(max, item.id), 0) + 1,
|
|
194
|
-
|
|
245
|
+
/** 创建聊天时固定服务启动目录,后续命令直接使用已保存的路径。 */
|
|
246
|
+
cwd: realpathSync(process.cwd()),
|
|
195
247
|
sessionId: null,
|
|
196
248
|
paused: false,
|
|
197
249
|
permissionMode: null,
|
|
@@ -208,16 +260,16 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
208
260
|
eventId: message.eventId,
|
|
209
261
|
});
|
|
210
262
|
const reply = handle(channel);
|
|
211
|
-
if (!["interaction", "permissions", "model"].includes(message.content.type))
|
|
263
|
+
if (!["interaction", "permissions", "model", "session"].includes(message.content.type))
|
|
212
264
|
enqueueReply(channel.id, reply);
|
|
213
265
|
return reply;
|
|
214
266
|
});
|
|
215
267
|
},
|
|
216
268
|
/** 独立只读查询完成后保存回复;写入失败交给工作循环触发关停。 */
|
|
217
|
-
reply(channelId, text) {
|
|
269
|
+
reply(channelId, text, delivery = {}) {
|
|
218
270
|
update(() => {
|
|
219
271
|
if (state.channels.some((channel) => channel.id === channelId))
|
|
220
|
-
enqueueReply(channelId, text);
|
|
272
|
+
enqueueReply(channelId, text, delivery);
|
|
221
273
|
});
|
|
222
274
|
},
|
|
223
275
|
/** 成功拉取后才能回收已确认更新;空响应也说明服务端已无可重投记录。 */
|
|
@@ -234,7 +286,7 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
234
286
|
});
|
|
235
287
|
},
|
|
236
288
|
/** 新会话或目录变化只影响后续任务,已保存任务仍使用自己的快照。 */
|
|
237
|
-
setSession(channelId, cwd) {
|
|
289
|
+
setSession(channelId, cwd, sessionId, reply) {
|
|
238
290
|
update(() => {
|
|
239
291
|
const channel = state.channels.find((channel) => channel.id === channelId);
|
|
240
292
|
if (channel) {
|
|
@@ -245,17 +297,25 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
245
297
|
channel.model = null;
|
|
246
298
|
channel.reasoningEffort = null;
|
|
247
299
|
}
|
|
248
|
-
Object.assign(channel, { cwd, sessionId
|
|
300
|
+
Object.assign(channel, { cwd, sessionId });
|
|
301
|
+
/** 会话选择与成功回复一同落盘;暂停状态以接口返回时的值为准。 */
|
|
302
|
+
if (reply)
|
|
303
|
+
enqueueReply(channelId, `${reply}${channel.paused ? "\nPaused. Send /resume to continue." : ""}`);
|
|
249
304
|
}
|
|
250
305
|
});
|
|
251
306
|
},
|
|
252
307
|
...menus,
|
|
308
|
+
...crons,
|
|
253
309
|
/** 暂停状态跨重启保留,恢复须由用户明确触发。 */
|
|
254
310
|
setPaused(channelId, paused) {
|
|
255
311
|
update(() => {
|
|
256
312
|
const channel = state.channels.find((channel) => channel.id === channelId);
|
|
257
|
-
if (channel)
|
|
313
|
+
if (channel) {
|
|
314
|
+
const wasPaused = channel.paused;
|
|
258
315
|
channel.paused = paused;
|
|
316
|
+
if (paused || wasPaused)
|
|
317
|
+
crons.resetCronPending(channelId);
|
|
318
|
+
}
|
|
259
319
|
});
|
|
260
320
|
},
|
|
261
321
|
/** 返回快照,避免调用方直接修改内存中的持久状态。 */
|
|
@@ -290,44 +350,22 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
290
350
|
lastTask(channelId) {
|
|
291
351
|
return structuredClone(state.tasks.findLast((task) => task.channelId === channelId && !activeTaskStatuses.has(task.status)) ?? state.tasks.findLast((task) => task.channelId === channelId));
|
|
292
352
|
},
|
|
293
|
-
|
|
294
|
-
createTask(channel, prompt) {
|
|
295
|
-
return update(() => {
|
|
296
|
-
if (!channel.cwd)
|
|
297
|
-
throw new Error("Set a working directory first.");
|
|
298
|
-
if (state.tasks.some((task) => activeTaskStatuses.has(task.status)))
|
|
299
|
-
throw new Error("A task is already running.");
|
|
300
|
-
const task = {
|
|
301
|
-
id: state.tasks.reduce((max, item) => Math.max(max, item.id), 0) + 1,
|
|
302
|
-
channelId: channel.id,
|
|
303
|
-
cwd: channel.cwd,
|
|
304
|
-
sessionId: channel.sessionId,
|
|
305
|
-
runId: null,
|
|
306
|
-
prompt,
|
|
307
|
-
permissionMode: channel.permissionMode,
|
|
308
|
-
model: channel.model,
|
|
309
|
-
reasoningEffort: channel.reasoningEffort,
|
|
310
|
-
inputs: [],
|
|
311
|
-
status: "queued",
|
|
312
|
-
result: null,
|
|
313
|
-
};
|
|
314
|
-
state.tasks.push(task);
|
|
315
|
-
return task;
|
|
316
|
-
});
|
|
317
|
-
},
|
|
353
|
+
createTask,
|
|
318
354
|
/** 尚未派发时合并首条输入;执行中的补充输入与入站去重标识一起保存。 */
|
|
319
|
-
appendTaskInput(id, text) {
|
|
355
|
+
appendTaskInput(id, text, attachments = []) {
|
|
320
356
|
update(() => {
|
|
321
357
|
const task = state.tasks.find((task) => task.id === id);
|
|
322
|
-
if (!task || !["queued", "dispatching", "running"].includes(task.status))
|
|
358
|
+
if (!task || !["queued", "preparing", "dispatching", "running"].includes(task.status))
|
|
323
359
|
throw new Error("Task cannot accept more input.");
|
|
324
|
-
if (task.status === "queued")
|
|
360
|
+
if (task.status === "queued") {
|
|
325
361
|
task.prompt += `\n\n${text}`;
|
|
362
|
+
task.attachments.push(...attachments);
|
|
363
|
+
}
|
|
326
364
|
else
|
|
327
|
-
task.inputs.push({ text, status: "pending" });
|
|
365
|
+
task.inputs.push({ text, attachments, status: "pending" });
|
|
328
366
|
});
|
|
329
367
|
},
|
|
330
|
-
/**
|
|
368
|
+
/** 按接收顺序准备附件;下载阶段尚未提交给 Agent,可以在重启后继续。 */
|
|
331
369
|
claimTaskInput(id) {
|
|
332
370
|
const task = state.tasks.find((task) => task.id === id && task.status === "running");
|
|
333
371
|
const index = task?.inputs.findIndex((input) => input.status === "pending") ?? -1;
|
|
@@ -337,8 +375,21 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
337
375
|
const input = state.tasks.find((task) => task.id === id)?.inputs[index];
|
|
338
376
|
if (!input)
|
|
339
377
|
throw new Error("Input not found.");
|
|
378
|
+
input.status = "preparing";
|
|
379
|
+
return { index, text: input.text, attachments: input.attachments };
|
|
380
|
+
});
|
|
381
|
+
},
|
|
382
|
+
/** 附件准备完成后再次核实任务仍在执行,先保存 sending 再提交,避免误入其他轮次。 */
|
|
383
|
+
markTaskInputSending(id, index) {
|
|
384
|
+
const task = state.tasks.find((task) => task.id === id && task.status === "running");
|
|
385
|
+
if (task?.inputs[index]?.status !== "preparing")
|
|
386
|
+
return false;
|
|
387
|
+
return update(() => {
|
|
388
|
+
const input = state.tasks.find((task) => task.id === id)?.inputs[index];
|
|
389
|
+
if (!input)
|
|
390
|
+
return false;
|
|
340
391
|
input.status = "sending";
|
|
341
|
-
return
|
|
392
|
+
return true;
|
|
342
393
|
});
|
|
343
394
|
},
|
|
344
395
|
/** 成功补充不产生固定回执,失败提示和输入状态原子保存。 */
|
|
@@ -346,7 +397,7 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
346
397
|
update(() => {
|
|
347
398
|
const task = state.tasks.find((task) => task.id === id);
|
|
348
399
|
const input = task?.inputs[index];
|
|
349
|
-
if (!task || input
|
|
400
|
+
if (!task || !input || !["preparing", "sending"].includes(input.status))
|
|
350
401
|
return;
|
|
351
402
|
input.status = error === undefined ? "accepted" : "failed";
|
|
352
403
|
if (error !== undefined)
|
|
@@ -368,13 +419,29 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
368
419
|
return update(() => {
|
|
369
420
|
const claimed = {
|
|
370
421
|
...task,
|
|
371
|
-
status: task.status === "cancelling"
|
|
422
|
+
status: task.status === "cancelling"
|
|
423
|
+
? "cancelling"
|
|
424
|
+
: !task.runId && task.attachments.length
|
|
425
|
+
? "preparing"
|
|
426
|
+
: "dispatching",
|
|
372
427
|
};
|
|
373
428
|
state.tasks[index] = claimed;
|
|
374
429
|
return claimed;
|
|
375
430
|
});
|
|
376
431
|
},
|
|
377
|
-
/**
|
|
432
|
+
/** 下载完成后才进入可能派发的阶段;已停止的任务不能因下载迟到而启动。 */
|
|
433
|
+
markDispatching(id) {
|
|
434
|
+
if (!state.tasks.some((task) => task.id === id && task.status === "preparing"))
|
|
435
|
+
return false;
|
|
436
|
+
return update(() => {
|
|
437
|
+
const task = state.tasks.find((task) => task.id === id);
|
|
438
|
+
if (!task)
|
|
439
|
+
return false;
|
|
440
|
+
task.status = "dispatching";
|
|
441
|
+
return true;
|
|
442
|
+
});
|
|
443
|
+
},
|
|
444
|
+
/** 新建会话后立即保存关联;定时任务只更新执行快照,保留手动聊天的上下文。 */
|
|
378
445
|
recordSession(id, sessionId) {
|
|
379
446
|
update(() => {
|
|
380
447
|
const task = state.tasks.find((task) => task.id === id && activeTaskStatuses.has(task.status));
|
|
@@ -382,7 +449,7 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
382
449
|
return;
|
|
383
450
|
task.sessionId = sessionId;
|
|
384
451
|
const channel = state.channels.find((channel) => channel.id === task.channelId);
|
|
385
|
-
if (channel)
|
|
452
|
+
if (channel && !task.cron)
|
|
386
453
|
channel.sessionId = sessionId;
|
|
387
454
|
});
|
|
388
455
|
},
|
|
@@ -445,14 +512,16 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
445
512
|
interaction.status !== "pending" ||
|
|
446
513
|
(interaction.expiresAt !== null && interaction.expiresAt <= Date.now()))
|
|
447
514
|
return "Request closed. Check /status.";
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
515
|
+
/** 只有问题卡片提供停止操作,审批卡片仅接受审批选项。 */
|
|
516
|
+
if (interaction.kind === "question" &&
|
|
517
|
+
content.type === "interaction" &&
|
|
518
|
+
content.action === "stop") {
|
|
452
519
|
update(() => {
|
|
453
520
|
const channel = state.channels.find((channel) => channel.id === channelId);
|
|
454
|
-
if (channel)
|
|
521
|
+
if (channel) {
|
|
455
522
|
channel.paused = true;
|
|
523
|
+
crons.resetCronPending(channel.id);
|
|
524
|
+
}
|
|
456
525
|
cancelTask(task.id);
|
|
457
526
|
});
|
|
458
527
|
return "Stopping. Wait for the result.";
|
|
@@ -541,6 +610,21 @@ export function openStore(path = join(appDirectory, "state.json")) {
|
|
|
541
610
|
}
|
|
542
611
|
});
|
|
543
612
|
for (const task of state.tasks.filter((task) => activeTaskStatuses.has(task.status) && task.status !== "queued")) {
|
|
613
|
+
/** 下载阶段从未提交给 Codex;主输入和补充输入都可以安全重新准备。 */
|
|
614
|
+
if (task.status === "preparing" ||
|
|
615
|
+
task.inputs.some((input) => input.status === "preparing"))
|
|
616
|
+
update(() => {
|
|
617
|
+
const current = state.tasks.find((item) => item.id === task.id);
|
|
618
|
+
if (!current)
|
|
619
|
+
return;
|
|
620
|
+
if (current.status === "preparing")
|
|
621
|
+
current.status = "queued";
|
|
622
|
+
for (const input of current.inputs)
|
|
623
|
+
if (input.status === "preparing")
|
|
624
|
+
input.status = "pending";
|
|
625
|
+
});
|
|
626
|
+
if (task.status === "preparing")
|
|
627
|
+
continue;
|
|
544
628
|
if (task.sessionId && task.runId) {
|
|
545
629
|
for (const [index, input] of task.inputs.entries()) {
|
|
546
630
|
if (input.status !== "sending")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/storage/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAQ/C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAc,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1E,2CAA2C;AAC3C,MAAM,UAAU,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;IAC/D,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,YAAY;QAAE,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,mCAAmC;IACnC,IAAI,KAAmD,CAAC;IACxD,uCAAuC;IACvC,IAAI,UAA+C,CAAC;IAEpD,IAAI,CAAC;QACH,IAAI,KAAY,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC;gBACH,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClD,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;YACvF,CAAC;YACD,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;gBAAE,MAAM,KAAK,CAAC;YACzF,KAAK,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACtF,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACzB,CAAC;QACD,0CAA0C;QAC1C,IAAI,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5E,6CAA6C;QAC7C,SAAS,MAAM,CAAI,MAAe;YAChC,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YAChF,IAAI,QAAQ;gBAAE,OAAO,MAAM,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC;YACvB,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YAC/B,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;gBACxB,0CAA0C;gBAC1C,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAC5C,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACxB,IAAI,CAAC,EAAE,KAAK,UAAU,EAAE,aAAa;oBACrC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC,EAAE,CAAC,CAChE,CAAC;gBACF,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,KAAK,CAAC,QAAQ,CAAC,GAAG,CAChB,CAAC,OAAO,EAAE,EAAE,CACV,KAAK,CAAC,KAAK,CAAC,QAAQ,CAClB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAChF,EAAE,EAAE,CACR,CACF,CAAC;gBACF,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAC9B,CAAC,IAAI,EAAE,EAAE,CACP,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;oBACnC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnB,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC,CAC7D,CAAC;gBACF,IAAI,CAAC;oBACH,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACzB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,GAAG,KAAK,CAAC;oBACf,MAAM,MAAM,CAAC,MAAM,CACjB,IAAI,KAAK,CAAC,sDAAsD,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EACnF,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAC/B,CAAC;gBACJ,CAAC;gBACD,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,KAAK,GAAG,QAAQ,CAAC;gBACjB,MAAM,KAAK,CAAC;YACd,CAAC;oBAAS,CAAC;gBACT,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,SAAS,YAAY,CACnB,SAAiB,EACjB,IAAwB,EACxB,QAAQ,GAGJ,EAAE;YAEN,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO;YAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS;gBAC9B,CAAC,CAAC,CAAC,IAAI,CAAC;gBACR,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC5D,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC5C,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;oBAChB,EAAE,EAAE,EAAE,OAAO;oBACb,SAAS;oBACT,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;oBACzE,QAAQ,EAAE,CAAC;oBACX,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;oBACnB,GAAG,QAAQ;oBACX,GAAG,CAAC,QAAQ,CAAC,gBAAgB;wBAC7B,QAAQ,CAAC,WAAW;wBACpB,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;wBAC7C,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC3C,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;QAEzF,0CAA0C;QAC1C,SAAS,gBAAgB,CAAC,EAAU,EAAE,MAAc,EAAE,aAAsB;YAC1E,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACtE,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,QAAQ;gBAAE,OAAO;YAC5D,MAAM,CAAC,GAAG,EAAE;gBACV,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACtE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE,MAAM,CAAC,CAAC;gBACzE,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI;oBAAE,OAAO;gBAClC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;oBAChC,WAAW,CAAC,MAAM,GAAG,QAAQ,CAAC;oBAC9B,WAAW,CAAC,UAAU,GAAG,MAAM,CAAC;gBAClC,CAAC;gBACD,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAChC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,aAAa,KAAK,EAAE;oBAC1B,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,KAAK,aAAa,CAAC,CACzE,CAAC;gBACF,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;oBAC3C,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,aAAa,KAAK,aAAa;wBAAE,SAAS;oBACrF,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO,MAAM,EAAE,EAAE;wBAC3D,aAAa,EAAE,EAAE;wBACjB,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS;4BACrC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE;4BAC1C,CAAC,CAAC,EAAE,CAAC;qBACR,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,0CAA0C;QAC1C,SAAS,UAAU,CAAC,EAAU,EAAE,MAAmB;YACjD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpF,OAAO;YACT,MAAM,CAAC,GAAG,EAAE;gBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,IAAI;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBACpE,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC;oBAC/E,gBAAgB,CAAC,WAAW,CAAC,EAAE,EAAE,6BAA6B,CAAC,CAAC;gBAClE,IAAI,MAAM,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBACpC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;oBAChF,IAAI,OAAO;wBAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;gBACrC,CAAC;gBACD,YAAY,CACV,IAAI,CAAC,SAAS,EACd,MAAM,CAAC,MAAM,KAAK,WAAW;oBAC3B,CAAC,CAAC,MAAM,CAAC,IAAI;oBACb,CAAC,CAAC,SAAS,EAAE,IACT;wBACE,MAAM,EAAE,QAAQ;wBAChB,SAAS,EAAE,SAAS;wBACpB,WAAW,EAAE,aAAa;qBAC3B,CAAC,MAAM,CAAC,MAAM,CACjB,KAAK,MAAM,CAAC,IAAI,EAAE,CACvB,CAAC;gBACF,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;oBACnD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;wBAAE,SAAS;oBACvE,YAAY,CACV,IAAI,CAAC,SAAS,EACd,SAAS,EAAE,aAAa,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,sBAAsB,gEAAgE,CACvK,CAAC;oBACF,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;gBAC1B,CAAC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,EAAE;gBAAE,KAAK,GAAG,SAAS,CAAC;QAC9C,CAAC;QAED,sCAAsC;QACtC,SAAS,UAAU,CAAC,EAAU;YAC5B,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACpE,UAAU,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC,CAAC;YAC9E,CAAC;;gBACC,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAC3B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAChE,CAAC;oBACF,IAAI,IAAI;wBAAE,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;oBACrC,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC;wBAC/E,gBAAgB,CAAC,WAAW,CAAC,EAAE,EAAE,2BAA2B,CAAC,CAAC;gBAClE,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO;YACL,sCAAsC;YACtC,MAAM,CACJ,OAAwB,EACxB,MAAkE;gBAElE,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAClC,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ;oBAC7C,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,SAAS;oBAC/C,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM,CAC5C,CAAC;gBACF,IACE,QAAQ;oBACR,KAAK,CAAC,cAAc,CAAC,IAAI,CACvB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAC7E;oBAED,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;wBAC3E,CAAC,CAAC,kBAAkB;wBACpB,CAAC,CAAC,SAAS,CAAC;gBAChB,OAAO,MAAM,CAAC,GAAG,EAAE;oBACjB,IAAI,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE,EAAE,CAAC,CAAC;oBAC5E,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,GAAG;4BACR,GAAG,OAAO,CAAC,OAAO;4BAClB,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;4BACvE,GAAG,EAAE,IAAI;4BACT,SAAS,EAAE,IAAI;4BACf,MAAM,EAAE,KAAK;4BACb,cAAc,EAAE,IAAI;4BACpB,cAAc,EAAE,IAAI;4BACpB,KAAK,EAAE,IAAI;4BACX,eAAe,EAAE,IAAI;4BACrB,SAAS,EAAE,IAAI;yBAChB,CAAC;wBACF,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/B,CAAC;oBACD,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;oBACxC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;wBACxB,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,OAAO,EAAE,OAAO,CAAC,OAAO;qBACzB,CAAC,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC9B,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;wBACzE,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;oBAClC,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,CAAC;YACL,CAAC;YACD,oCAAoC;YACpC,KAAK,CAAC,SAAiB,EAAE,IAAY;gBACnC,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC;wBAC5D,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAClC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,uCAAuC;YACvC,cAAc,CAAC,SAAiB,EAAE,MAAc,EAAE,KAAc;gBAC9D,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;oBACnD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;oBAChF,OAAO,CACL,OAAO,EAAE,QAAQ,KAAK,UAAU;wBAChC,OAAO,CAAC,SAAS,KAAK,SAAS;wBAC/B,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,CAC7C,CAAC;gBACJ,CAAC,CAAC,CAAC;gBACH,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,cAAc,CAAC,MAAM;oBAChD,MAAM,CAAC,GAAG,EAAE;wBACV,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC;oBACjC,CAAC,CAAC,CAAC;YACP,CAAC;YACD,qCAAqC;YACrC,UAAU,CAAC,SAAiB,EAAE,GAAkB;gBAC9C,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;oBAC3E,IAAI,OAAO,EAAE,CAAC;wBACZ,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;wBACvC,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;wBAClC,IAAI,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;4BACxB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;4BAC9B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;4BACrB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;wBACjC,CAAC;wBACD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YACD,GAAG,KAAK;YACR,4BAA4B;YAC5B,SAAS,CAAC,SAAiB,EAAE,MAAe;gBAC1C,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;oBAC3E,IAAI,OAAO;wBAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,8BAA8B;YAC9B,UAAU;gBACR,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7E,OAAO,IAAI;oBACT,CAAC,CAAC,eAAe,CAAC;wBACd,GAAG,IAAI;wBACP,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,MAAM,CACrC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAC9D;qBACF,CAAC;oBACJ,CAAC,CAAC,SAAS,CAAC;YAChB,CAAC;YACD,2CAA2C;YAC3C,QAAQ,CAAC,EAAU,EAAE,IAAY;gBAC/B,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;oBACzE,KAAK,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YACjC,CAAC;YACD,oCAAoC;YACpC,YAAY,CAAC,SAAiB,EAAE,MAAc;gBAC5C,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE;oBAAE,OAAO;gBAChC,IACE,KAAK,CAAC,YAAY,CAAC,IAAI,CACrB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CACrF;oBAED,OAAO;gBACT,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAC3B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CACjE,CAAC;gBACF,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,SAAS,CAAC,CAAC;gBACjF,IACE,OAAO,EAAE,QAAQ,KAAK,UAAU;oBAChC,OAAO,CAAC,SAAS,KAAK,SAAS;oBAC/B,OAAO,CAAC,MAAM,KAAK,MAAM;oBAEzB,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAChD,CAAC;YACD,8BAA8B;YAC9B,QAAQ,CAAC,SAAiB;gBACxB,OAAO,eAAe,CACpB,KAAK,CAAC,KAAK,CAAC,QAAQ,CAClB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAC/E,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAClE,CAAC;YACJ,CAAC;YACD,mCAAmC;YACnC,UAAU,CAAC,OAAkC,EAAE,MAAc;gBAC3D,OAAO,MAAM,CAAC,GAAG,EAAE;oBACjB,IAAI,CAAC,OAAO,CAAC,GAAG;wBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;oBACpE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACjE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;oBAChD,MAAM,IAAI,GAA2B;wBACnC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;wBACpE,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,KAAK,EAAE,IAAI;wBACX,MAAM;wBACN,cAAc,EAAE,OAAO,CAAC,cAAc;wBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,eAAe,EAAE,OAAO,CAAC,eAAe;wBACxC,MAAM,EAAE,EAAE;wBACV,MAAM,EAAE,QAAQ;wBAChB,MAAM,EAAE,IAAI;qBACb,CAAC;oBACF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvB,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;YACL,CAAC;YACD,uCAAuC;YACvC,eAAe,CAAC,EAAU,EAAE,IAAY;gBACtC,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBACxD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;wBACtE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;oBACpD,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;wBAAE,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,EAAE,CAAC;;wBACtD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBACrD,CAAC,CAAC,CAAC;YACL,CAAC;YACD,8CAA8C;YAC9C,cAAc,CAAC,EAAU;gBACvB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;gBACrF,MAAM,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClF,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,CAAC;oBAAE,OAAO;gBAC/B,OAAO,MAAM,CAAC,GAAG,EAAE;oBACjB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;oBACxE,IAAI,CAAC,KAAK;wBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;oBAChD,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;oBACzB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;gBACrC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,iCAAiC;YACjC,eAAe,CAAC,EAAU,EAAE,KAAa,EAAE,KAAc;gBACvD,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClC,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,MAAM,KAAK,SAAS;wBAAE,OAAO;oBACjD,KAAK,CAAC,MAAM,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;oBAC3D,IAAI,KAAK,KAAK,SAAS;wBACrB,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;gBAChF,CAAC,CAAC,CAAC;YACL,CAAC;YACD,oCAAoC;YACpC,SAAS,CAAC,MAAkE;gBAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACnF,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAChC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,SAAS,CAAC,CAAC;gBACjF,IACE,CAAC,IAAI;oBACL,CAAC,OAAO;oBACR,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC/B,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;oBACpC,OAAO,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS;oBACtC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;oBAEhC,OAAO;gBACT,OAAO,MAAM,CAAC,GAAG,EAAE;oBACjB,MAAM,OAAO,GAAG;wBACd,GAAG,IAAI;wBACP,MAAM,EACJ,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAE,YAAsB,CAAC,CAAC,CAAE,aAAuB;qBACpF,CAAC;oBACF,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;oBAC7B,OAAO,OAAO,CAAC;gBACjB,CAAC,CAAC,CAAC;YACL,CAAC;YACD,+BAA+B;YAC/B,aAAa,CAAC,EAAU,EAAE,SAAiB;gBACzC,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAC3B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAChE,CAAC;oBACF,IAAI,CAAC,IAAI;wBAAE,OAAO;oBAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;oBAChF,IAAI,OAAO;wBAAE,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC7C,CAAC,CAAC,CAAC;YACL,CAAC;YACD,oCAAoC;YACpC,WAAW,CAAC,EAAU,EAAE,KAAa;gBACnC,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBACxD,IAAI,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;wBAAE,OAAO;oBAC1D,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;wBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;oBAC9E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACnB,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa;wBAAE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBAC7D,CAAC,CAAC,CAAC;YACL,CAAC;YACD,UAAU;YACV,UAAU;YACV,uCAAuC;YACvC,cAAc,CAAC,MAAc,EAAE,OAAyB;gBACtD,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;oBACzF,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;wBAAE,OAAO;oBAC/E,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;wBACtB,GAAG,OAAO;wBACV,MAAM;wBACN,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC/E,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,SAAS;wBACjB,UAAU,EAAE,IAAI;wBAChB,QAAQ,EAAE,EAAE;qBACb,CAAC,CAAC;oBACH,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBAChC,YAAY,CACV,IAAI,CAAC,SAAS,EACd,SAAS,MAAM,gBAAgB,OAAO,CAAC,IAAI,mBAAmB,EAC9D,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,CAC9B,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE;4BACzD,YAAY,CACV,IAAI,CAAC,SAAS,EACd,SAAS,MAAM,eAAe,KAAK,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,mDAAmD,mCAAmC,EACnX,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CACpD,CAAC;oBACN,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YACD,0CAA0C;YAC1C,iBAAiB,CACf,SAAiB,EACjB,OAA8E;gBAE9E,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACnD,OAAO,CAAC,IAAI,KAAK,aAAa;oBAC5B,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE;oBACxB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,gBAAgB,CAAC;wBAC/E,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CACxF,CAAC;gBACF,IAAI,CAAC,WAAW;oBACd,OAAO,OAAO,CAAC,IAAI,KAAK,aAAa;wBACnC,CAAC,CAAC,kBAAkB;wBACpB,CAAC,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS;4BACtC,CAAC,CAAC,iCAAiC;4BACnC,CAAC,CAAC,SAAS,CAAC;gBAClB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAC3B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CACzE,CAAC;gBACF,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,SAAS;oBACd,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAClF,CAAC;gBACF,IACE,IAAI,EAAE,MAAM,KAAK,SAAS;oBAC1B,CAAC,OAAO;oBACR,WAAW,CAAC,MAAM,KAAK,SAAS;oBAChC,CAAC,WAAW,CAAC,SAAS,KAAK,IAAI,IAAI,WAAW,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBAEvE,OAAO,gCAAgC,CAAC;gBAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAChE,wCAAwC;oBACxC,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU;wBAAE,OAAO,6CAA6C,CAAC;oBAC1F,MAAM,CAAC,GAAG,EAAE;wBACV,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;wBAC3E,IAAI,OAAO;4BAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACtB,CAAC,CAAC,CAAC;oBACH,OAAO,gCAAgC,CAAC;gBAC1C,CAAC;gBACD,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACpC,IACE,OAAO,CAAC,IAAI,KAAK,aAAa;wBAC9B,OAAO,CAAC,MAAM,KAAK,UAAU;wBAC7B,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC;wBAEtC,OAAO,2BAA2B,CAAC;oBACrC,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC9D,IAAI,CAAC,MAAM;wBAAE,OAAO,0BAA0B,CAAC;oBAC/C,MAAM,CAAC,GAAG,EAAE;wBACV,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,CAAC;wBAC9E,IAAI,CAAC,OAAO;4BAAE,OAAO;wBACrB,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;wBAC7B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;oBAC3B,CAAC,CAAC,CAAC;oBACH,OAAO,sBAAsB,CAAC;gBAChC,CAAC;gBACD,MAAM,QAAQ,GACZ,OAAO,CAAC,aAAa,KAAK,SAAS;oBACjC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBACnD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAO,kBAAkB,CAAC;gBACrE,IAAI,MAA0B,CAAC;gBAC/B,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACnC,IACE,OAAO,CAAC,MAAM,KAAK,QAAQ;wBAC3B,OAAO,CAAC,aAAa,KAAK,OAAO,CAAC,aAAa;wBAC/C,OAAO,CAAC,WAAW,KAAK,SAAS;wBAEjC,OAAO,iBAAiB,CAAC;oBAC3B,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC7B,MAAM;wBACJ,QAAQ,CAAC,OAAO,CAAC,IAAI,CACnB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,MAAM,CAC3E,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC1D,CAAC;gBACD,IAAI,CAAC,MAAM;oBAAE,OAAO,4BAA4B,CAAC;gBACjD,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,CAAC;oBAC9E,MAAM,QAAQ,GAAG,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC;oBACjE,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ;wBAAE,OAAO;oBAClC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;oBACzB,gBAAgB,CAAC,WAAW,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;oBACzE,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC;wBACjE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBACH,OAAO,eAAe,CAAC;YACzB,CAAC;YACD,uCAAuC;YACvC,gBAAgB,CAAC,MAAc;gBAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CACzC,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,MAAM,KAAK,MAAM;oBACtB,IAAI,CAAC,MAAM,KAAK,OAAO;oBACvB,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAC3D,CAAC;gBACF,IACE,CAAC,WAAW;oBACZ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;oBAE5E,OAAO;gBACT,OAAO,MAAM,CAAC,GAAG,EAAE;oBACjB,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,CAAC;oBAC9E,IAAI,CAAC,OAAO;wBAAE,OAAO;oBACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC3B,MAAM,MAAM,GACV,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,QAAQ;wBAC7C,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;wBAChC,CAAC,CAAC;4BACE,OAAO,EAAE,MAAM,CAAC,WAAW,CACzB,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;gCAClC,QAAQ,CAAC,EAAE;gCACX,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE;6BACrC,CAAC,CACH;yBACF,CAAC;oBACR,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;gBACpC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,gBAAgB;YAChB,sCAAsC;YACtC,YAAY;gBACV,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,SAAS,CAAC;oBAC/E,MAAM,CAAC,GAAG,EAAE;wBACV,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACrC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;4BACxC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;wBACrC,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CACnC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAC1E,EAAE,CAAC;oBACF,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACjC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;4BACnD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;gCAAE,SAAS;4BACzC,MAAM,CAAC,GAAG,EAAE;gCACV,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gCAC/E,IAAI,OAAO;oCAAE,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;gCACvC,YAAY,CACV,IAAI,CAAC,SAAS,EACd,SAAS,IAAI,CAAC,EAAE,aAAa,KAAK,GAAG,CAAC,wFAAwF,CAC/H,CAAC;4BACJ,CAAC,CAAC,CAAC;wBACL,CAAC;wBACD,SAAS;oBACX,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;wBAClB,MAAM,EAAE,aAAa;wBACrB,IAAI,EAAE,8FAA8F;qBACrG,CAAC,CAAC;gBACL,CAAC;gBACD,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,YAAY;oBAC1C,gBAAgB,CAAC,WAAW,CAAC,EAAE,EAAE,oCAAoC,CAAC,CAAC;YAC3E,CAAC;YACD,sCAAsC;YACtC,UAAU,CAAC,SAAiB,EAAE,MAAc;gBAC1C,IAAI,UAAU;oBAAE,OAAO;gBACvB,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACrC,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;wBAC1E,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;oBACxD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;wBAChE,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;gBACrD,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjC,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,aAAa,CAAC,CAAC;oBACvF,IACE,KAAK,CAAC,aAAa;wBACnB,CAAC,KAAK,CAAC,SAAS;wBAChB,CAAC,WAAW,EAAE,MAAM,KAAK,SAAS;4BAChC,CAAC,WAAW,CAAC,SAAS,KAAK,IAAI,IAAI,WAAW,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;4BACvE,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS;gCAChC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;wBAEjE,SAAS;oBACX,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;oBACjF,IACE,OAAO,EAAE,QAAQ,KAAK,UAAU;wBAChC,OAAO,CAAC,SAAS,KAAK,SAAS;wBAC/B,OAAO,CAAC,MAAM,KAAK,MAAM,EACzB,CAAC;wBACD,IAAI,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE;4BAAE,OAAO;wBACvC,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;wBACpC,OAAO,eAAe,CAAC;4BACrB,GAAG,KAAK;4BACR,MAAM,EAAE,OAAO,CAAC,MAAM;4BACtB,WAAW;4BACX,cAAc,EACZ,OAAO,CAAC,cAAc,EAAE,EAAE,KAAK,KAAK,CAAC,gBAAgB;gCACnD,CAAC,CAAC,OAAO,CAAC,cAAc;gCACxB,CAAC,CAAC,SAAS;4BACf,SAAS,EACP,OAAO,CAAC,SAAS,EAAE,EAAE,KAAK,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;yBAC9E,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YACD,yCAAyC;YACzC,WAAW,CACT,EAAU,EACV,QAOC;gBAED,MAAM,CAAC,GAAG,EAAE;oBACV,MAAM,SAAS,GACb,UAAU,EAAE,EAAE,KAAK,EAAE;wBACnB,CAAC,CAAC,UAAU,CAAC,SAAS;wBACtB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC;oBAC/D,IAAI,UAAU,EAAE,EAAE,KAAK,EAAE;wBAAE,UAAU,GAAG,SAAS,CAAC;oBAClD,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC/D,IAAI,CAAC,QAAQ,EAAE,gBAAgB,IAAI,QAAQ,EAAE,WAAW,CAAC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;wBACrF,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;wBACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC;wBACjF,IACE,IAAI;4BACJ,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,gBAAgB,CAAC;4BAC/D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAC3B,CAAC;4BACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CAAC;gCAC5E,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;oCACjB,SAAS,EAAE,QAAQ,CAAC,SAAS;oCAC7B,IAAI,EAAE,QAAQ,CAAC,IAAI;iCACpB,CAAC,CAAC;wBACP,CAAC;6BAAM;wBACL,sCAAsC;wBACtC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAChB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CACnF;4BAED,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;oBAC9E,CAAC;oBACD,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CACzC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,EAAE,aAAa,CAC9C,CAAC;oBACF,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE,MAAM,CAAC,CAAC;oBACzE,IAAI,WAAW,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;wBACpC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;4BACxB,SAAS,EAAE,QAAQ,CAAC,SAAS;4BAC7B,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,GAAG,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS;gCACtC,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE;gCAC3C,CAAC,CAAC,EAAE,CAAC;yBACR,CAAC,CAAC;wBACH,uCAAuC;wBACvC,IACE,WAAW,CAAC,MAAM,KAAK,SAAS;4BAChC,CAAC,WAAW,CAAC,SAAS,KAAK,IAAI,IAAI,WAAW,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;4BACvE,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS;gCACnC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;4BAEjE,YAAY,CACV,IAAI,CAAC,SAAS,EACd,GAAG,QAAQ,CAAC,IAAI,OAAO,WAAW,CAAC,UAAU,IAAI,iBAAiB,EAAE,EACpE;gCACE,aAAa,EAAE,WAAW,CAAC,EAAE;gCAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;gCAC7B,GAAG,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS;oCACtC,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE;oCAC3C,CAAC,CAAC,EAAE,CAAC;6BACR,CACF,CAAC;oBACN,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YACD,gCAAgC;YAChC,UAAU,CAAC,EAAU,EAAE,OAAe;gBACpC,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,UAAU,EAAE,EAAE,KAAK,EAAE;wBAAE,UAAU,GAAG,SAAS,CAAC;oBAClD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC5D,IAAI,KAAK;wBACP,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;4BACnB,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC;4BAC5B,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,IAAI;yBACrC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC;YACL,CAAC;YACD,0BAA0B;YAC1B,KAAK;gBACH,MAAM,GAAG,KAAK,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;QACV,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/storage/store.ts"],"names":[],"mappings":"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"}
|