taraskevizer 6.0.6 → 6.0.8

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.
package/dist/index.cjs CHANGED
@@ -29,8 +29,25 @@ __export(src_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(src_exports);
31
31
 
32
- // src/dict/iwords.ts
32
+ // src/dict/lib.ts
33
+ var dictFrom = {
34
+ raw: (dict) => {
35
+ for (const item of dict)
36
+ item[0] = RegExp(
37
+ item[0],
38
+ item[0] instanceof RegExp ? item[0].flags + "g" : "g"
39
+ );
40
+ return dict;
41
+ },
42
+ nonGlobal: (dict) => {
43
+ for (const item of dict)
44
+ item[0] = RegExp(item[0], "g" + item[0].flags);
45
+ return dict;
46
+ }
47
+ };
33
48
  var toOneLine = (str) => str.replace(/\n/g, "|");
49
+
50
+ // src/dict/iwords.ts
34
51
  var iwords = toOneLine(`біс
35
52
  бсэн
36
53
  в[аеоы]
@@ -141,7 +158,7 @@ var common = {
141
158
  [/[łl]i([eoua])/, "l$1"],
142
159
  [/łi/, "li"]
143
160
  ]
144
- ],
161
+ ].map(dictFrom.nonGlobal),
145
162
  upper: [
146
163
  [
147
164
  [new RegExp(" Е(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "u"), " Je"],
@@ -198,15 +215,15 @@ var common = {
198
215
  [/Łi/, "Li"],
199
216
  [/ŁI/, "LI"]
200
217
  ]
201
- ]
218
+ ].map(dictFrom.nonGlobal)
202
219
  };
203
- var latinLetters = [
220
+ var latinLettersLowerCase = [
204
221
  ...common.lower[0],
205
- [/ʼі/, "ji"],
222
+ [/ʼі/g, "ji"],
206
223
  ...common.lower[1]
207
224
  ];
208
225
  var latinLettersUpperCase = common.upper.flat();
209
- var rawLatinLettersJi = [
226
+ var latinLettersLowerCaseJi = dictFrom.raw([
210
227
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і Ў/, "j U"],
211
228
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і ў/, "j u"],
212
229
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і /, "j "],
@@ -215,24 +232,25 @@ var rawLatinLettersJi = [
215
232
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )І /, "J "],
216
233
  [` і(?=${iwords})`, " ji"],
217
234
  [` І(?=${iwords})`, " Ji"],
218
- [` І(?=${iwords.toUpperCase()})`, " JI"],
235
+ [` І(?=${iwords.toUpperCase()})`, " JI"]
236
+ ]).concat([
219
237
  ...common.lower[0],
220
- [/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)і/, "ji"],
238
+ [/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)і/g, "ji"],
221
239
  ...common.lower[1]
222
- ];
223
- var rawLatinLettersUpperCaseJi = [
240
+ ]);
241
+ var latinLettersUpperCaseJi = [
224
242
  ...common.upper[0],
225
- [new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "u"), "Ji"],
243
+ [new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "gu"), "Ji"],
226
244
  ...common.upper[1],
227
- [/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)І/, "JI"],
245
+ [/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)І/g, "JI"],
228
246
  ...common.upper[2],
229
- [/ JIŁ -/, " IŁ -"]
247
+ [/ JIŁ -/g, " IŁ -"]
230
248
  ];
231
249
 
232
250
  // src/dict/arabic.ts
233
251
  var soft = "ْ(?=[еёіюяь])";
234
252
  var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
235
- var rawArabLetters = [
253
+ var arabLetters = dictFrom.raw([
236
254
  [/ л[ая]/, " لا"],
237
255
  [/л[ая]/, "ـلا"],
238
256
  // падваеньне зычнага, шадда
@@ -287,9 +305,17 @@ var rawArabLetters = [
287
305
  [/ш/, "ش"],
288
306
  [/,/, "،"],
289
307
  [/\?/, "؟"]
290
- ];
308
+ ]);
291
309
 
292
- // src/dict/index.ts
310
+ // src/dict/gobj.ts
311
+ var gobj = {
312
+ г: "ґ",
313
+ Г: "Ґ",
314
+ ґ: "г",
315
+ Ґ: "Г"
316
+ };
317
+
318
+ // src/dict/wordlist.ts
293
319
  var chemicalElements1 = [
294
320
  "сканд|ванад|рубід|род|ірыд|рэзэрфорд",
295
321
  "стронц|бар|цэр|лютэц|самар| тор|амэрыц|кальц|кюр|дармштат|лівэрмор|натр"
@@ -302,7 +328,93 @@ var chemicalElements2 = [
302
328
  chemicalElements2[1] = chemicalElements2[0] + "|айнштайн|мендзялев|сыборг|гас|флеров";
303
329
  var chemicalElements3 = " гал|бэрыл|тул|бэркл|набэл";
304
330
  var ia = (word, words) => ` ${word} (?=\\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
305
- var rawWordlist = [
331
+ var gwords = [
332
+ " ґб ",
333
+ "ґг",
334
+ "абрызґл",
335
+ " аґюст",
336
+ "анґол",
337
+ "арґаніз",
338
+ "арлінґтан",
339
+ "арыґінал",
340
+ " аўґс",
341
+ "аўґуст",
342
+ "аґрэст",
343
+ " біґ ",
344
+ " бразґ",
345
+ "буґацці",
346
+ "бурґ",
347
+ "вашынґт",
348
+ "возґр",
349
+ "вэдзґа",
350
+ " гааґ",
351
+ " ґабрыел",
352
+ " ґазэт",
353
+ " ґаксон",
354
+ " ґалац",
355
+ " ґалґоф",
356
+ " ґалер",
357
+ " ґаліле",
358
+ " ґальґот",
359
+ " ґамбі",
360
+ " ґарант",
361
+ " ґарсэт",
362
+ "ґарыбальдзі",
363
+ " ґаўс",
364
+ " ґаян",
365
+ "ґвалт",
366
+ // ' ґелер',
367
+ // ' ґент',
368
+ " ґётэ ",
369
+ " ґзымс",
370
+ " ґіём",
371
+ " ґітлін",
372
+ " ґлазґа ",
373
+ " ґліцэрын",
374
+ " ґлясар",
375
+ " ґонт",
376
+ " ґот",
377
+ " ґоцц",
378
+ " ґрадус",
379
+ "ґранд",
380
+ "ґрунт",
381
+ " ґрэйвэз",
382
+ "ґрэнобл",
383
+ "ґрэнлянд",
384
+ " ґузік",
385
+ " ґуст ",
386
+ " ґэлап",
387
+ " ґэры ",
388
+ " ґяд",
389
+ " ґяндж",
390
+ " джамалунґм",
391
+ " джґа",
392
+ " ірвінґ",
393
+ " іґнар",
394
+ " інтэґр",
395
+ " калеґ",
396
+ " кіплінґ",
397
+ "леґенд",
398
+ " лонґ",
399
+ " лэнґлі ",
400
+ " мазґ",
401
+ " мэґі ",
402
+ " мяґі ",
403
+ // 'нінґен',
404
+ " ніяґар",
405
+ "пінґвін",
406
+ "плявузґ",
407
+ "праґрам",
408
+ " розґ",
409
+ " ролінґ",
410
+ " рэдынґ",
411
+ " сіґітас",
412
+ " сійґ",
413
+ "райхстаґ",
414
+ " уґанд",
415
+ " цуґл"
416
+ ].reverse().map((word) => [RegExp(word.replace(/ґ/g, "г"), "g"), word]);
417
+ var wordlist = dictFrom.raw([
306
418
  /* А */
307
419
  [/аахен/, "аахэн"],
308
420
  [/абанен(?=[тц])/, "абанэн"],
@@ -1878,12 +1990,14 @@ var rawWordlist = [
1878
1990
  [/ яблынь /, " яблын(ь|яў) "],
1879
1991
  [/ расей /, " расе(й|яў) "],
1880
1992
  [//, ""]
1881
- ];
1882
- var noSoften = [
1993
+ ]).concat(gwords);
1994
+
1995
+ // src/dict/softening.ts
1996
+ var noSoften = dictFrom.nonGlobal([
1883
1997
  [/масфільм/, "масфільм"],
1884
1998
  [/пэндзлік/, "пэндзлік"]
1885
- ];
1886
- var rawsofteners = [
1999
+ ]);
2000
+ var softeners = dictFrom.raw([
1887
2001
  [/([лнц])\1(?=[еёіюяь])/, "$1ь$1"],
1888
2002
  [/(\S\S)дз?дз(?=[еёіюяь])/, "$1дзьдз"],
1889
2003
  [/адзьдз([ея])л/, "аддз$1л"],
@@ -1892,121 +2006,12 @@ var rawsofteners = [
1892
2006
  [/з(?=([бвзлмнц]|дз)[еёіюяь])/, "зь"],
1893
2007
  [/с(?=[бвлмнпсфц][еёіюяь])/, "сь"],
1894
2008
  [/ц(?=[вм][еёіюяь])/, "ць"],
1895
- [`( (?:б[ея]|пра|цера)?з) (?=\\(?)(?=[еёюяь]|([бвзйлмнпстфц]|дз)[еёіюяь]|імі? |іх(?:ні)?|і(?:${iwords}))`, "$1ь "],
2009
+ [
2010
+ `( (?:б[ея]|пра|цера)?з) (?=\\(?)(?=[еёюяь]|([бвзйлмнпстфц]|дз)[еёіюяь]|імі? |іх(?:ні)?|і(?:${iwords}))`,
2011
+ "$1ь "
2012
+ ],
1896
2013
  [/([сз])ʼ(?=[яюеё])/, "$1ь"]
1897
- ];
1898
- var gwords = [
1899
- " ґб ",
1900
- "ґг",
1901
- "абрызґл",
1902
- " аґюст",
1903
- "анґол",
1904
- "арґаніз",
1905
- "арлінґтан",
1906
- "арыґінал",
1907
- " аўґс",
1908
- "аўґуст",
1909
- "аґрэст",
1910
- " біґ ",
1911
- " бразґ",
1912
- "буґацці",
1913
- "бурґ",
1914
- "вашынґт",
1915
- "возґр",
1916
- "вэдзґа",
1917
- " гааґ",
1918
- " ґабрыел",
1919
- " ґазэт",
1920
- " ґаксон",
1921
- " ґалац",
1922
- " ґалґоф",
1923
- " ґалер",
1924
- " ґаліле",
1925
- " ґальґот",
1926
- " ґамбі",
1927
- " ґарант",
1928
- " ґарсэт",
1929
- "ґарыбальдзі",
1930
- " ґаўс",
1931
- " ґаян",
1932
- "ґвалт",
1933
- // ' ґелер',
1934
- // ' ґент',
1935
- " ґётэ ",
1936
- " ґзымс",
1937
- " ґіём",
1938
- " ґітлін",
1939
- " ґлазґа ",
1940
- " ґліцэрын",
1941
- " ґлясар",
1942
- " ґонт",
1943
- " ґот",
1944
- " ґоцц",
1945
- " ґрадус",
1946
- "ґранд",
1947
- "ґрунт",
1948
- " ґрэйвэз",
1949
- "ґрэнобл",
1950
- "ґрэнлянд",
1951
- " ґузік",
1952
- " ґуст ",
1953
- " ґэлап",
1954
- " ґэры ",
1955
- " ґяд",
1956
- " ґяндж",
1957
- " джамалунґм",
1958
- " джґа",
1959
- " ірвінґ",
1960
- " іґнар",
1961
- " інтэґр",
1962
- " калеґ",
1963
- " кіплінґ",
1964
- "леґенд",
1965
- " лонґ",
1966
- " лэнґлі ",
1967
- " мазґ",
1968
- " мэґі ",
1969
- " мяґі ",
1970
- // 'нінґен',
1971
- " ніяґар",
1972
- "пінґвін",
1973
- "плявузґ",
1974
- "праґрам",
1975
- " розґ",
1976
- " ролінґ",
1977
- " рэдынґ",
1978
- " сіґітас",
1979
- " сійґ",
1980
- "райхстаґ",
1981
- " уґанд",
1982
- " цуґл"
1983
- ].reverse();
1984
- var gobj = {
1985
- "г": "ґ",
1986
- "Г": "Ґ",
1987
- "ґ": "г",
1988
- "Ґ": "Г"
1989
- };
1990
- var wordlist = [];
1991
- var softeners = [];
1992
- var arabLetters = [];
1993
- var latinLettersJi = [];
1994
- var latinLettersUpperCaseJi = [];
1995
- var arr = [
1996
- [rawWordlist, wordlist],
1997
- [rawsofteners, softeners],
1998
- [rawArabLetters, arabLetters],
1999
- [rawLatinLettersJi, latinLettersJi],
2000
- [rawLatinLettersUpperCaseJi, latinLettersUpperCaseJi]
2001
- ];
2002
- for (const [raw, obj] of arr)
2003
- for (const [pattern, result] of raw)
2004
- obj.push([RegExp(pattern, pattern instanceof RegExp ? pattern.flags + "g" : "g"), result]);
2005
- for (const obj of [latinLetters, latinLettersUpperCase, noSoften])
2006
- for (const item of obj)
2007
- item[0] = RegExp(item[0], "g" + item[0].flags);
2008
- for (const word of gwords)
2009
- wordlist.push([RegExp(word.replace(/ґ/g, "г"), "g"), word]);
2014
+ ]);
2010
2015
 
2011
2016
  // src/tarask.ts
2012
2017
  var isUpperCase = (str) => str === str.toUpperCase();
@@ -2037,9 +2042,9 @@ var VARIATION = {
2037
2042
  ALL: 2
2038
2043
  };
2039
2044
  var letters = {
2040
- [ALPHABET.LATIN]: latinLetters,
2045
+ [ALPHABET.LATIN]: latinLettersLowerCase,
2041
2046
  [ALPHABET.ARABIC]: arabLetters,
2042
- [ALPHABET.LATIN_JI]: latinLettersJi
2047
+ [ALPHABET.LATIN_JI]: latinLettersLowerCaseJi
2043
2048
  };
2044
2049
  var lettersUpperCase = {
2045
2050
  [ALPHABET.LATIN]: latinLettersUpperCase,
@@ -2067,7 +2072,7 @@ var afterTarask = [
2067
2072
  ($0, $1, $2) => /([ая]ў|ну)$/.test($2) ? $1 + "ь і" + $2 : $0
2068
2073
  ]
2069
2074
  ];
2070
- var applyNoFix = (arr2, text) => arr2.length ? text.replace(NOFIX_REGEX, () => arr2.shift()) : text;
2075
+ var applyNoFix = (arr, text) => arr.length ? text.replace(NOFIX_REGEX, () => arr.shift()) : text;
2071
2076
  var afterJoin = (text) => text.replace(/&nbsp;/g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d|&#40) ", "gu"), "$1");
2072
2077
  var join = (textArr) => afterJoin(textArr.join(" "));
2073
2078
  var finalize = (text, newLine) => text.replace(/ \t /g, " ").replace(/ \n /g, newLine).trim();
@@ -2175,7 +2180,10 @@ var __tarask__ = {
2175
2180
  wordlist,
2176
2181
  softeners,
2177
2182
  replaceWithDict,
2178
- afterTarask
2183
+ afterTarask,
2184
+ noSoften,
2185
+ latinLettersLowerCaseJi,
2186
+ latinLettersUpperCaseJi
2179
2187
  };
2180
2188
  var convertAlphabet = (text, abc) => replaceWithDict(replaceWithDict(text, letters[abc]), lettersUpperCase[abc]);
2181
2189
  var restoreBraces = (text) => text.replace(/&#40/g, "(");
package/dist/index.d.ts CHANGED
@@ -1,3 +1,6 @@
1
+ type Dict<T = RegExp> = readonly (readonly [T, string])[];
2
+ type WritableDict<T = RegExp> = [T, string][];
3
+
1
4
  type ModifyObjectType<T, TResultObj> = T extends object ? T extends (...args: any[]) => any ? T : TResultObj : T;
2
5
  type DeepPartialReadonly<T> = ModifyObjectType<T, {
3
6
  readonly [P in keyof T]?: DeepPartialReadonly<T[P]>;
@@ -18,7 +21,6 @@ type NonHtmlOptions = {
18
21
  type HtmlOptions = {
19
22
  g: boolean;
20
23
  };
21
- type Dict<T = RegExp> = readonly (readonly [T, string])[];
22
24
  type ExtendedDict = readonly (readonly [
23
25
  RegExp,
24
26
  string | ((...substrings: string[]) => string)
@@ -41,10 +43,13 @@ declare const VARIATION: {
41
43
  readonly ALL: 2;
42
44
  };
43
45
  declare const __tarask__: {
44
- readonly wordlist: Dict;
46
+ readonly wordlist: (readonly [RegExp, string])[];
45
47
  readonly softeners: Dict;
46
48
  readonly replaceWithDict: (text: string, dict?: ExtendedDict) => string;
47
49
  readonly afterTarask: ExtendedDict;
50
+ readonly noSoften: WritableDict;
51
+ readonly latinLettersLowerCaseJi: (readonly [RegExp, string])[];
52
+ readonly latinLettersUpperCaseJi: [RegExp, string][];
48
53
  };
49
54
  declare class Taraskevizer {
50
55
  general: {
package/dist/index.js CHANGED
@@ -1,5 +1,22 @@
1
- // src/dict/iwords.ts
1
+ // src/dict/lib.ts
2
+ var dictFrom = {
3
+ raw: (dict) => {
4
+ for (const item of dict)
5
+ item[0] = RegExp(
6
+ item[0],
7
+ item[0] instanceof RegExp ? item[0].flags + "g" : "g"
8
+ );
9
+ return dict;
10
+ },
11
+ nonGlobal: (dict) => {
12
+ for (const item of dict)
13
+ item[0] = RegExp(item[0], "g" + item[0].flags);
14
+ return dict;
15
+ }
16
+ };
2
17
  var toOneLine = (str) => str.replace(/\n/g, "|");
18
+
19
+ // src/dict/iwords.ts
3
20
  var iwords = toOneLine(`біс
4
21
  бсэн
5
22
  в[аеоы]
@@ -110,7 +127,7 @@ var common = {
110
127
  [/[łl]i([eoua])/, "l$1"],
111
128
  [/łi/, "li"]
112
129
  ]
113
- ],
130
+ ].map(dictFrom.nonGlobal),
114
131
  upper: [
115
132
  [
116
133
  [new RegExp(" Е(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "u"), " Je"],
@@ -167,15 +184,15 @@ var common = {
167
184
  [/Łi/, "Li"],
168
185
  [/ŁI/, "LI"]
169
186
  ]
170
- ]
187
+ ].map(dictFrom.nonGlobal)
171
188
  };
172
- var latinLetters = [
189
+ var latinLettersLowerCase = [
173
190
  ...common.lower[0],
174
- [/ʼі/, "ji"],
191
+ [/ʼі/g, "ji"],
175
192
  ...common.lower[1]
176
193
  ];
177
194
  var latinLettersUpperCase = common.upper.flat();
178
- var rawLatinLettersJi = [
195
+ var latinLettersLowerCaseJi = dictFrom.raw([
179
196
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і Ў/, "j U"],
180
197
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і ў/, "j u"],
181
198
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і /, "j "],
@@ -184,24 +201,25 @@ var rawLatinLettersJi = [
184
201
  [/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )І /, "J "],
185
202
  [` і(?=${iwords})`, " ji"],
186
203
  [` І(?=${iwords})`, " Ji"],
187
- [` І(?=${iwords.toUpperCase()})`, " JI"],
204
+ [` І(?=${iwords.toUpperCase()})`, " JI"]
205
+ ]).concat([
188
206
  ...common.lower[0],
189
- [/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)і/, "ji"],
207
+ [/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)і/g, "ji"],
190
208
  ...common.lower[1]
191
- ];
192
- var rawLatinLettersUpperCaseJi = [
209
+ ]);
210
+ var latinLettersUpperCaseJi = [
193
211
  ...common.upper[0],
194
- [new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "u"), "Ji"],
212
+ [new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "gu"), "Ji"],
195
213
  ...common.upper[1],
196
- [/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)І/, "JI"],
214
+ [/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)І/g, "JI"],
197
215
  ...common.upper[2],
198
- [/ JIŁ -/, " IŁ -"]
216
+ [/ JIŁ -/g, " IŁ -"]
199
217
  ];
200
218
 
201
219
  // src/dict/arabic.ts
202
220
  var soft = "ْ(?=[еёіюяь])";
203
221
  var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
204
- var rawArabLetters = [
222
+ var arabLetters = dictFrom.raw([
205
223
  [/ л[ая]/, " لا"],
206
224
  [/л[ая]/, "ـلا"],
207
225
  // падваеньне зычнага, шадда
@@ -256,9 +274,17 @@ var rawArabLetters = [
256
274
  [/ш/, "ش"],
257
275
  [/,/, "،"],
258
276
  [/\?/, "؟"]
259
- ];
277
+ ]);
260
278
 
261
- // src/dict/index.ts
279
+ // src/dict/gobj.ts
280
+ var gobj = {
281
+ г: "ґ",
282
+ Г: "Ґ",
283
+ ґ: "г",
284
+ Ґ: "Г"
285
+ };
286
+
287
+ // src/dict/wordlist.ts
262
288
  var chemicalElements1 = [
263
289
  "сканд|ванад|рубід|род|ірыд|рэзэрфорд",
264
290
  "стронц|бар|цэр|лютэц|самар| тор|амэрыц|кальц|кюр|дармштат|лівэрмор|натр"
@@ -271,7 +297,93 @@ var chemicalElements2 = [
271
297
  chemicalElements2[1] = chemicalElements2[0] + "|айнштайн|мендзялев|сыборг|гас|флеров";
272
298
  var chemicalElements3 = " гал|бэрыл|тул|бэркл|набэл";
273
299
  var ia = (word, words) => ` ${word} (?=\\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
274
- var rawWordlist = [
300
+ var gwords = [
301
+ " ґб ",
302
+ "ґг",
303
+ "абрызґл",
304
+ " аґюст",
305
+ "анґол",
306
+ "арґаніз",
307
+ "арлінґтан",
308
+ "арыґінал",
309
+ " аўґс",
310
+ "аўґуст",
311
+ "аґрэст",
312
+ " біґ ",
313
+ " бразґ",
314
+ "буґацці",
315
+ "бурґ",
316
+ "вашынґт",
317
+ "возґр",
318
+ "вэдзґа",
319
+ " гааґ",
320
+ " ґабрыел",
321
+ " ґазэт",
322
+ " ґаксон",
323
+ " ґалац",
324
+ " ґалґоф",
325
+ " ґалер",
326
+ " ґаліле",
327
+ " ґальґот",
328
+ " ґамбі",
329
+ " ґарант",
330
+ " ґарсэт",
331
+ "ґарыбальдзі",
332
+ " ґаўс",
333
+ " ґаян",
334
+ "ґвалт",
335
+ // ' ґелер',
336
+ // ' ґент',
337
+ " ґётэ ",
338
+ " ґзымс",
339
+ " ґіём",
340
+ " ґітлін",
341
+ " ґлазґа ",
342
+ " ґліцэрын",
343
+ " ґлясар",
344
+ " ґонт",
345
+ " ґот",
346
+ " ґоцц",
347
+ " ґрадус",
348
+ "ґранд",
349
+ "ґрунт",
350
+ " ґрэйвэз",
351
+ "ґрэнобл",
352
+ "ґрэнлянд",
353
+ " ґузік",
354
+ " ґуст ",
355
+ " ґэлап",
356
+ " ґэры ",
357
+ " ґяд",
358
+ " ґяндж",
359
+ " джамалунґм",
360
+ " джґа",
361
+ " ірвінґ",
362
+ " іґнар",
363
+ " інтэґр",
364
+ " калеґ",
365
+ " кіплінґ",
366
+ "леґенд",
367
+ " лонґ",
368
+ " лэнґлі ",
369
+ " мазґ",
370
+ " мэґі ",
371
+ " мяґі ",
372
+ // 'нінґен',
373
+ " ніяґар",
374
+ "пінґвін",
375
+ "плявузґ",
376
+ "праґрам",
377
+ " розґ",
378
+ " ролінґ",
379
+ " рэдынґ",
380
+ " сіґітас",
381
+ " сійґ",
382
+ "райхстаґ",
383
+ " уґанд",
384
+ " цуґл"
385
+ ].reverse().map((word) => [RegExp(word.replace(/ґ/g, "г"), "g"), word]);
386
+ var wordlist = dictFrom.raw([
275
387
  /* А */
276
388
  [/аахен/, "аахэн"],
277
389
  [/абанен(?=[тц])/, "абанэн"],
@@ -1847,12 +1959,14 @@ var rawWordlist = [
1847
1959
  [/ яблынь /, " яблын(ь|яў) "],
1848
1960
  [/ расей /, " расе(й|яў) "],
1849
1961
  [//, ""]
1850
- ];
1851
- var noSoften = [
1962
+ ]).concat(gwords);
1963
+
1964
+ // src/dict/softening.ts
1965
+ var noSoften = dictFrom.nonGlobal([
1852
1966
  [/масфільм/, "масфільм"],
1853
1967
  [/пэндзлік/, "пэндзлік"]
1854
- ];
1855
- var rawsofteners = [
1968
+ ]);
1969
+ var softeners = dictFrom.raw([
1856
1970
  [/([лнц])\1(?=[еёіюяь])/, "$1ь$1"],
1857
1971
  [/(\S\S)дз?дз(?=[еёіюяь])/, "$1дзьдз"],
1858
1972
  [/адзьдз([ея])л/, "аддз$1л"],
@@ -1861,121 +1975,12 @@ var rawsofteners = [
1861
1975
  [/з(?=([бвзлмнц]|дз)[еёіюяь])/, "зь"],
1862
1976
  [/с(?=[бвлмнпсфц][еёіюяь])/, "сь"],
1863
1977
  [/ц(?=[вм][еёіюяь])/, "ць"],
1864
- [`( (?:б[ея]|пра|цера)?з) (?=\\(?)(?=[еёюяь]|([бвзйлмнпстфц]|дз)[еёіюяь]|імі? |іх(?:ні)?|і(?:${iwords}))`, "$1ь "],
1978
+ [
1979
+ `( (?:б[ея]|пра|цера)?з) (?=\\(?)(?=[еёюяь]|([бвзйлмнпстфц]|дз)[еёіюяь]|імі? |іх(?:ні)?|і(?:${iwords}))`,
1980
+ "$1ь "
1981
+ ],
1865
1982
  [/([сз])ʼ(?=[яюеё])/, "$1ь"]
1866
- ];
1867
- var gwords = [
1868
- " ґб ",
1869
- "ґг",
1870
- "абрызґл",
1871
- " аґюст",
1872
- "анґол",
1873
- "арґаніз",
1874
- "арлінґтан",
1875
- "арыґінал",
1876
- " аўґс",
1877
- "аўґуст",
1878
- "аґрэст",
1879
- " біґ ",
1880
- " бразґ",
1881
- "буґацці",
1882
- "бурґ",
1883
- "вашынґт",
1884
- "возґр",
1885
- "вэдзґа",
1886
- " гааґ",
1887
- " ґабрыел",
1888
- " ґазэт",
1889
- " ґаксон",
1890
- " ґалац",
1891
- " ґалґоф",
1892
- " ґалер",
1893
- " ґаліле",
1894
- " ґальґот",
1895
- " ґамбі",
1896
- " ґарант",
1897
- " ґарсэт",
1898
- "ґарыбальдзі",
1899
- " ґаўс",
1900
- " ґаян",
1901
- "ґвалт",
1902
- // ' ґелер',
1903
- // ' ґент',
1904
- " ґётэ ",
1905
- " ґзымс",
1906
- " ґіём",
1907
- " ґітлін",
1908
- " ґлазґа ",
1909
- " ґліцэрын",
1910
- " ґлясар",
1911
- " ґонт",
1912
- " ґот",
1913
- " ґоцц",
1914
- " ґрадус",
1915
- "ґранд",
1916
- "ґрунт",
1917
- " ґрэйвэз",
1918
- "ґрэнобл",
1919
- "ґрэнлянд",
1920
- " ґузік",
1921
- " ґуст ",
1922
- " ґэлап",
1923
- " ґэры ",
1924
- " ґяд",
1925
- " ґяндж",
1926
- " джамалунґм",
1927
- " джґа",
1928
- " ірвінґ",
1929
- " іґнар",
1930
- " інтэґр",
1931
- " калеґ",
1932
- " кіплінґ",
1933
- "леґенд",
1934
- " лонґ",
1935
- " лэнґлі ",
1936
- " мазґ",
1937
- " мэґі ",
1938
- " мяґі ",
1939
- // 'нінґен',
1940
- " ніяґар",
1941
- "пінґвін",
1942
- "плявузґ",
1943
- "праґрам",
1944
- " розґ",
1945
- " ролінґ",
1946
- " рэдынґ",
1947
- " сіґітас",
1948
- " сійґ",
1949
- "райхстаґ",
1950
- " уґанд",
1951
- " цуґл"
1952
- ].reverse();
1953
- var gobj = {
1954
- "г": "ґ",
1955
- "Г": "Ґ",
1956
- "ґ": "г",
1957
- "Ґ": "Г"
1958
- };
1959
- var wordlist = [];
1960
- var softeners = [];
1961
- var arabLetters = [];
1962
- var latinLettersJi = [];
1963
- var latinLettersUpperCaseJi = [];
1964
- var arr = [
1965
- [rawWordlist, wordlist],
1966
- [rawsofteners, softeners],
1967
- [rawArabLetters, arabLetters],
1968
- [rawLatinLettersJi, latinLettersJi],
1969
- [rawLatinLettersUpperCaseJi, latinLettersUpperCaseJi]
1970
- ];
1971
- for (const [raw, obj] of arr)
1972
- for (const [pattern, result] of raw)
1973
- obj.push([RegExp(pattern, pattern instanceof RegExp ? pattern.flags + "g" : "g"), result]);
1974
- for (const obj of [latinLetters, latinLettersUpperCase, noSoften])
1975
- for (const item of obj)
1976
- item[0] = RegExp(item[0], "g" + item[0].flags);
1977
- for (const word of gwords)
1978
- wordlist.push([RegExp(word.replace(/ґ/g, "г"), "g"), word]);
1983
+ ]);
1979
1984
 
1980
1985
  // src/tarask.ts
1981
1986
  var isUpperCase = (str) => str === str.toUpperCase();
@@ -2006,9 +2011,9 @@ var VARIATION = {
2006
2011
  ALL: 2
2007
2012
  };
2008
2013
  var letters = {
2009
- [ALPHABET.LATIN]: latinLetters,
2014
+ [ALPHABET.LATIN]: latinLettersLowerCase,
2010
2015
  [ALPHABET.ARABIC]: arabLetters,
2011
- [ALPHABET.LATIN_JI]: latinLettersJi
2016
+ [ALPHABET.LATIN_JI]: latinLettersLowerCaseJi
2012
2017
  };
2013
2018
  var lettersUpperCase = {
2014
2019
  [ALPHABET.LATIN]: latinLettersUpperCase,
@@ -2036,7 +2041,7 @@ var afterTarask = [
2036
2041
  ($0, $1, $2) => /([ая]ў|ну)$/.test($2) ? $1 + "ь і" + $2 : $0
2037
2042
  ]
2038
2043
  ];
2039
- var applyNoFix = (arr2, text) => arr2.length ? text.replace(NOFIX_REGEX, () => arr2.shift()) : text;
2044
+ var applyNoFix = (arr, text) => arr.length ? text.replace(NOFIX_REGEX, () => arr.shift()) : text;
2040
2045
  var afterJoin = (text) => text.replace(/&nbsp;/g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d|&#40) ", "gu"), "$1");
2041
2046
  var join = (textArr) => afterJoin(textArr.join(" "));
2042
2047
  var finalize = (text, newLine) => text.replace(/ \t /g, " ").replace(/ \n /g, newLine).trim();
@@ -2144,7 +2149,10 @@ var __tarask__ = {
2144
2149
  wordlist,
2145
2150
  softeners,
2146
2151
  replaceWithDict,
2147
- afterTarask
2152
+ afterTarask,
2153
+ noSoften,
2154
+ latinLettersLowerCaseJi,
2155
+ latinLettersUpperCaseJi
2148
2156
  };
2149
2157
  var convertAlphabet = (text, abc) => replaceWithDict(replaceWithDict(text, letters[abc]), lettersUpperCase[abc]);
2150
2158
  var restoreBraces = (text) => text.replace(/&#40/g, "(");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taraskevizer",
3
- "version": "6.0.6",
3
+ "version": "6.0.8",
4
4
  "author": "GooseOb",
5
5
  "repository": {
6
6
  "type": "git",