@leemour/cli-messaging 0.140.0 → 0.142.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.
- package/dist/cli/config-command.js +5 -0
- package/dist/cli/config-command.js.map +1 -1
- package/dist/cli/messenger/archive-commands.d.ts.map +1 -1
- package/dist/cli/messenger/archive-commands.js +91 -7
- package/dist/cli/messenger/archive-commands.js.map +1 -1
- package/dist/cli/messenger/catch-up.d.ts +17 -0
- package/dist/cli/messenger/catch-up.d.ts.map +1 -0
- package/dist/cli/messenger/catch-up.js +30 -0
- package/dist/cli/messenger/catch-up.js.map +1 -0
- package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
- package/dist/cli/messenger/conversations-command.js +213 -27
- package/dist/cli/messenger/conversations-command.js.map +1 -1
- package/dist/cli/messenger/export-folder.d.ts +54 -0
- package/dist/cli/messenger/export-folder.d.ts.map +1 -0
- package/dist/cli/messenger/export-folder.js +106 -0
- package/dist/cli/messenger/export-folder.js.map +1 -0
- package/dist/cli/messenger/inbox.d.ts +4 -3
- package/dist/cli/messenger/inbox.d.ts.map +1 -1
- package/dist/cli/messenger/inbox.js +28 -32
- package/dist/cli/messenger/inbox.js.map +1 -1
- package/dist/cli/messenger/messages-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-command.js +2 -0
- package/dist/cli/messenger/messages-command.js.map +1 -1
- package/dist/cli/messenger/messages-stats-command.d.ts +4 -0
- package/dist/cli/messenger/messages-stats-command.d.ts.map +1 -0
- package/dist/cli/messenger/messages-stats-command.js +49 -0
- package/dist/cli/messenger/messages-stats-command.js.map +1 -0
- package/dist/cli/messenger/password.d.ts +11 -0
- package/dist/cli/messenger/password.d.ts.map +1 -0
- package/dist/cli/messenger/password.js +26 -0
- package/dist/cli/messenger/password.js.map +1 -0
- package/dist/cli/messenger/points.d.ts +21 -0
- package/dist/cli/messenger/points.d.ts.map +1 -0
- package/dist/cli/messenger/points.js +39 -0
- package/dist/cli/messenger/points.js.map +1 -0
- package/dist/cli/messenger/review.d.ts.map +1 -1
- package/dist/cli/messenger/review.js +55 -20
- package/dist/cli/messenger/review.js.map +1 -1
- package/dist/cli/messenger/store-maintenance-command.d.ts.map +1 -1
- package/dist/cli/messenger/store-maintenance-command.js +75 -20
- package/dist/cli/messenger/store-maintenance-command.js.map +1 -1
- package/dist/cli/permission-migration.d.ts.map +1 -1
- package/dist/cli/permission-migration.js +14 -9
- package/dist/cli/permission-migration.js.map +1 -1
- package/dist/cli/settings.d.ts +4 -0
- package/dist/cli/settings.d.ts.map +1 -1
- package/dist/cli/settings.js +12 -22
- package/dist/cli/settings.js.map +1 -1
- package/dist/domain/models.d.ts +4 -0
- package/dist/domain/models.d.ts.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +2 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tool.d.ts +1 -1
- package/dist/mcp/tool.d.ts.map +1 -1
- package/dist/mcp/tools/conversations.d.ts +1 -1
- package/dist/mcp/tools/conversations.d.ts.map +1 -1
- package/dist/mcp/tools/conversations.js +76 -5
- package/dist/mcp/tools/conversations.js.map +1 -1
- package/dist/mcp/tools/messages.d.ts.map +1 -1
- package/dist/mcp/tools/messages.js +8 -1
- package/dist/mcp/tools/messages.js.map +1 -1
- package/dist/mcp/tools/search.d.ts +24 -0
- package/dist/mcp/tools/search.d.ts.map +1 -1
- package/dist/mcp/tools/search.js +25 -0
- package/dist/mcp/tools/search.js.map +1 -1
- package/dist/sealed.d.ts +39 -0
- package/dist/sealed.d.ts.map +1 -0
- package/dist/sealed.js +140 -0
- package/dist/sealed.js.map +1 -0
- package/dist/search/lucene/dates.d.ts +2 -2
- package/dist/search/lucene/dates.d.ts.map +1 -1
- package/dist/search/lucene/dates.js +27 -5
- package/dist/search/lucene/dates.js.map +1 -1
- package/dist/search/lucene/registry.d.ts +14 -13
- package/dist/search/lucene/registry.d.ts.map +1 -1
- package/dist/search/lucene/registry.js +33 -12
- package/dist/search/lucene/registry.js.map +1 -1
- package/dist/sends/index.d.ts +1 -1
- package/dist/sends/index.d.ts.map +1 -1
- package/dist/sends/index.js +1 -1
- package/dist/sends/index.js.map +1 -1
- package/dist/sends/permissions.d.ts +9 -0
- package/dist/sends/permissions.d.ts.map +1 -1
- package/dist/sends/permissions.js +19 -0
- package/dist/sends/permissions.js.map +1 -1
- package/dist/services/archive.d.ts +22 -1
- package/dist/services/archive.d.ts.map +1 -1
- package/dist/services/archive.js +25 -0
- package/dist/services/archive.js.map +1 -1
- package/dist/services/embeddings.d.ts +108 -3
- package/dist/services/embeddings.d.ts.map +1 -1
- package/dist/services/embeddings.js +250 -59
- package/dist/services/embeddings.js.map +1 -1
- package/dist/services/inbox.d.ts +27 -9
- package/dist/services/inbox.d.ts.map +1 -1
- package/dist/services/inbox.js +57 -22
- package/dist/services/inbox.js.map +1 -1
- package/dist/services/messages-search.d.ts +21 -1
- package/dist/services/messages-search.d.ts.map +1 -1
- package/dist/services/messages-search.js +90 -26
- package/dist/services/messages-search.js.map +1 -1
- package/dist/services/messages.d.ts +8 -1
- package/dist/services/messages.d.ts.map +1 -1
- package/dist/services/messages.js +7 -1
- package/dist/services/messages.js.map +1 -1
- package/dist/store/sqlite/lucene.d.ts +11 -0
- package/dist/store/sqlite/lucene.d.ts.map +1 -1
- package/dist/store/sqlite/lucene.js +78 -4
- package/dist/store/sqlite/lucene.js.map +1 -1
- package/dist/store/sqlite/messages.d.ts +2 -2
- package/dist/store/sqlite/messages.d.ts.map +1 -1
- package/dist/store/sqlite/messages.js +5 -2
- package/dist/store/sqlite/messages.js.map +1 -1
- package/dist/store/sqlite/reads.d.ts +10 -0
- package/dist/store/sqlite/reads.d.ts.map +1 -1
- package/dist/store/sqlite/reads.js +25 -2
- package/dist/store/sqlite/reads.js.map +1 -1
- package/dist/store/sqlite/vectors.d.ts +49 -1
- package/dist/store/sqlite/vectors.d.ts.map +1 -1
- package/dist/store/sqlite/vectors.js +121 -6
- package/dist/store/sqlite/vectors.js.map +1 -1
- package/dist/store/store.d.ts +51 -1
- package/dist/store/store.d.ts.map +1 -1
- package/dist/store/store.js +55 -7
- package/dist/store/store.js.map +1 -1
- package/package.json +1 -1
- package/parity.json +170 -2
package/dist/services/inbox.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CliError } from "@leemour/cli-core";
|
|
2
2
|
import { capability } from "../cli/messenger/port.js";
|
|
3
|
+
import { CHAT_KINDS } from "./chats.js";
|
|
3
4
|
import { readChatId } from "./messages.js";
|
|
4
5
|
/**
|
|
5
6
|
* **At most this many history reads per `inbox`**, as in max-cli: a person opening twenty chats in
|
|
@@ -44,6 +45,19 @@ export const storeReader = (deps, store, account) => ({
|
|
|
44
45
|
return found;
|
|
45
46
|
},
|
|
46
47
|
});
|
|
48
|
+
/** `dialog,group` as typed; refuses a word that is not a kind, before anything is asked. */
|
|
49
|
+
export const kindsOf = (typed, flag = "--kind") => {
|
|
50
|
+
const kinds = typed
|
|
51
|
+
.split(",")
|
|
52
|
+
.map((one) => one.trim())
|
|
53
|
+
.filter((one) => one.length > 0);
|
|
54
|
+
const wrong = kinds.find((one) => !CHAT_KINDS.includes(one));
|
|
55
|
+
if (wrong !== undefined || kinds.length === 0) {
|
|
56
|
+
throw new CliError("validation_error", `${flag} takes ${CHAT_KINDS.join(", ")}, comma-separated — not "${typed}"`);
|
|
57
|
+
}
|
|
58
|
+
return kinds;
|
|
59
|
+
};
|
|
60
|
+
const ofKinds = (chats, kinds) => kinds === undefined ? chats : chats.filter((chat) => kinds.includes(chat.kind));
|
|
47
61
|
export const capped = (chats, most) => ({
|
|
48
62
|
read: chats.slice(0, most),
|
|
49
63
|
skipped: chats.slice(most).map(({ id, title, lastMessageAt }) => ({ id, title, lastMessageAt })),
|
|
@@ -56,9 +70,9 @@ export const capped = (chats, most) => ({
|
|
|
56
70
|
* Muted and archived chats are left out unless `all`, or they mention the owner: on a busy account
|
|
57
71
|
* they are most of what is unread, and they would take the history reads a person's chat needs.
|
|
58
72
|
*/
|
|
59
|
-
export const unreadIn = async (adapter, { limit, all = false }) => {
|
|
73
|
+
export const unreadIn = async (adapter, { limit, all = false, kinds }) => {
|
|
60
74
|
const page = await adapter.chats({ limit: CHAT_WINDOW, offset: 0 });
|
|
61
|
-
const { heard: waiting, quiet } = heard(byRecency(page.items.filter((chat) => (chat.unreadCount ?? 0) > 0)), all);
|
|
75
|
+
const { heard: waiting, quiet } = heard(byRecency(ofKinds(page.items, kinds).filter((chat) => (chat.unreadCount ?? 0) > 0)), all);
|
|
62
76
|
const { read, skipped } = capped(waiting, INBOX_CHATS);
|
|
63
77
|
const chats = [];
|
|
64
78
|
for (const { id, title, kind, unreadCount } of read) {
|
|
@@ -72,42 +86,51 @@ export const unreadIn = async (adapter, { limit, all = false }) => {
|
|
|
72
86
|
return { mode: "unread", chats, skipped, partial: page.hasMore, quiet };
|
|
73
87
|
};
|
|
74
88
|
/**
|
|
75
|
-
* Other people's messages in every chat that changed after `
|
|
89
|
+
* Other people's messages in every chat that changed after its own point — `points` — or after
|
|
90
|
+
* `since` for a chat with none.
|
|
91
|
+
*
|
|
92
|
+
* **A point per chat** is what lets a channels-only run leave the groups where they were, and a
|
|
93
|
+
* chat past the per-run cap keep its point instead of falling behind one that moved past it.
|
|
76
94
|
*
|
|
77
95
|
* **Everything is cut at the chat list's newest message**, the snapshot taken first. The reads run
|
|
78
|
-
* one after another, so a chat read early can gain a message while a later one is read;
|
|
79
|
-
*
|
|
80
|
-
*
|
|
96
|
+
* one after another, so a chat read early can gain a message while a later one is read; anything
|
|
97
|
+
* newer than the snapshot waits for the next run and shows once there. Each chat read is `checked`
|
|
98
|
+
* up to that cut.
|
|
81
99
|
*/
|
|
82
|
-
export const newIn = async (adapter, { since, limit, all = false }) => {
|
|
100
|
+
export const newIn = async (adapter, { since, points, limit, all = false, kinds, }) => {
|
|
83
101
|
const page = await adapter.chats({ limit: CHAT_WINDOW, offset: 0 });
|
|
84
|
-
const
|
|
102
|
+
const startOf = (chat) => points?.get(chat) ?? since;
|
|
103
|
+
const changedAll = page.items.filter((chat) => chat.lastMessageAt !== null && Date.parse(chat.lastMessageAt) > startOf(chat.id));
|
|
104
|
+
const changed = byRecency(ofKinds(changedAll, kinds));
|
|
85
105
|
const cut = Math.max(since, ...changed.map((chat) => Date.parse(chat.lastMessageAt ?? "")));
|
|
86
106
|
const { heard: wanted, quiet } = heard(changed, all);
|
|
87
107
|
const { read, skipped } = capped(wanted, INBOX_CHATS);
|
|
88
|
-
let until = since;
|
|
89
108
|
const chats = [];
|
|
109
|
+
const checked = {};
|
|
90
110
|
for (const { id, title, kind, unreadCount } of read) {
|
|
91
111
|
const { items } = await adapter.history(id, { limit });
|
|
92
112
|
const fresh = items.filter((message) => {
|
|
93
113
|
const time = Date.parse(message.timestamp);
|
|
94
|
-
return time >
|
|
114
|
+
return time > startOf(id) && time <= cut;
|
|
95
115
|
});
|
|
96
|
-
|
|
97
|
-
until = Math.max(until, Date.parse(message.timestamp));
|
|
116
|
+
checked[id] = new Date(cut).toISOString();
|
|
98
117
|
const theirs = fresh.filter((message) => !message.outgoing);
|
|
99
118
|
if (theirs.length > 0)
|
|
100
119
|
chats.push({ id, title, kind, unreadCount, messages: theirs, more: fresh.length >= limit });
|
|
101
120
|
}
|
|
102
121
|
return {
|
|
103
122
|
mode: "new",
|
|
104
|
-
|
|
105
|
-
|
|
123
|
+
// The earliest start among the chats that changed; with none, how far the checks already reach.
|
|
124
|
+
since: new Date(changed.length > 0
|
|
125
|
+
? Math.min(...changed.map((chat) => startOf(chat.id)))
|
|
126
|
+
: Math.max(since, ...ofKinds(page.items, kinds).map((chat) => startOf(chat.id)))).toISOString(),
|
|
127
|
+
until: new Date(cut).toISOString(),
|
|
106
128
|
chats,
|
|
107
129
|
skipped,
|
|
108
130
|
// Every dialog in the window changed, so an older one past it may have too.
|
|
109
|
-
partial: page.hasMore &&
|
|
131
|
+
partial: page.hasMore && changedAll.length === page.items.length,
|
|
110
132
|
quiet,
|
|
133
|
+
checked,
|
|
111
134
|
};
|
|
112
135
|
};
|
|
113
136
|
/** Every page is a history request; 20 chats of 3 pages stays well inside what one account may ask. */
|
|
@@ -139,28 +162,37 @@ const window = async (adapter, chat, since, cut) => {
|
|
|
139
162
|
* owes what reads, where `inbox` reads only other people's newest few. Cut at the chat list's newest
|
|
140
163
|
* message, as `inbox --new` is, so the next review starting at `until` misses nothing.
|
|
141
164
|
*/
|
|
142
|
-
export const reviewIn = async (adapter, { since, chat, all = false, unansweredAfterHours, now = Date.now(), enrich }) => {
|
|
165
|
+
export const reviewIn = async (adapter, { since, points, chat, kinds, all = false, unansweredAfterHours, now = Date.now(), enrich }) => {
|
|
143
166
|
const page = await adapter.chats({ limit: CHAT_WINDOW, offset: 0 });
|
|
144
|
-
const
|
|
167
|
+
const startOf = (id) => points?.get(id) ?? since;
|
|
168
|
+
const changed = byRecency(page.items.filter((one) => one.lastMessageAt !== null && Date.parse(one.lastMessageAt) > startOf(one.id)));
|
|
145
169
|
const cut = Math.max(since, ...changed.map((one) => Date.parse(one.lastMessageAt ?? "")));
|
|
146
170
|
const only = chat === undefined ? undefined : (await adapter.resolve(chat)).id;
|
|
147
|
-
const { heard: wanted, quiet } = only === undefined
|
|
171
|
+
const { heard: wanted, quiet } = only === undefined
|
|
172
|
+
? heard(ofKinds(changed, kinds), all)
|
|
173
|
+
: { heard: changed.filter((one) => one.id === only), quiet: 0 };
|
|
148
174
|
const { read, skipped } = capped(wanted, REVIEW_CHATS);
|
|
149
175
|
const chats = [];
|
|
176
|
+
// A chat cut short keeps its point: what was left out shows next time instead of never.
|
|
177
|
+
const checked = {};
|
|
150
178
|
for (const { id, title, kind } of read) {
|
|
151
|
-
const { messages, more } = await window(adapter, id,
|
|
179
|
+
const { messages, more } = await window(adapter, id, startOf(id), cut);
|
|
152
180
|
if (messages.length > 0)
|
|
153
181
|
chats.push({ id, title, kind, messages, more });
|
|
182
|
+
if (!more)
|
|
183
|
+
checked[id] = new Date(cut).toISOString();
|
|
154
184
|
}
|
|
155
185
|
const partial = page.hasMore && changed.length === page.items.length;
|
|
186
|
+
const earliest = changed.length > 0 ? Math.min(...changed.map((one) => startOf(one.id))) : since;
|
|
156
187
|
const found = {
|
|
157
|
-
since: new Date(since).toISOString(),
|
|
188
|
+
since: new Date(points === undefined ? since : earliest).toISOString(),
|
|
158
189
|
until: new Date(cut).toISOString(),
|
|
159
190
|
complete: skipped.length === 0 && !partial && chats.every((one) => !one.more),
|
|
160
191
|
chats,
|
|
161
192
|
skipped,
|
|
162
193
|
partial,
|
|
163
194
|
quiet,
|
|
195
|
+
...(points === undefined ? {} : { checked }),
|
|
164
196
|
};
|
|
165
197
|
const answerers = new Map();
|
|
166
198
|
if (unansweredAfterHours !== undefined) {
|
|
@@ -229,12 +261,15 @@ export const inboxService = (deps) => {
|
|
|
229
261
|
};
|
|
230
262
|
};
|
|
231
263
|
return {
|
|
232
|
-
read: async ({ since, limit, all = false }) => {
|
|
264
|
+
read: async ({ since, points, limit, all = false, kinds }) => {
|
|
233
265
|
if (deps.offline && deps.reads !== "store") {
|
|
234
266
|
throw new CliError("validation_error", "`inbox` asks the messenger what is new; with `--offline` there is nothing new");
|
|
235
267
|
}
|
|
236
268
|
const from = await reader();
|
|
237
|
-
|
|
269
|
+
const only = kinds === undefined ? {} : { kinds };
|
|
270
|
+
return since === undefined
|
|
271
|
+
? unreadIn(from, { limit, all, ...only })
|
|
272
|
+
: newIn(from, { since, limit, all, ...only, ...(points === undefined ? {} : { points }) });
|
|
238
273
|
},
|
|
239
274
|
review: async (options) => {
|
|
240
275
|
if (deps.offline && deps.reads !== "store") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/services/inbox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/services/inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAA2C,MAAM,0BAA0B,CAAA;AAG9F,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAA;AAC7B,iGAAiG;AACjG,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;AAE9B,4FAA4F;AAC5F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAA;AAC5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAClC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAU,EAAE,CAAC,GAAG,GAAG,WAAW,GAAG,UAAU,CAAA;AAEvF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE,CACjD,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAA;AAEjG,kFAAkF;AAClF,MAAM,OAAO,GAAG,CAAC,IAAU,EAAW,EAAE,CACtC,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC,KAAK,CAAC,CAAA;AAErF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,GAAY,EAAE,EAAE,CACnD,GAAG;IACD,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;IAC5B,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAA;AAK5F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAiB,EAAE,KAAmB,EAAE,OAAmB,EAAe,EAAE,CAAC,CAAC;IACxG,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACjC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QACjG,MAAM,GAAG,GAAG,SAAS,CACnB,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAClD,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAA;YACtC,MAAM,KAAK,GAAG,EAAE,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;YAC7G,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QACtD,CAAC,CAAC,CACH,CAAA;QACD,MAAM,GAAG,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAA;QAC7D,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAA;IACrE,CAAC;IACD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC;IAChE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;QAC3B,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QAC5D,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACjF,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAA;QACnE,OAAO,KAAK,CAAA;IACd,CAAC;CACF,CAAC,CAAA;AAEF,4FAA4F;AAC5F,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,IAAI,GAAG,QAAQ,EAAc,EAAE;IACpE,MAAM,KAAK,GAAG,KAAK;SAChB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;SACxB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAClC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAe,CAAC,CAAC,CAAA;IACxE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,GAAG,IAAI,UAAU,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,KAAK,GAAG,CAAC,CAAA;IACpH,CAAC;IACD,OAAO,KAAmB,CAAA;AAC5B,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,KAAsC,EAAU,EAAE,CAChF,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAEjF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC;IACtD,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;IAC1B,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;CACjG,CAAC,CAAA;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,OAAoB,EACpB,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,EAAE,KAAK,EAAiE,EAC5E,EAAE;IAClB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;IACnE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CACrC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EACnF,GAAG,CACJ,CAAA;IACD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAEtD,MAAM,KAAK,GAAgB,EAAE,CAAA;IAC7B,KAAK,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,WAAW,IAAI,CAAC,CAAA;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QACrC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC9D,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC1E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC,CAAA;IAC5G,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;AACzE,CAAC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,EACxB,OAAoB,EACpB,EACE,KAAK,EACL,MAAM,EACN,KAAK,EACL,GAAG,GAAG,KAAK,EACX,KAAK,GAC0G,EACjG,EAAE;IAClB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;IACnE,MAAM,OAAO,GAAG,CAAC,IAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAA;IACxD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAClC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAC3F,CAAA;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3F,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACpD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAErD,MAAM,KAAK,GAAgB,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAuB,EAAE,CAAA;IACtC,KAAK,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QACpD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YAC1C,OAAO,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,GAAG,CAAA;QAC1C,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC3D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC,CAAA;IACpH,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK;QACX,gGAAgG;QAChG,KAAK,EAAE,IAAI,IAAI,CACb,OAAO,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CACnF,CAAC,WAAW,EAAE;QACf,KAAK,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;QAClC,KAAK;QACL,OAAO;QACP,4EAA4E;QAC5E,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM;QAChE,KAAK;QACL,OAAO;KACR,CAAA;AACH,CAAC,CAAA;AAED,uGAAuG;AACvG,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAA;AAC9B,MAAM,WAAW,GAAG,GAAG,CAAA;AACvB,MAAM,eAAe,GAAG,GAAG,CAAA;AAkB3B;;;;GAIG;AACH,MAAM,MAAM,GAAG,KAAK,EAAE,OAAoB,EAAE,IAAQ,EAAE,KAAa,EAAE,GAAW,EAAE,EAAE;IAClF,MAAM,QAAQ,GAAc,EAAE,CAAA;IAC9B,IAAI,MAA0B,CAAA;IAC9B,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QAC7G,MAAM,IAAI,GAAG,CAAC,OAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAChE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA;QAClG,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK;YAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;QACvF,IAAI,QAAQ,CAAC,MAAM,IAAI,eAAe;YAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QACzG,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IACpB,CAAC;AACH,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,OAAoB,EACpB,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,EAAE,oBAAoB,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAiB,EACzF,EAAE;IACnB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;IACnE,MAAM,OAAO,GAAG,CAAC,EAAM,EAAE,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,CAAA;IACpD,MAAM,OAAO,GAAG,SAAS,CACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAC1G,CAAA;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACzF,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9E,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAC5B,IAAI,KAAK,SAAS;QAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC;QACrC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;IACnE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IAEtD,MAAM,KAAK,GAAiB,EAAE,CAAA;IAC9B,wFAAwF;IACxF,MAAM,OAAO,GAAuB,EAAE,CAAA;IACtC,KAAK,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;QACvC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;QACtE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QACxE,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IACtD,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IACpE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAChG,MAAM,KAAK,GAAW;QACpB,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;QACtE,KAAK,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;QAClC,QAAQ,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7E,KAAK;QACL,OAAO;QACP,OAAO;QACP,KAAK;QACL,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;KAC7C,CAAA;IACD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAA;IACjD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACvC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAA;QACrG,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACrD,IAAI,oBAAoB,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAA;IAEvD,MAAM,IAAI,GAAiB,EAAE,CAAA;IAC7B,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE;YACzC,SAAS,EAAE,IAAI,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,GAAG,oBAAoB,GAAG,SAAS;SAC/C,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAA;QAC7G,CAAC;IACH,CAAC;IACD,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,oBAAoB,EAAE,EAAE,CAAA;AAC3F,CAAC,CAAA;AAED,sDAAsD;AACtD,MAAM,KAAK,GAAG,iBAAiB,CAAA;AAE/B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,QAAmB,EACnB,EAAE,SAAS,EAAE,MAAM,EAAkD,EAC1D,EAAE;IACb,MAAM,OAAO,GAAG,CAAC,OAAgB,EAAE,EAAE,CACnC,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC7F,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IACtE,wGAAwG;IACxG,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAE,EAAE;QAC7C,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,OAAO,CAAC,SAAS,CAAA;QACnD,MAAM,MAAM,GAAG,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC1D,IAAI,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;QAClC,OAAO,CACL,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CACjH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM;YAAE,OAAO,KAAK,CAAA;QAC7E,MAAM,UAAU,GAAG,YAAY,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9G,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;YACxG,OAAO,KAAK,CAAA;QACd,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QACvC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;QAChH,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;QACvE,OAAO,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAkBD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAiB,EAAgB,EAAE;IAC9D,MAAM,MAAM,GAAG,KAAK,IAA0B,EAAE;QAC9C,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO;YAAE,OAAO,WAAW,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QAC9F,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;QAC1C,OAAO;YACL,KAAK,EAAE,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC;YACpD,OAAO,EAAE,UAAU,CAAC,UAAU,EAAE,SAAS,EAAE,uBAAuB,CAAC;YACnE,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;YACrD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,EAAE,QAAQ,EAAE,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnG,CAAA;IACH,CAAC,CAAA;IAED,OAAO;QACL,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3D,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC3C,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,+EAA+E,CAChF,CAAA;YACH,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAA;YAC3B,MAAM,IAAI,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAA;YACjD,OAAO,KAAK,KAAK,SAAS;gBACxB,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;gBACzC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QAC9F,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACxB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC3C,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,wEAAwE,CAAC,CAAA;YAClH,CAAC;YACD,OAAO,QAAQ,CAAC,MAAM,MAAM,EAAE,EAAE,OAAO,CAAC,CAAA;QAC1C,CAAC;KACF,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Messenger } from "../cli/messenger/context.js";
|
|
2
|
-
import type { AccountKey, MessageStore } from "../store/store.js";
|
|
2
|
+
import type { AccountKey, ChatCompleteness, MessageStore } from "../store/store.js";
|
|
3
3
|
import { type SearchFound, type SearchQuery } from "./messages.js";
|
|
4
4
|
export interface QueryMetadata {
|
|
5
5
|
language: "lucene-v1";
|
|
@@ -18,4 +18,24 @@ export interface SearchCoverage {
|
|
|
18
18
|
coveredChats: number;
|
|
19
19
|
}
|
|
20
20
|
export declare const searchLucene: (store: MessageStore, account: AccountKey, request: SearchQuery, messenger?: Partial<Pick<Messenger, "savedChatId">>) => Promise<SearchFound>;
|
|
21
|
+
export type StatsGrouping = "chat" | "sender" | "day" | "hour";
|
|
22
|
+
export interface StatsRow {
|
|
23
|
+
key: string;
|
|
24
|
+
name: string | null;
|
|
25
|
+
account?: AccountKey;
|
|
26
|
+
count: number;
|
|
27
|
+
}
|
|
28
|
+
export interface MessageStats {
|
|
29
|
+
by: StatsGrouping;
|
|
30
|
+
items: StatsRow[];
|
|
31
|
+
total: number;
|
|
32
|
+
hasMore: boolean;
|
|
33
|
+
query: QueryMetadata;
|
|
34
|
+
coverage: SearchCoverage;
|
|
35
|
+
completeness: (ChatCompleteness & AccountKey)[];
|
|
36
|
+
}
|
|
37
|
+
/** Distinct matching messages counted by chat, sender, or calendar day/hour in the query's timezone. */
|
|
38
|
+
export declare const statsLucene: (store: MessageStore, account: AccountKey, request: SearchQuery & {
|
|
39
|
+
by: StatsGrouping;
|
|
40
|
+
}, messenger?: Partial<Pick<Messenger, "savedChatId">>) => Promise<MessageStats>;
|
|
21
41
|
//# sourceMappingURL=messages-search.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages-search.d.ts","sourceRoot":"","sources":["../../src/services/messages-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAS5D,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"messages-search.d.ts","sourceRoot":"","sources":["../../src/services/messages-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAS5D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAa,KAAK,WAAW,EAAE,KAAK,WAAW,EAAe,MAAM,eAAe,CAAA;AAE1F,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,WAAW,CAAA;IACrB,OAAO,EAAE,CAAC,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,QAAQ,GAAG,WAAW,CAAA;CAC9B;AACD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;IACzC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,iBAAiB,EAAE,KAAK,CAAA;IACxB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACrB;AAkKD,eAAO,MAAM,YAAY,UAChB,YAAY,WACV,UAAU,WACV,WAAW,cACT,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,KACjD,OAAO,CAAC,WAAW,CA6BrB,CAAA;AAMD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAA;AAC9D,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AACD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,aAAa,CAAA;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,aAAa,CAAA;IACpB,QAAQ,EAAE,cAAc,CAAA;IACxB,YAAY,EAAE,CAAC,gBAAgB,GAAG,UAAU,CAAC,EAAE,CAAA;CAChD;AAcD,wGAAwG;AACxG,eAAO,MAAM,WAAW,UACf,YAAY,WACV,UAAU,WACV,WAAW,GAAG;IAAE,EAAE,EAAE,aAAa,CAAA;CAAE,cACjC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,KACjD,OAAO,CAAC,YAAY,CAoCtB,CAAA"}
|
|
@@ -13,7 +13,7 @@ const positiveSources = (node) => node.kind === "predicate"
|
|
|
13
13
|
? [node.value.toLowerCase()]
|
|
14
14
|
: []
|
|
15
15
|
: node.clauses.filter(({ occur }) => occur !== "mustNot").flatMap(({ node }) => positiveSources(node));
|
|
16
|
-
|
|
16
|
+
const prepareLucene = async (store, account, request, messenger) => {
|
|
17
17
|
if (!Number.isInteger(request.limit) || request.limit < 1 || request.limit > QUERY_PAGE_LIMIT)
|
|
18
18
|
queryError("invalid_limit", { start: 0, end: 0 }, `use 1–${QUERY_PAGE_LIMIT} results`);
|
|
19
19
|
if (request.context !== undefined &&
|
|
@@ -96,9 +96,6 @@ export const searchLucene = async (store, account, request, messenger = {}) => {
|
|
|
96
96
|
throw new CliError("validation_error", "the word index is not ready — run store migrate before strict search", {
|
|
97
97
|
reason: "index_not_ready",
|
|
98
98
|
});
|
|
99
|
-
const execute = store.matchQuery;
|
|
100
|
-
if (!execute)
|
|
101
|
-
throw new CliError("validation_error", "this store does not support the Lucene profile — upgrade cli-messaging");
|
|
102
99
|
const execution = {
|
|
103
100
|
root,
|
|
104
101
|
accounts: scopeAccounts,
|
|
@@ -108,7 +105,9 @@ export const searchLucene = async (store, account, request, messenger = {}) => {
|
|
|
108
105
|
...(request.signal ? { signal: request.signal } : {}),
|
|
109
106
|
newest: request.newest,
|
|
110
107
|
};
|
|
111
|
-
|
|
108
|
+
return { execution, timezone, scopeAccounts, ...(selectedChat ? { selectedChat } : {}) };
|
|
109
|
+
};
|
|
110
|
+
const coverageOf = async (store, { scopeAccounts, selectedChat }) => {
|
|
112
111
|
const completeness = [];
|
|
113
112
|
for (const selected of scopeAccounts) {
|
|
114
113
|
const chatIds = selectedChat
|
|
@@ -118,6 +117,38 @@ export const searchLucene = async (store, account, request, messenger = {}) => {
|
|
|
118
117
|
: (await store.chats(selected, {})).items.map(({ id }) => id);
|
|
119
118
|
completeness.push(...(await store.chatCompleteness(selected, chatIds)).map((chat) => ({ ...chat, ...selected })));
|
|
120
119
|
}
|
|
120
|
+
const state = selectedChat && completeness.length > 0 && completeness.every(({ state }) => state === "complete")
|
|
121
|
+
? "complete"
|
|
122
|
+
: completeness.some(({ state }) => state !== "unknown")
|
|
123
|
+
? "partial"
|
|
124
|
+
: "unknown";
|
|
125
|
+
return {
|
|
126
|
+
completeness,
|
|
127
|
+
coverage: {
|
|
128
|
+
state,
|
|
129
|
+
lastSyncedAt: null,
|
|
130
|
+
inventoryComplete: false,
|
|
131
|
+
accounts: scopeAccounts,
|
|
132
|
+
...(selectedChat ? { chat: selectedChat.chatId } : {}),
|
|
133
|
+
coveredChats: completeness.length,
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
const queryOf = (timezone, newest) => ({
|
|
138
|
+
language: "lucene-v1",
|
|
139
|
+
version: 1,
|
|
140
|
+
fieldsVersion: FIELD_VERSION,
|
|
141
|
+
presetVersion: PRESET_VERSION,
|
|
142
|
+
timezone,
|
|
143
|
+
order: newest ? "newest" : "relevance",
|
|
144
|
+
});
|
|
145
|
+
export const searchLucene = async (store, account, request, messenger = {}) => {
|
|
146
|
+
const prepared = await prepareLucene(store, account, request, messenger);
|
|
147
|
+
const execute = store.matchQuery;
|
|
148
|
+
if (!execute)
|
|
149
|
+
throw new CliError("validation_error", "this store does not support the Lucene profile — upgrade cli-messaging");
|
|
150
|
+
const found = prepared.scopeAccounts.length ? await execute(prepared.execution) : { items: [], hasMore: false };
|
|
151
|
+
const { completeness, coverage } = await coverageOf(store, prepared);
|
|
121
152
|
const items = await Promise.all(found.items.map(async (hit) => {
|
|
122
153
|
if (!request.context)
|
|
123
154
|
return hit;
|
|
@@ -130,36 +161,69 @@ export const searchLucene = async (store, account, request, messenger = {}) => {
|
|
|
130
161
|
}),
|
|
131
162
|
};
|
|
132
163
|
}));
|
|
133
|
-
const state = selectedChat && completeness.length > 0 && completeness.every(({ state }) => state === "complete")
|
|
134
|
-
? "complete"
|
|
135
|
-
: completeness.some(({ state }) => state !== "unknown")
|
|
136
|
-
? "partial"
|
|
137
|
-
: "unknown";
|
|
138
164
|
return {
|
|
139
165
|
...found,
|
|
140
166
|
items,
|
|
141
167
|
corrections: [],
|
|
142
168
|
wordsReady: true,
|
|
143
169
|
completeness,
|
|
144
|
-
query:
|
|
145
|
-
|
|
146
|
-
version: 1,
|
|
147
|
-
fieldsVersion: FIELD_VERSION,
|
|
148
|
-
presetVersion: PRESET_VERSION,
|
|
149
|
-
timezone,
|
|
150
|
-
order: request.newest ? "newest" : "relevance",
|
|
151
|
-
},
|
|
152
|
-
coverage: {
|
|
153
|
-
state,
|
|
154
|
-
lastSyncedAt: null,
|
|
155
|
-
inventoryComplete: false,
|
|
156
|
-
accounts: scopeAccounts,
|
|
157
|
-
...(selectedChat ? { chat: selectedChat.chatId } : {}),
|
|
158
|
-
coveredChats: completeness.length,
|
|
159
|
-
},
|
|
170
|
+
query: queryOf(prepared.timezone, request.newest),
|
|
171
|
+
coverage,
|
|
160
172
|
};
|
|
161
173
|
};
|
|
162
174
|
const QUERY_PAGE_LIMIT = 1000;
|
|
163
175
|
const requiresChat = (node, chat) => node === chat ||
|
|
164
176
|
(node.kind === "boolean" && node.clauses.some((clause) => clause.occur === "must" && requiresChat(clause.node, chat)));
|
|
177
|
+
const calendarKey = (zone, by) => {
|
|
178
|
+
const format = new Intl.DateTimeFormat("en-CA", {
|
|
179
|
+
timeZone: zone,
|
|
180
|
+
year: "numeric",
|
|
181
|
+
month: "2-digit",
|
|
182
|
+
day: "2-digit",
|
|
183
|
+
...(by === "hour" ? { hour: "2-digit", hourCycle: "h23" } : {}),
|
|
184
|
+
});
|
|
185
|
+
return (time) => {
|
|
186
|
+
const part = Object.fromEntries(format.formatToParts(time).map(({ type, value }) => [type, value]));
|
|
187
|
+
return `${part.year}-${part.month}-${part.day}${by === "hour" ? `T${part.hour}` : ""}`;
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
/** Distinct matching messages counted by chat, sender, or calendar day/hour in the query's timezone. */
|
|
191
|
+
export const statsLucene = async (store, account, request, messenger = {}) => {
|
|
192
|
+
const prepared = await prepareLucene(store, account, request, messenger);
|
|
193
|
+
const count = store.countQuery;
|
|
194
|
+
if (!count)
|
|
195
|
+
throw new CliError("validation_error", "this store does not support the Lucene profile — upgrade cli-messaging");
|
|
196
|
+
const { by } = request;
|
|
197
|
+
const calendar = by === "day" || by === "hour";
|
|
198
|
+
const groups = prepared.scopeAccounts.length ? await count(prepared.execution, calendar ? "time" : by) : [];
|
|
199
|
+
let rows;
|
|
200
|
+
if (calendar) {
|
|
201
|
+
const keyOf = calendarKey(prepared.timezone, by);
|
|
202
|
+
const totals = new Map();
|
|
203
|
+
for (const { id, count } of groups) {
|
|
204
|
+
const key = keyOf(Number(id));
|
|
205
|
+
totals.set(key, (totals.get(key) ?? 0) + count);
|
|
206
|
+
}
|
|
207
|
+
rows = [...totals].sort(([a], [b]) => a.localeCompare(b)).map(([key, count]) => ({ key, name: null, count }));
|
|
208
|
+
}
|
|
209
|
+
else
|
|
210
|
+
rows = groups
|
|
211
|
+
.map(({ provider, account, id, name, outgoing, count }) => ({
|
|
212
|
+
key: id ?? (outgoing ? "me" : "unknown"),
|
|
213
|
+
name,
|
|
214
|
+
...(provider === undefined || account === undefined ? {} : { account: { provider, account } }),
|
|
215
|
+
count,
|
|
216
|
+
}))
|
|
217
|
+
.sort((a, b) => b.count - a.count || a.key.localeCompare(b.key));
|
|
218
|
+
const { completeness, coverage } = await coverageOf(store, prepared);
|
|
219
|
+
return {
|
|
220
|
+
by,
|
|
221
|
+
items: rows.slice(0, request.limit),
|
|
222
|
+
total: groups.reduce((sum, { count }) => sum + count, 0),
|
|
223
|
+
hasMore: rows.length > request.limit,
|
|
224
|
+
query: queryOf(prepared.timezone, request.newest),
|
|
225
|
+
coverage,
|
|
226
|
+
completeness,
|
|
227
|
+
};
|
|
228
|
+
};
|
|
165
229
|
//# sourceMappingURL=messages-search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages-search.js","sourceRoot":"","sources":["../../src/services/messages-search.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"messages-search.js","sourceRoot":"","sources":["../../src/services/messages-search.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { type Operated } from "../sends/guarded.js";
|
|
|
7
7
|
import type { Upload } from "../sends/upload.js";
|
|
8
8
|
import type { AccountKey, ChatCompleteness, MessageStore, StoredHit } from "../store/store.js";
|
|
9
9
|
import { type ServiceDeps } from "./deps.js";
|
|
10
|
-
import { type QueryMetadata, type SearchCoverage } from "./messages-search.js";
|
|
10
|
+
import { type MessageStats, type QueryMetadata, type SearchCoverage, type StatsGrouping } from "./messages-search.js";
|
|
11
11
|
export interface ListWindow {
|
|
12
12
|
limit: number;
|
|
13
13
|
before?: string;
|
|
@@ -95,6 +95,9 @@ export interface Reacted {
|
|
|
95
95
|
export declare const DELETE_AT_ONCE = 10;
|
|
96
96
|
/** How long a search may spend building the word index first (phase 2 plan S3: about 200 ms). */
|
|
97
97
|
export declare const SEARCH_FILL_MS = 200;
|
|
98
|
+
export declare const statsStore: (store: MessageStore, account: AccountKey, request: SearchQuery & {
|
|
99
|
+
by: StatsGrouping;
|
|
100
|
+
}, messenger?: Saved) => Promise<MessageStats>;
|
|
98
101
|
/** What a store search reads of the messenger: its saved-messages chat, when it has one. */
|
|
99
102
|
type Saved = Partial<Pick<Messenger, "savedChatId">>;
|
|
100
103
|
/** Every write goes through the guard: asked before it goes, told after, on every outcome. */
|
|
@@ -106,6 +109,10 @@ export interface MessagesService {
|
|
|
106
109
|
download(chat: string, message: Id): Promise<Download>;
|
|
107
110
|
/** From the local store only; never asks the messenger. */
|
|
108
111
|
search(query: SearchQuery): Promise<SearchFound>;
|
|
112
|
+
/** Counts of what a strict query matches, by chat, sender, day or hour; from the local store only. */
|
|
113
|
+
stats(query: SearchQuery & {
|
|
114
|
+
by: StatsGrouping;
|
|
115
|
+
}): Promise<MessageStats>;
|
|
109
116
|
/** A reply is a send with `replyTo`. */
|
|
110
117
|
send(request: SendRequest): Promise<Operated<Sent>>;
|
|
111
118
|
/** With `markdown`, the marks are taken out as a send takes them. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/services/messages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,KAAK,KAAK,EAAc,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAI3F,OAAO,EAAE,KAAK,WAAW,EAAwC,MAAM,2BAA2B,CAAA;AAClG,OAAO,KAAK,EAAQ,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAGvG,OAAO,EAAE,KAAK,KAAK,EAAU,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAwB,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAEzE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAe,SAAS,EAAa,MAAM,mBAAmB,CAAA;AACtH,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,WAAW,CAAA;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/services/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,11 +10,16 @@ import { search } from "../search/search.js";
|
|
|
10
10
|
import { codeOf, guardedWrite } from "../sends/guarded.js";
|
|
11
11
|
import { newOperationId, newSendId } from "../sends/send-id.js";
|
|
12
12
|
import { fromStore, nothingStored, PUSHED } from "./deps.js";
|
|
13
|
-
import { searchLucene } from "./messages-search.js";
|
|
13
|
+
import { searchLucene, statsLucene, } from "./messages-search.js";
|
|
14
14
|
/** max-cli's: many at once is what a ban for automation looks like. */
|
|
15
15
|
export const DELETE_AT_ONCE = 10;
|
|
16
16
|
/** How long a search may spend building the word index first (phase 2 plan S3: about 200 ms). */
|
|
17
17
|
export const SEARCH_FILL_MS = 200;
|
|
18
|
+
export const statsStore = async (store, account, request, messenger = {}) => {
|
|
19
|
+
const stop = Date.now() + SEARCH_FILL_MS;
|
|
20
|
+
await store.fillSearchIndex({ until: () => Date.now() >= stop });
|
|
21
|
+
return statsLucene(store, account, request, messenger);
|
|
22
|
+
};
|
|
18
23
|
export const messagesService = (deps) => {
|
|
19
24
|
const { guard } = deps;
|
|
20
25
|
const inStore = async (read) => read(await deps.store(), await deps.account());
|
|
@@ -94,6 +99,7 @@ export const messagesService = (deps) => {
|
|
|
94
99
|
},
|
|
95
100
|
download: async (chat, message) => capability(await deps.connection(), "download", "download attachments")(chat, message),
|
|
96
101
|
search: (query) => inStore((store, account) => searchStore(store, account, query, deps.messenger)),
|
|
102
|
+
stats: (query) => inStore((store, account) => statsStore(store, account, query, deps.messenger)),
|
|
97
103
|
send: async ({ chat, text: typed, sendId, replyTo, threadId: typedThread, silent, noPreview, markdown, at, attachments = [], }) => {
|
|
98
104
|
const connection = await deps.connection();
|
|
99
105
|
if (at !== undefined && sendId !== undefined) {
|