cn-poe-utils 0.0.2

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 (158) hide show
  1. package/README.md +68 -0
  2. package/dist/api/character.d.ts +9 -0
  3. package/dist/api/character.d.ts.map +1 -0
  4. package/dist/api/character.js +2 -0
  5. package/dist/api/character.js.map +1 -0
  6. package/dist/api/index.d.ts +4 -0
  7. package/dist/api/index.d.ts.map +1 -0
  8. package/dist/api/index.js +4 -0
  9. package/dist/api/index.js.map +1 -0
  10. package/dist/api/item.d.ts +227 -0
  11. package/dist/api/item.d.ts.map +1 -0
  12. package/dist/api/item.js +2 -0
  13. package/dist/api/item.js.map +1 -0
  14. package/dist/api/passive_skill.d.ts +95 -0
  15. package/dist/api/passive_skill.d.ts.map +1 -0
  16. package/dist/api/passive_skill.js +2 -0
  17. package/dist/api/passive_skill.js.map +1 -0
  18. package/dist/building/index.d.ts +7 -0
  19. package/dist/building/index.d.ts.map +1 -0
  20. package/dist/building/index.js +10 -0
  21. package/dist/building/index.js.map +1 -0
  22. package/dist/building/transform/gem.d.ts +5 -0
  23. package/dist/building/transform/gem.d.ts.map +1 -0
  24. package/dist/building/transform/gem.js +9 -0
  25. package/dist/building/transform/gem.js.map +1 -0
  26. package/dist/building/transform/slot.d.ts +6 -0
  27. package/dist/building/transform/slot.d.ts.map +1 -0
  28. package/dist/building/transform/slot.js +16 -0
  29. package/dist/building/transform/slot.js.map +1 -0
  30. package/dist/building/transform/transform.d.ts +20 -0
  31. package/dist/building/transform/transform.d.ts.map +1 -0
  32. package/dist/building/transform/transform.js +149 -0
  33. package/dist/building/transform/transform.js.map +1 -0
  34. package/dist/building/transform/tree.d.ts +19 -0
  35. package/dist/building/transform/tree.d.ts.map +1 -0
  36. package/dist/building/transform/tree.js +309 -0
  37. package/dist/building/transform/tree.js.map +1 -0
  38. package/dist/building/util/strings.d.ts +2 -0
  39. package/dist/building/util/strings.d.ts.map +1 -0
  40. package/dist/building/util/strings.js +8 -0
  41. package/dist/building/util/strings.js.map +1 -0
  42. package/dist/building/xml/Build.d.ts +7 -0
  43. package/dist/building/xml/Build.d.ts.map +1 -0
  44. package/dist/building/xml/Build.js +10 -0
  45. package/dist/building/xml/Build.js.map +1 -0
  46. package/dist/building/xml/Config.d.ts +38 -0
  47. package/dist/building/xml/Config.d.ts.map +1 -0
  48. package/dist/building/xml/Config.js +68 -0
  49. package/dist/building/xml/Config.js.map +1 -0
  50. package/dist/building/xml/Item.d.ts +15 -0
  51. package/dist/building/xml/Item.d.ts.map +1 -0
  52. package/dist/building/xml/Item.js +247 -0
  53. package/dist/building/xml/Item.js.map +1 -0
  54. package/dist/building/xml/PathOfBuilding.d.ts +14 -0
  55. package/dist/building/xml/PathOfBuilding.d.ts.map +1 -0
  56. package/dist/building/xml/PathOfBuilding.js +23 -0
  57. package/dist/building/xml/PathOfBuilding.js.map +1 -0
  58. package/dist/building/xml/Skill.d.ts +28 -0
  59. package/dist/building/xml/Skill.d.ts.map +1 -0
  60. package/dist/building/xml/Skill.js +87 -0
  61. package/dist/building/xml/Skill.js.map +1 -0
  62. package/dist/building/xml/Slot.d.ts +25 -0
  63. package/dist/building/xml/Slot.d.ts.map +1 -0
  64. package/dist/building/xml/Slot.js +62 -0
  65. package/dist/building/xml/Slot.js.map +1 -0
  66. package/dist/building/xml/Tree.d.ts +45 -0
  67. package/dist/building/xml/Tree.d.ts.map +1 -0
  68. package/dist/building/xml/Tree.js +95 -0
  69. package/dist/building/xml/Tree.js.map +1 -0
  70. package/dist/data/pob/data.d.ts +687 -0
  71. package/dist/data/pob/data.d.ts.map +1 -0
  72. package/dist/data/pob/data.js +897 -0
  73. package/dist/data/pob/data.js.map +1 -0
  74. package/dist/data/pob/index.d.ts +3 -0
  75. package/dist/data/pob/index.d.ts.map +1 -0
  76. package/dist/data/pob/index.js +9 -0
  77. package/dist/data/pob/index.js.map +1 -0
  78. package/dist/data/pob/types.d.ts +64 -0
  79. package/dist/data/pob/types.d.ts.map +1 -0
  80. package/dist/data/pob/types.js +2 -0
  81. package/dist/data/pob/types.js.map +1 -0
  82. package/dist/data/poe/data.d.ts +254 -0
  83. package/dist/data/poe/data.d.ts.map +1 -0
  84. package/dist/data/poe/data.js +69868 -0
  85. package/dist/data/poe/data.js.map +1 -0
  86. package/dist/data/poe/index.d.ts +4 -0
  87. package/dist/data/poe/index.d.ts.map +1 -0
  88. package/dist/data/poe/index.js +34 -0
  89. package/dist/data/poe/index.js.map +1 -0
  90. package/dist/data/poe/types.d.ts +92 -0
  91. package/dist/data/poe/types.d.ts.map +1 -0
  92. package/dist/data/poe/types.js +2 -0
  93. package/dist/data/poe/types.js.map +1 -0
  94. package/dist/index.d.ts +2 -0
  95. package/dist/index.d.ts.map +1 -0
  96. package/dist/index.js +2 -0
  97. package/dist/index.js.map +1 -0
  98. package/dist/translator/zh2en/basic.d.ts +161 -0
  99. package/dist/translator/zh2en/basic.d.ts.map +1 -0
  100. package/dist/translator/zh2en/basic.js +542 -0
  101. package/dist/translator/zh2en/basic.js.map +1 -0
  102. package/dist/translator/zh2en/factory.d.ts +11 -0
  103. package/dist/translator/zh2en/factory.d.ts.map +1 -0
  104. package/dist/translator/zh2en/factory.js +35 -0
  105. package/dist/translator/zh2en/factory.js.map +1 -0
  106. package/dist/translator/zh2en/index.d.ts +6 -0
  107. package/dist/translator/zh2en/index.d.ts.map +1 -0
  108. package/dist/translator/zh2en/index.js +6 -0
  109. package/dist/translator/zh2en/index.js.map +1 -0
  110. package/dist/translator/zh2en/json.d.ts +34 -0
  111. package/dist/translator/zh2en/json.d.ts.map +1 -0
  112. package/dist/translator/zh2en/json.js +340 -0
  113. package/dist/translator/zh2en/json.js.map +1 -0
  114. package/dist/translator/zh2en/provider/attribute.d.ts +7 -0
  115. package/dist/translator/zh2en/provider/attribute.d.ts.map +1 -0
  116. package/dist/translator/zh2en/provider/attribute.js +14 -0
  117. package/dist/translator/zh2en/provider/attribute.js.map +1 -0
  118. package/dist/translator/zh2en/provider/base_type.d.ts +7 -0
  119. package/dist/translator/zh2en/provider/base_type.d.ts.map +1 -0
  120. package/dist/translator/zh2en/provider/base_type.js +38 -0
  121. package/dist/translator/zh2en/provider/base_type.js.map +1 -0
  122. package/dist/translator/zh2en/provider/passive_skill.d.ts +11 -0
  123. package/dist/translator/zh2en/provider/passive_skill.d.ts.map +1 -0
  124. package/dist/translator/zh2en/provider/passive_skill.js +35 -0
  125. package/dist/translator/zh2en/provider/passive_skill.js.map +1 -0
  126. package/dist/translator/zh2en/provider/property.d.ts +9 -0
  127. package/dist/translator/zh2en/provider/property.d.ts.map +1 -0
  128. package/dist/translator/zh2en/provider/property.js +30 -0
  129. package/dist/translator/zh2en/provider/property.js.map +1 -0
  130. package/dist/translator/zh2en/provider/requirement.d.ts +9 -0
  131. package/dist/translator/zh2en/provider/requirement.d.ts.map +1 -0
  132. package/dist/translator/zh2en/provider/requirement.js +22 -0
  133. package/dist/translator/zh2en/provider/requirement.js.map +1 -0
  134. package/dist/translator/zh2en/provider/skill.d.ts +9 -0
  135. package/dist/translator/zh2en/provider/skill.d.ts.map +1 -0
  136. package/dist/translator/zh2en/provider/skill.js +26 -0
  137. package/dist/translator/zh2en/provider/skill.js.map +1 -0
  138. package/dist/translator/zh2en/provider/stat.d.ts +21 -0
  139. package/dist/translator/zh2en/provider/stat.d.ts.map +1 -0
  140. package/dist/translator/zh2en/provider/stat.js +69 -0
  141. package/dist/translator/zh2en/provider/stat.js.map +1 -0
  142. package/dist/translator/zh2en/provider/sting.d.ts +8 -0
  143. package/dist/translator/zh2en/provider/sting.d.ts.map +1 -0
  144. package/dist/translator/zh2en/provider/sting.js +20 -0
  145. package/dist/translator/zh2en/provider/sting.js.map +1 -0
  146. package/dist/translator/zh2en/text.d.ts +15 -0
  147. package/dist/translator/zh2en/text.d.ts.map +1 -0
  148. package/dist/translator/zh2en/text.js +293 -0
  149. package/dist/translator/zh2en/text.js.map +1 -0
  150. package/dist/translator/zh2en/util/template.d.ts +27 -0
  151. package/dist/translator/zh2en/util/template.d.ts.map +1 -0
  152. package/dist/translator/zh2en/util/template.js +115 -0
  153. package/dist/translator/zh2en/util/template.js.map +1 -0
  154. package/dist/translator/zh2en/util/text.d.ts +8 -0
  155. package/dist/translator/zh2en/util/text.d.ts.map +1 -0
  156. package/dist/translator/zh2en/util/text.js +10 -0
  157. package/dist/translator/zh2en/util/text.js.map +1 -0
  158. package/package.json +60 -0
@@ -0,0 +1,542 @@
1
+ import { AttributeProvider } from "./provider/attribute.js";
2
+ import { BaseTypeProvider } from "./provider/base_type.js";
3
+ import { SkillProvider } from "./provider/skill.js";
4
+ import { PassiveSkillProvider } from "./provider/passive_skill.js";
5
+ import { PropertyProvider } from "./provider/property.js";
6
+ import { RequirementProvider } from "./provider/requirement.js";
7
+ import { StatProvider } from "./provider/stat.js";
8
+ import { Template } from "./util/template.js";
9
+ import { getTextSkeleton, LINE_SEPARATOR } from "./util/text.js";
10
+ const DEFAULT_RARITY_ITEM_NAME = "Item";
11
+ const GEM_PROPERTY_MAP = new Map([
12
+ ["等级", "Level"],
13
+ ["品质", "Quality"],
14
+ ]);
15
+ /**
16
+ * BasicTranslator 提供了最基础、最底层的中文翻译为英文的功能,为更上层的 JSONTranslator 和 TextTranslator 提供支持。
17
+ */
18
+ export class BasicTranslator {
19
+ attributeProvider;
20
+ baseTypeProvider;
21
+ passiveSkillProvider;
22
+ propertyProvider;
23
+ requirementProvider;
24
+ skillProvider;
25
+ statProvider;
26
+ stringProvider;
27
+ qualityPrefix;
28
+ synthesisedPrefix;
29
+ mutatedUniqueNamePrefix;
30
+ influenceStatPrefix1;
31
+ influenceStatPrefix2;
32
+ constructor(attributeProvider, baseTypeProvider, passiveSkillProvider, propertyProvider, requirementProvider, skillProvider, statProvider, stringProvider) {
33
+ this.attributeProvider = attributeProvider;
34
+ this.baseTypeProvider = baseTypeProvider;
35
+ this.passiveSkillProvider = passiveSkillProvider;
36
+ this.propertyProvider = propertyProvider;
37
+ this.requirementProvider = requirementProvider;
38
+ this.skillProvider = skillProvider;
39
+ this.statProvider = statProvider;
40
+ this.stringProvider = stringProvider;
41
+ this.qualityPrefix = this.stringProvider.mustProvide("QualityPrefix");
42
+ this.synthesisedPrefix =
43
+ this.stringProvider.mustProvide("SynthesisedPrefix");
44
+ this.mutatedUniqueNamePrefix = this.stringProvider.mustProvide("MutatedUniqueNamePrefix");
45
+ this.influenceStatPrefix1 = this.stringProvider.mustProvide("InfluenceStatPrefix1");
46
+ this.influenceStatPrefix2 = this.stringProvider.mustProvide("InfluenceStatPrefix2");
47
+ }
48
+ /**
49
+ * 翻译 attribute。
50
+ */
51
+ transAttr(name, value) {
52
+ const attr = this.attributeProvider.provideByZh(name);
53
+ if (attr) {
54
+ const en = attr.en;
55
+ if (value && attr.values) {
56
+ for (const v of attr.values) {
57
+ if (value === v.zh) {
58
+ return {
59
+ name: en,
60
+ value: v.en,
61
+ };
62
+ }
63
+ }
64
+ }
65
+ return {
66
+ name: en,
67
+ value: undefined,
68
+ };
69
+ }
70
+ return undefined;
71
+ }
72
+ /**
73
+ * 翻译 attribute name。
74
+ */
75
+ transAttrName(name) {
76
+ return this.transAttr(name, undefined)?.name;
77
+ }
78
+ /**
79
+ * 翻译 name 和 baseType,用于json数据翻译。
80
+ *
81
+ * 传奇物品的`name`被精确翻译,稀有物品的`name`被翻译为默认名称`Item`,魔法物品和普通物品的`name`保持不变(空字符串)。
82
+ *
83
+ * 可能存在同名的 baseType,传奇物品使用 name 来进行鉴别,否则返回第一个。
84
+ */
85
+ transNameAndBaseType(name, baseType) {
86
+ const baseTypes = this.baseTypeProvider.provideByZh(baseType);
87
+ if (baseTypes === undefined) {
88
+ return undefined;
89
+ }
90
+ if (name.length > 0) {
91
+ let uniqueNamePrefix = "";
92
+ // 处理秽生传奇名称前缀
93
+ if (name.startsWith(this.mutatedUniqueNamePrefix.zh)) {
94
+ uniqueNamePrefix = this.mutatedUniqueNamePrefix.en;
95
+ name = name.substring(this.mutatedUniqueNamePrefix.zh.length);
96
+ }
97
+ const result = this.findUnique(baseTypes, name);
98
+ // 传奇物品
99
+ if (result) {
100
+ return {
101
+ name: uniqueNamePrefix + result.u.en,
102
+ baseType: result.b.en,
103
+ };
104
+ }
105
+ // 稀有物品
106
+ return {
107
+ name: DEFAULT_RARITY_ITEM_NAME,
108
+ baseType: baseTypes[0].en,
109
+ };
110
+ }
111
+ // 魔法物品或普通物品
112
+ return { name, baseType: baseTypes[0].en };
113
+ }
114
+ findUnique(baseTypes, name) {
115
+ for (const b of baseTypes) {
116
+ if (b.uniques) {
117
+ for (const u of b.uniques) {
118
+ if (u.zh === name) {
119
+ return { b, u };
120
+ }
121
+ }
122
+ }
123
+ }
124
+ return undefined;
125
+ }
126
+ /**
127
+ * 翻译 baseType。
128
+ *
129
+ * 可能存在同名的 baseType,返回第一个。
130
+ */
131
+ transBaseType(baseType) {
132
+ if (!baseType) {
133
+ return undefined;
134
+ }
135
+ return this.baseTypeProvider.provideByZh(baseType)?.[0].en;
136
+ }
137
+ /**
138
+ * 根据 typeLine 推断 BaseType。
139
+ *
140
+ * name 用于匹配传奇,否则返回首个匹配的 BaseType。
141
+ */
142
+ findBaseTypeFromTypeLine(typeLine, name) {
143
+ // 传奇物品、稀有物品
144
+ if (name.length > 0) {
145
+ // 秽生传奇
146
+ if (name && name.startsWith(this.mutatedUniqueNamePrefix.zh)) {
147
+ name = name.substring(this.mutatedUniqueNamePrefix.zh.length);
148
+ }
149
+ // 忆境物品
150
+ if (typeLine.startsWith(this.synthesisedPrefix.zh)) {
151
+ typeLine = typeLine.substring(this.synthesisedPrefix.zh.length);
152
+ }
153
+ const baseTypes = this.baseTypeProvider.provideByZh(typeLine);
154
+ if (baseTypes) {
155
+ const result = this.findUnique(baseTypes, name);
156
+ if (result) {
157
+ return result.b;
158
+ }
159
+ return baseTypes[0];
160
+ }
161
+ return;
162
+ }
163
+ // 魔法物品、普通物品、未鉴定传奇物品、未鉴定稀有物品
164
+ if (typeLine.startsWith(this.qualityPrefix.zh)) {
165
+ typeLine = typeLine.substring(this.qualityPrefix.zh.length);
166
+ }
167
+ if (typeLine.startsWith(this.synthesisedPrefix.zh)) {
168
+ typeLine = typeLine.substring(this.synthesisedPrefix.zh.length);
169
+ }
170
+ // 先检查完整匹配的情况
171
+ const baseTypes = this.baseTypeProvider.provideByZh(typeLine);
172
+ if (baseTypes) {
173
+ return baseTypes[0];
174
+ }
175
+ // 处理修饰词存在的情况。
176
+ //
177
+ // 如“显著的幼龙之大型星团珠宝”,其修饰词为:“显著的”、“幼龙之”,其zhBaseType为“大型星团珠宝”。
178
+ //
179
+ // 修饰词以`的`、`之`结尾,但`的`、`之`同时可能出现在 baseType 中,如`潜能之戒`。
180
+ // 我们可以逐步去除修饰词,来检测剩余部分是否是一个 baseType 。
181
+ const pattern = /.+?[之的]/gu;
182
+ let nextIndex = 0;
183
+ while (nextIndex < typeLine.length) {
184
+ const match = pattern.exec(typeLine);
185
+ if (match) {
186
+ nextIndex = pattern.lastIndex;
187
+ const possible = typeLine.substring(pattern.lastIndex);
188
+ const baseTypes = this.baseTypeProvider.provideByZh(possible);
189
+ if (baseTypes) {
190
+ return baseTypes[0];
191
+ }
192
+ }
193
+ else {
194
+ break;
195
+ }
196
+ }
197
+ return;
198
+ }
199
+ /**
200
+ * 翻译 name 和 typeLine,用于文本翻译。
201
+ *
202
+ * typeLine 是 baseType 加上一些修饰词。修饰词可以分为两类,一类是 `意境 ` 和 `精良的 `,一类是与物品词缀相关的修饰词。
203
+ *
204
+ * 第一类修饰词出现在所有相关物品上,不区分稀有度,第二类修饰词仅出现在魔法物品上。
205
+ *
206
+ * 由于第二类修饰词对于POB而言是没有什么作用的,且维护比较麻烦,这里仅支持第一类修饰词的翻译,第二类修饰词被移除。
207
+ */
208
+ transNameAndTypeLine(name, typeLine) {
209
+ // 传奇物品、稀有物品
210
+ if (name.length > 0) {
211
+ let uniqueNamePrefix = "";
212
+ let typeLinePrefix = "";
213
+ if (name.startsWith(this.mutatedUniqueNamePrefix.zh)) {
214
+ uniqueNamePrefix = this.mutatedUniqueNamePrefix.en;
215
+ name = name.substring(this.mutatedUniqueNamePrefix.zh.length);
216
+ }
217
+ if (typeLine.startsWith(this.synthesisedPrefix.zh)) {
218
+ typeLine = typeLine.substring(this.synthesisedPrefix.zh.length);
219
+ typeLinePrefix += this.synthesisedPrefix.en;
220
+ }
221
+ const baseType = this.findBaseTypeFromTypeLine(typeLine, name);
222
+ if (baseType) {
223
+ if (baseType.uniques) {
224
+ for (const u of baseType.uniques) {
225
+ if (u.zh === name) {
226
+ return {
227
+ name: uniqueNamePrefix + u.en,
228
+ typeLine: typeLinePrefix + baseType.en,
229
+ };
230
+ }
231
+ }
232
+ }
233
+ return {
234
+ name: DEFAULT_RARITY_ITEM_NAME,
235
+ typeLine: typeLinePrefix + baseType.en,
236
+ };
237
+ }
238
+ return;
239
+ }
240
+ // 魔法物品、普通物品、未鉴定稀有物品、未鉴定传奇物品
241
+ let typeLinePrefix = "";
242
+ if (typeLine.startsWith(this.qualityPrefix.zh)) {
243
+ typeLine = typeLine.substring(this.qualityPrefix.zh.length);
244
+ typeLinePrefix = this.qualityPrefix.en;
245
+ }
246
+ if (typeLine.startsWith(this.synthesisedPrefix.zh)) {
247
+ typeLine = typeLine.substring(this.synthesisedPrefix.zh.length);
248
+ typeLinePrefix += this.synthesisedPrefix.en;
249
+ }
250
+ const baseType = this.findBaseTypeFromTypeLine(typeLine, name);
251
+ if (baseType) {
252
+ return {
253
+ name: "",
254
+ typeLine: typeLinePrefix + baseType.en,
255
+ };
256
+ }
257
+ return;
258
+ }
259
+ /**
260
+ * 翻译技能和辅助技能,辅助技能带有后缀`(辅)`或`(辅)`
261
+ */
262
+ transSkill(name) {
263
+ return this.skillProvider.provideSkill(name)?.en;
264
+ }
265
+ transSkillProp(name) {
266
+ return GEM_PROPERTY_MAP.get(name);
267
+ }
268
+ /**
269
+ * 翻译索引的辅助技能,名称不带后缀`(辅)`或`(辅)`
270
+ */
271
+ transIndexableSupports(name) {
272
+ return this.skillProvider.provideIndexableSupport(name)?.en;
273
+ }
274
+ /**
275
+ * 翻译可涂油天赋。
276
+ */
277
+ transAnointed(name) {
278
+ return this.passiveSkillProvider.provideAnointedByZh(name)?.en;
279
+ }
280
+ /**
281
+ * 翻译基石天赋。
282
+ */
283
+ transKeystone(name) {
284
+ return this.passiveSkillProvider.provideKeystoneByZh(name)?.en;
285
+ }
286
+ /**
287
+ * 翻译升华天赋。
288
+ *
289
+ * 不支持菲西雅升华、血脉升华。
290
+ */
291
+ transAscendant(zh) {
292
+ return this.passiveSkillProvider.provideAscendantByZh(zh)?.en;
293
+ }
294
+ /**
295
+ * 翻译 Property。
296
+ */
297
+ transProperty(name, value) {
298
+ const prop = this.propertyProvider.provideByZh(name);
299
+ if (prop) {
300
+ if (prop.values) {
301
+ for (const v of prop.values) {
302
+ if (value === v.zh) {
303
+ return {
304
+ name: prop.en,
305
+ value: v.en,
306
+ };
307
+ }
308
+ }
309
+ }
310
+ return {
311
+ name: prop.en,
312
+ };
313
+ }
314
+ return undefined;
315
+ }
316
+ /**
317
+ * 翻译 property name,用于文本翻译。
318
+ *
319
+ * 这个方法引入了 `动态` property name的概念。
320
+ * 比如`武器范围:1.3 米`,这个文本片段使用了中文符号`:`,而一般的 name:value 的分隔符为英文符号`:`。
321
+ * 因此相比将其解析为 `name:value`,还不如将其整体解析为一个 name 省事。
322
+ *
323
+ * 其中 `1.3` 是动态值,因此这个文本片段需要动态翻译为英文。
324
+ *
325
+ * 对应的 json 数据不存在类似的概念,比如:
326
+ * {name: "武器范围:{0} 米", values: [["1.1", 0]], displayMode: 3, type: 14}
327
+ * name和value是分隔的,只需要静态翻译 name。
328
+ */
329
+ transPropertyName(name) {
330
+ const prop = this.propertyProvider.provideByZh(name);
331
+ if (prop) {
332
+ return prop.en;
333
+ }
334
+ const props = this.propertyProvider.provideVariablePropertiesByZhSkeleton(getTextSkeleton(name));
335
+ if (props) {
336
+ for (const prop of props) {
337
+ const zhTmpl = new Template(prop.zh);
338
+ const posParams = zhTmpl.parseParams(name);
339
+ //does not match
340
+ if (posParams === undefined) {
341
+ continue;
342
+ }
343
+ const enTmpl = new Template(prop.en);
344
+ return enTmpl.render(posParams);
345
+ }
346
+ }
347
+ return undefined;
348
+ }
349
+ /**
350
+ * 翻译 requirement。
351
+ */
352
+ transRequirement(name, value) {
353
+ const r = this.requirementProvider.provideByZh(name);
354
+ if (r) {
355
+ if (r.values) {
356
+ for (const v of r.values) {
357
+ if (v.zh === value) {
358
+ return { name: r.en, value: v.en };
359
+ }
360
+ }
361
+ }
362
+ return {
363
+ name: r.en,
364
+ };
365
+ }
366
+ return undefined;
367
+ }
368
+ /**
369
+ * 翻译 requirement name。
370
+ */
371
+ transRequirementName(zhName) {
372
+ const r = this.requirementProvider.provideByZh(zhName);
373
+ return r?.en;
374
+ }
375
+ /**
376
+ * 翻译 requirement suffix。
377
+ */
378
+ transRequirementSuffix(suffix) {
379
+ const s = this.requirementProvider.provideSuffixByZh(suffix);
380
+ return s?.en;
381
+ }
382
+ /**
383
+ * 翻译词缀
384
+ */
385
+ transMod(zhMod) {
386
+ if (zhMod.startsWith(this.influenceStatPrefix1.zh)) {
387
+ const subMod = this.transModInner(zhMod.substring(this.influenceStatPrefix1.zh.length));
388
+ if (subMod) {
389
+ return this.influenceStatPrefix1.en + subMod;
390
+ }
391
+ }
392
+ else if (zhMod.startsWith(this.influenceStatPrefix2.zh)) {
393
+ const subMod = this.transModInner(zhMod.substring(this.influenceStatPrefix2.zh.length));
394
+ if (subMod) {
395
+ return this.influenceStatPrefix2.en + subMod;
396
+ }
397
+ }
398
+ return this.transModInner(zhMod);
399
+ }
400
+ transModInner(zhMod) {
401
+ const skeleton = getTextSkeleton(zhMod);
402
+ const stats = this.statProvider.provideByZhSkeleton(skeleton);
403
+ if (stats) {
404
+ for (const stat of stats) {
405
+ const result = this.doTransMod(stat, zhMod);
406
+ if (result) {
407
+ return result;
408
+ }
409
+ }
410
+ }
411
+ else {
412
+ const referenceStats = this.statProvider.provideReferenceStats();
413
+ for (const stat of referenceStats) {
414
+ const result = this.doTransMod(stat, zhMod);
415
+ if (result) {
416
+ return result;
417
+ }
418
+ }
419
+ }
420
+ return undefined;
421
+ }
422
+ /**
423
+ * 翻译词缀参数
424
+ */
425
+ transStatParams(stat, posParams) {
426
+ // 引用的参数值需要进行翻译
427
+ if (stat.refs) {
428
+ for (const [key, refType] of Object.entries(stat.refs)) {
429
+ const pos = parseInt(key, 10);
430
+ if (refType === "anointed_passive") {
431
+ const zh = posParams.get(pos);
432
+ const en = this.transAnointed(zh);
433
+ if (en) {
434
+ posParams.set(pos, en);
435
+ }
436
+ }
437
+ else if (refType === "keystone_passive") {
438
+ const zh = posParams.get(pos);
439
+ const en = this.transKeystone(zh);
440
+ if (en) {
441
+ posParams.set(pos, en);
442
+ }
443
+ else {
444
+ console.warn(`untranslated keystone: ${zh}`);
445
+ }
446
+ }
447
+ else if (refType === "ascendant_passive") {
448
+ const zh = posParams.get(pos);
449
+ const en = this.transAscendant(zh);
450
+ if (en) {
451
+ posParams.set(pos, en);
452
+ }
453
+ else {
454
+ console.warn(`untranslated ascendant: ${zh}`);
455
+ }
456
+ }
457
+ else if (refType === "display_indexable_support") {
458
+ const zh = posParams.get(0);
459
+ const en = this.transIndexableSupports(zh);
460
+ if (en) {
461
+ posParams.set(0, en);
462
+ }
463
+ else {
464
+ console.warn(`untranslated indexable_support: ${zh}`);
465
+ }
466
+ }
467
+ else if (refType === "display_indexable_skill") {
468
+ const zh = posParams.get(0);
469
+ const en = this.transSkill(zh);
470
+ if (en) {
471
+ posParams.set(0, en);
472
+ }
473
+ else {
474
+ console.warn(`untranslated indexable_skill: ${zh}`);
475
+ }
476
+ }
477
+ }
478
+ }
479
+ }
480
+ doTransMod(stat, zhMod) {
481
+ if (zhMod === stat.zh) {
482
+ return stat.en;
483
+ }
484
+ const zhTmpl = new Template(stat.zh);
485
+ const posParams = zhTmpl.parseParams(zhMod);
486
+ // 不匹配
487
+ if (posParams === undefined) {
488
+ return undefined;
489
+ }
490
+ this.transStatParams(stat, posParams);
491
+ const enTmpl = new Template(stat.en);
492
+ return enTmpl.render(posParams);
493
+ }
494
+ /**
495
+ * 翻译 multiline mod。
496
+ *
497
+ * 该方法用于文本翻译,使用贪婪法推断 lines 中可能存在的以首行为首的 multiline mod。
498
+ *
499
+ * @returns {result,lines}, 翻译结果, multiline mod 的行数
500
+ * @returns undefined, 无匹配
501
+ */
502
+ transMultilineMod(lines) {
503
+ const skeleton = getTextSkeleton(lines[0]);
504
+ const entry = this.statProvider.provideByFirstLineZhSkeleton(skeleton);
505
+ if (entry) {
506
+ for (const multilineStat of entry.stats) {
507
+ const lineSize = multilineStat.lineSize;
508
+ if (multilineStat.lineSize > lines.length) {
509
+ continue;
510
+ }
511
+ const stat = multilineStat.stat;
512
+ const mod = lines.slice(0, lineSize).join(LINE_SEPARATOR);
513
+ if (getTextSkeleton(stat.zh) === getTextSkeleton(mod)) {
514
+ const result = this.doTransMod(stat, mod);
515
+ if (result) {
516
+ return {
517
+ result: result,
518
+ lineCount: lineSize,
519
+ };
520
+ }
521
+ }
522
+ }
523
+ }
524
+ else {
525
+ const stats = this.statProvider.provideMultilineReferenceStats();
526
+ for (const stat of stats) {
527
+ if (lines.length < stat.lineSize) {
528
+ continue;
529
+ }
530
+ const result = this.doTransMod(stat.stat, lines.slice(0, stat.lineSize).join(LINE_SEPARATOR));
531
+ if (result) {
532
+ return {
533
+ result: result,
534
+ lineCount: stat.lineSize,
535
+ };
536
+ }
537
+ }
538
+ }
539
+ return undefined;
540
+ }
541
+ }
542
+ //# sourceMappingURL=basic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../src/translator/zh2en/basic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { BasicTranslator } from "./basic.js";
2
+ import { JsonTranslator } from "./json.js";
3
+ import { TextTranslator } from "./text.js";
4
+ export declare class TranslatorFactory {
5
+ private basicTranslator;
6
+ constructor();
7
+ getBasicTranslator(): BasicTranslator;
8
+ getJsonTranslator(): JsonTranslator;
9
+ getTextTranslator(): TextTranslator;
10
+ }
11
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/translator/zh2en/factory.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG3C,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,eAAe,CAAkB;;IAwBzC,kBAAkB,IAAI,eAAe;IAGrC,iBAAiB,IAAI,cAAc;IAGnC,iBAAiB,IAAI,cAAc;CAGtC"}
@@ -0,0 +1,35 @@
1
+ import { BaseTypeProvider } from "./provider/base_type.js";
2
+ import { RequirementProvider } from "./provider/requirement.js";
3
+ import { PropertyProvider } from "./provider/property.js";
4
+ import { SkillProvider } from "./provider/skill.js";
5
+ import { PassiveSkillProvider } from "./provider/passive_skill.js";
6
+ import { StatProvider } from "./provider/stat.js";
7
+ import { AttributeProvider } from "./provider/attribute.js";
8
+ import { BasicTranslator } from "./basic.js";
9
+ import { JsonTranslator } from "./json.js";
10
+ import { TextTranslator } from "./text.js";
11
+ import { StringProvider } from "./provider/sting.js";
12
+ export class TranslatorFactory {
13
+ basicTranslator;
14
+ constructor() {
15
+ const attributeProvider = new AttributeProvider();
16
+ const baseTypeProvider = new BaseTypeProvider();
17
+ const requirementProvider = new RequirementProvider();
18
+ const propertyProvider = new PropertyProvider();
19
+ const passiveSkillProvider = new PassiveSkillProvider();
20
+ const skillProvider = new SkillProvider();
21
+ const statProvider = new StatProvider();
22
+ const stringProvider = new StringProvider();
23
+ this.basicTranslator = new BasicTranslator(attributeProvider, baseTypeProvider, passiveSkillProvider, propertyProvider, requirementProvider, skillProvider, statProvider, stringProvider);
24
+ }
25
+ getBasicTranslator() {
26
+ return this.basicTranslator;
27
+ }
28
+ getJsonTranslator() {
29
+ return new JsonTranslator(this.basicTranslator);
30
+ }
31
+ getTextTranslator() {
32
+ return new TextTranslator(this.basicTranslator);
33
+ }
34
+ }
35
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/translator/zh2en/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,OAAO,iBAAiB;IAClB,eAAe,CAAkB;IAEzC;QACI,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAClD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAChD,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAChD,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACxD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAE5C,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CACtC,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,cAAc,CACjB,CAAC;IACN,CAAC;IAED,kBAAkB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IACD,iBAAiB;QACb,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpD,CAAC;IACD,iBAAiB;QACb,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpD,CAAC;CACJ"}
@@ -0,0 +1,6 @@
1
+ import { BasicTranslator } from "./basic.js";
2
+ import { TranslatorFactory } from "./factory.js";
3
+ import { JsonTranslator } from "./json.js";
4
+ import { TextTranslator } from "./text.js";
5
+ export { BasicTranslator, TranslatorFactory, JsonTranslator, TextTranslator };
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/translator/zh2en/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { BasicTranslator } from "./basic.js";
2
+ import { TranslatorFactory } from "./factory.js";
3
+ import { JsonTranslator } from "./json.js";
4
+ import { TextTranslator } from "./text.js";
5
+ export { BasicTranslator, TranslatorFactory, JsonTranslator, TextTranslator };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/translator/zh2en/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}