@leemour/cli-messaging 0.75.0 → 0.77.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 (152) hide show
  1. package/README.md +2 -2
  2. package/dist/cli/app.d.ts +2 -0
  3. package/dist/cli/app.d.ts.map +1 -1
  4. package/dist/cli/app.js.map +1 -1
  5. package/dist/cli/context.d.ts +2 -0
  6. package/dist/cli/context.d.ts.map +1 -1
  7. package/dist/cli/context.js.map +1 -1
  8. package/dist/cli/messenger/archive-commands.js +1 -0
  9. package/dist/cli/messenger/archive-commands.js.map +1 -1
  10. package/dist/cli/messenger/ask.d.ts +11 -0
  11. package/dist/cli/messenger/ask.d.ts.map +1 -0
  12. package/dist/cli/messenger/ask.js +66 -0
  13. package/dist/cli/messenger/ask.js.map +1 -0
  14. package/dist/cli/messenger/backfill-command.d.ts +1 -1
  15. package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
  16. package/dist/cli/messenger/backfill-command.js +32 -14
  17. package/dist/cli/messenger/backfill-command.js.map +1 -1
  18. package/dist/cli/messenger/backfill-estimate.d.ts +3 -3
  19. package/dist/cli/messenger/backfill-estimate.d.ts.map +1 -1
  20. package/dist/cli/messenger/backfill-estimate.js +2 -2
  21. package/dist/cli/messenger/backfill-estimate.js.map +1 -1
  22. package/dist/cli/messenger/backfill-jobs.d.ts +3 -1
  23. package/dist/cli/messenger/backfill-jobs.d.ts.map +1 -1
  24. package/dist/cli/messenger/backfill-jobs.js.map +1 -1
  25. package/dist/cli/messenger/context.d.ts.map +1 -1
  26. package/dist/cli/messenger/context.js +22 -1
  27. package/dist/cli/messenger/context.js.map +1 -1
  28. package/dist/cli/messenger/guard-commands.js +2 -2
  29. package/dist/cli/messenger/guard-commands.js.map +1 -1
  30. package/dist/cli/messenger/inbox.d.ts.map +1 -1
  31. package/dist/cli/messenger/inbox.js +3 -1
  32. package/dist/cli/messenger/inbox.js.map +1 -1
  33. package/dist/cli/messenger/mcp-command.d.ts +3 -1
  34. package/dist/cli/messenger/mcp-command.d.ts.map +1 -1
  35. package/dist/cli/messenger/mcp-command.js +29 -19
  36. package/dist/cli/messenger/mcp-command.js.map +1 -1
  37. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  38. package/dist/cli/messenger/messages-command.js +6 -2
  39. package/dist/cli/messenger/messages-command.js.map +1 -1
  40. package/dist/cli/messenger/messages-delete-command.d.ts +2 -2
  41. package/dist/cli/messenger/messages-delete-command.d.ts.map +1 -1
  42. package/dist/cli/messenger/messages-delete-command.js +4 -11
  43. package/dist/cli/messenger/messages-delete-command.js.map +1 -1
  44. package/dist/cli/messenger/messages-scheduled-command.d.ts.map +1 -1
  45. package/dist/cli/messenger/messages-scheduled-command.js +1 -0
  46. package/dist/cli/messenger/messages-scheduled-command.js.map +1 -1
  47. package/dist/cli/messenger/polls-command.d.ts.map +1 -1
  48. package/dist/cli/messenger/polls-command.js +12 -5
  49. package/dist/cli/messenger/polls-command.js.map +1 -1
  50. package/dist/cli/messenger/port.d.ts +2 -0
  51. package/dist/cli/messenger/port.d.ts.map +1 -1
  52. package/dist/cli/messenger/port.js.map +1 -1
  53. package/dist/cli/messenger/review.d.ts.map +1 -1
  54. package/dist/cli/messenger/review.js +1 -0
  55. package/dist/cli/messenger/review.js.map +1 -1
  56. package/dist/cli/messenger/stored.d.ts +2 -2
  57. package/dist/cli/messenger/stored.js +2 -2
  58. package/dist/cli/messenger/watch-command.d.ts.map +1 -1
  59. package/dist/cli/messenger/watch-command.js +1 -0
  60. package/dist/cli/messenger/watch-command.js.map +1 -1
  61. package/dist/cli/paging.d.ts +3 -1
  62. package/dist/cli/paging.d.ts.map +1 -1
  63. package/dist/cli/paging.js +9 -2
  64. package/dist/cli/paging.js.map +1 -1
  65. package/dist/cli/program.d.ts.map +1 -1
  66. package/dist/cli/program.js +1 -0
  67. package/dist/cli/program.js.map +1 -1
  68. package/dist/cli/runs/command.js +2 -2
  69. package/dist/cli/runs/command.js.map +1 -1
  70. package/dist/cli/settings.d.ts +10 -1
  71. package/dist/cli/settings.d.ts.map +1 -1
  72. package/dist/cli/settings.js +38 -4
  73. package/dist/cli/settings.js.map +1 -1
  74. package/dist/mcp/instructions.d.ts +3 -6
  75. package/dist/mcp/instructions.d.ts.map +1 -1
  76. package/dist/mcp/instructions.js +10 -12
  77. package/dist/mcp/instructions.js.map +1 -1
  78. package/dist/mcp/server.d.ts +6 -4
  79. package/dist/mcp/server.d.ts.map +1 -1
  80. package/dist/mcp/server.js +46 -25
  81. package/dist/mcp/server.js.map +1 -1
  82. package/dist/mcp/tool.d.ts +9 -3
  83. package/dist/mcp/tool.d.ts.map +1 -1
  84. package/dist/mcp/tool.js +5 -2
  85. package/dist/mcp/tool.js.map +1 -1
  86. package/dist/mcp/tools/chats-read.d.ts.map +1 -1
  87. package/dist/mcp/tools/chats-read.js +1 -0
  88. package/dist/mcp/tools/chats-read.js.map +1 -1
  89. package/dist/mcp/tools/polls.d.ts.map +1 -1
  90. package/dist/mcp/tools/polls.js +2 -0
  91. package/dist/mcp/tools/polls.js.map +1 -1
  92. package/dist/render/messages.d.ts +1 -1
  93. package/dist/render/messages.d.ts.map +1 -1
  94. package/dist/render/messages.js +10 -8
  95. package/dist/render/messages.js.map +1 -1
  96. package/dist/sends/guard.d.ts +23 -3
  97. package/dist/sends/guard.d.ts.map +1 -1
  98. package/dist/sends/guard.js +47 -15
  99. package/dist/sends/guard.js.map +1 -1
  100. package/dist/sends/guarded.d.ts +2 -0
  101. package/dist/sends/guarded.d.ts.map +1 -1
  102. package/dist/sends/guarded.js +1 -0
  103. package/dist/sends/guarded.js.map +1 -1
  104. package/dist/sends/index.d.ts +2 -2
  105. package/dist/sends/index.d.ts.map +1 -1
  106. package/dist/sends/index.js +1 -1
  107. package/dist/sends/index.js.map +1 -1
  108. package/dist/sends/permissions.d.ts +30 -0
  109. package/dist/sends/permissions.d.ts.map +1 -1
  110. package/dist/sends/permissions.js +144 -0
  111. package/dist/sends/permissions.js.map +1 -1
  112. package/dist/services/archive.d.ts +8 -2
  113. package/dist/services/archive.d.ts.map +1 -1
  114. package/dist/services/archive.js +25 -5
  115. package/dist/services/archive.js.map +1 -1
  116. package/dist/services/chats.d.ts +1 -1
  117. package/dist/services/chats.d.ts.map +1 -1
  118. package/dist/services/chats.js +23 -1
  119. package/dist/services/chats.js.map +1 -1
  120. package/dist/services/deps.d.ts +3 -1
  121. package/dist/services/deps.d.ts.map +1 -1
  122. package/dist/services/deps.js +10 -1
  123. package/dist/services/deps.js.map +1 -1
  124. package/dist/services/people.d.ts +3 -2
  125. package/dist/services/people.d.ts.map +1 -1
  126. package/dist/services/people.js +42 -4
  127. package/dist/services/people.js.map +1 -1
  128. package/dist/store/sqlite/drizzle/bun.js +1 -1
  129. package/dist/store/sqlite/drizzle/core.d.ts +2 -2
  130. package/dist/store/sqlite/drizzle/core.d.ts.map +1 -1
  131. package/dist/store/sqlite/drizzle/core.js +12 -1
  132. package/dist/store/sqlite/drizzle/core.js.map +4 -4
  133. package/dist/store/sqlite/drizzle/node.js +1 -1
  134. package/dist/store/sqlite/drizzle/{shared-CH747VCJ.js → shared-JAIU3GYB.js} +4 -1
  135. package/dist/store/sqlite/messages.d.ts +1 -0
  136. package/dist/store/sqlite/messages.d.ts.map +1 -1
  137. package/dist/store/sqlite/messages.js +40 -2
  138. package/dist/store/sqlite/messages.js.map +1 -1
  139. package/dist/store/sqlite/reads.d.ts +751 -0
  140. package/dist/store/sqlite/reads.d.ts.map +1 -0
  141. package/dist/store/sqlite/reads.js +177 -0
  142. package/dist/store/sqlite/reads.js.map +1 -0
  143. package/dist/store/sqlite/search.d.ts +496 -0
  144. package/dist/store/sqlite/search.d.ts.map +1 -0
  145. package/dist/store/sqlite/search.js +131 -0
  146. package/dist/store/sqlite/search.js.map +1 -0
  147. package/dist/store/store.d.ts.map +1 -1
  148. package/dist/store/store.js +20 -271
  149. package/dist/store/store.js.map +1 -1
  150. package/package.json +3 -2
  151. package/parity.json +19 -27
  152. /package/dist/store/sqlite/drizzle/{shared-CH747VCJ.js.map → shared-JAIU3GYB.js.map} +0 -0
@@ -0,0 +1,496 @@
1
+ import type { Page } from "../../domain/models.js";
2
+ import type { MessageFilter, StoredHit } from "../store.js";
3
+ import { type SQL } from "./drizzle/core.js";
4
+ import type { StoreContext } from "./open.js";
5
+ /** What `find` keeps, as one condition. */
6
+ export declare const matching: (context: StoreContext, { provider, account, accounts: within, senders, together, text, pattern, chatId, perChat, }: Omit<MessageFilter, "limit">) => SQL | undefined;
7
+ /** The plain search, newest first; exported so a test can read the plan SQLite makes of it. */
8
+ export declare const newestHits: (context: StoreContext, where: SQL | undefined, wanted: number) => Omit<import("drizzle-orm/sqlite-core").SQLiteAsyncSelectBase<"messages", "sync", unknown, {
9
+ pk: import("drizzle-orm/sqlite-core").SQLiteColumn<{
10
+ name: string;
11
+ tableName: "messages";
12
+ dataType: "number int53";
13
+ data: number;
14
+ driverParam: number;
15
+ notNull: true;
16
+ hasDefault: true;
17
+ isPrimaryKey: true;
18
+ isAutoincrement: false;
19
+ hasRuntimeDefault: false;
20
+ enumValues: undefined;
21
+ baseColumn: never;
22
+ identity: undefined;
23
+ generated: undefined;
24
+ }, {}>;
25
+ nativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
26
+ name: string;
27
+ tableName: "messages";
28
+ dataType: "string";
29
+ data: string;
30
+ driverParam: string;
31
+ notNull: true;
32
+ hasDefault: false;
33
+ isPrimaryKey: false;
34
+ isAutoincrement: false;
35
+ hasRuntimeDefault: false;
36
+ enumValues: [string, ...string[]];
37
+ baseColumn: never;
38
+ identity: undefined;
39
+ generated: undefined;
40
+ }, {}>;
41
+ chatNativeId: SQL.Aliased<string>;
42
+ senderNativeId: SQL.Aliased<string | null>;
43
+ senderChatNativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
44
+ name: string;
45
+ tableName: "messages";
46
+ dataType: "string";
47
+ data: string;
48
+ driverParam: string;
49
+ notNull: false;
50
+ hasDefault: false;
51
+ isPrimaryKey: false;
52
+ isAutoincrement: false;
53
+ hasRuntimeDefault: false;
54
+ enumValues: [string, ...string[]];
55
+ baseColumn: never;
56
+ identity: undefined;
57
+ generated: undefined;
58
+ }, {}>;
59
+ senderName: import("drizzle-orm/sqlite-core").SQLiteColumn<{
60
+ name: string;
61
+ tableName: "messages";
62
+ dataType: "string";
63
+ data: string;
64
+ driverParam: string;
65
+ notNull: false;
66
+ hasDefault: false;
67
+ isPrimaryKey: false;
68
+ isAutoincrement: false;
69
+ hasRuntimeDefault: false;
70
+ enumValues: [string, ...string[]];
71
+ baseColumn: never;
72
+ identity: undefined;
73
+ generated: undefined;
74
+ }, {}>;
75
+ sentAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
76
+ name: string;
77
+ tableName: "messages";
78
+ dataType: "number int53";
79
+ data: number;
80
+ driverParam: number;
81
+ notNull: true;
82
+ hasDefault: false;
83
+ isPrimaryKey: false;
84
+ isAutoincrement: false;
85
+ hasRuntimeDefault: false;
86
+ enumValues: undefined;
87
+ baseColumn: never;
88
+ identity: undefined;
89
+ generated: undefined;
90
+ }, {}>;
91
+ editedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
92
+ name: string;
93
+ tableName: "messages";
94
+ dataType: "number int53";
95
+ data: number;
96
+ driverParam: number;
97
+ notNull: false;
98
+ hasDefault: false;
99
+ isPrimaryKey: false;
100
+ isAutoincrement: false;
101
+ hasRuntimeDefault: false;
102
+ enumValues: undefined;
103
+ baseColumn: never;
104
+ identity: undefined;
105
+ generated: undefined;
106
+ }, {}>;
107
+ text: import("drizzle-orm/sqlite-core").SQLiteColumn<{
108
+ name: string;
109
+ tableName: "messages";
110
+ dataType: "string";
111
+ data: string;
112
+ driverParam: string;
113
+ notNull: true;
114
+ hasDefault: false;
115
+ isPrimaryKey: false;
116
+ isAutoincrement: false;
117
+ hasRuntimeDefault: false;
118
+ enumValues: [string, ...string[]];
119
+ baseColumn: never;
120
+ identity: undefined;
121
+ generated: undefined;
122
+ }, {}>;
123
+ outgoing: import("drizzle-orm/sqlite-core").SQLiteColumn<{
124
+ name: string;
125
+ tableName: "messages";
126
+ dataType: "number int53";
127
+ data: number;
128
+ driverParam: number;
129
+ notNull: false;
130
+ hasDefault: false;
131
+ isPrimaryKey: false;
132
+ isAutoincrement: false;
133
+ hasRuntimeDefault: false;
134
+ enumValues: undefined;
135
+ baseColumn: never;
136
+ identity: undefined;
137
+ generated: undefined;
138
+ }, {}>;
139
+ replyTo: import("drizzle-orm/sqlite-core").SQLiteColumn<{
140
+ name: string;
141
+ tableName: "messages";
142
+ dataType: "string";
143
+ data: string;
144
+ driverParam: string;
145
+ notNull: false;
146
+ hasDefault: false;
147
+ isPrimaryKey: false;
148
+ isAutoincrement: false;
149
+ hasRuntimeDefault: false;
150
+ enumValues: [string, ...string[]];
151
+ baseColumn: never;
152
+ identity: undefined;
153
+ generated: undefined;
154
+ }, {}>;
155
+ replyToNativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
156
+ name: string;
157
+ tableName: "messages";
158
+ dataType: "string";
159
+ data: string;
160
+ driverParam: string;
161
+ notNull: false;
162
+ hasDefault: false;
163
+ isPrimaryKey: false;
164
+ isAutoincrement: false;
165
+ hasRuntimeDefault: false;
166
+ enumValues: [string, ...string[]];
167
+ baseColumn: never;
168
+ identity: undefined;
169
+ generated: undefined;
170
+ }, {}>;
171
+ forward: import("drizzle-orm/sqlite-core").SQLiteColumn<{
172
+ name: string;
173
+ tableName: "messages";
174
+ dataType: "string";
175
+ data: string;
176
+ driverParam: string;
177
+ notNull: false;
178
+ hasDefault: false;
179
+ isPrimaryKey: false;
180
+ isAutoincrement: false;
181
+ hasRuntimeDefault: false;
182
+ enumValues: [string, ...string[]];
183
+ baseColumn: never;
184
+ identity: undefined;
185
+ generated: undefined;
186
+ }, {}>;
187
+ threadNativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
188
+ name: string;
189
+ tableName: "messages";
190
+ dataType: "string";
191
+ data: string;
192
+ driverParam: string;
193
+ notNull: false;
194
+ hasDefault: false;
195
+ isPrimaryKey: false;
196
+ isAutoincrement: false;
197
+ hasRuntimeDefault: false;
198
+ enumValues: [string, ...string[]];
199
+ baseColumn: never;
200
+ identity: undefined;
201
+ generated: undefined;
202
+ }, {}>;
203
+ reactions: import("drizzle-orm/sqlite-core").SQLiteColumn<{
204
+ name: string;
205
+ tableName: "messages";
206
+ dataType: "string";
207
+ data: string;
208
+ driverParam: string;
209
+ notNull: false;
210
+ hasDefault: false;
211
+ isPrimaryKey: false;
212
+ isAutoincrement: false;
213
+ hasRuntimeDefault: false;
214
+ enumValues: [string, ...string[]];
215
+ baseColumn: never;
216
+ identity: undefined;
217
+ generated: undefined;
218
+ }, {}>;
219
+ providerMetadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
220
+ name: string;
221
+ tableName: "messages";
222
+ dataType: "string";
223
+ data: string;
224
+ driverParam: string;
225
+ notNull: false;
226
+ hasDefault: false;
227
+ isPrimaryKey: false;
228
+ isAutoincrement: false;
229
+ hasRuntimeDefault: false;
230
+ enumValues: [string, ...string[]];
231
+ baseColumn: never;
232
+ identity: undefined;
233
+ generated: undefined;
234
+ }, {}>;
235
+ chatTitle: SQL.Aliased<string | null>;
236
+ provider: SQL.Aliased<string>;
237
+ accountNativeId: SQL.Aliased<string>;
238
+ }, "partial", Record<"messages", "not-null"> & {
239
+ chats: "not-null";
240
+ } & {
241
+ identities: "nullable";
242
+ } & {
243
+ accounts: "not-null";
244
+ }, false, "limit" | "orderBy" | "where", {
245
+ pk: number;
246
+ nativeId: string;
247
+ chatNativeId: string;
248
+ senderNativeId: string | null;
249
+ senderChatNativeId: string | null;
250
+ senderName: string | null;
251
+ sentAt: number;
252
+ editedAt: number | null;
253
+ text: string;
254
+ outgoing: number | null;
255
+ replyTo: string | null;
256
+ replyToNativeId: string | null;
257
+ forward: string | null;
258
+ threadNativeId: string | null;
259
+ reactions: string | null;
260
+ providerMetadata: string | null;
261
+ chatTitle: string | null;
262
+ provider: string;
263
+ accountNativeId: string;
264
+ }[], {
265
+ pk: import("drizzle-orm/sqlite-core").SQLiteColumn<{
266
+ name: string;
267
+ tableName: "messages";
268
+ dataType: "number int53";
269
+ data: number;
270
+ driverParam: number;
271
+ notNull: true;
272
+ hasDefault: true;
273
+ isPrimaryKey: true;
274
+ isAutoincrement: false;
275
+ hasRuntimeDefault: false;
276
+ enumValues: undefined;
277
+ baseColumn: never;
278
+ identity: undefined;
279
+ generated: undefined;
280
+ }, {}>;
281
+ nativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
282
+ name: string;
283
+ tableName: "messages";
284
+ dataType: "string";
285
+ data: string;
286
+ driverParam: string;
287
+ notNull: true;
288
+ hasDefault: false;
289
+ isPrimaryKey: false;
290
+ isAutoincrement: false;
291
+ hasRuntimeDefault: false;
292
+ enumValues: [string, ...string[]];
293
+ baseColumn: never;
294
+ identity: undefined;
295
+ generated: undefined;
296
+ }, {}>;
297
+ chatNativeId: SQL.Aliased<string>;
298
+ senderNativeId: SQL.Aliased<string | null>;
299
+ senderChatNativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
300
+ name: string;
301
+ tableName: "messages";
302
+ dataType: "string";
303
+ data: string;
304
+ driverParam: string;
305
+ notNull: false;
306
+ hasDefault: false;
307
+ isPrimaryKey: false;
308
+ isAutoincrement: false;
309
+ hasRuntimeDefault: false;
310
+ enumValues: [string, ...string[]];
311
+ baseColumn: never;
312
+ identity: undefined;
313
+ generated: undefined;
314
+ }, {}>;
315
+ senderName: import("drizzle-orm/sqlite-core").SQLiteColumn<{
316
+ name: string;
317
+ tableName: "messages";
318
+ dataType: "string";
319
+ data: string;
320
+ driverParam: string;
321
+ notNull: false;
322
+ hasDefault: false;
323
+ isPrimaryKey: false;
324
+ isAutoincrement: false;
325
+ hasRuntimeDefault: false;
326
+ enumValues: [string, ...string[]];
327
+ baseColumn: never;
328
+ identity: undefined;
329
+ generated: undefined;
330
+ }, {}>;
331
+ sentAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
332
+ name: string;
333
+ tableName: "messages";
334
+ dataType: "number int53";
335
+ data: number;
336
+ driverParam: number;
337
+ notNull: true;
338
+ hasDefault: false;
339
+ isPrimaryKey: false;
340
+ isAutoincrement: false;
341
+ hasRuntimeDefault: false;
342
+ enumValues: undefined;
343
+ baseColumn: never;
344
+ identity: undefined;
345
+ generated: undefined;
346
+ }, {}>;
347
+ editedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
348
+ name: string;
349
+ tableName: "messages";
350
+ dataType: "number int53";
351
+ data: number;
352
+ driverParam: number;
353
+ notNull: false;
354
+ hasDefault: false;
355
+ isPrimaryKey: false;
356
+ isAutoincrement: false;
357
+ hasRuntimeDefault: false;
358
+ enumValues: undefined;
359
+ baseColumn: never;
360
+ identity: undefined;
361
+ generated: undefined;
362
+ }, {}>;
363
+ text: import("drizzle-orm/sqlite-core").SQLiteColumn<{
364
+ name: string;
365
+ tableName: "messages";
366
+ dataType: "string";
367
+ data: string;
368
+ driverParam: string;
369
+ notNull: true;
370
+ hasDefault: false;
371
+ isPrimaryKey: false;
372
+ isAutoincrement: false;
373
+ hasRuntimeDefault: false;
374
+ enumValues: [string, ...string[]];
375
+ baseColumn: never;
376
+ identity: undefined;
377
+ generated: undefined;
378
+ }, {}>;
379
+ outgoing: import("drizzle-orm/sqlite-core").SQLiteColumn<{
380
+ name: string;
381
+ tableName: "messages";
382
+ dataType: "number int53";
383
+ data: number;
384
+ driverParam: number;
385
+ notNull: false;
386
+ hasDefault: false;
387
+ isPrimaryKey: false;
388
+ isAutoincrement: false;
389
+ hasRuntimeDefault: false;
390
+ enumValues: undefined;
391
+ baseColumn: never;
392
+ identity: undefined;
393
+ generated: undefined;
394
+ }, {}>;
395
+ replyTo: import("drizzle-orm/sqlite-core").SQLiteColumn<{
396
+ name: string;
397
+ tableName: "messages";
398
+ dataType: "string";
399
+ data: string;
400
+ driverParam: string;
401
+ notNull: false;
402
+ hasDefault: false;
403
+ isPrimaryKey: false;
404
+ isAutoincrement: false;
405
+ hasRuntimeDefault: false;
406
+ enumValues: [string, ...string[]];
407
+ baseColumn: never;
408
+ identity: undefined;
409
+ generated: undefined;
410
+ }, {}>;
411
+ replyToNativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
412
+ name: string;
413
+ tableName: "messages";
414
+ dataType: "string";
415
+ data: string;
416
+ driverParam: string;
417
+ notNull: false;
418
+ hasDefault: false;
419
+ isPrimaryKey: false;
420
+ isAutoincrement: false;
421
+ hasRuntimeDefault: false;
422
+ enumValues: [string, ...string[]];
423
+ baseColumn: never;
424
+ identity: undefined;
425
+ generated: undefined;
426
+ }, {}>;
427
+ forward: import("drizzle-orm/sqlite-core").SQLiteColumn<{
428
+ name: string;
429
+ tableName: "messages";
430
+ dataType: "string";
431
+ data: string;
432
+ driverParam: string;
433
+ notNull: false;
434
+ hasDefault: false;
435
+ isPrimaryKey: false;
436
+ isAutoincrement: false;
437
+ hasRuntimeDefault: false;
438
+ enumValues: [string, ...string[]];
439
+ baseColumn: never;
440
+ identity: undefined;
441
+ generated: undefined;
442
+ }, {}>;
443
+ threadNativeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
444
+ name: string;
445
+ tableName: "messages";
446
+ dataType: "string";
447
+ data: string;
448
+ driverParam: string;
449
+ notNull: false;
450
+ hasDefault: false;
451
+ isPrimaryKey: false;
452
+ isAutoincrement: false;
453
+ hasRuntimeDefault: false;
454
+ enumValues: [string, ...string[]];
455
+ baseColumn: never;
456
+ identity: undefined;
457
+ generated: undefined;
458
+ }, {}>;
459
+ reactions: import("drizzle-orm/sqlite-core").SQLiteColumn<{
460
+ name: string;
461
+ tableName: "messages";
462
+ dataType: "string";
463
+ data: string;
464
+ driverParam: string;
465
+ notNull: false;
466
+ hasDefault: false;
467
+ isPrimaryKey: false;
468
+ isAutoincrement: false;
469
+ hasRuntimeDefault: false;
470
+ enumValues: [string, ...string[]];
471
+ baseColumn: never;
472
+ identity: undefined;
473
+ generated: undefined;
474
+ }, {}>;
475
+ providerMetadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
476
+ name: string;
477
+ tableName: "messages";
478
+ dataType: "string";
479
+ data: string;
480
+ driverParam: string;
481
+ notNull: false;
482
+ hasDefault: false;
483
+ isPrimaryKey: false;
484
+ isAutoincrement: false;
485
+ hasRuntimeDefault: false;
486
+ enumValues: [string, ...string[]];
487
+ baseColumn: never;
488
+ identity: undefined;
489
+ generated: undefined;
490
+ }, {}>;
491
+ chatTitle: SQL.Aliased<string | null>;
492
+ provider: SQL.Aliased<string>;
493
+ accountNativeId: SQL.Aliased<string>;
494
+ }>, "limit" | "orderBy" | "where">;
495
+ export declare const find: (context: StoreContext, filter: MessageFilter) => Page<StoredHit>;
496
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/search.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAA8C,KAAK,GAAG,EAAO,MAAM,mBAAmB,CAAA;AAC7F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAsB7C,2CAA2C;AAC3C,eAAO,MAAM,QAAQ,YACV,YAAY,+FAWlB,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,KAC9B,GAAG,GAAG,SA0BR,CAAA;AAuCD,+FAA+F;AAC/F,eAAO,MAAM,UAAU,YAAa,YAAY,SAAS,GAAG,GAAG,SAAS,UAAU,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAItE,CAAA;AAElB,eAAO,MAAM,IAAI,YAAa,YAAY,UAAU,aAAa,KAAG,IAAI,CAAC,SAAS,CA4BjF,CAAA"}
@@ -0,0 +1,131 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ import { formatLocator } from "../../domain/locator.js";
3
+ import { alias, and, desc, eq, inArray, isNull, lte, sql } from "./drizzle/core.js";
4
+ import { before, MESSAGE_FIELDS, newestFirst, toMessages } from "./reads.js";
5
+ import { accounts, chats, identities, messages } from "./schema.js";
6
+ const CHUNK = 500;
7
+ const HIT_FIELDS = {
8
+ ...MESSAGE_FIELDS,
9
+ chatTitle: sql `${chats.title}`.as("chat_title"),
10
+ provider: sql `${accounts.provider}`.as("provider"),
11
+ accountNativeId: sql `${accounts.nativeId}`.as("account_native_id"),
12
+ };
13
+ /** Every word of three characters or more, found anywhere inside the text; a trigram index cannot match a shorter one. */
14
+ const wordsOf = (text) => {
15
+ const words = (text.match(/[\p{L}\p{N}]+/gu) ?? []).filter((word) => [...word].length >= 3);
16
+ if (words.length === 0)
17
+ throw new CliError("validation_error", "search needs a word of three letters or more");
18
+ return words.map((word) => `"${word}"`).join(" ");
19
+ };
20
+ /** What `find` keeps, as one condition. */
21
+ export const matching = (context, { provider, account, accounts: within, senders, together = false, text, pattern, chatId, perChat = false, }) => {
22
+ const trimmed = pattern ? undefined : text?.trim();
23
+ if (trimmed !== undefined && [...trimmed].length < 3) {
24
+ throw new CliError("validation_error", "search needs at least three characters");
25
+ }
26
+ if (pattern && perChat)
27
+ throw new CliError("validation_error", "a pattern search is not per chat");
28
+ if (!trimmed && !pattern && !senders?.length) {
29
+ throw new CliError("validation_error", "say what to find: some text, or who wrote it");
30
+ }
31
+ const scopeProvider = account?.provider ?? provider;
32
+ if (within && scopeProvider === undefined) {
33
+ throw new CliError("validation_error", "a read across accounts names their provider");
34
+ }
35
+ const ids = senders?.length ? [...new Set(senders)] : undefined;
36
+ return and(isNull(messages.deletedAt), trimmed
37
+ ? sql `${messages.pk} IN (SELECT rowid FROM messages_fts WHERE messages_fts MATCH ${wordsOf(trimmed)})`
38
+ : undefined, scopeProvider === undefined ? undefined : eq(accounts.provider, scopeProvider), account ? eq(accounts.nativeId, account.account) : undefined, within ? inArray(accounts.nativeId, within) : undefined, chatId === undefined ? undefined : eq(chats.nativeId, chatId), ids ? and(eq(identities.provider, accounts.provider), inArray(identities.nativeId, ids)) : undefined, ids && together ? inArray(messages.chatPk, everyoneWrote(context, ids, scopeProvider)) : undefined);
39
+ };
40
+ /** The chats where every one of `ids` has a message — the outer row's provider when no scope names one. */
41
+ const everyoneWrote = ({ orm }, ids, scopeProvider) => {
42
+ const written = alias(messages, "m2");
43
+ const writer = alias(identities, "i2");
44
+ return orm
45
+ .select({ chatPk: written.chatPk })
46
+ .from(written)
47
+ .innerJoin(writer, eq(writer.pk, written.senderIdentityPk))
48
+ .where(and(isNull(written.deletedAt), eq(writer.provider, scopeProvider ?? identities.provider), inArray(writer.nativeId, ids)))
49
+ .groupBy(written.chatPk)
50
+ .having(sql `count(DISTINCT ${writer.nativeId}) = ${ids.length}`);
51
+ };
52
+ const chatRank = sql `row_number() OVER (PARTITION BY ${messages.chatPk} ORDER BY ${messages.sentAt} DESC, ${messages.pk} DESC)`;
53
+ const selectHits = ({ orm }) => orm
54
+ .select(HIT_FIELDS)
55
+ .from(messages)
56
+ .innerJoin(chats, eq(chats.pk, messages.chatPk))
57
+ .leftJoin(identities, eq(identities.pk, messages.senderIdentityPk))
58
+ .innerJoin(accounts, eq(accounts.pk, messages.accountPk));
59
+ const selectRanked = ({ orm }) => orm
60
+ .select({ ...HIT_FIELDS, chatRank: chatRank.as("chat_rank") })
61
+ .from(messages)
62
+ .innerJoin(chats, eq(chats.pk, messages.chatPk))
63
+ .leftJoin(identities, eq(identities.pk, messages.senderIdentityPk))
64
+ .innerJoin(accounts, eq(accounts.pk, messages.accountPk));
65
+ /** The plain search, newest first; exported so a test can read the plan SQLite makes of it. */
66
+ export const newestHits = (context, where, wanted) => selectHits(context)
67
+ .where(where)
68
+ .orderBy(...newestFirst)
69
+ .limit(wanted);
70
+ export const find = (context, filter) => {
71
+ const { limit, pattern, perChat = false } = filter;
72
+ const where = matching(context, filter);
73
+ const rows = pattern
74
+ ? scan(context, where, pattern, limit + 1)
75
+ : perChat
76
+ ? perChatNewest(context, where, limit + 1)
77
+ : newestHits(context, where, limit + 1).all();
78
+ const page = perChat
79
+ ? rows.filter((row) => row.chatRank <= limit)
80
+ : rows.slice(0, limit);
81
+ const found = toMessages(context, page);
82
+ return {
83
+ items: page.map((row, index) => {
84
+ const message = found[index];
85
+ return {
86
+ ...message,
87
+ chatTitle: row.chatTitle,
88
+ locator: formatLocator({
89
+ provider: row.provider,
90
+ account: row.accountNativeId,
91
+ chat: message.chatId,
92
+ message: message.id,
93
+ }),
94
+ };
95
+ }),
96
+ hasMore: rows.length > page.length,
97
+ };
98
+ };
99
+ const perChatNewest = (context, where, wanted) => {
100
+ const ranked = selectRanked(context).where(where).as("ranked");
101
+ return context.orm
102
+ .select()
103
+ .from(ranked)
104
+ .where(lte(ranked.chatRank, wanted))
105
+ .orderBy(desc(ranked.sentAt), desc(ranked.pk))
106
+ .all();
107
+ };
108
+ /** Newest first, a chunk at a time, until `wanted` rows match or the rows run out. */
109
+ const scan = (context, where, pattern, wanted) => {
110
+ const found = [];
111
+ let last;
112
+ while (found.length < wanted) {
113
+ const chunk = selectHits(context)
114
+ .where(and(where, last ? before(last.sentAt, last.pk) : undefined))
115
+ .orderBy(...newestFirst)
116
+ .limit(CHUNK)
117
+ .all();
118
+ for (const row of chunk) {
119
+ pattern.lastIndex = 0;
120
+ if (pattern.test(row.text))
121
+ found.push(row);
122
+ if (found.length === wanted)
123
+ break;
124
+ }
125
+ last = chunk.at(-1);
126
+ if (chunk.length < CHUNK || !last)
127
+ break;
128
+ }
129
+ return found;
130
+ };
131
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/store/sqlite/search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,IAAI,EACJ,OAAO,EACP,EAAE,EACF,MAAM,EACN,OAAO,EACP,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,eAAe,EAChB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAejD,wDAAwD;AACxD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,EAAE,CAAA;CACZ;AAED,6FAA6F;AAC7F,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAEhC,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,yFAAyF;AACzF,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,EAAE,CAAA;IACN,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,wGAAwG;IACxG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;IACf,OAAO,CAAC,EAAE,EAAE,EAAE,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sDAAsD;IACtD,MAAM,CAAC,EAAE,EAAE,CAAA;IACX,2FAA2F;IAC3F,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7E,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,8DAA8D;IAC9D;;;OAGG;IACH,YAAY,CACV,GAAG,EAAE,UAAU,EACf,MAAM,EAAE,EAAE,EACV,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE;QAAE,GAAG,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CAAA;IAChB,iHAAiH;IACjH,KAAK,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC3G,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACvE,mFAAmF;IACnF,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxE,2FAA2F;IAC3F,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IACvD,oFAAoF;IACpF,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IACzD,wGAAwG;IACxG,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAA;IAC5F,YAAY,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzE,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D;;;OAGG;IACH,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACnG,wDAAwD;IACxD,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACnF,wEAAwE;IACxE,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAA;IAC7G,4FAA4F;IAC5F,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvG,wDAAwD;IACxD,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IACrH,wFAAwF;IACxF,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACzF;;;OAGG;IACH,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IACtH;;;;OAIG;IACH,MAAM,CACJ,GAAG,EAAE,UAAU,EACf,MAAM,EAAE,EAAE,EACV,SAAS,EAAE,EAAE,EACb,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GACxC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;IAC7B;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAA;IAChG;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC;;;;;OAKG;IACH,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC1F,qGAAqG;IACrG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,UAAU,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;IACjG,wDAAwD;IACxD,IAAI,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;IACrD,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjE;;;;OAIG;IACH,QAAQ,CACN,GAAG,EAAE,UAAU,EACf,OAAO,EAAE;QAAE,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GACpF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IACzB,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7E,0FAA0F;IAC1F,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,mGAAmG;IACnG,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC9F,yFAAyF;IACzF,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACjG;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAChF,qGAAqG;IACrG,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IAC7D,mDAAmD;IACnD,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;IACrD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,EAAE,CAAA;IACV,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;CACX;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAED,uGAAuG;AACvG,eAAO,MAAM,gBAAgB,OAAQ,CAAA;AAErC,eAAO,MAAM,SAAS,wBAAyC,YAAY,KAAQ,OAAO,CAAC,YAAY,CAgBtG,CAAA"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}