taraskevizer 5.1.3 → 5.1.5

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
@@ -25,16 +25,17 @@ __export(src_exports, {
25
25
  Taraskevizer: () => Taraskevizer,
26
26
  VARIATION: () => VARIATION,
27
27
  __tarask__: () => __tarask__,
28
+ convertAlphabet: () => convertAlphabet,
28
29
  gobj: () => gobj
29
30
  });
30
31
  module.exports = __toCommonJS(src_exports);
31
32
 
32
33
  // src/dict/latin.ts
33
34
  var latinLetters = [
34
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)е/, "je"],
35
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)ё/, "jo"],
36
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)ю/, "ju"],
37
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)я/, "ja"],
35
+ [/(?<=[аеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)е/, "je"],
36
+ [/(?<=[eаеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)ё/, "jo"],
37
+ [/(?<=[eoаеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)ю/, "ju"],
38
+ [/(?<=[eouаеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)я/, "ja"],
38
39
  [/ʼі/, "ji"],
39
40
  [/ʼ/, ""],
40
41
  [/ць/, "ć"],
@@ -890,6 +891,7 @@ var rawWordlist = [
890
891
  [/палесцін/, "палестын"],
891
892
  [/палінез/, "палінэз"],
892
893
  [/ палані(?=[клў])/, " палані"],
894
+ [/ апалоні/, " апалоні"],
893
895
  [/палоні/, "палёні"],
894
896
  [/палані/, "паляні"],
895
897
  [/паланэз/, "палянэз"],
@@ -1735,15 +1737,15 @@ var rawWordlist = [
1735
1737
  [/ступлення/, "сту(пленьня|па)"],
1736
1738
  [/ у а/, " у (а|ва)"],
1737
1739
  // [/зс(\S\S)/, 'с$1'],
1738
- [/ экск/, " экск"],
1739
1740
  [/нкск/, "нск"],
1741
+ [/ экск/, " экск"],
1740
1742
  [/[ктцч]ск/, "цк"],
1741
- [/падскарб/, "падскарб"],
1742
1743
  [/ (звыш|райх)ск/, " $1ск"],
1743
1744
  [/ г[еэ]рцагс/, " гэрцагс"],
1744
1745
  [/ (дву|тро|чатыро)хс/, " $1хс"],
1745
1746
  [/[гґзжхш]с(?=(?:к|тв)\S)/, "с"],
1746
1747
  [/ адск/, " адск"],
1748
+ [/ падск/, " падск"],
1747
1749
  [/дс(?=к|тв)/, "дз"],
1748
1750
  // [/([аеёіоуыэюя])вс/, '$1ўс'],
1749
1751
  [/ (б|кнд|нот)р /, " $1р "],
@@ -2118,13 +2120,19 @@ var __tarask__ = {
2118
2120
  replaceWithDict,
2119
2121
  afterTarask
2120
2122
  };
2123
+ var convertAlphabet = (text, abc, jiInLatin) => replaceWithDict(replaceWithDict(text, letters[abc]), lettersUpperCase[abc]);
2124
+ var moveFromTo = (prop, from, to) => {
2125
+ if (prop in from)
2126
+ to[prop] = from[prop];
2127
+ };
2121
2128
  var Taraskevizer = class {
2122
2129
  abc = ALPHABET.CYRILLIC;
2123
2130
  j = REPLACE_J.NEVER;
2131
+ ji = true;
2132
+ doEscapeCapitalized = true;
2124
2133
  html = {
2125
2134
  g: false
2126
2135
  };
2127
- doEscapeCapitalized = true;
2128
2136
  nonHtml = {
2129
2137
  h: false,
2130
2138
  ansiColors: false,
@@ -2135,12 +2143,13 @@ var Taraskevizer = class {
2135
2143
  return;
2136
2144
  const general = options.general;
2137
2145
  if (general) {
2138
- if (general.abc)
2139
- this.abc = general.abc;
2140
- if (general.j)
2141
- this.j = general.j;
2142
- if ("doEscapeCapitalized" in general)
2143
- this.doEscapeCapitalized = general.doEscapeCapitalized;
2146
+ for (const prop of [
2147
+ "abc",
2148
+ "j",
2149
+ "ji",
2150
+ "doEscapeCapitalized"
2151
+ ])
2152
+ moveFromTo(prop, general, this);
2144
2153
  }
2145
2154
  if (options.OVERRIDE_taraskevize)
2146
2155
  this.taraskevize = options.OVERRIDE_taraskevize;
@@ -2190,7 +2199,7 @@ var Taraskevizer = class {
2190
2199
  );
2191
2200
  }
2192
2201
  process(text, LEFT_ANGLE_BRACKET) {
2193
- const { abc, j } = this;
2202
+ const { abc, j, ji } = this;
2194
2203
  const noFixArr = [];
2195
2204
  text = ` ${text.trim()} `.replace(//g, "");
2196
2205
  if (this.doEscapeCapitalized)
@@ -2207,10 +2216,7 @@ var Taraskevizer = class {
2207
2216
  return NOFIX_CHAR;
2208
2217
  }).replace(/г'(?![еёіюя])/g, "ґ").replace(/([\n\t])/g, " $1 ").replace(/ - /g, " — ").replace(new RegExp("(\\p{P}|\\p{S}|\\d)", "gu"), " $1 ").replace(/ ['`’] (?=\S)/g, "ʼ").replace(/\(/g, "&#40");
2209
2218
  let splittedOrig, splitted;
2210
- splittedOrig = replaceWithDict(
2211
- replaceWithDict(text, letters[abc]),
2212
- lettersUpperCase[abc]
2213
- ).split(" ");
2219
+ splittedOrig = convertAlphabet(text, abc, ji).split(" ");
2214
2220
  text = this.taraskevize(text.toLowerCase());
2215
2221
  if (j)
2216
2222
  text = replaceIbyJ(text, j === REPLACE_J.ALWAYS);
@@ -2240,5 +2246,6 @@ var Taraskevizer = class {
2240
2246
  Taraskevizer,
2241
2247
  VARIATION,
2242
2248
  __tarask__,
2249
+ convertAlphabet,
2243
2250
  gobj
2244
2251
  });
package/dist/index.d.ts CHANGED
@@ -9,6 +9,7 @@ type TaraskOptions = {
9
9
  doEscapeCapitalized: boolean;
10
10
  abc: Alphabet;
11
11
  j: OptionJ;
12
+ ji: boolean;
12
13
  };
13
14
  type NonHtmlOptions = {
14
15
  ansiColors: boolean;
@@ -45,13 +46,15 @@ declare const __tarask__: {
45
46
  readonly replaceWithDict: (text: string, dict?: ExtendedDict) => string;
46
47
  readonly afterTarask: ExtendedDict;
47
48
  };
49
+ declare const convertAlphabet: (text: string, abc: Alphabet, jiInLatin: boolean) => string;
48
50
  declare class Taraskevizer {
49
51
  abc: Alphabet;
50
52
  j: OptionJ;
53
+ ji: boolean;
54
+ doEscapeCapitalized: boolean;
51
55
  html: {
52
56
  g: boolean;
53
57
  };
54
- doEscapeCapitalized: boolean;
55
58
  nonHtml: {
56
59
  h: boolean;
57
60
  ansiColors: boolean;
@@ -76,4 +79,4 @@ declare const gobj: {
76
79
  readonly Ґ: "Г";
77
80
  };
78
81
 
79
- export { ALPHABET, type HtmlOptions, type NonHtmlOptions, REPLACE_J, type TaraskOptions, Taraskevizer, VARIATION, __tarask__, gobj };
82
+ export { ALPHABET, type HtmlOptions, type NonHtmlOptions, REPLACE_J, type TaraskOptions, Taraskevizer, VARIATION, __tarask__, convertAlphabet, gobj };
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  // src/dict/latin.ts
2
2
  var latinLetters = [
3
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)е/, "je"],
4
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)ё/, "jo"],
5
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)ю/, "ju"],
6
- [/(?<=[аеёіоуўыэюяьʼ| ]\(?)я/, "ja"],
3
+ [/(?<=[аеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)е/, "je"],
4
+ [/(?<=[eаеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)ё/, "jo"],
5
+ [/(?<=[eoаеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)ю/, "ju"],
6
+ [/(?<=[eouаеёіоуўыэюяьʼ| >АЕЁІОУЎЫЭЮЯЬ]|^)я/, "ja"],
7
7
  [/ʼі/, "ji"],
8
8
  [/ʼ/, ""],
9
9
  [/ць/, "ć"],
@@ -859,6 +859,7 @@ var rawWordlist = [
859
859
  [/палесцін/, "палестын"],
860
860
  [/палінез/, "палінэз"],
861
861
  [/ палані(?=[клў])/, " палані"],
862
+ [/ апалоні/, " апалоні"],
862
863
  [/палоні/, "палёні"],
863
864
  [/палані/, "паляні"],
864
865
  [/паланэз/, "палянэз"],
@@ -1704,15 +1705,15 @@ var rawWordlist = [
1704
1705
  [/ступлення/, "сту(пленьня|па)"],
1705
1706
  [/ у а/, " у (а|ва)"],
1706
1707
  // [/зс(\S\S)/, 'с$1'],
1707
- [/ экск/, " экск"],
1708
1708
  [/нкск/, "нск"],
1709
+ [/ экск/, " экск"],
1709
1710
  [/[ктцч]ск/, "цк"],
1710
- [/падскарб/, "падскарб"],
1711
1711
  [/ (звыш|райх)ск/, " $1ск"],
1712
1712
  [/ г[еэ]рцагс/, " гэрцагс"],
1713
1713
  [/ (дву|тро|чатыро)хс/, " $1хс"],
1714
1714
  [/[гґзжхш]с(?=(?:к|тв)\S)/, "с"],
1715
1715
  [/ адск/, " адск"],
1716
+ [/ падск/, " падск"],
1716
1717
  [/дс(?=к|тв)/, "дз"],
1717
1718
  // [/([аеёіоуыэюя])вс/, '$1ўс'],
1718
1719
  [/ (б|кнд|нот)р /, " $1р "],
@@ -2087,13 +2088,19 @@ var __tarask__ = {
2087
2088
  replaceWithDict,
2088
2089
  afterTarask
2089
2090
  };
2091
+ var convertAlphabet = (text, abc, jiInLatin) => replaceWithDict(replaceWithDict(text, letters[abc]), lettersUpperCase[abc]);
2092
+ var moveFromTo = (prop, from, to) => {
2093
+ if (prop in from)
2094
+ to[prop] = from[prop];
2095
+ };
2090
2096
  var Taraskevizer = class {
2091
2097
  abc = ALPHABET.CYRILLIC;
2092
2098
  j = REPLACE_J.NEVER;
2099
+ ji = true;
2100
+ doEscapeCapitalized = true;
2093
2101
  html = {
2094
2102
  g: false
2095
2103
  };
2096
- doEscapeCapitalized = true;
2097
2104
  nonHtml = {
2098
2105
  h: false,
2099
2106
  ansiColors: false,
@@ -2104,12 +2111,13 @@ var Taraskevizer = class {
2104
2111
  return;
2105
2112
  const general = options.general;
2106
2113
  if (general) {
2107
- if (general.abc)
2108
- this.abc = general.abc;
2109
- if (general.j)
2110
- this.j = general.j;
2111
- if ("doEscapeCapitalized" in general)
2112
- this.doEscapeCapitalized = general.doEscapeCapitalized;
2114
+ for (const prop of [
2115
+ "abc",
2116
+ "j",
2117
+ "ji",
2118
+ "doEscapeCapitalized"
2119
+ ])
2120
+ moveFromTo(prop, general, this);
2113
2121
  }
2114
2122
  if (options.OVERRIDE_taraskevize)
2115
2123
  this.taraskevize = options.OVERRIDE_taraskevize;
@@ -2159,7 +2167,7 @@ var Taraskevizer = class {
2159
2167
  );
2160
2168
  }
2161
2169
  process(text, LEFT_ANGLE_BRACKET) {
2162
- const { abc, j } = this;
2170
+ const { abc, j, ji } = this;
2163
2171
  const noFixArr = [];
2164
2172
  text = ` ${text.trim()} `.replace(//g, "");
2165
2173
  if (this.doEscapeCapitalized)
@@ -2176,10 +2184,7 @@ var Taraskevizer = class {
2176
2184
  return NOFIX_CHAR;
2177
2185
  }).replace(/г'(?![еёіюя])/g, "ґ").replace(/([\n\t])/g, " $1 ").replace(/ - /g, " — ").replace(new RegExp("(\\p{P}|\\p{S}|\\d)", "gu"), " $1 ").replace(/ ['`’] (?=\S)/g, "ʼ").replace(/\(/g, "&#40");
2178
2186
  let splittedOrig, splitted;
2179
- splittedOrig = replaceWithDict(
2180
- replaceWithDict(text, letters[abc]),
2181
- lettersUpperCase[abc]
2182
- ).split(" ");
2187
+ splittedOrig = convertAlphabet(text, abc, ji).split(" ");
2183
2188
  text = this.taraskevize(text.toLowerCase());
2184
2189
  if (j)
2185
2190
  text = replaceIbyJ(text, j === REPLACE_J.ALWAYS);
@@ -2208,5 +2213,6 @@ export {
2208
2213
  Taraskevizer,
2209
2214
  VARIATION,
2210
2215
  __tarask__,
2216
+ convertAlphabet,
2211
2217
  gobj
2212
2218
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taraskevizer",
3
- "version": "5.1.3",
3
+ "version": "5.1.5",
4
4
  "author": "GooseOb",
5
5
  "repository": {
6
6
  "type": "git",