@delali/narsil 0.1.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/LICENSE +201 -0
  2. package/dist/adapters/filesystem.d.ts +8 -0
  3. package/dist/adapters/filesystem.mjs +107 -0
  4. package/dist/adapters/indexeddb.d.ts +9 -0
  5. package/dist/adapters/indexeddb.mjs +153 -0
  6. package/dist/adapters/memory.d.ts +5 -0
  7. package/dist/adapters/memory.mjs +30 -0
  8. package/dist/adapters-XODT2F3h.d.ts +30 -0
  9. package/dist/chunk-5HXMVMSM.mjs +3147 -0
  10. package/dist/chunk-JKIBUPAY.mjs +42 -0
  11. package/dist/chunk-N37VMC62.mjs +18 -0
  12. package/dist/chunk-WYC635GI.mjs +335 -0
  13. package/dist/direct-executor-MQD7JRD4.mjs +3 -0
  14. package/dist/index.d.ts +386 -0
  15. package/dist/index.mjs +1099 -0
  16. package/dist/invalidation/broadcast-channel.d.ts +8 -0
  17. package/dist/invalidation/broadcast-channel.mjs +46 -0
  18. package/dist/invalidation/filesystem.d.ts +10 -0
  19. package/dist/invalidation/filesystem.mjs +159 -0
  20. package/dist/invalidation/noop.d.ts +5 -0
  21. package/dist/invalidation/noop.mjs +13 -0
  22. package/dist/language-ClUGLuoC.d.ts +13 -0
  23. package/dist/languages/arabic.d.ts +5 -0
  24. package/dist/languages/arabic.mjs +631 -0
  25. package/dist/languages/armenian.d.ts +5 -0
  26. package/dist/languages/armenian.mjs +306 -0
  27. package/dist/languages/bulgarian.d.ts +5 -0
  28. package/dist/languages/bulgarian.mjs +330 -0
  29. package/dist/languages/chinese.d.ts +5 -0
  30. package/dist/languages/chinese.mjs +250 -0
  31. package/dist/languages/dagbani.d.ts +5 -0
  32. package/dist/languages/dagbani.mjs +85 -0
  33. package/dist/languages/danish.d.ts +5 -0
  34. package/dist/languages/danish.mjs +224 -0
  35. package/dist/languages/dutch.d.ts +5 -0
  36. package/dist/languages/dutch.mjs +296 -0
  37. package/dist/languages/english.d.ts +5 -0
  38. package/dist/languages/english.mjs +1 -0
  39. package/dist/languages/ewe.d.ts +5 -0
  40. package/dist/languages/ewe.mjs +85 -0
  41. package/dist/languages/finnish.d.ts +5 -0
  42. package/dist/languages/finnish.mjs +536 -0
  43. package/dist/languages/french.d.ts +5 -0
  44. package/dist/languages/french.mjs +635 -0
  45. package/dist/languages/ga.d.ts +5 -0
  46. package/dist/languages/ga.mjs +69 -0
  47. package/dist/languages/german.d.ts +5 -0
  48. package/dist/languages/german.mjs +414 -0
  49. package/dist/languages/greek.d.ts +5 -0
  50. package/dist/languages/greek.mjs +888 -0
  51. package/dist/languages/hausa.d.ts +5 -0
  52. package/dist/languages/hausa.mjs +243 -0
  53. package/dist/languages/hindi.d.ts +5 -0
  54. package/dist/languages/hindi.mjs +333 -0
  55. package/dist/languages/hungarian.d.ts +5 -0
  56. package/dist/languages/hungarian.mjs +600 -0
  57. package/dist/languages/igbo.d.ts +5 -0
  58. package/dist/languages/igbo.mjs +96 -0
  59. package/dist/languages/indonesian.d.ts +5 -0
  60. package/dist/languages/indonesian.mjs +896 -0
  61. package/dist/languages/irish.d.ts +5 -0
  62. package/dist/languages/irish.mjs +268 -0
  63. package/dist/languages/italian.d.ts +5 -0
  64. package/dist/languages/italian.mjs +713 -0
  65. package/dist/languages/japanese.d.ts +5 -0
  66. package/dist/languages/japanese.mjs +210 -0
  67. package/dist/languages/nepali.d.ts +5 -0
  68. package/dist/languages/nepali.mjs +262 -0
  69. package/dist/languages/norwegian.d.ts +5 -0
  70. package/dist/languages/norwegian.mjs +274 -0
  71. package/dist/languages/portuguese.d.ts +5 -0
  72. package/dist/languages/portuguese.mjs +606 -0
  73. package/dist/languages/romanian.d.ts +5 -0
  74. package/dist/languages/romanian.mjs +634 -0
  75. package/dist/languages/russian.d.ts +5 -0
  76. package/dist/languages/russian.mjs +424 -0
  77. package/dist/languages/sanskrit.d.ts +5 -0
  78. package/dist/languages/sanskrit.mjs +155 -0
  79. package/dist/languages/serbian.d.ts +5 -0
  80. package/dist/languages/serbian.mjs +277 -0
  81. package/dist/languages/slovenian.d.ts +5 -0
  82. package/dist/languages/slovenian.mjs +522 -0
  83. package/dist/languages/spanish.d.ts +5 -0
  84. package/dist/languages/spanish.mjs +606 -0
  85. package/dist/languages/swahili.d.ts +5 -0
  86. package/dist/languages/swahili.mjs +212 -0
  87. package/dist/languages/swedish.d.ts +5 -0
  88. package/dist/languages/swedish.mjs +224 -0
  89. package/dist/languages/tamil.d.ts +5 -0
  90. package/dist/languages/tamil.mjs +186 -0
  91. package/dist/languages/turkish.d.ts +5 -0
  92. package/dist/languages/turkish.mjs +675 -0
  93. package/dist/languages/twi.d.ts +5 -0
  94. package/dist/languages/twi.mjs +84 -0
  95. package/dist/languages/ukrainian.d.ts +5 -0
  96. package/dist/languages/ukrainian.mjs +444 -0
  97. package/dist/languages/yoruba.d.ts +5 -0
  98. package/dist/languages/yoruba.mjs +103 -0
  99. package/dist/languages/zulu.d.ts +5 -0
  100. package/dist/languages/zulu.mjs +113 -0
  101. package/dist/workers/entry.d.ts +3 -0
  102. package/dist/workers/entry.mjs +106 -0
  103. package/package.json +87 -0
@@ -0,0 +1,713 @@
1
+ // src/languages/italian.ts
2
+ var VOWELS = "aeiou\xE0\xE8\xE9\xEC\xF2\xF3\xF9";
3
+ var RE_QU = /qu/g;
4
+ function isVowel(ch) {
5
+ return VOWELS.includes(ch);
6
+ }
7
+ function findRegions(word) {
8
+ const length = word.length;
9
+ let rv = length;
10
+ if (length > 3) {
11
+ if (!isVowel(word[1])) {
12
+ for (let i = 2; i < length; i++) {
13
+ if (isVowel(word[i])) {
14
+ rv = i + 1;
15
+ break;
16
+ }
17
+ }
18
+ } else if (isVowel(word[0]) && isVowel(word[1])) {
19
+ for (let i = 2; i < length; i++) {
20
+ if (!isVowel(word[i])) {
21
+ rv = i + 1;
22
+ break;
23
+ }
24
+ }
25
+ } else {
26
+ rv = 3;
27
+ }
28
+ }
29
+ let r1 = length;
30
+ for (let i = 1; i < length; i++) {
31
+ if (!isVowel(word[i]) && isVowel(word[i - 1])) {
32
+ r1 = i + 1;
33
+ break;
34
+ }
35
+ }
36
+ let r2 = length;
37
+ for (let i = r1 + 1; i < length; i++) {
38
+ if (!isVowel(word[i]) && isVowel(word[i - 1])) {
39
+ r2 = i + 1;
40
+ break;
41
+ }
42
+ }
43
+ return { rv, r1, r2 };
44
+ }
45
+ var RE_ACCENT_A = /á/g;
46
+ var RE_ACCENT_E = /é/g;
47
+ var RE_ACCENT_I = /í/g;
48
+ var RE_ACCENT_O = /ó/g;
49
+ var RE_ACCENT_U = /ú/g;
50
+ function replaceAccentedVowels(word) {
51
+ return word.replace(RE_ACCENT_A, "\xE0").replace(RE_ACCENT_E, "\xE8").replace(RE_ACCENT_I, "\xEC").replace(RE_ACCENT_O, "\xF2").replace(RE_ACCENT_U, "\xF9");
52
+ }
53
+ function markVowelPairsAsUppercase(word) {
54
+ let result = "";
55
+ for (let i = 0; i < word.length; i++) {
56
+ const ch = word[i];
57
+ if (i > 0 && i < word.length - 1 && isVowel(word[i - 1]) && isVowel(word[i + 1])) {
58
+ if (ch === "i") {
59
+ result += "I";
60
+ continue;
61
+ }
62
+ if (ch === "u") {
63
+ result += "U";
64
+ continue;
65
+ }
66
+ }
67
+ result += ch;
68
+ }
69
+ return result;
70
+ }
71
+ var RE_UPPERCASE_I = /I/g;
72
+ var RE_UPPERCASE_U = /U/g;
73
+ function restoreMarkedVowels(word) {
74
+ return word.replace(RE_UPPERCASE_I, "i").replace(RE_UPPERCASE_U, "u");
75
+ }
76
+ function endsWith(word, suffix) {
77
+ return word.endsWith(suffix);
78
+ }
79
+ function suffixInRegion(word, suffix, regionStart) {
80
+ return word.length - suffix.length >= regionStart;
81
+ }
82
+ function removeSuffix(word, suffix) {
83
+ return word.slice(0, word.length - suffix.length);
84
+ }
85
+ var STANDARD_SUFFIXES = [
86
+ { suffix: "atrice", group: "A" },
87
+ { suffix: "atrici", group: "A" },
88
+ { suffix: "azione", group: "B" },
89
+ { suffix: "azioni", group: "B" },
90
+ { suffix: "uzione", group: "D" },
91
+ { suffix: "uzioni", group: "D" },
92
+ { suffix: "usione", group: "D" },
93
+ { suffix: "usioni", group: "D" },
94
+ { suffix: "amento", group: "F" },
95
+ { suffix: "amenti", group: "F" },
96
+ { suffix: "imento", group: "F" },
97
+ { suffix: "imenti", group: "F" },
98
+ { suffix: "amente", group: "G" },
99
+ { suffix: "atore", group: "B" },
100
+ { suffix: "atori", group: "B" },
101
+ { suffix: "mente", group: "A" },
102
+ { suffix: "logia", group: "C" },
103
+ { suffix: "logie", group: "C" },
104
+ { suffix: "abile", group: "A" },
105
+ { suffix: "abili", group: "A" },
106
+ { suffix: "ibile", group: "A" },
107
+ { suffix: "ibili", group: "A" },
108
+ { suffix: "ista", group: "A" },
109
+ { suffix: "iste", group: "A" },
110
+ { suffix: "isti", group: "A" },
111
+ { suffix: "ist\xE0", group: "A" },
112
+ { suffix: "ist\xE8", group: "A" },
113
+ { suffix: "ist\xEC", group: "A" },
114
+ { suffix: "anza", group: "A" },
115
+ { suffix: "anze", group: "A" },
116
+ { suffix: "enza", group: "E" },
117
+ { suffix: "enze", group: "E" },
118
+ { suffix: "iche", group: "A" },
119
+ { suffix: "ichi", group: "A" },
120
+ { suffix: "ismo", group: "A" },
121
+ { suffix: "ismi", group: "A" },
122
+ { suffix: "ante", group: "A" },
123
+ { suffix: "anti", group: "A" },
124
+ { suffix: "ica", group: "A" },
125
+ { suffix: "ice", group: "A" },
126
+ { suffix: "ico", group: "A" },
127
+ { suffix: "ici", group: "A" },
128
+ { suffix: "osa", group: "A" },
129
+ { suffix: "ose", group: "A" },
130
+ { suffix: "oso", group: "A" },
131
+ { suffix: "osi", group: "A" },
132
+ { suffix: "iva", group: "I" },
133
+ { suffix: "ive", group: "I" },
134
+ { suffix: "ivo", group: "I" },
135
+ { suffix: "ivi", group: "I" },
136
+ { suffix: "it\xE0", group: "H" }
137
+ ];
138
+ function findLongestSuffix(word, suffixes) {
139
+ let best = null;
140
+ for (const entry of suffixes) {
141
+ if (endsWith(word, entry.suffix)) {
142
+ if (best === null || entry.suffix.length > best.suffix.length) {
143
+ best = entry;
144
+ }
145
+ }
146
+ }
147
+ return best;
148
+ }
149
+ function removeStandardSuffix(word, r1, r2, rv) {
150
+ const match = findLongestSuffix(word, STANDARD_SUFFIXES);
151
+ if (match === null) return { word, changed: false };
152
+ const { suffix, group } = match;
153
+ if (group === "A") {
154
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
155
+ return { word: removeSuffix(word, suffix), changed: true };
156
+ }
157
+ if (group === "B") {
158
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
159
+ word = removeSuffix(word, suffix);
160
+ if (endsWith(word, "ic") && suffixInRegion(word, "ic", r2)) {
161
+ word = removeSuffix(word, "ic");
162
+ }
163
+ return { word, changed: true };
164
+ }
165
+ if (group === "C") {
166
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
167
+ return { word: `${removeSuffix(word, suffix)}log`, changed: true };
168
+ }
169
+ if (group === "D") {
170
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
171
+ return { word: `${removeSuffix(word, suffix)}u`, changed: true };
172
+ }
173
+ if (group === "E") {
174
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
175
+ return { word: `${removeSuffix(word, suffix)}ente`, changed: true };
176
+ }
177
+ if (group === "F") {
178
+ if (!suffixInRegion(word, suffix, rv)) return { word, changed: false };
179
+ return { word: removeSuffix(word, suffix), changed: true };
180
+ }
181
+ if (group === "G") {
182
+ if (!suffixInRegion(word, suffix, r1)) return { word, changed: false };
183
+ word = removeSuffix(word, suffix);
184
+ if (endsWith(word, "iv") && suffixInRegion(word, "iv", r2)) {
185
+ word = removeSuffix(word, "iv");
186
+ if (endsWith(word, "at") && suffixInRegion(word, "at", r2)) {
187
+ word = removeSuffix(word, "at");
188
+ }
189
+ } else if (endsWith(word, "os") && suffixInRegion(word, "os", r2)) {
190
+ word = removeSuffix(word, "os");
191
+ } else if (endsWith(word, "ic") && suffixInRegion(word, "ic", r2)) {
192
+ word = removeSuffix(word, "ic");
193
+ } else if (endsWith(word, "abil") && suffixInRegion(word, "abil", r2)) {
194
+ word = removeSuffix(word, "abil");
195
+ }
196
+ return { word, changed: true };
197
+ }
198
+ if (group === "H") {
199
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
200
+ word = removeSuffix(word, suffix);
201
+ if (endsWith(word, "abil") && suffixInRegion(word, "abil", r2)) {
202
+ word = removeSuffix(word, "abil");
203
+ } else if (endsWith(word, "ic") && suffixInRegion(word, "ic", r2)) {
204
+ word = removeSuffix(word, "ic");
205
+ } else if (endsWith(word, "iv") && suffixInRegion(word, "iv", r2)) {
206
+ word = removeSuffix(word, "iv");
207
+ }
208
+ return { word, changed: true };
209
+ }
210
+ if (group === "I") {
211
+ if (!suffixInRegion(word, suffix, r2)) return { word, changed: false };
212
+ word = removeSuffix(word, suffix);
213
+ if (endsWith(word, "at") && suffixInRegion(word, "at", r2)) {
214
+ word = removeSuffix(word, "at");
215
+ if (endsWith(word, "ic") && suffixInRegion(word, "ic", r2)) {
216
+ word = removeSuffix(word, "ic");
217
+ }
218
+ }
219
+ return { word, changed: true };
220
+ }
221
+ return { word, changed: false };
222
+ }
223
+ var VERB_SUFFIXES = [
224
+ "erebbero",
225
+ "irebbero",
226
+ "erebbe",
227
+ "irebbe",
228
+ "assero",
229
+ "essero",
230
+ "issero",
231
+ "assimo",
232
+ "eremmo",
233
+ "iremmo",
234
+ "eranno",
235
+ "iranno",
236
+ "ereste",
237
+ "ireste",
238
+ "iscano",
239
+ "iscono",
240
+ "eremo",
241
+ "iremo",
242
+ "avamo",
243
+ "evamo",
244
+ "ivamo",
245
+ "avate",
246
+ "evate",
247
+ "ivate",
248
+ "erete",
249
+ "irete",
250
+ "arono",
251
+ "erono",
252
+ "irono",
253
+ "avano",
254
+ "evano",
255
+ "ivano",
256
+ "eresti",
257
+ "iresti",
258
+ "isco",
259
+ "isca",
260
+ "isce",
261
+ "isci",
262
+ "ando",
263
+ "endo",
264
+ "Yamo",
265
+ "iamo",
266
+ "ammo",
267
+ "emmo",
268
+ "immo",
269
+ "asse",
270
+ "aste",
271
+ "este",
272
+ "iste",
273
+ "erai",
274
+ "irai",
275
+ "erei",
276
+ "irei",
277
+ "ava",
278
+ "eva",
279
+ "iva",
280
+ "ata",
281
+ "ita",
282
+ "uta",
283
+ "ate",
284
+ "ete",
285
+ "ite",
286
+ "ute",
287
+ "ati",
288
+ "iti",
289
+ "uti",
290
+ "ato",
291
+ "ito",
292
+ "uto",
293
+ "avo",
294
+ "evo",
295
+ "ivo",
296
+ "ano",
297
+ "ono",
298
+ "are",
299
+ "ere",
300
+ "ire",
301
+ "assi",
302
+ "avi",
303
+ "evi",
304
+ "ivi",
305
+ "endi",
306
+ "ar",
307
+ "ir",
308
+ "er\xE0",
309
+ "ir\xE0",
310
+ "er\xF2",
311
+ "ir\xF2"
312
+ ];
313
+ var ATTACHED_PRONOUN_SUFFIXES = [
314
+ "gliela",
315
+ "gliele",
316
+ "glieli",
317
+ "glielo",
318
+ "gliene",
319
+ "cela",
320
+ "cele",
321
+ "celi",
322
+ "celo",
323
+ "cene",
324
+ "mela",
325
+ "mele",
326
+ "meli",
327
+ "melo",
328
+ "mene",
329
+ "sene",
330
+ "tela",
331
+ "tele",
332
+ "teli",
333
+ "telo",
334
+ "tene",
335
+ "vela",
336
+ "vele",
337
+ "veli",
338
+ "velo",
339
+ "vene",
340
+ "gli",
341
+ "la",
342
+ "le",
343
+ "li",
344
+ "lo",
345
+ "ci",
346
+ "mi",
347
+ "ne",
348
+ "si",
349
+ "ti",
350
+ "vi"
351
+ ];
352
+ var ATTACHED_PRONOUN_PRECEDING = ["ando", "endo", "ar", "er", "ir"];
353
+ function removeAttachedPronouns(word, rv) {
354
+ let longestPronoun = null;
355
+ for (const pronoun of ATTACHED_PRONOUN_SUFFIXES) {
356
+ if (endsWith(word, pronoun) && suffixInRegion(word, pronoun, rv)) {
357
+ if (longestPronoun === null || pronoun.length > longestPronoun.length) {
358
+ longestPronoun = pronoun;
359
+ }
360
+ }
361
+ }
362
+ if (longestPronoun === null) return word;
363
+ const stemmed = removeSuffix(word, longestPronoun);
364
+ for (const preceding of ATTACHED_PRONOUN_PRECEDING) {
365
+ if (endsWith(stemmed, preceding)) {
366
+ if (preceding === "ar" || preceding === "er" || preceding === "ir") {
367
+ return `${removeSuffix(stemmed, preceding) + preceding}e`;
368
+ }
369
+ return stemmed;
370
+ }
371
+ }
372
+ return word;
373
+ }
374
+ function removeVerbSuffix(word, rv) {
375
+ let longestSuffix = null;
376
+ for (const suffix of VERB_SUFFIXES) {
377
+ if (endsWith(word, suffix)) {
378
+ if (longestSuffix === null || suffix.length > longestSuffix.length) {
379
+ longestSuffix = suffix;
380
+ }
381
+ }
382
+ }
383
+ if (longestSuffix !== null && suffixInRegion(word, longestSuffix, rv)) {
384
+ return { word: removeSuffix(word, longestSuffix), changed: true };
385
+ }
386
+ return { word, changed: false };
387
+ }
388
+ function removeResidualSuffix(word, rv) {
389
+ const lastChar = word[word.length - 1];
390
+ if (lastChar === "a" || lastChar === "e" || lastChar === "i" || lastChar === "o" || lastChar === "\xE0" || lastChar === "\xE8" || lastChar === "\xEC" || lastChar === "\xF2") {
391
+ if (suffixInRegion(word, lastChar, rv)) {
392
+ word = word.slice(0, -1);
393
+ if (word.length > 0 && word[word.length - 1] === "i" && suffixInRegion(word, "i", rv)) {
394
+ word = word.slice(0, -1);
395
+ }
396
+ }
397
+ }
398
+ if (endsWith(word, "h") && suffixInRegion(word, "h", rv)) {
399
+ const twoBack = word.length >= 2 ? word[word.length - 2] : "";
400
+ if (twoBack === "c" || twoBack === "g") {
401
+ word = word.slice(0, -1);
402
+ }
403
+ }
404
+ return word;
405
+ }
406
+ function stem(word) {
407
+ if (word.length < 3) return word;
408
+ word = word.toLowerCase();
409
+ word = replaceAccentedVowels(word);
410
+ word = word.replace(RE_QU, "qU");
411
+ word = markVowelPairsAsUppercase(word);
412
+ const { rv, r1, r2 } = findRegions(word);
413
+ word = removeAttachedPronouns(word, rv);
414
+ const standardResult = removeStandardSuffix(word, r1, r2, rv);
415
+ if (standardResult.changed) {
416
+ word = standardResult.word;
417
+ } else {
418
+ const verbResult = removeVerbSuffix(word, rv);
419
+ word = verbResult.word;
420
+ }
421
+ word = removeResidualSuffix(word, rv);
422
+ word = restoreMarkedVowels(word);
423
+ return word;
424
+ }
425
+ var stopWords = /* @__PURE__ */ new Set([
426
+ "ad",
427
+ "al",
428
+ "allo",
429
+ "ai",
430
+ "agli",
431
+ "all",
432
+ "agl",
433
+ "alla",
434
+ "alle",
435
+ "con",
436
+ "col",
437
+ "coi",
438
+ "da",
439
+ "dal",
440
+ "dallo",
441
+ "dai",
442
+ "dagli",
443
+ "dall",
444
+ "dagl",
445
+ "dalla",
446
+ "dalle",
447
+ "di",
448
+ "del",
449
+ "dello",
450
+ "dei",
451
+ "degli",
452
+ "dell",
453
+ "degl",
454
+ "della",
455
+ "delle",
456
+ "in",
457
+ "nel",
458
+ "nello",
459
+ "nei",
460
+ "negli",
461
+ "nell",
462
+ "negl",
463
+ "nella",
464
+ "nelle",
465
+ "su",
466
+ "sul",
467
+ "sullo",
468
+ "sui",
469
+ "sugli",
470
+ "sull",
471
+ "sugl",
472
+ "sulla",
473
+ "sulle",
474
+ "per",
475
+ "tra",
476
+ "contro",
477
+ "io",
478
+ "tu",
479
+ "lui",
480
+ "lei",
481
+ "noi",
482
+ "voi",
483
+ "loro",
484
+ "mio",
485
+ "mia",
486
+ "miei",
487
+ "mie",
488
+ "tuo",
489
+ "tua",
490
+ "tuoi",
491
+ "tue",
492
+ "suo",
493
+ "sua",
494
+ "suoi",
495
+ "sue",
496
+ "nostro",
497
+ "nostra",
498
+ "nostri",
499
+ "nostre",
500
+ "vostro",
501
+ "vostra",
502
+ "vostri",
503
+ "vostre",
504
+ "mi",
505
+ "ti",
506
+ "ci",
507
+ "vi",
508
+ "lo",
509
+ "la",
510
+ "li",
511
+ "le",
512
+ "gli",
513
+ "ne",
514
+ "il",
515
+ "un",
516
+ "uno",
517
+ "una",
518
+ "ma",
519
+ "ed",
520
+ "se",
521
+ "perch\xE9",
522
+ "anche",
523
+ "come",
524
+ "dov",
525
+ "dove",
526
+ "che",
527
+ "chi",
528
+ "cui",
529
+ "non",
530
+ "pi\xF9",
531
+ "quale",
532
+ "quanto",
533
+ "quanti",
534
+ "quanta",
535
+ "quante",
536
+ "quello",
537
+ "quelli",
538
+ "quella",
539
+ "quelle",
540
+ "questo",
541
+ "questi",
542
+ "questa",
543
+ "queste",
544
+ "si",
545
+ "tutto",
546
+ "tutti",
547
+ "a",
548
+ "c",
549
+ "e",
550
+ "i",
551
+ "l",
552
+ "o",
553
+ "ho",
554
+ "hai",
555
+ "ha",
556
+ "abbiamo",
557
+ "avete",
558
+ "hanno",
559
+ "abbia",
560
+ "abbiate",
561
+ "abbiano",
562
+ "avr\xF2",
563
+ "avrai",
564
+ "avr\xE0",
565
+ "avremo",
566
+ "avrete",
567
+ "avranno",
568
+ "avrei",
569
+ "avresti",
570
+ "avrebbe",
571
+ "avremmo",
572
+ "avreste",
573
+ "avrebbero",
574
+ "avevo",
575
+ "avevi",
576
+ "aveva",
577
+ "avevamo",
578
+ "avevate",
579
+ "avevano",
580
+ "ebbi",
581
+ "avesti",
582
+ "ebbe",
583
+ "avemmo",
584
+ "aveste",
585
+ "ebbero",
586
+ "avessi",
587
+ "avesse",
588
+ "avessimo",
589
+ "avessero",
590
+ "avendo",
591
+ "avuto",
592
+ "avuta",
593
+ "avuti",
594
+ "avute",
595
+ "sono",
596
+ "sei",
597
+ "\xE8",
598
+ "siamo",
599
+ "siete",
600
+ "sia",
601
+ "siate",
602
+ "siano",
603
+ "sar\xF2",
604
+ "sarai",
605
+ "sar\xE0",
606
+ "saremo",
607
+ "sarete",
608
+ "saranno",
609
+ "sarei",
610
+ "saresti",
611
+ "sarebbe",
612
+ "saremmo",
613
+ "sareste",
614
+ "sarebbero",
615
+ "ero",
616
+ "eri",
617
+ "era",
618
+ "eravamo",
619
+ "eravate",
620
+ "erano",
621
+ "fui",
622
+ "fosti",
623
+ "fu",
624
+ "fummo",
625
+ "foste",
626
+ "furono",
627
+ "fossi",
628
+ "fosse",
629
+ "fossimo",
630
+ "fossero",
631
+ "essendo",
632
+ "faccio",
633
+ "fai",
634
+ "facciamo",
635
+ "fanno",
636
+ "faccia",
637
+ "facciate",
638
+ "facciano",
639
+ "far\xF2",
640
+ "farai",
641
+ "far\xE0",
642
+ "faremo",
643
+ "farete",
644
+ "faranno",
645
+ "farei",
646
+ "faresti",
647
+ "farebbe",
648
+ "faremmo",
649
+ "fareste",
650
+ "farebbero",
651
+ "facevo",
652
+ "facevi",
653
+ "faceva",
654
+ "facevamo",
655
+ "facevate",
656
+ "facevano",
657
+ "feci",
658
+ "facesti",
659
+ "fece",
660
+ "facemmo",
661
+ "faceste",
662
+ "fecero",
663
+ "facessi",
664
+ "facesse",
665
+ "facessimo",
666
+ "facessero",
667
+ "facendo",
668
+ "sto",
669
+ "stai",
670
+ "sta",
671
+ "stiamo",
672
+ "stanno",
673
+ "stia",
674
+ "stiate",
675
+ "stiano",
676
+ "star\xF2",
677
+ "starai",
678
+ "star\xE0",
679
+ "staremo",
680
+ "starete",
681
+ "staranno",
682
+ "starei",
683
+ "staresti",
684
+ "starebbe",
685
+ "staremmo",
686
+ "stareste",
687
+ "starebbero",
688
+ "stavo",
689
+ "stavi",
690
+ "stava",
691
+ "stavamo",
692
+ "stavate",
693
+ "stavano",
694
+ "stetti",
695
+ "stesti",
696
+ "stette",
697
+ "stemmo",
698
+ "steste",
699
+ "stettero",
700
+ "stessi",
701
+ "stesse",
702
+ "stessimo",
703
+ "stessero",
704
+ "stando"
705
+ ]);
706
+ var italian = {
707
+ name: "italian",
708
+ stemmer: stem,
709
+ stopWords,
710
+ tokenizer: { splitPattern: /[^a-z0-9\u00e0\u00e8\u00e9\u00ec\u00f2\u00f3\u00f9'-]+/gi }
711
+ };
712
+
713
+ export { italian };
@@ -0,0 +1,5 @@
1
+ import { L as LanguageModule } from '../language-ClUGLuoC.js';
2
+
3
+ declare const japanese: LanguageModule;
4
+
5
+ export { japanese };