pi-courier 0.1.43 → 0.1.45

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.
Files changed (40) hide show
  1. package/README.md +17 -0
  2. package/README.zh-CN.md +17 -0
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +13 -0
  5. package/dist/config.js.map +1 -1
  6. package/dist/rpc/message-router.d.ts +13 -1
  7. package/dist/rpc/message-router.d.ts.map +1 -1
  8. package/dist/rpc/message-router.js +66 -3
  9. package/dist/rpc/message-router.js.map +1 -1
  10. package/dist/rpc/pmctl-controller.d.ts +3 -2
  11. package/dist/rpc/pmctl-controller.d.ts.map +1 -1
  12. package/dist/rpc/pmctl-controller.js +7 -2
  13. package/dist/rpc/pmctl-controller.js.map +1 -1
  14. package/dist/rpc/pmctl-controller.test.d.ts +2 -0
  15. package/dist/rpc/pmctl-controller.test.d.ts.map +1 -0
  16. package/dist/rpc/pmctl-controller.test.js +40 -0
  17. package/dist/rpc/pmctl-controller.test.js.map +1 -0
  18. package/dist/setup.d.ts.map +1 -1
  19. package/dist/setup.js +15 -0
  20. package/dist/setup.js.map +1 -1
  21. package/dist/standalone.d.ts.map +1 -1
  22. package/dist/standalone.js +12 -0
  23. package/dist/standalone.js.map +1 -1
  24. package/dist/transports/attachments.d.ts +54 -0
  25. package/dist/transports/attachments.d.ts.map +1 -0
  26. package/dist/transports/attachments.js +143 -0
  27. package/dist/transports/attachments.js.map +1 -0
  28. package/dist/transports/matrix-utils.d.ts +55 -0
  29. package/dist/transports/matrix-utils.d.ts.map +1 -1
  30. package/dist/transports/matrix-utils.js +75 -7
  31. package/dist/transports/matrix-utils.js.map +1 -1
  32. package/dist/transports/matrix-utils.test.js +94 -3
  33. package/dist/transports/matrix-utils.test.js.map +1 -1
  34. package/dist/transports/matrix.d.ts +30 -0
  35. package/dist/transports/matrix.d.ts.map +1 -1
  36. package/dist/transports/matrix.js +127 -14
  37. package/dist/transports/matrix.js.map +1 -1
  38. package/dist/types.d.ts +39 -0
  39. package/dist/types.d.ts.map +1 -1
  40. package/package.json +1 -1
package/README.md CHANGED
@@ -95,6 +95,8 @@ Matrix homeserver URL (如 https://matrix.example.com): ← 输入,如 https:/
95
95
  信任房间 ID(可选,回车跳过;多个逗号分隔,如 !abc:server 或 !abc:server:mentions): ← for group chats; default mode trusted-only; skip or use /enable later
96
96
  启用 E2EE 加密? [y/N]: ← y/n(非加密房间也选 y 无妨)
97
97
  pi 工作目录 [默认 /home/you/Projects]: ← Enter 或输入其他目录
98
+ 附件保存目录 [默认 /home/you/.pi/pi-courier-attachments]: ← where chat images/files land; Enter for default
99
+ 单个附件大小上限 MB [默认 10]: ← oversize attachments are rejected with a notice
98
100
  实例名/机器名 [默认 debian]: ← distinguish multiple deployments; shown in the management room name
99
101
  启用多工程模式? [y/N]: ← default N = single-project (one bot ↔ one pi); y = multi-project (management + project rooms)
100
102
  启用空间组织? [Y/n]: ← only asked with multi-project; fresh configs default Y — all bot-created rooms are grouped into one Element space (see below)
@@ -228,6 +230,21 @@ Gate: admin + management room only (single-project mode: your DM with the bot).
228
230
 
229
231
  Reply (Matrix reply) to an earlier **user** message — e.g. one of your own long prompts — and send the new instruction: a one-line excerpt (≈200 chars) of the referenced text is prepended to the prompt, so "这个" / "the one above" resolve for the agent. The excerpt cache is per-room, in-memory, 50 most recent messages; the bot's own replies are not cached, and quotes that miss (too old, or from before a restart) are silently ignored — the message just goes out without the prefix.
230
232
 
233
+ ### Sending images and files to the agent
234
+
235
+ Just **paste or send files** in Element — the bot saves them first, the agent reads them after:
236
+
237
+ 1. Paste an image (or send a file) → the bot replies `📎 附件已保存: <absolute path>` and does **not** wake the agent;
238
+ 2. Send a text instruction next → the path is prepended to the prompt automatically, and the agent reads it with its `read` tool (same workflow as pi TUI's `@path`), combining the attachment with your instruction.
239
+
240
+ Supported: `m.image` / `m.file` / `m.audio` / `m.video` / stickers. Images are handed to the vision model by pi (its `read` pipeline downscales large images before the model call, per pi's own source); audio/video can't be ingested by models directly, but the agent can process them with bash/ffmpeg. Limits and details:
241
+
242
+ - **10 MB per attachment** (configurable via `attachments.maxMb`, also in the setup wizard); oversize/download failures answer with the reason — never silence
243
+ - Attachments land in `~/.pi/pi-courier-attachments/<room>/` (configurable via `attachments.directory`) — **outside your project workdirs**, so `git status` stays clean
244
+ - Pending attachments are tracked per room+sender: `/pmctl`, `/login` and other commands don't consume the queue; a **restart clears it** (the receipt shows the path — reference it manually if needed)
245
+ - Encrypted rooms (E2EE) are supported — attachments are decrypted automatically
246
+ - Unsupported types (e.g. location) get a polite notice; if the model itself lacks vision, pi will say so — that's the model, not the bridge
247
+
231
248
  **Group chats**: rooms with **more than 2 members** are silent by default — the bot posts a one-time hint when invited, then answers nothing until enabled. **Enable without the room ID**: send `/enable <all|mentions|trusted-only>` right in the group (trusted users only, defaults to `trusted-only`), or in a DM with `/enable <roomId> <mode>` (or add it during `setup`). Two-person rooms (you + the bot) answer automatically. Room IDs look like `!xxx:server`.
232
249
 
233
250
  ### Single-project vs multi-project mode
package/README.zh-CN.md CHANGED
@@ -95,6 +95,8 @@ Matrix homeserver URL (如 https://matrix.example.com): ← 输入,如 https:/
95
95
  信任房间 ID(可选,回车跳过;多个逗号分隔,如 !abc:server 或 !abc:server:mentions): ← 群聊用;默认模式 trusted-only;可跳过,之后用 /enable 添加
96
96
  启用 E2EE 加密? [y/N]: ← y/n(非加密房间选 y 也没问题)
97
97
  pi 工作目录 [默认 /home/你/Projects]: ← 回车或输入其他目录
98
+ 附件保存目录 [默认 /home/你/.pi/pi-courier-attachments]: ← 聊天里发的图片/文件落盘处;回车用默认
99
+ 单个附件大小上限 MB [默认 10]: ← 超限附件会被明确拒绝
98
100
  实例名/机器名 [默认 debian]: ← 多台部署用来区分;将显示在管理房间名
99
101
  启用多工程模式? [y/N]: ← 默认 N=单工程(一个 bot 对应一个 pi);y=多工程(管理房间+项目房间)
100
102
  启用空间组织? [Y/n]: ← 仅多工程时询问;全新配置默认 Y —— bot 创建的房间统一收纳进一个 Element 空间(见下文)
@@ -270,6 +272,21 @@ pi-courier enable # 安装 systemd 服务:开机自启 + 立即启动
270
272
 
271
273
  在房间里回复(reply)一条更早的**用户**消息(比如你自己之前发的长指令)再发新指令:被引用原文的单行摘录(约 200 字)会自动拼进 prompt 前缀,让 agent 能理解"这个""上面那个"的指代。摘录缓存是每房间独立的内存缓存(最近 50 条);bot 自己的回复不入缓存,未命中的引用(太旧、或重启之前的消息)静默忽略 —— 消息照常发出,只是没有前缀。
272
274
 
275
+ ### 发送图片和文件给 agent
276
+
277
+ 在 Element 里**直接粘贴/发送文件**即可 —— bot 先保存,再由 agent 查看:
278
+
279
+ 1. 粘贴图片(或发文件)→ bot 回执 `📎 附件已保存: <绝对路径>`,**不会**惊动 agent;
280
+ 2. 随后发一条文字说明 → 路径自动拼进 prompt,agent 用 `read` 工具查看(与 pi TUI 的 `@路径` 工作流一致),结合图和说明开始干活。
281
+
282
+ 支持类型:`m.image` / `m.file` / `m.audio` / `m.video` / 贴纸。图片由 pi 读取后交给视觉模型(其 read 管线自带缩放,发送前压大图,见 pi 源码);音频视频模型吃不下,但 agent 可以用 bash/ffmpeg 自行处理。限制与细节:
283
+
284
+ - **单个附件上限 10 MB**(可配 `attachments.maxMb`,setup 向导可改);超限/下载失败会回执原因,**不静默**
285
+ - 附件统一存到 `~/.pi/pi-courier-attachments/<房间>/`(可配 `attachments.directory`),**不进项目工作区**,不会弄脏 `git status`
286
+ - 待处理附件按"房间+发送者"记账:`/pmctl`、`/login` 等命令不消耗清单;**重启后清单清空**(回执里有路径,可手动引用)
287
+ - 加密房间(E2EE)同样支持,附件自动解密
288
+ - 位置消息等不支持的类型会收到礼貌提示;模型本身不支持视觉时,pi 会告知看不了图 —— 这是模型能力,与桥无关
289
+
273
290
  ### 服务管理
274
291
 
275
292
  ```bash
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAKlD;;GAEG;AACH,wBAAgB,UAAU,IAAI,eAAe,CA4D5C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAUxD;AAED;oEACoE;AACpE,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;wDAEwD;AACxD,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;gDAEgD;AAChD,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAEzD;AAED;;6DAE6D;AAC7D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED;;;;;;;;;GASG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAkB;IAEhC,mFAAmF;gBACvE,OAAO,CAAC,EAAE,eAAe;IAIrC;sDACkD;IAClD,GAAG,IAAI,eAAe;IAItB,sEAAsE;IACtE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;CAI9C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAKlD;;GAEG;AACH,wBAAgB,UAAU,IAAI,eAAe,CA0E5C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAUxD;AAED;oEACoE;AACpE,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;wDAEwD;AACxD,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;gDAEgD;AAChD,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAEzD;AAED;;6DAE6D;AAC7D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED;;;;;;;;;GASG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAkB;IAEhC,mFAAmF;gBACvE,OAAO,CAAC,EAAE,eAAe;IAIrC;sDACkD;IAClD,GAAG,IAAI,eAAe;IAItB,sEAAsE;IACtE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;CAI9C"}
package/dist/config.js CHANGED
@@ -56,6 +56,19 @@ export function loadConfig() {
56
56
  if (process.env.PI_WORKDIR) {
57
57
  config.workdir = process.env.PI_WORKDIR;
58
58
  }
59
+ // Attachment intake (issue #66): root dir + per-file size cap in MB.
60
+ if (process.env.PI_ATTACHMENTS_DIR) {
61
+ config.attachments = {
62
+ ...(config.attachments ?? {}),
63
+ directory: process.env.PI_ATTACHMENTS_DIR,
64
+ };
65
+ }
66
+ if (process.env.PI_ATTACHMENTS_MAX_MB) {
67
+ const mb = Number.parseInt(process.env.PI_ATTACHMENTS_MAX_MB, 10);
68
+ if (Number.isFinite(mb) && mb > 0) {
69
+ config.attachments = { ...(config.attachments ?? {}), maxMb: mb };
70
+ }
71
+ }
59
72
  // Log level via env (debug/info/warn/error)
60
73
  if (process.env.PI_LOG_LEVEL) {
61
74
  config.logLevel = process.env.PI_LOG_LEVEL;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { type ChallengeAuth } from "../auth/challenge-auth.js";
10
10
  import { LoginManager } from "../auth/headless-login.js";
11
11
  import { type ConfigStore } from "../config.js";
12
12
  import type { RoomOps } from "../transports/interface.js";
13
- import type { ExternalMessage, MsgBridgeConfig } from "../types.js";
13
+ import type { ExternalMessage, MessageAttachment, MsgBridgeConfig } from "../types.js";
14
14
  import type { PiRpc } from "./pi-rpc.js";
15
15
  import type { PmctlController } from "./pmctl-controller.js";
16
16
  import type { ProjectManager } from "./project-manager.js";
@@ -113,5 +113,17 @@ export declare function withQuotePrefix(text: string, quoted?: {
113
113
  username: string;
114
114
  excerpt: string;
115
115
  }): string;
116
+ /**
117
+ * 附件路径注入(issue #66 票1):把待处理清单里的附件以绝对路径列表的形式
118
+ * 放在用户原文前 — pi 按原生工作流用 read 工具查看文件(与 TUI 的 @路径
119
+ * 一致)。纯函数,router 测试直接断言其输出。
120
+ */
121
+ export declare function withAttachmentPrefix(text: string, attachments?: MessageAttachment[]): string;
122
+ /** 附件清单的记账键:房间 + 发送者(群聊里甲的图不被乙的消息消耗)。 */
123
+ export declare function attachmentLedgerKey(chatId: string, userId: string): string;
124
+ /** 保存成功回执(issue #66 票1):路径可见,清单状态不静默。 */
125
+ export declare function attachmentSavedReply(attachment: MessageAttachment): string;
126
+ /** 附件失败回执:transport 给出的原因原样透传(下载/解密/超限各有文案)。 */
127
+ export declare function attachmentErrorReply(reason: string): string;
116
128
  export declare function createMessageRouter(deps: MessageRouterDeps): MessageRouter;
117
129
  //# sourceMappingURL=message-router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-router.d.ts","sourceRoot":"","sources":["../../src/rpc/message-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-router.d.ts","sourceRoot":"","sources":["../../src/rpc/message-router.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import { extractTextFromMessage, formatToolCalls, hasToolCalls, splitMessage, }
14
14
  import { isEnabled, logger } from "../logger.js";
15
15
  import { buildManagementRoomHelp, managementRoomName } from "../management-room.js";
16
16
  import { demoteTrustedUserEverywhere, inviteUserToManagementRoomOnce, inviteUserToSpaceOnce } from "../space.js";
17
+ import { formatBytes } from "../transports/attachments.js";
17
18
  import { handleSlashCommand } from "./command-map.js";
18
19
  /** Format a completed turn into reply text. Returns text = null when the turn
19
20
  * has no replyable content (the binding is kept for the follow-up turn).
@@ -108,6 +109,29 @@ export function withQuotePrefix(text, quoted) {
108
109
  return text;
109
110
  return `「@${quoted.username}: ${quoted.excerpt}」\n${text}`;
110
111
  }
112
+ /**
113
+ * 附件路径注入(issue #66 票1):把待处理清单里的附件以绝对路径列表的形式
114
+ * 放在用户原文前 — pi 按原生工作流用 read 工具查看文件(与 TUI 的 @路径
115
+ * 一致)。纯函数,router 测试直接断言其输出。
116
+ */
117
+ export function withAttachmentPrefix(text, attachments) {
118
+ if (!attachments?.length)
119
+ return text;
120
+ const lines = attachments.map((a) => `- ${a.path}`);
121
+ return `用户发来附件(请用 read 工具查看):\n${lines.join("\n")}\n\n${text}`;
122
+ }
123
+ /** 附件清单的记账键:房间 + 发送者(群聊里甲的图不被乙的消息消耗)。 */
124
+ export function attachmentLedgerKey(chatId, userId) {
125
+ return `${chatId}\u0000${userId}`;
126
+ }
127
+ /** 保存成功回执(issue #66 票1):路径可见,清单状态不静默。 */
128
+ export function attachmentSavedReply(attachment) {
129
+ return `📎 附件已保存: ${attachment.path}(${formatBytes(attachment.bytes)})\n下一条消息发送时会自动附上它。`;
130
+ }
131
+ /** 附件失败回执:transport 给出的原因原样透传(下载/解密/超限各有文案)。 */
132
+ export function attachmentErrorReply(reason) {
133
+ return `❌ ${reason}`;
134
+ }
111
135
  export function createMessageRouter(deps) {
112
136
  const { projectManager, auth, sendReply, sendTyping, roomOps, store, pmctl, managementRoomAdoptionAllowed } = deps;
113
137
  const bindings = new WeakMap();
@@ -134,6 +158,11 @@ export function createMessageRouter(deps) {
134
158
  pendingQuestions.delete(rpc);
135
159
  }
136
160
  };
161
+ // 待处理附件清单(issue #66 票1):按 房间+发送者 记账,内存态 — 重启即清
162
+ // (每张回执都带路径,不构成数据丢失)。消耗规则:该发送者在同一条管道里
163
+ // 真正发给 pi 的下一条对话消息(prompt 唯一注入点)一次性带上全部并清空;
164
+ // 管理命令、登录/extension-ui 应答捕获都在注入点之前 return,天然不消耗。
165
+ const pendingAttachments = new Map();
137
166
  // Headless login (issue #55): /login /logout /auth + answer capture. The
138
167
  // default manager writes credentials straight to pi's auth.json via an
139
168
  // independent ModelRuntime (never through the RPC subprocesses).
@@ -243,7 +272,9 @@ export function createMessageRouter(deps) {
243
272
  return {
244
273
  async handleIncoming(msg) {
245
274
  const text = msg.content.trim();
246
- if (!text)
275
+ // 空文本本身直接返回 — 但带附件/失败/不支持标记的消息(如 m.location
276
+ // 没有 body)必须继续走,否则就是又一个静默吞消息的点(issue #66 票3)。
277
+ if (!text && !msg.attachments?.length && !msg.attachmentError && !msg.unsupportedType)
247
278
  return;
248
279
  // Project tagging (spec #34): a mapped room's lines carry its label;
249
280
  // everything else (single-project mode, DM, unmapped rooms) resolves to
@@ -258,6 +289,30 @@ export function createMessageRouter(deps) {
258
289
  }
259
290
  // Authorization (initiates 6-digit challenge for unknown users in DMs)
260
291
  const isAuthorized = await auth.checkAuthorization(msg.userId, msg.chatId, msg.username, msg.isGroupChat, msg.wasMentioned ?? false, async (cId, replyText) => sendReply(cId, msg.transport, replyText), msg.transport);
292
+ // 附件消息分流(issue #66 票1/票3):必须在斜杠/挑战码解析之前截住 —
293
+ // 文件名可能碰巧以 "/" 或 6 位数字开头。回执是 router 政策:未授权
294
+ // 用户与文本消息同等对待(静默丢弃,文件已落盘但不入清单)。
295
+ if (msg.attachments?.length || msg.attachmentError || msg.unsupportedType) {
296
+ if (!isAuthorized)
297
+ return;
298
+ if (msg.attachmentError) {
299
+ await sendReply(msg.chatId, msg.transport, attachmentErrorReply(msg.attachmentError));
300
+ return;
301
+ }
302
+ if (msg.unsupportedType) {
303
+ await sendReply(msg.chatId, msg.transport, `🤷 暂不支持的消息类型(${msg.unsupportedType}),已忽略。文字、图片和文件都可以直接发给我。`);
304
+ return;
305
+ }
306
+ const key = attachmentLedgerKey(msg.chatId, msg.userId);
307
+ const ledger = pendingAttachments.get(key) ?? [];
308
+ const incoming = msg.attachments;
309
+ for (const attachment of incoming) {
310
+ ledger.push(attachment);
311
+ await sendReply(msg.chatId, msg.transport, attachmentSavedReply(attachment));
312
+ }
313
+ pendingAttachments.set(key, ledger);
314
+ return;
315
+ }
261
316
  // Bridge admin commands + challenge codes in DMs.
262
317
  // /help is reserved for pi (the RPC command help also lists bridge commands).
263
318
  if (!msg.isGroupChat && (text.startsWith("/") || /^\d{6}$/.test(text))) {
@@ -465,9 +520,17 @@ export function createMessageRouter(deps) {
465
520
  }
466
521
  }
467
522
  // Plain message → prompt (a resolved reply quote is prepended — see
468
- // withQuotePrefix; command handling above saw the raw text).
523
+ // withQuotePrefix; command handling above saw the raw text). Pending
524
+ // attachments (issue #66 票1) ride along here and only here: the unique
525
+ // consumption point for the per-room+sender ledger. The ledger is
526
+ // cleared ONLY after the send succeeded — a failed prompt keeps the
527
+ // attachments parked so the retry carries them.
469
528
  try {
470
- await roomRpc.prompt(withQuotePrefix(text, msg.quoted));
529
+ const key = attachmentLedgerKey(msg.chatId, msg.userId);
530
+ const carried = pendingAttachments.get(key);
531
+ const pending = carried?.length ? carried : undefined;
532
+ await roomRpc.prompt(withAttachmentPrefix(withQuotePrefix(text, msg.quoted), pending));
533
+ pendingAttachments.delete(key);
471
534
  }
472
535
  catch (err) {
473
536
  await sendReply(msg.chatId, msg.transport, `❌ 无法发送给 pi: ${err.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"message-router.js","sourceRoot":"","sources":["../../src/rpc/message-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-router.js","sourceRoot":"","sources":["../../src/rpc/message-router.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAsB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAoB,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,YAAY,EACZ,YAAY,GACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAsB,MAAM,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACjH,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAG3D,OAAO,EAAE,kBAAkB,EAAsB,MAAM,kBAAkB,CAAC;AAyD1E;;;4EAG4E;AAC5E,MAAM,UAAU,cAAc,CAC5B,OAAyB,EACzB,aAAuB;IAEvB,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,aAAa,IAAI,CAAC,aAAa;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC/D,2EAA2E;IAC3E,2EAA2E;IAC3E,qEAAqE;IACrE,oEAAoE;IACpE,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,YAAY,IAAI,MAAM,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAC5D,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;AACpD,CAAC;AAkCD;;;;wDAIwD;AACxD,MAAM,UAAU,oBAAoB,CAAC,MAAuB;IAC1D,OAAO,CAAC,MAAM,CAAC,yBAAyB,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;AAC3D,CAAC;AAED,0EAA0E;AAC1E,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,OAAO,SAAS,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5E,CAAC;AAED;gFACgF;AAChF,MAAM,UAAU,uBAAuB,CAAC,OAA+B;IACrE,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,EAAE,GAAG,CAAC,CAAC;IACrD,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,KAAK,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,CAAC,sBAAsB,CAAC;QAClF,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;YAChF,OAAO,KAAK,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAC7D,CAAC;QACD,SAAS,iBAAiB;YACxB,OAAO,KAAK,KAAK,wBAAwB,CAAC;IAC9C,CAAC;AACH,CAAC;AASD;;;;kEAIkE;AAClE,MAAM,UAAU,sBAAsB,CAAC,OAA+B,EAAE,IAAY;IAClF,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC7C,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,KAAK;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;YAC9F,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YAC9F,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;QAC7D,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC1C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAE,EAAE,CAAC;YACvD,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,OAAO,CAAC,MAAM,kBAAkB,EAAE,CAAC;QACnF,CAAC;QACD,SAAS,mDAAmD;YAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAY,EACZ,MAA8C;IAE9C,IAAI,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO,IAAI,CAAC;IAClC,OAAO,KAAK,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,MAAM,IAAI,EAAE,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAY,EACZ,WAAiC;IAEjC,IAAI,CAAC,WAAW,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACpD,OAAO,0BAA0B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;AACjE,CAAC;AAED,yCAAyC;AACzC,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,MAAc;IAChE,OAAO,GAAG,MAAM,SAAS,MAAM,EAAE,CAAC;AACpC,CAAC;AAED,yCAAyC;AACzC,MAAM,UAAU,oBAAoB,CAAC,UAA6B;IAChE,OAAO,aAAa,UAAU,CAAC,IAAI,IAAI,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,oBAAoB,CAAC;AAC3F,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO,KAAK,MAAM,EAAE,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAuB;IACzD,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,EAAE,GAAG,IAAI,CAAC;IACnH,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAsB,CAAC;IACnD,MAAM,eAAe,GAAG,CAAC,GAAU,EAAE,WAAwB,EAAE,MAAe,EAAQ,EAAE;QACtF,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,yEAAyE;IACzE,6EAA6E;IAC7E,yEAAyE;IACzE,sEAAsE;IACtE,MAAM,YAAY,GAAG,IAAI,OAAO,EAAwB,CAAC;IAEzD,wEAAwE;IACxE,yDAAyD;IACzD,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAqC,CAAC;IAE1E,2EAA2E;IAC3E,2EAA2E;IAC3E,mEAAmE;IACnE,MAAM,aAAa,GAAG,CAAC,GAAU,EAAQ,EAAE;QACzC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,QAAQ,IAAI,KAAK;gBAAE,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC3D,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC;IAEF,+CAA+C;IAC/C,sCAAsC;IACtC,4CAA4C;IAC5C,iDAAiD;IACjD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA+B,CAAC;IAElE,yEAAyE;IACzE,uEAAuE;IACvE,iEAAiE;IACjE,MAAM,KAAK,GACT,IAAI,CAAC,KAAK;QACV,IAAI,YAAY,CAAC;YACf,SAAS;YACT,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE;YACvC,WAAW,EAAE,aAAa;SAC3B,CAAC,CAAC;IAEL;iFAC6E;IAC7E,MAAM,cAAc,GAAG,CAAC,GAAU,EAAE,KAA+B,EAAE,GAAkB,EAAQ,EAAE;QAC/F,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO,CAAC,wCAAwC;QAClE,KAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACxB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC;QAC1D,GAAG,CAAC,IAAI,CAAC,mCAAmC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;QACjE,GAAG,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;YACvF,GAAG,CAAC,KAAK,CAAC,+BAA+B,KAAK,CAAC,OAAO,CAAC,EAAE,MAAO,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,KAAK,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC;IAEF;;;wEAGoE;IACpE,MAAM,wBAAwB,GAAG,CAAC,OAA+B,EAAE,GAAU,EAAE,MAA+B,EAAE,GAAkB,EAAQ,EAAE;QAC1I,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;YACvB,KAAK,SAAS,CAAC;YACf,KAAK,QAAQ,CAAC;YACd,KAAK,OAAO,CAAC;YACb,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,GAAG,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,MAAM,sBAAsB,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC9E,GAAG,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;wBACjF,GAAG,CAAC,KAAK,CAAC,6BAA6B,OAAO,CAAC,EAAE,MAAO,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnF,CAAC,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,GAA6B;oBACtC,OAAO;oBACP,MAAM;oBACN,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,oBAAoB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;iBAC5F,CAAC;gBACF,yEAAyE;gBACzE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAClB,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACjC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC7F,GAAG,CAAC,KAAK,CAAC,kBAAkB,OAAO,CAAC,MAAM,gBAAgB,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;gBACzE,OAAO;YACT,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,mEAAmE;gBACnE,mEAAmE;gBACnE,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,IAAI,MAAM,CAAC;gBAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;gBACpD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;oBAC7C,IAAI,MAAM,EAAE,CAAC;wBACX,MAAM,IAAI,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC7C,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,IAAI,UAAU,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACzF,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,IAAI,CAAC,uBAAuB,KAAK,YAAY,OAAO,EAAE,CAAC,CAAC;oBAC9D,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;gBACrD,CAAC;gBACD,OAAO;YACT,CAAC;YACD;gBACE,yEAAyE;gBACzE,GAAG,CAAC,KAAK,CAAC,kBAAkB,OAAO,CAAC,MAAM,iBAAiB,CAAC,CAAC;gBAC7D,OAAO;QACX,CAAC;IACH,CAAC,CAAC;IAEF;;+EAE2E;IAC3E,MAAM,aAAa,GAAG,KAAK,EAAE,GAAU,EAAE,KAAiC,EAAE,KAA+B,EAAE,IAAY,EAAE,GAAoB,EAAE,GAAkB,EAAiB,EAAE;QACpL,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACtC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,OAAO,GACX,MAAM,CAAC,IAAI,KAAK,QAAQ;YACtB,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC3C,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW;gBAC3B,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;gBACvD,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,CAAC,EAAE,MAAO,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YACvF,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;YACpE,OAAO;QACT,CAAC;QACD,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACzF,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,CAAC,cAAc,CAAC,GAAoB;YACvC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAChC,4CAA4C;YAC5C,8CAA8C;YAC9C,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,GAAG,CAAC,eAAe;gBAAE,OAAO;YAE9F,qEAAqE;YACrE,wEAAwE;YACxE,kEAAkE;YAClE,MAAM,KAAK,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAEpC,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,SAAS,MAAM,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5G,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,SAAS,MAAM,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3G,CAAC;YAED,uEAAuE;YACvE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAChD,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,WAAW,EACf,GAAG,CAAC,YAAY,IAAI,KAAK,EACzB,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,EAClE,GAAG,CAAC,SAAS,CACd,CAAC;YAEF,4CAA4C;YAC5C,2CAA2C;YAC3C,gCAAgC;YAChC,IAAI,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;gBAC1E,IAAI,CAAC,YAAY;oBAAE,OAAO;gBAC1B,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;oBACxB,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;oBACtF,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;oBACxB,MAAM,SAAS,CACb,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,SAAS,EACb,gBAAgB,GAAG,CAAC,eAAe,yBAAyB,CAC7D,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,MAAM,GAAG,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxD,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC;gBACjC,KAAK,MAAM,UAAU,IAAI,QAAS,EAAE,CAAC;oBACnC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACxB,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC/E,CAAC;gBACD,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAED,kDAAkD;YAClD,8EAA8E;YAC9E,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACvE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;oBACjD,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE;wBACtC,IAAI;wBACJ,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,aAAa,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,aAAa;qBACzC,CAAC,CAAC;oBACH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;4BACvC,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;wBACxD,CAAC;wBACD,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;4BAChD,MAAM,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;wBACtE,CAAC;wBACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;4BACpC,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gCAClC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;4BAC9C,CAAC;iCAAM,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gCAC3C,KAAK,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;4BAChD,CAAC;iCAAM,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,EAAE,CAAC;gCACpD,yDAAyD;gCACzD,gEAAgE;gCAChE,MAAM,qBAAqB,CACzB,OAAO,EACP,KAAK,EACL,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAC9C,CAAC;4BACJ,CAAC;iCAAM,IAAI,MAAM,CAAC,IAAI,KAAK,sBAAsB,IAAI,OAAO,EAAE,CAAC;gCAC7D,gEAAgE;gCAChE,+DAA+D;gCAC/D,8DAA8D;gCAC9D,MAAM,8BAA8B,CAClC,OAAO,EACP,KAAK,EACL,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAC9C,CAAC;4BACJ,CAAC;iCAAM,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,EAAE,CAAC;gCACpD,4DAA4D;gCAC5D,gEAAgE;gCAChE,yDAAyD;gCACzD,gEAAgE;gCAChE,uCAAuC;gCACvC,MAAM,2BAA2B,CAC/B,OAAO,EACP,KAAK,EACL,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAC9C,CAAC;4BACJ,CAAC;wBACH,CAAC;wBACD,OAAO;oBACT,CAAC;gBACH,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,sEAAsE;YACtE,iEAAiE;YACjE,IAAI,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClD,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBAChE,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAChC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,CAAwC,CAAC;oBACjF,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;wBACrE,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,8CAA8C,CAAC,CAAC;wBAC3F,OAAO;oBACT,CAAC;oBACD,kEAAkE;oBAClE,mCAAmC;oBACnC,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;wBACnE,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,6CAA6C,CAAC,CAAC;wBAC1F,OAAO;oBACT,CAAC;oBACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBACrC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;oBAC5C,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,mBAAmB,IAAI,GAAG,CAAC,CAAC;oBACvE,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,MAAM,OAAO,GAAG,CAAC,QAAQ,QAAQ,IAAI,GAAG,CAAC,CAAC;oBACvE,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,CAAC,YAAY;gBAAE,OAAO;YAE1B,uEAAuE;YACvE,qDAAqD;YACrD,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBAChE,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;oBACnE,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;gBACzD,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC1E,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBACxC,MAAM,IAAI,GAAG,MAAM,KAAK,IAAI,CAAC;oBAC7B,IAAI,IAAI,KAAK,cAAc,CAAC,cAAc,EAAE,CAAC;wBAC3C,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,OAAO,QAAQ,CAAC,CAAC;wBACnE,OAAO;oBACT,CAAC;oBACD,KAAK,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;oBACrC,MAAM,SAAS,CACb,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,SAAS,EACb,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,0CAA0C,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAC1H,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,SAAS,CACb,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,SAAS,EACb,OAAO,OAAO,iFAAiF,CAChG,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YAED,wEAAwE;YACxE,wEAAwE;YACxE,uEAAuE;YACvE,sBAAsB;YACtB,MAAM,YAAY,GAAG,cAAc,CAAC,cAAc,CAAC;YACnD,IACE,YAAY;gBACZ,OAAO;gBACP,CAAC,6BAA6B,EAAE,EAAE,IAAI,IAAI,CAAC;gBAC3C,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBACjC,CAAC,GAAG,CAAC,WAAW;gBAChB,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EACzC,CAAC;gBACD,MAAM,uBAAuB,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,gBAAgB,GAAG,YAAY,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC;YAEjG,oEAAoE;YACpE,sEAAsE;YACtE,IAAI,OAAc,CAAC;YACnB,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC3D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,SAAS,CACb,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,SAAS,EACb,iBAAkB,GAAa,CAAC,OAAO,EAAE,CAC1C,CAAC;gBACF,OAAO;YACT,CAAC;YAED,mEAAmE;YACnE,qEAAqE;YACrE,qEAAqE;YACrE,sDAAsD;YACtD,eAAe,CACb,OAAO,EACP,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,EACxE,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CACzC,CAAC;YAEF,mEAAmE;YACnE,8DAA8D;YAC9D,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;gBACrK,OAAO;YACT,CAAC;YAED,wEAAwE;YACxE,wEAAwE;YACxE,wDAAwD;YACxD,IAAI,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9C,MAAM,gBAAgB,GAAG,YAAY;oBACnC,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACjD,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;oBACzE,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,oCAAoC,CAAC,CAAC;oBACjF,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;oBACvD,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACpD,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,UAAW,EAAE,MAAM,CAAC,CAAC;oBACzE,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;wBACrE,OAAO;oBACT,CAAC;oBACD,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;oBAC1E,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBAClD,OAAO;YACT,CAAC;YAED,sFAAsF;YACtF,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE;wBAC7C,GAAG,EAAE,OAAO;wBACZ,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC;wBAC3E,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;wBAC1C,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE;wBACvC,aAAa;qBACd,CAAC,CAAC;oBACH,IAAI,OAAO;wBAAE,OAAO;gBACtB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,aAAc,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;oBAClF,OAAO;gBACT,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,wEAAwE;YACxE,sEAAsE;YACtE,oEAAoE;YACpE,uEAAuE;YACvE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;oBAC3E,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC5C,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;oBAClD,MAAM,aAAa,CAAC,OAAO,EAAE,KAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;oBAC7D,OAAO;gBACT,CAAC;YACH,CAAC;YAED,oEAAoE;YACpE,qEAAqE;YACrE,uEAAuE;YACvE,kEAAkE;YAClE,oEAAoE;YACpE,gDAAgD;YAChD,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxD,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC5C,MAAM,OAAO,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBACtD,MAAM,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;gBACvF,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,eAAgB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAED,WAAW,CAAC,QAAiB,EAAE,GAAU;YACvC,uEAAuE;YACvE,qEAAqE;YACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC;YAE9C,uEAAuE;YACvE,0DAA0D;YAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAExC,qEAAqE;YACrE,oEAAoE;YACpE,MAAM,KAAK,GAAG,QAA0B,CAAC;YAGzC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAE1B,yEAAyE;YACzE,mDAAmD;YACnD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAClC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE;oBACpB,QAAQ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;oBACrC,QAAQ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;iBACtC,CAAC,CAAC;YACL,CAAC;YAED,sEAAsE;YACtE,sEAAsE;YACtE,+CAA+C;YAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;gBAC1C,wBAAwB,CAAC,QAAkC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC/E,OAAO;YACT,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAChC,IAAI,MAAM,EAAE,CAAC;oBACX,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC9D,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,OAA2B,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;gBAE1F,sEAAsE;gBACtE,gBAAgB;gBAChB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrC,GAAG,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,QAAQ,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAEjH,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;oBACvB,+DAA+D;oBAC/D,OAAO;gBACT,CAAC;gBAED,KAAK,MAAM,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;oBAClD,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACpE,CAAC;gBAED,kEAAkE;gBAClE,kEAAkE;gBAClE,qEAAqE;gBACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBACrD,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACvB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,wEAAwE;YACxE,sEAAsE;YACtE,oEAAoE;YACpE,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACtC,IAAI,MAAM,EAAE,CAAC;oBACX,SAAS,CACP,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,SAAS,EAChB,gBAAgB,KAAK,CAAC,OAAO,IAAI,GAAG,IAAI,KAAK,CAAC,WAAW,IAAI,GAAG,KAAK,YAAY,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,IAAI,MAAM,EAAE,CACvH,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACpB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,oEAAoE;YACpE,yEAAyE;YACzE,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACpC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,MAAM,EAAE,CAAC;oBACrC,SAAS,CACP,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,SAAS,EAChB,aAAa,YAAY,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,MAAM,EAAE,CAC7D,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACpB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACrC,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,aAAa,IAAI,SAAS,MAAM,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC;gBAC7F,IAAI,MAAM,EAAE,CAAC;oBACX,SAAS,CACP,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,SAAS,EAChB,YAAY,KAAK,CAAC,aAAa,IAAI,SAAS,MAAM,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE,CAC7E,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,SAAS,oBAAoB,CAAC,KAG7B;IACC,MAAM,CAAC,GAAG,KAAK,CAAC,qBAEH,CAAC;IACd,IAAI,CAAC,CAAC;QAAE,OAAO,OAAO,CAAC;IACvB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7D,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAClF,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,QAAQ,CAAC;IAC5C,IAAI,CAAC,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC,CAAC,IAAI,IAAI,SAAS,GAAG,CAAC;AACpC,CAAC;AA4BD;;;GAGG;AACH,SAAS,aAAa,CAAC,KAAqB,EAAE,GAAkB;IAC9D,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,aAAa;YAChB,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAC5B,MAAM;QACR,KAAK,WAAW;YACd,GAAG,CAAC,KAAK,CAAC,6BAA6B,KAAK,CAAC,SAAS,IAAI,KAAK,GAAG,CAAC,CAAC;YACpE,MAAM;QACR,KAAK,eAAe;YAClB,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,eAAe;YAClB,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC1B,MAAM;QACR,KAAK,gBAAgB;YACnB,sEAAsE;YACtE,GAAG,CAAC,KAAK,CAAC,iBAAiB,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC1D,MAAM;QACR,KAAK,aAAa;YAChB,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC1B,MAAM;QACR,KAAK,sBAAsB;YACzB,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,QAAQ,IAAI,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnF,MAAM;QACR,KAAK,uBAAuB;YAC1B,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,QAAQ,IAAI,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAChG,MAAM;QACR,KAAK,oBAAoB;YACvB,GAAG,CAAC,IAAI,CACN,iBAAiB,KAAK,CAAC,QAAQ,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CACjH,CAAC;YACF,MAAM;QACR,KAAK,kBAAkB;YACrB,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC;YACpD,MAAM;QACR,KAAK,gBAAgB;YACnB,GAAG,CAAC,IAAI,CACN,gBAAgB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAChI,CAAC;YACF,MAAM;QACR,KAAK,kBAAkB;YACrB,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,YAAY,IAAI,EAAE,GAAG,CAAC,CAAC;YAC5F,MAAM;QACR,KAAK,gBAAgB;YACnB,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YACtF,MAAM;QACR,KAAK,cAAc;YACjB,GAAG,CAAC,KAAK,CAAC,uBAAuB,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,eAAe,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3G,MAAM;QACR,KAAK,wBAAwB;YAC3B,GAAG,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC;YACxD,MAAM;QACR,KAAK,sBAAsB;YACzB,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC;YACnD,MAAM;QACR,KAAK,gBAAgB;YACnB,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAC7B,MAAM;QACR;YACE,GAAG,CAAC,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,MAAM;IACV,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,uBAAuB,CACpC,GAAoB,EACpB,SAA6E,EAC7E,OAAgB,EAChB,KAAkB;IAElB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;IACxB,MAAM,KAAK,GAAG,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;IACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,8BAA8B;IACtE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,yDAAyD;IACvF,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,IAAI,MAAM,CAAC;QACpD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,mBAAmB,EAAE,CAAC;QACrD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,uBAAuB,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACvG,KAAK,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,uBAAuB,GAAG,CAAC,MAAM,KAAK,QAAQ,GAAG,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,8EAA8E;IAChF,CAAC;AACH,CAAC;AACD,SAAS,YAAY,CAAC,GAAY,EAAE,GAAG,GAAG,GAAG;IAC3C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IACjD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,OAAO,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC;YAAE,OAAO,EAAE,CAAC;QAClB,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,OAAO,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;AACH,CAAC"}
@@ -36,8 +36,9 @@ export declare class PmctlController {
36
36
  * the caller then falls through to the regular command map. Rejected
37
37
  * commands ARE handled (replied) and return true. */
38
38
  handle(text: string, call: PmctlCall, reply: (text: string) => Promise<void>): Promise<boolean>;
39
- /** Resolve a project path: absolute as-is; relative against the project
40
- * root (config.workdir) — `/pmctl new myapp myapp` lands in ~/Projects/myapp. */
39
+ /** Resolve a project path: `~`/`~/` expands to the home directory;
40
+ * absolute as-is; relative against the project root (config.workdir) —
41
+ * `/pmctl new myapp myapp` lands in ~/Projects/myapp. */
41
42
  private resolveProjectPath;
42
43
  private instanceName;
43
44
  /** The organizational space this deployment files rooms under (shared
@@ -1 +1 @@
1
- {"version":3,"file":"pmctl-controller.d.ts","sourceRoot":"","sources":["../../src/rpc/pmctl-controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAInE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEzE,MAAM,WAAW,SAAS;IACxB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,cAAc,CAAC;IAC/B,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,WAAW,CAAC;CACpB;AAoBD,qBAAa,eAAe;IAGd,OAAO,CAAC,IAAI;IAFxB,OAAO,CAAC,SAAS,CAAgC;gBAE7B,IAAI,EAAE,sBAAsB;IAEhD;;0DAEsD;IAChD,MAAM,CACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GACrC,OAAO,CAAC,OAAO,CAAC;IAgEnB;sFACkF;IAClF,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,YAAY;IAIpB;mFAC+E;IAC/E,OAAO,CAAC,iBAAiB;YAIX,UAAU;IAwExB;oCACgC;IAChC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,QAAQ;IAahB;iFAC6E;IAC7E,OAAO,CAAC,WAAW;YAIL,IAAI;YAsBJ,EAAE;YAgEF,EAAE;YAqBF,MAAM;CAmCrB"}
1
+ {"version":3,"file":"pmctl-controller.d.ts","sourceRoot":"","sources":["../../src/rpc/pmctl-controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAInE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEzE,MAAM,WAAW,SAAS;IACxB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,cAAc,CAAC;IAC/B,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,WAAW,CAAC;CACpB;AAoBD,qBAAa,eAAe;IAGd,OAAO,CAAC,IAAI;IAFxB,OAAO,CAAC,SAAS,CAAgC;gBAE7B,IAAI,EAAE,sBAAsB;IAEhD;;0DAEsD;IAChD,MAAM,CACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GACrC,OAAO,CAAC,OAAO,CAAC;IAgEnB;;8DAE0D;IAC1D,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,YAAY;IAIpB;mFAC+E;IAC/E,OAAO,CAAC,iBAAiB;YAIX,UAAU;IAwExB;oCACgC;IAChC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,QAAQ;IAahB;iFAC6E;IAC7E,OAAO,CAAC,WAAW;YAIL,IAAI;YAsBJ,EAAE;YAgEF,EAAE;YAqBF,MAAM;CAmCrB"}
@@ -94,9 +94,14 @@ export class PmctlController {
94
94
  return true;
95
95
  }
96
96
  }
97
- /** Resolve a project path: absolute as-is; relative against the project
98
- * root (config.workdir) — `/pmctl new myapp myapp` lands in ~/Projects/myapp. */
97
+ /** Resolve a project path: `~`/`~/` expands to the home directory;
98
+ * absolute as-is; relative against the project root (config.workdir) —
99
+ * `/pmctl new myapp myapp` lands in ~/Projects/myapp. */
99
100
  resolveProjectPath(p) {
101
+ if (p === "~")
102
+ return os.homedir();
103
+ if (p.startsWith("~/"))
104
+ p = path.join(os.homedir(), p.slice(2));
100
105
  if (p.startsWith("/"))
101
106
  return p;
102
107
  const root = this.opts.store.get().workdir ?? path.join(os.homedir(), "Projects");
@@ -1 +1 @@
1
- {"version":3,"file":"pmctl-controller.js","sourceRoot":"","sources":["../../src/rpc/pmctl-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pmctl-controller.js","sourceRoot":"","sources":["../../src/rpc/pmctl-controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pmctl-controller.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pmctl-controller.test.d.ts","sourceRoot":"","sources":["../../src/rpc/pmctl-controller.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,40 @@
1
+ import * as os from "node:os";
2
+ import * as path from "node:path";
3
+ import { describe, expect, it } from "vitest";
4
+ import { ConfigStore } from "../config.js";
5
+ import { PmctlController } from "./pmctl-controller.js";
6
+ function makeController(workdir) {
7
+ return new PmctlController({
8
+ projectManager: {},
9
+ store: new ConfigStore(workdir ? { workdir } : {}),
10
+ });
11
+ }
12
+ // resolveProjectPath is private; exercised through the class like the runtime
13
+ // new/mv commands do — it is the single shared path resolver.
14
+ function resolve(controller, p) {
15
+ return controller.resolveProjectPath(p);
16
+ }
17
+ describe("resolveProjectPath", () => {
18
+ it("expands ~/... against the home directory (#64)", () => {
19
+ const c = makeController();
20
+ expect(resolve(c, "~/Projects/abc")).toBe(path.join(os.homedir(), "Projects", "abc"));
21
+ });
22
+ it("expands bare ~ to the home directory", () => {
23
+ const c = makeController();
24
+ expect(resolve(c, "~")).toBe(os.homedir());
25
+ });
26
+ it("keeps absolute paths as-is", () => {
27
+ const c = makeController();
28
+ expect(resolve(c, "/tmp/foo")).toBe("/tmp/foo");
29
+ });
30
+ it("joins relative paths against the configured workdir", () => {
31
+ const c = makeController(path.join(os.homedir(), "Projects"));
32
+ expect(resolve(c, "abc")).toBe(path.join(os.homedir(), "Projects", "abc"));
33
+ expect(resolve(c, "a/b")).toBe(path.join(os.homedir(), "Projects", "a", "b"));
34
+ });
35
+ it("defaults the relative root to ~/Projects when workdir unset", () => {
36
+ const c = makeController();
37
+ expect(resolve(c, "abc")).toBe(path.join(os.homedir(), "Projects", "abc"));
38
+ });
39
+ });
40
+ //# sourceMappingURL=pmctl-controller.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pmctl-controller.test.js","sourceRoot":"","sources":["../../src/rpc/pmctl-controller.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,SAAS,cAAc,CAAC,OAAgB;IACtC,OAAO,IAAI,eAAe,CAAC;QACzB,cAAc,EAAE,EAAoB;QACpC,KAAK,EAAE,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,8DAA8D;AAC9D,SAAS,OAAO,CAAC,UAA2B,EAAE,CAAS;IACrD,OAAQ,UAAmE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;AACpG,CAAC;AAED,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QAC3E,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA+KH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CA0K9C"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgLH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAyL9C"}
package/dist/setup.js CHANGED
@@ -7,6 +7,7 @@
7
7
  * admin user → E2EE toggle, then writes ~/.pi/pi-courier.json.
8
8
  */
9
9
  import * as os from "node:os";
10
+ import * as path from "node:path";
10
11
  import { stdin, stdout } from "node:process";
11
12
  import { createInterface } from "node:readline";
12
13
  import { defaultProjectsRoot, loadConfig, nativeMxid, saveConfig } from "./config.js";
@@ -255,6 +256,18 @@ export async function runSetup() {
255
256
  // ---- 6. workdir ----------------------------------------------------------
256
257
  const workdirDefault = existing.workdir ?? defaultProjectsRoot();
257
258
  const workdir = (await ask(`pi 工作目录 [默认 ${workdirDefault}]: `)).trim() || workdirDefault;
259
+ // ---- 6.2 attachments (issue #66) ------------------------------------------
260
+ // Where media from the chat lands and how big a single file may be.
261
+ // Defaults are fine for almost everyone — the questions exist so the
262
+ // knobs are discoverable, answers merge-preserve existing values.
263
+ const attDirDefault = existing.attachments?.directory ?? path.join(os.homedir(), ".pi", "pi-courier-attachments");
264
+ const attachmentsDir = (await ask(`附件保存目录 [默认 ${attDirDefault}]: `)).trim() || attDirDefault;
265
+ const attMbDefault = existing.attachments?.maxMb ?? 10;
266
+ const attMbRaw = (await ask(`单个附件大小上限 MB [默认 ${attMbDefault}]: `)).trim();
267
+ const attMb = attMbRaw === "" ? attMbDefault : Number.parseInt(attMbRaw, 10);
268
+ if (!Number.isFinite(attMb) || attMb <= 0) {
269
+ throw new Error("附件大小上限应为正整数(MB)");
270
+ }
258
271
  // ---- 6.5 instance name (multi-machine differentiation) -------------------
259
272
  const instanceDefault = existing.instanceName ?? os.hostname();
260
273
  const instanceName = (await ask(`实例名/机器名(默认 ${instanceDefault};多台部署用来区分,将显示在管理房间名): `)).trim() || instanceDefault;
@@ -296,6 +309,7 @@ export async function runSetup() {
296
309
  workdir,
297
310
  instanceName,
298
311
  multiProject,
312
+ attachments: { ...existing.attachments, directory: attachmentsDir, maxMb: attMb },
299
313
  // Single-project reruns leave the space fields exactly as they were
300
314
  // (no silent enabled flip) — the feature is multi-project-only.
301
315
  ...(multiProject ? { space: { ...existing.space, enabled: spaceEnabled } } : {}),
@@ -309,6 +323,7 @@ export async function runSetup() {
309
323
  console.log(` 信任用户: ${adminRaw}`);
310
324
  console.log(` E2EE: ${encryption ? "开启" : "关闭"}`);
311
325
  console.log(` 工作目录: ${workdir}`);
326
+ console.log(` 附件目录: ${attachmentsDir}(上限 ${attMb} MB)`);
312
327
  console.log(` 实例名: ${instanceName}(用于多台部署区分,显示在管理房间名)`);
313
328
  console.log(` 多工程: ${multiProject ? "开启" : "关闭(单工程)"}`);
314
329
  if (multiProject) {