@adaptivestone/framework 5.0.0-beta.34 → 5.0.0-beta.35

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/CHANGELOG.md CHANGED
@@ -26,6 +26,7 @@ Main feature of that release is full TypeScript support insluding mongoose model
26
26
  - **[NEW]** Test helpers getTestServerURL and serverInstance.
27
27
  - **[NEW]** Rate limiter middleware - add consumeResult function to allow user middleware as a regular rate limiter
28
28
  - **[NEW]** Ip detector middleware - add getIpAdressFromIncomingMessage function to allow user middleware as a detector of id adresses without middleware
29
+ - **[NEW]** Introduce i18nService (ability to user i18n not only inside middleware)
29
30
 
30
31
  ### Breaking changes (please read carefully)
31
32
 
@@ -50,6 +51,12 @@ Main feature of that release is full TypeScript support insluding mongoose model
50
51
 
51
52
 
52
53
 
54
+ ---
55
+
56
+ ## [5.0.0-beta.35]
57
+
58
+ - **[NEW]** Introduce i18nService (ability to user i18n not only inside middleware)
59
+
53
60
  ---
54
61
 
55
62
  ## [5.0.0-beta.34]
package/dist/server.d.ts CHANGED
@@ -7,6 +7,7 @@ import type BaseCli from './modules/BaseCli.ts';
7
7
  import type { BaseModel, TBaseModel } from './modules/BaseModel.ts';
8
8
  import Cache from './services/cache/Cache.ts';
9
9
  import type HttpServer from './services/http/HttpServer.ts';
10
+ import type { I18n } from './services/i18n/I18n.ts';
10
11
  interface AppCache {
11
12
  configs: Map<string, unknown>;
12
13
  models: Map<string, AbstractModel['mongooseModel'] | TBaseModel>;
@@ -21,6 +22,7 @@ export interface IApp {
21
22
  getModel(modelName: string): AbstractModel['mongooseModel'] | false | TBaseModel;
22
23
  runCliCommand(commandName: string): Promise<boolean | void>;
23
24
  updateConfig(configName: string, config: Record<string, unknown>): Record<string, unknown>;
25
+ getI18nService(): Promise<I18n>;
24
26
  foldersConfig: TFolderConfigFolders;
25
27
  events: EventEmitter<[never]>;
26
28
  readonly cache: Cache;
@@ -101,6 +103,7 @@ declare class Server {
101
103
  * @param {Object} config
102
104
  */
103
105
  updateConfig(configName: string, config: Record<string, unknown>): Record<string, unknown>;
106
+ getI18nService(): Promise<I18n>;
104
107
  /**
105
108
  * Return model from {modelName} (file name) on model folder.
106
109
  * Support cache
package/dist/server.js CHANGED
@@ -30,6 +30,7 @@ class Server {
30
30
  #isInited = false;
31
31
  #isModelsInited = false;
32
32
  #isModelsLoaded = false;
33
+ #i18nService;
33
34
  cli = null;
34
35
  config;
35
36
  cache = {
@@ -60,6 +61,7 @@ class Server {
60
61
  getModel: this.getModel.bind(this),
61
62
  runCliCommand: this.runCliCommand.bind(this),
62
63
  updateConfig: this.updateConfig.bind(this),
64
+ getI18nService: this.getI18nService.bind(this),
63
65
  foldersConfig: this.config.folders,
64
66
  events: new EventEmitter(),
65
67
  get cache() {
@@ -395,6 +397,13 @@ class Server {
395
397
  this.cache.configs.set(configName, newConf);
396
398
  return newConf;
397
399
  }
400
+ async getI18nService() {
401
+ if (!this.#i18nService) {
402
+ const I18nService = (await import("./services/i18n/I18n.js")).I18n; // speed optimisation
403
+ this.#i18nService = new I18nService(this.app);
404
+ }
405
+ return this.#i18nService;
406
+ }
398
407
  /**
399
408
  * Return model from {modelName} (file name) on model folder.
400
409
  * Support cache
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC,OAAO,KAAK,MAAM,WAAW,CAAC;AAC9B,OAAO,OAAO,MAAM,SAAS,CAAC;AAI9B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,OAAO,KAAK,MAAM,2BAA2B,CAAC;AA+B9C,IAAI,CAAC;IACH,WAAW,EAAE,CAAC;AAChB,CAAC;AAAC,MAAM,CAAC;IACP,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,MAAM;IACV,WAAW,GAA0B,IAAI,CAAC;IAE1C,SAAS,GAAG,KAAK,CAAC;IAElB,eAAe,GAAG,KAAK,CAAC;IAExB,eAAe,GAAG,KAAK,CAAC;IAExB,GAAG,GAAmB,IAAI,CAAC;IAE3B,MAAM,CAAgB;IAEtB,KAAK,GAAa;QAChB,OAAO,EAAE,IAAI,GAAG,EAAmB;QACnC,MAAM,EAAE,IAAI,GAAG,EAAuD;QACtE,iBAAiB,EAAE,IAAI,GAAG,EAGvB;QACH,UAAU,EAAE,EAAE;KACf,CAAC;IAEF,YAAY,GAAiB,IAAI,CAAC;IAElC,GAAG,CAAO;IAEV;;;;;;;;;;;OAWG;IACH,YAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,GAAG,GAAG;YACT,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5C,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1C,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAClC,MAAM,EAAE,IAAI,YAAY,EAAE;YAC1B,IAAI,KAAK;gBACP,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzB,CAAC;YACD,IAAI,MAAM;gBACR,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B,CAAC;YACD,UAAU,EAAE,IAAI;YAChB,iBAAiB,EAAE,IAAI;YACvB,eAAe,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ;YACvD,kBAAkB,EAAE,IAAI,CAAC,KAAK;SAC/B,CAAC;QAEF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;YAClC,MAAM,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACzC,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,EAAE,KAAK,CAAC,CAAC;YACV,uDAAuD;YACvD,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,iBAAiB,GAAG,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QAEjD,MAAM,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,GAC7D,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,MAAM,CAAC,+BAA+B,CAAC,EAAE,qBAAqB;YAC9D,MAAM,CAAC,wBAAwB,CAAC,EAAE,qBAAqB;YACvD,IAAI,CAAC,IAAI,EAAE;SACZ,CAAC,CAAC;QAEL,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,cAAc;QACd,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE/C,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE7D,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;QACnD,MAAM,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,EACT,eAAe,GAAG,KAAK,EACvB,kBAAkB,GAAG,KAAK,GAC3B,GAAG,EAAE;QACJ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,OAAO,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;QAExD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB;QACpB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;QACpD,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAElC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;gBACxC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CACtB,uDAAuD,CACxD,CAAC;gBACF,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBACrC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;gBACD,yEAAyE;YAC3E,CAAC,CAAC,CAAC;YACH,MAAM,gBAAgB,GAElB,EAAE,CAAC;YACP,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;gBAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;oBAC5C,2GAA2G;oBAC3G,uEAAuE;oBACvE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CACpB,4GAA4G,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CACzI,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;gBACxD,CAAC;YACH,CAAC;YACD,QAAQ;iBACL,OAAO,CACN,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,gBAA0B,EACtD,gBAAgB,CACjB;iBACA,IAAI,CACH,GAAG,EAAE;gBACH,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CACnB,4BAA4B,gBAAgB,CAAC,OAAO,EAAE,CACvD,CAAC;gBACF,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACtC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;oBACtD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;YACL,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YACpE,CAAC,CACF,CAAC;QACN,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,iBAAiB;YACjB,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAE9B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACjD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YAC7D,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,mDAAmD;YAC5E,KAAK,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,IAAI,CAAC,KAAK;iBACnD,iBAAiB,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,IAAI,gBAAgB,CAAC,SAAS,YAAY,SAAS,EAAE,CAAC;wBACpD,MAAM,KAAK,GAAI,gBAAqC,CAAC,UAAU,EAAE,CAAC;wBAClE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBAC1C,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CACnB,SAAS,SAAS,mDAAmD,CACtE,CAAC;wBACF,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAkB,CAAC;wBAC9D,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;oBACxD,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAU,EAAE,CAAC;oBACpB,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;wBACvB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CACnB,sBAAsB,SAAS,KAAK,CAAC,CAAC,OAAO,EAAE,CAChD,CAAC;wBACF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CACnB,sBAAsB,SAAS,iBAAiB,CACjD,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAClB,8DAA8D,CAC/D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CACnB,oBAAoB,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAC7D,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,MAAM,2BAA2B,CAAC;YAC9C,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;YAC7C,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM;YAC7C,cAAc,EAAE,QAAQ;YACxB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;YACvC,MAAM,EAAE;gBACN,gBAAgB,EAAE,KAAK;aACxB;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAA2C,EAAE,CAAC;QAE/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YAC9B,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;YAChD,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,EACtB,UAAkB,EAClB,MAA8B,EAC9B,EAAE;YACF,MAAM,QAAQ,GAAG,CAAC,MAAM,kCAAC,MAAM,CAAC,OAAO,EAAC,CAAC,CAAC;YAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzD,QAAQ,CAAC,IAAI,CAAC,MAAM,kCAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAC,CAAC,CAAC;YACtD,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC3C,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,EAAE;oBAC7D,UAAU,EAAE,CAAC,iBAAiB,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW;iBAC5D,CAAC;aACH,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,EAAE,CAAC;QAE3B,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9D,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAEnD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,iCAAiC;QAGrC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACjE,MAAM,KAAK,GAAG,MAAM,2BAA2B,CAAC;gBAC9C,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC7C,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM;gBAC7C,cAAc,EAAE,OAAO;gBACvB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;aACxC,CAAC,CAAC;YACH,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;oBACzB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,iBAAiB;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAE7D,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CACX,MAAM,kCAAC,IAAI,CAAC,IAAI,EAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,CAAC;gBACP,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;aAC1B,CAAC,CAAC,CACJ,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEjD,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CACpC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAC9C,CAAC;QACF,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,SAAS,CAAC,UAAkB;QAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAClB,wBAAwB,UAAU,8CAA8C,CACjF,CAAC;YACF,OAAO,EAA6B,CAAC;QACvC,CAAC;QACD,OAAO,CACJ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAA6B;YAC9D,EAA8B,CAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,aAAa;QACX,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtB,GAAG,EAAE,IAAI;SACV,CAAC,EACF,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,CACnB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,OAAO,CAAC,GAAG,cAAc,IAAI,CAAC,KAAK,IAAI,QAAQ,aACjD,IAAI,CAAC,SACP,KAAK,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,IACpD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,EACvD,EAAE,CACL,CACF,CAAC;QACF,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAe,CAAC;QAC/D,SAAS,aAAa,CAAC,CAAW;YAChC,IAAI,CAAC;gBACH,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAC9C,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QAEH,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,CACR,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;wBAC7B,KAAK,EAAE,GAAG,CAAC,gBAAgB,CAAC,KAAK;wBACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EACzB,kBAAkB,CACnB;qBACF,CAAC,CACH,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,kCAAC,GAAG,CAAC,SAAS,EAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;wBAChC,IAAI,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC;wBAC3B,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;4BACnD,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC;wBAChC,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,KAAK,CACX,GAAG,GAAG,CAAC,SAAS,qCAAqC,CACtD,CAAC;4BACF,OAAO;wBACT,CAAC;wBACD,MAAM,CAAC,OAAO,CAAC,qBAAqB,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;wBACrD,MAAM,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;wBAChD,MAAM,CAAC,OAAO,CAAC,qBAAqB,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;oBACvD,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACH,YAAY,CAAC,UAAkB,EAAE,MAA+B;QAC9D,6EAA6E;QAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,kBAAkB;QAC/D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,QAAQ,CACN,SAAiB;QAEjB,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAClB,6BAA6B,SAAS,4CAA4C,CACnF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CACnB,IAAI,KAAK,CAAC,qDAAqD,CAAC,CACjE,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAClB,uBAAuB,SAAS,8CAA8C,CAC/E,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,WAAmB;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,qBAAqB;YACxF,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1,38 +1,23 @@
1
1
  import type { NextFunction, Response } from 'express';
2
- import { type i18n, type TFunction } from 'i18next';
3
2
  import type { IApp } from '../../../server.ts';
3
+ import type { TI18n } from '../../i18n/I18n.ts';
4
4
  import type { FrameworkRequest } from '../HttpServer.ts';
5
5
  import AbstractMiddleware from './AbstractMiddleware.ts';
6
6
  import type { GetUserByTokenAppInfo } from './GetUserByToken.ts';
7
- export type TI18n = {
8
- t: TFunction;
9
- language: string;
10
- };
7
+ export type { TI18n };
11
8
  export interface I18nMiddlewareAppInfo {
12
9
  appInfo: {
13
- i18n: {
14
- t: TFunction;
15
- language: string;
16
- };
10
+ i18n: TI18n;
17
11
  };
18
12
  }
19
13
  declare class I18n extends AbstractMiddleware {
20
- cache: {
21
- [key: string]: i18n;
22
- };
23
14
  enabled: boolean;
24
15
  lookupQuerystring: string;
25
- supportedLngs: Array<string>;
26
- fallbackLng: string;
27
- i18n: {
28
- t: TFunction;
29
- language: string;
30
- };
31
16
  constructor(app: IApp, params?: Record<string, unknown>);
32
17
  static get description(): string;
33
18
  middleware(req: FrameworkRequest, _res: Response, next: NextFunction): Promise<void>;
34
19
  detectors: Record<string, (req: FrameworkRequest & GetUserByTokenAppInfo) => string | undefined | false>;
35
20
  detectorOrder: string[];
36
- detectLang(req: FrameworkRequest, isUseShortCode?: boolean): string;
21
+ detectLang(req: FrameworkRequest, isUseShortCode?: boolean): Promise<string>;
37
22
  }
38
23
  export default I18n;
@@ -1,61 +1,23 @@
1
- import i18next, {} from 'i18next';
2
- import BackendFS from 'i18next-fs-backend';
3
1
  import AbstractMiddleware from "./AbstractMiddleware.js";
4
2
  class I18n extends AbstractMiddleware {
5
- cache = {};
6
3
  enabled = true;
7
4
  lookupQuerystring = '';
8
- supportedLngs = [];
9
- fallbackLng = 'en';
10
- i18n = {
11
- t: ((text) => text),
12
- language: 'en',
13
- };
14
5
  constructor(app, params) {
15
6
  super(app, params);
16
7
  const I18NConfig = this.app.getConfig('i18n');
17
- if (I18NConfig.enabled) {
18
- this.logger?.info('Enabling i18n support');
19
- this.i18n = i18next;
20
- i18next.use(BackendFS).init({
21
- backend: {
22
- loadPath: `${this.app.foldersConfig.locales}/{{lng}}/{{ns}}.json`,
23
- addPath: `${this.app.foldersConfig.locales}/{{lng}}/{{ns}}.missing.json`,
24
- },
25
- fallbackLng: I18NConfig.fallbackLng,
26
- preload: I18NConfig.preload,
27
- saveMissing: I18NConfig.saveMissing,
28
- debug: I18NConfig.debug,
29
- });
30
- }
31
8
  this.enabled = I18NConfig.enabled;
32
9
  this.lookupQuerystring = I18NConfig.lookupQuerystring;
33
- this.supportedLngs = I18NConfig.supportedLngs;
34
- this.fallbackLng = I18NConfig.fallbackLng;
35
10
  }
36
11
  static get description() {
37
12
  return 'Provide language detection and translation';
38
13
  }
39
14
  async middleware(req, _res, next) {
40
- let i18n = null;
15
+ let lang = '';
41
16
  if (this.enabled) {
42
- let lang = this.detectLang(req);
43
- if (!lang || this.supportedLngs.indexOf(lang) === -1) {
44
- this.logger?.verbose(`Language "${lang}" is not supported or not detected. Using fallback on ${this.fallbackLng}`);
45
- lang = this.fallbackLng;
46
- }
47
- if (!this.cache[lang]) {
48
- this.cache[lang] = i18next.cloneInstance({
49
- initAsync: false,
50
- lng: lang,
51
- });
52
- }
53
- i18n = this.cache[lang];
54
- }
55
- if (!i18n) {
56
- i18n = this.i18n;
17
+ lang = await this.detectLang(req);
57
18
  }
58
- req.appInfo.i18n = i18n;
19
+ const i18nService = await this.app.getI18nService();
20
+ req.appInfo.i18n = await i18nService.getI18n(lang);
59
21
  //@ts-expect-error we known thats a new one
60
22
  req.i18n = new Proxy(req.appInfo.i18n, {
61
23
  get: (target, prop) => {
@@ -72,16 +34,19 @@ class I18n extends AbstractMiddleware {
72
34
  user: (req) => req.appInfo?.user?.locale, // what if we have a user and user have a defined locale?
73
35
  };
74
36
  detectorOrder = ['XLang', 'query', 'user'];
75
- detectLang(req, isUseShortCode = true) {
37
+ async detectLang(req, isUseShortCode = true) {
76
38
  let lang = '';
77
39
  for (const detectorName of this.detectorOrder) {
78
40
  const lng = this.detectors[detectorName](req);
79
41
  if (!lng) {
80
42
  continue;
81
43
  }
82
- if (i18next.services.languageUtils.isSupportedCode(lng)) {
44
+ const i18nService = await this.app.getI18nService();
45
+ const i18nInstance = await i18nService.getI18nInstance();
46
+ if (i18nInstance.services.languageUtils.isSupportedCode(lng)) {
83
47
  if (isUseShortCode) {
84
- lang = i18next.services.languageUtils.getLanguagePartFromCode(lng);
48
+ lang =
49
+ i18nInstance.services.languageUtils.getLanguagePartFromCode(lng);
85
50
  }
86
51
  else {
87
52
  lang = lng;
@@ -1 +1 @@
1
- {"version":3,"file":"I18n.js","sourceRoot":"","sources":["../../../../src/services/http/middleware/I18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"I18n.js","sourceRoot":"","sources":["../../../../src/services/http/middleware/I18n.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { i18n, TFunction } from 'i18next';
2
+ import Base from '../../modules/Base.ts';
3
+ export type TI18n = {
4
+ t: TFunction;
5
+ language: string;
6
+ };
7
+ export declare class I18n extends Base {
8
+ #private;
9
+ getI18n(lang?: string): Promise<{
10
+ t: TFunction;
11
+ language: string;
12
+ }>;
13
+ getI18nInstance(): Promise<i18n>;
14
+ static get loggerGroup(): string;
15
+ }
@@ -0,0 +1,51 @@
1
+ import Base from "../../modules/Base.js";
2
+ export class I18n extends Base {
3
+ #cache = {};
4
+ #i18nBase;
5
+ #i18nFallback = {
6
+ t: ((text) => text),
7
+ language: 'en',
8
+ };
9
+ async getI18n(lang) {
10
+ const i18NConfig = this.app.getConfig('i18n');
11
+ if (!i18NConfig.enabled) {
12
+ return this.#i18nFallback;
13
+ }
14
+ if (!lang || i18NConfig.supportedLngs.indexOf(lang) === -1) {
15
+ this.logger?.verbose(`Language "${lang}" is not supported or not provided. Using fallback on ${i18NConfig.fallbackLng}`);
16
+ lang = i18NConfig.fallbackLng;
17
+ }
18
+ if (!this.#cache[lang]) {
19
+ this.#cache[lang] = (await this.getI18nInstance()).cloneInstance({
20
+ initAsync: false,
21
+ lng: lang,
22
+ });
23
+ }
24
+ return this.#cache[lang];
25
+ }
26
+ async getI18nInstance() {
27
+ if (!this.#i18nBase) {
28
+ const [{ default: i18next }, { default: BackendFS }] = await Promise.all([
29
+ import('i18next'), // Speed optimisation
30
+ import('i18next-fs-backend'), // Speed optimisation
31
+ ]);
32
+ const i18NConfig = this.app.getConfig('i18n');
33
+ i18next.use(BackendFS).init({
34
+ backend: {
35
+ loadPath: `${this.app.foldersConfig.locales}/{{lng}}/{{ns}}.json`,
36
+ addPath: `${this.app.foldersConfig.locales}/{{lng}}/{{ns}}.missing.json`,
37
+ },
38
+ fallbackLng: i18NConfig.fallbackLng,
39
+ preload: i18NConfig.preload,
40
+ saveMissing: i18NConfig.saveMissing,
41
+ debug: i18NConfig.debug,
42
+ });
43
+ this.#i18nBase = i18next;
44
+ }
45
+ return this.#i18nBase;
46
+ }
47
+ static get loggerGroup() {
48
+ return 'I18n_';
49
+ }
50
+ }
51
+ //# sourceMappingURL=I18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"I18n.js","sourceRoot":"","sources":["../../../src/services/i18n/I18n.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,uBAAuB,CAAC;AAIzC,MAAM,OAAO,IAAK,SAAQ,IAAI;IAC5B,MAAM,GAA4B,EAAE,CAAC;IAErC,SAAS,CAAQ;IAEjB,aAAa,GAAuC;QAClD,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAc;QAChC,QAAQ,EAAE,IAAI;KACf,CAAC;IAEF,KAAK,CAAC,OAAO,CAAC,IAAa;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAsB,CAAC;QACnE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,MAAM,EAAE,OAAO,CAClB,aAAa,IAAI,yDAAyD,UAAU,CAAC,WAAW,EAAE,CACnG,CAAC;YACF,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,aAAa,CAAC;gBAC/D,SAAS,EAAE,KAAK;gBAChB,GAAG,EAAE,IAAI;aACV,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvE,MAAM,CAAC,SAAS,CAAC,EAAE,qBAAqB;gBACxC,MAAM,CAAC,oBAAoB,CAAC,EAAE,qBAAqB;aACpD,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAsB,CAAC;YAEnE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;gBAC1B,OAAO,EAAE;oBACP,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,sBAAsB;oBACjE,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,8BAA8B;iBACzE;gBACD,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,KAAK,EAAE,UAAU,CAAC,KAAK;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,MAAM,KAAK,WAAW;QACpB,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptivestone/framework",
3
- "version": "5.0.0-beta.34",
3
+ "version": "5.0.0-beta.35",
4
4
  "description": "Adaptive stone node js framework",
5
5
  "type": "module",
6
6
  "engines": {