From 897fa197d0ddf24262663b3f990894088ee310e7 Mon Sep 17 00:00:00 2001 From: Luka Cetina Date: Tue, 5 Feb 2019 10:57:11 +0100 Subject: [PATCH 1/2] Upgraded i18next to v14.0.1 Changed all references of i18next.TranslationFunction to i18next.TFunction Changed all references of i18next.TranslationOptions to i18next.TOptions Removed compatibilityAPI from settings Changed i18next.init() to i18next.createInstance() --- dist/amd/aurelia-i18n.js | 3 +-- dist/aurelia-i18n.d.ts | 9 +++++---- dist/commonjs/aurelia-i18n.js | 3 +-- dist/es2015/aurelia-i18n.js | 3 +-- dist/es2017/aurelia-i18n.js | 3 +-- dist/native-modules/aurelia-i18n.js | 3 +-- dist/system/aurelia-i18n.js | 3 +-- dist/umd/aurelia-i18n.js | 3 +-- package-lock.json | 19 ++++++++++++++----- package.json | 4 ++-- src/i18n.ts | 9 ++++----- src/t/t-value-converter.ts | 2 +- 12 files changed, 33 insertions(+), 31 deletions(-) diff --git a/dist/amd/aurelia-i18n.js b/dist/amd/aurelia-i18n.js index e01348e8..8631b92f 100644 --- a/dist/amd/aurelia-i18n.js +++ b/dist/amd/aurelia-i18n.js @@ -78,7 +78,6 @@ define('aurelia-i18n', ['exports', 'i18next', 'aurelia-logging', 'aurelia-depend return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -86,7 +85,7 @@ define('aurelia-i18n', ['exports', 'i18next', 'aurelia-logging', 'aurelia-depend debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/aurelia-i18n.d.ts b/dist/aurelia-i18n.d.ts index 57018dd4..469764ae 100644 --- a/dist/aurelia-i18n.d.ts +++ b/dist/aurelia-i18n.d.ts @@ -4,6 +4,7 @@ import { EventAggregator } from 'aurelia-event-aggregator'; import { FrameworkConfiguration } from 'aurelia-framework'; import { Loader } from 'aurelia-loader'; import { BindingSignaler, SignalBindingBehavior } from 'aurelia-templating-resources'; +import { i18next } from 'i18next'; export interface AureliaEnhancedOptions extends i18next.InitOptions { attributes?: string[]; @@ -28,12 +29,12 @@ export declare class I18N { constructor(ea: EventAggregator, signaler: BindingSignaler); setup(options?: AureliaEnhancedOptions & i18next.InitOptions): Promise; i18nextReady(): Promise; - setLocale(locale: string): Promise; + setLocale(locale: string): Promise; getLocale(): string; nf(options?: Intl.NumberFormatOptions, locales?: string | string[]): Intl.NumberFormat; uf(numberLike: string, locale?: string): number; df(options?: Intl.DateTimeFormatOptions, locales?: string | string[]): Intl.DateTimeFormat; - tr(key: string | string[], options?: i18next.TranslationOptions): any; + tr(key: string | string[], options?: i18next.TOptions): string; registerGlobalVariable(key: string, value: any): void; unregisterGlobalVariable(key: string): void; /** @@ -170,6 +171,6 @@ export declare class TValueConverter { private service; static inject(): (typeof I18N)[]; constructor(service: I18N); - toView(value: any, options?: i18next.TranslationOptions): any; + toView(value: any, options?: i18next.TOptions): string; } -export declare function configure(frameworkConfig: FrameworkConfiguration, cb: (instance: I18N) => AureliaEnhancedI18Next): AureliaEnhancedI18Next; \ No newline at end of file +export declare function configure(frameworkConfig: FrameworkConfiguration, cb: (instance: I18N) => AureliaEnhancedI18Next): AureliaEnhancedI18Next; diff --git a/dist/commonjs/aurelia-i18n.js b/dist/commonjs/aurelia-i18n.js index f615d553..3a780b01 100644 --- a/dist/commonjs/aurelia-i18n.js +++ b/dist/commonjs/aurelia-i18n.js @@ -91,7 +91,6 @@ var I18N = /** @class */ (function () { return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -99,7 +98,7 @@ var I18N = /** @class */ (function () { debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/es2015/aurelia-i18n.js b/dist/es2015/aurelia-i18n.js index 204ae7ea..be40e95d 100644 --- a/dist/es2015/aurelia-i18n.js +++ b/dist/es2015/aurelia-i18n.js @@ -54,7 +54,6 @@ class I18N { return __awaiter(this, void 0, void 0, function* () { const defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -62,7 +61,7 @@ class I18N { debug: false }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.init(options || defaultOptions, (err) => { + this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { if (err) { reject(err); } diff --git a/dist/es2017/aurelia-i18n.js b/dist/es2017/aurelia-i18n.js index efa09869..9979bd82 100644 --- a/dist/es2017/aurelia-i18n.js +++ b/dist/es2017/aurelia-i18n.js @@ -22,7 +22,6 @@ class I18N { async setup(options) { const defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -30,7 +29,7 @@ class I18N { debug: false }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.init(options || defaultOptions, (err) => { + this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { if (err) { reject(err); } diff --git a/dist/native-modules/aurelia-i18n.js b/dist/native-modules/aurelia-i18n.js index 8fdd7c57..faa53c32 100644 --- a/dist/native-modules/aurelia-i18n.js +++ b/dist/native-modules/aurelia-i18n.js @@ -85,7 +85,6 @@ var I18N = /** @class */ (function () { return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -93,7 +92,7 @@ var I18N = /** @class */ (function () { debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/system/aurelia-i18n.js b/dist/system/aurelia-i18n.js index a0cc8fb9..2b7ca8c7 100644 --- a/dist/system/aurelia-i18n.js +++ b/dist/system/aurelia-i18n.js @@ -109,7 +109,6 @@ System.register(['i18next', 'aurelia-logging', 'aurelia-dependency-injection', ' return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -117,7 +116,7 @@ System.register(['i18next', 'aurelia-logging', 'aurelia-dependency-injection', ' debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/umd/aurelia-i18n.js b/dist/umd/aurelia-i18n.js index c05abab1..118a1bdf 100644 --- a/dist/umd/aurelia-i18n.js +++ b/dist/umd/aurelia-i18n.js @@ -51,7 +51,6 @@ return __awaiter(this, void 0, void 0, function* () { const defaultOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -59,7 +58,7 @@ debug: false }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.init(options || defaultOptions, (err) => { + this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { if (err) { reject(err); } diff --git a/package-lock.json b/package-lock.json index 9887b15c..752f2702 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "aurelia-i18n", - "version": "3.0.0-beta.2", + "version": "3.0.0-beta.5", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -3360,7 +3360,10 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/full-icu/-/full-icu-1.2.1.tgz", "integrity": "sha512-E2s1b4GVbt8PyG+iaRN6ks8N0Oy2LOJz7SIMUwWWWx7Mr5Z08hKkfpkKQbOtOGqzkFpckDJHjjZ8qfigN2W86A==", - "dev": true + "dev": true, + "requires": { + "icu4c-data": "^0.63.2" + } }, "function-bind": { "version": "1.1.1", @@ -3849,9 +3852,9 @@ } }, "i18next": { - "version": "11.6.0", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-11.6.0.tgz", - "integrity": "sha512-+eOdu1laoPX8l3zuaEFpf0MPYqAyKeX46WEjRkpPLp0TcijP3ww6NrDCPcRwX3yKB69R+ggiLvLGzCm8ALaVXQ==" + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-14.0.1.tgz", + "integrity": "sha512-wsKfQuYsy4RdCaqqN71eDjWMhizhTfQSIBGttEA7vcboQrUfpQlCezrSzrtmoW9F9tmVyNs38iBgLYLMhRSeIQ==" }, "iconv-lite": { "version": "0.4.23", @@ -3862,6 +3865,12 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "icu4c-data": { + "version": "0.63.2", + "resolved": "https://registry.npmjs.org/icu4c-data/-/icu4c-data-0.63.2.tgz", + "integrity": "sha512-vT6/47CcBzDemlhRzkL7dZLoNvuUWjjiuKZHMt5T4dbkKAqLBh7ZQ33GU13ecC/aIcMlIdBOqtF4uIYTgWML4Q==", + "dev": true + }, "import-local": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", diff --git a/package.json b/package.json index fbbe0753..a535a238 100644 --- a/package.json +++ b/package.json @@ -112,7 +112,7 @@ "aurelia-pal": "^1.3.0", "aurelia-templating": "^1.8.2", "aurelia-templating-resources": "^1.7.1", - "i18next": "^11.6.0" + "i18next": "^14.0.1" } }, "dependencies": { @@ -125,7 +125,7 @@ "aurelia-pal": "^1.3.0", "aurelia-templating": "^1.8.2", "aurelia-templating-resources": "^1.7.1", - "i18next": "^11.6.0" + "i18next": "^14.0.1" }, "devDependencies": { "@types/i18next": "^8.4.5", diff --git a/src/i18n.ts b/src/i18n.ts index 62ec8a1a..7d8fb99a 100644 --- a/src/i18n.ts +++ b/src/i18n.ts @@ -39,9 +39,8 @@ export class I18N { } public async setup(options?: AureliaEnhancedOptions & i18next.InitOptions) { - const defaultOptions = { + const defaultOptions: AureliaEnhancedOptions & i18next.InitOptions = { skipTranslationOnMissingKey: false, - compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -50,7 +49,7 @@ export class I18N { }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.init(options || defaultOptions, (err) => { + this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { if (err) { reject(err); } @@ -71,7 +70,7 @@ export class I18N { return this.i18nextDeferred; } - public setLocale(locale: string): Promise { + public setLocale(locale: string): Promise { return new Promise((resolve, reject) => { const oldLocale = this.getLocale(); this.i18next.changeLanguage(locale, (err, tr) => { @@ -120,7 +119,7 @@ export class I18N { return new this.Intl.DateTimeFormat(locales || this.getLocale(), options); } - public tr(key: string | string[], options?: i18next.TranslationOptions) { + public tr(key: string | string[], options?: i18next.TOptions) { let fullOptions = this.globalVars; if (options !== undefined) { diff --git a/src/t/t-value-converter.ts b/src/t/t-value-converter.ts index c927b406..b0572c02 100644 --- a/src/t/t-value-converter.ts +++ b/src/t/t-value-converter.ts @@ -9,7 +9,7 @@ export class TValueConverter { constructor(private service: I18N) { } - public toView(value: any, options?: i18next.TranslationOptions) { + public toView(value: any, options?: i18next.TOptions) { return this.service.tr(value, options); } } From 15c6dd23c1e5ef498ecc6a6d7d14920786a7ec72 Mon Sep 17 00:00:00 2001 From: Luka Cetina Date: Tue, 5 Feb 2019 19:55:37 +0100 Subject: [PATCH 2/2] reverted changes to dist files --- dist/amd/aurelia-i18n.js | 3 ++- dist/aurelia-i18n.d.ts | 9 ++++----- dist/commonjs/aurelia-i18n.js | 3 ++- dist/es2015/aurelia-i18n.js | 3 ++- dist/es2017/aurelia-i18n.js | 3 ++- dist/native-modules/aurelia-i18n.js | 3 ++- dist/system/aurelia-i18n.js | 3 ++- dist/umd/aurelia-i18n.js | 3 ++- 8 files changed, 18 insertions(+), 12 deletions(-) diff --git a/dist/amd/aurelia-i18n.js b/dist/amd/aurelia-i18n.js index 8631b92f..e01348e8 100644 --- a/dist/amd/aurelia-i18n.js +++ b/dist/amd/aurelia-i18n.js @@ -78,6 +78,7 @@ define('aurelia-i18n', ['exports', 'i18next', 'aurelia-logging', 'aurelia-depend return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -85,7 +86,7 @@ define('aurelia-i18n', ['exports', 'i18next', 'aurelia-logging', 'aurelia-depend debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/aurelia-i18n.d.ts b/dist/aurelia-i18n.d.ts index 469764ae..57018dd4 100644 --- a/dist/aurelia-i18n.d.ts +++ b/dist/aurelia-i18n.d.ts @@ -4,7 +4,6 @@ import { EventAggregator } from 'aurelia-event-aggregator'; import { FrameworkConfiguration } from 'aurelia-framework'; import { Loader } from 'aurelia-loader'; import { BindingSignaler, SignalBindingBehavior } from 'aurelia-templating-resources'; -import { i18next } from 'i18next'; export interface AureliaEnhancedOptions extends i18next.InitOptions { attributes?: string[]; @@ -29,12 +28,12 @@ export declare class I18N { constructor(ea: EventAggregator, signaler: BindingSignaler); setup(options?: AureliaEnhancedOptions & i18next.InitOptions): Promise; i18nextReady(): Promise; - setLocale(locale: string): Promise; + setLocale(locale: string): Promise; getLocale(): string; nf(options?: Intl.NumberFormatOptions, locales?: string | string[]): Intl.NumberFormat; uf(numberLike: string, locale?: string): number; df(options?: Intl.DateTimeFormatOptions, locales?: string | string[]): Intl.DateTimeFormat; - tr(key: string | string[], options?: i18next.TOptions): string; + tr(key: string | string[], options?: i18next.TranslationOptions): any; registerGlobalVariable(key: string, value: any): void; unregisterGlobalVariable(key: string): void; /** @@ -171,6 +170,6 @@ export declare class TValueConverter { private service; static inject(): (typeof I18N)[]; constructor(service: I18N); - toView(value: any, options?: i18next.TOptions): string; + toView(value: any, options?: i18next.TranslationOptions): any; } -export declare function configure(frameworkConfig: FrameworkConfiguration, cb: (instance: I18N) => AureliaEnhancedI18Next): AureliaEnhancedI18Next; +export declare function configure(frameworkConfig: FrameworkConfiguration, cb: (instance: I18N) => AureliaEnhancedI18Next): AureliaEnhancedI18Next; \ No newline at end of file diff --git a/dist/commonjs/aurelia-i18n.js b/dist/commonjs/aurelia-i18n.js index 3a780b01..f615d553 100644 --- a/dist/commonjs/aurelia-i18n.js +++ b/dist/commonjs/aurelia-i18n.js @@ -91,6 +91,7 @@ var I18N = /** @class */ (function () { return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -98,7 +99,7 @@ var I18N = /** @class */ (function () { debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/es2015/aurelia-i18n.js b/dist/es2015/aurelia-i18n.js index be40e95d..204ae7ea 100644 --- a/dist/es2015/aurelia-i18n.js +++ b/dist/es2015/aurelia-i18n.js @@ -54,6 +54,7 @@ class I18N { return __awaiter(this, void 0, void 0, function* () { const defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -61,7 +62,7 @@ class I18N { debug: false }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { + this.i18next = this.i18next.init(options || defaultOptions, (err) => { if (err) { reject(err); } diff --git a/dist/es2017/aurelia-i18n.js b/dist/es2017/aurelia-i18n.js index 9979bd82..efa09869 100644 --- a/dist/es2017/aurelia-i18n.js +++ b/dist/es2017/aurelia-i18n.js @@ -22,6 +22,7 @@ class I18N { async setup(options) { const defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -29,7 +30,7 @@ class I18N { debug: false }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { + this.i18next = this.i18next.init(options || defaultOptions, (err) => { if (err) { reject(err); } diff --git a/dist/native-modules/aurelia-i18n.js b/dist/native-modules/aurelia-i18n.js index faa53c32..8fdd7c57 100644 --- a/dist/native-modules/aurelia-i18n.js +++ b/dist/native-modules/aurelia-i18n.js @@ -85,6 +85,7 @@ var I18N = /** @class */ (function () { return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -92,7 +93,7 @@ var I18N = /** @class */ (function () { debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/system/aurelia-i18n.js b/dist/system/aurelia-i18n.js index 2b7ca8c7..a0cc8fb9 100644 --- a/dist/system/aurelia-i18n.js +++ b/dist/system/aurelia-i18n.js @@ -109,6 +109,7 @@ System.register(['i18next', 'aurelia-logging', 'aurelia-dependency-injection', ' return __generator(this, function (_a) { defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -116,7 +117,7 @@ System.register(['i18next', 'aurelia-logging', 'aurelia-dependency-injection', ' debug: false }; this.i18nextDeferred = new Promise(function (resolve, reject) { - _this.i18next = _this.i18next.createInstance(options || defaultOptions, function (err) { + _this.i18next = _this.i18next.init(options || defaultOptions, function (err) { if (err) { reject(err); } diff --git a/dist/umd/aurelia-i18n.js b/dist/umd/aurelia-i18n.js index 118a1bdf..c05abab1 100644 --- a/dist/umd/aurelia-i18n.js +++ b/dist/umd/aurelia-i18n.js @@ -51,6 +51,7 @@ return __awaiter(this, void 0, void 0, function* () { const defaultOptions = { skipTranslationOnMissingKey: false, + compatibilityAPI: "v1", compatibilityJSON: "v1", lng: "en", attributes: ["t", "i18n"], @@ -58,7 +59,7 @@ debug: false }; this.i18nextDeferred = new Promise((resolve, reject) => { - this.i18next = this.i18next.createInstance(options || defaultOptions, (err) => { + this.i18next = this.i18next.init(options || defaultOptions, (err) => { if (err) { reject(err); }