@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,250 @@
1
+ // src/languages/chinese.ts
2
+ var stopWords = /* @__PURE__ */ new Set([
3
+ "\u7684",
4
+ "\u4E86",
5
+ "\u5728",
6
+ "\u662F",
7
+ "\u6211",
8
+ "\u6709",
9
+ "\u548C",
10
+ "\u5C31",
11
+ "\u4E0D",
12
+ "\u4EBA",
13
+ "\u90FD",
14
+ "\u4E00",
15
+ "\u4E00\u4E2A",
16
+ "\u4E0A",
17
+ "\u4E5F",
18
+ "\u5F88",
19
+ "\u5230",
20
+ "\u8BF4",
21
+ "\u8981",
22
+ "\u53BB",
23
+ "\u4F60",
24
+ "\u4F1A",
25
+ "\u7740",
26
+ "\u6CA1\u6709",
27
+ "\u770B",
28
+ "\u597D",
29
+ "\u81EA\u5DF1",
30
+ "\u8FD9",
31
+ "\u4ED6",
32
+ "\u5979",
33
+ "\u5B83",
34
+ "\u4EEC",
35
+ "\u6211\u4EEC",
36
+ "\u4F60\u4EEC",
37
+ "\u4ED6\u4EEC",
38
+ "\u5979\u4EEC",
39
+ "\u5B83\u4EEC",
40
+ "\u90A3",
41
+ "\u90A3\u4E2A",
42
+ "\u90A3\u4E9B",
43
+ "\u90A3\u4E48",
44
+ "\u90A3\u6837",
45
+ "\u90A3\u91CC",
46
+ "\u8FD9\u4E2A",
47
+ "\u8FD9\u4E9B",
48
+ "\u8FD9\u4E48",
49
+ "\u8FD9\u6837",
50
+ "\u8FD9\u91CC",
51
+ "\u54EA",
52
+ "\u54EA\u4E2A",
53
+ "\u54EA\u4E9B",
54
+ "\u54EA\u91CC",
55
+ "\u54EA\u513F",
56
+ "\u4EC0\u4E48",
57
+ "\u600E\u4E48",
58
+ "\u600E\u6837",
59
+ "\u8C01",
60
+ "\u591A\u5C11",
61
+ "\u51E0",
62
+ "\u4E3A\u4EC0\u4E48",
63
+ "\u56E0\u4E3A",
64
+ "\u6240\u4EE5",
65
+ "\u5982\u679C",
66
+ "\u867D\u7136",
67
+ "\u4F46\u662F",
68
+ "\u53EF\u662F",
69
+ "\u800C\u4E14",
70
+ "\u6216\u8005",
71
+ "\u8FD8\u662F",
72
+ "\u4E0D\u4F46",
73
+ "\u4E0D\u4EC5",
74
+ "\u4E0D\u8FC7",
75
+ "\u4E0D\u7BA1",
76
+ "\u4E0D\u8BBA",
77
+ "\u65E0\u8BBA",
78
+ "\u4E0E",
79
+ "\u53CA",
80
+ "\u4EE5\u53CA",
81
+ "\u800C",
82
+ "\u5E76",
83
+ "\u5E76\u4E14",
84
+ "\u6216",
85
+ "\u4F46",
86
+ "\u5374",
87
+ "\u7136\u800C",
88
+ "\u4E8E\u662F",
89
+ "\u56E0\u6B64",
90
+ "\u6240",
91
+ "\u88AB",
92
+ "\u628A",
93
+ "\u7ED9",
94
+ "\u8BA9",
95
+ "\u5411",
96
+ "\u5BF9",
97
+ "\u5BF9\u4E8E",
98
+ "\u5173\u4E8E",
99
+ "\u4ECE",
100
+ "\u7531",
101
+ "\u7531\u4E8E",
102
+ "\u4EE5",
103
+ "\u4EE5\u4E3A",
104
+ "\u4EE5\u4FBF",
105
+ "\u4EE5\u514D",
106
+ "\u4EE5\u6765",
107
+ "\u4EE5\u4E0A",
108
+ "\u4EE5\u4E0B",
109
+ "\u4E4B",
110
+ "\u4E4B\u4E00",
111
+ "\u4E4B\u540E",
112
+ "\u4E4B\u524D",
113
+ "\u4E4B\u95F4",
114
+ "\u4E4B\u4E2D",
115
+ "\u4E4B\u7C7B",
116
+ "\u4E3A",
117
+ "\u4E3A\u4E86",
118
+ "\u4E3A\u4F55",
119
+ "\u4E3A\u6B62",
120
+ "\u4E3A\u6B64",
121
+ "\u4E3A\u7740",
122
+ "\u5417",
123
+ "\u5427",
124
+ "\u5462",
125
+ "\u554A",
126
+ "\u5440",
127
+ "\u54E6",
128
+ "\u55EF",
129
+ "\u54C8",
130
+ "\u5566",
131
+ "\u561B",
132
+ "\u5457",
133
+ "\u7F62\u4E86",
134
+ "\u800C\u5DF2",
135
+ "\u8FC7",
136
+ "\u5730",
137
+ "\u5F97",
138
+ "\u4E2A",
139
+ "\u4E9B",
140
+ "\u91CC",
141
+ "\u4E2D",
142
+ "\u4E0B",
143
+ "\u524D",
144
+ "\u540E",
145
+ "\u5185",
146
+ "\u5916",
147
+ "\u95F4",
148
+ "\u6765",
149
+ "\u51FA",
150
+ "\u56DE",
151
+ "\u8D77",
152
+ "\u5F53",
153
+ "\u624D",
154
+ "\u53C8",
155
+ "\u8FD8",
156
+ "\u518D",
157
+ "\u66F4",
158
+ "\u6700",
159
+ "\u5DF2",
160
+ "\u5DF2\u7ECF",
161
+ "\u66FE",
162
+ "\u66FE\u7ECF",
163
+ "\u6B63\u5728",
164
+ "\u5C06",
165
+ "\u5C06\u8981",
166
+ "\u80FD",
167
+ "\u80FD\u591F",
168
+ "\u53EF\u4EE5",
169
+ "\u53EF\u80FD",
170
+ "\u5E94\u8BE5",
171
+ "\u5FC5\u987B",
172
+ "\u9700\u8981",
173
+ "\u60F3",
174
+ "\u613F\u610F",
175
+ "\u6562",
176
+ "\u8BE5",
177
+ "\u6CA1",
178
+ "\u522B",
179
+ "\u4E0D\u8981",
180
+ "\u975E",
181
+ "\u83AB",
182
+ "\u592A",
183
+ "\u6781",
184
+ "\u771F",
185
+ "\u633A",
186
+ "\u591A",
187
+ "\u5C11",
188
+ "\u5927",
189
+ "\u5C0F",
190
+ "\u574F",
191
+ "\u505A",
192
+ "\u7528",
193
+ "\u7B49",
194
+ "\u7B49\u7B49",
195
+ "\u5982",
196
+ "\u5982\u4F55",
197
+ "\u5982\u540C",
198
+ "\u5982\u6B64",
199
+ "\u82E5",
200
+ "\u82E5\u662F",
201
+ "\u53EA",
202
+ "\u53EA\u662F",
203
+ "\u53EA\u6709",
204
+ "\u53EA\u8981",
205
+ "\u9664",
206
+ "\u9664\u4E86",
207
+ "\u9664\u975E",
208
+ "\u5C3D\u7BA1",
209
+ "\u5373\u4F7F",
210
+ "\u5373\u4FBF",
211
+ "\u5047\u5982",
212
+ "\u5047\u82E5",
213
+ "\u5047\u4F7F",
214
+ "\u65E2\u7136",
215
+ "\u65E2",
216
+ "\u6309",
217
+ "\u6309\u7167",
218
+ "\u6839\u636E",
219
+ "\u636E",
220
+ "\u901A\u8FC7",
221
+ "\u7ECF\u8FC7",
222
+ "\u968F",
223
+ "\u968F\u7740",
224
+ "\u6CBF",
225
+ "\u6CBF\u7740",
226
+ "\u671D",
227
+ "\u671D\u7740",
228
+ "\u81F3",
229
+ "\u81F3\u4E8E",
230
+ "\u76F4\u5230",
231
+ "\u8D81",
232
+ "\u6BD4",
233
+ "\u540C",
234
+ "\u8DDF",
235
+ "\u66FF",
236
+ "\u8FDE",
237
+ "\u8FDE\u540C"
238
+ ]);
239
+ var chinese = {
240
+ name: "chinese",
241
+ stemmer: null,
242
+ stopWords,
243
+ tokenizer: {
244
+ splitPattern: /[^\u4e00-\u9fff\u3400-\u4dbf\uf900-\ufaff0-9a-zA-Z]+/gi,
245
+ normalizeDiacritics: false,
246
+ minTokenLength: 1
247
+ }
248
+ };
249
+
250
+ export { chinese };
@@ -0,0 +1,5 @@
1
+ import { L as LanguageModule } from '../language-ClUGLuoC.js';
2
+
3
+ declare const dagbani: LanguageModule;
4
+
5
+ export { dagbani };
@@ -0,0 +1,85 @@
1
+ // src/languages/dagbani.ts
2
+ var stopWords = /* @__PURE__ */ new Set([
3
+ "n",
4
+ "a",
5
+ "o",
6
+ "di",
7
+ "ti",
8
+ "yi",
9
+ "b\u025B",
10
+ "\u014Ba",
11
+ "ma",
12
+ "li",
13
+ "ba",
14
+ "ya",
15
+ "mani",
16
+ "nyini",
17
+ "\u014Buni",
18
+ "\u014Buna",
19
+ "dini",
20
+ "dina",
21
+ "tinima",
22
+ "yinima",
23
+ "b\u025Bna",
24
+ "bana",
25
+ "\u014Bana",
26
+ "\u014B\u028An",
27
+ "ni",
28
+ "la",
29
+ "ka",
30
+ "d\u0259",
31
+ "sa",
32
+ "daa",
33
+ "na",
34
+ "siri",
35
+ "yaa",
36
+ "dii",
37
+ "b\u0259",
38
+ "n\u0259",
39
+ "ku",
40
+ "de",
41
+ "lah",
42
+ "bi",
43
+ "pa",
44
+ "bee",
45
+ "amaa",
46
+ "taba",
47
+ "ma\u014Ba",
48
+ "bo",
49
+ "maa",
50
+ "din",
51
+ "sheli",
52
+ "pam",
53
+ "nye",
54
+ "nyela",
55
+ "nima",
56
+ "bahi",
57
+ "yeli",
58
+ "sani",
59
+ "nyin",
60
+ "so",
61
+ "shin",
62
+ "gba",
63
+ "nti",
64
+ "\u014Bun",
65
+ "tooi",
66
+ "pahi",
67
+ "lana",
68
+ "mini",
69
+ "puni",
70
+ "zaa",
71
+ "kam",
72
+ "ban"
73
+ ]);
74
+ var dagbani = {
75
+ name: "dagbani",
76
+ stemmer: null,
77
+ stopWords,
78
+ tokenizer: {
79
+ splitPattern: /[^a-zA-ZɛɔƐƆŋŊɣƔʒƷʊƱəƏ0-9]+/gi,
80
+ normalizeDiacritics: false,
81
+ minTokenLength: 1
82
+ }
83
+ };
84
+
85
+ export { dagbani };
@@ -0,0 +1,5 @@
1
+ import { L as LanguageModule } from '../language-ClUGLuoC.js';
2
+
3
+ declare const danish: LanguageModule;
4
+
5
+ export { danish };
@@ -0,0 +1,224 @@
1
+ // src/languages/danish.ts
2
+ var VOWELS = "aeiouy\xE5\xE6\xF8";
3
+ var S_ENDINGS = "abcdfghjklmnoprtvyz\xE5";
4
+ var STEP1_SUFFIXES = [
5
+ "erendes",
6
+ "hedens",
7
+ "erende",
8
+ "erens",
9
+ "endes",
10
+ "ernes",
11
+ "enes",
12
+ "eres",
13
+ "erets",
14
+ "heder",
15
+ "ethed",
16
+ "erede",
17
+ "heden",
18
+ "ered",
19
+ "erer",
20
+ "ende",
21
+ "erne",
22
+ "ene",
23
+ "ere",
24
+ "eren",
25
+ "heds",
26
+ "eret",
27
+ "ens",
28
+ "ers",
29
+ "ets",
30
+ "hed",
31
+ "en",
32
+ "er",
33
+ "es",
34
+ "et",
35
+ "e"
36
+ ];
37
+ var UNDOUBLE_PAIRS = ["gd", "dt", "gt", "kt"];
38
+ var STEP3_SUFFIXES = [
39
+ { text: "elig", replacement: null },
40
+ { text: "l\xF8st", replacement: "l\xF8s" },
41
+ { text: "lig", replacement: null },
42
+ { text: "els", replacement: null },
43
+ { text: "ig", replacement: null }
44
+ ];
45
+ function isVowel(ch) {
46
+ return VOWELS.includes(ch);
47
+ }
48
+ function isConsonant(ch) {
49
+ return ch.length === 1 && !isVowel(ch);
50
+ }
51
+ function computeR1(word) {
52
+ let foundVowel = false;
53
+ for (let i = 0; i < word.length; i++) {
54
+ if (foundVowel && !isVowel(word[i])) {
55
+ return Math.max(i + 1, 3);
56
+ }
57
+ if (isVowel(word[i])) {
58
+ foundVowel = true;
59
+ }
60
+ }
61
+ return word.length;
62
+ }
63
+ function step1(word, r1) {
64
+ for (const suffix of STEP1_SUFFIXES) {
65
+ if (word.endsWith(suffix) && word.length - suffix.length >= r1) {
66
+ return word.slice(0, -suffix.length);
67
+ }
68
+ }
69
+ if (word.endsWith("s") && word.length - 1 >= r1) {
70
+ const preceding = word[word.length - 2];
71
+ if (preceding && S_ENDINGS.includes(preceding)) {
72
+ return word.slice(0, -1);
73
+ }
74
+ }
75
+ return word;
76
+ }
77
+ function undouble(word, r1) {
78
+ if (word.length < r1) return word;
79
+ for (const pair of UNDOUBLE_PAIRS) {
80
+ if (word.endsWith(pair)) {
81
+ return word.slice(0, -1);
82
+ }
83
+ }
84
+ return word;
85
+ }
86
+ function step3(word, r1) {
87
+ if (word.endsWith("igst")) {
88
+ word = word.slice(0, -2);
89
+ }
90
+ for (const { text, replacement } of STEP3_SUFFIXES) {
91
+ if (word.endsWith(text) && word.length - text.length >= r1) {
92
+ if (replacement !== null) {
93
+ return word.slice(0, -text.length) + replacement;
94
+ }
95
+ word = word.slice(0, -text.length);
96
+ word = undouble(word, r1);
97
+ return word;
98
+ }
99
+ }
100
+ return word;
101
+ }
102
+ function step4(word, r1) {
103
+ if (word.length < 2 || word.length <= r1) return word;
104
+ const last = word[word.length - 1];
105
+ const secondLast = word[word.length - 2];
106
+ if (isConsonant(last) && last === secondLast) {
107
+ return word.slice(0, -1);
108
+ }
109
+ return word;
110
+ }
111
+ function stem(word) {
112
+ if (word.length < 3) return word;
113
+ word = word.toLowerCase();
114
+ const r1 = computeR1(word);
115
+ word = step1(word, r1);
116
+ word = undouble(word, r1);
117
+ word = step3(word, r1);
118
+ word = step4(word, r1);
119
+ return word;
120
+ }
121
+ var stopWords = /* @__PURE__ */ new Set([
122
+ "og",
123
+ "i",
124
+ "jeg",
125
+ "det",
126
+ "at",
127
+ "en",
128
+ "den",
129
+ "til",
130
+ "er",
131
+ "som",
132
+ "p\xE5",
133
+ "de",
134
+ "med",
135
+ "han",
136
+ "af",
137
+ "for",
138
+ "ikke",
139
+ "der",
140
+ "var",
141
+ "mig",
142
+ "sig",
143
+ "men",
144
+ "et",
145
+ "har",
146
+ "om",
147
+ "vi",
148
+ "min",
149
+ "havde",
150
+ "ham",
151
+ "hun",
152
+ "nu",
153
+ "over",
154
+ "da",
155
+ "fra",
156
+ "du",
157
+ "ud",
158
+ "sin",
159
+ "dem",
160
+ "os",
161
+ "op",
162
+ "man",
163
+ "hans",
164
+ "hvor",
165
+ "eller",
166
+ "hvad",
167
+ "skal",
168
+ "selv",
169
+ "her",
170
+ "alle",
171
+ "vil",
172
+ "blev",
173
+ "kunne",
174
+ "ind",
175
+ "n\xE5r",
176
+ "v\xE6re",
177
+ "dog",
178
+ "noget",
179
+ "ville",
180
+ "jo",
181
+ "deres",
182
+ "efter",
183
+ "ned",
184
+ "skulle",
185
+ "denne",
186
+ "end",
187
+ "dette",
188
+ "mit",
189
+ "ogs\xE5",
190
+ "under",
191
+ "have",
192
+ "dig",
193
+ "anden",
194
+ "hende",
195
+ "mine",
196
+ "alt",
197
+ "meget",
198
+ "sit",
199
+ "sine",
200
+ "vor",
201
+ "mod",
202
+ "disse",
203
+ "hvis",
204
+ "din",
205
+ "nogle",
206
+ "hos",
207
+ "blive",
208
+ "mange",
209
+ "ad",
210
+ "bliver",
211
+ "hendes",
212
+ "v\xE6ret",
213
+ "thi",
214
+ "jer",
215
+ "s\xE5dan"
216
+ ]);
217
+ var danish = {
218
+ name: "danish",
219
+ stemmer: stem,
220
+ stopWords,
221
+ tokenizer: { splitPattern: /[^a-z0-9æøå]+/gi }
222
+ };
223
+
224
+ export { danish };
@@ -0,0 +1,5 @@
1
+ import { L as LanguageModule } from '../language-ClUGLuoC.js';
2
+
3
+ declare const dutch: LanguageModule;
4
+
5
+ export { dutch };