@leemour/cli-messaging 0.55.0 → 0.57.0

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 (100) hide show
  1. package/README.md +1 -1
  2. package/dist/cli/index.d.ts +1 -2
  3. package/dist/cli/index.d.ts.map +1 -1
  4. package/dist/cli/index.js +1 -2
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/cli/messenger/archive-commands.d.ts +2 -10
  7. package/dist/cli/messenger/archive-commands.d.ts.map +1 -1
  8. package/dist/cli/messenger/archive-commands.js +12 -4
  9. package/dist/cli/messenger/archive-commands.js.map +1 -1
  10. package/dist/cli/messenger/backfill-command.d.ts +6 -3
  11. package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
  12. package/dist/cli/messenger/backfill-command.js +116 -93
  13. package/dist/cli/messenger/backfill-command.js.map +1 -1
  14. package/dist/cli/messenger/backfill-estimate.js +1 -1
  15. package/dist/cli/messenger/backfill-estimate.js.map +1 -1
  16. package/dist/cli/messenger/chats-command.d.ts +1 -30
  17. package/dist/cli/messenger/chats-command.d.ts.map +1 -1
  18. package/dist/cli/messenger/chats-command.js +11 -48
  19. package/dist/cli/messenger/chats-command.js.map +1 -1
  20. package/dist/cli/messenger/chats-members-command.d.ts.map +1 -1
  21. package/dist/cli/messenger/chats-members-command.js +1 -2
  22. package/dist/cli/messenger/chats-members-command.js.map +1 -1
  23. package/dist/cli/messenger/chats-read-command.d.ts +1 -14
  24. package/dist/cli/messenger/chats-read-command.d.ts.map +1 -1
  25. package/dist/cli/messenger/chats-read-command.js +2 -11
  26. package/dist/cli/messenger/chats-read-command.js.map +1 -1
  27. package/dist/cli/messenger/contacts-command.d.ts +1 -21
  28. package/dist/cli/messenger/contacts-command.d.ts.map +1 -1
  29. package/dist/cli/messenger/contacts-command.js +7 -58
  30. package/dist/cli/messenger/contacts-command.js.map +1 -1
  31. package/dist/cli/messenger/download-command.js +3 -3
  32. package/dist/cli/messenger/download-command.js.map +1 -1
  33. package/dist/cli/messenger/guard-commands.d.ts +1 -1
  34. package/dist/cli/messenger/guard-commands.js +3 -3
  35. package/dist/cli/messenger/guard-commands.js.map +1 -1
  36. package/dist/cli/messenger/hearing-command.js +1 -1
  37. package/dist/cli/messenger/hearing-command.js.map +1 -1
  38. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  39. package/dist/cli/messenger/messages-command.js +9 -16
  40. package/dist/cli/messenger/messages-command.js.map +1 -1
  41. package/dist/cli/messenger/patience.d.ts +1 -1
  42. package/dist/cli/messenger/patience.d.ts.map +1 -1
  43. package/dist/cli/messenger/patience.js +1 -1
  44. package/dist/cli/messenger/patience.js.map +1 -1
  45. package/dist/cli/messenger/transcribe-command.js +2 -2
  46. package/dist/cli/messenger/transcribe-command.js.map +1 -1
  47. package/dist/conversations/link.d.ts +30 -0
  48. package/dist/conversations/link.d.ts.map +1 -0
  49. package/dist/conversations/link.js +93 -0
  50. package/dist/conversations/link.js.map +1 -0
  51. package/dist/domain/models.d.ts +2 -0
  52. package/dist/domain/models.d.ts.map +1 -1
  53. package/dist/mcp/instructions.js +1 -1
  54. package/dist/mcp/instructions.js.map +1 -1
  55. package/dist/mcp/tools/chats-read.d.ts.map +1 -1
  56. package/dist/mcp/tools/chats-read.js +6 -3
  57. package/dist/mcp/tools/chats-read.js.map +1 -1
  58. package/dist/mcp/tools/chats.d.ts.map +1 -1
  59. package/dist/mcp/tools/chats.js +12 -10
  60. package/dist/mcp/tools/chats.js.map +1 -1
  61. package/dist/mcp/tools/contacts.d.ts +1 -1
  62. package/dist/mcp/tools/contacts.d.ts.map +1 -1
  63. package/dist/mcp/tools/contacts.js +10 -7
  64. package/dist/mcp/tools/contacts.js.map +1 -1
  65. package/dist/sends/recipients.js +1 -1
  66. package/dist/sends/recipients.js.map +1 -1
  67. package/dist/services/chats.d.ts +47 -0
  68. package/dist/services/chats.d.ts.map +1 -0
  69. package/dist/services/chats.js +57 -0
  70. package/dist/services/chats.js.map +1 -0
  71. package/dist/services/index.d.ts +8 -0
  72. package/dist/services/index.d.ts.map +1 -1
  73. package/dist/services/index.js +9 -1
  74. package/dist/services/index.js.map +1 -1
  75. package/dist/services/people.d.ts +27 -0
  76. package/dist/services/people.d.ts.map +1 -0
  77. package/dist/services/people.js +60 -0
  78. package/dist/services/people.js.map +1 -0
  79. package/dist/speech/hearing.d.ts +6 -6
  80. package/dist/speech/hearing.d.ts.map +1 -1
  81. package/dist/speech/hearing.js +14 -40
  82. package/dist/speech/hearing.js.map +1 -1
  83. package/dist/store/index.d.ts +1 -1
  84. package/dist/store/index.d.ts.map +1 -1
  85. package/dist/store/index.js.map +1 -1
  86. package/dist/store/sqlite/manifest.d.ts.map +1 -1
  87. package/dist/store/sqlite/manifest.js +4 -0
  88. package/dist/store/sqlite/manifest.js.map +1 -1
  89. package/dist/store/sqlite/migrations.generated.d.ts.map +1 -1
  90. package/dist/store/sqlite/migrations.generated.js +25 -0
  91. package/dist/store/sqlite/migrations.generated.js.map +1 -1
  92. package/dist/store/sqlite/schema.d.ts +267 -0
  93. package/dist/store/sqlite/schema.d.ts.map +1 -1
  94. package/dist/store/sqlite/schema.js +36 -0
  95. package/dist/store/sqlite/schema.js.map +1 -1
  96. package/dist/store/store.d.ts +83 -3
  97. package/dist/store/store.d.ts.map +1 -1
  98. package/dist/store/store.js +239 -25
  99. package/dist/store/store.js.map +1 -1
  100. package/package.json +1 -1
@@ -79,20 +79,24 @@ const storeOver = (database, now) => {
79
79
  };
80
80
  /** Every new identity gets its own person; linking two is a later, recorded act. */
81
81
  const identityOf = (provider, nativeId, name, facts = {}) => {
82
- const found = one("SELECT pk, name, username, is_bot FROM identities WHERE provider = ? AND native_id = ?", provider, nativeId);
82
+ const found = one("SELECT pk, name, username, is_bot, description FROM identities WHERE provider = ? AND native_id = ?", provider, nativeId);
83
83
  if (found) {
84
84
  const username = facts.username ?? found.username ?? null;
85
85
  const isBot = facts.isBot === undefined || facts.isBot === null ? (found.is_bot ?? null) : Number(facts.isBot);
86
86
  const newName = name ?? found.name ?? null;
87
+ const description = facts.description ?? found.description ?? null;
87
88
  // Only on a real change: the search trigger rewrites the index row on every update of `name`.
88
- if (newName !== found.name || username !== found.username || isBot !== found.is_bot) {
89
- run("UPDATE identities SET name = ?, username = ?, is_bot = ?, updated_at = ? WHERE pk = ?", newName, username, isBot, now(), Number(found.pk));
89
+ if (newName !== found.name ||
90
+ username !== found.username ||
91
+ isBot !== found.is_bot ||
92
+ description !== found.description) {
93
+ run("UPDATE identities SET name = ?, username = ?, is_bot = ?, description = ?, updated_at = ? WHERE pk = ?", newName, username, isBot, description, now(), Number(found.pk));
90
94
  }
91
95
  return Number(found.pk);
92
96
  }
93
97
  const at = now();
94
- const identity = Number(one(`INSERT INTO identities (provider, native_id, name, username, is_bot, first_seen_at, updated_at)
95
- VALUES (?, ?, ?, ?, ?, ?, ?) RETURNING pk`, provider, nativeId, name, facts.username ?? null, facts.isBot === undefined || facts.isBot === null ? null : Number(facts.isBot), at, at)?.pk);
98
+ const identity = Number(one(`INSERT INTO identities (provider, native_id, name, username, is_bot, description, first_seen_at, updated_at)
99
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?) RETURNING pk`, provider, nativeId, name, facts.username ?? null, facts.isBot === undefined || facts.isBot === null ? null : Number(facts.isBot), facts.description ?? null, at, at)?.pk);
96
100
  const person = Number(one("INSERT INTO persons (uid, name, created_at, updated_at) VALUES (?, ?, ?, ?) RETURNING pk", ulid(at), name, at, at)?.pk);
97
101
  run(`INSERT INTO identity_links (identity_pk, person_pk, method, confidence, linked_at, linked_by)
98
102
  VALUES (?, ?, 'initial', 1, ?, 'ingest')`, identity, person, at);
@@ -103,7 +107,7 @@ const storeOver = (database, now) => {
103
107
  const upsertMessage = (key, accountKey, chatKey, message, via, seenAt) => {
104
108
  const sender = message.senderId === null || message.senderIsChat
105
109
  ? null
106
- : identityPk(accountKey, key.provider, message.senderId, message.senderName);
110
+ : identityPk(accountKey, key.provider, message.senderId, message.senderName, message.senderUsername === undefined ? {} : { username: message.senderUsername });
107
111
  const fields = {
108
112
  thread_native_id: message.threadId ?? null,
109
113
  sender_identity_pk: sender,
@@ -119,9 +123,11 @@ const storeOver = (database, now) => {
119
123
  provider_metadata: json(message.providerMetadata),
120
124
  };
121
125
  const found = one("SELECT pk, text, edited_at, deleted_at FROM messages WHERE chat_pk = ? AND native_id = ?", chatKey, message.id);
122
- // A deleted message gets no second copy of its text (the owner's ruling: deletion leaves no text).
123
126
  const revived = found?.deleted_at != null && seenAt !== undefined && Number(found.deleted_at) < seenAt;
124
- const normalized = found?.deleted_at == null || revived ? searchable(message.text) : {};
127
+ // A deleted message leaves no text behind, and a sync that still carries it does not bring it back.
128
+ if (found?.deleted_at != null && !revived)
129
+ return;
130
+ const normalized = searchable(message.text);
125
131
  let pk;
126
132
  if (!found) {
127
133
  const columns = [...Object.keys(fields), ...Object.keys(normalized)];
@@ -133,12 +139,13 @@ const storeOver = (database, now) => {
133
139
  // A copy that knows less — no reactions asked for, no quote sent, no sender — never erases what we had.
134
140
  const assignments = [...Object.keys(fields), ...Object.keys(normalized)].map((column) => `${column} = coalesce(?, ${column})`);
135
141
  run(`UPDATE messages SET ${assignments.join(", ")} WHERE pk = ?`, ...Object.values(fields), ...Object.values(normalized), pk);
136
- if (found.text !== message.text) {
142
+ // A tombstone emptied the text: there is no earlier version to keep.
143
+ if (found.text !== message.text && !revived) {
137
144
  run("INSERT INTO message_revisions (message_pk, text, edited_at, captured_at) VALUES (?, ?, ?, ?)", pk, String(found.text), found.edited_at ?? null, now());
138
145
  run("UPDATE messages SET text = ? WHERE pk = ?", message.text, pk);
139
146
  }
140
147
  if (revived)
141
- run("UPDATE messages SET deleted_at = NULL WHERE pk = ?", pk);
148
+ run("UPDATE messages SET deleted_at = NULL, text = ? WHERE pk = ?", message.text, pk);
142
149
  }
143
150
  message.attachments.forEach((attachment, position) => {
144
151
  // Upserted by position, never replaced: a later fetch must not lose where the bytes were saved.
@@ -267,6 +274,68 @@ const storeOver = (database, now) => {
267
274
  }
268
275
  return found;
269
276
  };
277
+ const writeMembers = (key, accountKey, chatId, memberIds) => {
278
+ const chatKey = chatPkFor(accountKey, chatId);
279
+ run("DELETE FROM chat_members WHERE chat_pk = ?", chatKey);
280
+ for (const id of new Set(memberIds)) {
281
+ run("INSERT INTO chat_members (chat_pk, identity_pk) VALUES (?, ?)", chatKey, identityPk(accountKey, key.provider, id, null));
282
+ }
283
+ };
284
+ const writeState = (accountKey, name, value) => {
285
+ run(`INSERT INTO sync_state (account_pk, key, value, at) VALUES (?, ?, ?, ?)
286
+ ON CONFLICT (account_pk, key) DO UPDATE SET value = excluded.value, at = excluded.at`, accountKey, name, value, now());
287
+ };
288
+ /**
289
+ * The owner's ruling (NEED-393 A): a deleted message keeps its row, so a later sync cannot bring it
290
+ * back, and leaves no text — not in the row, the search copy, the edit history or a transcript.
291
+ */
292
+ const tombstone = (pk) => {
293
+ const row = one(`UPDATE messages SET deleted_at = ?, text = '', normalized_text = NULL
294
+ WHERE pk = ? AND deleted_at IS NULL RETURNING chat_pk, native_id`, now(), pk);
295
+ if (!row)
296
+ return 0;
297
+ run("DELETE FROM message_revisions WHERE message_pk = ?", pk);
298
+ run("DELETE FROM transcripts WHERE chat_pk = ? AND message_native_id = ?", Number(row.chat_pk), String(row.native_id));
299
+ return 1;
300
+ };
301
+ const chatsWhere = (accountKey, { query, kind, unread }) => {
302
+ const conditions = ["account_pk = ?"];
303
+ const parameters = [accountKey];
304
+ if (query !== undefined) {
305
+ if (query.trim().length < 3) {
306
+ throw new CliError("validation_error", `a chat search takes at least 3 characters, got "${query}"`);
307
+ }
308
+ conditions.push("pk IN (SELECT rowid FROM chats_fts WHERE chats_fts MATCH ?)");
309
+ parameters.push(`"${query.trim().replaceAll('"', '""')}"`);
310
+ }
311
+ if (kind !== undefined) {
312
+ conditions.push("kind = ?");
313
+ parameters.push(kind);
314
+ }
315
+ if (unread)
316
+ conditions.push("unread_count > 0");
317
+ return { sql: `WHERE ${conditions.join(" AND ")}`, parameters };
318
+ };
319
+ /** A contact: someone other than the account itself, in one of its one-to-one chats. */
320
+ const contactsWhere = (accountKey, key, query) => {
321
+ const parameters = [accountKey, key.account];
322
+ let match = "";
323
+ if (query !== undefined) {
324
+ if (query.trim().length < 3) {
325
+ throw new CliError("validation_error", `a contact search takes at least 3 characters, got "${query}"`);
326
+ }
327
+ match = "AND i.pk IN (SELECT rowid FROM identities_fts WHERE identities_fts MATCH ?)";
328
+ parameters.push(`"${query.trim().replaceAll('"', '""')}"`);
329
+ }
330
+ return {
331
+ sql: `FROM account_identities ai JOIN identities i ON i.pk = ai.identity_pk
332
+ WHERE ai.account_pk = ? AND i.native_id != ?
333
+ AND EXISTS (SELECT 1 FROM chat_members cm JOIN chats c ON c.pk = cm.chat_pk
334
+ WHERE cm.identity_pk = i.pk AND c.account_pk = ai.account_pk AND c.kind = 'dialog')
335
+ ${match}`,
336
+ parameters,
337
+ };
338
+ };
270
339
  const MESSAGE_COLUMNS = `m.*, c.native_id AS chat_native_id, i.native_id AS sender_native_id`;
271
340
  const MESSAGE_JOINS = `JOIN chats c ON c.pk = m.chat_pk LEFT JOIN identities i ON i.pk = m.sender_identity_pk`;
272
341
  return {
@@ -286,14 +355,7 @@ const storeOver = (database, now) => {
286
355
  upsertMessage(key, accountKey, chatKey, message, via, seenAt);
287
356
  }
288
357
  }),
289
- saveMembers: async (key, chatId, memberIds) => inTransaction(() => {
290
- const accountKey = accountPk(key);
291
- const chatKey = chatPkFor(accountKey, chatId);
292
- run("DELETE FROM chat_members WHERE chat_pk = ?", chatKey);
293
- for (const id of new Set(memberIds)) {
294
- run("INSERT INTO chat_members (chat_pk, identity_pk) VALUES (?, ?)", chatKey, identityPk(accountKey, key.provider, id, null));
295
- }
296
- }),
358
+ saveMembers: async (key, chatId, memberIds) => inTransaction(() => writeMembers(key, accountPk(key), chatId, memberIds)),
297
359
  members: async (key, chatId) => {
298
360
  const accountKey = findAccountPk(key);
299
361
  const chatKey = accountKey === undefined ? undefined : findChatPk(accountKey, chatId);
@@ -316,15 +378,103 @@ const storeOver = (database, now) => {
316
378
  WHERE c.account_pk = ? AND i.provider = ? AND i.native_id = ?
317
379
  ORDER BY c.last_message_at DESC NULLS LAST, c.pk`, accountKey, key.provider, memberId).map(toChat);
318
380
  },
319
- chats: async (key, { limit, offset = 0 }) => {
381
+ syncState: async (key, name) => {
382
+ const accountKey = findAccountPk(key);
383
+ if (accountKey === undefined)
384
+ return undefined;
385
+ const row = one("SELECT value, at FROM sync_state WHERE account_pk = ? AND key = ?", accountKey, name);
386
+ return row ? { value: String(row.value), at: toIso(row.at) } : undefined;
387
+ },
388
+ setSyncState: async (key, name, value) => inTransaction(() => writeState(accountPk(key), name, value)),
389
+ applyDelta: async (key, { chats = [], people = [], members = new Map(), state = {} }) => inTransaction(() => {
390
+ const accountKey = accountPk(key);
391
+ for (const chat of chats)
392
+ upsertChat(accountKey, chat);
393
+ for (const person of people)
394
+ identityPk(accountKey, key.provider, person.id, person.name, person);
395
+ for (const [chatId, ids] of members)
396
+ writeMembers(key, accountKey, chatId, ids);
397
+ for (const [name, value] of Object.entries(state))
398
+ writeState(accountKey, name, value);
399
+ }),
400
+ clearSyncState: async (key, name) => {
401
+ const accountKey = findAccountPk(key);
402
+ if (accountKey !== undefined)
403
+ run("DELETE FROM sync_state WHERE account_pk = ? AND key = ?", accountKey, name);
404
+ },
405
+ claim: async (key, chatId, anchor, holder, forMs) => {
406
+ let taken = false;
407
+ inTransaction(() => {
408
+ const at = now();
409
+ taken =
410
+ run(`INSERT INTO fetch_leases (chat_pk, anchor, holder, expires_at) VALUES (?, ?, ?, ?)
411
+ ON CONFLICT (chat_pk, anchor) DO UPDATE SET holder = excluded.holder, expires_at = excluded.expires_at
412
+ WHERE fetch_leases.holder = excluded.holder OR fetch_leases.expires_at <= ?`, chatPkFor(accountPk(key), chatId), anchor, holder, at + forMs, at).changes > 0;
413
+ });
414
+ return taken;
415
+ },
416
+ release: async (key, chatId, anchor, holder) => {
417
+ const accountKey = findAccountPk(key);
418
+ const chatKey = accountKey === undefined ? undefined : findChatPk(accountKey, chatId);
419
+ if (chatKey === undefined)
420
+ return;
421
+ run("DELETE FROM fetch_leases WHERE chat_pk = ? AND anchor = ? AND holder = ?", chatKey, anchor, holder);
422
+ },
423
+ transcript: async (key, chatId, messageId) => {
424
+ const accountKey = findAccountPk(key);
425
+ const chatKey = accountKey === undefined ? undefined : findChatPk(accountKey, chatId);
426
+ if (chatKey === undefined)
427
+ return undefined;
428
+ const row = one("SELECT text, source FROM transcripts WHERE chat_pk = ? AND message_native_id = ?", chatKey, messageId);
429
+ return row ? { text: String(row.text), source: String(row.source) } : undefined;
430
+ },
431
+ keepTranscript: async (key, chatId, messageId, text, source) => {
432
+ if (text.trim() === "")
433
+ return;
434
+ inTransaction(() => {
435
+ run(`INSERT INTO transcripts (chat_pk, message_native_id, text, source, heard_at) VALUES (?, ?, ?, ?, ?)
436
+ ON CONFLICT (chat_pk, message_native_id) DO UPDATE SET
437
+ text = excluded.text, source = excluded.source, heard_at = excluded.heard_at`, chatPkFor(accountPk(key), chatId), messageId, text, source, now());
438
+ });
439
+ },
440
+ chats: async (key, { limit, offset = 0, ...filter }) => {
320
441
  const accountKey = findAccountPk(key);
321
442
  if (accountKey === undefined)
322
443
  return { items: [], hasMore: false };
323
- const rows = all(`SELECT * FROM chats WHERE account_pk = ? ORDER BY last_message_at DESC NULLS LAST, pk LIMIT ? OFFSET ?`, accountKey, limit === undefined ? -1 : limit + 1, offset);
444
+ const where = chatsWhere(accountKey, filter);
445
+ const rows = all(`SELECT * FROM chats ${where.sql} ORDER BY last_message_at DESC NULLS LAST, pk LIMIT ? OFFSET ?`, ...where.parameters, limit === undefined ? -1 : limit + 1, offset);
324
446
  const hasMore = limit !== undefined && rows.length > limit;
325
447
  return { items: rows.slice(0, limit).map(toChat), hasMore };
326
448
  },
327
- messages: async (key, chatId, { limit, before }) => {
449
+ countChats: async (key, filter = {}) => {
450
+ const accountKey = findAccountPk(key);
451
+ if (accountKey === undefined)
452
+ return 0;
453
+ const where = chatsWhere(accountKey, filter);
454
+ return Number(one(`SELECT count(*) AS n FROM chats ${where.sql}`, ...where.parameters)?.n);
455
+ },
456
+ countMessages: async (key, chatId, { since } = {}) => {
457
+ const accountKey = findAccountPk(key);
458
+ const chatKey = accountKey === undefined ? undefined : findChatPk(accountKey, chatId);
459
+ if (chatKey === undefined)
460
+ return 0;
461
+ return Number(one(`SELECT count(*) AS n FROM messages WHERE chat_pk = ? AND deleted_at IS NULL AND sent_at >= ?`, chatKey, since === undefined ? Number.MIN_SAFE_INTEGER : toMs(since))?.n);
462
+ },
463
+ messagesWindow: async (key, chatId, { at, before, after }) => {
464
+ const accountKey = findAccountPk(key);
465
+ const chatKey = accountKey === undefined ? undefined : findChatPk(accountKey, chatId);
466
+ if (chatKey === undefined)
467
+ return [];
468
+ const moment = toMs(at);
469
+ const earlier = all(`SELECT ${MESSAGE_COLUMNS} FROM messages m ${MESSAGE_JOINS}
470
+ WHERE m.chat_pk = ? AND m.deleted_at IS NULL AND m.sent_at <= ?
471
+ ORDER BY m.sent_at DESC, m.pk DESC LIMIT ?`, chatKey, moment, before);
472
+ const later = all(`SELECT ${MESSAGE_COLUMNS} FROM messages m ${MESSAGE_JOINS}
473
+ WHERE m.chat_pk = ? AND m.deleted_at IS NULL AND m.sent_at > ?
474
+ ORDER BY m.sent_at, m.pk LIMIT ?`, chatKey, moment, after);
475
+ return toMessages([...earlier.reverse(), ...later]);
476
+ },
477
+ messages: async (key, chatId, { limit, before, since }) => {
328
478
  const accountKey = findAccountPk(key);
329
479
  const chatKey = accountKey === undefined ? undefined : findChatPk(accountKey, chatId);
330
480
  if (chatKey === undefined)
@@ -337,7 +487,8 @@ const storeOver = (database, now) => {
337
487
  }
338
488
  const rows = all(`SELECT ${MESSAGE_COLUMNS} FROM messages m ${MESSAGE_JOINS}
339
489
  WHERE m.chat_pk = ? AND m.deleted_at IS NULL ${anchor ? "AND (m.sent_at, m.pk) < (?, ?)" : ""}
340
- ORDER BY m.sent_at DESC, m.pk DESC LIMIT ?`, chatKey, ...(anchor ? [anchor.sent_at, anchor.pk] : []), limit + 1);
490
+ ${since === undefined ? "" : "AND m.sent_at >= ?"}
491
+ ORDER BY m.sent_at DESC, m.pk DESC LIMIT ?`, chatKey, ...(anchor ? [anchor.sent_at, anchor.pk] : []), ...(since === undefined ? [] : [toMs(since)]), limit + 1);
341
492
  return { items: toMessages(rows.slice(0, limit)).reverse(), hasMore: rows.length > limit };
342
493
  },
343
494
  around: async (key, chatId, messageId, { before, after }) => {
@@ -382,8 +533,10 @@ const storeOver = (database, now) => {
382
533
  inTransaction(() => {
383
534
  for (const messageId of messageIds) {
384
535
  if (chatId !== undefined) {
385
- changed += run(`UPDATE messages SET deleted_at = ? WHERE account_pk = ? AND native_id = ? AND deleted_at IS NULL
386
- AND chat_pk = (SELECT pk FROM chats WHERE account_pk = ? AND native_id = ?)`, now(), accountKey, messageId, accountKey, chatId).changes;
536
+ const found = one(`SELECT pk FROM messages WHERE account_pk = ? AND native_id = ? AND deleted_at IS NULL
537
+ AND chat_pk = (SELECT pk FROM chats WHERE account_pk = ? AND native_id = ?)`, accountKey, messageId, accountKey, chatId);
538
+ if (found)
539
+ changed += tombstone(Number(found.pk));
387
540
  continue;
388
541
  }
389
542
  // Telegram names a deletion without its chat only where ids count per account; a channel or
@@ -394,13 +547,74 @@ const storeOver = (database, now) => {
394
547
  AND coalesce(json_extract(c.provider_metadata, '$.chatType'), '') NOT IN ${OWN_NUMBERING}`, accountKey, messageId);
395
548
  if (candidates.length !== 1)
396
549
  continue;
397
- changed += run("UPDATE messages SET deleted_at = ? WHERE pk = ?", now(), candidates[0]?.pk).changes;
550
+ changed += tombstone(Number(candidates[0]?.pk));
398
551
  }
399
552
  });
400
553
  return changed;
401
554
  },
555
+ purge: async (key) => {
556
+ const accountKey = findAccountPk(key);
557
+ if (accountKey === undefined)
558
+ return;
559
+ const chatsOf = "SELECT pk FROM chats WHERE account_pk = ?";
560
+ inTransaction(() => {
561
+ for (const sql of [
562
+ `DELETE FROM transcripts WHERE chat_pk IN (${chatsOf})`,
563
+ `DELETE FROM fetch_leases WHERE chat_pk IN (${chatsOf})`,
564
+ `DELETE FROM chat_members WHERE chat_pk IN (${chatsOf})`,
565
+ `DELETE FROM sync_ranges WHERE chat_pk IN (${chatsOf})`,
566
+ "DELETE FROM message_revisions WHERE message_pk IN (SELECT pk FROM messages WHERE account_pk = ?)",
567
+ "DELETE FROM attachments WHERE message_pk IN (SELECT pk FROM messages WHERE account_pk = ?)",
568
+ "DELETE FROM messages WHERE account_pk = ?",
569
+ "DELETE FROM chats WHERE account_pk = ?",
570
+ "DELETE FROM sync_state WHERE account_pk = ?",
571
+ "DELETE FROM account_identities WHERE account_pk = ?",
572
+ "DELETE FROM accounts WHERE pk = ?",
573
+ ]) {
574
+ run(sql, accountKey);
575
+ }
576
+ });
577
+ },
402
578
  search: async (query, { limit, account }) => find({ text: query, limit, ...(account ? { account } : {}) }),
403
579
  find: async (filter) => find(filter),
580
+ contacts: async (key, { order, query, limit, offset = 0 }) => {
581
+ const accountKey = findAccountPk(key);
582
+ if (accountKey === undefined)
583
+ return { items: [], hasMore: false };
584
+ const where = contactsWhere(accountKey, key, query);
585
+ const rows = all(`SELECT i.native_id, i.name, i.username, i.description, ai.last_messaged_at ${where.sql}
586
+ ORDER BY ${order === "recent" ? "ai.last_messaged_at DESC NULLS LAST, " : ""}i.name IS NULL, i.name, i.native_id
587
+ LIMIT ? OFFSET ?`, ...where.parameters, limit + 1, offset);
588
+ return {
589
+ items: rows.slice(0, limit).map((row) => ({
590
+ id: String(row.native_id),
591
+ name: row.name ?? null,
592
+ username: row.username ?? null,
593
+ description: row.description ?? null,
594
+ lastMessagedAt: toIso(row.last_messaged_at),
595
+ })),
596
+ hasMore: rows.length > limit,
597
+ };
598
+ },
599
+ countContacts: async (key, { query } = {}) => {
600
+ const accountKey = findAccountPk(key);
601
+ if (accountKey === undefined)
602
+ return 0;
603
+ const where = contactsWhere(accountKey, key, query);
604
+ return Number(one(`SELECT count(*) AS n ${where.sql}`, ...where.parameters)?.n);
605
+ },
606
+ refreshRecency: async (key) => {
607
+ const accountKey = findAccountPk(key);
608
+ if (accountKey === undefined)
609
+ return;
610
+ inTransaction(() => {
611
+ run(`UPDATE account_identities SET last_messaged_at = (
612
+ SELECT max(c.last_message_at) FROM chat_members cm JOIN chats c ON c.pk = cm.chat_pk
613
+ WHERE cm.identity_pk = account_identities.identity_pk AND c.account_pk = account_identities.account_pk
614
+ AND c.kind = 'dialog')
615
+ WHERE account_pk = ?`, accountKey);
616
+ });
617
+ },
404
618
  savePeople: async (key, people) => inTransaction(() => {
405
619
  const accountKey = accountPk(key);
406
620
  for (const person of people)
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leemour/cli-messaging",
3
- "version": "0.55.0",
3
+ "version": "0.57.0",
4
4
  "description": "The messenger-neutral half of a messaging CLI: domain model, message locators, rendering, name resolution, the SQLite seam, the command skeleton and shared read commands, the send guard, run records and the message store",
5
5
  "license": "MIT",
6
6
  "author": "Viacheslav Ptsarev",