ngx-translate-multi-http-loader 9.1.1 → 9.1.3
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/README.md +2 -2
- package/esm2020/lib/multi-http-loader.mjs +2 -11
- package/fesm2015/ngx-translate-multi-http-loader.mjs +1 -10
- package/fesm2015/ngx-translate-multi-http-loader.mjs.map +1 -1
- package/fesm2020/ngx-translate-multi-http-loader.mjs +1 -10
- package/fesm2020/ngx-translate-multi-http-loader.mjs.map +1 -1
- package/lib/multi-http-loader.d.ts +0 -1
- package/package.json +1 -1
package/README.md
CHANGED
@@ -3,11 +3,11 @@
|
|
3
3
|
|
4
4
|
A loader for [ngx-translate](https://github.com/ngx-translate/core) that loads translations using http.
|
5
5
|
|
6
|
-
Angular
|
6
|
+
Angular 14 example: https://stackblitz.com/edit/ngx-translate-multi-http-loader-sample-2clau3?file=src/app/app.module.ts
|
7
7
|
|
8
8
|
Angular 6 example: https://stackblitz.com/edit/ngx-translate-multi-http-loader-sample
|
9
9
|
|
10
|
-
Get the complete changelog here: https://github.com/
|
10
|
+
Get the complete changelog here: https://github.com/rbalet/ngx-translate-multi-http-loader/releases
|
11
11
|
|
12
12
|
* [Installation](#installation)
|
13
13
|
* [Usage](#usage)
|
@@ -20,16 +20,7 @@ export class MultiTranslateHttpLoader {
|
|
20
20
|
return of({});
|
21
21
|
}));
|
22
22
|
});
|
23
|
-
return forkJoin(requests).pipe(map((response) =>
|
24
|
-
}
|
25
|
-
// @TODO : wait from https://github.com/RebeccaStevens/deepmerge-ts/issues/255 to be merged
|
26
|
-
_deepmergeAll(array) {
|
27
|
-
if (!Array.isArray(array)) {
|
28
|
-
return {};
|
29
|
-
}
|
30
|
-
return array.reduce((prev, next) => {
|
31
|
-
return deepmerge(prev, next);
|
32
|
-
}, {});
|
23
|
+
return forkJoin(requests).pipe(map((response) => deepmerge(...response)));
|
33
24
|
}
|
34
25
|
}
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktaHR0cC1sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tdWx0aS1odHRwLWxvYWRlci9zcmMvbGliL211bHRpLWh0dHAtbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUU5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxRQUFRLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFPaEQsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQyxZQUNVLFFBQXFCLEVBQ3JCLGdCQUFtRDtRQURuRCxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBbUM7SUFDMUQsQ0FBQztJQUVHLGNBQWMsQ0FBQyxJQUFZO1FBQ2hDLE1BQU0sUUFBUSxHQUE4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDakYsSUFBSSxJQUFZLENBQUE7WUFDaEIsSUFBSSxRQUFRLENBQUMsTUFBTTtnQkFBRSxJQUFJLEdBQUcsR0FBRyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxRQUFRLENBQUMsTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFBOztnQkFDL0UsSUFBSSxHQUFHLEdBQUcsUUFBUSxHQUFHLElBQUksT0FBTyxDQUFBO1lBRXJDLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ2pELFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLDBEQUEwRCxFQUFFLElBQUksQ0FBQyxDQUFBO2dCQUMvRSxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQkFDMUIsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDZixDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFFRixPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDM0UsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEJhY2tlbmQsIEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcclxuaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcclxuaW1wb3J0IHsgZGVlcG1lcmdlIH0gZnJvbSAnZGVlcG1lcmdlLXRzJ1xyXG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zbGF0aW9uUmVzb3VyY2Uge1xyXG4gIHByZWZpeDogc3RyaW5nXHJcbiAgc3VmZml4Pzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNdWx0aVRyYW5zbGF0ZUh0dHBMb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfaGFuZGxlcjogSHR0cEJhY2tlbmQsXHJcbiAgICBwcml2YXRlIF9yZXNvdXJjZXNQcmVmaXg6IHN0cmluZ1tdIHwgSVRyYW5zbGF0aW9uUmVzb3VyY2VbXSxcclxuICApIHt9XHJcblxyXG4gIHB1YmxpYyBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgcmVxdWVzdHM6IE9ic2VydmFibGU8T2JqZWN0IHwge30+W10gPSB0aGlzLl9yZXNvdXJjZXNQcmVmaXgubWFwKChyZXNvdXJjZSkgPT4ge1xyXG4gICAgICBsZXQgcGF0aDogc3RyaW5nXHJcbiAgICAgIGlmIChyZXNvdXJjZS5wcmVmaXgpIHBhdGggPSBgJHtyZXNvdXJjZS5wcmVmaXh9JHtsYW5nfSR7cmVzb3VyY2Uuc3VmZml4IHx8ICcuanNvbid9YFxyXG4gICAgICBlbHNlIHBhdGggPSBgJHtyZXNvdXJjZX0ke2xhbmd9Lmpzb25gXHJcblxyXG4gICAgICByZXR1cm4gbmV3IEh0dHBDbGllbnQodGhpcy5faGFuZGxlcikuZ2V0KHBhdGgpLnBpcGUoXHJcbiAgICAgICAgY2F0Y2hFcnJvcigocmVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdTb21ldGhpbmcgd2VudCB3cm9uZyBmb3IgdGhlIGZvbGxvd2luZyB0cmFuc2xhdGlvbiBmaWxlOicsIHBhdGgpXHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKHJlcy5tZXNzYWdlKVxyXG4gICAgICAgICAgcmV0dXJuIG9mKHt9KVxyXG4gICAgICAgIH0pLFxyXG4gICAgICApXHJcbiAgICB9KVxyXG5cclxuICAgIHJldHVybiBmb3JrSm9pbihyZXF1ZXN0cykucGlwZShtYXAoKHJlc3BvbnNlKSA9PiBkZWVwbWVyZ2UoLi4ucmVzcG9uc2UpKSlcclxuICB9XHJcbn1cclxuIl19
|
@@ -21,16 +21,7 @@ class MultiTranslateHttpLoader {
|
|
21
21
|
return of({});
|
22
22
|
}));
|
23
23
|
});
|
24
|
-
return forkJoin(requests).pipe(map((response) =>
|
25
|
-
}
|
26
|
-
// @TODO : wait from https://github.com/RebeccaStevens/deepmerge-ts/issues/255 to be merged
|
27
|
-
_deepmergeAll(array) {
|
28
|
-
if (!Array.isArray(array)) {
|
29
|
-
return {};
|
30
|
-
}
|
31
|
-
return array.reduce((prev, next) => {
|
32
|
-
return deepmerge(prev, next);
|
33
|
-
}, {});
|
24
|
+
return forkJoin(requests).pipe(map((response) => deepmerge(...response)));
|
34
25
|
}
|
35
26
|
}
|
36
27
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ngx-translate-multi-http-loader.mjs","sources":["../../../projects/multi-http-loader/src/lib/multi-http-loader.ts","../../../projects/multi-http-loader/src/ngx-translate-multi-http-loader.ts"],"sourcesContent":["import { HttpBackend, HttpClient } from '@angular/common/http'\r\nimport { TranslateLoader } from '@ngx-translate/core'\r\nimport { deepmerge } from 'deepmerge-ts'\r\nimport { forkJoin, Observable, of } from 'rxjs'\r\nimport { catchError, map } from 'rxjs/operators'\r\n\r\nexport interface ITranslationResource {\r\n prefix: string\r\n suffix?: string\r\n}\r\n\r\nexport class MultiTranslateHttpLoader implements TranslateLoader {\r\n constructor(\r\n private _handler: HttpBackend,\r\n private _resourcesPrefix: string[] | ITranslationResource[],\r\n ) {}\r\n\r\n public getTranslation(lang: string): Observable<any> {\r\n const requests: Observable<Object | {}>[] = this._resourcesPrefix.map((resource) => {\r\n let path: string\r\n if (resource.prefix) path = `${resource.prefix}${lang}${resource.suffix || '.json'}`\r\n else path = `${resource}${lang}.json`\r\n\r\n return new HttpClient(this._handler).get(path).pipe(\r\n catchError((res) => {\r\n console.error('Something went wrong for the following translation file:', path)\r\n console.error(res.message)\r\n return of({})\r\n }),\r\n )\r\n })\r\n\r\n return forkJoin(requests).pipe(map((response) =>
|
1
|
+
{"version":3,"file":"ngx-translate-multi-http-loader.mjs","sources":["../../../projects/multi-http-loader/src/lib/multi-http-loader.ts","../../../projects/multi-http-loader/src/ngx-translate-multi-http-loader.ts"],"sourcesContent":["import { HttpBackend, HttpClient } from '@angular/common/http'\r\nimport { TranslateLoader } from '@ngx-translate/core'\r\nimport { deepmerge } from 'deepmerge-ts'\r\nimport { forkJoin, Observable, of } from 'rxjs'\r\nimport { catchError, map } from 'rxjs/operators'\r\n\r\nexport interface ITranslationResource {\r\n prefix: string\r\n suffix?: string\r\n}\r\n\r\nexport class MultiTranslateHttpLoader implements TranslateLoader {\r\n constructor(\r\n private _handler: HttpBackend,\r\n private _resourcesPrefix: string[] | ITranslationResource[],\r\n ) {}\r\n\r\n public getTranslation(lang: string): Observable<any> {\r\n const requests: Observable<Object | {}>[] = this._resourcesPrefix.map((resource) => {\r\n let path: string\r\n if (resource.prefix) path = `${resource.prefix}${lang}${resource.suffix || '.json'}`\r\n else path = `${resource}${lang}.json`\r\n\r\n return new HttpClient(this._handler).get(path).pipe(\r\n catchError((res) => {\r\n console.error('Something went wrong for the following translation file:', path)\r\n console.error(res.message)\r\n return of({})\r\n }),\r\n )\r\n })\r\n\r\n return forkJoin(requests).pipe(map((response) => deepmerge(...response)))\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAWa,wBAAwB,CAAA;IACnC,WACU,CAAA,QAAqB,EACrB,gBAAmD,EAAA;AADnD,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAa;AACrB,QAAA,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAmC;KACzD;AAEG,IAAA,cAAc,CAAC,IAAY,EAAA;QAChC,MAAM,QAAQ,GAA8B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAI;AACjF,YAAA,IAAI,IAAY,CAAA;YAChB,IAAI,QAAQ,CAAC,MAAM;AAAE,gBAAA,IAAI,GAAG,CAAA,EAAG,QAAQ,CAAC,MAAM,CAAG,EAAA,IAAI,CAAG,EAAA,QAAQ,CAAC,MAAM,IAAI,OAAO,EAAE,CAAA;;AAC/E,gBAAA,IAAI,GAAG,CAAG,EAAA,QAAQ,CAAG,EAAA,IAAI,OAAO,CAAA;YAErC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CACjD,UAAU,CAAC,CAAC,GAAG,KAAI;AACjB,gBAAA,OAAO,CAAC,KAAK,CAAC,0DAA0D,EAAE,IAAI,CAAC,CAAA;AAC/E,gBAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC1B,gBAAA,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;aACd,CAAC,CACH,CAAA;AACH,SAAC,CAAC,CAAA;QAEF,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;KAC1E;AACF;;AClCD;;AAEG;;;;"}
|
@@ -21,16 +21,7 @@ class MultiTranslateHttpLoader {
|
|
21
21
|
return of({});
|
22
22
|
}));
|
23
23
|
});
|
24
|
-
return forkJoin(requests).pipe(map((response) =>
|
25
|
-
}
|
26
|
-
// @TODO : wait from https://github.com/RebeccaStevens/deepmerge-ts/issues/255 to be merged
|
27
|
-
_deepmergeAll(array) {
|
28
|
-
if (!Array.isArray(array)) {
|
29
|
-
return {};
|
30
|
-
}
|
31
|
-
return array.reduce((prev, next) => {
|
32
|
-
return deepmerge(prev, next);
|
33
|
-
}, {});
|
24
|
+
return forkJoin(requests).pipe(map((response) => deepmerge(...response)));
|
34
25
|
}
|
35
26
|
}
|
36
27
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ngx-translate-multi-http-loader.mjs","sources":["../../../projects/multi-http-loader/src/lib/multi-http-loader.ts","../../../projects/multi-http-loader/src/ngx-translate-multi-http-loader.ts"],"sourcesContent":["import { HttpBackend, HttpClient } from '@angular/common/http'\r\nimport { TranslateLoader } from '@ngx-translate/core'\r\nimport { deepmerge } from 'deepmerge-ts'\r\nimport { forkJoin, Observable, of } from 'rxjs'\r\nimport { catchError, map } from 'rxjs/operators'\r\n\r\nexport interface ITranslationResource {\r\n prefix: string\r\n suffix?: string\r\n}\r\n\r\nexport class MultiTranslateHttpLoader implements TranslateLoader {\r\n constructor(\r\n private _handler: HttpBackend,\r\n private _resourcesPrefix: string[] | ITranslationResource[],\r\n ) {}\r\n\r\n public getTranslation(lang: string): Observable<any> {\r\n const requests: Observable<Object | {}>[] = this._resourcesPrefix.map((resource) => {\r\n let path: string\r\n if (resource.prefix) path = `${resource.prefix}${lang}${resource.suffix || '.json'}`\r\n else path = `${resource}${lang}.json`\r\n\r\n return new HttpClient(this._handler).get(path).pipe(\r\n catchError((res) => {\r\n console.error('Something went wrong for the following translation file:', path)\r\n console.error(res.message)\r\n return of({})\r\n }),\r\n )\r\n })\r\n\r\n return forkJoin(requests).pipe(map((response) =>
|
1
|
+
{"version":3,"file":"ngx-translate-multi-http-loader.mjs","sources":["../../../projects/multi-http-loader/src/lib/multi-http-loader.ts","../../../projects/multi-http-loader/src/ngx-translate-multi-http-loader.ts"],"sourcesContent":["import { HttpBackend, HttpClient } from '@angular/common/http'\r\nimport { TranslateLoader } from '@ngx-translate/core'\r\nimport { deepmerge } from 'deepmerge-ts'\r\nimport { forkJoin, Observable, of } from 'rxjs'\r\nimport { catchError, map } from 'rxjs/operators'\r\n\r\nexport interface ITranslationResource {\r\n prefix: string\r\n suffix?: string\r\n}\r\n\r\nexport class MultiTranslateHttpLoader implements TranslateLoader {\r\n constructor(\r\n private _handler: HttpBackend,\r\n private _resourcesPrefix: string[] | ITranslationResource[],\r\n ) {}\r\n\r\n public getTranslation(lang: string): Observable<any> {\r\n const requests: Observable<Object | {}>[] = this._resourcesPrefix.map((resource) => {\r\n let path: string\r\n if (resource.prefix) path = `${resource.prefix}${lang}${resource.suffix || '.json'}`\r\n else path = `${resource}${lang}.json`\r\n\r\n return new HttpClient(this._handler).get(path).pipe(\r\n catchError((res) => {\r\n console.error('Something went wrong for the following translation file:', path)\r\n console.error(res.message)\r\n return of({})\r\n }),\r\n )\r\n })\r\n\r\n return forkJoin(requests).pipe(map((response) => deepmerge(...response)))\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAWa,wBAAwB,CAAA;IACnC,WACU,CAAA,QAAqB,EACrB,gBAAmD,EAAA;QADnD,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAa;QACrB,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAmC;KACzD;AAEG,IAAA,cAAc,CAAC,IAAY,EAAA;QAChC,MAAM,QAAQ,GAA8B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAI;AACjF,YAAA,IAAI,IAAY,CAAA;YAChB,IAAI,QAAQ,CAAC,MAAM;AAAE,gBAAA,IAAI,GAAG,CAAA,EAAG,QAAQ,CAAC,MAAM,CAAG,EAAA,IAAI,CAAG,EAAA,QAAQ,CAAC,MAAM,IAAI,OAAO,EAAE,CAAA;;AAC/E,gBAAA,IAAI,GAAG,CAAG,EAAA,QAAQ,CAAG,EAAA,IAAI,OAAO,CAAA;YAErC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CACjD,UAAU,CAAC,CAAC,GAAG,KAAI;AACjB,gBAAA,OAAO,CAAC,KAAK,CAAC,0DAA0D,EAAE,IAAI,CAAC,CAAA;AAC/E,gBAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC1B,gBAAA,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;aACd,CAAC,CACH,CAAA;AACH,SAAC,CAAC,CAAA;QAEF,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;KAC1E;AACF;;AClCD;;AAEG;;;;"}
|
@@ -10,5 +10,4 @@ export declare class MultiTranslateHttpLoader implements TranslateLoader {
|
|
10
10
|
private _resourcesPrefix;
|
11
11
|
constructor(_handler: HttpBackend, _resourcesPrefix: string[] | ITranslationResource[]);
|
12
12
|
getTranslation(lang: string): Observable<any>;
|
13
|
-
private _deepmergeAll;
|
14
13
|
}
|