@stemy/backend 3.5.4 → 3.5.7

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.
@@ -7,25 +7,48 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { injectable, singleton } from "tsyringe";
10
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
11
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
12
+ return new (P || (P = Promise))(function (resolve, reject) {
13
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
14
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
15
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
16
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
17
+ });
18
+ };
19
+ import { singleton } from "tsyringe";
11
20
  import axios from "axios";
21
+ import { isObject } from "../utils";
12
22
  import { Configuration } from "./configuration";
23
+ import { Cache } from "./cache";
13
24
  let TranslationProvider = class TranslationProvider {
14
- constructor(config) {
25
+ constructor(config, cache) {
15
26
  this.config = config;
16
- this.cache = {};
27
+ this.cache = cache;
17
28
  }
18
29
  getDictionary(language) {
19
- this.cache[language] = this.cache[language] || axios.get(this.config.resolve("translationsTemplate").replace(`[lang]`, language)).then(r => r.data, reason => ({
20
- message: reason
21
- }));
22
- return this.cache[language];
30
+ return this.cache.getOrSet(`translations-${language}`, () => __awaiter(this, void 0, void 0, function* () {
31
+ try {
32
+ const url = this.config.resolve("translationsTemplate")
33
+ .replace(`__lang__`, language)
34
+ .replace(`[lang]`, language);
35
+ const data = yield axios.get(url).then(t => t.data);
36
+ if (isObject(data[language])) {
37
+ return data[language];
38
+ }
39
+ return data;
40
+ }
41
+ catch (e) {
42
+ return {
43
+ message: `${e}`
44
+ };
45
+ }
46
+ }), 5 * 60);
23
47
  }
24
48
  };
25
49
  TranslationProvider = __decorate([
26
- injectable(),
27
50
  singleton(),
28
- __metadata("design:paramtypes", [Configuration])
51
+ __metadata("design:paramtypes", [Configuration, Cache])
29
52
  ], TranslationProvider);
30
53
  export { TranslationProvider };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvdHJhbnNsYXRpb24tcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDL0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztJQUtqQyxtQkFBbUIsU0FBbkIsbUJBQW1CO0lBSTVCLFlBQXFCLE1BQXFCO1FBQXJCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxRQUFnQjtRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2xJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFDWCxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDUCxPQUFPLEVBQUUsTUFBTTtTQUNsQixDQUFDLENBQ0wsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO0NBQ0osQ0FBQTtBQWpCWSxtQkFBbUI7SUFGL0IsVUFBVSxFQUFFO0lBQ1osU0FBUyxFQUFFO3FDQUtxQixhQUFhO0dBSmpDLG1CQUFtQixDQWlCL0I7U0FqQlksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3RhYmxlLCBzaW5nbGV0b259IGZyb20gXCJ0c3lyaW5nZVwiO1xyXG5pbXBvcnQgYXhpb3MgZnJvbSBcImF4aW9zXCI7XHJcbmltcG9ydCB7Q29uZmlndXJhdGlvbn0gZnJvbSBcIi4vY29uZmlndXJhdGlvblwiO1xyXG5pbXBvcnQge0lUcmFuc2xhdGlvbnN9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuXHJcbkBpbmplY3RhYmxlKClcclxuQHNpbmdsZXRvbigpXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvblByb3ZpZGVyIHtcclxuXHJcbiAgICBwcm90ZWN0ZWQgY2FjaGU6IHsgW2xhbmc6IHN0cmluZ106IFByb21pc2U8SVRyYW5zbGF0aW9ucz4gfTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBjb25maWc6IENvbmZpZ3VyYXRpb24pIHtcclxuICAgICAgICB0aGlzLmNhY2hlID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0RGljdGlvbmFyeShsYW5ndWFnZTogc3RyaW5nKTogUHJvbWlzZTxJVHJhbnNsYXRpb25zPiB7XHJcbiAgICAgICAgdGhpcy5jYWNoZVtsYW5ndWFnZV0gPSB0aGlzLmNhY2hlW2xhbmd1YWdlXSB8fCBheGlvcy5nZXQodGhpcy5jb25maWcucmVzb2x2ZShcInRyYW5zbGF0aW9uc1RlbXBsYXRlXCIpLnJlcGxhY2UoYFtsYW5nXWAsIGxhbmd1YWdlKSkudGhlbihcclxuICAgICAgICAgICAgciA9PiByLmRhdGEsXHJcbiAgICAgICAgICAgIHJlYXNvbiA9PiAoe1xyXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogcmVhc29uXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICByZXR1cm4gdGhpcy5jYWNoZVtsYW5ndWFnZV07XHJcbiAgICB9XHJcbn1cclxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvdHJhbnNsYXRpb24tcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUNuQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLFNBQVMsQ0FBQztJQUdqQixtQkFBbUIsU0FBbkIsbUJBQW1CO0lBRTVCLFlBQXFCLE1BQXFCLEVBQVcsS0FBWTtRQUE1QyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQVcsVUFBSyxHQUFMLEtBQUssQ0FBTztJQUVqRSxDQUFDO0lBRUQsYUFBYSxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLFFBQVEsRUFBRSxFQUFFLEdBQVMsRUFBRTtZQUM5RCxJQUFJO2dCQUNBLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDO3FCQUNsRCxPQUFPLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQztxQkFDN0IsT0FBTyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDakMsTUFBTSxJQUFJLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEQsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUU7b0JBQzFCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUN6QjtnQkFDRCxPQUFPLElBQUksQ0FBQzthQUNmO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1IsT0FBTztvQkFDSCxPQUFPLEVBQUUsR0FBRyxDQUFDLEVBQUU7aUJBQ2xCLENBQUE7YUFDSjtRQUNMLENBQUMsQ0FBQSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNmLENBQUM7Q0FDSixDQUFBO0FBeEJZLG1CQUFtQjtJQUQvQixTQUFTLEVBQUU7cUNBR3FCLGFBQWEsRUFBa0IsS0FBSztHQUZ4RCxtQkFBbUIsQ0F3Qi9CO1NBeEJZLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7c2luZ2xldG9ufSBmcm9tIFwidHN5cmluZ2VcIjtcclxuaW1wb3J0IGF4aW9zIGZyb20gXCJheGlvc1wiO1xyXG5pbXBvcnQge2lzT2JqZWN0fSBmcm9tIFwiLi4vdXRpbHNcIjtcclxuaW1wb3J0IHtDb25maWd1cmF0aW9ufSBmcm9tIFwiLi9jb25maWd1cmF0aW9uXCI7XHJcbmltcG9ydCB7SVRyYW5zbGF0aW9uc30gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5pbXBvcnQge0NhY2hlfSBmcm9tIFwiLi9jYWNoZVwiO1xyXG5cclxuQHNpbmdsZXRvbigpXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvblByb3ZpZGVyIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBjb25maWc6IENvbmZpZ3VyYXRpb24sIHJlYWRvbmx5IGNhY2hlOiBDYWNoZSkge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBnZXREaWN0aW9uYXJ5KGxhbmd1YWdlOiBzdHJpbmcpOiBQcm9taXNlPElUcmFuc2xhdGlvbnM+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jYWNoZS5nZXRPclNldChgdHJhbnNsYXRpb25zLSR7bGFuZ3VhZ2V9YCwgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdXJsID0gdGhpcy5jb25maWcucmVzb2x2ZShcInRyYW5zbGF0aW9uc1RlbXBsYXRlXCIpXHJcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoYF9fbGFuZ19fYCwgbGFuZ3VhZ2UpXHJcbiAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoYFtsYW5nXWAsIGxhbmd1YWdlKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBheGlvcy5nZXQodXJsKS50aGVuKHQgPT4gdC5kYXRhKTtcclxuICAgICAgICAgICAgICAgIGlmIChpc09iamVjdChkYXRhW2xhbmd1YWdlXSkpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGF0YVtsYW5ndWFnZV07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiBgJHtlfWBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sIDUgKiA2MCk7XHJcbiAgICB9XHJcbn1cclxuIl19