@leemour/cli-messaging 0.145.0 → 0.147.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 (103) hide show
  1. package/README.md +1 -1
  2. package/THIRD_PARTY_NOTICES +34 -0
  3. package/dist/background/units.d.ts +1 -0
  4. package/dist/background/units.d.ts.map +1 -1
  5. package/dist/background/units.js +9 -0
  6. package/dist/background/units.js.map +1 -1
  7. package/dist/cli/bot/people.js +1 -1
  8. package/dist/cli/bot/people.js.map +1 -1
  9. package/dist/cli/index.d.ts +4 -1
  10. package/dist/cli/index.d.ts.map +1 -1
  11. package/dist/cli/index.js +4 -1
  12. package/dist/cli/index.js.map +1 -1
  13. package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
  14. package/dist/cli/messenger/backfill-command.js +4 -0
  15. package/dist/cli/messenger/backfill-command.js.map +1 -1
  16. package/dist/cli/messenger/chats-members-command.d.ts.map +1 -1
  17. package/dist/cli/messenger/chats-members-command.js +35 -1
  18. package/dist/cli/messenger/chats-members-command.js.map +1 -1
  19. package/dist/cli/messenger/chats-stats-command.js +1 -1
  20. package/dist/cli/messenger/chats-stats-command.js.map +1 -1
  21. package/dist/cli/messenger/context.d.ts +2 -0
  22. package/dist/cli/messenger/context.d.ts.map +1 -1
  23. package/dist/cli/messenger/context.js.map +1 -1
  24. package/dist/cli/messenger/messages-search-command.d.ts.map +1 -1
  25. package/dist/cli/messenger/messages-search-command.js +3 -1
  26. package/dist/cli/messenger/messages-search-command.js.map +1 -1
  27. package/dist/cli/messenger/points.d.ts +2 -1
  28. package/dist/cli/messenger/points.d.ts.map +1 -1
  29. package/dist/cli/messenger/points.js +1 -0
  30. package/dist/cli/messenger/points.js.map +1 -1
  31. package/dist/cli/messenger/server-command.d.ts.map +1 -1
  32. package/dist/cli/messenger/server-command.js +18 -2
  33. package/dist/cli/messenger/server-command.js.map +1 -1
  34. package/dist/domain/models.d.ts +10 -0
  35. package/dist/domain/models.d.ts.map +1 -1
  36. package/dist/mcp/prompts.d.ts.map +1 -1
  37. package/dist/mcp/prompts.js +27 -8
  38. package/dist/mcp/prompts.js.map +1 -1
  39. package/dist/mcp/tools/chats.d.ts.map +1 -1
  40. package/dist/mcp/tools/chats.js +19 -1
  41. package/dist/mcp/tools/chats.js.map +1 -1
  42. package/dist/mcp/tools/inbox.d.ts +2 -0
  43. package/dist/mcp/tools/inbox.d.ts.map +1 -1
  44. package/dist/mcp/tools/inbox.js +27 -4
  45. package/dist/mcp/tools/inbox.js.map +1 -1
  46. package/dist/mcp/tools/review.d.ts.map +1 -1
  47. package/dist/mcp/tools/review.js +23 -2
  48. package/dist/mcp/tools/review.js.map +1 -1
  49. package/dist/replies/decide.d.ts +34 -0
  50. package/dist/replies/decide.d.ts.map +1 -0
  51. package/dist/replies/decide.js +109 -0
  52. package/dist/replies/decide.js.map +1 -0
  53. package/dist/replies/rules.d.ts +127 -0
  54. package/dist/replies/rules.d.ts.map +1 -0
  55. package/dist/replies/rules.js +119 -0
  56. package/dist/replies/rules.js.map +1 -0
  57. package/dist/replies/state.d.ts +36 -0
  58. package/dist/replies/state.d.ts.map +1 -0
  59. package/dist/replies/state.js +67 -0
  60. package/dist/replies/state.js.map +1 -0
  61. package/dist/search/search.d.ts.map +1 -1
  62. package/dist/search/search.js +4 -3
  63. package/dist/search/search.js.map +1 -1
  64. package/dist/search/snowball/LICENSE +29 -0
  65. package/dist/search/snowball/base-stemmer.js +445 -0
  66. package/dist/search/snowball/english-stemmer.js +775 -0
  67. package/dist/search/snowball/russian-stemmer.js +468 -0
  68. package/dist/search/snowball/spanish-stemmer.js +722 -0
  69. package/dist/search/stem.d.ts +35 -0
  70. package/dist/search/stem.d.ts.map +1 -0
  71. package/dist/search/stem.js +76 -0
  72. package/dist/search/stem.js.map +1 -0
  73. package/dist/services/archive.d.ts.map +1 -1
  74. package/dist/services/archive.js +4 -2
  75. package/dist/services/archive.js.map +1 -1
  76. package/dist/services/chat-stats.d.ts +3 -0
  77. package/dist/services/chat-stats.d.ts.map +1 -1
  78. package/dist/services/chat-stats.js +3 -0
  79. package/dist/services/chat-stats.js.map +1 -1
  80. package/dist/services/chats.d.ts +10 -0
  81. package/dist/services/chats.d.ts.map +1 -1
  82. package/dist/services/chats.js +61 -0
  83. package/dist/services/chats.js.map +1 -1
  84. package/dist/services/members-audit.d.ts +44 -0
  85. package/dist/services/members-audit.d.ts.map +1 -0
  86. package/dist/services/members-audit.js +111 -0
  87. package/dist/services/members-audit.js.map +1 -0
  88. package/dist/services/messages-search.d.ts +4 -2
  89. package/dist/services/messages-search.d.ts.map +1 -1
  90. package/dist/services/messages-search.js +13 -5
  91. package/dist/services/messages-search.js.map +1 -1
  92. package/dist/services/messages.js +1 -1
  93. package/dist/services/messages.js.map +1 -1
  94. package/dist/store/sqlite/completeness.d.ts +10 -1
  95. package/dist/store/sqlite/completeness.d.ts.map +1 -1
  96. package/dist/store/sqlite/completeness.js +15 -3
  97. package/dist/store/sqlite/completeness.js.map +1 -1
  98. package/dist/store/store.d.ts +2 -1
  99. package/dist/store/store.d.ts.map +1 -1
  100. package/dist/store/store.js +9 -2
  101. package/dist/store/store.js.map +1 -1
  102. package/package.json +2 -2
  103. package/parity.json +58 -0
@@ -0,0 +1,722 @@
1
+ // Generated from spanish.sbl by Snowball 3.1.1 - https://snowballstem.org/
2
+
3
+ // deno-lint-ignore-file ban-unused-ignore no-constant-condition no-empty prefer-const
4
+
5
+ const a_0 = [
6
+ ["", 6],
7
+ ["\u00E1", 1, 1],
8
+ ["\u00E9", 2, 2],
9
+ ["\u00ED", 3, 3],
10
+ ["\u00F3", 4, 4],
11
+ ["\u00FA", 5, 5]
12
+ ];
13
+
14
+ const a_1 = [
15
+ ["la", -1],
16
+ ["sela", -1, 1],
17
+ ["le", -1],
18
+ ["me", -1],
19
+ ["se", -1],
20
+ ["lo", -1],
21
+ ["selo", -1, 1],
22
+ ["las", -1],
23
+ ["selas", -1, 1],
24
+ ["les", -1],
25
+ ["los", -1],
26
+ ["selos", -1, 1],
27
+ ["nos", -1]
28
+ ];
29
+
30
+ const a_2 = [
31
+ ["ando", 6],
32
+ ["iendo", 6],
33
+ ["yendo", 7],
34
+ ["\u00E1ndo", 2],
35
+ ["i\u00E9ndo", 1],
36
+ ["ar", 6],
37
+ ["er", 6],
38
+ ["ir", 6],
39
+ ["\u00E1r", 3],
40
+ ["\u00E9r", 4],
41
+ ["\u00EDr", 5]
42
+ ];
43
+
44
+ const a_3 = [
45
+ ["ic", -1],
46
+ ["ad", -1],
47
+ ["os", -1],
48
+ ["iv", 1]
49
+ ];
50
+
51
+ const a_4 = [
52
+ ["able", 1],
53
+ ["ible", 1],
54
+ ["ante", 1]
55
+ ];
56
+
57
+ const a_5 = [
58
+ ["ic", 1],
59
+ ["abil", 1],
60
+ ["iv", 1]
61
+ ];
62
+
63
+ const a_6 = [
64
+ ["ica", 1],
65
+ ["ancia", 2],
66
+ ["encia", 5],
67
+ ["adora", 2],
68
+ ["osa", 1],
69
+ ["ista", 1],
70
+ ["iva", 9],
71
+ ["anza", 1],
72
+ ["log\u00EDa", 3],
73
+ ["idad", 8],
74
+ ["able", 1],
75
+ ["ible", 1],
76
+ ["ante", 2],
77
+ ["mente", 7],
78
+ ["amente", 6, 1],
79
+ ["acion", 2],
80
+ ["ucion", 4],
81
+ ["aci\u00F3n", 2],
82
+ ["uci\u00F3n", 4],
83
+ ["ico", 1],
84
+ ["ismo", 1],
85
+ ["oso", 1],
86
+ ["amiento", 1],
87
+ ["imiento", 1],
88
+ ["ivo", 9],
89
+ ["ador", 2],
90
+ ["icas", 1],
91
+ ["ancias", 2],
92
+ ["encias", 5],
93
+ ["adoras", 2],
94
+ ["osas", 1],
95
+ ["istas", 1],
96
+ ["ivas", 9],
97
+ ["anzas", 1],
98
+ ["log\u00EDas", 3],
99
+ ["idades", 8],
100
+ ["ables", 1],
101
+ ["ibles", 1],
102
+ ["aciones", 2],
103
+ ["uciones", 4],
104
+ ["adores", 2],
105
+ ["antes", 2],
106
+ ["icos", 1],
107
+ ["ismos", 1],
108
+ ["osos", 1],
109
+ ["amientos", 1],
110
+ ["imientos", 1],
111
+ ["ivos", 9]
112
+ ];
113
+
114
+ const a_7 = [
115
+ ["ya", 1],
116
+ ["ye", 1],
117
+ ["yan", 1],
118
+ ["yen", 1],
119
+ ["yeron", 1],
120
+ ["yendo", 1],
121
+ ["yo", 1],
122
+ ["yas", 1],
123
+ ["yes", 1],
124
+ ["yais", 1],
125
+ ["yamos", 1],
126
+ ["y\u00F3", 1]
127
+ ];
128
+
129
+ const a_8 = [
130
+ ["aba", 2],
131
+ ["ada", 2],
132
+ ["ida", 2],
133
+ ["ara", 2],
134
+ ["iera", 2],
135
+ ["\u00EDa", 2],
136
+ ["ar\u00EDa", 2, 1],
137
+ ["er\u00EDa", 2, 2],
138
+ ["ir\u00EDa", 2, 3],
139
+ ["ad", 2],
140
+ ["ed", 2],
141
+ ["id", 2],
142
+ ["ase", 2],
143
+ ["iese", 2],
144
+ ["aste", 2],
145
+ ["iste", 2],
146
+ ["an", 2],
147
+ ["aban", 2, 1],
148
+ ["aran", 2, 2],
149
+ ["ieran", 2, 3],
150
+ ["\u00EDan", 2, 4],
151
+ ["ar\u00EDan", 2, 1],
152
+ ["er\u00EDan", 2, 2],
153
+ ["ir\u00EDan", 2, 3],
154
+ ["en", 1],
155
+ ["asen", 2, 1],
156
+ ["iesen", 2, 2],
157
+ ["aron", 2],
158
+ ["ieron", 2],
159
+ ["ar\u00E1n", 2],
160
+ ["er\u00E1n", 2],
161
+ ["ir\u00E1n", 2],
162
+ ["ado", 2],
163
+ ["ido", 2],
164
+ ["ando", 2],
165
+ ["iendo", 2],
166
+ ["ar", 2],
167
+ ["er", 2],
168
+ ["ir", 2],
169
+ ["as", 2],
170
+ ["abas", 2, 1],
171
+ ["adas", 2, 2],
172
+ ["idas", 2, 3],
173
+ ["aras", 2, 4],
174
+ ["ieras", 2, 5],
175
+ ["\u00EDas", 2, 6],
176
+ ["ar\u00EDas", 2, 1],
177
+ ["er\u00EDas", 2, 2],
178
+ ["ir\u00EDas", 2, 3],
179
+ ["es", 1],
180
+ ["ases", 2, 1],
181
+ ["ieses", 2, 2],
182
+ ["abais", 2],
183
+ ["arais", 2],
184
+ ["ierais", 2],
185
+ ["\u00EDais", 2],
186
+ ["ar\u00EDais", 2, 1],
187
+ ["er\u00EDais", 2, 2],
188
+ ["ir\u00EDais", 2, 3],
189
+ ["aseis", 2],
190
+ ["ieseis", 2],
191
+ ["asteis", 2],
192
+ ["isteis", 2],
193
+ ["\u00E1is", 2],
194
+ ["\u00E9is", 1],
195
+ ["ar\u00E9is", 2, 1],
196
+ ["er\u00E9is", 2, 2],
197
+ ["ir\u00E9is", 2, 3],
198
+ ["ados", 2],
199
+ ["idos", 2],
200
+ ["amos", 2],
201
+ ["\u00E1bamos", 2, 1],
202
+ ["\u00E1ramos", 2, 2],
203
+ ["i\u00E9ramos", 2, 3],
204
+ ["\u00EDamos", 2, 4],
205
+ ["ar\u00EDamos", 2, 1],
206
+ ["er\u00EDamos", 2, 2],
207
+ ["ir\u00EDamos", 2, 3],
208
+ ["emos", 1],
209
+ ["aremos", 2, 1],
210
+ ["eremos", 2, 2],
211
+ ["iremos", 2, 3],
212
+ ["\u00E1semos", 2, 4],
213
+ ["i\u00E9semos", 2, 5],
214
+ ["imos", 2],
215
+ ["ar\u00E1s", 2],
216
+ ["er\u00E1s", 2],
217
+ ["ir\u00E1s", 2],
218
+ ["\u00EDs", 2],
219
+ ["ar\u00E1", 2],
220
+ ["er\u00E1", 2],
221
+ ["ir\u00E1", 2],
222
+ ["ar\u00E9", 2],
223
+ ["er\u00E9", 2],
224
+ ["ir\u00E9", 2],
225
+ ["i\u00F3", 2]
226
+ ];
227
+
228
+ const a_9 = [
229
+ ["a", 1],
230
+ ["e", 2],
231
+ ["o", 1],
232
+ ["os", 1],
233
+ ["\u00E1", 1],
234
+ ["\u00E9", 2],
235
+ ["\u00ED", 1],
236
+ ["\u00F3", 1]
237
+ ];
238
+
239
+ const /** Array<number> */ g_v = [17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10];
240
+
241
+ import B from './base-stemmer.js'
242
+
243
+ export default class extends B {
244
+
245
+ #I_p2/** number */ = 0;
246
+ #I_p1/** number */ = 0;
247
+ #I_pV/** number */ = 0;
248
+
249
+
250
+ /** @return {boolean} */
251
+ #r_mark_regions() {
252
+ this.#I_pV = this.limit;
253
+ this.#I_p1 = this.limit;
254
+ this.#I_p2 = this.limit;
255
+ const /** number */ v_1 = this.c;
256
+ // deno-lint-ignore no-unused-labels
257
+ lab0: {
258
+ // deno-lint-ignore no-unused-labels
259
+ lab1: {
260
+ const /** number */ v_2 = this.c;
261
+ // deno-lint-ignore no-unused-labels
262
+ lab2: {
263
+ if (!(this.in_grouping(g_v, 97, 252))) break lab2;
264
+ // deno-lint-ignore no-unused-labels
265
+ lab3: {
266
+ const /** number */ v_3 = this.c;
267
+ // deno-lint-ignore no-unused-labels
268
+ lab4: {
269
+ if (!(this.out_grouping(g_v, 97, 252))) break lab4;
270
+ if (!this.go_out_grouping(g_v, 97, 252)) break lab4;
271
+ this.c++;
272
+ break lab3;
273
+ }
274
+ this.c = v_3;
275
+ if (!(this.in_grouping(g_v, 97, 252))) break lab2;
276
+ if (!this.go_in_grouping(g_v, 97, 252)) break lab2;
277
+ this.c++;
278
+ }
279
+ break lab1;
280
+ }
281
+ this.c = v_2;
282
+ if (!(this.out_grouping(g_v, 97, 252))) break lab0;
283
+ // deno-lint-ignore no-unused-labels
284
+ lab5: {
285
+ const /** number */ v_4 = this.c;
286
+ // deno-lint-ignore no-unused-labels
287
+ lab6: {
288
+ if (!(this.out_grouping(g_v, 97, 252))) break lab6;
289
+ if (!this.go_out_grouping(g_v, 97, 252)) break lab6;
290
+ this.c++;
291
+ break lab5;
292
+ }
293
+ this.c = v_4;
294
+ if (!(this.in_grouping(g_v, 97, 252))) break lab0;
295
+ if (this.c >= this.limit) break lab0;
296
+ this.c++;
297
+ }
298
+ }
299
+ this.#I_pV = this.c;
300
+ }
301
+ this.c = v_1;
302
+ const /** number */ v_5 = this.c;
303
+ // deno-lint-ignore no-unused-labels
304
+ lab7: {
305
+ if (!this.go_out_grouping(g_v, 97, 252)) break lab7;
306
+ this.c++;
307
+ if (!this.go_in_grouping(g_v, 97, 252)) break lab7;
308
+ this.c++;
309
+ this.#I_p1 = this.c;
310
+ if (!this.go_out_grouping(g_v, 97, 252)) break lab7;
311
+ this.c++;
312
+ if (!this.go_in_grouping(g_v, 97, 252)) break lab7;
313
+ this.c++;
314
+ this.#I_p2 = this.c;
315
+ }
316
+ this.c = v_5;
317
+ return true;
318
+ }
319
+
320
+ /** @return {boolean} */
321
+ #r_postlude() {
322
+ let /** number */ a;
323
+ while (true) {
324
+ const /** number */ v_1 = this.c;
325
+ // deno-lint-ignore no-unused-labels
326
+ lab0: {
327
+ this.bra = this.c;
328
+ a = this.find_among(a_0);
329
+ this.ket = this.c;
330
+ switch (a) {
331
+ case 1: {
332
+ this.slice_from("a");
333
+ break;
334
+ }
335
+ case 2: {
336
+ this.slice_from("e");
337
+ break;
338
+ }
339
+ case 3: {
340
+ this.slice_from("i");
341
+ break;
342
+ }
343
+ case 4: {
344
+ this.slice_from("o");
345
+ break;
346
+ }
347
+ case 5: {
348
+ this.slice_from("u");
349
+ break;
350
+ }
351
+ case 6: {
352
+ if (this.c >= this.limit) break lab0;
353
+ this.c++;
354
+ break;
355
+ }
356
+ }
357
+ continue;
358
+ }
359
+ this.c = v_1;
360
+ break;
361
+ }
362
+ return true;
363
+ }
364
+
365
+ /** @return {boolean} */
366
+ #r_RV() {
367
+ return this.#I_pV <= this.c;
368
+ }
369
+
370
+ /** @return {boolean} */
371
+ #r_R2() {
372
+ return this.#I_p2 <= this.c;
373
+ }
374
+
375
+ /** @return {boolean} */
376
+ #r_attached_pronoun() {
377
+ let /** number */ a;
378
+ this.ket = this.c;
379
+ if (this.find_among_b(a_1) === 0) return false;
380
+ this.bra = this.c;
381
+ a = this.find_among_b(a_2);
382
+ if (a === 0) return false;
383
+ if (!this.#r_RV()) return false;
384
+ switch (a) {
385
+ case 1: {
386
+ this.bra = this.c;
387
+ this.slice_from("iendo");
388
+ break;
389
+ }
390
+ case 2: {
391
+ this.bra = this.c;
392
+ this.slice_from("ando");
393
+ break;
394
+ }
395
+ case 3: {
396
+ this.bra = this.c;
397
+ this.slice_from("ar");
398
+ break;
399
+ }
400
+ case 4: {
401
+ this.bra = this.c;
402
+ this.slice_from("er");
403
+ break;
404
+ }
405
+ case 5: {
406
+ this.bra = this.c;
407
+ this.slice_from("ir");
408
+ break;
409
+ }
410
+ case 6: {
411
+ this.slice_del();
412
+ break;
413
+ }
414
+ case 7: {
415
+ if (!(this.eq_s_b("u"))) return false;
416
+ this.slice_del();
417
+ break;
418
+ }
419
+ }
420
+ return true;
421
+ }
422
+
423
+ /** @return {boolean} */
424
+ #r_standard_suffix() {
425
+ let /** number */ a;
426
+ this.ket = this.c;
427
+ a = this.find_among_b(a_6);
428
+ if (a === 0) return false;
429
+ this.bra = this.c;
430
+ switch (a) {
431
+ case 1: {
432
+ if (!this.#r_R2()) return false;
433
+ this.slice_del();
434
+ break;
435
+ }
436
+ case 2: {
437
+ if (!this.#r_R2()) return false;
438
+ this.slice_del();
439
+ const /** number */ v_1 = this.limit - this.c;
440
+ // deno-lint-ignore no-unused-labels
441
+ lab0: {
442
+ this.ket = this.c;
443
+ if (!(this.eq_s_b("ic"))) {
444
+ this.c = this.limit - v_1;
445
+ break lab0;
446
+ }
447
+ this.bra = this.c;
448
+ if (!this.#r_R2()) {
449
+ this.c = this.limit - v_1;
450
+ break lab0;
451
+ }
452
+ this.slice_del();
453
+ }
454
+ break;
455
+ }
456
+ case 3: {
457
+ if (!this.#r_R2()) return false;
458
+ this.slice_from("log");
459
+ break;
460
+ }
461
+ case 4: {
462
+ if (!this.#r_R2()) return false;
463
+ this.slice_from("u");
464
+ break;
465
+ }
466
+ case 5: {
467
+ if (!this.#r_R2()) return false;
468
+ this.slice_from("ente");
469
+ break;
470
+ }
471
+ case 6: {
472
+ if (this.#I_p1 > this.c) return false;
473
+ this.slice_del();
474
+ const /** number */ v_2 = this.limit - this.c;
475
+ // deno-lint-ignore no-unused-labels
476
+ lab1: {
477
+ this.ket = this.c;
478
+ a = this.find_among_b(a_3);
479
+ if (a === 0) {
480
+ this.c = this.limit - v_2;
481
+ break lab1;
482
+ }
483
+ this.bra = this.c;
484
+ if (!this.#r_R2()) {
485
+ this.c = this.limit - v_2;
486
+ break lab1;
487
+ }
488
+ this.slice_del();
489
+ switch (a) {
490
+ case 1: {
491
+ this.ket = this.c;
492
+ if (!(this.eq_s_b("at"))) {
493
+ this.c = this.limit - v_2;
494
+ break lab1;
495
+ }
496
+ this.bra = this.c;
497
+ if (!this.#r_R2()) {
498
+ this.c = this.limit - v_2;
499
+ break lab1;
500
+ }
501
+ this.slice_del();
502
+ break;
503
+ }
504
+ }
505
+ }
506
+ break;
507
+ }
508
+ case 7: {
509
+ if (!this.#r_R2()) return false;
510
+ this.slice_del();
511
+ const /** number */ v_3 = this.limit - this.c;
512
+ // deno-lint-ignore no-unused-labels
513
+ lab2: {
514
+ this.ket = this.c;
515
+ if (this.find_among_b(a_4) === 0) {
516
+ this.c = this.limit - v_3;
517
+ break lab2;
518
+ }
519
+ this.bra = this.c;
520
+ if (!this.#r_R2()) {
521
+ this.c = this.limit - v_3;
522
+ break lab2;
523
+ }
524
+ this.slice_del();
525
+ }
526
+ break;
527
+ }
528
+ case 8: {
529
+ if (!this.#r_R2()) return false;
530
+ this.slice_del();
531
+ const /** number */ v_4 = this.limit - this.c;
532
+ // deno-lint-ignore no-unused-labels
533
+ lab3: {
534
+ this.ket = this.c;
535
+ if (this.find_among_b(a_5) === 0) {
536
+ this.c = this.limit - v_4;
537
+ break lab3;
538
+ }
539
+ this.bra = this.c;
540
+ if (!this.#r_R2()) {
541
+ this.c = this.limit - v_4;
542
+ break lab3;
543
+ }
544
+ this.slice_del();
545
+ }
546
+ break;
547
+ }
548
+ case 9: {
549
+ if (!this.#r_R2()) return false;
550
+ this.slice_del();
551
+ const /** number */ v_5 = this.limit - this.c;
552
+ // deno-lint-ignore no-unused-labels
553
+ lab4: {
554
+ this.ket = this.c;
555
+ if (!(this.eq_s_b("at"))) {
556
+ this.c = this.limit - v_5;
557
+ break lab4;
558
+ }
559
+ this.bra = this.c;
560
+ if (!this.#r_R2()) {
561
+ this.c = this.limit - v_5;
562
+ break lab4;
563
+ }
564
+ this.slice_del();
565
+ }
566
+ break;
567
+ }
568
+ }
569
+ return true;
570
+ }
571
+
572
+ /** @return {boolean} */
573
+ #r_y_verb_suffix() {
574
+ if (this.c < this.#I_pV) return false;
575
+ const /** number */ v_1 = this.limit_backward;
576
+ this.limit_backward = this.#I_pV;
577
+ this.ket = this.c;
578
+ if (this.find_among_b(a_7) === 0) {
579
+ this.limit_backward = v_1;
580
+ return false;
581
+ }
582
+ this.bra = this.c;
583
+ this.limit_backward = v_1;
584
+ if (!(this.eq_s_b("u"))) return false;
585
+ this.slice_del();
586
+ return true;
587
+ }
588
+
589
+ /** @return {boolean} */
590
+ #r_verb_suffix() {
591
+ let /** number */ a;
592
+ if (this.c < this.#I_pV) return false;
593
+ const /** number */ v_1 = this.limit_backward;
594
+ this.limit_backward = this.#I_pV;
595
+ this.ket = this.c;
596
+ a = this.find_among_b(a_8);
597
+ if (a === 0) {
598
+ this.limit_backward = v_1;
599
+ return false;
600
+ }
601
+ this.bra = this.c;
602
+ this.limit_backward = v_1;
603
+ switch (a) {
604
+ case 1: {
605
+ const /** number */ v_2 = this.limit - this.c;
606
+ // deno-lint-ignore no-unused-labels
607
+ lab0: {
608
+ if (!(this.eq_s_b("u"))) {
609
+ this.c = this.limit - v_2;
610
+ break lab0;
611
+ }
612
+ const /** number */ v_3 = this.limit - this.c;
613
+ if (!(this.eq_s_b("g"))) {
614
+ this.c = this.limit - v_2;
615
+ break lab0;
616
+ }
617
+ this.c = this.limit - v_3;
618
+ }
619
+ this.bra = this.c;
620
+ this.slice_del();
621
+ break;
622
+ }
623
+ case 2: {
624
+ this.slice_del();
625
+ break;
626
+ }
627
+ }
628
+ return true;
629
+ }
630
+
631
+ /** @return {boolean} */
632
+ #r_residual_suffix() {
633
+ let /** number */ a;
634
+ this.ket = this.c;
635
+ a = this.find_among_b(a_9);
636
+ if (a === 0) return false;
637
+ this.bra = this.c;
638
+ switch (a) {
639
+ case 1: {
640
+ if (!this.#r_RV()) return false;
641
+ this.slice_del();
642
+ break;
643
+ }
644
+ case 2: {
645
+ if (!this.#r_RV()) return false;
646
+ this.slice_del();
647
+ const /** number */ v_1 = this.limit - this.c;
648
+ // deno-lint-ignore no-unused-labels
649
+ lab0: {
650
+ this.ket = this.c;
651
+ if (!(this.eq_s_b("u"))) {
652
+ this.c = this.limit - v_1;
653
+ break lab0;
654
+ }
655
+ this.bra = this.c;
656
+ const /** number */ v_2 = this.limit - this.c;
657
+ if (!(this.eq_s_b("g"))) {
658
+ this.c = this.limit - v_1;
659
+ break lab0;
660
+ }
661
+ this.c = this.limit - v_2;
662
+ if (!this.#r_RV()) {
663
+ this.c = this.limit - v_1;
664
+ break lab0;
665
+ }
666
+ this.slice_del();
667
+ }
668
+ break;
669
+ }
670
+ }
671
+ return true;
672
+ }
673
+
674
+ /** @return {boolean} */
675
+ #stem() {
676
+ this.#r_mark_regions();
677
+ this.limit_backward = this.c; this.c = this.limit;
678
+ const /** number */ v_1 = this.limit - this.c;
679
+ this.#r_attached_pronoun();
680
+ this.c = this.limit - v_1;
681
+ const /** number */ v_2 = this.limit - this.c;
682
+ // deno-lint-ignore no-unused-labels
683
+ lab0: {
684
+ // deno-lint-ignore no-unused-labels
685
+ lab1: {
686
+ const /** number */ v_3 = this.limit - this.c;
687
+ // deno-lint-ignore no-unused-labels
688
+ lab2: {
689
+ if (!this.#r_standard_suffix()) break lab2;
690
+ break lab1;
691
+ }
692
+ this.c = this.limit - v_3;
693
+ // deno-lint-ignore no-unused-labels
694
+ lab3: {
695
+ if (!this.#r_y_verb_suffix()) break lab3;
696
+ break lab1;
697
+ }
698
+ this.c = this.limit - v_3;
699
+ if (!this.#r_verb_suffix()) break lab0;
700
+ }
701
+ }
702
+ this.c = this.limit - v_2;
703
+ const /** number */ v_4 = this.limit - this.c;
704
+ this.#r_residual_suffix();
705
+ this.c = this.limit - v_4;
706
+ this.c = this.limit_backward;
707
+ const /** number */ v_5 = this.c;
708
+ this.#r_postlude();
709
+ this.c = v_5;
710
+ return true;
711
+ }
712
+
713
+ /**@return{string}*/
714
+ stem(/**string*/input) {
715
+ this.setCurrent(input);
716
+ this.#stem();
717
+ return this.getCurrent();
718
+ }
719
+
720
+ stemWord = this.stem;
721
+ }
722
+