@whispering233/ai-editor-server 0.0.55 → 0.0.57
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/client-dist/assets/{index-FO9svVbu.css → index-CV6h1YsD.css} +1 -1
- package/client-dist/assets/index-DH9B3drg.js +625 -0
- package/client-dist/brand-icon.svg +14 -0
- package/client-dist/index.html +3 -2
- package/dist/http-dispatcher.js +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -11
- package/dist/index.js.map +1 -1
- package/dist/routes/chat.d.ts +4 -2
- package/dist/routes/chat.d.ts.map +1 -1
- package/dist/routes/chat.js +59 -9
- package/dist/routes/chat.js.map +1 -1
- package/dist/routes/project.d.ts.map +1 -1
- package/dist/routes/project.js +60 -4
- package/dist/routes/project.js.map +1 -1
- package/dist/routes/settings.js +1 -1
- package/package.json +7 -7
- package/client-dist/assets/index-ntCd3_tm.js +0 -625
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">
|
|
2
|
+
<!--
|
|
3
|
+
品牌标记(app-mark)的系统面负形版:墨底 + 纸白挖空。
|
|
4
|
+
登记于 docs/ui/DESIGN.md 的 app-mark 条目(字面色值 #37352f / #ffffff 在该条目豁免清单内)。
|
|
5
|
+
同一文件既是 favicon,也是桌面应用图标的打包源(docs/design/50-desktop.md §5.3)。
|
|
6
|
+
-->
|
|
7
|
+
<rect width="64" height="64" rx="14.5" fill="#37352f" />
|
|
8
|
+
<g fill="none" stroke="#ffffff" stroke-linecap="round">
|
|
9
|
+
<path d="M15 12.5 V51.5" stroke-width="6.5" />
|
|
10
|
+
<path d="M28 20.5 H53" stroke-width="5.75" />
|
|
11
|
+
<path d="M28 32 H45" stroke-width="5.75" />
|
|
12
|
+
<path d="M28 43.5 H37.5" stroke-width="5.75" />
|
|
13
|
+
</g>
|
|
14
|
+
</svg>
|
package/client-dist/index.html
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" type="image/svg+xml" href="/brand-icon.svg" />
|
|
6
7
|
<title>AI 小说编辑器</title>
|
|
7
8
|
<script>
|
|
8
9
|
// FOUC 防护(DESIGN.md「Do's and Don'ts」登记的唯一硬编码色例外):深色主题用户在首帧渲染前加 .dark class,避免闪白
|
|
@@ -13,8 +14,8 @@
|
|
|
13
14
|
// localStorage 不可用(隐私模式等)时静默跳过,默认浅色
|
|
14
15
|
}
|
|
15
16
|
</script>
|
|
16
|
-
<script type="module" crossorigin src="/assets/index-
|
|
17
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
17
|
+
<script type="module" crossorigin src="/assets/index-DH9B3drg.js"></script>
|
|
18
|
+
<link rel="stylesheet" crossorigin href="/assets/index-CV6h1YsD.css">
|
|
18
19
|
</head>
|
|
19
20
|
<body>
|
|
20
21
|
<div id="root"></div>
|
package/dist/http-dispatcher.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// 2. 环境代理支持(`EnvHttpProxyAgent`,配合 `httpProxy` 设置/`HTTP(S)_PROXY`)。
|
|
9
9
|
// 不装 dispatcher 时 pi 的 SDK 走 Node 自带 fetch/连接策略,于是「pi CLI 能连、本仓不能连」。
|
|
10
10
|
//
|
|
11
|
-
// 实现与 pi 0.
|
|
11
|
+
// 实现与 pi 0.87.1 的同名模块保持同构(pi-web 也以拷贝方式复用该模块),差异仅:
|
|
12
12
|
// 不做一次性守卫(允许设置热更新后重新安装),注释指向本仓语境。
|
|
13
13
|
import { EventEmitter } from "node:events";
|
|
14
14
|
import * as undici from "undici";
|
package/dist/index.d.ts
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
import { Hono } from "hono";
|
|
3
3
|
import { type ServerType } from "@hono/node-server";
|
|
4
4
|
import { type ProjectContext, type ProjectVariables } from "./middleware/project.js";
|
|
5
|
-
/** 默认端口(dev 态 Vite proxy 写死 3456) */
|
|
6
|
-
export declare const DEFAULT_PORT = 3456;
|
|
7
5
|
export interface StartServerOptions {
|
|
8
|
-
/**
|
|
6
|
+
/** 监听端口(默认取形态分段起点:dev → `PORT_RANGES.dev`,否则 `PORT_RANGES.web`;0 = 系统分配,测试用) */
|
|
9
7
|
port?: number;
|
|
8
|
+
/** 端口被占时的 +1 重试次数(默认取形态分段的 `attempts`;1 = 严格单端口,被占直接报错) */
|
|
9
|
+
maxAttempts?: number;
|
|
10
10
|
/**
|
|
11
|
-
* dev 态:端口被占直接报错(Vite proxy
|
|
12
|
-
|
|
11
|
+
* dev 态:端口被占直接报错(dev 分段为严格单端口:Vite proxy 固定指向其起点,自动 +1 会造成
|
|
12
|
+
* proxy 与实际监听不一致);默认取 NODE_ENV === "development"
|
|
13
13
|
*/
|
|
14
14
|
dev?: boolean;
|
|
15
15
|
/** 启动后打开浏览器(默认非 dev 态开启;测试传 false) */
|
|
@@ -53,7 +53,7 @@ export declare function openBrowserUrl(url: string): Promise<void>;
|
|
|
53
53
|
/**
|
|
54
54
|
* 解析 AI_EDITOR_PORT 环境变量(bin 入口用,防御非法输入):
|
|
55
55
|
* 合法范围 = 1-65535 的整数端口;未设置/空串/NaN/越界/非整数 → undefined,
|
|
56
|
-
*
|
|
56
|
+
* 调用方回退当前形态的分段起点(`PORT_RANGES`)。此前 `Number("abc")` → NaN 会传入
|
|
57
57
|
* 端口逻辑导致监听行为未定义;回退默认是文档声明端口,启动日志会打印实际端口,
|
|
58
58
|
* 无歧义且不中断启动(与生产态端口容错精神一致,不升级为启动失败)。
|
|
59
59
|
*/
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAkBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAkBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAYzE,OAAO,EAML,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AA+BjC,MAAM,WAAW,kBAAkB;IAClC,gFAAgF;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACtB;;;MAGE;IACD,GAAG,CAAC,EAAE,OAAO,CAAC;IACf,sCAAsC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACvB,yDAAyD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,IAAI,CAAC;QAAE,SAAS,EAAE,gBAAgB,CAAA;KAAE,CAAC,CAAC;IAC3C,MAAM,EAAE,UAAU,CAAC;IACpB,6BAA6B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC7D,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,mBAAmB;IAClB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMzD;AAmCD;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,YAAY,CAAC,CA4K9G;AAcD,gDAAgD;AAChD,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/D;AAID;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAK1E"}
|
package/dist/index.js
CHANGED
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
//
|
|
4
4
|
// 职责(第 307-336 行「构建与部署」):
|
|
5
5
|
// - startServer(projectRoot, opts?):检测/初始化项目→ 装配 Hono(错误中间件 +
|
|
6
|
-
// 来源校验 + 项目上下文 + /api/v1/health 探活)→
|
|
6
|
+
// 来源校验 + 项目上下文 + /api/v1/health 探活)→ 端口策略监听(按形态分段,见 `PORT_RANGES`)→
|
|
7
7
|
// 可选打开浏览器(127.0.0.1,禁 localhost)
|
|
8
8
|
// - SPA 静态托管:client/dist 静态文件 + 非 /api GET fallback 到 index.html(单进程架构)
|
|
9
9
|
// - 直接执行(node packages/server/dist/index.js [projectRoot])时自动启动;业务路由(routes/)
|
|
10
10
|
// 留到切片 1 挂载(结构预留:health 旁并列注册即可)
|
|
11
11
|
// - bin 入口(打包安装):package.json "bin": {"ai-editor": "dist/index.js"}——
|
|
12
12
|
// shebang 必须是文件首行(tsc 构建保留),npm 全局/本地安装后生成 ai-editor 命令;
|
|
13
|
-
// argv[2] 为项目根(缺省 cwd),NODE_ENV 非 development
|
|
13
|
+
// argv[2] 为项目根(缺省 cwd),NODE_ENV 非 development 即生产态(端口在 web 分段内自动 +1)
|
|
14
14
|
import { execFile } from "node:child_process";
|
|
15
15
|
import { readFile } from "node:fs/promises";
|
|
16
16
|
import { existsSync, realpathSync } from "node:fs";
|
|
@@ -19,6 +19,7 @@ import { fileURLToPath } from "node:url";
|
|
|
19
19
|
import { Hono } from "hono";
|
|
20
20
|
import { logger } from "hono/logger";
|
|
21
21
|
import { createAdaptorServer } from "@hono/node-server";
|
|
22
|
+
import { PORT_RANGES } from "@whispering233/ai-editor-shared";
|
|
22
23
|
import { errorHandler, fail, ok } from "./middleware/error.js";
|
|
23
24
|
import { stopAutoBackup } from "./backup.js";
|
|
24
25
|
import { initDebugConfig, isCategoryEnabled } from "./debug.js";
|
|
@@ -40,10 +41,6 @@ import { proposalRoutes } from "./routes/proposal.js";
|
|
|
40
41
|
import { trashRoutes } from "./routes/trash.js";
|
|
41
42
|
import { relationRoutes } from "./routes/relation.js";
|
|
42
43
|
import { logSoftDeleteReconcile, reconcileSoftDelete } from "./consistency.js";
|
|
43
|
-
/** 默认端口(dev 态 Vite proxy 写死 3456) */
|
|
44
|
-
export const DEFAULT_PORT = 3456;
|
|
45
|
-
/** 生产态端口 +1 重试上限(占用自动 +1) */
|
|
46
|
-
const MAX_PORT_ATTEMPTS = 20;
|
|
47
44
|
/** 静态文件 MIME(client/dist 产物类型) */
|
|
48
45
|
const CONTENT_TYPES = {
|
|
49
46
|
".html": "text/html; charset=utf-8",
|
|
@@ -119,7 +116,9 @@ async function readFileSafe(filePath) {
|
|
|
119
116
|
*/
|
|
120
117
|
export async function startServer(projectRoot, options = {}) {
|
|
121
118
|
const dev = options.dev ?? process.env.NODE_ENV === "development";
|
|
122
|
-
const
|
|
119
|
+
const range = dev ? PORT_RANGES.dev : PORT_RANGES.web;
|
|
120
|
+
const port = options.port ?? range.base;
|
|
121
|
+
const attempts = options.maxAttempts ?? range.attempts;
|
|
123
122
|
const openBrowser = options.openBrowser ?? !dev;
|
|
124
123
|
const clientDist = options.clientDist ?? defaultClientDist();
|
|
125
124
|
// 创作根归一化(2026-08 修复):CLI 以相对路径启动(node packages/server/dist/index.js
|
|
@@ -221,8 +220,8 @@ export async function startServer(projectRoot, options = {}) {
|
|
|
221
220
|
}
|
|
222
221
|
return new Response(html, { headers: { "Content-Type": "text/html; charset=utf-8" } });
|
|
223
222
|
});
|
|
224
|
-
//
|
|
225
|
-
const maxPort =
|
|
223
|
+
// 端口策略:在形态分段内 +1 重试(`attempts` = 1 即严格单端口,被占直接报错)
|
|
224
|
+
const maxPort = port + attempts - 1;
|
|
226
225
|
let server = null;
|
|
227
226
|
let actualPort = port;
|
|
228
227
|
for (let p = port; p <= maxPort; p++) {
|
|
@@ -290,7 +289,7 @@ export async function openBrowserUrl(url) {
|
|
|
290
289
|
/**
|
|
291
290
|
* 解析 AI_EDITOR_PORT 环境变量(bin 入口用,防御非法输入):
|
|
292
291
|
* 合法范围 = 1-65535 的整数端口;未设置/空串/NaN/越界/非整数 → undefined,
|
|
293
|
-
*
|
|
292
|
+
* 调用方回退当前形态的分段起点(`PORT_RANGES`)。此前 `Number("abc")` → NaN 会传入
|
|
294
293
|
* 端口逻辑导致监听行为未定义;回退默认是文档声明端口,启动日志会打印实际端口,
|
|
295
294
|
* 无歧义且不中断启动(与生产态端口容错精神一致,不升级为启动失败)。
|
|
296
295
|
*/
|
|
@@ -327,7 +326,8 @@ if (isDirectRun) {
|
|
|
327
326
|
const projectRoot = process.argv[2] ?? process.cwd();
|
|
328
327
|
const dev = process.env.NODE_ENV === "development";
|
|
329
328
|
// AI_EDITOR_PORT 环境变量可覆盖默认端口(端口策略;测试/多实例场景用,
|
|
330
|
-
// 如打包安装冒烟与 dev server
|
|
329
|
+
// 如打包安装冒烟与 dev server 并存时指定独立端口)——覆盖即绕过分段隔离;
|
|
330
|
+
// 非法值(NaN/越界)回退当前形态的分段起点
|
|
331
331
|
const port = parsePortEnv(process.env.AI_EDITOR_PORT);
|
|
332
332
|
const handle = await startServer(projectRoot, { dev, ...(port !== undefined ? { port } : {}) });
|
|
333
333
|
console.log(handle.project === null
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/chat.d.ts
CHANGED
|
@@ -24,9 +24,10 @@ export interface ChatRouteDeps {
|
|
|
24
24
|
/** 聚焦章注入的正文节选上限(字符;完整正文由模型调 get_chapter_text 按 offset 分页拉取) */
|
|
25
25
|
export declare const FOCUS_CHAPTER_EXCERPT_CHARS = 2000;
|
|
26
26
|
/**
|
|
27
|
-
* 聚焦上下文文本:focus_entity_id → 实体、focus_node_id →
|
|
27
|
+
* 聚焦上下文文本:focus_entity_id → 实体、focus_node_id → 大纲节点、focus_deduction → 推演节点集合,
|
|
28
|
+
* 拼成结构化文本。
|
|
28
29
|
* 查询不到(已软删/不存在/跨项目)→ 跳过该项(不报错):客户端可能携带过期 focus。
|
|
29
|
-
*
|
|
30
|
+
* 各项皆无(或均无效)→ undefined(不注入,消息原文保持干净)。
|
|
30
31
|
* 聚焦**章**:另注入正文前 `FOCUS_CHAPTER_EXCERPT_CHARS` 字符节选(带「节选」标注)——
|
|
31
32
|
* **不做整章自动入上下文**(正文预算与对话历史共享同一窗口,见 docs/design/20-context.md §2)。
|
|
32
33
|
*/
|
|
@@ -34,6 +35,7 @@ export declare function buildFocusText(project: ProjectContext, context: {
|
|
|
34
35
|
focus_entity_type?: string;
|
|
35
36
|
focus_entity_id?: string;
|
|
36
37
|
focus_node_id?: string;
|
|
38
|
+
focus_deduction?: boolean;
|
|
37
39
|
} | undefined): string | undefined;
|
|
38
40
|
/** pi 会话事件的最小结构形态(结构性类型:server 包不直接依赖 pi 的类型) */
|
|
39
41
|
interface MinimalAgentEvent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,IAAI,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,EAgBL,KAAK,aAAa,EAClB,KAAK,cAAc,EAGpB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,IAAI,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,EAgBL,KAAK,aAAa,EAClB,KAAK,cAAc,EAGpB,MAAM,gCAAgC,CAAC;AAuBxC,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAGtF,OAAO,EAQL,KAAK,cAAc,EACpB,MAAM,oBAAoB,CAAC;AAI5B,gDAAgD;AAChD,eAAO,MAAM,oBAAoB;;;CAA4C,CAAC;AAE9E,yDAAyD;AACzD,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAO/C,iCAAiC;AACjC,MAAM,WAAW,aAAa;IAC5B,8DAA8D;IAC9D,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,sEAAsE;IACtE,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,sCAAsC;IACtC,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C;AAID,+DAA+D;AAC/D,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,cAAc,EACvB,OAAO,EACH;IACE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GACD,SAAS,GACZ,MAAM,GAAG,SAAS,CAsBpB;AAgED,iDAAiD;AACjD,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CA4HjG;AAiCD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,GAAE,aAAkB,GAAG,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAqL3F;AAqCD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,aAAkB,GAAG,IAAI,CAoF/D;AAED,0CAA0C;AAC1C,eAAO,MAAM,UAAU,4EAAqB,CAAC"}
|
package/dist/routes/chat.js
CHANGED
|
@@ -18,8 +18,8 @@ import { unlinkSync } from "node:fs";
|
|
|
18
18
|
import { Hono } from "hono";
|
|
19
19
|
import { streamSSE } from "hono/streaming";
|
|
20
20
|
import { contextUsageField, createPingFrame, createSessionFrame, createSpeedMeter, defaultProposalStore, findProjectSession, FOCUS_TITLE, lastVisibleSessionText, listProjectSessions, NoModelConfiguredError, projectSessionMessages, readProjectSession, readSessionThinking, sessionUsage, toSseFrame, } from "@whispering233/ai-editor-agent";
|
|
21
|
-
import { findOutlineNode, getDocument, getEntity, readOutlineFile } from "@whispering233/ai-editor-db";
|
|
22
|
-
import { truncate } from "@whispering233/ai-editor-shared";
|
|
21
|
+
import { findOutlineNode, getDocument, getDocumentTextLengths, getEntity, readOutlineFile, } from "@whispering233/ai-editor-db";
|
|
22
|
+
import { buildDeductionMarks, orderVisibleChapters, truncate, } from "@whispering233/ai-editor-shared";
|
|
23
23
|
import { chatMessagesResSchema, chatSendReqSchema, chatSessionDeleteResSchema, chatSessionsResSchema, chatThinkingResSchema, } from "@whispering233/ai-editor-shared/schemas";
|
|
24
24
|
import { HttpError, ok } from "../middleware/error.js";
|
|
25
25
|
import { requireCurrentProject } from "../middleware/project.js";
|
|
@@ -37,9 +37,10 @@ const TOOL_RESULT_TRUNCATION_MARKER = "[工具结果已截断";
|
|
|
37
37
|
/** 聚焦章注入的正文节选上限(字符;完整正文由模型调 get_chapter_text 按 offset 分页拉取) */
|
|
38
38
|
export const FOCUS_CHAPTER_EXCERPT_CHARS = 2000;
|
|
39
39
|
/**
|
|
40
|
-
* 聚焦上下文文本:focus_entity_id → 实体、focus_node_id →
|
|
40
|
+
* 聚焦上下文文本:focus_entity_id → 实体、focus_node_id → 大纲节点、focus_deduction → 推演节点集合,
|
|
41
|
+
* 拼成结构化文本。
|
|
41
42
|
* 查询不到(已软删/不存在/跨项目)→ 跳过该项(不报错):客户端可能携带过期 focus。
|
|
42
|
-
*
|
|
43
|
+
* 各项皆无(或均无效)→ undefined(不注入,消息原文保持干净)。
|
|
43
44
|
* 聚焦**章**:另注入正文前 `FOCUS_CHAPTER_EXCERPT_CHARS` 字符节选(带「节选」标注)——
|
|
44
45
|
* **不做整章自动入上下文**(正文预算与对话历史共享同一窗口,见 docs/design/20-context.md §2)。
|
|
45
46
|
*/
|
|
@@ -58,8 +59,48 @@ export function buildFocusText(project, context) {
|
|
|
58
59
|
chapterExcerptOf(project, node.type, node.id));
|
|
59
60
|
}
|
|
60
61
|
}
|
|
62
|
+
if (context?.focus_deduction === true) {
|
|
63
|
+
const deduction = deductionFocusText(project);
|
|
64
|
+
if (deduction !== undefined)
|
|
65
|
+
parts.push(deduction); // 无标记 / 全部失效 → 不注入该段(不影响其余项)
|
|
66
|
+
}
|
|
61
67
|
return parts.length > 0 ? parts.join("\n\n") : undefined;
|
|
62
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* 推演节点集合段(`context.focus_deduction`,见 `docs/design/20-context.md` §2):
|
|
71
|
+
* 三段短文本——① 口径说明 ② 有序标记清单(角色 · 章号 · 标题)③ 相邻区间摘要(跨越章数 · 已写章数)。
|
|
72
|
+
* 标记的角色 / 顺序 / 章号一律来自 shared `buildDeductionMarks`(唯一编号口径),本函数不手抄文案与章号;
|
|
73
|
+
* 标记源是**服务端现读**的 `project.json` `deduction_nodes`(客户端只发布尔,见 `docs/api/80-api-chat.md`)。
|
|
74
|
+
* **不注入**章摘要 / 区间内中间章清单 / 正文(区间明细与章清单走 `get_deduction_marks` 工具)。
|
|
75
|
+
* 无标记 / 标记全部失效(软删、非章、已 purge)→ undefined(静默省略,不报错)。
|
|
76
|
+
*/
|
|
77
|
+
function deductionFocusText(project) {
|
|
78
|
+
const tree = readOutlineFile(project.root);
|
|
79
|
+
const marks = buildDeductionMarks(tree, project.config.deduction_nodes ?? []);
|
|
80
|
+
if (marks.length === 0)
|
|
81
|
+
return undefined;
|
|
82
|
+
const lines = [
|
|
83
|
+
"推演节点集合(作者标定的推演边界):单标记 = 开放式剧情发散;多标记 = 相邻标记之间的剧情线探讨;" +
|
|
84
|
+
"明细可用 get_deduction_marks 获取。",
|
|
85
|
+
"标记(按章序):",
|
|
86
|
+
...marks.map((mark) => `${mark.index}. ${mark.label} · 第${mark.chapterNumber}章 · ${mark.title}`),
|
|
87
|
+
];
|
|
88
|
+
if (marks.length > 1) {
|
|
89
|
+
// 区间 = 相邻标记之间(**不含两端标记**,与 get_deduction_marks 的 spans 同口径):只给骨架,不给中间章清单
|
|
90
|
+
const order = orderVisibleChapters(tree);
|
|
91
|
+
lines.push("相邻区间:");
|
|
92
|
+
for (let i = 1; i < marks.length; i++) {
|
|
93
|
+
const from = marks[i - 1];
|
|
94
|
+
const to = marks[i];
|
|
95
|
+
const middle = order.slice(order.indexOf(from.nodeId) + 1, order.indexOf(to.nodeId));
|
|
96
|
+
const textLengths = getDocumentTextLengths(project.db, "chapter", middle);
|
|
97
|
+
const written = middle.filter((id) => (textLengths.get(id) ?? 0) > 0).length;
|
|
98
|
+
lines.push(`${from.label}(第${from.chapterNumber}章)→ ${to.label}(第${to.chapterNumber}章):` +
|
|
99
|
+
`跨越 ${middle.length} 章 · 已写 ${written} 章`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return lines.join("\n");
|
|
103
|
+
}
|
|
63
104
|
/** 聚焦章的正文节选段:非章 / 未写过正文 → 空串(维持现状);只取前 N 字符,完整正文由工具拉取 */
|
|
64
105
|
function chapterExcerptOf(project, nodeType, nodeId) {
|
|
65
106
|
if (nodeType !== "chapter")
|
|
@@ -401,10 +442,20 @@ export function chatSendHandler(deps = {}) {
|
|
|
401
442
|
};
|
|
402
443
|
}
|
|
403
444
|
// ============ 会话端点辅助 ============
|
|
404
|
-
/**
|
|
405
|
-
|
|
445
|
+
/**
|
|
446
|
+
* 会话列表投影:末条可见文本(列表摘要,截断到 `SESSION_LAST_MESSAGE_MAX_LEN`)+ **可见消息数**。
|
|
447
|
+
* 计数**不用** pi `SessionInfo.messageCount`——它把 pi 自己写入的首条 system 消息 entry 也算进去,
|
|
448
|
+
* 而列表是给用户看的(界面文案「N 条消息」)⇒ 与历史接口同源,数 `projectSessionMessages` 的长度。
|
|
449
|
+
* 两个值共用同一次 `readProjectSession`(列表本来就要读全量 entries 取末条文本)。
|
|
450
|
+
*/
|
|
451
|
+
async function sessionListFields(target, sessionId) {
|
|
406
452
|
const opened = await readProjectSession(target.root, sessionId);
|
|
407
|
-
|
|
453
|
+
if (opened === null)
|
|
454
|
+
return { lastMessage: "", messageCount: 0 };
|
|
455
|
+
return {
|
|
456
|
+
lastMessage: truncate(lastVisibleSessionText(opened.entries), SESSION_LAST_MESSAGE_MAX_LEN),
|
|
457
|
+
messageCount: projectSessionMessages(opened.entries).length,
|
|
458
|
+
};
|
|
408
459
|
}
|
|
409
460
|
/**
|
|
410
461
|
* 历史响应的 `contextUsage`:**只带窗口,不重建占用**(占用建在 pi 未导出的估算函数上,见
|
|
@@ -432,8 +483,7 @@ export function createChatRoutes(deps = {}) {
|
|
|
432
483
|
const items = await Promise.all(sessions.map(async (info) => ({
|
|
433
484
|
id: info.id,
|
|
434
485
|
name: info.name, // pi `session_info` 条目(普通 chat 会话没有 ⇒ undefined 被 JSON 序列化丢掉)
|
|
435
|
-
|
|
436
|
-
messageCount: info.messageCount,
|
|
486
|
+
...(await sessionListFields(target, info.id)),
|
|
437
487
|
createdAt: info.created.toISOString(),
|
|
438
488
|
updatedAt: info.modified.toISOString(),
|
|
439
489
|
})));
|
package/dist/routes/chat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,iEAAiE;AACjE,6DAA6D;AAC7D,EAAE;AACF,QAAQ;AACR,2CAA2C;AAC3C,wDAAwD;AACxD,mFAAmF;AACnF,oDAAoD;AACpD,sDAAsD;AACtD,yCAAyC;AACzC,wDAAwD;AACxD,EAAE;AACF,uEAAuE;AACvE,iCAAiC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,UAAU,GAKX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACvG,OAAO,EAAE,QAAQ,EAAyC,MAAM,iCAAiC,CAAC;AAClG,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAuB,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,GAGrB,MAAM,oBAAoB,CAAC;AAE5B,+BAA+B;AAE/B,gDAAgD;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAW,CAAC;AAE9E,yDAAyD;AACzD,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAE/C,iFAAiF;AACjF,MAAM,6BAA6B,GAAG,UAAU,CAAC;AAcjD,2EAA2E;AAE3E,+DAA+D;AAC/D,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAuB,EACvB,OAAqG;IAErG,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAC3D,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,aAAa,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QACnF,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAChD,KAAK,CAAC,IAAI,CACR,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC5F,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAChD,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,yDAAyD;AACzD,SAAS,gBAAgB,CAAC,OAAuB,EAAE,QAAgB,EAAE,MAAc;IACjF,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACtC,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC;IAC5E,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,yCAAyC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,2BAA2B,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,sDAAsD;AAEtD,qCAAqC;AACrC,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,uCAAuC;AACvC,SAAS,YAAY,CAAC,KAAc,EAAE,GAAG,GAAG,eAAe;IACzD,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,CAAC;IACpF,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAChF,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAuB;IAC3D,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;YAAE,OAAO;QAE9C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,IAAI,MAAM;oBAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;gBACnD,OAAO;YACT,CAAC;YACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,MAAM,cAAc,GAAG,KAAK,CAAC,qBAAuE,CAAC;gBACrG,IAAI,cAAc,EAAE,IAAI,KAAK,YAAY,IAAI,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACtF,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,cAAc,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;gBAC5E,CAAC;qBAAM,IAAI,cAAc,EAAE,IAAI,KAAK,gBAAgB,IAAI,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACjG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,mBAAmB,cAAc,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;gBAChF,CAAC;gBACD,OAAO;YACT,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,OAAO,GAAG,KAAK,CAAC,OAMT,CAAC;gBACd,+CAA+C;gBAC/C,IAAI,SAAS,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,EAAE,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;oBAC9E,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;oBACpC,QAAQ,CACN,SAAS,EACT,KAAK,EACL,iBAAiB,KAAK,EAAE,EAAE,IAAI,GAAG,WAAW,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC/F,CAAC;oBACF,0CAA0C;oBAC1C,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,oBAAoB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtG,CAAC;gBACD,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;oBAAE,OAAO;gBACrF,QAAQ,CACN,OAAO,EACP,KAAK,EACL,sBAAsB,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,kBAAkB,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,UAAU,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,SAAS,OAAO,CAAC,UAAU,IAAI,GAAG,EAAE,CAC5K,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,sBAAsB,CAAC,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,QAAQ,CACN,MAAM,EACN,MAAM,EACN,kBAAkB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAC3G,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,MAA2C,CAAC;gBACjE,+BAA+B;gBAC/B,IAAI,QAAgB,CAAC;gBACrB,IAAI,CAAC;oBACH,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACnE,CAAC;gBAAC,MAAM,CAAC;oBACP,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC3C,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CACN,MAAM,EACN,MAAM,EACN,oBAAoB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,YAAY,CAAC,QAAQ,CAAC,EAAE,CAC9I,CAAC;gBACJ,CAAC;gBACD,IAAI,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,EAAE,CAAC;oBAChE,QAAQ,CACN,OAAO,EACP,OAAO,EACP,qCAAqC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAC7E,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YACD,KAAK,kBAAkB;gBACrB,IAAI,MAAM;oBAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,2BAA2B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACxF,OAAO;YACT,KAAK,gBAAgB;gBACnB,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CACN,MAAM,EACN,MAAM,EACN,yBAAyB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CACtH,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,KAAK,kBAAkB;gBACrB,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CACN,MAAM,EACN,MAAM,EACN,4BAA4B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAClH,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,KAAK,gBAAgB;gBACnB,IAAI,MAAM;oBAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,0BAA0B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACxF,OAAO;YACT,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAuB,CAAC,IAAI,KAAK,WAAW,CAEjF,CAAC;gBACd,IAAI,IAAI,EAAE,UAAU,KAAK,OAAO,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;oBACnE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,oBAAoB,IAAI,CAAC,UAAU,YAAY,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC;gBACrG,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;gBACnC,CAAC;gBACD,OAAO;YACT,CAAC;YACD;gBACE,OAAO;QACX,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,iCAAiC;AAEjC,wDAAwD;AACxD,SAAS,cAAc,CAAC,EAAU,EAAE,OAA+B;IACjE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,KAAK,MAAM,CAAC,IAAI,OAAO;gBAAE,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjE,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,YAA4C;IACzE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,0DAA0D;AAE1D;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAAsB,EAAE;IACtD,OAAO,KAAK,EAAE,CAAC,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QAExC,2CAA2C;QAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B;QAC5E,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,iDAAiD;QAC1F,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;QAErD,8CAA8C;QAC9C,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,8BAA8B,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,MAAM,GAAsB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;YAEvG,gDAAgD;YAChD,IAAI,WAA+B,CAAC;YACpC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC/D,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBAClB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,UAAU,eAAe,CAAC,CAAC;gBACrF,CAAC;gBACD,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1B,CAAC;YAED,2DAA2D;YAC3D,IAAI,OAAuB,CAAC;YAC5B,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAClF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,sBAAsB,EAAE,CAAC;oBAC1C,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,qBAAqB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/D,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;YACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;YACxE,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5D,MAAM,IAAI,SAAS,CACjB,GAAG,EACH,qBAAqB,EACrB,OAAO,KAAK,CAAC,QAAQ,gCAAgC,CACtD,CAAC;YACJ,CAAC;YAED,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,oBAAoB,CAAC;YACjD,0DAA0D;YAC1D,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,KAAK,SAAS,OAAO,OAAO,EAAE,CAAC;YACpG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAChD,4EAA4E;YAC5E,MAAM,iBAAiB,GAAyB;gBAC9C,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE;gBACxD,eAAe,EAAE,GAAG,EAAE,CACpB,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE;oBACxD,mBAAmB,EAAE,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC;iBACjE,CAAC;gBACJ,UAAU,EAAE,gBAAgB,EAAE;aAC/B,CAAC;YAEF,gDAAgD;YAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACjB,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,OAAO,SAAS,CACd,CAAC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;gBACf,0BAA0B;gBAC1B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,GAAS,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnD,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,4BAA4B;gBAC5D,CAAC,CAAC;gBACF,gEAAgE;gBAChE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACvB,gFAAgF;gBAChF,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnE,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAkE,CAAC;gBACxF,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;oBACpC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC3B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBAED,kCAAkC;gBAClC,MAAM,UAAU,GAAG,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAC1D,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,OAAO;oBACtC,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAClF,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,EAAE,CAAC,CAAC,sBAAsB;oBAClC,CAAC;gBACH,CAAC,CAAC;gBAEF,4CAA4C;gBAC5C,MAAM,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;gBAC5C,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;oBAC5B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC;oBAChE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACrC,MAAM,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;wBACnE,MAAM,cAAc,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;wBACpE,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;4BAAE,OAAO;wBACtE,MAAM,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;wBACpC,gDAAgD;wBAChD,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;4BAAE,OAAO;oBACxC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,WAAqC,CAAC;gBAC1C,IAAI,CAAC;oBACH,iCAAiC;oBACjC,MAAM,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;oBAEhD,iDAAiD;oBACjD,oBAAoB,CAAC,SAAS,CAAC,CAAC;oBAChC,OAAO,GAAG,IAAI,CAAC;oBACf,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;wBAChD,QAAQ,CAAC,KAAqC,CAAC,CAAC;wBAChD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;wBACnD,IAAI,KAAK,KAAK,IAAI;4BAAE,OAAO;wBAC3B,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B;oBACvD,CAAC,CAAC,CAAC;oBAEH,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACzC,MAAM,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACtC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,0DAA0D;oBAC1D,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,OAAO,EAAE,CAAC,CAAC;oBACjD,MAAM,UAAU,CAAC;wBACf,KAAK,EAAE,WAAW;wBAClB,IAAI,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,EAAE;qBAC9F,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,WAAW,EAAE,EAAE,CAAC;oBAChB,+CAA+C;oBAC/C,4CAA4C;oBAC5C,IAAI,OAAO;wBAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;oBAC7C,OAAO,EAAE,CAAC;oBACV,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,aAAa;oBACpC,MAAM,SAAS,CAAC;oBAChB,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,aAAa;oBAC3D,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;gBACvB,CAAC;YACH,CAAC;YACD,oDAAoD;YACpD,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;gBACpB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,QAAQ,CAAC;wBACpB,KAAK,EAAE,WAAW;wBAClB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,UAAU,EAAE,OAAO;4BACnB,YAAY,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW;yBAC/D,CAAC;qBACH,CAAC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC;oBACP,cAAc;gBAChB,CAAC;YACH,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iCAAiC;YACjC,OAAO,EAAE,CAAC;YACV,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,mCAAmC;AAEnC,8BAA8B;AAC9B,KAAK,UAAU,eAAe,CAAC,MAAyB,EAAE,SAAiB;IACzE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChE,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,mBAAmB,CAAC,YAA0B;IAC3D,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACnF,MAAM,aAAa,GACjB,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IAC/G,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3G,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;AACxD,CAAC;AAED,iCAAiC;AAEjC;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAsB,EAAE;IACvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;IAE1B,6CAA6C;IAC7C,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,MAAM,GAAsB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;QACvG,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,8DAA8D;YAC/E,WAAW,EAAE,QAAQ,CAAC,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,4BAA4B,CAAC;YAC3F,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;SACvC,CAAC,CAAC,CACJ,CAAC;QACF,OAAO,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,yDAAyD;IACzD,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/C,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,eAAe,EAAE,CAAC,CAAC,iCAAiC;QAC/E,MAAM,KAAK,GAAc,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE;YACpD,mBAAmB,EAAE,qBAAqB,CAAC,YAAY,CAAC;SACzD,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAC7D,OAAO,gBAAgB,CAAC,CAAC,EAAE,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IACrG,CAAC,CAAC,CAAC;IAEH,8EAA8E;IAC9E,MAAM,CAAC,GAAG,CAAC,4CAA4C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACnE,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE3C,MAAM,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxF,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAC5E,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,oBAAoB,EAAE,YAAY,UAAU,QAAQ,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,2CAA2C;IAC3C,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,uBAAuB,SAAS,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/D,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;YACxB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IAExC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,0CAA0C;AAC1C,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;AAE7C;;;GAGG;AACH,SAAS,gBAAgB,CAAC,CAAU,EAAE,QAAmB;IACvD,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,CAAU,EACV,SAAiB,EACjB,QAAmB,EACnB,KAAgB,EAChB,YAA0C;IAE1C,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CACX,EAAE,CACA,qBAAqB,CAAC,KAAK,CAAC;YAC1B,SAAS;YACT,QAAQ;YACR,KAAK;YACL,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;SACxD,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAU,EAAE,QAAgB;IACpD,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,CAAU;IACvC,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjH,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,iEAAiE;AACjE,6DAA6D;AAC7D,EAAE;AACF,QAAQ;AACR,2CAA2C;AAC3C,wDAAwD;AACxD,mFAAmF;AACnF,oDAAoD;AACpD,sDAAsD;AACtD,yCAAyC;AACzC,wDAAwD;AACxD,EAAE;AACF,uEAAuE;AACvE,iCAAiC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,UAAU,GAKX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,QAAQ,GAGT,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAuB,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,GAGrB,MAAM,oBAAoB,CAAC;AAE5B,+BAA+B;AAE/B,gDAAgD;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAW,CAAC;AAE9E,yDAAyD;AACzD,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAE/C,iFAAiF;AACjF,MAAM,6BAA6B,GAAG,UAAU,CAAC;AAcjD,2EAA2E;AAE3E,+DAA+D;AAC/D,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAuB,EACvB,OAOa;IAEb,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAC3D,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,aAAa,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QACnF,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAChD,KAAK,CAAC,IAAI,CACR,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC5F,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAChD,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,eAAe,KAAK,IAAI,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,SAAS,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,6BAA6B;IACnF,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,OAAuB;IACjD,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEzC,MAAM,KAAK,GAAG;QACZ,qDAAqD;YACnD,8BAA8B;QAChC,UAAU;QACV,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,aAAa,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;KACjG,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,yEAAyE;QACzE,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YACrF,MAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7E,KAAK,CAAC,IAAI,CACR,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,OAAO,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,aAAa,KAAK;gBAC3E,MAAM,MAAM,CAAC,MAAM,WAAW,OAAO,IAAI,CAC5C,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,yDAAyD;AACzD,SAAS,gBAAgB,CAAC,OAAuB,EAAE,QAAgB,EAAE,MAAc;IACjF,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACtC,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC;IAC5E,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,yCAAyC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,2BAA2B,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,sDAAsD;AAEtD,qCAAqC;AACrC,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,uCAAuC;AACvC,SAAS,YAAY,CAAC,KAAc,EAAE,GAAG,GAAG,eAAe;IACzD,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,CAAC;IACpF,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAChF,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAuB;IAC3D,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;YAAE,OAAO;QAE9C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,IAAI,MAAM;oBAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;gBACnD,OAAO;YACT,CAAC;YACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,MAAM,cAAc,GAAG,KAAK,CAAC,qBAAuE,CAAC;gBACrG,IAAI,cAAc,EAAE,IAAI,KAAK,YAAY,IAAI,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACtF,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,cAAc,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;gBAC5E,CAAC;qBAAM,IAAI,cAAc,EAAE,IAAI,KAAK,gBAAgB,IAAI,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACjG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,mBAAmB,cAAc,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;gBAChF,CAAC;gBACD,OAAO;YACT,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,OAAO,GAAG,KAAK,CAAC,OAMT,CAAC;gBACd,+CAA+C;gBAC/C,IAAI,SAAS,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,EAAE,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;oBAC9E,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;oBACpC,QAAQ,CACN,SAAS,EACT,KAAK,EACL,iBAAiB,KAAK,EAAE,EAAE,IAAI,GAAG,WAAW,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC/F,CAAC;oBACF,0CAA0C;oBAC1C,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,oBAAoB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtG,CAAC;gBACD,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;oBAAE,OAAO;gBACrF,QAAQ,CACN,OAAO,EACP,KAAK,EACL,sBAAsB,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,kBAAkB,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,UAAU,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,SAAS,OAAO,CAAC,UAAU,IAAI,GAAG,EAAE,CAC5K,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,sBAAsB,CAAC,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,QAAQ,CACN,MAAM,EACN,MAAM,EACN,kBAAkB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAC3G,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,MAA2C,CAAC;gBACjE,+BAA+B;gBAC/B,IAAI,QAAgB,CAAC;gBACrB,IAAI,CAAC;oBACH,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACnE,CAAC;gBAAC,MAAM,CAAC;oBACP,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC3C,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CACN,MAAM,EACN,MAAM,EACN,oBAAoB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,YAAY,CAAC,QAAQ,CAAC,EAAE,CAC9I,CAAC;gBACJ,CAAC;gBACD,IAAI,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,EAAE,CAAC;oBAChE,QAAQ,CACN,OAAO,EACP,OAAO,EACP,qCAAqC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAC7E,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YACD,KAAK,kBAAkB;gBACrB,IAAI,MAAM;oBAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,2BAA2B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACxF,OAAO;YACT,KAAK,gBAAgB;gBACnB,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CACN,MAAM,EACN,MAAM,EACN,yBAAyB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CACtH,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,KAAK,kBAAkB;gBACrB,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CACN,MAAM,EACN,MAAM,EACN,4BAA4B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAClH,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,KAAK,gBAAgB;gBACnB,IAAI,MAAM;oBAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,0BAA0B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACxF,OAAO;YACT,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAuB,CAAC,IAAI,KAAK,WAAW,CAEjF,CAAC;gBACd,IAAI,IAAI,EAAE,UAAU,KAAK,OAAO,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;oBACnE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,oBAAoB,IAAI,CAAC,UAAU,YAAY,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC;gBACrG,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;gBACnC,CAAC;gBACD,OAAO;YACT,CAAC;YACD;gBACE,OAAO;QACX,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,iCAAiC;AAEjC,wDAAwD;AACxD,SAAS,cAAc,CAAC,EAAU,EAAE,OAA+B;IACjE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,KAAK,MAAM,CAAC,IAAI,OAAO;gBAAE,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjE,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,YAA4C;IACzE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,0DAA0D;AAE1D;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAAsB,EAAE;IACtD,OAAO,KAAK,EAAE,CAAC,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QAExC,2CAA2C;QAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B;QAC5E,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,iDAAiD;QAC1F,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;QAErD,8CAA8C;QAC9C,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,8BAA8B,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,MAAM,GAAsB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;YAEvG,gDAAgD;YAChD,IAAI,WAA+B,CAAC;YACpC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC/D,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBAClB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,UAAU,eAAe,CAAC,CAAC;gBACrF,CAAC;gBACD,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1B,CAAC;YAED,2DAA2D;YAC3D,IAAI,OAAuB,CAAC;YAC5B,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAClF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,sBAAsB,EAAE,CAAC;oBAC1C,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,qBAAqB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/D,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;YACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;YACxE,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5D,MAAM,IAAI,SAAS,CACjB,GAAG,EACH,qBAAqB,EACrB,OAAO,KAAK,CAAC,QAAQ,gCAAgC,CACtD,CAAC;YACJ,CAAC;YAED,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,oBAAoB,CAAC;YACjD,0DAA0D;YAC1D,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,KAAK,SAAS,OAAO,OAAO,EAAE,CAAC;YACpG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAChD,4EAA4E;YAC5E,MAAM,iBAAiB,GAAyB;gBAC9C,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE;gBACxD,eAAe,EAAE,GAAG,EAAE,CACpB,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE;oBACxD,mBAAmB,EAAE,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC;iBACjE,CAAC;gBACJ,UAAU,EAAE,gBAAgB,EAAE;aAC/B,CAAC;YAEF,gDAAgD;YAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACjB,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,OAAO,SAAS,CACd,CAAC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;gBACf,0BAA0B;gBAC1B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,GAAS,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnD,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,4BAA4B;gBAC5D,CAAC,CAAC;gBACF,gEAAgE;gBAChE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACvB,gFAAgF;gBAChF,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnE,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAkE,CAAC;gBACxF,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;oBACpC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC3B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBAED,kCAAkC;gBAClC,MAAM,UAAU,GAAG,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAC1D,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,OAAO;oBACtC,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAClF,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,EAAE,CAAC,CAAC,sBAAsB;oBAClC,CAAC;gBACH,CAAC,CAAC;gBAEF,4CAA4C;gBAC5C,MAAM,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;gBAC5C,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;oBAC5B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC;oBAChE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACrC,MAAM,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;wBACnE,MAAM,cAAc,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;wBACpE,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;4BAAE,OAAO;wBACtE,MAAM,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;wBACpC,gDAAgD;wBAChD,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;4BAAE,OAAO;oBACxC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,WAAqC,CAAC;gBAC1C,IAAI,CAAC;oBACH,iCAAiC;oBACjC,MAAM,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;oBAEhD,iDAAiD;oBACjD,oBAAoB,CAAC,SAAS,CAAC,CAAC;oBAChC,OAAO,GAAG,IAAI,CAAC;oBACf,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;wBAChD,QAAQ,CAAC,KAAqC,CAAC,CAAC;wBAChD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;wBACnD,IAAI,KAAK,KAAK,IAAI;4BAAE,OAAO;wBAC3B,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B;oBACvD,CAAC,CAAC,CAAC;oBAEH,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACzC,MAAM,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACtC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,0DAA0D;oBAC1D,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,OAAO,EAAE,CAAC,CAAC;oBACjD,MAAM,UAAU,CAAC;wBACf,KAAK,EAAE,WAAW;wBAClB,IAAI,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,EAAE;qBAC9F,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,WAAW,EAAE,EAAE,CAAC;oBAChB,+CAA+C;oBAC/C,4CAA4C;oBAC5C,IAAI,OAAO;wBAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;oBAC7C,OAAO,EAAE,CAAC;oBACV,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,aAAa;oBACpC,MAAM,SAAS,CAAC;oBAChB,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;wBAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,aAAa;oBAC3D,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;gBACvB,CAAC;YACH,CAAC;YACD,oDAAoD;YACpD,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;gBACpB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,QAAQ,CAAC;wBACpB,KAAK,EAAE,WAAW;wBAClB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,UAAU,EAAE,OAAO;4BACnB,YAAY,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW;yBAC/D,CAAC;qBACH,CAAC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC;oBACP,cAAc;gBAChB,CAAC;YACH,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iCAAiC;YACjC,OAAO,EAAE,CAAC;YACV,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,mCAAmC;AAEnC;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAC9B,MAAyB,EACzB,SAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChE,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IACjE,OAAO;QACL,WAAW,EAAE,QAAQ,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,4BAA4B,CAAC;QAC3F,YAAY,EAAE,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;KAC5D,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,mBAAmB,CAAC,YAA0B;IAC3D,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACnF,MAAM,aAAa,GACjB,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IAC/G,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3G,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;AACxD,CAAC;AAED,iCAAiC;AAEjC;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAsB,EAAE;IACvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;IAE1B,6CAA6C;IAC7C,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,MAAM,GAAsB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;QACvG,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,8DAA8D;YAC/E,GAAG,CAAC,MAAM,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;SACvC,CAAC,CAAC,CACJ,CAAC;QACF,OAAO,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,yDAAyD;IACzD,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/C,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,eAAe,EAAE,CAAC,CAAC,iCAAiC;QAC/E,MAAM,KAAK,GAAc,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE;YACpD,mBAAmB,EAAE,qBAAqB,CAAC,YAAY,CAAC;SACzD,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAC7D,OAAO,gBAAgB,CAAC,CAAC,EAAE,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IACrG,CAAC,CAAC,CAAC;IAEH,8EAA8E;IAC9E,MAAM,CAAC,GAAG,CAAC,4CAA4C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACnE,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE3C,MAAM,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACxF,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAC5E,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,oBAAoB,EAAE,YAAY,UAAU,QAAQ,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,2CAA2C;IAC3C,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,uBAAuB,SAAS,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/D,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;YACxB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,UAAU,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IAExC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,0CAA0C;AAC1C,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;AAE7C;;;GAGG;AACH,SAAS,gBAAgB,CAAC,CAAU,EAAE,QAAmB;IACvD,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,CAAU,EACV,SAAiB,EACjB,QAAmB,EACnB,KAAgB,EAChB,YAA0C;IAE1C,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CACX,EAAE,CACA,qBAAqB,CAAC,KAAK,CAAC;YAC1B,SAAS;YACT,QAAQ;YACR,KAAK;YACL,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;SACxD,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAU,EAAE,QAAgB;IACpD,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,CAAU;IACvC,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjH,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/routes/project.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/routes/project.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAmE1C,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAExD;AAED,iDAAiD;AACjD,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAE9C;AAED,wCAAwC;AACxC,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkBzD;AAED,yCAAyC;AACzC,eAAO,MAAM,aAAa,4EAAa,CAAC;AA8RxC;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAkBD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAevE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAOhE"}
|
package/dist/routes/project.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// 项目路由(S1.2):POST /create、POST /open、POST /close、GET/PUT /config、GET /export、
|
|
2
|
-
// POST /import、GET /backups + POST /backup + POST /backup/rename + POST /backup/restore
|
|
2
|
+
// GET /export-novel、POST /import、GET /backups + POST /backup + POST /backup/rename + POST /backup/restore
|
|
3
3
|
// (B2.2 + B2.6)
|
|
4
4
|
//
|
|
5
5
|
// 校验失败统一 400 INVALID_PROJECT_PATH(shared ErrorCode)。
|
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
import { basename, dirname, isAbsolute, join, resolve } from "node:path";
|
|
9
9
|
import { existsSync, mkdirSync, readdirSync, realpathSync, renameSync, rmSync, } from "node:fs";
|
|
10
10
|
import { Hono } from "hono";
|
|
11
|
-
import {
|
|
11
|
+
import { strToU8, zipSync } from "fflate";
|
|
12
|
+
import { buildNovelChapterMarkdown, buildNovelExportEntries, mapProjectFileToConfig, novelExportZipFileName, numberVisibleOutline, orderVisibleChapters, } from "@whispering233/ai-editor-shared";
|
|
12
13
|
import { SchemaVersionError } from "@whispering233/ai-editor-db";
|
|
13
14
|
import { closeDatabase, openDatabase } from "@whispering233/ai-editor-db";
|
|
14
15
|
import { OUTLINE_FILE_NAME } from "@whispering233/ai-editor-db";
|
|
15
16
|
import { PROJECT_FILE_NAME } from "@whispering233/ai-editor-db";
|
|
16
17
|
import { DATA_DB_FILE_NAME } from "@whispering233/ai-editor-db";
|
|
17
|
-
import { agentsFileMtimeIso, findOutlineNode, readAgentsFile, readOutlineFile, readProjectFile, writeAgentsFile, writeProjectFile, } from "@whispering233/ai-editor-db";
|
|
18
|
+
import { agentsFileMtimeIso, findOutlineNode, getDocumentTexts, readAgentsFile, readOutlineFile, readProjectFile, writeAgentsFile, writeProjectFile, } from "@whispering233/ai-editor-db";
|
|
18
19
|
import { nowIso } from "@whispering233/ai-editor-db";
|
|
19
20
|
import { projectAgentsGetResSchema, projectAgentsPutReqSchema, projectAgentsPutResSchema, projectBackupRenameReqSchema, projectBackupReqSchema, projectConfigUpdateReqSchema, projectCreateReqSchema, projectDeleteReqSchema, projectListResSchema, projectOpenReqSchema, } from "@whispering233/ai-editor-shared/schemas";
|
|
20
21
|
import { createBackupZip, listBackups, migratePromptToAgents, overwriteProjectFiles, renameBackup, restoreBackup, snapshotBookDir, validateBackupPackage, writeBackup, writeProjectFilesFromBackup } from "../backup.js";
|
|
@@ -299,6 +300,35 @@ projectRoutes.get("/export", (c) => {
|
|
|
299
300
|
c.header("Content-Disposition", `attachment; filename="book.zip"; filename*=UTF-8''${encodeURIComponent(fileName)}`);
|
|
300
301
|
return c.body(zipData);
|
|
301
302
|
});
|
|
303
|
+
// GET /api/v1/project/export-novel —— 导出当前项目正文为 markdown 小说文档 zip
|
|
304
|
+
//
|
|
305
|
+
// 契约:`docs/api/10-api-project.md` §GET /api/v1/project/export-novel。编号 / 命名 / 章正文组装
|
|
306
|
+
// **一律走 shared 纯函数**(`numberVisibleOutline` / `buildNovelExportEntries` /
|
|
307
|
+
// `buildNovelChapterMarkdown` / `novelExportZipFileName`)——服务端不复刻任何规则。
|
|
308
|
+
// 流程:requireCurrentProject(无项目 → 409,与 /config 一致)→ 读 outline.json 派生展示编号 →
|
|
309
|
+
// 无可见章 → 400(不产空包)→ 一次 IN 查询取 `content_text` 投影(不读块 JSON)→ zipSync。
|
|
310
|
+
// 只读 data.db:**不做 wal_checkpoint**、不写项目目录任何文件(投影已在库内,无需合并 WAL)。
|
|
311
|
+
projectRoutes.get("/export-novel", (c) => {
|
|
312
|
+
const project = requireCurrentProject();
|
|
313
|
+
const numbering = numberVisibleOutline(readOutlineFile(project.root));
|
|
314
|
+
if (numbering.chapters.length === 0) {
|
|
315
|
+
throw new HttpError(400, "VALIDATION_ERROR", "本书还没有章节");
|
|
316
|
+
}
|
|
317
|
+
const texts = getDocumentTexts(project.db, "chapter", numbering.chapters.map((chapter) => chapter.chapterId));
|
|
318
|
+
const zipEntries = {};
|
|
319
|
+
for (const entry of buildNovelExportEntries(project.config.name, numbering)) {
|
|
320
|
+
zipEntries[entry.path] =
|
|
321
|
+
entry.kind === "dir"
|
|
322
|
+
? new Uint8Array(0) // 无可见章的卷:显式空目录条目(条目名隐含目录)
|
|
323
|
+
: strToU8(buildNovelChapterMarkdown(entry.chapterLabel, entry.chapterTitle, texts.get(entry.chapterId) ?? ""));
|
|
324
|
+
}
|
|
325
|
+
const zipData = zipSync(zipEntries, { level: 6 });
|
|
326
|
+
// Content-Disposition:ASCII fallback + RFC 5987 filename*(中文/空格书名编码安全,同 /export)
|
|
327
|
+
const fileName = novelExportZipFileName(project.config.name);
|
|
328
|
+
c.header("Content-Type", "application/zip");
|
|
329
|
+
c.header("Content-Disposition", `attachment; filename="book.zip"; filename*=UTF-8''${encodeURIComponent(fileName)}`);
|
|
330
|
+
return c.body(zipData);
|
|
331
|
+
});
|
|
302
332
|
// ============ 导入与备份管理(B2.2) ============
|
|
303
333
|
/** 上传大小上限(50MB;ora-4 复核保留——zip 含 data.db,正常项目远小于此) */
|
|
304
334
|
const MAX_IMPORT_SIZE = 50 * 1024 * 1024;
|
|
@@ -499,7 +529,7 @@ projectRoutes.put("/config", async (c) => {
|
|
|
499
529
|
if (!parsed.success) {
|
|
500
530
|
throw parsed.error;
|
|
501
531
|
}
|
|
502
|
-
const { name, language, current_position, backup_frequency_minutes } = parsed.data;
|
|
532
|
+
const { name, language, current_position, backup_frequency_minutes, deduction_nodes } = parsed.data;
|
|
503
533
|
// current_position 校验:须指向存在的**非软删**大纲节点;
|
|
504
534
|
// 400 + OUTLINE_NODE_NOT_FOUND(参数语义错误用 400,非资源访问 404)
|
|
505
535
|
if (current_position !== undefined && current_position !== null) {
|
|
@@ -514,6 +544,31 @@ projectRoutes.put("/config", async (c) => {
|
|
|
514
544
|
throw new HttpError(400, "VALIDATION_ERROR", `current_position 须指向章节点(卷/场景不承载写作进度): ${current_position}`);
|
|
515
545
|
}
|
|
516
546
|
}
|
|
547
|
+
// deduction_nodes 校验(同 current_position 口径):逐 id 须存在 + 未软删 + 是 **章**,且落在**可见章序**内;
|
|
548
|
+
// 不存在 / 不可见(自身软删,或所属卷被软删 ⇒ 整棵子树软删)→ 400 OUTLINE_NODE_NOT_FOUND;
|
|
549
|
+
// 非章(卷/场景)→ 400 VALIDATION_ERROR
|
|
550
|
+
let normalizedDeductionNodes;
|
|
551
|
+
if (deduction_nodes !== undefined) {
|
|
552
|
+
const tree = readOutlineFile(project.root);
|
|
553
|
+
const visibleChapters = orderVisibleChapters(tree); // 唯一编号口径(shared)
|
|
554
|
+
const visible = new Set(visibleChapters);
|
|
555
|
+
for (const nodeId of deduction_nodes) {
|
|
556
|
+
const node = findOutlineNode(tree, nodeId);
|
|
557
|
+
if (node === undefined || node.deleted === true) {
|
|
558
|
+
throw new HttpError(400, "OUTLINE_NODE_NOT_FOUND", `deduction_nodes 指向的大纲节点不存在或已软删: ${nodeId}`);
|
|
559
|
+
}
|
|
560
|
+
if (node.type !== "chapter") {
|
|
561
|
+
throw new HttpError(400, "VALIDATION_ERROR", `deduction_nodes 须指向章节点(卷/场景不承载推演标记): ${nodeId}`);
|
|
562
|
+
}
|
|
563
|
+
// 章但不可见(所属卷被软删 ⇒ 整棵子树软删):同样视为已失效
|
|
564
|
+
if (!visible.has(nodeId)) {
|
|
565
|
+
throw new HttpError(400, "OUTLINE_NODE_NOT_FOUND", `deduction_nodes 指向的大纲节点不可见(所属卷已软删): ${nodeId}`);
|
|
566
|
+
}
|
|
567
|
+
}
|
|
568
|
+
// 归一:去重 + 按可见章先序(库里不表达标记先后)——可见章序上过滤,天然去重且保序
|
|
569
|
+
const marked = new Set(deduction_nodes);
|
|
570
|
+
normalizedDeductionNodes = visibleChapters.filter((id) => marked.has(id));
|
|
571
|
+
}
|
|
517
572
|
// 合并更新 + 刷新 updated_at(时间 ISO 8601 应用层写入),写盘并同步内存
|
|
518
573
|
// backup_frequency_minutes 写侧「只写显式」:未在 patch 中出现不写盘——
|
|
519
574
|
// 旧项目文件缺字段时不因无关更新被补写成缺省值(读侧兜底 10 不落盘,避免污染旧数据);
|
|
@@ -524,6 +579,7 @@ projectRoutes.put("/config", async (c) => {
|
|
|
524
579
|
...(language !== undefined ? { language } : {}),
|
|
525
580
|
...(current_position !== undefined ? { current_position } : {}),
|
|
526
581
|
...(backup_frequency_minutes !== undefined ? { backup_frequency_minutes } : {}),
|
|
582
|
+
...(normalizedDeductionNodes !== undefined ? { deduction_nodes: normalizedDeductionNodes } : {}),
|
|
527
583
|
updated_at: nowIso(),
|
|
528
584
|
};
|
|
529
585
|
writeProjectFile(project.root, next);
|