@delali/narsil 0.1.15 → 0.2.1-next.25

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 (267) hide show
  1. package/NOTICE +54 -0
  2. package/README.md +38 -982
  3. package/dist/adapters/filesystem.d.ts +23 -1
  4. package/dist/adapters/filesystem.mjs +1 -1
  5. package/dist/adapters/indexeddb.d.ts +25 -1
  6. package/dist/adapters/indexeddb.mjs +1 -1
  7. package/dist/adapters/memory.d.ts +14 -1
  8. package/dist/adapters-CVqI5NBt.d.ts +149 -0
  9. package/dist/{chunk-HMO6OMZ3.mjs → chunk-ASI6AOW2.mjs} +1073 -506
  10. package/dist/{chunk-HRABJLPB.mjs → chunk-BKAI2WXI.mjs} +1 -0
  11. package/dist/{chunk-WISGW24C.mjs → chunk-FKK76OR7.mjs} +56 -55
  12. package/dist/chunk-GHJWC2E5.mjs +9 -0
  13. package/dist/chunk-KH3YGMVT.mjs +15 -0
  14. package/dist/chunk-TGP5M5R7.mjs +880 -0
  15. package/dist/chunk-U2BKYEC7.mjs +254 -0
  16. package/dist/{chunk-ALB35PRQ.mjs → chunk-UNJZ7ZDB.mjs} +18 -0
  17. package/dist/{chunk-MEW7HD75.mjs → chunk-WLR5BFL3.mjs} +2557 -1166
  18. package/dist/config-CAjTHzkH.d.ts +256 -0
  19. package/dist/direct-executor-3W4QRA4E.mjs +5 -0
  20. package/dist/distribution/coordinator/etcd.d.ts +44 -3
  21. package/dist/distribution/coordinator/etcd.mjs +2 -2
  22. package/dist/distribution/coordinator/in-memory.d.ts +14 -3
  23. package/dist/distribution.d.ts +318 -45
  24. package/dist/distribution.mjs +1875 -1772
  25. package/dist/embeddings/openai.d.ts +28 -1
  26. package/dist/embeddings/openai.mjs +1 -1
  27. package/dist/engine-CCrlfLyq.d.ts +431 -0
  28. package/dist/index.browser.mjs +4571 -1776
  29. package/dist/index.d.ts +180 -6
  30. package/dist/index.mjs +6 -5
  31. package/dist/invalidation/broadcast-channel.d.ts +20 -1
  32. package/dist/invalidation/filesystem.d.ts +24 -1
  33. package/dist/invalidation/noop.d.ts +14 -1
  34. package/dist/language-DB8KG1z5.d.ts +53 -0
  35. package/dist/languages/albanian.d.ts +15 -0
  36. package/dist/languages/albanian.mjs +103 -0
  37. package/dist/languages/amharic.d.ts +15 -0
  38. package/dist/languages/amharic.mjs +240 -0
  39. package/dist/languages/arabic.d.ts +10 -1
  40. package/dist/languages/arabic.mjs +939 -154
  41. package/dist/languages/armenian.d.ts +10 -1
  42. package/dist/languages/armenian.mjs +275 -243
  43. package/dist/languages/azerbaijani.d.ts +15 -0
  44. package/dist/languages/azerbaijani.mjs +152 -0
  45. package/dist/languages/bambara.d.ts +15 -0
  46. package/dist/languages/bambara.mjs +60 -0
  47. package/dist/languages/basque.d.ts +14 -0
  48. package/dist/languages/basque.mjs +726 -0
  49. package/dist/languages/belarusian.d.ts +15 -0
  50. package/dist/languages/belarusian.mjs +100 -0
  51. package/dist/languages/bengali.d.ts +15 -0
  52. package/dist/languages/bengali.mjs +128 -0
  53. package/dist/languages/bosnian.d.ts +15 -0
  54. package/dist/languages/bosnian.mjs +197 -0
  55. package/dist/languages/breton.d.ts +15 -0
  56. package/dist/languages/breton.mjs +96 -0
  57. package/dist/languages/bulgarian.d.ts +10 -1
  58. package/dist/languages/bulgarian.mjs +11 -2
  59. package/dist/languages/burmese.d.ts +15 -0
  60. package/dist/languages/burmese.mjs +57 -0
  61. package/dist/languages/catalan.d.ts +14 -0
  62. package/dist/languages/catalan.mjs +987 -0
  63. package/dist/languages/chinese.d.ts +11 -1
  64. package/dist/languages/chinese.mjs +4 -3
  65. package/dist/languages/croatian.d.ts +15 -0
  66. package/dist/languages/croatian.mjs +191 -0
  67. package/dist/languages/czech.d.ts +14 -0
  68. package/dist/languages/czech.mjs +628 -0
  69. package/dist/languages/dagbani.d.ts +11 -1
  70. package/dist/languages/dagbani.mjs +11 -2
  71. package/dist/languages/danish.d.ts +10 -1
  72. package/dist/languages/danish.mjs +215 -110
  73. package/dist/languages/dutch.d.ts +10 -1
  74. package/dist/languages/dutch.mjs +1248 -163
  75. package/dist/languages/english.d.ts +10 -1
  76. package/dist/languages/english.mjs +2 -1
  77. package/dist/languages/esperanto.d.ts +14 -0
  78. package/dist/languages/esperanto.mjs +689 -0
  79. package/dist/languages/estonian.d.ts +14 -0
  80. package/dist/languages/estonian.mjs +2160 -0
  81. package/dist/languages/ewe.d.ts +11 -1
  82. package/dist/languages/ewe.mjs +11 -2
  83. package/dist/languages/faroese.d.ts +15 -0
  84. package/dist/languages/faroese.mjs +93 -0
  85. package/dist/languages/fijian.d.ts +15 -0
  86. package/dist/languages/fijian.mjs +55 -0
  87. package/dist/languages/finnish.d.ts +10 -1
  88. package/dist/languages/finnish.mjs +528 -263
  89. package/dist/languages/french.d.ts +10 -1
  90. package/dist/languages/french.mjs +950 -437
  91. package/dist/languages/ga.d.ts +11 -1
  92. package/dist/languages/ga.mjs +2 -1
  93. package/dist/languages/galician.d.ts +15 -0
  94. package/dist/languages/galician.mjs +172 -0
  95. package/dist/languages/georgian.d.ts +15 -0
  96. package/dist/languages/georgian.mjs +91 -0
  97. package/dist/languages/german.d.ts +10 -1
  98. package/dist/languages/german.mjs +432 -162
  99. package/dist/languages/greek.d.ts +10 -1
  100. package/dist/languages/greek.mjs +1970 -281
  101. package/dist/languages/guarani.d.ts +15 -0
  102. package/dist/languages/guarani.mjs +132 -0
  103. package/dist/languages/gujarati.d.ts +15 -0
  104. package/dist/languages/gujarati.mjs +234 -0
  105. package/dist/languages/haitian-creole.d.ts +15 -0
  106. package/dist/languages/haitian-creole.mjs +106 -0
  107. package/dist/languages/hausa.d.ts +11 -1
  108. package/dist/languages/hausa.mjs +2 -1
  109. package/dist/languages/hawaiian.d.ts +15 -0
  110. package/dist/languages/hawaiian.mjs +69 -0
  111. package/dist/languages/hebrew.d.ts +15 -0
  112. package/dist/languages/hebrew.mjs +213 -0
  113. package/dist/languages/hindi.d.ts +10 -1
  114. package/dist/languages/hindi.mjs +175 -97
  115. package/dist/languages/hungarian.d.ts +10 -1
  116. package/dist/languages/hungarian.mjs +412 -326
  117. package/dist/languages/icelandic.d.ts +15 -0
  118. package/dist/languages/icelandic.mjs +161 -0
  119. package/dist/languages/igbo.d.ts +11 -1
  120. package/dist/languages/igbo.mjs +2 -1
  121. package/dist/languages/indonesian.d.ts +10 -1
  122. package/dist/languages/indonesian.mjs +329 -137
  123. package/dist/languages/irish.d.ts +10 -1
  124. package/dist/languages/irish.mjs +223 -139
  125. package/dist/languages/italian.d.ts +10 -1
  126. package/dist/languages/italian.mjs +703 -406
  127. package/dist/languages/japanese.d.ts +11 -1
  128. package/dist/languages/japanese.mjs +5 -108
  129. package/dist/languages/kannada.d.ts +15 -0
  130. package/dist/languages/kannada.mjs +94 -0
  131. package/dist/languages/kazakh.d.ts +15 -0
  132. package/dist/languages/kazakh.mjs +90 -0
  133. package/dist/languages/khmer.d.ts +15 -0
  134. package/dist/languages/khmer.mjs +181 -0
  135. package/dist/languages/kinyarwanda.d.ts +15 -0
  136. package/dist/languages/kinyarwanda.mjs +99 -0
  137. package/dist/languages/kirundi.d.ts +15 -0
  138. package/dist/languages/kirundi.mjs +92 -0
  139. package/dist/languages/korean.d.ts +15 -0
  140. package/dist/languages/korean.mjs +252 -0
  141. package/dist/languages/kurmanji.d.ts +15 -0
  142. package/dist/languages/kurmanji.mjs +50 -0
  143. package/dist/languages/kyrgyz.d.ts +15 -0
  144. package/dist/languages/kyrgyz.mjs +108 -0
  145. package/dist/languages/lao.d.ts +15 -0
  146. package/dist/languages/lao.mjs +63 -0
  147. package/dist/languages/latin.d.ts +15 -0
  148. package/dist/languages/latin.mjs +69 -0
  149. package/dist/languages/latvian.d.ts +15 -0
  150. package/dist/languages/latvian.mjs +173 -0
  151. package/dist/languages/lingala.d.ts +15 -0
  152. package/dist/languages/lingala.mjs +61 -0
  153. package/dist/languages/lithuanian.d.ts +14 -0
  154. package/dist/languages/lithuanian.mjs +571 -0
  155. package/dist/languages/luxembourgish.d.ts +15 -0
  156. package/dist/languages/luxembourgish.mjs +214 -0
  157. package/dist/languages/macedonian.d.ts +15 -0
  158. package/dist/languages/macedonian.mjs +808 -0
  159. package/dist/languages/malagasy.d.ts +15 -0
  160. package/dist/languages/malagasy.mjs +67 -0
  161. package/dist/languages/malay.d.ts +15 -0
  162. package/dist/languages/malay.mjs +482 -0
  163. package/dist/languages/malayalam.d.ts +15 -0
  164. package/dist/languages/malayalam.mjs +122 -0
  165. package/dist/languages/maltese.d.ts +15 -0
  166. package/dist/languages/maltese.mjs +139 -0
  167. package/dist/languages/maori.d.ts +15 -0
  168. package/dist/languages/maori.mjs +79 -0
  169. package/dist/languages/marathi.d.ts +15 -0
  170. package/dist/languages/marathi.mjs +111 -0
  171. package/dist/languages/nepali.d.ts +10 -1
  172. package/dist/languages/nepali.mjs +209 -99
  173. package/dist/languages/norwegian.d.ts +10 -1
  174. package/dist/languages/norwegian.mjs +218 -85
  175. package/dist/languages/oromo.d.ts +15 -0
  176. package/dist/languages/oromo.mjs +78 -0
  177. package/dist/languages/persian.d.ts +14 -0
  178. package/dist/languages/persian.mjs +710 -0
  179. package/dist/languages/polish.d.ts +14 -0
  180. package/dist/languages/polish.mjs +614 -0
  181. package/dist/languages/portuguese.d.ts +10 -1
  182. package/dist/languages/portuguese.mjs +613 -380
  183. package/dist/languages/punjabi.d.ts +15 -0
  184. package/dist/languages/punjabi.mjs +197 -0
  185. package/dist/languages/romanian.d.ts +10 -1
  186. package/dist/languages/romanian.mjs +561 -382
  187. package/dist/languages/russian.d.ts +10 -1
  188. package/dist/languages/russian.mjs +373 -244
  189. package/dist/languages/samoan.d.ts +15 -0
  190. package/dist/languages/samoan.mjs +63 -0
  191. package/dist/languages/sanskrit.d.ts +10 -1
  192. package/dist/languages/sanskrit.mjs +2 -2
  193. package/dist/languages/scottish-gaelic.d.ts +15 -0
  194. package/dist/languages/scottish-gaelic.mjs +370 -0
  195. package/dist/languages/serbian.d.ts +10 -1
  196. package/dist/languages/serbian.mjs +3635 -155
  197. package/dist/languages/shona.d.ts +15 -0
  198. package/dist/languages/shona.mjs +91 -0
  199. package/dist/languages/sinhala.d.ts +15 -0
  200. package/dist/languages/sinhala.mjs +182 -0
  201. package/dist/languages/slovak.d.ts +15 -0
  202. package/dist/languages/slovak.mjs +430 -0
  203. package/dist/languages/slovenian.d.ts +10 -1
  204. package/dist/languages/slovenian.mjs +11 -2
  205. package/dist/languages/sorani.d.ts +15 -0
  206. package/dist/languages/sorani.mjs +156 -0
  207. package/dist/languages/spanish.d.ts +10 -1
  208. package/dist/languages/spanish.mjs +676 -374
  209. package/dist/languages/swahili.d.ts +10 -1
  210. package/dist/languages/swahili.mjs +2 -1
  211. package/dist/languages/swedish.d.ts +10 -1
  212. package/dist/languages/swedish.mjs +237 -95
  213. package/dist/languages/tagalog.d.ts +15 -0
  214. package/dist/languages/tagalog.mjs +159 -0
  215. package/dist/languages/tamil.d.ts +10 -1
  216. package/dist/languages/tamil.mjs +836 -64
  217. package/dist/languages/tatar.d.ts +15 -0
  218. package/dist/languages/tatar.mjs +1017 -0
  219. package/dist/languages/telugu.d.ts +15 -0
  220. package/dist/languages/telugu.mjs +62 -0
  221. package/dist/languages/thai.d.ts +15 -0
  222. package/dist/languages/thai.mjs +65 -0
  223. package/dist/languages/tibetan.d.ts +15 -0
  224. package/dist/languages/tibetan.mjs +119 -0
  225. package/dist/languages/tigrinya.d.ts +15 -0
  226. package/dist/languages/tigrinya.mjs +194 -0
  227. package/dist/languages/tongan.d.ts +15 -0
  228. package/dist/languages/tongan.mjs +56 -0
  229. package/dist/languages/turkish.d.ts +10 -1
  230. package/dist/languages/turkish.mjs +1246 -393
  231. package/dist/languages/twi.d.ts +11 -1
  232. package/dist/languages/twi.mjs +13 -2
  233. package/dist/languages/ukrainian.d.ts +10 -1
  234. package/dist/languages/ukrainian.mjs +125 -47
  235. package/dist/languages/urdu.d.ts +15 -0
  236. package/dist/languages/urdu.mjs +528 -0
  237. package/dist/languages/vietnamese.d.ts +15 -0
  238. package/dist/languages/vietnamese.mjs +277 -0
  239. package/dist/languages/welsh.d.ts +15 -0
  240. package/dist/languages/welsh.mjs +446 -0
  241. package/dist/languages/wolof.d.ts +15 -0
  242. package/dist/languages/wolof.mjs +79 -0
  243. package/dist/languages/xhosa.d.ts +15 -0
  244. package/dist/languages/xhosa.mjs +95 -0
  245. package/dist/languages/yoruba.d.ts +11 -1
  246. package/dist/languages/yoruba.mjs +1 -0
  247. package/dist/languages/zulu.d.ts +11 -1
  248. package/dist/languages/zulu.mjs +2 -1
  249. package/dist/persistence/durability/checkpoint-worker.d.ts +13 -0
  250. package/dist/persistence/durability/checkpoint-worker.mjs +6 -5
  251. package/dist/schema-CE6S_aAr.d.ts +208 -0
  252. package/dist/search-CgQQIciB.d.ts +786 -0
  253. package/dist/server.d.ts +214 -12
  254. package/dist/server.mjs +41 -2
  255. package/dist/types-BV3nAKTL.d.ts +302 -0
  256. package/dist/vector/hnsw-build-worker.d.ts +68 -2
  257. package/dist/vector/hnsw-build-worker.mjs +0 -2
  258. package/dist/workers/entry.mjs +2 -2
  259. package/package.json +14 -4
  260. package/dist/adapters-Bo2JQg8b.d.ts +0 -37
  261. package/dist/chunk-TW6BXTOL.mjs +0 -338
  262. package/dist/config-CojEPOgS.d.ts +0 -481
  263. package/dist/direct-executor-E52FFGDE.mjs +0 -4
  264. package/dist/language-ONQ3iVDf.d.ts +0 -14
  265. package/dist/narsil-D-84Nvm4.d.ts +0 -72
  266. package/dist/schema-DCgkO1j4.d.ts +0 -65
  267. package/dist/types-DHX6zGeD.d.ts +0 -73
@@ -1,5 +1,14 @@
1
- import { L as LanguageModule } from '../language-ONQ3iVDf.js';
1
+ import { L as LanguageModule } from '../language-DB8KG1z5.js';
2
2
 
3
+ /**
4
+ * Swahili analysis: the Snowball stemmer, the stop word list, and the rules
5
+ * that split Swahili text into tokens.
6
+ *
7
+ * Import it and pass it to {@link registerLanguage} before you create an index
8
+ * whose `language` is `swahili`.
9
+ *
10
+ * @public
11
+ */
3
12
  declare const swahili: LanguageModule;
4
13
 
5
14
  export { swahili };
@@ -204,9 +204,10 @@ var stopWords = /* @__PURE__ */ new Set([
204
204
  ]);
205
205
  var swahili = {
206
206
  name: "swahili",
207
+ revision: "1",
207
208
  stemmer: stem,
208
209
  stopWords,
209
- tokenizer: { splitPattern: /[^a-z0-9]+/gi }
210
+ tokenizer: { splitPattern: /[^a-z0-9']+/gi }
210
211
  };
211
212
 
212
213
  export { swahili };
@@ -1,5 +1,14 @@
1
- import { L as LanguageModule } from '../language-ONQ3iVDf.js';
1
+ import { L as LanguageModule } from '../language-DB8KG1z5.js';
2
2
 
3
+ /**
4
+ * Swedish analysis: the Snowball stemmer, the stop word list, and the rules
5
+ * that split Swedish text into tokens.
6
+ *
7
+ * Import it and pass it to {@link registerLanguage} before you create an index
8
+ * whose `language` is `swedish`.
9
+ *
10
+ * @public
11
+ */
3
12
  declare const swedish: LanguageModule;
4
13
 
5
14
  export { swedish };
@@ -1,103 +1,244 @@
1
- // src/languages/swedish.ts
2
- var VOWELS = "aeiouy\xE4\xE5\xF6";
3
- function isVowel(ch) {
4
- return VOWELS.includes(ch);
5
- }
6
- function computeR1(word) {
7
- let i = 0;
8
- while (i < word.length && !isVowel(word[i])) i++;
9
- while (i < word.length && isVowel(word[i])) i++;
10
- const r1 = i < word.length ? i + 1 : word.length;
11
- return Math.max(r1, 3);
12
- }
13
- var S_ENDINGS = "bcdfghjklmnoprtvy";
14
- var STEP1_SUFFIXES = [
15
- "heterna",
16
- "hetens",
17
- "arnas",
18
- "ernas",
19
- "ornas",
20
- "anden",
21
- "heten",
22
- "heter",
23
- "andes",
24
- "arens",
25
- "andet",
26
- "arna",
27
- "erna",
28
- "orna",
29
- "ande",
30
- "arne",
31
- "aste",
32
- "aren",
33
- "ades",
34
- "erns",
35
- "ade",
36
- "are",
37
- "ern",
38
- "ens",
39
- "het",
40
- "ast",
41
- "ad",
42
- "en",
43
- "ar",
44
- "er",
45
- "or",
46
- "as",
47
- "es",
48
- "at",
49
- "a",
50
- "e",
51
- "s"
1
+ import { BaseStemmer } from '../chunk-U2BKYEC7.mjs';
2
+
3
+ // src/languages/snowball/swedish.ts
4
+ var a_0 = [
5
+ ["fab", -1],
6
+ ["h", -1],
7
+ ["pak", -1],
8
+ ["rak", -1],
9
+ ["stak", -1],
10
+ ["kom", -1],
11
+ ["iet", -1],
12
+ ["cit", -1],
13
+ ["dit", -1],
14
+ ["alit", -1],
15
+ ["ilit", -1],
16
+ ["mit", -1],
17
+ ["nit", -1],
18
+ ["pit", -1],
19
+ ["rit", -1],
20
+ ["sit", -1],
21
+ ["tit", -1],
22
+ ["uit", -1],
23
+ ["ivit", -1],
24
+ ["kvit", -1],
25
+ ["xit", -1]
26
+ ];
27
+ var a_1 = [
28
+ ["a", 1],
29
+ ["arna", 1, 1],
30
+ ["erna", 1, 2],
31
+ ["heterna", 1, 1],
32
+ ["orna", 1, 4],
33
+ ["ad", 1],
34
+ ["e", 1],
35
+ ["ade", 1, 1],
36
+ ["ande", 1, 2],
37
+ ["arne", 1, 3],
38
+ ["are", 1, 4],
39
+ ["aste", 1, 5],
40
+ ["en", 1],
41
+ ["anden", 1, 1],
42
+ ["aren", 1, 2],
43
+ ["heten", 1, 3],
44
+ ["ern", 1],
45
+ ["ar", 1],
46
+ ["er", 1],
47
+ ["heter", 1, 1],
48
+ ["or", 1],
49
+ ["s", 2],
50
+ ["as", 1, 1],
51
+ ["arnas", 1, 1],
52
+ ["ernas", 1, 2],
53
+ ["ornas", 1, 3],
54
+ ["es", 1, 5],
55
+ ["ades", 1, 1],
56
+ ["andes", 1, 2],
57
+ ["ens", 1, 8],
58
+ ["arens", 1, 1],
59
+ ["hetens", 1, 2],
60
+ ["erns", 1, 11],
61
+ ["at", 1],
62
+ ["et", 3],
63
+ ["andet", 1, 1],
64
+ ["het", 1, 2],
65
+ ["ast", 1]
52
66
  ];
53
- function step1(word, r1) {
54
- for (const suffix of STEP1_SUFFIXES) {
55
- if (!word.endsWith(suffix)) continue;
56
- const boundary = word.length - suffix.length;
57
- if (boundary < r1) continue;
58
- if (suffix === "s") {
59
- if (boundary > 0 && S_ENDINGS.includes(word[boundary - 1])) {
60
- return word.slice(0, boundary);
67
+ var a_2 = [
68
+ ["dd", -1],
69
+ ["gd", -1],
70
+ ["nn", -1],
71
+ ["dt", -1],
72
+ ["gt", -1],
73
+ ["kt", -1],
74
+ ["tt", -1]
75
+ ];
76
+ var a_3 = [
77
+ ["ig", 1],
78
+ ["lig", 1, 1],
79
+ ["els", 1],
80
+ ["fullt", 3],
81
+ ["\xF6st", 2]
82
+ ];
83
+ var g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 32];
84
+ var g_s_ending = [119, 127, 149];
85
+ var g_ost_ending = [173, 58];
86
+ var SwedishStemmer = class extends BaseStemmer {
87
+ #r_et_condition() {
88
+ const v_1 = this.limit - this.c;
89
+ if (!this.out_grouping_b(g_v, 97, 246)) return false;
90
+ if (!this.in_grouping_b(g_v, 97, 246)) return false;
91
+ if (
92
+ /**@type {boolean}*/
93
+ this.c <= this.limit_backward
94
+ ) return false;
95
+ this.c = this.limit - v_1;
96
+ {
97
+ const v_2 = this.limit - this.c;
98
+ lab0: {
99
+ if (this.find_among_b(a_0) === 0) break lab0;
100
+ return false;
61
101
  }
62
- continue;
102
+ this.c = this.limit - v_2;
63
103
  }
64
- return word.slice(0, boundary);
104
+ return true;
65
105
  }
66
- return word;
67
- }
68
- var STEP2_ENDINGS = ["dd", "gd", "nn", "dt", "gt", "kt", "tt"];
69
- function step2(word, r1) {
70
- for (const ending of STEP2_ENDINGS) {
71
- if (!word.endsWith(ending)) continue;
72
- if (word.length - 2 < r1) continue;
73
- return word.slice(0, -1);
106
+ #stem() {
107
+ let a;
108
+ let I_x;
109
+ let I_p1;
110
+ const v_1 = this.c;
111
+ lab0: {
112
+ I_p1 = this.limit;
113
+ const v_2 = this.c;
114
+ if (this.c + 3 > this.limit) break lab0;
115
+ this.c += 3;
116
+ I_x = this.c;
117
+ this.c = v_2;
118
+ if (!this.go_out_grouping(g_v, 97, 246)) break lab0;
119
+ this.c++;
120
+ if (!this.go_in_grouping(g_v, 97, 246)) break lab0;
121
+ this.c++;
122
+ I_p1 = this.c;
123
+ lab1: {
124
+ if (
125
+ /**@type {boolean}*/
126
+ I_p1 >= I_x
127
+ ) break lab1;
128
+ I_p1 = I_x;
129
+ }
130
+ }
131
+ this.c = v_1;
132
+ this.limit_backward = this.c;
133
+ this.c = this.limit;
134
+ const v_3 = this.limit - this.c;
135
+ lab2: {
136
+ if (this.c < I_p1) break lab2;
137
+ const v_4 = this.limit_backward;
138
+ this.limit_backward = I_p1;
139
+ this.ket = this.c;
140
+ a = this.find_among_b(a_1);
141
+ if (a === 0) {
142
+ this.limit_backward = v_4;
143
+ break lab2;
144
+ }
145
+ this.bra = this.c;
146
+ this.limit_backward = v_4;
147
+ switch (a) {
148
+ case 1: {
149
+ this.slice_del();
150
+ break;
151
+ }
152
+ case 2: {
153
+ lab3: {
154
+ const v_5 = this.limit - this.c;
155
+ lab4: {
156
+ if (!this.eq_s_b("et")) break lab4;
157
+ if (!this.#r_et_condition()) break lab4;
158
+ this.bra = this.c;
159
+ break lab3;
160
+ }
161
+ this.c = this.limit - v_5;
162
+ if (!this.in_grouping_b(g_s_ending, 98, 121)) break lab2;
163
+ }
164
+ this.slice_del();
165
+ break;
166
+ }
167
+ case 3: {
168
+ if (!this.#r_et_condition()) break lab2;
169
+ this.slice_del();
170
+ break;
171
+ }
172
+ }
173
+ }
174
+ this.c = this.limit - v_3;
175
+ const v_6 = this.limit - this.c;
176
+ lab5: {
177
+ if (this.c < I_p1) break lab5;
178
+ const v_7 = this.limit_backward;
179
+ this.limit_backward = I_p1;
180
+ const v_8 = this.limit - this.c;
181
+ if (this.find_among_b(a_2) === 0) {
182
+ this.limit_backward = v_7;
183
+ break lab5;
184
+ }
185
+ this.c = this.limit - v_8;
186
+ this.ket = this.c;
187
+ if (this.c <= this.limit_backward) {
188
+ this.limit_backward = v_7;
189
+ break lab5;
190
+ }
191
+ this.c--;
192
+ this.bra = this.c;
193
+ this.slice_del();
194
+ this.limit_backward = v_7;
195
+ }
196
+ this.c = this.limit - v_6;
197
+ const v_9 = this.limit - this.c;
198
+ lab6: {
199
+ if (this.c < I_p1) break lab6;
200
+ const v_10 = this.limit_backward;
201
+ this.limit_backward = I_p1;
202
+ this.ket = this.c;
203
+ a = this.find_among_b(a_3);
204
+ if (a === 0) {
205
+ this.limit_backward = v_10;
206
+ break lab6;
207
+ }
208
+ this.bra = this.c;
209
+ this.limit_backward = v_10;
210
+ switch (a) {
211
+ case 1: {
212
+ this.slice_del();
213
+ break;
214
+ }
215
+ case 2: {
216
+ if (!this.in_grouping_b(g_ost_ending, 105, 118)) break lab6;
217
+ this.slice_from("\xF6s");
218
+ break;
219
+ }
220
+ case 3: {
221
+ this.slice_from("full");
222
+ break;
223
+ }
224
+ }
225
+ }
226
+ this.c = this.limit - v_9;
227
+ this.c = this.limit_backward;
228
+ return true;
74
229
  }
75
- return word;
76
- }
77
- var STEP3_SUFFIXES = [
78
- ["fullt", "full"],
79
- ["l\xF6st", "l\xF6s"],
80
- ["lig", null],
81
- ["els", null],
82
- ["ig", null]
83
- ];
84
- function step3(word, r1) {
85
- for (const [suffix, replacement] of STEP3_SUFFIXES) {
86
- if (!word.endsWith(suffix)) continue;
87
- const boundary = word.length - suffix.length;
88
- if (boundary < r1) continue;
89
- return replacement ? word.slice(0, boundary) + replacement : word.slice(0, boundary);
230
+ stem(input) {
231
+ this.setCurrent(input);
232
+ this.#stem();
233
+ return this.getCurrent();
90
234
  }
91
- return word;
92
- }
93
- function stem(word) {
94
- if (word.length < 3) return word;
95
- const r1 = computeR1(word);
96
- word = step1(word, r1);
97
- word = step2(word, r1);
98
- word = step3(word, r1);
99
- return word;
235
+ };
236
+ var shared = new SwedishStemmer();
237
+ function stem(token) {
238
+ return shared.stem(token);
100
239
  }
240
+
241
+ // src/languages/swedish.ts
101
242
  var stopWords = /* @__PURE__ */ new Set([
102
243
  "och",
103
244
  "det",
@@ -203,7 +344,7 @@ var stopWords = /* @__PURE__ */ new Set([
203
344
  "ditt",
204
345
  "vem",
205
346
  "vilket",
206
- "sitta",
347
+ "sitt",
207
348
  "s\xE5dana",
208
349
  "vart",
209
350
  "dina",
@@ -216,9 +357,10 @@ var stopWords = /* @__PURE__ */ new Set([
216
357
  ]);
217
358
  var swedish = {
218
359
  name: "swedish",
360
+ revision: "5ff576fe6e2b2a68",
219
361
  stemmer: stem,
220
362
  stopWords,
221
- tokenizer: { splitPattern: /[^a-z0-9åäöü-]+/gi }
363
+ tokenizer: { splitPattern: /[^a-z0-9åäöüé-]+/gi }
222
364
  };
223
365
 
224
366
  export { swedish };
@@ -0,0 +1,15 @@
1
+ import { L as LanguageModule } from '../language-DB8KG1z5.js';
2
+
3
+ /**
4
+ * Tagalog analysis: the stop word list and the rules that split Tagalog
5
+ * text into tokens. Tokens are indexed as the normaliser leaves them,
6
+ * without stemming.
7
+ *
8
+ * Import it and pass it to {@link registerLanguage} before you create an index
9
+ * whose `language` is `tagalog`.
10
+ *
11
+ * @public
12
+ */
13
+ declare const tagalog: LanguageModule;
14
+
15
+ export { tagalog };
@@ -0,0 +1,159 @@
1
+ // src/languages/tagalog.ts
2
+ var stopWords = /* @__PURE__ */ new Set([
3
+ "akin",
4
+ "aking",
5
+ "ako",
6
+ "alin",
7
+ "am",
8
+ "amin",
9
+ "aming",
10
+ "ang",
11
+ "ano",
12
+ "anumang",
13
+ "apat",
14
+ "at",
15
+ "atin",
16
+ "ating",
17
+ "ay",
18
+ "bababa",
19
+ "bago",
20
+ "bakit",
21
+ "bawat",
22
+ "bilang",
23
+ "dahil",
24
+ "dalawa",
25
+ "dapat",
26
+ "din",
27
+ "dito",
28
+ "doon",
29
+ "gagawin",
30
+ "gayunman",
31
+ "ginagawa",
32
+ "ginawa",
33
+ "ginawang",
34
+ "gumawa",
35
+ "gusto",
36
+ "habang",
37
+ "hanggang",
38
+ "hindi",
39
+ "huwag",
40
+ "iba",
41
+ "ibaba",
42
+ "ibabaw",
43
+ "ibig",
44
+ "ikaw",
45
+ "ilagay",
46
+ "ilalim",
47
+ "ilan",
48
+ "inyong",
49
+ "isa",
50
+ "isang",
51
+ "itaas",
52
+ "ito",
53
+ "iyo",
54
+ "iyon",
55
+ "iyong",
56
+ "ka",
57
+ "kahit",
58
+ "kailangan",
59
+ "kailanman",
60
+ "kami",
61
+ "kanila",
62
+ "kanilang",
63
+ "kanino",
64
+ "kanya",
65
+ "kanyang",
66
+ "kapag",
67
+ "kapwa",
68
+ "karamihan",
69
+ "katiyakan",
70
+ "katulad",
71
+ "kaya",
72
+ "kaysa",
73
+ "ko",
74
+ "kong",
75
+ "kulang",
76
+ "kumuha",
77
+ "kung",
78
+ "laban",
79
+ "lahat",
80
+ "lamang",
81
+ "likod",
82
+ "lima",
83
+ "maaari",
84
+ "maaaring",
85
+ "maging",
86
+ "mahusay",
87
+ "makita",
88
+ "marami",
89
+ "marapat",
90
+ "masyado",
91
+ "may",
92
+ "mayroon",
93
+ "mga",
94
+ "minsan",
95
+ "mismo",
96
+ "mula",
97
+ "muli",
98
+ "na",
99
+ "nabanggit",
100
+ "naging",
101
+ "nagkaroon",
102
+ "nais",
103
+ "nakita",
104
+ "namin",
105
+ "napaka",
106
+ "narito",
107
+ "nasaan",
108
+ "ng",
109
+ "ngayon",
110
+ "ni",
111
+ "nila",
112
+ "nilang",
113
+ "nito",
114
+ "niya",
115
+ "niyang",
116
+ "noon",
117
+ "o",
118
+ "pa",
119
+ "paano",
120
+ "pababa",
121
+ "paggawa",
122
+ "pagitan",
123
+ "pagkakaroon",
124
+ "pagkatapos",
125
+ "palabas",
126
+ "pamamagitan",
127
+ "panahon",
128
+ "pangalawa",
129
+ "para",
130
+ "paraan",
131
+ "pareho",
132
+ "pataas",
133
+ "pero",
134
+ "pumunta",
135
+ "pumupunta",
136
+ "sa",
137
+ "saan",
138
+ "sabi",
139
+ "sabihin",
140
+ "sarili",
141
+ "sila",
142
+ "sino",
143
+ "siya",
144
+ "tatlo",
145
+ "tayo",
146
+ "tulad",
147
+ "tungkol",
148
+ "una",
149
+ "walang"
150
+ ]);
151
+ var tagalog = {
152
+ name: "tagalog",
153
+ revision: "1",
154
+ stemmer: null,
155
+ stopWords,
156
+ tokenizer: { splitPattern: /[^a-z0-9]+/gi }
157
+ };
158
+
159
+ export { tagalog };
@@ -1,5 +1,14 @@
1
- import { L as LanguageModule } from '../language-ONQ3iVDf.js';
1
+ import { L as LanguageModule } from '../language-DB8KG1z5.js';
2
2
 
3
+ /**
4
+ * Tamil analysis: the Snowball stemmer, the stop word list, and the rules
5
+ * that split Tamil text into tokens.
6
+ *
7
+ * Import it and pass it to {@link registerLanguage} before you create an index
8
+ * whose `language` is `tamil`.
9
+ *
10
+ * @public
11
+ */
3
12
  declare const tamil: LanguageModule;
4
13
 
5
14
  export { tamil };