@will-17173/telegram-cli 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli/app.js CHANGED
@@ -18,7 +18,7 @@ export function createApp() {
18
18
  .option('-v, --verbose', 'Enable debug logging')
19
19
  .option('--account <account>', 'Select an account for account-dependent commands')
20
20
  .option('--markdown', 'Produce Markdown output for human-readable results')
21
- .version('0.5.0');
21
+ .version('0.5.1');
22
22
  registerQueryCommands(app);
23
23
  registerArchiveCommand(app);
24
24
  registerDataCommands(app);
@@ -64,6 +64,7 @@ export class MessageDB {
64
64
  content TEXT,
65
65
  timestamp TEXT NOT NULL,
66
66
  raw_json TEXT,
67
+ preview_jpeg_base64 TEXT,
67
68
  UNIQUE(platform, chat_id, msg_id)
68
69
  );
69
70
  CREATE INDEX IF NOT EXISTS idx_messages_chat_ts ON messages(chat_id, timestamp);
@@ -72,6 +73,7 @@ export class MessageDB {
72
73
  CREATE INDEX IF NOT EXISTS idx_messages_content ON messages(content);
73
74
  CREATE INDEX IF NOT EXISTS idx_messages_sender ON messages(sender_name);
74
75
  `);
76
+ this.ensurePreviewColumn();
75
77
  }
76
78
  static async openReadonly(path) {
77
79
  const { snapshotDir, snapshotPath } = await createConsistentSnapshotAsync(path);
@@ -88,8 +90,8 @@ export class MessageDB {
88
90
  return 0;
89
91
  const stmt = this.db.prepare(`
90
92
  INSERT OR IGNORE INTO messages
91
- (platform, chat_id, chat_name, msg_id, sender_id, sender_name, content, timestamp, raw_json)
92
- VALUES (@platform, @chat_id, @chat_name, @msg_id, @sender_id, @sender_name, @content, @timestamp, @raw_json)
93
+ (platform, chat_id, chat_name, msg_id, sender_id, sender_name, content, timestamp, raw_json, preview_jpeg_base64)
94
+ VALUES (@platform, @chat_id, @chat_name, @msg_id, @sender_id, @sender_name, @content, @timestamp, @raw_json, @preview_jpeg_base64)
93
95
  `);
94
96
  let inserted = 0;
95
97
  const tx = this.db.transaction((rows) => {
@@ -103,8 +105,8 @@ export class MessageDB {
103
105
  insertMessage(message) {
104
106
  const stmt = this.db.prepare(`
105
107
  INSERT OR IGNORE INTO messages
106
- (platform, chat_id, chat_name, msg_id, sender_id, sender_name, content, timestamp, raw_json)
107
- VALUES (@platform, @chat_id, @chat_name, @msg_id, @sender_id, @sender_name, @content, @timestamp, @raw_json)
108
+ (platform, chat_id, chat_name, msg_id, sender_id, sender_name, content, timestamp, raw_json, preview_jpeg_base64)
109
+ VALUES (@platform, @chat_id, @chat_name, @msg_id, @sender_id, @sender_name, @content, @timestamp, @raw_json, @preview_jpeg_base64)
108
110
  `);
109
111
  return this.insertPrepared(stmt, message) === 1;
110
112
  }
@@ -156,10 +158,24 @@ export class MessageDB {
156
158
  getMessagesPage(options) {
157
159
  const params = [canonicalChatId(options.chatId)];
158
160
  const conditions = ['chat_id = ?'];
159
- const filter = options.q?.trim();
160
- if (filter) {
161
+ const q = options.q?.trim();
162
+ if (q) {
163
+ conditions.push('(content LIKE ? OR sender_name LIKE ? OR CAST(sender_id AS TEXT) LIKE ?)');
164
+ params.push(`%${q}%`, `%${q}%`, `%${q}%`);
165
+ }
166
+ if (options.senderId != null) {
167
+ conditions.push('sender_id = ?');
168
+ params.push(options.senderId);
169
+ }
170
+ const senderName = options.senderName?.trim();
171
+ if (senderName) {
172
+ conditions.push('sender_name LIKE ?');
173
+ params.push(`%${senderName}%`);
174
+ }
175
+ const text = options.text?.trim();
176
+ if (text) {
161
177
  conditions.push('content LIKE ?');
162
- params.push(`%${filter}%`);
178
+ params.push(`%${text}%`);
163
179
  }
164
180
  if (options.since) {
165
181
  conditions.push('timestamp >= ?');
@@ -395,14 +411,19 @@ export class MessageDB {
395
411
  return { sql: `SELECT * FROM messages WHERE ${conditions.join(' AND ')}`, params };
396
412
  }
397
413
  insertPrepared(stmt, row) {
398
- const { preview_jpeg_base64, ...persisted } = row;
399
- void preview_jpeg_base64;
400
414
  return stmt.run({
401
- ...persisted,
415
+ ...row,
402
416
  chat_id: canonicalChatId(row.chat_id),
403
417
  raw_json: row.raw_json == null ? null : JSON.stringify(row.raw_json),
418
+ preview_jpeg_base64: row.preview_jpeg_base64 ?? null,
404
419
  }).changes;
405
420
  }
421
+ ensurePreviewColumn() {
422
+ const columns = this.db.prepare('PRAGMA table_info(messages)').all();
423
+ if (columns.some((column) => column.name === 'preview_jpeg_base64'))
424
+ return;
425
+ this.db.exec('ALTER TABLE messages ADD COLUMN preview_jpeg_base64 TEXT');
426
+ }
406
427
  addFilters(conditions, params, options, tableAlias) {
407
428
  const prefix = tableAlias ? `${tableAlias}.` : '';
408
429
  if (options.chatId != null) {
@@ -1 +1 @@
1
- {"version":3,"file":"message-db.js","sourceRoot":"","sources":["../../src/storage/message-db.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACvG,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAyDpD,IAAI,gBAA8C,CAAA;AAElD,MAAM,UAAU,sCAAsC,CAAC,IAAkC;IACvF,MAAM,QAAQ,GAAG,gBAAgB,CAAA;IACjC,gBAAgB,GAAG,IAAI,CAAA;IACvB,OAAO,GAAG,EAAE,GAAG,gBAAgB,GAAG,QAAQ,CAAA,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,OAAO,SAAS;IACH,EAAE,CAAmB;IACrB,WAAW,CAAS;IAC7B,MAAM,GAAG,KAAK,CAAA;IAEtB,YAAY,IAAI,GAAG,SAAS,EAAE,EAAE,UAAkC,EAAE;QAClE,MAAM,OAAO,GAAG,OAAuD,CAAA;QACvE,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;YACtC,IAAI,UAAyC,CAAA;YAC7C,IAAI,CAAC;gBACH,UAAU,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;gBACxD,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;gBACpC,UAAU,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC,GAAG,EAAE,CAAA;gBAC/D,IAAI,CAAC,EAAE,GAAG,UAAU,CAAA;YACtB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,UAAU,EAAE,KAAK,EAAE,CAAA;gBACnB,MAAM,KAAK,CAAA;YACb,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAA;YACpE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;YAC9B,IAAI,UAAyC,CAAA;YAC7C,IAAI,CAAC;gBACH,UAAU,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;gBAChE,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;gBACpC,UAAU,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC,GAAG,EAAE,CAAA;gBAC/D,IAAI,CAAC,EAAE,GAAG,UAAU,CAAA;YACtB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,UAAU,EAAE,KAAK,EAAE,CAAA;gBACnB,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBACrD,MAAM,KAAK,CAAA;YACb,CAAC;YACD,OAAM;QACR,CAAC;QAED,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7C,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACpC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;KAmBZ,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAY;QACpC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM,6BAA6B,CAAC,IAAI,CAAC,CAAA;QAC/E,IAAI,CAAC;YACH,OAAO,IAAI,SAAS,CAAC,YAAY,EAAE,EAAE,WAAW,EAA4B,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;YACvD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,WAAW,CAAC,QAA8B;QACxC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAI5B,CAAC,CAAA;QACF,IAAI,QAAQ,GAAG,CAAC,CAAA;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,IAA0B,EAAE,EAAE;YAC5D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,QAAQ,CAAC,CAAA;QACZ,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,aAAa,CAAC,OAA2B;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAI5B,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,CAAC,OAAe,EAAE,UAAyB,EAAE;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;QAC7E,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,GAAG,kCAAkC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAA;IACrI,CAAC;IAED,WAAW,CAAC,OAAe,EAAE,UAAyB,EAAE;QACtD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;QACpE,MAAM,OAAO,GAAoB,EAAE,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,GAAG,0BAA0B,CAAC,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,CAA4B,CAAA;QACxH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACpD,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK;gBAAE,MAAK;QACpC,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,SAAS,CAAC,UAAyB,EAAE;QACnC,MAAM,MAAM,GAAc,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAa,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAA;QAClC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;uCAEY,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;KAE1D,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,KAAK,CAAoB,CAAA;IAC7C,CAAC;IAED,aAAa,CAAC,UAA6B,EAAE;QAC3C,MAAM,MAAM,GAAc,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC5C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;YAC3C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC1D,CAAC;QACD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,0BAA0B,CAAA;QAC/F,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;0CACe,WAAW;cACvC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;;KAGjC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,CAAoB,CAAA;IAC5D,CAAC;IAED,eAAe,CAAC,OAA2B;QACzC,MAAM,MAAM,GAAc,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;QAC3D,MAAM,UAAU,GAAG,CAAC,aAAa,CAAC,CAAA;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QAChC,IAAI,MAAM,EAAE,CAAC;YACX,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YACjC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,CAAA;QAC5B,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YACjC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YACjC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAClD,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;YAC3C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;QAC1C,CAAC;QAED,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;cAEnB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;;KAGjC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,KAAK,GAAG,CAAC,CAAoB,CAAA;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YACzD,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAA;QACR,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IAC/B,CAAC;IAED,iBAAiB,CAAC,IAA8C;QAC9D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAA;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,mFAAmF,CAAC,CAAA;QACjH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,SAAmD,EAAE,EAAE;YACvF,MAAM,QAAQ,GAAoB,EAAE,CAAA;YACpC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,KAAK,CAA8B,CAAA;gBACzF,IAAI,GAAG;oBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC7B,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,CAAC;IAED,QAAQ,CAAC,UAAwB,EAAE;QACjC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QACjE,MAAM,MAAM,GAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAC5C,MAAM,UAAU,GAAG,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAA;QACtD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;cAEb,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;;KAGjC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,CAAoB,CAAA;IAC5D,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9D,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;YACnC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,CAAC,CAAA;YACzD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,OAAO,CAAA;QACxC,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;QACpG,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QAClC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAA;IACrG,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACpC,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;IACzD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;KAetB,CAAC,CAAC,GAAG,EAAkH,CAAA;IAC1H,CAAC;IAED,YAAY,CAAC,UAA2B,EAAE;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QAChC,MAAM,UAAU,GAAa,EAAE,CAAA;QAC/B,MAAM,MAAM,GAAc,EAAE,CAAA;QAC5B,IAAI,MAAM,EAAE,CAAC;YACX,UAAU,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAA;YACnF,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,CAAC,CAAA;QAC3C,CAAC;QACD,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACpF,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;KAkBlB,CAAA;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;QAC1B,UAAU;;;QAGV,WAAW;;;KAGd,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAiH,CAAA;QACxO,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;QAC7B,UAAU;;;QAGV,WAAW;KACd,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAsB,CAAA;QACtC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;IACzC,CAAC;IAED,UAAU,CAAC,UAA+D,EAAE;QAC1E,MAAM,MAAM,GAAc,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,CAAC,oDAAoD,CAAC,CAAA;QACzE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;QACrH,MAAM,aAAa,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,CAAA;QAC7E,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA;QAClD,MAAM,YAAY,GAAc,EAAE,CAAA;QAClC,MAAM,gBAAgB,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC9D,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;QACxE,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;kBAKT,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;;;;;;;;4BAQpB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;;KAG/C,CAAC,CAAC,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE,CAA4H,CAAA;IACpL,CAAC;IAED,QAAQ,CAAC,UAA6E,EAAE;QACtF,MAAM,MAAM,GAAc,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAA;QAC1B,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QACrF,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,0BAA0B,CAAA;QACrG,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;eACZ,IAAI;4BACS,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;KAE/C,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAiD,CAAA;IACnE,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,6DAA6D,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAA6B,CAAA;QACnJ,OAAO,GAAG,CAAC,KAAK,CAAA;IAClB,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,6DAA6D,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAA6B,CAAA;QACnJ,OAAO,GAAG,CAAC,KAAK,CAAA;IAClB,CAAC;IAED,iBAAiB,CAAC,MAAc;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAM3B,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAsD,CAAA;QACpF,IAAI,GAAG,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAA;QACzD,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,MAAe;QACnB,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI;YACxB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC,GAAG,EAAuB;YACtF,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,0DAA0D,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAsB,CAAA;QACjI,OAAO,GAAG,CAAC,KAAK,CAAA;IAClB,CAAC;IAED,kBAAkB,CAAC,MAAe;QAChC,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI;YACxB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC,GAAG,EAA8B;YACnG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,gEAAgE,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAA6B,CAAA;QAC9I,OAAO,GAAG,CAAC,KAAK,CAAA;IAClB,CAAC;IAED,UAAU,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;IACvG,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,MAAM;YAAE,OAAM;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;QACjB,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI;gBAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAC1F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,MAAM;YAAE,OAAM;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;QACf,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI;YAAE,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5F,CAAC;IAEO,aAAa,CAAC,cAAsB,EAAE,WAAsB,EAAE,OAAsB;QAC1F,MAAM,UAAU,GAAG,CAAC,cAAc,CAAC,CAAA;QACnC,MAAM,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC,CAAA;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC5C,OAAO,EAAE,GAAG,EAAE,gCAAgC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAA;IACpF,CAAC;IAEO,cAAc,CAAC,IAAwB,EAAE,GAAuB;QACtE,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,CAAA;QACjD,KAAK,mBAAmB,CAAA;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC;YACd,GAAG,SAAS;YACZ,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;YACrC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;SACrE,CAAC,CAAC,OAAO,CAAA;IACZ,CAAC;IAEO,UAAU,CAAC,UAAoB,EAAE,MAAiB,EAAE,OAAsB,EAAE,UAAmB;QACrG,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACjD,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,aAAa,CAAC,CAAA;YACvC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;QAC9C,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,oBAAoB,CAAC,CAAA;YAC9C,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;QACpC,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YAC1B,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAA;YAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;QACnG,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,aAAsB;QACvC,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;YACtB,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YACxE,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;YAChF,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,QAAQ,GAAG,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QAC/C,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,QAAQ,CAAA;QAC1G,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;IACjG,CAAC;IAEO,oBAAoB,CAAC,KAAa;QACxC,OAAO;SACF,KAAK,8BAA8B,KAAK;;UAEvC,KAAK;;uBAEQ,KAAK;;MAEtB,CAAA;IACJ,CAAC;CACF;AAED,SAAS,mBAAmB,CAAC,GAAsC;IACjE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;AAC5G,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAA0C,CAAA;QACrH,MAAM,SAAS,GAAG,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACrF,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAA;QAChC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;YACtL,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;QACnC,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAA;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAyB,EAAE,YAAoB,EAAE,GAAW,EAAE,GAAW;IAC7F,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,YAAY,CAAA;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACxD,CAAC;AAeD,SAAS,wBAAwB,CAAC,UAAkB,EAAE,WAAW,GAAG,CAAC;IACnE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,EAAE,CAAC,CAAA;IACxG,IAAI,SAAkB,CAAA;IAEtB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAA;QACrE,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;QACrD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;YAC5C,eAAe,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;YACzC,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAA;YACzD,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI;gBAAE,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,GAAG,YAAY,MAAM,CAAC,CAAA;YACnF,MAAM,KAAK,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;YAC3C,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC1E,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAA;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAA;YACjB,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACzE,MAAM,IAAI,KAAK,CAAC,+DAA+D,WAAW,YAAY,MAAM,EAAE,CAAC,CAAA;AACjH,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAkB;IAC3C,OAAO;QACL,IAAI,EAAE,eAAe,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,UAAU,CAAC,GAAG,UAAU,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;KACnF,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7C,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;QACxB,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;QACxB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;QAChC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;KACjC,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAuB,EAAE,KAAwB;IACxE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AACvD,CAAC;AAED,SAAS,WAAW,CAAC,YAAoB,EAAE,MAAyB;IAClE,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;IAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAChD,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,CAAC,UAAU,CAAC,GAAG,YAAY,MAAM,CAAC,CAAA;IACjE,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,YAAY,MAAM,CAAC,CAAA;IAClD,OAAO,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA;AACrC,CAAC;AAED,SAAS,eAAe,CAAC,MAAc,EAAE,WAAmB;IAC1D,IAAI,CAAC;QACH,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACnC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,6BAA6B,CAAC,UAAkB,EAAE,WAAW,GAAG,CAAC;IAC9E,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,EAAE,CAAC,CAAA;IAC7E,CAAC;IACD,IAAI,SAAkB,CAAA;IACtB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAA;QACvE,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;QACrD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAA;YACvD,MAAM,oBAAoB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;YACpD,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAA;YACzD,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI;gBAAE,MAAM,oBAAoB,CAAC,GAAG,UAAU,MAAM,EAAE,GAAG,YAAY,MAAM,CAAC,CAAA;YAC9F,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAA;YACtD,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBACvF,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAA;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAA;YACjB,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACzE,MAAM,IAAI,KAAK,CAAC,+DAA+D,WAAW,YAAY,MAAM,EAAE,CAAC,CAAA;AACjH,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,UAAkB;IACtD,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAA;IACnD,IAAI,GAAG,GAA2B,IAAI,CAAA;IACtC,IAAI,CAAC;QAAC,GAAG,GAAG,MAAM,oBAAoB,CAAC,GAAG,UAAU,MAAM,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACxF,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;AACtB,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,IAAY;IAC9C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAChD,OAAO;QACL,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;QACjF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;KACrE,CAAA;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,YAAoB,EAAE,MAAyB;IAC7E,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAChD,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC;YAAC,MAAM,MAAM,CAAC,GAAG,YAAY,MAAM,CAAC,CAAC;YAAC,OAAO,KAAK,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,IAAI,CAAA;QAAC,CAAC;IACjF,CAAC;IACD,OAAO,CAAC,MAAM,oBAAoB,CAAC,GAAG,YAAY,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA;AACrF,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,MAAc,EAAE,WAAmB;IACrE,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACrC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"message-db.js","sourceRoot":"","sources":["../../src/storage/message-db.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { createDialogsAdapter } from './mtcute-dialogs.js';
9
9
  import { normalizeMtcuteMessage } from './mtcute-message-normalizer.js';
10
10
  import { createFoldersAdapter } from './mtcute-folders.js';
11
11
  import { createNotificationsAdapter } from './mtcute-notifications.js';
12
- import { MtcuteArchive } from './mtcute-archive.js';
12
+ import { downloadableLocation, MtcuteArchive } from './mtcute-archive.js';
13
13
  const TRANSIENT_HISTORY_RETRY_LIMIT = 3;
14
14
  const TRANSIENT_HISTORY_RETRY_DELAY_MS = 500;
15
15
  export class MtcuteTelegramClient {
@@ -172,12 +172,12 @@ export class MtcuteTelegramClient {
172
172
  async downloadMessageMedia(options) {
173
173
  await this.ensureReady();
174
174
  const chat = normalizeChatId(options.chat);
175
- let media = this.listenedMedia.get(messageMediaKey(chat, options.msgId));
175
+ let media = downloadableLocation(options.location) ?? this.listenedMedia.get(messageMediaKey(chat, options.msgId));
176
176
  if (media == null) {
177
177
  const [message] = await this.client.getMessages(chat, options.msgId);
178
178
  if (message == null)
179
179
  throw new Error(`Message ${options.msgId} was not found`);
180
- media = message.media instanceof FileLocation ? message.media : undefined;
180
+ media = downloadableLocation(message.media) ?? undefined;
181
181
  }
182
182
  if (!(media instanceof FileLocation))
183
183
  throw new Error('This attachment cannot be downloaded');
@@ -1 +1 @@
1
- {"version":3,"file":"mtcute-client.js","sourceRoot":"","sources":["../../src/telegram/mtcute-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mtcute-client.js","sourceRoot":"","sources":["../../src/telegram/mtcute-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,132 @@
1
+ import { FileLocation, Long } from '@mtcute/node';
2
+ import { strippedPhotoToJpg } from '@mtcute/node/utils.js';
3
+ export function fileLocationFromRawMessage(raw) {
4
+ const root = parseRaw(raw);
5
+ const media = recordValue(root?.media);
6
+ if (media == null)
7
+ return null;
8
+ const photo = recordValue(media.photo);
9
+ if (photo != null)
10
+ return photoFileLocation(photo);
11
+ const document = recordValue(media.document);
12
+ if (document != null)
13
+ return documentFileLocation(document);
14
+ return null;
15
+ }
16
+ export function strippedPhotoPreviewBase64FromRawMessage(raw) {
17
+ const root = parseRaw(raw);
18
+ const photo = recordValue(recordValue(root?.media)?.photo);
19
+ const sizes = Array.isArray(photo?.sizes) ? photo.sizes : [];
20
+ const stripped = sizes.find((item) => recordValue(item)?._ === 'photoStrippedSize');
21
+ const bytes = bytesLikeToUint8Array(recordValue(stripped)?.bytes);
22
+ if (bytes == null)
23
+ return undefined;
24
+ try {
25
+ return Buffer.from(strippedPhotoToJpg(bytes)).toString('base64');
26
+ }
27
+ catch {
28
+ return undefined;
29
+ }
30
+ }
31
+ function photoFileLocation(photo) {
32
+ const id = longValue(photo.id);
33
+ const accessHash = longValue(photo.accessHash);
34
+ const fileReference = bytesLikeToUint8Array(photo.fileReference);
35
+ if (id == null || accessHash == null || fileReference == null)
36
+ return null;
37
+ return new FileLocation({
38
+ _: 'inputPhotoFileLocation',
39
+ id,
40
+ accessHash,
41
+ fileReference,
42
+ thumbSize: largestPhotoSizeType(photo) ?? '',
43
+ }, largestPhotoSize(photo), numberValue(photo.dcId));
44
+ }
45
+ function documentFileLocation(document) {
46
+ const id = longValue(document.id);
47
+ const accessHash = longValue(document.accessHash);
48
+ const fileReference = bytesLikeToUint8Array(document.fileReference);
49
+ if (id == null || accessHash == null || fileReference == null)
50
+ return null;
51
+ return new FileLocation({
52
+ _: 'inputDocumentFileLocation',
53
+ id,
54
+ accessHash,
55
+ fileReference,
56
+ thumbSize: '',
57
+ }, numberValue(document.size), numberValue(document.dcId));
58
+ }
59
+ function largestPhotoSizeType(photo) {
60
+ const sizes = Array.isArray(photo.sizes) ? photo.sizes : [];
61
+ let selected = null;
62
+ for (const item of sizes) {
63
+ const size = recordValue(item);
64
+ const type = stringValue(size?.type);
65
+ const bytes = numberValue(size?.size);
66
+ if (type == null || bytes == null)
67
+ continue;
68
+ if (selected == null || bytes > selected.size)
69
+ selected = { type, size: bytes };
70
+ }
71
+ return selected?.type ?? null;
72
+ }
73
+ function largestPhotoSize(photo) {
74
+ const sizes = Array.isArray(photo.sizes) ? photo.sizes : [];
75
+ let selected;
76
+ for (const item of sizes) {
77
+ const bytes = numberValue(recordValue(item)?.size);
78
+ if (bytes == null)
79
+ continue;
80
+ if (selected == null || bytes > selected)
81
+ selected = bytes;
82
+ }
83
+ return selected;
84
+ }
85
+ function parseRaw(raw) {
86
+ if (typeof raw === 'string') {
87
+ try {
88
+ const parsed = JSON.parse(raw);
89
+ return recordValue(parsed);
90
+ }
91
+ catch {
92
+ return null;
93
+ }
94
+ }
95
+ return recordValue(raw);
96
+ }
97
+ function recordValue(value) {
98
+ return value != null && typeof value === 'object' && !Array.isArray(value) ? value : null;
99
+ }
100
+ function stringValue(value) {
101
+ return typeof value === 'string' && value.trim() !== '' ? value.trim() : null;
102
+ }
103
+ function numberValue(value) {
104
+ return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
105
+ }
106
+ function longValue(value) {
107
+ const record = recordValue(value);
108
+ if (record == null)
109
+ return null;
110
+ const low = numberValue(record.low);
111
+ const high = numberValue(record.high);
112
+ if (low == null || high == null)
113
+ return null;
114
+ const unsigned = typeof record.unsigned === 'boolean' ? record.unsigned : undefined;
115
+ return Long.fromBits(low, high, unsigned);
116
+ }
117
+ function bytesLikeToUint8Array(value) {
118
+ if (value instanceof Uint8Array)
119
+ return value;
120
+ const bytes = Array.isArray(value)
121
+ ? value
122
+ : recordValue(value) == null ? null : Object.keys(value)
123
+ .filter((key) => /^\d+$/.test(key))
124
+ .sort((left, right) => Number(left) - Number(right))
125
+ .map((key) => value[key]);
126
+ if (bytes == null || bytes.length === 0)
127
+ return null;
128
+ if (!bytes.every((item) => typeof item === 'number' && Number.isInteger(item) && item >= 0 && item <= 255))
129
+ return null;
130
+ return Uint8Array.from(bytes);
131
+ }
132
+ //# sourceMappingURL=raw-media-location.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raw-media-location.js","sourceRoot":"","sources":["../../src/telegram/raw-media-location.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/telegram/types.ts"],"names":[],"mappings":"AAyDA,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IACvD,YAAY,KAAe;QACzB,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2CAA2C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACtG,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAA;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/telegram/types.ts"],"names":[],"mappings":"AA0DA,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IACvD,YAAY,KAAe;QACzB,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2CAA2C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACtG,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAA;IAC9C,CAAC;CACF"}
package/dist/web/api.js CHANGED
@@ -1,4 +1,12 @@
1
+ import { existsSync, mkdirSync } from 'node:fs';
2
+ import { homedir } from 'node:os';
3
+ import { dirname } from 'node:path';
4
+ import { resolveAuthenticatedAccountContext } from '../account/account-context.js';
1
5
  import { getDataDir } from '../config/env.js';
6
+ import { resolveAttachmentDestination } from '../services/attachment-download.js';
7
+ import { MessageDB } from '../storage/message-db.js';
8
+ import { createTelegramClient } from '../telegram/client-factory.js';
9
+ import { fileLocationFromRawMessage } from '../telegram/raw-media-location.js';
2
10
  import { validateLocalRequest } from './security.js';
3
11
  import { WebQueryService } from './query.js';
4
12
  export async function handleApiRequest(request, context) {
@@ -34,6 +42,9 @@ export async function handleApiRequest(request, context) {
34
42
  account: stringParam(url, 'account'),
35
43
  chatId: requiredNonZeroIntParam(url, 'chatId'),
36
44
  q: stringParam(url, 'q'),
45
+ senderId: optionalIntParam(url, 'senderId'),
46
+ senderName: stringParam(url, 'senderName'),
47
+ text: stringParam(url, 'text'),
37
48
  since: stringParam(url, 'since'),
38
49
  until: stringParam(url, 'until'),
39
50
  limit: optionalPositiveIntParam(url, 'limit') ?? 50,
@@ -41,10 +52,14 @@ export async function handleApiRequest(request, context) {
41
52
  }));
42
53
  case '/api/sync-task':
43
54
  if (request.method === 'POST')
44
- return syncTaskPost(request, context);
55
+ return await syncTaskPost(request, context);
45
56
  if (request.method !== 'GET')
46
57
  return notFound();
47
58
  return success(context.syncTask.getState());
59
+ case '/api/download-media':
60
+ if (request.method !== 'POST')
61
+ return notFound();
62
+ return await downloadMediaPost(request, { dataDir });
48
63
  default:
49
64
  return notFound();
50
65
  }
@@ -99,6 +114,89 @@ async function syncTaskPost(request, context) {
99
114
  return jsonResponse(400, result);
100
115
  return jsonResponse(500, result);
101
116
  }
117
+ async function downloadMediaPost(request, context) {
118
+ if (!isJsonRequest(request)) {
119
+ return failure(400, 'invalid_request', 'Content-Type must include application/json.');
120
+ }
121
+ const body = await parseJsonBody(request);
122
+ if (!isRecord(body))
123
+ return failure(400, 'invalid_request', 'Request body must be a JSON object.');
124
+ const account = typeof body.account === 'string' ? body.account.trim() : '';
125
+ if (account === '')
126
+ return failure(400, 'invalid_request', 'account must be a non-empty string.');
127
+ if (!Array.isArray(body.attachments) || body.attachments.length === 0) {
128
+ return failure(400, 'invalid_request', 'attachments must be a non-empty array.');
129
+ }
130
+ try {
131
+ const attachments = body.attachments.map(parseDownloadAttachment);
132
+ const reserved = new Set();
133
+ const clientContext = resolveAuthenticatedAccountContext({ explicitName: account, dataDir: context.dataDir });
134
+ const storedMessages = readStoredDownloadMessages(clientContext.dbPath, attachments);
135
+ const client = createTelegramClient(clientContext.sessionPath);
136
+ const results = [];
137
+ try {
138
+ for (const attachment of attachments) {
139
+ const destination = resolveAttachmentDestination({
140
+ homeDir: homedir(),
141
+ fileName: attachment.fileName,
142
+ exists: existsSync,
143
+ reserved,
144
+ });
145
+ reserved.add(destination);
146
+ mkdirSync(dirname(destination), { recursive: true });
147
+ await client.downloadMessageMedia({
148
+ chat: attachment.chatId,
149
+ msgId: attachment.msgId,
150
+ destination,
151
+ location: storedMessages.get(downloadMessageKey(attachment.chatId, attachment.msgId)),
152
+ });
153
+ results.push({
154
+ chat_id: attachment.chatId,
155
+ msg_id: attachment.msgId,
156
+ file_name: attachment.fileName,
157
+ path: destination,
158
+ });
159
+ }
160
+ }
161
+ finally {
162
+ await client.close();
163
+ }
164
+ return success({ downloaded: results });
165
+ }
166
+ catch (error) {
167
+ const message = errorMessage(error);
168
+ if (isKnownValidationMessage(message))
169
+ return failure(400, 'invalid_request', message);
170
+ return failure(500, 'download_failed', message);
171
+ }
172
+ }
173
+ function readStoredDownloadMessages(dbPath, attachments) {
174
+ const db = new MessageDB(dbPath, { readonly: true });
175
+ try {
176
+ return new Map(db.getMessagesByKeys(attachments).map((message) => [
177
+ downloadMessageKey(message.chat_id, message.msg_id),
178
+ fileLocationFromRawMessage(message.raw_json),
179
+ ]));
180
+ }
181
+ finally {
182
+ db.close();
183
+ }
184
+ }
185
+ function downloadMessageKey(chatId, msgId) {
186
+ return `${chatId}:${msgId}`;
187
+ }
188
+ function parseDownloadAttachment(value) {
189
+ if (!isRecord(value))
190
+ throw invalidRequest('Each attachment must be a JSON object.');
191
+ if (!isSafeNonZeroInteger(value.chat_id))
192
+ throw invalidRequest('attachment.chat_id must be a non-zero integer.');
193
+ if (!isSafePositiveInteger(value.msg_id))
194
+ throw invalidRequest('attachment.msg_id must be a positive integer.');
195
+ const fileName = typeof value.file_name === 'string' ? value.file_name.trim() : '';
196
+ if (fileName === '')
197
+ throw invalidRequest('attachment.file_name must be a non-empty string.');
198
+ return { chatId: value.chat_id, msgId: value.msg_id, fileName };
199
+ }
102
200
  function isJsonRequest(request) {
103
201
  return request.headers.get('content-type')?.toLowerCase().includes('application/json') ?? false;
104
202
  }
@@ -156,6 +254,15 @@ function optionalNonNegativeIntParam(url, name) {
156
254
  throw invalidRequest(`${name} must be a non-negative integer.`);
157
255
  return value;
158
256
  }
257
+ function optionalIntParam(url, name) {
258
+ const raw = url.searchParams.get(name);
259
+ if (raw == null || raw.trim() === '')
260
+ return undefined;
261
+ const value = parseInteger(raw);
262
+ if (value == null)
263
+ throw invalidRequest(`${name} must be an integer.`);
264
+ return value;
265
+ }
159
266
  function parseInteger(raw) {
160
267
  if (raw == null)
161
268
  return undefined;
@@ -188,7 +295,8 @@ function isKnownValidationMessage(message) {
188
295
  || message.includes('must be a positive integer')
189
296
  || message.startsWith('account_required:')
190
297
  || message.startsWith('account_not_found:')
191
- || message.startsWith('account_logged_out:');
298
+ || message.startsWith('account_logged_out:')
299
+ || message.startsWith('account_session_missing:');
192
300
  }
193
301
  function errorMessage(error) {
194
302
  return error instanceof Error ? error.message : String(error);