@theia/localization-manager 1.28.0-next.7 → 1.28.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.
@@ -14,6 +14,8 @@ export declare class LocalizationManager {
14
14
  localize(options: LocalizationOptions): Promise<void>;
15
15
  protected translationFileName(original: string, language: string): string;
16
16
  translateLanguage(source: Localization, target: Localization, targetLanguage: string, options: LocalizationOptions): Promise<void>;
17
+ protected addIgnoreTags(text: string): string;
18
+ protected removeIgnoreTags(text: string): string;
17
19
  protected buildLocalizationMap(source: Localization, target: Localization): LocalizationMap;
18
20
  }
19
21
  export interface LocalizationMap {
@@ -1 +1 @@
1
- {"version":3,"file":"localization-manager.d.ts","sourceRoot":"","sources":["../src/localization-manager.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,YAAY,EAAoB,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAiB,eAAe,EAA2C,MAAM,aAAa,CAAC;AAE7G,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,oBAAY,oBAAoB,GAAG,CAAC,UAAU,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAEtF,qBAAa,mBAAmB;IAEhB,OAAO,CAAC,cAAc;gBAAd,cAAc,eAAQ;IAEpC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C3D,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAMnE,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBxI,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,eAAe;CAoC9F;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACnD"}
1
+ {"version":3,"file":"localization-manager.d.ts","sourceRoot":"","sources":["../src/localization-manager.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,YAAY,EAAoB,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAiB,eAAe,EAA2C,MAAM,aAAa,CAAC;AAE7G,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,oBAAY,oBAAoB,GAAG,CAAC,UAAU,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAEtF,qBAAa,mBAAmB;IAEhB,OAAO,CAAC,cAAc;gBAAd,cAAc,eAAQ;IAEpC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C3D,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAMnE,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBxI,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI7C,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIhD,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,eAAe;CAoC9F;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACnD"}
@@ -85,10 +85,12 @@ class LocalizationManager {
85
85
  free_api: options.freeApi,
86
86
  target_lang: targetLanguage.toUpperCase(),
87
87
  source_lang: (_a = options.sourceLanguage) === null || _a === void 0 ? void 0 : _a.toUpperCase(),
88
- text: map.text
88
+ text: map.text.map(e => this.addIgnoreTags(e)),
89
+ tag_handling: ['xml'],
90
+ ignore_tags: ['x']
89
91
  });
90
92
  translationResponse.translations.forEach(({ text }, i) => {
91
- map.localize(i, text);
93
+ map.localize(i, this.removeIgnoreTags(text));
92
94
  });
93
95
  console.log(chalk.green(`Successfully translated ${map.text.length} value${map.text.length > 1 ? 's' : ''} for language "${targetLanguage}"`));
94
96
  }
@@ -100,6 +102,12 @@ class LocalizationManager {
100
102
  console.log(`No translation necessary for language "${targetLanguage}"`);
101
103
  }
102
104
  }
105
+ addIgnoreTags(text) {
106
+ return text.replace(/(\{\d*\})/g, '<x>$1</x>');
107
+ }
108
+ removeIgnoreTags(text) {
109
+ return text.replace(/<x>(\{\d+\})<\/x>/g, '$1');
110
+ }
103
111
  buildLocalizationMap(source, target) {
104
112
  const functionMap = new Map();
105
113
  const text = [];
@@ -1 +1 @@
1
- {"version":3,"file":"localization-manager.js","sourceRoot":"","sources":["../src/localization-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"localization-manager.js","sourceRoot":"","sources":["../src/localization-manager.ts"],"names":[],"mappings":"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"}
@@ -71,5 +71,15 @@ describe('localization-manager#translateLanguage', () => {
71
71
  a: 'b'
72
72
  });
73
73
  });
74
+ it('should keep placeholders intact', async () => {
75
+ const input = {
76
+ key: '{1} {0}'
77
+ };
78
+ const target = {};
79
+ await manager.translateLanguage(input, target, 'EN', defaultOptions);
80
+ assert.deepStrictEqual(target, {
81
+ key: '[{1} {0}]'
82
+ });
83
+ });
74
84
  });
75
85
  //# sourceMappingURL=localization-manager.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"localization-manager.spec.js","sourceRoot":"","sources":["../src/localization-manager.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;AAEhF,iCAAiC;AAEjC,iEAAkF;AAElF,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAEpD,KAAK,UAAU,gBAAgB,CAAC,UAA2B;QACvD,OAAO;YACH,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACxC,wBAAwB,EAAE,EAAE;gBAC5B,IAAI,EAAE,IAAI,KAAK,GAAG;aACrB,CAAC,CAAC;SACN,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,0CAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAwB;QACxC,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,EAAE;QACd,eAAe,EAAE,CAAC,IAAI,CAAC;KAC1B,CAAC;IAEF,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,KAAK,GAAG;YACV,GAAG,EAAE,OAAO;SACf,CAAC;QACF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,GAAG,EAAE,SAAS;SACjB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,KAAK,GAAG;YACV,CAAC,EAAE;gBACC,CAAC,EAAE,GAAG;aACT;YACD,CAAC,EAAE,GAAG;SACT,CAAC;QACF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,CAAC,EAAE;gBACC,CAAC,EAAE,KAAK;aACX;YACD,CAAC,EAAE,KAAK;SACX,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,KAAK,GAAG;YACV,CAAC,EAAE,GAAG;SACT,CAAC;QACF,MAAM,MAAM,GAAG;YACX,CAAC,EAAE,GAAG;SACT,CAAC;QACF,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,CAAC,EAAE,GAAG;SACT,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"localization-manager.spec.js","sourceRoot":"","sources":["../src/localization-manager.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;AAEhF,iCAAiC;AAEjC,iEAAkF;AAElF,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAEpD,KAAK,UAAU,gBAAgB,CAAC,UAA2B;QACvD,OAAO;YACH,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACxC,wBAAwB,EAAE,EAAE;gBAC5B,IAAI,EAAE,IAAI,KAAK,GAAG;aACrB,CAAC,CAAC;SACN,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,0CAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAwB;QACxC,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,EAAE;QACd,eAAe,EAAE,CAAC,IAAI,CAAC;KAC1B,CAAC;IAEF,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,KAAK,GAAG;YACV,GAAG,EAAE,OAAO;SACf,CAAC;QACF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,GAAG,EAAE,SAAS;SACjB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,KAAK,GAAG;YACV,CAAC,EAAE;gBACC,CAAC,EAAE,GAAG;aACT;YACD,CAAC,EAAE,GAAG;SACT,CAAC;QACF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,CAAC,EAAE;gBACC,CAAC,EAAE,KAAK;aACX;YACD,CAAC,EAAE,KAAK;SACX,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,KAAK,GAAG;YACV,CAAC,EAAE,GAAG;SACT,CAAC;QACF,MAAM,MAAM,GAAG;YACX,CAAC,EAAE,GAAG;SACT,CAAC;QACF,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,CAAC,EAAE,GAAG;SACT,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,KAAK,GAAG;YACV,GAAG,EAAE,SAAS;SACjB,CAAC;QACF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC3B,GAAG,EAAE,WAAW;SACnB,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/localization-manager",
3
- "version": "1.28.0-next.7+3b689e0b4f3",
3
+ "version": "1.28.0",
4
4
  "description": "Theia localization manager API.",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -39,10 +39,10 @@
39
39
  "typescript": "~4.5.5"
40
40
  },
41
41
  "devDependencies": {
42
- "@theia/ext-scripts": "1.27.0"
42
+ "@theia/ext-scripts": "1.28.0"
43
43
  },
44
44
  "nyc": {
45
45
  "extends": "../../configs/nyc.json"
46
46
  },
47
- "gitHead": "3b689e0b4f37844f674b26fc9b2c4d735b0115fd"
47
+ "gitHead": "79d58c87a7bd76f435000a2ac59803b04e1c78be"
48
48
  }
@@ -77,4 +77,15 @@ describe('localization-manager#translateLanguage', () => {
77
77
  a: 'b'
78
78
  });
79
79
  });
80
+
81
+ it('should keep placeholders intact', async () => {
82
+ const input = {
83
+ key: '{1} {0}'
84
+ };
85
+ const target = {};
86
+ await manager.translateLanguage(input, target, 'EN', defaultOptions);
87
+ assert.deepStrictEqual(target, {
88
+ key: '[{1} {0}]'
89
+ });
90
+ });
80
91
  });
@@ -92,10 +92,12 @@ export class LocalizationManager {
92
92
  free_api: options.freeApi,
93
93
  target_lang: targetLanguage.toUpperCase() as DeeplLanguage,
94
94
  source_lang: options.sourceLanguage?.toUpperCase() as DeeplLanguage,
95
- text: map.text
95
+ text: map.text.map(e => this.addIgnoreTags(e)),
96
+ tag_handling: ['xml'],
97
+ ignore_tags: ['x']
96
98
  });
97
99
  translationResponse.translations.forEach(({ text }, i) => {
98
- map.localize(i, text);
100
+ map.localize(i, this.removeIgnoreTags(text));
99
101
  });
100
102
  console.log(chalk.green(`Successfully translated ${map.text.length} value${map.text.length > 1 ? 's' : ''} for language "${targetLanguage}"`));
101
103
  } catch (e) {
@@ -106,6 +108,14 @@ export class LocalizationManager {
106
108
  }
107
109
  }
108
110
 
111
+ protected addIgnoreTags(text: string): string {
112
+ return text.replace(/(\{\d*\})/g, '<x>$1</x>');
113
+ }
114
+
115
+ protected removeIgnoreTags(text: string): string {
116
+ return text.replace(/<x>(\{\d+\})<\/x>/g, '$1');
117
+ }
118
+
109
119
  protected buildLocalizationMap(source: Localization, target: Localization): LocalizationMap {
110
120
  const functionMap = new Map<number, (value: string) => void>();
111
121
  const text: string[] = [];