@delali/narsil 0.1.15 → 0.2.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 (251) hide show
  1. package/NOTICE +54 -0
  2. package/README.md +38 -982
  3. package/dist/adapters/filesystem.mjs +1 -1
  4. package/dist/adapters/indexeddb.mjs +1 -1
  5. package/dist/{chunk-WISGW24C.mjs → chunk-AUMKFYTG.mjs} +1 -1
  6. package/dist/{chunk-HRABJLPB.mjs → chunk-BKAI2WXI.mjs} +1 -0
  7. package/dist/chunk-GHJWC2E5.mjs +9 -0
  8. package/dist/chunk-KH3YGMVT.mjs +15 -0
  9. package/dist/{chunk-ALB35PRQ.mjs → chunk-M2EDG55Y.mjs} +8 -0
  10. package/dist/{chunk-HMO6OMZ3.mjs → chunk-S6IAXOBA.mjs} +1073 -506
  11. package/dist/chunk-TGP5M5R7.mjs +880 -0
  12. package/dist/chunk-U2BKYEC7.mjs +254 -0
  13. package/dist/{chunk-MEW7HD75.mjs → chunk-XAKNSWIK.mjs} +2543 -1154
  14. package/dist/{config-CojEPOgS.d.ts → config-P27AtSn4.d.ts} +28 -7
  15. package/dist/direct-executor-2FV3MEDD.mjs +5 -0
  16. package/dist/distribution/coordinator/etcd.d.ts +2 -2
  17. package/dist/distribution/coordinator/etcd.mjs +2 -2
  18. package/dist/distribution/coordinator/in-memory.d.ts +2 -2
  19. package/dist/distribution.d.ts +10 -4
  20. package/dist/distribution.mjs +1875 -1772
  21. package/dist/embeddings/openai.mjs +1 -1
  22. package/dist/index.browser.mjs +4566 -1783
  23. package/dist/index.d.ts +14 -5
  24. package/dist/index.mjs +6 -5
  25. package/dist/{language-ONQ3iVDf.d.ts → language-CmJBHf1j.d.ts} +4 -1
  26. package/dist/languages/albanian.d.ts +5 -0
  27. package/dist/languages/albanian.mjs +103 -0
  28. package/dist/languages/amharic.d.ts +5 -0
  29. package/dist/languages/amharic.mjs +240 -0
  30. package/dist/languages/arabic.d.ts +1 -1
  31. package/dist/languages/arabic.mjs +939 -154
  32. package/dist/languages/armenian.d.ts +1 -1
  33. package/dist/languages/armenian.mjs +275 -243
  34. package/dist/languages/azerbaijani.d.ts +5 -0
  35. package/dist/languages/azerbaijani.mjs +152 -0
  36. package/dist/languages/bambara.d.ts +5 -0
  37. package/dist/languages/bambara.mjs +60 -0
  38. package/dist/languages/basque.d.ts +5 -0
  39. package/dist/languages/basque.mjs +726 -0
  40. package/dist/languages/belarusian.d.ts +5 -0
  41. package/dist/languages/belarusian.mjs +100 -0
  42. package/dist/languages/bengali.d.ts +5 -0
  43. package/dist/languages/bengali.mjs +128 -0
  44. package/dist/languages/bosnian.d.ts +5 -0
  45. package/dist/languages/bosnian.mjs +197 -0
  46. package/dist/languages/breton.d.ts +5 -0
  47. package/dist/languages/breton.mjs +96 -0
  48. package/dist/languages/bulgarian.d.ts +1 -1
  49. package/dist/languages/bulgarian.mjs +11 -2
  50. package/dist/languages/burmese.d.ts +5 -0
  51. package/dist/languages/burmese.mjs +57 -0
  52. package/dist/languages/catalan.d.ts +5 -0
  53. package/dist/languages/catalan.mjs +987 -0
  54. package/dist/languages/chinese.d.ts +1 -1
  55. package/dist/languages/chinese.mjs +4 -3
  56. package/dist/languages/croatian.d.ts +5 -0
  57. package/dist/languages/croatian.mjs +191 -0
  58. package/dist/languages/czech.d.ts +5 -0
  59. package/dist/languages/czech.mjs +628 -0
  60. package/dist/languages/dagbani.d.ts +1 -1
  61. package/dist/languages/dagbani.mjs +11 -2
  62. package/dist/languages/danish.d.ts +1 -1
  63. package/dist/languages/danish.mjs +215 -110
  64. package/dist/languages/dutch.d.ts +1 -1
  65. package/dist/languages/dutch.mjs +1248 -163
  66. package/dist/languages/english.d.ts +1 -1
  67. package/dist/languages/english.mjs +2 -1
  68. package/dist/languages/esperanto.d.ts +5 -0
  69. package/dist/languages/esperanto.mjs +689 -0
  70. package/dist/languages/estonian.d.ts +5 -0
  71. package/dist/languages/estonian.mjs +2160 -0
  72. package/dist/languages/ewe.d.ts +1 -1
  73. package/dist/languages/ewe.mjs +11 -2
  74. package/dist/languages/faroese.d.ts +5 -0
  75. package/dist/languages/faroese.mjs +93 -0
  76. package/dist/languages/fijian.d.ts +5 -0
  77. package/dist/languages/fijian.mjs +55 -0
  78. package/dist/languages/finnish.d.ts +1 -1
  79. package/dist/languages/finnish.mjs +528 -263
  80. package/dist/languages/french.d.ts +1 -1
  81. package/dist/languages/french.mjs +950 -437
  82. package/dist/languages/ga.d.ts +1 -1
  83. package/dist/languages/ga.mjs +2 -1
  84. package/dist/languages/galician.d.ts +5 -0
  85. package/dist/languages/galician.mjs +172 -0
  86. package/dist/languages/georgian.d.ts +5 -0
  87. package/dist/languages/georgian.mjs +91 -0
  88. package/dist/languages/german.d.ts +1 -1
  89. package/dist/languages/german.mjs +432 -162
  90. package/dist/languages/greek.d.ts +1 -1
  91. package/dist/languages/greek.mjs +1970 -281
  92. package/dist/languages/guarani.d.ts +5 -0
  93. package/dist/languages/guarani.mjs +132 -0
  94. package/dist/languages/gujarati.d.ts +5 -0
  95. package/dist/languages/gujarati.mjs +234 -0
  96. package/dist/languages/haitian-creole.d.ts +5 -0
  97. package/dist/languages/haitian-creole.mjs +106 -0
  98. package/dist/languages/hausa.d.ts +1 -1
  99. package/dist/languages/hausa.mjs +2 -1
  100. package/dist/languages/hawaiian.d.ts +5 -0
  101. package/dist/languages/hawaiian.mjs +69 -0
  102. package/dist/languages/hebrew.d.ts +5 -0
  103. package/dist/languages/hebrew.mjs +213 -0
  104. package/dist/languages/hindi.d.ts +1 -1
  105. package/dist/languages/hindi.mjs +175 -97
  106. package/dist/languages/hungarian.d.ts +1 -1
  107. package/dist/languages/hungarian.mjs +412 -326
  108. package/dist/languages/icelandic.d.ts +5 -0
  109. package/dist/languages/icelandic.mjs +161 -0
  110. package/dist/languages/igbo.d.ts +1 -1
  111. package/dist/languages/igbo.mjs +2 -1
  112. package/dist/languages/indonesian.d.ts +1 -1
  113. package/dist/languages/indonesian.mjs +329 -137
  114. package/dist/languages/irish.d.ts +1 -1
  115. package/dist/languages/irish.mjs +223 -139
  116. package/dist/languages/italian.d.ts +1 -1
  117. package/dist/languages/italian.mjs +703 -406
  118. package/dist/languages/japanese.d.ts +1 -1
  119. package/dist/languages/japanese.mjs +5 -108
  120. package/dist/languages/kannada.d.ts +5 -0
  121. package/dist/languages/kannada.mjs +94 -0
  122. package/dist/languages/kazakh.d.ts +5 -0
  123. package/dist/languages/kazakh.mjs +90 -0
  124. package/dist/languages/khmer.d.ts +5 -0
  125. package/dist/languages/khmer.mjs +181 -0
  126. package/dist/languages/kinyarwanda.d.ts +5 -0
  127. package/dist/languages/kinyarwanda.mjs +99 -0
  128. package/dist/languages/kirundi.d.ts +5 -0
  129. package/dist/languages/kirundi.mjs +92 -0
  130. package/dist/languages/korean.d.ts +5 -0
  131. package/dist/languages/korean.mjs +252 -0
  132. package/dist/languages/kurmanji.d.ts +5 -0
  133. package/dist/languages/kurmanji.mjs +50 -0
  134. package/dist/languages/kyrgyz.d.ts +5 -0
  135. package/dist/languages/kyrgyz.mjs +108 -0
  136. package/dist/languages/lao.d.ts +5 -0
  137. package/dist/languages/lao.mjs +63 -0
  138. package/dist/languages/latin.d.ts +5 -0
  139. package/dist/languages/latin.mjs +69 -0
  140. package/dist/languages/latvian.d.ts +5 -0
  141. package/dist/languages/latvian.mjs +173 -0
  142. package/dist/languages/lingala.d.ts +5 -0
  143. package/dist/languages/lingala.mjs +61 -0
  144. package/dist/languages/lithuanian.d.ts +5 -0
  145. package/dist/languages/lithuanian.mjs +571 -0
  146. package/dist/languages/luxembourgish.d.ts +5 -0
  147. package/dist/languages/luxembourgish.mjs +214 -0
  148. package/dist/languages/macedonian.d.ts +5 -0
  149. package/dist/languages/macedonian.mjs +808 -0
  150. package/dist/languages/malagasy.d.ts +5 -0
  151. package/dist/languages/malagasy.mjs +67 -0
  152. package/dist/languages/malay.d.ts +5 -0
  153. package/dist/languages/malay.mjs +482 -0
  154. package/dist/languages/malayalam.d.ts +5 -0
  155. package/dist/languages/malayalam.mjs +122 -0
  156. package/dist/languages/maltese.d.ts +5 -0
  157. package/dist/languages/maltese.mjs +139 -0
  158. package/dist/languages/maori.d.ts +5 -0
  159. package/dist/languages/maori.mjs +79 -0
  160. package/dist/languages/marathi.d.ts +5 -0
  161. package/dist/languages/marathi.mjs +111 -0
  162. package/dist/languages/nepali.d.ts +1 -1
  163. package/dist/languages/nepali.mjs +209 -99
  164. package/dist/languages/norwegian.d.ts +1 -1
  165. package/dist/languages/norwegian.mjs +218 -85
  166. package/dist/languages/oromo.d.ts +5 -0
  167. package/dist/languages/oromo.mjs +78 -0
  168. package/dist/languages/persian.d.ts +5 -0
  169. package/dist/languages/persian.mjs +710 -0
  170. package/dist/languages/polish.d.ts +5 -0
  171. package/dist/languages/polish.mjs +614 -0
  172. package/dist/languages/portuguese.d.ts +1 -1
  173. package/dist/languages/portuguese.mjs +613 -380
  174. package/dist/languages/punjabi.d.ts +5 -0
  175. package/dist/languages/punjabi.mjs +197 -0
  176. package/dist/languages/romanian.d.ts +1 -1
  177. package/dist/languages/romanian.mjs +561 -382
  178. package/dist/languages/russian.d.ts +1 -1
  179. package/dist/languages/russian.mjs +373 -244
  180. package/dist/languages/samoan.d.ts +5 -0
  181. package/dist/languages/samoan.mjs +63 -0
  182. package/dist/languages/sanskrit.d.ts +1 -1
  183. package/dist/languages/sanskrit.mjs +2 -2
  184. package/dist/languages/scottish-gaelic.d.ts +5 -0
  185. package/dist/languages/scottish-gaelic.mjs +370 -0
  186. package/dist/languages/serbian.d.ts +1 -1
  187. package/dist/languages/serbian.mjs +3635 -155
  188. package/dist/languages/shona.d.ts +5 -0
  189. package/dist/languages/shona.mjs +91 -0
  190. package/dist/languages/sinhala.d.ts +5 -0
  191. package/dist/languages/sinhala.mjs +182 -0
  192. package/dist/languages/slovak.d.ts +5 -0
  193. package/dist/languages/slovak.mjs +430 -0
  194. package/dist/languages/slovenian.d.ts +1 -1
  195. package/dist/languages/slovenian.mjs +11 -2
  196. package/dist/languages/sorani.d.ts +5 -0
  197. package/dist/languages/sorani.mjs +156 -0
  198. package/dist/languages/spanish.d.ts +1 -1
  199. package/dist/languages/spanish.mjs +676 -374
  200. package/dist/languages/swahili.d.ts +1 -1
  201. package/dist/languages/swahili.mjs +2 -1
  202. package/dist/languages/swedish.d.ts +1 -1
  203. package/dist/languages/swedish.mjs +237 -95
  204. package/dist/languages/tagalog.d.ts +5 -0
  205. package/dist/languages/tagalog.mjs +159 -0
  206. package/dist/languages/tamil.d.ts +1 -1
  207. package/dist/languages/tamil.mjs +836 -64
  208. package/dist/languages/tatar.d.ts +5 -0
  209. package/dist/languages/tatar.mjs +1017 -0
  210. package/dist/languages/telugu.d.ts +5 -0
  211. package/dist/languages/telugu.mjs +62 -0
  212. package/dist/languages/thai.d.ts +5 -0
  213. package/dist/languages/thai.mjs +65 -0
  214. package/dist/languages/tibetan.d.ts +5 -0
  215. package/dist/languages/tibetan.mjs +119 -0
  216. package/dist/languages/tigrinya.d.ts +5 -0
  217. package/dist/languages/tigrinya.mjs +194 -0
  218. package/dist/languages/tongan.d.ts +5 -0
  219. package/dist/languages/tongan.mjs +56 -0
  220. package/dist/languages/turkish.d.ts +1 -1
  221. package/dist/languages/turkish.mjs +1246 -393
  222. package/dist/languages/twi.d.ts +1 -1
  223. package/dist/languages/twi.mjs +13 -2
  224. package/dist/languages/ukrainian.d.ts +1 -1
  225. package/dist/languages/ukrainian.mjs +125 -47
  226. package/dist/languages/urdu.d.ts +5 -0
  227. package/dist/languages/urdu.mjs +528 -0
  228. package/dist/languages/vietnamese.d.ts +5 -0
  229. package/dist/languages/vietnamese.mjs +277 -0
  230. package/dist/languages/welsh.d.ts +5 -0
  231. package/dist/languages/welsh.mjs +446 -0
  232. package/dist/languages/wolof.d.ts +5 -0
  233. package/dist/languages/wolof.mjs +79 -0
  234. package/dist/languages/xhosa.d.ts +5 -0
  235. package/dist/languages/xhosa.mjs +95 -0
  236. package/dist/languages/yoruba.d.ts +1 -1
  237. package/dist/languages/yoruba.mjs +1 -0
  238. package/dist/languages/zulu.d.ts +1 -1
  239. package/dist/languages/zulu.mjs +2 -1
  240. package/dist/narsil-CMZRPDlQ.d.ts +159 -0
  241. package/dist/persistence/durability/checkpoint-worker.d.ts +13 -0
  242. package/dist/persistence/durability/checkpoint-worker.mjs +6 -5
  243. package/dist/{schema-DCgkO1j4.d.ts → schema-BnvLvjRp.d.ts} +5 -3
  244. package/dist/server.d.ts +4 -3
  245. package/dist/server.mjs +13 -2
  246. package/dist/{types-DHX6zGeD.d.ts → types-BRTcBgAp.d.ts} +1 -1
  247. package/dist/workers/entry.mjs +2 -2
  248. package/package.json +10 -3
  249. package/dist/chunk-TW6BXTOL.mjs +0 -338
  250. package/dist/direct-executor-E52FFGDE.mjs +0 -4
  251. package/dist/narsil-D-84Nvm4.d.ts +0 -72
@@ -1,95 +1,227 @@
1
- // src/languages/norwegian.ts
2
- var VOWELS = "aeiouy\xE5\xE6\xF8";
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 = "bcdfghjlmnoprtvyz";
14
- var STEP1_SUFFIXES = [
15
- "hetenes",
16
- "hetene",
17
- "hetens",
18
- "endes",
19
- "heten",
20
- "heter",
21
- "ande",
22
- "ende",
23
- "edes",
24
- "enes",
25
- "erte",
26
- "ane",
27
- "ene",
28
- "ens",
29
- "ers",
30
- "ets",
31
- "ede",
32
- "het",
33
- "en",
34
- "ar",
35
- "er",
36
- "et",
37
- "as",
38
- "es",
39
- "ert",
40
- "ast",
41
- "a",
42
- "e",
43
- "s"
1
+ import { BaseStemmer } from '../chunk-U2BKYEC7.mjs';
2
+
3
+ // src/languages/snowball/norwegian.ts
4
+ var a_0 = [
5
+ ["", 1],
6
+ ["ind", -1, 1],
7
+ ["kk", -1, 2],
8
+ ["nk", -1, 3],
9
+ ["amm", -1, 4],
10
+ ["omm", -1, 5],
11
+ ["kap", -1, 6],
12
+ ["skap", 1, 1],
13
+ ["pp", -1, 8],
14
+ ["lt", -1, 9],
15
+ ["ast", -1, 10],
16
+ ["\xF8st", -1, 11],
17
+ ["v", -1, 12],
18
+ ["hav", 1, 1],
19
+ ["giv", 1, 2]
20
+ ];
21
+ var a_1 = [
22
+ ["a", 1],
23
+ ["e", 1],
24
+ ["ede", 1, 1],
25
+ ["ande", 1, 2],
26
+ ["ende", 1, 3],
27
+ ["ane", 1, 4],
28
+ ["ene", 1, 5],
29
+ ["hetene", 1, 1],
30
+ ["erte", 4, 7],
31
+ ["en", 1],
32
+ ["heten", 1, 1],
33
+ ["ar", 1],
34
+ ["er", 1],
35
+ ["heter", 1, 1],
36
+ ["s", 3],
37
+ ["as", 1, 1],
38
+ ["es", 1, 2],
39
+ ["edes", 1, 1],
40
+ ["endes", 1, 2],
41
+ ["enes", 1, 3],
42
+ ["hetenes", 1, 1],
43
+ ["ens", 1, 7],
44
+ ["hetens", 1, 1],
45
+ ["ers", 2, 9],
46
+ ["ets", 1, 10],
47
+ ["et", 1],
48
+ ["het", 1, 1],
49
+ ["ert", 4],
50
+ ["ast", 1]
44
51
  ];
45
- function step1(word, r1) {
46
- for (const suffix of STEP1_SUFFIXES) {
47
- if (!word.endsWith(suffix)) continue;
48
- const boundary = word.length - suffix.length;
49
- if (boundary < r1) continue;
50
- if (suffix === "erte" || suffix === "ert") {
51
- return `${word.slice(0, boundary)}er`;
52
+ var a_2 = [
53
+ ["dt", -1],
54
+ ["vt", -1]
55
+ ];
56
+ var a_3 = [
57
+ ["leg", 1],
58
+ ["eleg", 1, 1],
59
+ ["ig", 1],
60
+ ["eig", 1, 1],
61
+ ["lig", 1, 2],
62
+ ["elig", 1, 1],
63
+ ["els", 1],
64
+ ["lov", 1],
65
+ ["elov", 1, 1],
66
+ ["slov", 1, 2],
67
+ ["hetslov", 1, 1]
68
+ ];
69
+ var g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 2, 142];
70
+ var g_s_ending = [119, 125, 148, 1];
71
+ var NorwegianStemmer = class extends BaseStemmer {
72
+ #stem() {
73
+ let a;
74
+ let I_p1;
75
+ I_p1 = this.limit;
76
+ const v_1 = this.c;
77
+ lab0: {
78
+ lab1: {
79
+ const v_2 = this.c;
80
+ lab2: {
81
+ while (true) {
82
+ lab4: {
83
+ if (!this.eq_s("'")) break lab4;
84
+ break;
85
+ }
86
+ if (this.c >= this.limit) break lab2;
87
+ this.c++;
88
+ }
89
+ break lab1;
90
+ }
91
+ this.c = v_2;
92
+ if (!this.go_out_grouping(g_v, 97, 248)) break lab0;
93
+ this.c++;
94
+ if (!this.go_in_grouping(g_v, 97, 248)) break lab0;
95
+ this.c++;
96
+ }
97
+ I_p1 = this.c;
52
98
  }
53
- if (suffix === "s") {
54
- if (boundary > 0) {
55
- const preceding = word[boundary - 1];
56
- if (S_ENDINGS.includes(preceding)) return word.slice(0, boundary);
57
- if (preceding === "k" && boundary > 1 && !isVowel(word[boundary - 2])) {
58
- return word.slice(0, boundary);
99
+ this.c = v_1;
100
+ const v_3 = this.c;
101
+ if (this.c + 3 > this.limit) return false;
102
+ this.c += 3;
103
+ lab5: {
104
+ if (
105
+ /**@type {boolean}*/
106
+ I_p1 >= this.c
107
+ ) break lab5;
108
+ I_p1 = this.c;
109
+ }
110
+ this.c = v_3;
111
+ this.limit_backward = this.c;
112
+ this.c = this.limit;
113
+ const v_4 = this.limit - this.c;
114
+ lab6: {
115
+ if (this.c < I_p1) break lab6;
116
+ const v_5 = this.limit_backward;
117
+ this.limit_backward = I_p1;
118
+ this.ket = this.c;
119
+ a = this.find_among_b(a_1);
120
+ if (a === 0) {
121
+ this.limit_backward = v_5;
122
+ break lab6;
123
+ }
124
+ this.bra = this.c;
125
+ this.limit_backward = v_5;
126
+ switch (a) {
127
+ case 1: {
128
+ this.slice_del();
129
+ break;
130
+ }
131
+ case 2: {
132
+ a = this.find_among_b(a_0);
133
+ switch (a) {
134
+ case 1: {
135
+ this.slice_del();
136
+ break;
137
+ }
138
+ }
139
+ break;
140
+ }
141
+ case 3: {
142
+ lab7: {
143
+ const v_6 = this.limit - this.c;
144
+ lab8: {
145
+ if (!this.in_grouping_b(g_s_ending, 98, 122)) break lab8;
146
+ break lab7;
147
+ }
148
+ this.c = this.limit - v_6;
149
+ lab9: {
150
+ if (!this.eq_s_b("r")) break lab9;
151
+ lab10: {
152
+ if (!this.eq_s_b("e")) break lab10;
153
+ break lab9;
154
+ }
155
+ break lab7;
156
+ }
157
+ this.c = this.limit - v_6;
158
+ if (!this.eq_s_b("k")) break lab6;
159
+ if (!this.out_grouping_b(g_v, 97, 248)) break lab6;
160
+ }
161
+ this.slice_del();
162
+ break;
163
+ }
164
+ case 4: {
165
+ this.slice_from("er");
166
+ break;
59
167
  }
60
168
  }
61
- continue;
62
169
  }
63
- return word.slice(0, boundary);
64
- }
65
- return word;
66
- }
67
- function step2(word, r1) {
68
- if (word.length < 2) return word;
69
- const last2 = word.slice(-2);
70
- if ((last2 === "dt" || last2 === "vt") && word.length - 2 >= r1) {
71
- return word.slice(0, -1);
72
- }
73
- return word;
74
- }
75
- var STEP3_SUFFIXES = ["hetslov", "elov", "slov", "elig", "eleg", "lig", "eig", "leg", "lov", "els", "ig"];
76
- function step3(word, r1) {
77
- for (const suffix of STEP3_SUFFIXES) {
78
- if (!word.endsWith(suffix)) continue;
79
- if (word.length - suffix.length >= r1) {
80
- return word.slice(0, word.length - suffix.length);
170
+ this.c = this.limit - v_4;
171
+ const v_7 = this.limit - this.c;
172
+ lab11: {
173
+ const v_8 = this.limit - this.c;
174
+ if (this.c < I_p1) break lab11;
175
+ const v_9 = this.limit_backward;
176
+ this.limit_backward = I_p1;
177
+ this.ket = this.c;
178
+ if (this.find_among_b(a_2) === 0) {
179
+ this.limit_backward = v_9;
180
+ break lab11;
181
+ }
182
+ this.bra = this.c;
183
+ this.limit_backward = v_9;
184
+ this.c = this.limit - v_8;
185
+ if (this.c <= this.limit_backward) break lab11;
186
+ this.c--;
187
+ this.bra = this.c;
188
+ this.slice_del();
81
189
  }
190
+ this.c = this.limit - v_7;
191
+ const v_10 = this.limit - this.c;
192
+ lab12: {
193
+ if (this.c < I_p1) break lab12;
194
+ const v_11 = this.limit_backward;
195
+ this.limit_backward = I_p1;
196
+ this.ket = this.c;
197
+ if (this.find_among_b(a_3) === 0) {
198
+ this.limit_backward = v_11;
199
+ break lab12;
200
+ }
201
+ this.bra = this.c;
202
+ this.limit_backward = v_11;
203
+ this.slice_del();
204
+ }
205
+ this.c = this.limit - v_10;
206
+ this.ket = this.c;
207
+ if (!this.eq_s_b("'")) return false;
208
+ this.bra = this.c;
209
+ this.slice_del();
210
+ this.c = this.limit_backward;
211
+ return true;
82
212
  }
83
- return word;
84
- }
85
- function stem(word) {
86
- if (word.length < 3) return word;
87
- const r1 = computeR1(word);
88
- word = step1(word, r1);
89
- word = step2(word, r1);
90
- word = step3(word, r1);
91
- return word;
213
+ stem(input) {
214
+ this.setCurrent(input);
215
+ this.#stem();
216
+ return this.getCurrent();
217
+ }
218
+ };
219
+ var shared = new NorwegianStemmer();
220
+ function stem(token) {
221
+ return shared.stem(token);
92
222
  }
223
+
224
+ // src/languages/norwegian.ts
93
225
  var stopWords = /* @__PURE__ */ new Set([
94
226
  "og",
95
227
  "i",
@@ -266,9 +398,10 @@ var stopWords = /* @__PURE__ */ new Set([
266
398
  ]);
267
399
  var norwegian = {
268
400
  name: "norwegian",
401
+ revision: "8e862aa3bcec10dd",
269
402
  stemmer: stem,
270
403
  stopWords,
271
- tokenizer: { splitPattern: /[^a-z0-9æøåäöü]+/gi }
404
+ tokenizer: { splitPattern: /[^a-z0-9æøåäöüéó]+/gi }
272
405
  };
273
406
 
274
407
  export { norwegian };
@@ -0,0 +1,5 @@
1
+ import { L as LanguageModule } from '../language-CmJBHf1j.js';
2
+
3
+ declare const oromo: LanguageModule;
4
+
5
+ export { oromo };
@@ -0,0 +1,78 @@
1
+ // src/languages/oromo.ts
2
+ var stopWords = /* @__PURE__ */ new Set([
3
+ "achi",
4
+ "akka",
5
+ "akkam",
6
+ "akkasumas",
7
+ "amma",
8
+ "ammas",
9
+ "ammo",
10
+ "ani",
11
+ "as",
12
+ "ati",
13
+ "booda",
14
+ "dha",
15
+ "dura",
16
+ "eenyu",
17
+ "eessa",
18
+ "erga",
19
+ "fi",
20
+ "garuu",
21
+ "gidduu",
22
+ "hin",
23
+ "illee",
24
+ "immoo",
25
+ "inni",
26
+ "irra",
27
+ "irratti",
28
+ "isa",
29
+ "isaa",
30
+ "isaan",
31
+ "isaanii",
32
+ "ishee",
33
+ "isheen",
34
+ "isin",
35
+ "jala",
36
+ "jira",
37
+ "jiran",
38
+ "jirti",
39
+ "jiru",
40
+ "kan",
41
+ "kana",
42
+ "kanaaf",
43
+ "kee",
44
+ "keenya",
45
+ "keessa",
46
+ "keessan",
47
+ "keessatti",
48
+ "koo",
49
+ "kun",
50
+ "maal",
51
+ "malee",
52
+ "miti",
53
+ "ni",
54
+ "nu",
55
+ "nuti",
56
+ "osoo",
57
+ "qofa",
58
+ "sana",
59
+ "sun",
60
+ "ta'an",
61
+ "ta'e",
62
+ "ture",
63
+ "waan",
64
+ "waliin",
65
+ "ykn",
66
+ "yoo",
67
+ "yookiin",
68
+ "yoom"
69
+ ]);
70
+ var oromo = {
71
+ name: "oromo",
72
+ revision: "1",
73
+ stemmer: null,
74
+ stopWords,
75
+ tokenizer: { splitPattern: /[^a-z0-9']+/gi }
76
+ };
77
+
78
+ export { oromo };
@@ -0,0 +1,5 @@
1
+ import { L as LanguageModule } from '../language-CmJBHf1j.js';
2
+
3
+ declare const persian: LanguageModule;
4
+
5
+ export { persian };