@leemour/cli-messaging 0.87.0 → 0.89.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 (224) hide show
  1. package/README.md +1 -0
  2. package/dist/background/index.d.ts +5 -0
  3. package/dist/background/index.d.ts.map +1 -0
  4. package/dist/background/index.js +5 -0
  5. package/dist/background/index.js.map +1 -0
  6. package/dist/background/lock.d.ts +17 -0
  7. package/dist/background/lock.d.ts.map +1 -0
  8. package/dist/background/lock.js +34 -0
  9. package/dist/background/lock.js.map +1 -0
  10. package/dist/background/processes.d.ts.map +1 -0
  11. package/dist/background/processes.js.map +1 -0
  12. package/dist/background/system.d.ts +20 -0
  13. package/dist/background/system.d.ts.map +1 -0
  14. package/dist/background/system.js +39 -0
  15. package/dist/background/system.js.map +1 -0
  16. package/dist/background/units.d.ts +42 -0
  17. package/dist/background/units.d.ts.map +1 -0
  18. package/dist/background/units.js +178 -0
  19. package/dist/background/units.js.map +1 -0
  20. package/dist/cli/bot/port.d.ts +29 -0
  21. package/dist/cli/bot/port.d.ts.map +1 -0
  22. package/dist/cli/bot/port.js +2 -0
  23. package/dist/cli/bot/port.js.map +1 -0
  24. package/dist/cli/bot/registry.d.ts +37 -0
  25. package/dist/cli/bot/registry.d.ts.map +1 -0
  26. package/dist/cli/bot/registry.js +94 -0
  27. package/dist/cli/bot/registry.js.map +1 -0
  28. package/dist/cli/bot/token.d.ts +25 -0
  29. package/dist/cli/bot/token.d.ts.map +1 -0
  30. package/dist/cli/bot/token.js +36 -0
  31. package/dist/cli/bot/token.js.map +1 -0
  32. package/dist/cli/config-command.d.ts.map +1 -1
  33. package/dist/cli/config-command.js +17 -5
  34. package/dist/cli/config-command.js.map +1 -1
  35. package/dist/cli/context.d.ts +3 -0
  36. package/dist/cli/context.d.ts.map +1 -1
  37. package/dist/cli/context.js.map +1 -1
  38. package/dist/cli/index.d.ts +5 -1
  39. package/dist/cli/index.d.ts.map +1 -1
  40. package/dist/cli/index.js +3 -0
  41. package/dist/cli/index.js.map +1 -1
  42. package/dist/cli/messenger/admin-moderation-command.d.ts +11 -0
  43. package/dist/cli/messenger/admin-moderation-command.d.ts.map +1 -0
  44. package/dist/cli/messenger/admin-moderation-command.js +83 -0
  45. package/dist/cli/messenger/admin-moderation-command.js.map +1 -0
  46. package/dist/cli/messenger/after.d.ts +18 -5
  47. package/dist/cli/messenger/after.d.ts.map +1 -1
  48. package/dist/cli/messenger/after.js +19 -30
  49. package/dist/cli/messenger/after.js.map +1 -1
  50. package/dist/cli/messenger/ask.d.ts +2 -0
  51. package/dist/cli/messenger/ask.d.ts.map +1 -1
  52. package/dist/cli/messenger/ask.js +7 -0
  53. package/dist/cli/messenger/ask.js.map +1 -1
  54. package/dist/cli/messenger/backfill-jobs.d.ts.map +1 -1
  55. package/dist/cli/messenger/backfill-jobs.js +1 -1
  56. package/dist/cli/messenger/backfill-jobs.js.map +1 -1
  57. package/dist/cli/messenger/chats-command.d.ts.map +1 -1
  58. package/dist/cli/messenger/chats-command.js +3 -0
  59. package/dist/cli/messenger/chats-command.js.map +1 -1
  60. package/dist/cli/messenger/context.d.ts +5 -0
  61. package/dist/cli/messenger/context.d.ts.map +1 -1
  62. package/dist/cli/messenger/context.js +3 -0
  63. package/dist/cli/messenger/context.js.map +1 -1
  64. package/dist/cli/messenger/conversations-command.d.ts +10 -0
  65. package/dist/cli/messenger/conversations-command.d.ts.map +1 -0
  66. package/dist/cli/messenger/conversations-command.js +101 -0
  67. package/dist/cli/messenger/conversations-command.js.map +1 -0
  68. package/dist/cli/messenger/hearing-command.d.ts.map +1 -1
  69. package/dist/cli/messenger/hearing-command.js +4 -1
  70. package/dist/cli/messenger/hearing-command.js.map +1 -1
  71. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  72. package/dist/cli/messenger/messages-command.js +9 -7
  73. package/dist/cli/messenger/messages-command.js.map +1 -1
  74. package/dist/cli/messenger/port.d.ts +6 -1
  75. package/dist/cli/messenger/port.d.ts.map +1 -1
  76. package/dist/cli/messenger/port.js.map +1 -1
  77. package/dist/cli/messenger/serve-command.d.ts +1 -13
  78. package/dist/cli/messenger/serve-command.d.ts.map +1 -1
  79. package/dist/cli/messenger/serve-command.js +7 -32
  80. package/dist/cli/messenger/serve-command.js.map +1 -1
  81. package/dist/cli/messenger/server-command.d.ts +1 -17
  82. package/dist/cli/messenger/server-command.d.ts.map +1 -1
  83. package/dist/cli/messenger/server-command.js +24 -222
  84. package/dist/cli/messenger/server-command.js.map +1 -1
  85. package/dist/cli/messenger/store-maintenance-command.d.ts.map +1 -1
  86. package/dist/cli/messenger/store-maintenance-command.js +35 -1
  87. package/dist/cli/messenger/store-maintenance-command.js.map +1 -1
  88. package/dist/cli/messenger/transcribe-command.d.ts.map +1 -1
  89. package/dist/cli/messenger/transcribe-command.js +4 -1
  90. package/dist/cli/messenger/transcribe-command.js.map +1 -1
  91. package/dist/cli/settings.d.ts +25 -1
  92. package/dist/cli/settings.d.ts.map +1 -1
  93. package/dist/cli/settings.js +108 -34
  94. package/dist/cli/settings.js.map +1 -1
  95. package/dist/conversations/link.d.ts +2 -2
  96. package/dist/conversations/link.d.ts.map +1 -1
  97. package/dist/conversations/link.js +6 -4
  98. package/dist/conversations/link.js.map +1 -1
  99. package/dist/domain/models.d.ts +4 -0
  100. package/dist/domain/models.d.ts.map +1 -1
  101. package/dist/domain/send-time.d.ts +1 -1
  102. package/dist/domain/send-time.js +4 -4
  103. package/dist/domain/send-time.js.map +1 -1
  104. package/dist/index.d.ts +4 -0
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.js +2 -0
  107. package/dist/index.js.map +1 -1
  108. package/dist/mcp/confirm.js +1 -1
  109. package/dist/mcp/confirm.js.map +1 -1
  110. package/dist/mcp/tool.d.ts +2 -0
  111. package/dist/mcp/tool.d.ts.map +1 -1
  112. package/dist/mcp/tool.js +2 -0
  113. package/dist/mcp/tool.js.map +1 -1
  114. package/dist/mcp/tools/chats.d.ts.map +1 -1
  115. package/dist/mcp/tools/chats.js +13 -8
  116. package/dist/mcp/tools/chats.js.map +1 -1
  117. package/dist/mcp/tools/conversations.d.ts +5 -0
  118. package/dist/mcp/tools/conversations.d.ts.map +1 -0
  119. package/dist/mcp/tools/conversations.js +56 -0
  120. package/dist/mcp/tools/conversations.js.map +1 -0
  121. package/dist/mcp/tools/inbox.js +3 -3
  122. package/dist/mcp/tools/inbox.js.map +1 -1
  123. package/dist/mcp/tools/messages-send.js +4 -4
  124. package/dist/mcp/tools/messages-send.js.map +1 -1
  125. package/dist/mcp/tools/messages.d.ts.map +1 -1
  126. package/dist/mcp/tools/messages.js +25 -18
  127. package/dist/mcp/tools/messages.js.map +1 -1
  128. package/dist/mcp/tools/moderation.d.ts +8 -0
  129. package/dist/mcp/tools/moderation.d.ts.map +1 -0
  130. package/dist/mcp/tools/moderation.js +36 -0
  131. package/dist/mcp/tools/moderation.js.map +1 -0
  132. package/dist/mcp/tools/review.d.ts.map +1 -1
  133. package/dist/mcp/tools/review.js +3 -3
  134. package/dist/mcp/tools/review.js.map +1 -1
  135. package/dist/mcp/tools.d.ts.map +1 -1
  136. package/dist/mcp/tools.js +4 -0
  137. package/dist/mcp/tools.js.map +1 -1
  138. package/dist/moderation/check.d.ts +83 -0
  139. package/dist/moderation/check.d.ts.map +1 -0
  140. package/dist/moderation/check.js +227 -0
  141. package/dist/moderation/check.js.map +1 -0
  142. package/dist/moderation/rules.d.ts +105 -0
  143. package/dist/moderation/rules.d.ts.map +1 -0
  144. package/dist/moderation/rules.js +158 -0
  145. package/dist/moderation/rules.js.map +1 -0
  146. package/dist/parity/bin.js +15 -2
  147. package/dist/parity/bin.js.map +1 -1
  148. package/dist/parity/index.d.ts +1 -0
  149. package/dist/parity/index.d.ts.map +1 -1
  150. package/dist/parity/index.js +1 -0
  151. package/dist/parity/index.js.map +1 -1
  152. package/dist/parity/wording.d.ts +7 -0
  153. package/dist/parity/wording.d.ts.map +1 -0
  154. package/dist/parity/wording.js +31 -0
  155. package/dist/parity/wording.js.map +1 -0
  156. package/dist/sends/permissions.d.ts +5 -3
  157. package/dist/sends/permissions.d.ts.map +1 -1
  158. package/dist/sends/permissions.js +30 -6
  159. package/dist/sends/permissions.js.map +1 -1
  160. package/dist/services/conversations.d.ts +45 -0
  161. package/dist/services/conversations.d.ts.map +1 -0
  162. package/dist/services/conversations.js +92 -0
  163. package/dist/services/conversations.js.map +1 -0
  164. package/dist/services/deps.d.ts +7 -1
  165. package/dist/services/deps.d.ts.map +1 -1
  166. package/dist/services/deps.js +2 -1
  167. package/dist/services/deps.js.map +1 -1
  168. package/dist/services/index.d.ts +8 -0
  169. package/dist/services/index.d.ts.map +1 -1
  170. package/dist/services/index.js +6 -0
  171. package/dist/services/index.js.map +1 -1
  172. package/dist/services/messages.d.ts +2 -0
  173. package/dist/services/messages.d.ts.map +1 -1
  174. package/dist/services/messages.js +7 -1
  175. package/dist/services/messages.js.map +1 -1
  176. package/dist/services/moderation.d.ts +33 -0
  177. package/dist/services/moderation.d.ts.map +1 -0
  178. package/dist/services/moderation.js +99 -0
  179. package/dist/services/moderation.js.map +1 -0
  180. package/dist/speech/transcribe.d.ts +5 -1
  181. package/dist/speech/transcribe.d.ts.map +1 -1
  182. package/dist/speech/transcribe.js +2 -2
  183. package/dist/speech/transcribe.js.map +1 -1
  184. package/dist/store/sqlite/conversations.d.ts +45 -0
  185. package/dist/store/sqlite/conversations.d.ts.map +1 -0
  186. package/dist/store/sqlite/conversations.js +309 -0
  187. package/dist/store/sqlite/conversations.js.map +1 -0
  188. package/dist/store/sqlite/drizzle/bun.js +1 -1
  189. package/dist/store/sqlite/drizzle/core.d.ts +1 -1
  190. package/dist/store/sqlite/drizzle/core.d.ts.map +1 -1
  191. package/dist/store/sqlite/drizzle/core.js +5 -3
  192. package/dist/store/sqlite/drizzle/core.js.map +1 -1
  193. package/dist/store/sqlite/drizzle/node.js +1 -1
  194. package/dist/store/sqlite/drizzle/{shared-JAIU3GYB.js → shared-VIVPOB3Q.js} +5 -1
  195. package/dist/store/sqlite/drizzle/{shared-JAIU3GYB.js.map → shared-VIVPOB3Q.js.map} +1 -1
  196. package/dist/store/sqlite/manifest.d.ts.map +1 -1
  197. package/dist/store/sqlite/manifest.js +1 -0
  198. package/dist/store/sqlite/manifest.js.map +1 -1
  199. package/dist/store/sqlite/messages.d.ts.map +1 -1
  200. package/dist/store/sqlite/messages.js +2 -0
  201. package/dist/store/sqlite/messages.js.map +1 -1
  202. package/dist/store/sqlite/migrations.generated.d.ts.map +1 -1
  203. package/dist/store/sqlite/migrations.generated.js +15 -0
  204. package/dist/store/sqlite/migrations.generated.js.map +1 -1
  205. package/dist/store/sqlite/reads.d.ts +50 -0
  206. package/dist/store/sqlite/reads.d.ts.map +1 -1
  207. package/dist/store/sqlite/reads.js +2 -1
  208. package/dist/store/sqlite/reads.js.map +1 -1
  209. package/dist/store/sqlite/schema.d.ts +494 -0
  210. package/dist/store/sqlite/schema.d.ts.map +1 -1
  211. package/dist/store/sqlite/schema.js +78 -1
  212. package/dist/store/sqlite/schema.js.map +1 -1
  213. package/dist/store/sqlite/search.d.ts +33 -0
  214. package/dist/store/sqlite/search.d.ts.map +1 -1
  215. package/dist/store/store.d.ts +70 -0
  216. package/dist/store/store.d.ts.map +1 -1
  217. package/dist/store/store.js +46 -0
  218. package/dist/store/store.js.map +1 -1
  219. package/package.json +5 -1
  220. package/parity.json +115 -104
  221. package/dist/cli/messenger/processes.d.ts.map +0 -1
  222. package/dist/cli/messenger/processes.js.map +0 -1
  223. /package/dist/{cli/messenger → background}/processes.d.ts +0 -0
  224. /package/dist/{cli/messenger → background}/processes.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"deps.js","sourceRoot":"","sources":["../../src/services/deps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAqB5C;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,IAAiB,EACkD,EAAE;IACrE,IAAI,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,EAAE,CAAA;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAClB,4HAA4H,CAAA;AAE9H,qFAAqF;AACrF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAoB,EAAE,OAAyB,EAAE,KAAgB,EAAe,EAAE,CAAC,CAAC;IAC7G,SAAS;IACT,OAAO,EAAE,KAAK;IACd,KAAK;IACL,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;IAC/B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAC3B,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,QAAQ,CAAC,sBAAsB,EAAE,kDAAkD,CAAC,CAAA;QACjH,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IACxD,CAAC;IACD,KAAK,EAAE,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,gEAAgE,CAAC,CAAA;IAC1G,CAAC;CACF,CAAC,CAAA;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,SAAoB,EACpB,KAAmB,EACnB,OAAmB,EACnB,KAAgB,EACH,EAAE,CAAC,CAAC;IACjB,SAAS;IACT,OAAO,EAAE,IAAI;IACb,KAAK;IACL,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;IAC5B,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;IACxB,UAAU,EAAE,KAAK,IAAI,EAAE;QACrB,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"deps.js","sourceRoot":"","sources":["../../src/services/deps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAwB5C;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,IAAiB,EACkD,EAAE;IACrE,IAAI,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,EAAE,CAAA;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAClB,4HAA4H,CAAA;AAE9H,qFAAqF;AACrF,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,SAAoB,EACpB,OAAyB,EACzB,KAAgB,EAChB,KAAK,GAAkD,EAAE,EAC5C,EAAE,CAAC,CAAC;IACjB,SAAS;IACT,GAAG,KAAK;IACR,OAAO,EAAE,KAAK;IACd,KAAK;IACL,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;IAC/B,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAC3B,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,QAAQ,CAAC,sBAAsB,EAAE,kDAAkD,CAAC,CAAA;QACjH,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IACxD,CAAC;IACD,KAAK,EAAE,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,gEAAgE,CAAC,CAAA;IAC1G,CAAC;CACF,CAAC,CAAA;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,SAAoB,EACpB,KAAmB,EACnB,OAAmB,EACnB,KAAgB,EACH,EAAE,CAAC,CAAC;IACjB,SAAS;IACT,OAAO,EAAE,IAAI;IACb,KAAK;IACL,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;IAC5B,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;IACxB,UAAU,EAAE,KAAK,IAAI,EAAE;QACrB,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;CACF,CAAC,CAAA"}
@@ -2,10 +2,12 @@ import { type AccountService } from "./account.js";
2
2
  import { type AdminService } from "./admin.js";
3
3
  import { type ArchiveService } from "./archive.js";
4
4
  import { type ChatsService } from "./chats.js";
5
+ import { type ConversationsService } from "./conversations.js";
5
6
  import type { ServiceDeps } from "./deps.js";
6
7
  import { type FoldersService } from "./folders.js";
7
8
  import { type InboxService } from "./inbox.js";
8
9
  import { type MessagesService } from "./messages.js";
10
+ import { type ModerationService } from "./moderation.js";
9
11
  import { type PeopleService } from "./people.js";
10
12
  export type { AccountService } from "./account.js";
11
13
  export { accountService } from "./account.js";
@@ -15,6 +17,8 @@ export type { ArchiveService, Fetched, FetchOptions } from "./archive.js";
15
17
  export { archiveService } from "./archive.js";
16
18
  export type { ChatFilter, ChatsService, MarkedRead, PageWindow } from "./chats.js";
17
19
  export { CHAT_SCAN, chatsService, EVENTS_DAYS } from "./chats.js";
20
+ export type { Built, ConversationsService, MessageLinks } from "./conversations.js";
21
+ export { conversationsService } from "./conversations.js";
18
22
  export type { ServiceDeps } from "./deps.js";
19
23
  export { OFFLINE, onlineDeps, storedDeps } from "./deps.js";
20
24
  export type { FolderEdit, FoldersService } from "./folders.js";
@@ -23,6 +27,8 @@ export type { InboxService } from "./inbox.js";
23
27
  export { inboxService } from "./inbox.js";
24
28
  export type { AroundWindow, ListWindow, MessagesService, MessageTarget, Pinned, Reacted, SearchQuery, SendRequest, } from "./messages.js";
25
29
  export { DELETE_AT_ONCE, messagesService, storedChatId } from "./messages.js";
30
+ export type { ModerateOptions, ModerationService, ShownRules } from "./moderation.js";
31
+ export { moderationService } from "./moderation.js";
26
32
  export type { ContactSync, PeopleService } from "./people.js";
27
33
  export { peopleService, phoneOf } from "./people.js";
28
34
  export interface Services {
@@ -34,6 +40,8 @@ export interface Services {
34
40
  admin: AdminService;
35
41
  folders: FoldersService;
36
42
  account: AccountService;
43
+ moderation: ModerationService;
44
+ conversations: ConversationsService;
37
45
  }
38
46
  /**
39
47
  * How a CLI replaces a use case: it returns the services it changes, whole, and can call the shared
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,YAAY,CAAA;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,aAAa,CAAA;AAE/D,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAClF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC3D,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,YAAY,EACV,YAAY,EACZ,UAAU,EACV,eAAe,EACf,aAAa,EACb,MAAM,EACN,OAAO,EACP,WAAW,EACX,WAAW,GACZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC7E,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAEpD,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,EAAE,YAAY,CAAA;IACnB,OAAO,EAAE,cAAc,CAAA;IACvB,KAAK,EAAE,YAAY,CAAA;IACnB,OAAO,EAAE,cAAc,CAAA;IACvB,OAAO,EAAE,cAAc,CAAA;CACxB;AAED;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAE/E,4GAA4G;AAC5G,eAAO,MAAM,WAAW,SAAU,WAAW,KAAG,QAY/C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"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"}
@@ -2,18 +2,22 @@ import { accountService } from "./account.js";
2
2
  import { adminService } from "./admin.js";
3
3
  import { archiveService } from "./archive.js";
4
4
  import { chatsService } from "./chats.js";
5
+ import { conversationsService } from "./conversations.js";
5
6
  import { foldersService } from "./folders.js";
6
7
  import { inboxService } from "./inbox.js";
7
8
  import { messagesService } from "./messages.js";
9
+ import { moderationService } from "./moderation.js";
8
10
  import { peopleService } from "./people.js";
9
11
  export { accountService } from "./account.js";
10
12
  export { adminService } from "./admin.js";
11
13
  export { archiveService } from "./archive.js";
12
14
  export { CHAT_SCAN, chatsService, EVENTS_DAYS } from "./chats.js";
15
+ export { conversationsService } from "./conversations.js";
13
16
  export { OFFLINE, onlineDeps, storedDeps } from "./deps.js";
14
17
  export { foldersService } from "./folders.js";
15
18
  export { inboxService } from "./inbox.js";
16
19
  export { DELETE_AT_ONCE, messagesService, storedChatId } from "./messages.js";
20
+ export { moderationService } from "./moderation.js";
17
21
  export { peopleService, phoneOf } from "./people.js";
18
22
  /** The shared services, with the messenger's `services` override applied — commands and MCP tools alike. */
19
23
  export const servicesFor = (deps) => {
@@ -26,6 +30,8 @@ export const servicesFor = (deps) => {
26
30
  admin: adminService(deps),
27
31
  folders: foldersService(deps),
28
32
  account: accountService(deps),
33
+ moderation: moderationService(deps),
34
+ conversations: conversationsService(deps),
29
35
  };
30
36
  return deps.messenger.services ? { ...base, ...deps.messenger.services(base, deps) } : base;
31
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAqB,YAAY,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAqB,YAAY,EAAE,MAAM,YAAY,CAAA;AAE5D,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAqB,YAAY,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAwB,eAAe,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAsB,aAAa,EAAE,MAAM,aAAa,CAAA;AAG/D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEjE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAWzC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE7E,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAmBpD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAiB,EAAY,EAAE;IACzD,MAAM,IAAI,GAAa;QACrB,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC;QAC/B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;QACzB,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC;QAC3B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;QAC7B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;QAC7B,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;KAC9B,CAAA;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAC7F,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAqB,YAAY,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAqB,YAAY,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAA6B,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEpF,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAqB,YAAY,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAwB,eAAe,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAA0B,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAsB,aAAa,EAAE,MAAM,aAAa,CAAA;AAG/D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEzD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAWzC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAE7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAEnD,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAqBpD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAiB,EAAY,EAAE;IACzD,MAAM,IAAI,GAAa;QACrB,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC;QAC/B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;QACzB,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC;QAC3B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;QAC7B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;QAC7B,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;QAC7B,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC;QACnC,aAAa,EAAE,oBAAoB,CAAC,IAAI,CAAC;KAC1C,CAAA;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAC7F,CAAC,CAAA"}
@@ -8,6 +8,8 @@ import type { ServiceDeps } from "./deps.js";
8
8
  export interface ListWindow {
9
9
  limit: number;
10
10
  before?: string;
11
+ /** Read back from this moment, epoch milliseconds. */
12
+ beforeTime?: number;
11
13
  /** Read forward from this message or moment, parsed by the caller in its own words (`afterOf`). */
12
14
  after?: After;
13
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/services/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/services/messages.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,13 @@ export const messagesService = (deps) => {
20
20
  return { operationId, chatId, messageId: message, pinned };
21
21
  };
22
22
  return {
23
- list: async (chat, { limit, before, after }) => {
23
+ list: async (chat, { limit, before, beforeTime, after }) => {
24
+ if (beforeTime !== undefined) {
25
+ if (deps.offline)
26
+ throw new CliError("validation_error", "reading back from a time asks the messenger; not with --offline");
27
+ const connection = await deps.connection();
28
+ return capability(connection, "historyBefore", "read back from a time")(chat, { limit, time: beforeTime });
29
+ }
24
30
  if (after !== undefined) {
25
31
  if (deps.offline)
26
32
  throw new CliError("validation_error", "reading forward asks the messenger; the store pages only backwards");
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/services/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAc,UAAU,EAAa,MAAM,0BAA0B,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAiB,MAAM,qBAAqB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAyD/D,uEAAuE;AACvE,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAA;AAyBhC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAiB,EAAmB,EAAE;IACpE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IACtB,MAAM,OAAO,GAAG,KAAK,EAAK,IAA8D,EAAc,EAAE,CACtG,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IAEhD,MAAM,OAAO,GAAG,KAAK,EACnB,EAAE,IAAI,EAAE,OAAO,EAAiB,EAChC,MAAe,EACf,MAAe,EACY,EAAE;QAC7B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;QAC1C,MAAM,GAAG,GAAG,MAAM;YAChB,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,EAAE,eAAe,CAAC;YAChD,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAA;QACtD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACrD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;QACpC,MAAM,YAAY,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAC/F,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,CACjC,CAAA;QACD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;IAC5D,CAAC,CAAA;IAED,OAAO;QACL,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,OAAO;oBACd,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,oEAAoE,CAAC,CAAA;gBAC9G,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC1C,OAAO,UAAU,CAAC,UAAU,EAAE,cAAc,EAAE,6BAA6B,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;YACtG,CAAC;YACD,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;YACrE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CACtC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAC1F,CAAA;YACH,CAAC;YACD,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACxD,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CACtC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CACjG,CAAA;YACH,CAAC;YACD,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAChE,CAAC;QAED,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CACzC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAC/B,KAAK,CAAC,IAAI,CAAC;YACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;YACjD,OAAO;YACP,KAAK;YACL,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;SACpG,CAAC,CACH;QAEH,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,EAAE,EAAE;YACxG,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,IAAI,EAAE,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC7C,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,wGAAwG,CACzG,CAAA;YACH,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;YACtF,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,2CAA2C,CAAC,CAAA;YACrF,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACrD,MAAM,EAAE,GAAG,MAAM,IAAI,UAAU,CAAC,SAAS,EAAE,EAAE,IAAI,SAAS,EAAE,CAAA;YAC5D,MAAM,OAAO,GAAG;gBACd,MAAM;gBACN,IAAI,EAAE,SAAkB;gBACxB,MAAM,EAAE,EAAE;gBACV,WAAW,EAAE,EAAE;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;gBAC7C,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;gBACjD,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;oBAC1B,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC;aAChG,CAAA;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,YAAY,CAC7B,KAAK,EACL,OAAO,EACP,GAAG,EAAE,CACH,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE;oBAC5B,MAAM,EAAE,EAAE;oBACV,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;oBAC7C,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxC,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;oBACnC,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;iBACrD,CAAC,EACJ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAC3C,CAAA;gBACD,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,iBAAiB,EAAE,CAAC;oBAC5D,MAAM,IAAI,QAAQ,CAChB,iBAAiB,EACjB,sGAAsG;wBACpG,oCAAoC,EACtC,EAAE,YAAY,EAAE,EAAE,EAAE,CACrB,CAAA;gBACH,CAAC;gBACD,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;QAED,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;YACvD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAA;YAC7D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;YACtF,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,uCAAuC,CAAC,CAAA;YACvG,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACrD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;YACpC,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,KAAK,EACL,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAC9E,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACvE,CAAA;YACD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;QACzC,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE;YAChD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,IAAI,QAAQ,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;gBACrC,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,WAAW,cAAc,0BAA0B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9G,CAAC;YACD,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAA;YAClE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACrD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;YACpC,MAAM,YAAY,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,CAC3G,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAC1C,CAAA;YACD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;QAChE,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE;YACvD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAA;YACtE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACzD,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACrD,MAAM,EAAE,GAAG,MAAM,IAAI,UAAU,CAAC,SAAS,EAAE,EAAE,IAAI,SAAS,EAAE,CAAA;YAC5D,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC,KAAK,EACL,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAClE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAC3F,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CACnC,CAAA;YACD,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;QAC5D,CAAC;QAED,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;QAC7D,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;QAEhD,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;YACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,IAAI,KAAK,KAAK,EAAE;gBAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,uCAAuC,CAAC,CAAA;YACjG,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,oBAAoB,CAAC,CAAA;YACnE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACrD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;YACpC,MAAM,YAAY,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAC5F,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAC9B,CAAA;YACD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;QACrE,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAED,+FAA+F;AAC/F,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,SAAoB,EACpB,SAAiB,EACjB,KAAmB,EACnB,OAAmB,EACF,EAAE;IACnB,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;IAChC,IAAI,SAAS,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACrF,OAAO,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACvC,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAA;IAC3C,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;IACpD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,CAAA;IACrD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,EAAE,CAAA;IAC1B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,CAAA;QAC1G,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,qBAAqB,OAAO,EAAE,CAAC,CAAA;QAC3E,OAAO,KAAK,CAAC,EAAE,CAAA;IACjB,CAAC;IACD,OAAO,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,CAAA;AACpC,CAAC,CAAA"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/services/messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { Id } from "../domain/models.js";
2
+ import { type CheckRow, type Finding } from "../moderation/check.js";
3
+ import { type GroupRules } from "../moderation/rules.js";
4
+ import type { ServiceDeps } from "./deps.js";
5
+ export interface ShownRules {
6
+ chatId: Id;
7
+ title: string | null;
8
+ file: string;
9
+ /** `false`: the group has no section yet, and these are the defaults. */
10
+ saved: boolean;
11
+ rules: GroupRules;
12
+ }
13
+ export interface ModerateOptions {
14
+ /** ms; the saved point is neither read nor moved. */
15
+ since?: number;
16
+ dryRun: boolean;
17
+ allowDangerous: boolean;
18
+ maxActions?: number;
19
+ confirm?: (finding: Finding) => Promise<boolean | undefined>;
20
+ }
21
+ /** A group's rules, and the one command that acts on them (max-cli `NEED-306`). */
22
+ export interface ModerationService {
23
+ rules(chat: string): Promise<ShownRules>;
24
+ set(chat: string, key: string, value: string): Promise<ShownRules>;
25
+ unset(chat: string, key: string): Promise<ShownRules>;
26
+ moderate(chat: string, options: ModerateOptions): Promise<{
27
+ chatId: Id;
28
+ rows: CheckRow[];
29
+ notes: string[];
30
+ }>;
31
+ }
32
+ export declare const moderationService: (deps: ServiceDeps) => ModerationService;
33
+ //# sourceMappingURL=moderation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moderation.d.ts","sourceRoot":"","sources":["../../src/services/moderation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,OAAO,EAOb,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAgB,KAAK,UAAU,EAAsC,MAAM,wBAAwB,CAAA;AAG1G,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAE5C,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,EAAE,CAAA;IACV,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,yEAAyE;IACzE,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,OAAO,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAA;CAC7D;AAED,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACxC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAClE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,EAAE,CAAC;QAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAC7G;AAKD,eAAO,MAAM,iBAAiB,SAAU,WAAW,KAAG,iBA6ErD,CAAA"}
@@ -0,0 +1,99 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ import { capability } from "../cli/messenger/port.js";
3
+ import { act, gather, judge, MAX_ACTIONS, nextPoint, someUndone, } from "../moderation/check.js";
4
+ import { defaultRules, ModerationRules, moderationPathFor } from "../moderation/rules.js";
5
+ import { guardedWrite } from "../sends/guarded.js";
6
+ import { newOperationId } from "../sends/send-id.js";
7
+ /** A group never checked before is looked at this far back. */
8
+ const FIRST_LOOK_MS = 24 * 3_600_000;
9
+ export const moderationService = (deps) => {
10
+ const file = () => new ModerationRules(moderationPathFor(deps.messenger.app, deps.profile ?? "default", deps.env ?? process.env));
11
+ const group = async (chat) => {
12
+ if (deps.offline)
13
+ throw new CliError("validation_error", "a group's rules are kept by its id, which the messenger gives");
14
+ return (await deps.connection()).resolve(chat);
15
+ };
16
+ const shown = (chatId, title, rules) => {
17
+ const saved = rules.read(chatId);
18
+ return { chatId, title, file: rules.path, saved: saved !== undefined, rules: saved ?? defaultRules(title) };
19
+ };
20
+ const refuseAge = (key) => {
21
+ if (key.startsWith("newAccount.") && deps.messenger.knowsAccountAge === false) {
22
+ throw new CliError("validation_error", `${deps.messenger.name ?? "this messenger"} does not say how old an account is, so newAccount cannot work`);
23
+ }
24
+ };
25
+ return {
26
+ rules: async (chat) => {
27
+ const { id, title } = await group(chat);
28
+ return shown(id, title, file());
29
+ },
30
+ set: async (chat, key, value) => {
31
+ refuseAge(key);
32
+ const { id, title } = await group(chat);
33
+ const rules = file();
34
+ rules.set(id, title, key, value);
35
+ return shown(id, title, rules);
36
+ },
37
+ unset: async (chat, key) => {
38
+ const { id, title } = await group(chat);
39
+ const rules = file();
40
+ rules.unset(id, title, key);
41
+ return shown(id, title, rules);
42
+ },
43
+ moderate: async (chat, { since, dryRun, allowDangerous, maxActions = MAX_ACTIONS, confirm }) => {
44
+ if (deps.offline)
45
+ throw new CliError("validation_error", "`chats moderate` asks the messenger what is new");
46
+ const connection = await deps.connection();
47
+ const { id: chatId, title } = await connection.resolve(chat);
48
+ const rules = file();
49
+ const saved = rules.read(chatId);
50
+ const groupRules = saved ?? defaultRules(title);
51
+ const point = rules.checkedUntil(chatId);
52
+ const from = since ?? (point === undefined ? Date.now() - FIRST_LOOK_MS : Date.parse(point));
53
+ const found = await gather(connection, chatId, from);
54
+ const findings = judge({ ...found, rules: groupRules, now: Date.now() });
55
+ const rows = await act(moderatorOf(connection, deps), findings, {
56
+ chatId,
57
+ rules: groupRules,
58
+ allowDangerous,
59
+ dryRun,
60
+ maxActions,
61
+ command: deps.messenger.app.command,
62
+ ...(confirm ? { confirm } : {}),
63
+ });
64
+ const notes = [
65
+ ...(saved ? [] : [`${title ?? chatId} has no rules yet — the defaults only report`]),
66
+ ...found.notes,
67
+ ];
68
+ const next = nextPoint(rows, found);
69
+ if (since === undefined && !dryRun && next !== null)
70
+ rules.markChecked(chatId, next);
71
+ if (next !== found.until && someUndone(rows)) {
72
+ notes.push("some actions are not done — the next check starts at the first of them");
73
+ }
74
+ else if (found.more) {
75
+ notes.push("more history than one check reads — the next check goes on from here");
76
+ }
77
+ return { chatId, rows, notes };
78
+ },
79
+ };
80
+ };
81
+ /** Each action through the guard under `chats.moderate`: the group's levels already said yes, so `messages.delete` does not ask again. */
82
+ const moderatorOf = (adapter, deps) => ({
83
+ deleteMessage: async (chatId, messageId) => {
84
+ const remove = capability(adapter, "delete", "delete messages");
85
+ await guardedWrite(deps.guard, { operationId: newOperationId(), chatId, kind: "delete", count: 1, forEveryone: true, key: "chats.moderate" }, () => remove(chatId, [messageId], { forEveryone: true }));
86
+ },
87
+ removePerson: async (chatId, personId) => {
88
+ const remove = capability(adapter, "removeMembers", "remove people from a group");
89
+ await guardedWrite(deps.guard, {
90
+ operationId: newOperationId(),
91
+ chatId,
92
+ kind: "chat",
93
+ action: "members.remove",
94
+ people: 1,
95
+ key: "chats.moderate",
96
+ }, () => remove(chatId, [personId]));
97
+ },
98
+ });
99
+ //# sourceMappingURL=moderation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moderation.js","sourceRoot":"","sources":["../../src/services/moderation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAyB,MAAM,0BAA0B,CAAA;AAE5E,OAAO,EACL,GAAG,EAGH,MAAM,EACN,KAAK,EACL,WAAW,EAEX,SAAS,EACT,UAAU,GACX,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAmB,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AA6BpD,+DAA+D;AAC/D,MAAM,aAAa,GAAG,EAAE,GAAG,SAAS,CAAA;AAEpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAiB,EAAqB,EAAE;IACxE,MAAM,IAAI,GAAG,GAAG,EAAE,CAChB,IAAI,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IAChH,MAAM,KAAK,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;QACnC,IAAI,IAAI,CAAC,OAAO;YACd,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,+DAA+D,CAAC,CAAA;QACzG,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,CAAC,MAAU,EAAE,KAAoB,EAAE,KAAsB,EAAc,EAAE;QACrF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAChC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,SAAS,EAAE,KAAK,EAAE,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAA;IAC7G,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,EAAE;QAChC,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,gBAAgB,gEAAgE,CAC3G,CAAA;QACH,CAAC;IACH,CAAC,CAAA;IAED,OAAO;QACL,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACpB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;YACvC,OAAO,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,CAAC;QAED,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;YAC9B,SAAS,CAAC,GAAG,CAAC,CAAA;YACd,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;YACvC,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;YACpB,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;YAChC,OAAO,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;YACzB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;YACvC,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;YACpB,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;YAC3B,OAAO,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;QAED,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7F,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,iDAAiD,CAAC,CAAA;YAC3G,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAC5D,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;YACpB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAChC,MAAM,UAAU,GAAG,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,CAAA;YAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YACxC,MAAM,IAAI,GAAG,KAAK,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;YAC5F,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACxE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE;gBAC9D,MAAM;gBACN,KAAK,EAAE,UAAU;gBACjB,cAAc;gBACd,MAAM;gBACN,UAAU;gBACV,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO;gBACnC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChC,CAAC,CAAA;YAEF,MAAM,KAAK,GAAG;gBACZ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,MAAM,8CAA8C,CAAC,CAAC;gBACpF,GAAG,KAAK,CAAC,KAAK;aACf,CAAA;YACD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACnC,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,IAAI,IAAI,KAAK,IAAI;gBAAE,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACpF,IAAI,IAAI,KAAK,KAAK,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7C,KAAK,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;YACtF,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAA;YACpF,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;QAChC,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAED,0IAA0I;AAC1I,MAAM,WAAW,GAAG,CAAC,OAAyB,EAAE,IAAiB,EAAa,EAAE,CAAC,CAAC;IAChF,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;QACzC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAA;QAC/D,MAAM,YAAY,CAChB,IAAI,CAAC,KAAK,EACV,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAC7G,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CACzD,CAAA;IACH,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;QACvC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,eAAe,EAAE,4BAA4B,CAAC,CAAA;QACjF,MAAM,YAAY,CAChB,IAAI,CAAC,KAAK,EACV;YACE,WAAW,EAAE,cAAc,EAAE;YAC7B,MAAM;YACN,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,gBAAgB;YACxB,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,gBAAgB;SACtB,EACD,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CACjC,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
@@ -3,6 +3,7 @@ import type { Messenger } from "../cli/messenger/context.js";
3
3
  import { type MessengerAdapter, type Transcript } from "../cli/messenger/port.js";
4
4
  import { type Settings } from "../cli/settings.js";
5
5
  import { type SpeechModel } from "./models.js";
6
+ import type { Recognizer } from "./recognize.js";
6
7
  /** `messenger`: its own recognition (Telegram Premium). `local`: a model on this machine. `auto`: the first, then the second. */
7
8
  export declare const TRANSCRIBE_WITH: readonly ["auto", "messenger", "local"];
8
9
  export type TranscribeWith = (typeof TRANSCRIBE_WITH)[number];
@@ -13,11 +14,14 @@ export interface Heard extends Transcript {
13
14
  /** The local model, when it was one. */
14
15
  model?: string;
15
16
  }
17
+ export type OpenRecognizer = (model: SpeechModel, path: (name: string) => string, vadModel: string) => Recognizer;
16
18
  export interface Choice {
17
19
  with: TranscribeWith;
18
20
  model: SpeechModel;
19
21
  /** Where the models are, `modelsDirectory` for the command's environment. */
20
22
  directory: string;
23
+ /** The local recognizer, where a test hands one in. */
24
+ open?: OpenRecognizer;
21
25
  }
22
26
  /** The flag, then the profile's `transcribeWith` and `speechModel`, then `auto` and the CLI's first model. */
23
27
  export declare const choose: (messenger: Messenger, settings: Pick<Settings, "configured" | "shared">, flags: {
@@ -32,5 +36,5 @@ export declare const notDownloaded: (messenger: Messenger, model: SpeechModel) =
32
36
  */
33
37
  export declare const hearOnline: (messenger: Messenger, connection: MessengerAdapter, chat: string, messageId: string, choice: Choice) => Promise<Heard | Uint8Array>;
34
38
  /** The local model, on the bytes `hearOnline` fetched. */
35
- export declare const hearLocally: (bytes: Uint8Array, messageId: string, { model, directory }: Choice) => Promise<Heard>;
39
+ export declare const hearLocally: (bytes: Uint8Array, messageId: string, { model, directory, open }: Choice) => Promise<Heard>;
36
40
  //# sourceMappingURL=transcribe.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transcribe.d.ts","sourceRoot":"","sources":["../../src/speech/transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAc,KAAK,gBAAgB,EAAmB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC9G,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE5D,OAAO,EAAiB,KAAK,WAAW,EAAe,MAAM,aAAa,CAAA;AAE1E,iIAAiI;AACjI,eAAO,MAAM,eAAe,YAAI,MAAM,EAAE,WAAW,EAAE,OAAO,CAAU,CAAA;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,WAAW,KAAM,SAAQ,UAAU;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAA;IACX,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAKD,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,WAAW,CAAA;IAClB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,8GAA8G;AAC9G,eAAO,MAAM,MAAM,cACN,SAAS,YACV,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,QAAQ,CAAC,SAC1C;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,QACrC,MAAM,CAAC,UAAU,KACrB,MAUF,CAAA;AAED,iGAAiG;AACjG,eAAO,MAAM,aAAa,cAAe,SAAS,SAAS,WAAW,KAAG,QAKtE,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU,cACV,SAAS,cACR,gBAAgB,QACtB,MAAM,aACD,MAAM,UACT,MAAM,KACb,OAAO,CAAC,KAAK,GAAG,UAAU,CAkB5B,CAAA;AAED,0DAA0D;AAC1D,eAAO,MAAM,WAAW,UACf,UAAU,aACN,MAAM,wBACK,MAAM,KAC3B,OAAO,CAAC,KAAK,CAef,CAAA"}
1
+ {"version":3,"file":"transcribe.d.ts","sourceRoot":"","sources":["../../src/speech/transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAc,KAAK,gBAAgB,EAAmB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC9G,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE5D,OAAO,EAAiB,KAAK,WAAW,EAAe,MAAM,aAAa,CAAA;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,iIAAiI;AACjI,eAAO,MAAM,eAAe,YAAI,MAAM,EAAE,WAAW,EAAE,OAAO,CAAU,CAAA;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,WAAW,KAAM,SAAQ,UAAU;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAA;IACX,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAKD,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,UAAU,CAAA;AAEjH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,WAAW,CAAA;IAClB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAA;IACjB,uDAAuD;IACvD,IAAI,CAAC,EAAE,cAAc,CAAA;CACtB;AAED,8GAA8G;AAC9G,eAAO,MAAM,MAAM,cACN,SAAS,YACV,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,QAAQ,CAAC,SAC1C;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,QACrC,MAAM,CAAC,UAAU,KACrB,MAUF,CAAA;AAED,iGAAiG;AACjG,eAAO,MAAM,aAAa,cAAe,SAAS,SAAS,WAAW,KAAG,QAKtE,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU,cACV,SAAS,cACR,gBAAgB,QACtB,MAAM,aACD,MAAM,UACT,MAAM,KACb,OAAO,CAAC,KAAK,GAAG,UAAU,CAkB5B,CAAA;AAED,0DAA0D;AAC1D,eAAO,MAAM,WAAW,UACf,UAAU,aACN,MAAM,8BACW,MAAM,KACjC,OAAO,CAAC,KAAK,CAef,CAAA"}
@@ -49,10 +49,10 @@ export const hearOnline = async (messenger, connection, chat, messageId, choice)
49
49
  return readAll(voice);
50
50
  };
51
51
  /** The local model, on the bytes `hearOnline` fetched. */
52
- export const hearLocally = async (bytes, messageId, { model, directory }) => {
52
+ export const hearLocally = async (bytes, messageId, { model, directory, open }) => {
53
53
  const { decodeOgg, openRecognizer, toModelRate } = await import("./recognize.js");
54
54
  const { samples, rate } = await decodeOgg(bytes);
55
- const recognizer = openRecognizer(model, modelPath(directory, model), vadPath(directory));
55
+ const recognizer = (open ?? openRecognizer)(model, modelPath(directory, model), vadPath(directory));
56
56
  try {
57
57
  return {
58
58
  messageId,
@@ -1 +1 @@
1
- {"version":3,"file":"transcribe.js","sourceRoot":"","sources":["../../src/speech/transcribe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcribe.js","sourceRoot":"","sources":["../../src/speech/transcribe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { LinkInput } from "../../conversations/link.js";
2
+ import type { Id, Message } from "../../domain/models.js";
3
+ import type { ConversationBuild, ConversationSummary, StoredLink } from "../store.js";
4
+ import type { StoreContext } from "./open.js";
5
+ /** A chat's live messages for the rules, oldest first, a page at a time; `next` continues it. */
6
+ export declare const linkInputs: ({ orm }: StoreContext, chatKey: number, { after, limit }: {
7
+ after?: string;
8
+ limit: number;
9
+ }) => {
10
+ items: LinkInput[];
11
+ next: string | null;
12
+ };
13
+ /** The usernames of everyone who wrote in the chat, lowercased, to their id: what a mention names. */
14
+ export declare const senderHandles: ({ orm }: StoreContext, chatKey: number) => Map<string, Id>;
15
+ /**
16
+ * Plan C3–C4, corrected by NEED-475 A. The chat's provider and rule links and its conversations are
17
+ * written under a new build number in short transactions; one more makes that build the one readers
18
+ * see; older builds are then deleted, a batch at a time. Until the switch readers see the previous
19
+ * build, so a failed build leaves it in place. Agent links have no build and stay; one whose message
20
+ * or parent was edited or deleted after it was written is marked stale.
21
+ */
22
+ export declare const replaceConversations: (context: StoreContext, chatKey: number, { startedAt, algorithmVersion, links, conversations: groups }: ConversationBuild, batch?: number) => Promise<void>;
23
+ /** Newest first. `after` and `before` bound when a conversation started. */
24
+ export declare const conversationPage: (context: StoreContext, chatKey: number, { limit, after, before }: {
25
+ limit: number;
26
+ after?: number;
27
+ before?: number;
28
+ }) => {
29
+ items: ConversationSummary[];
30
+ hasMore: boolean;
31
+ };
32
+ /** Its messages oldest first — only an account's own conversation. */
33
+ export declare const conversation: (context: StoreContext, accountKey: number, id: number) => {
34
+ summary: ConversationSummary;
35
+ messages: Message[];
36
+ } | undefined;
37
+ export declare const conversationOf: ({ orm }: StoreContext, chatKey: number, messageId: Id) => string | undefined;
38
+ /** Every link a message has, the messenger's first, then the strongest. */
39
+ export declare const linksOf: ({ orm }: StoreContext, chatKey: number, messageId: Id) => StoredLink[];
40
+ export declare const stateOf: ({ orm }: StoreContext, chatKey: number) => {
41
+ enabledAt: string;
42
+ builtAt: string | null;
43
+ algorithmVersion: number | null;
44
+ } | undefined;
45
+ //# sourceMappingURL=conversations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/conversations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAErF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAe7C,iGAAiG;AACjG,eAAO,MAAM,UAAU,YACZ,YAAY,WACZ,MAAM,oBACG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,KAClD;IAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAsC3C,CAAA;AAED,sGAAsG;AACtG,eAAO,MAAM,aAAa,YAAa,YAAY,WAAW,MAAM,KAAG,GAAG,CAAC,MAAM,EAAE,EAAE,CASlF,CAAA;AA+CH;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,YACtB,YAAY,WACZ,MAAM,iEACgD,iBAAiB,qBAE/E,OAAO,CAAC,IAAI,CAqId,CAAA;AAyDD,4EAA4E;AAC5E,eAAO,MAAM,gBAAgB,YAClB,YAAY,WACZ,MAAM,4BACW;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3E;IAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAclD,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,YAAY,YACd,YAAY,cACT,MAAM,MACd,MAAM,KACT;IAAE,OAAO,EAAE,mBAAmB,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,GAAG,SAgB1D,CAAA;AAED,eAAO,MAAM,cAAc,YAAa,YAAY,WAAW,MAAM,aAAa,EAAE,KAAG,MAAM,GAAG,SAS/F,CAAA;AAED,2EAA2E;AAC3E,eAAO,MAAM,OAAO,YAAa,YAAY,WAAW,MAAM,aAAa,EAAE,KAAG,UAAU,EAgCnF,CAAA;AAEP,eAAO,MAAM,OAAO,YAAa,YAAY,WAAW,MAAM;eAIjB,MAAM;;;aAKlD,CAAA"}