@minimaltech/node-infra 0.3.20 → 0.3.22

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.
Files changed (58) hide show
  1. package/dist/base/base.model.d.ts +7 -0
  2. package/dist/base/base.model.js +7 -0
  3. package/dist/base/base.model.js.map +1 -1
  4. package/dist/base/controllers/common.js +3 -1
  5. package/dist/base/controllers/common.js.map +1 -1
  6. package/dist/base/repositories/base.repository.d.ts +11 -1
  7. package/dist/base/repositories/base.repository.js +25 -3
  8. package/dist/base/repositories/base.repository.js.map +1 -1
  9. package/dist/base/repositories/index.d.ts +1 -0
  10. package/dist/base/repositories/index.js +1 -0
  11. package/dist/base/repositories/index.js.map +1 -1
  12. package/dist/base/repositories/relations/has-many-polymorphic/decorator.d.ts +11 -0
  13. package/dist/base/repositories/relations/has-many-polymorphic/decorator.js +21 -0
  14. package/dist/base/repositories/relations/has-many-polymorphic/decorator.js.map +1 -0
  15. package/dist/base/repositories/relations/has-many-polymorphic/factory.d.ts +33 -0
  16. package/dist/base/repositories/relations/has-many-polymorphic/factory.js +107 -0
  17. package/dist/base/repositories/relations/has-many-polymorphic/factory.js.map +1 -0
  18. package/dist/base/repositories/relations/has-many-polymorphic/index.d.ts +3 -0
  19. package/dist/base/repositories/relations/has-many-polymorphic/index.js +20 -0
  20. package/dist/base/repositories/relations/has-many-polymorphic/index.js.map +1 -0
  21. package/dist/base/repositories/relations/has-many-polymorphic/types.d.ts +10 -0
  22. package/dist/base/repositories/relations/has-many-polymorphic/types.js +3 -0
  23. package/dist/base/repositories/relations/has-many-polymorphic/types.js.map +1 -0
  24. package/dist/base/repositories/relations/index.d.ts +1 -0
  25. package/dist/base/repositories/relations/index.js +18 -0
  26. package/dist/base/repositories/relations/index.js.map +1 -0
  27. package/dist/common/constants.d.ts +1 -0
  28. package/dist/common/constants.js +2 -0
  29. package/dist/common/constants.js.map +1 -1
  30. package/dist/common/types.d.ts +30 -24
  31. package/dist/components/grpc/helpers/grpc-server.js +17 -7
  32. package/dist/components/grpc/helpers/grpc-server.js.map +1 -1
  33. package/dist/helpers/crypto/algorithms/rsa.algorithm.d.ts +2 -2
  34. package/dist/helpers/queue/bullmq.helper.d.ts +2 -2
  35. package/dist/helpers/queue/bullmq.helper.js +1 -1
  36. package/dist/helpers/queue/bullmq.helper.js.map +1 -1
  37. package/dist/middlewares/request-spy.middleware.js +5 -3
  38. package/dist/middlewares/request-spy.middleware.js.map +1 -1
  39. package/dist/mixins/data-type.mixin.js +5 -2
  40. package/dist/mixins/data-type.mixin.js.map +1 -1
  41. package/dist/mixins/duplicatable.mixin.js +6 -3
  42. package/dist/mixins/duplicatable.mixin.js.map +1 -1
  43. package/dist/mixins/object-search.mixin.js +5 -2
  44. package/dist/mixins/object-search.mixin.js.map +1 -1
  45. package/dist/mixins/soft-delete.mixin.js +5 -2
  46. package/dist/mixins/soft-delete.mixin.js.map +1 -1
  47. package/dist/mixins/text-search.mixin.js +5 -2
  48. package/dist/mixins/text-search.mixin.js.map +1 -1
  49. package/dist/utilities/performance.utility.d.ts +1 -0
  50. package/dist/utilities/performance.utility.js +5 -1
  51. package/dist/utilities/performance.utility.js.map +1 -1
  52. package/dist/utilities/promise.utility.d.ts +17 -0
  53. package/dist/utilities/promise.utility.js +17 -0
  54. package/dist/utilities/promise.utility.js.map +1 -1
  55. package/dist/utilities/request.utility.d.ts +3 -0
  56. package/dist/utilities/request.utility.js +7 -1
  57. package/dist/utilities/request.utility.js.map +1 -1
  58. package/package.json +35 -35
@@ -35,6 +35,13 @@ declare const BaseUserAuditTzEntity_base: {
35
35
  toObject: (options?: import("@loopback/repository").Options) => Object;
36
36
  };
37
37
  } & typeof BaseTzEntity;
38
+ /**
39
+ * Basic UserAuditMixed class with createdBy and modifiedBy
40
+ *
41
+ * NOTICE: This method have no userResolver
42
+ *
43
+ * In case you need to include User, directly extends {@link UserAuditMixin}
44
+ */
38
45
  export declare class BaseUserAuditTzEntity extends BaseUserAuditTzEntity_base {
39
46
  }
40
47
  declare const BaseDataTypeTzEntity_base: {
@@ -53,6 +53,13 @@ class BaseTzEntity extends (0, mixins_1.TzMixin)(BaseIdEntity) {
53
53
  }
54
54
  exports.BaseTzEntity = BaseTzEntity;
55
55
  // ---------------------------------------------------------------------
56
+ /**
57
+ * Basic UserAuditMixed class with createdBy and modifiedBy
58
+ *
59
+ * NOTICE: This method have no userResolver
60
+ *
61
+ * In case you need to include User, directly extends {@link UserAuditMixin}
62
+ */
56
63
  class BaseUserAuditTzEntity extends (0, mixins_1.UserAuditMixin)(BaseTzEntity) {
57
64
  }
58
65
  exports.BaseUserAuditTzEntity = BaseUserAuditTzEntity;
@@ -1 +1 @@
1
- {"version":3,"file":"base.model.js","sourceRoot":"","sources":["../../src/base/base.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAQkB;AAClB,qDAAwD;AAExD,wEAAwE;AACxE,MAAa,UAAW,SAAQ,mBAAM;CAAG;AAAzC,gCAAyC;AAEzC,wEAAwE;AACxE,MAAa,YAAa,SAAQ,UAAU;CAG3C;AAHD,oCAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;wCAC7C;AAGb,wEAAwE;AACxE,MAAa,kBAAmB,SAAQ,UAAU;CAGjD;AAHD,gDAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;8CAC7C;AAGb,wEAAwE;AACxE,MAAa,kBAAmB,SAAQ,UAAU;CAGjD;AAHD,gDAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;;8CAC5B;AAGb,wEAAwE;AACxE,MAAa,YAAa,SAAQ,UAAU;CAG3C;AAHD,oCAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;6CAChB;AAGf,wEAAwE;AACxE,MAAa,YAAa,SAAQ,IAAA,gBAAO,EAAC,YAAY,CAAC;CAAG;AAA1D,oCAA0D;AAE1D,wEAAwE;AACxE,MAAa,qBAAsB,SAAQ,IAAA,uBAAc,EAAC,YAAY,CAAC;CAAG;AAA1E,sDAA0E;AAE1E,wEAAwE;AACxE,MAAa,oBAAqB,SAAQ,IAAA,sBAAa,EAAC,YAAY,CAAC;CAAG;AAAxE,oDAAwE;AAExE,wEAAwE;AACxE,MAAa,sBAAuB,SAAQ,IAAA,wBAAe,EAAC,YAAY,CAAC;CAAG;AAA5E,wDAA4E;AAE5E,wEAAwE;AACxE,MAAa,wBAAyB,SAAQ,IAAA,0BAAiB,EAAC,YAAY,CAAC;CAAG;AAAhF,4DAAgF;AAEhF,wEAAwE;AACxE,MAAa,sBAAuB,SAAQ,IAAA,0BAAiB,EAAC,IAAA,wBAAe,EAAC,YAAY,CAAC,CAAC;CAAG;AAA/F,wDAA+F;AAE/F,wEAAwE;AACxE,MAAa,sBAAuB,SAAQ,IAAA,6BAAoB,EAAC,YAAY,CAAC;CAAG;AAAjF,wDAAiF;AAEjF,wEAAwE;AACxE,MAAa,wBAAyB,SAAQ,IAAA,0BAAiB,EAAC,YAAY,CAAC;CAAG;AAAhF,4DAAgF"}
1
+ {"version":3,"file":"base.model.js","sourceRoot":"","sources":["../../src/base/base.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAQkB;AAClB,qDAAwD;AAExD,wEAAwE;AACxE,MAAa,UAAW,SAAQ,mBAAM;CAAG;AAAzC,gCAAyC;AAEzC,wEAAwE;AACxE,MAAa,YAAa,SAAQ,UAAU;CAG3C;AAHD,oCAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;wCAC7C;AAGb,wEAAwE;AACxE,MAAa,kBAAmB,SAAQ,UAAU;CAGjD;AAHD,gDAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;;8CAC7C;AAGb,wEAAwE;AACxE,MAAa,kBAAmB,SAAQ,UAAU;CAGjD;AAHD,gDAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;;8CAC5B;AAGb,wEAAwE;AACxE,MAAa,YAAa,SAAQ,UAAU;CAG3C;AAHD,oCAGC;AADC;IADC,IAAA,qBAAQ,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;;6CAChB;AAGf,wEAAwE;AACxE,MAAa,YAAa,SAAQ,IAAA,gBAAO,EAAC,YAAY,CAAC;CAAG;AAA1D,oCAA0D;AAE1D,wEAAwE;AACxE;;;;;;GAMG;AACH,MAAa,qBAAsB,SAAQ,IAAA,uBAAc,EAAC,YAAY,CAAC;CAAG;AAA1E,sDAA0E;AAE1E,wEAAwE;AACxE,MAAa,oBAAqB,SAAQ,IAAA,sBAAa,EAAC,YAAY,CAAC;CAAG;AAAxE,oDAAwE;AAExE,wEAAwE;AACxE,MAAa,sBAAuB,SAAQ,IAAA,wBAAe,EAAC,YAAY,CAAC;CAAG;AAA5E,wDAA4E;AAE5E,wEAAwE;AACxE,MAAa,wBAAyB,SAAQ,IAAA,0BAAiB,EAAC,YAAY,CAAC;CAAG;AAAhF,4DAAgF;AAEhF,wEAAwE;AACxE,MAAa,sBAAuB,SAAQ,IAAA,0BAAiB,EAAC,IAAA,wBAAe,EAAC,YAAY,CAAC,CAAC;CAAG;AAA/F,wDAA+F;AAE/F,wEAAwE;AACxE,MAAa,sBAAuB,SAAQ,IAAA,6BAAoB,EAAC,YAAY,CAAC;CAAG;AAAjF,wDAAiF;AAEjF,wEAAwE;AACxE,MAAa,wBAAyB,SAAQ,IAAA,0BAAiB,EAAC,YAAY,CAAC;CAAG;AAAhF,4DAAgF"}
@@ -31,6 +31,7 @@ const getIdSchema = (entity) => {
31
31
  return (_a = modelSchema.properties) === null || _a === void 0 ? void 0 : _a[idProp];
32
32
  };
33
33
  exports.getIdSchema = getIdSchema;
34
+ // --------------------------------------------------------------------------------------------------------------
34
35
  const getIdType = (entity) => {
35
36
  var _a;
36
37
  let idType = 'number';
@@ -39,8 +40,9 @@ const getIdType = (entity) => {
39
40
  idType = (_a = idMetadata === null || idMetadata === void 0 ? void 0 : idMetadata.type) !== null && _a !== void 0 ? _a : 'number';
40
41
  }
41
42
  catch (e) {
42
- console.error(e);
43
+ console.error("[getIdType] Failed to inspect entity id type! Use 'number' by default | Error: ", e);
43
44
  idType = 'number';
45
+ return idType;
44
46
  }
45
47
  return idType;
46
48
  };
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/base/controllers/common.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAC5C,uCAA6D;AAE7D,yCAAiF;AAEjF,iDAAuD;AAEvD,iHAAiH;AAC1G,MAAM,UAAU,GAAG,CAAyB,MAAkB,EAAE,EAAE;;IACvE,MAAM,EAAE,qBACH,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,CAClB,CAAC;IAEF,EAAE,CAAC,OAAO,CAAC,GAAG,MAAA,EAAE,CAAC,OAAO,CAAC,mCAAI,YAAG,CAAC,mBAAmB,CAAC;IACrD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAPW,QAAA,UAAU,cAOrB;AAEF,iHAAiH;AACjH,MAAa,cAAc;IAIzB,YAAY,IAA+C;;QAF3D,iBAAY,GAAW,YAAG,CAAC,mBAAmB,CAAC;QAG7C,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,SAAS,CAAC,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,mCAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,YAAY,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,mCAAI,YAAG,CAAC,mBAAmB,CAAC;IACpE,CAAC;CACF;AARD,wCAQC;AAED,iHAAiH;AAC1G,MAAM,WAAW,GAAG,CACzB,MAA8C,EAChC,EAAE;;IAChB,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAA,yBAAkB,EAAC,IAAA,oBAAa,EAAC,MAAM,CAAC,CAAiB,CAAC;IAC9E,OAAO,MAAA,WAAW,CAAC,UAAU,0CAAG,MAAM,CAAiB,CAAC;AAC1D,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB;AAEK,MAAM,SAAS,GAAG,CACvB,MAA4C,EACvB,EAAE;;IACvB,IAAI,MAAM,GAAwB,QAAQ,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,4BAAiB,CAAC,mBAAmB,CACtD,2BAA2B,EAC3B,MAAM,EACN,IAAI,CACL,CAAC;QACF,MAAM,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,mCAAI,QAAQ,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,GAAG,QAAQ,CAAC;IACpB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAhBW,QAAA,SAAS,aAgBpB"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/base/controllers/common.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAC5C,uCAA6D;AAE7D,yCAAiF;AAEjF,iDAAuD;AAEvD,iHAAiH;AAC1G,MAAM,UAAU,GAAG,CAAyB,MAAkB,EAAE,EAAE;;IACvE,MAAM,EAAE,qBACH,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,CAClB,CAAC;IAEF,EAAE,CAAC,OAAO,CAAC,GAAG,MAAA,EAAE,CAAC,OAAO,CAAC,mCAAI,YAAG,CAAC,mBAAmB,CAAC;IACrD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAPW,QAAA,UAAU,cAOrB;AAEF,iHAAiH;AACjH,MAAa,cAAc;IAIzB,YAAY,IAA+C;;QAF3D,iBAAY,GAAW,YAAG,CAAC,mBAAmB,CAAC;QAG7C,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,SAAS,CAAC,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,mCAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,YAAY,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,mCAAI,YAAG,CAAC,mBAAmB,CAAC;IACpE,CAAC;CACF;AARD,wCAQC;AAED,iHAAiH;AAC1G,MAAM,WAAW,GAAG,CACzB,MAA8C,EAChC,EAAE;;IAChB,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAA,yBAAkB,EAAC,IAAA,oBAAa,EAAC,MAAM,CAAC,CAAiB,CAAC;IAC9E,OAAO,MAAA,WAAW,CAAC,UAAU,0CAAG,MAAM,CAAiB,CAAC;AAC1D,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB;AAEF,iHAAiH;AAC1G,MAAM,SAAS,GAAG,CACvB,MAA4C,EACvB,EAAE;;IACvB,IAAI,MAAM,GAAwB,QAAQ,CAAC;IAE3C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,4BAAiB,CAAC,mBAAmB,CACtD,2BAA2B,EAC3B,MAAM,EACN,IAAI,CACL,CAAC;QAEF,MAAM,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,mCAAI,QAAQ,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CACX,iFAAiF,EACjF,CAAC,CACF,CAAC;QAEF,MAAM,GAAG,QAAQ,CAAC;QAClB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAxBW,QAAA,SAAS,aAwBpB"}
@@ -1,12 +1,22 @@
1
1
  import { AnyType, EntityClassType, EntityRelationType, IdType, ITzRepository } from '../../common/types';
2
2
  import { ApplicationLogger } from '../../helpers';
3
- import { AnyObject, WhereBuilder as BaseWhereBuilder, Command, Count, DataObject, DefaultCrudRepository, DefaultKeyValueRepository, IsolationLevel, juggler, NamedParameters, Options, PositionalParameters, Transaction, TransactionalEntityRepository, Where } from '@loopback/repository';
3
+ import { AnyObject, WhereBuilder as BaseWhereBuilder, Command, Count, DataObject, DefaultCrudRepository as _DefaultCrudRepository, DefaultKeyValueRepository, IsolationLevel, juggler, NamedParameters, Options, PositionalParameters, Transaction, TransactionalEntityRepository, Where, HasManyRepositoryFactory, Getter, EntityCrudRepository } from '@loopback/repository';
4
4
  import { BaseEntity, BaseKVEntity, BaseTzEntity } from '../base.model';
5
5
  export declare class WhereBuilder<E extends object = AnyObject> extends BaseWhereBuilder {
6
6
  constructor(opts?: Where<E>);
7
7
  newInstance(opts?: Where<E>): WhereBuilder<E>;
8
8
  clone(): WhereBuilder;
9
9
  }
10
+ export declare class DefaultCrudRepository<E extends BaseEntity, ID, Relations extends object = {}> extends _DefaultCrudRepository<E, ID, Relations> {
11
+ /**
12
+ * @experimental
13
+ */
14
+ createHasManyPolymorphicRepositoryFactoryFor<Target extends BaseEntity, TargetId extends IdType, ForeignKeyType extends IdType>(opts: {
15
+ relationName: string;
16
+ principalType: string;
17
+ targetRepositoryGetter: Getter<EntityCrudRepository<Target, TargetId>>;
18
+ }): HasManyRepositoryFactory<Target, ForeignKeyType>;
19
+ }
10
20
  export declare abstract class AbstractTzRepository<E extends BaseTzEntity, R extends EntityRelationType = AnyType> extends DefaultCrudRepository<E, IdType, R> implements ITzRepository<E>, TransactionalEntityRepository<E, IdType, R> {
11
21
  protected logger: ApplicationLogger;
12
22
  constructor(entityClass: EntityClassType<E>, dataSource: juggler.DataSource, scope?: string);
@@ -14,12 +14,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.ViewRepository = exports.KVRepository = exports.AbstractKVRepository = exports.AbstractTzRepository = exports.WhereBuilder = void 0;
17
+ exports.ViewRepository = exports.KVRepository = exports.AbstractKVRepository = exports.AbstractTzRepository = exports.DefaultCrudRepository = exports.WhereBuilder = void 0;
18
18
  const helpers_1 = require("../../helpers");
19
19
  const utilities_1 = require("../../utilities");
20
20
  const repository_1 = require("@loopback/repository");
21
21
  const cloneDeep_1 = __importDefault(require("lodash/cloneDeep"));
22
22
  const get_1 = __importDefault(require("lodash/get"));
23
+ const factory_1 = require("./relations/has-many-polymorphic/factory");
23
24
  // ----------------------------------------------------------------------------------------------------------------------------------------
24
25
  class WhereBuilder extends repository_1.WhereBuilder {
25
26
  constructor(opts) {
@@ -34,7 +35,28 @@ class WhereBuilder extends repository_1.WhereBuilder {
34
35
  }
35
36
  exports.WhereBuilder = WhereBuilder;
36
37
  // ----------------------------------------------------------------------------------------------------------------------------------------
37
- class AbstractTzRepository extends repository_1.DefaultCrudRepository {
38
+ class DefaultCrudRepository extends repository_1.DefaultCrudRepository {
39
+ /**
40
+ * @experimental
41
+ */
42
+ createHasManyPolymorphicRepositoryFactoryFor(opts) {
43
+ const { relationName, principalType, targetRepositoryGetter } = opts;
44
+ const relationMetadata = this.entityClass.definition.relations[relationName];
45
+ if (!relationMetadata.polymorphic) {
46
+ throw (0, utilities_1.getError)({
47
+ message: '[createHasManyPolymorphicRepositoryFactoryFor] polymorphic missing in relation definition!',
48
+ });
49
+ }
50
+ return (0, factory_1.createHasManyPolymorphicRepositoryFactoryFor)({
51
+ relationMetadata,
52
+ principalType,
53
+ targetRepositoryGetter,
54
+ });
55
+ }
56
+ }
57
+ exports.DefaultCrudRepository = DefaultCrudRepository;
58
+ // ----------------------------------------------------------------------------------------------------------------------------------------
59
+ class AbstractTzRepository extends DefaultCrudRepository {
38
60
  constructor(entityClass, dataSource, scope) {
39
61
  super(entityClass, dataSource);
40
62
  this.logger = helpers_1.LoggerFactory.getLogger([scope !== null && scope !== void 0 ? scope : '']);
@@ -78,7 +100,7 @@ class KVRepository extends AbstractKVRepository {
78
100
  }
79
101
  exports.KVRepository = KVRepository;
80
102
  // ----------------------------------------------------------------------------------------------------------------------------------------
81
- class ViewRepository extends repository_1.DefaultCrudRepository {
103
+ class ViewRepository extends DefaultCrudRepository {
82
104
  constructor(entityClass, dataSource) {
83
105
  super(entityClass, dataSource);
84
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base.repository.js","sourceRoot":"","sources":["../../../src/base/repositories/base.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.repository.js","sourceRoot":"","sources":["../../../src/base/repositories/base.repository.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export * from './relations';
1
2
  export * from './base.repository';
2
3
  export * from './tz-crud.repository';
3
4
  export * from './searchable-tz-crud.repository';
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./relations"), exports);
17
18
  __exportStar(require("./base.repository"), exports);
18
19
  __exportStar(require("./tz-crud.repository"), exports);
19
20
  __exportStar(require("./searchable-tz-crud.repository"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/repositories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,uDAAqC;AACrC,kEAAgD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/repositories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAE5B,oDAAkC;AAClC,uDAAqC;AACrC,kEAAgD"}
@@ -0,0 +1,11 @@
1
+ import { IHasManyPolymorphicDefinition } from './types';
2
+ import { ValueOptionalExcept } from '../../../../common';
3
+ /**
4
+ * Custom decorator to define a polymorphic `@hasMany` relationship
5
+ *
6
+ * @param targetModelGetter - A function to return the target model constructor
7
+ * @param definition - Additional relation metadata
8
+ *
9
+ * @experimental
10
+ */
11
+ export declare function hasManyPolymorphic(definition: ValueOptionalExcept<IHasManyPolymorphicDefinition, 'target'>): (decoratedTarget: Object, key: string) => void;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hasManyPolymorphic = hasManyPolymorphic;
4
+ const repository_1 = require("@loopback/repository");
5
+ /**
6
+ * Custom decorator to define a polymorphic `@hasMany` relationship
7
+ *
8
+ * @param targetModelGetter - A function to return the target model constructor
9
+ * @param definition - Additional relation metadata
10
+ *
11
+ * @experimental
12
+ */
13
+ function hasManyPolymorphic(definition) {
14
+ return (decoratedTarget, key) => {
15
+ const meta = Object.assign({ name: key, type: repository_1.RelationType.hasMany, targetsMany: true, source: decoratedTarget.constructor, keyFrom: 'id', keyTo: 'principalId', polymorphic: {
16
+ discriminator: 'principal',
17
+ } }, definition);
18
+ (0, repository_1.relation)(meta)(decoratedTarget, key);
19
+ };
20
+ }
21
+ //# sourceMappingURL=decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorator.js","sourceRoot":"","sources":["../../../../../src/base/repositories/relations/has-many-polymorphic/decorator.ts"],"names":[],"mappings":";;AAYA,gDAmBC;AA/BD,qDAAsE;AAItE;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAChC,UAAwE;IAExE,OAAO,CAAC,eAAuB,EAAE,GAAW,EAAE,EAAE;QAC9C,MAAM,IAAI,mBACR,IAAI,EAAE,GAAG,EACT,IAAI,EAAE,yBAAY,CAAC,OAAO,EAC1B,WAAW,EAAE,IAAI,EACjB,MAAM,EAAE,eAAe,CAAC,WAA4B,EACpD,OAAO,EAAE,IAAI,EACb,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE;gBACX,aAAa,EAAE,WAAW;aAC3B,IACE,UAAU,CACd,CAAC;QAEF,IAAA,qBAAQ,EAAC,IAAI,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { BaseEntity } from '../../../../base/base.model';
2
+ import { IdType } from '../../../../common';
3
+ import { Getter } from '@loopback/core';
4
+ import { DefaultHasManyRepository, Entity, EntityCrudRepository, HasManyRepositoryFactory, InclusionResolver } from '@loopback/repository';
5
+ import { IHasManyPolymorphicDefinition, TPolymorphic } from './types';
6
+ /**
7
+ * @experimental
8
+ */
9
+ export declare const createHasManyPolymorphicInclusionResolver: <Target extends BaseEntity, TargetId extends IdType, TargetRelations extends object>(opts: {
10
+ principalType: string;
11
+ relationMetadata: IHasManyPolymorphicDefinition;
12
+ targetRepositoryGetter: Getter<EntityCrudRepository<Target, TargetId, TargetRelations>>;
13
+ }) => InclusionResolver<Entity, Target>;
14
+ /**
15
+ * @experimental
16
+ */
17
+ export declare const createHasManyPolymorphicRepositoryFactoryFor: <Target extends BaseEntity, TargetId extends IdType, SourceId extends IdType>(opts: {
18
+ principalType: string;
19
+ relationMetadata: IHasManyPolymorphicDefinition;
20
+ targetRepositoryGetter: Getter<EntityCrudRepository<Target, TargetId>>;
21
+ }) => HasManyRepositoryFactory<Target, SourceId>;
22
+ /**
23
+ * @experimental
24
+ */
25
+ export declare class DefaultHasManyPolymorphicRepository<Target extends BaseEntity, TargetId extends IdType, TargetRepository extends EntityCrudRepository<Target, TargetId>, SourceId> extends DefaultHasManyRepository<Target, TargetId, TargetRepository> {
26
+ constructor(opts: {
27
+ targetRepositoryGetter: Getter<TargetRepository>;
28
+ polymorphic: TPolymorphic & {
29
+ typeValue: string;
30
+ idValue: SourceId;
31
+ };
32
+ });
33
+ }
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DefaultHasManyPolymorphicRepository = exports.createHasManyPolymorphicRepositoryFactoryFor = exports.createHasManyPolymorphicInclusionResolver = void 0;
16
+ const utilities_1 = require("../../../../utilities");
17
+ const repository_1 = require("@loopback/repository");
18
+ const get_1 = __importDefault(require("lodash/get"));
19
+ const base_repository_1 = require("../../base.repository");
20
+ // ----------------------------------------------------------------------------------------------------------------------------------------
21
+ /**
22
+ * @experimental
23
+ */
24
+ const createHasManyPolymorphicInclusionResolver = (opts) => {
25
+ const { principalType, relationMetadata, targetRepositoryGetter } = opts;
26
+ return (entities, inclusion, options) => __awaiter(void 0, void 0, void 0, function* () {
27
+ var _a;
28
+ if (!entities.length) {
29
+ return [];
30
+ }
31
+ const sourceKey = relationMetadata.keyFrom;
32
+ if (!sourceKey) {
33
+ throw (0, utilities_1.getError)({
34
+ message: `[createHasManyPolymorphicInclusionResolver] Invalid sourceKey | relationMetadata: ${JSON.stringify(relationMetadata)}`,
35
+ });
36
+ }
37
+ const polymorphicFields = getPolymorphicFields(relationMetadata.polymorphic);
38
+ const sourceIds = entities.map(e => (0, get_1.default)(e, sourceKey));
39
+ const targetKey = polymorphicFields.idField;
40
+ const scope = typeof inclusion === 'string' ? {} : inclusion.scope;
41
+ const targetRepository = yield targetRepositoryGetter();
42
+ const filter = Object.assign(Object.assign({}, scope), { where: new base_repository_1.WhereBuilder(Object.assign({}, ((_a = scope === null || scope === void 0 ? void 0 : scope.where) !== null && _a !== void 0 ? _a : {})))
43
+ .inq(polymorphicFields.idField, sourceIds)
44
+ .eq(polymorphicFields.typeField, principalType)
45
+ .build() });
46
+ const targets = yield targetRepository.find(filter, options);
47
+ return (0, repository_1.flattenTargetsOfOneToManyRelation)(sourceIds, targets, targetKey);
48
+ });
49
+ };
50
+ exports.createHasManyPolymorphicInclusionResolver = createHasManyPolymorphicInclusionResolver;
51
+ // ----------------------------------------------------------------------------------------------------------------------------------------
52
+ /**
53
+ * @experimental
54
+ */
55
+ const createHasManyPolymorphicRepositoryFactoryFor = (opts) => {
56
+ const { principalType, relationMetadata, targetRepositoryGetter } = opts;
57
+ const rs = (sourceId) => {
58
+ return new DefaultHasManyPolymorphicRepository({
59
+ targetRepositoryGetter,
60
+ polymorphic: Object.assign(Object.assign({}, relationMetadata.polymorphic), { typeValue: principalType, idValue: sourceId }),
61
+ });
62
+ };
63
+ rs.inclusionResolver = (0, exports.createHasManyPolymorphicInclusionResolver)(opts);
64
+ return rs;
65
+ };
66
+ exports.createHasManyPolymorphicRepositoryFactoryFor = createHasManyPolymorphicRepositoryFactoryFor;
67
+ // ----------------------------------------------------------------------------------------------------------------------------------------
68
+ const getPolymorphicFields = (opts) => {
69
+ const { discriminator } = opts;
70
+ let typeField = null;
71
+ let idField = null;
72
+ switch (typeof discriminator) {
73
+ case 'string': {
74
+ typeField = `${discriminator}Type`;
75
+ idField = `${discriminator}Id`;
76
+ break;
77
+ }
78
+ case 'object': {
79
+ typeField = discriminator.typeField;
80
+ idField = discriminator.idField;
81
+ break;
82
+ }
83
+ default: {
84
+ throw (0, utilities_1.getError)({
85
+ statusCode: 500,
86
+ message: `[getFields] discriminator: ${typeof discriminator} | Invalid discriminator type!`,
87
+ });
88
+ }
89
+ }
90
+ return { typeField, idField };
91
+ };
92
+ // ----------------------------------------------------------------------------------------------------------------------------------------
93
+ /**
94
+ * @experimental
95
+ */
96
+ class DefaultHasManyPolymorphicRepository extends repository_1.DefaultHasManyRepository {
97
+ constructor(opts) {
98
+ const { targetRepositoryGetter, polymorphic } = opts;
99
+ const { typeField, idField } = getPolymorphicFields(polymorphic);
100
+ super(targetRepositoryGetter, {
101
+ [typeField]: polymorphic.typeValue,
102
+ [idField]: polymorphic.idValue,
103
+ });
104
+ }
105
+ }
106
+ exports.DefaultHasManyPolymorphicRepository = DefaultHasManyPolymorphicRepository;
107
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../src/base/repositories/relations/has-many-polymorphic/factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './types';
2
+ export * from './factory';
3
+ export * from './decorator';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./types"), exports);
18
+ __exportStar(require("./factory"), exports);
19
+ __exportStar(require("./decorator"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/repositories/relations/has-many-polymorphic/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,4CAA0B;AAC1B,8CAA4B"}
@@ -0,0 +1,10 @@
1
+ import { HasManyDefinition } from '@loopback/repository';
2
+ export type TPolymorphic = {
3
+ discriminator: string | {
4
+ typeField: string;
5
+ idField: string;
6
+ };
7
+ };
8
+ export interface IHasManyPolymorphicDefinition extends Omit<HasManyDefinition, 'through'> {
9
+ polymorphic: TPolymorphic;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/base/repositories/relations/has-many-polymorphic/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from './has-many-polymorphic';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./has-many-polymorphic"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/repositories/relations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC"}
@@ -36,6 +36,7 @@ export declare class EntityRelations {
36
36
  static readonly HAS_ONE = "hasOne";
37
37
  static readonly HAS_MANY = "hasMany";
38
38
  static readonly HAS_MANY_THROUGH = "hasManyThrough";
39
+ static readonly HAS_MANY_POLYMORPHIC = "hasManyPolymorphic";
39
40
  static readonly TYPE_SET: Set<string>;
40
41
  static isValid(type: string): boolean;
41
42
  }
@@ -53,11 +53,13 @@ EntityRelations.BELONGS_TO = 'belongsTo';
53
53
  EntityRelations.HAS_ONE = 'hasOne';
54
54
  EntityRelations.HAS_MANY = 'hasMany';
55
55
  EntityRelations.HAS_MANY_THROUGH = 'hasManyThrough';
56
+ EntityRelations.HAS_MANY_POLYMORPHIC = 'hasManyPolymorphic';
56
57
  EntityRelations.TYPE_SET = new Set([
57
58
  _c.BELONGS_TO,
58
59
  _c.HAS_ONE,
59
60
  _c.HAS_MANY,
60
61
  _c.HAS_MANY_THROUGH,
62
+ _c.HAS_MANY_POLYMORPHIC,
61
63
  ]);
62
64
  class ConfigurationDataType {
63
65
  static isValid(orgType) {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,27 @@ import { BaseIdEntity, BaseTzEntity } from '../base/base.model';
3
3
  import { BindingKey } from '@loopback/core';
4
4
  import { RequestContext } from '@loopback/rest';
5
5
  import { Count, DataObject, Entity, Filter, Options, Where } from '@loopback/repository';
6
+ export type NumberIdType = number;
7
+ export type StringIdType = string;
8
+ export type IdType = string | number;
9
+ export type NullableType = undefined | null | void;
10
+ export type AnyType = any;
11
+ export type AnyObject = Record<string | symbol | number, any>;
12
+ export type ValueOrPromise<T> = T | Promise<T>;
13
+ export type ValueOf<T> = T[keyof T];
14
+ export type ValueOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
15
+ export type ValueOptionalExcept<T, K extends keyof T> = Pick<T, K> & Partial<Omit<T, K>>;
16
+ /**
17
+ * Alias for {@link ValueOf<T>}
18
+ */
19
+ export type ClassProps<T> = ValueOf<T>;
20
+ export type ClassType<T> = Function & {
21
+ prototype: T;
22
+ };
23
+ export type TStatusFromClass<T extends ClassType<AnyObject>> = ValueOf<Omit<T, 'prototype' | 'isValid' | 'SCHEME_SET'>>;
24
+ export type TRelationType = 'belongsTo' | 'hasOne' | 'hasMany' | 'hasManyThrough';
25
+ export type TBullQueueRole = 'queue' | 'worker';
26
+ export type TPermissionEffect = 'allow' | 'deny';
6
27
  export interface IApplication {
7
28
  models: Set<string>;
8
29
  staticConfigure(): void;
@@ -10,33 +31,21 @@ export interface IApplication {
10
31
  preConfigure(): void;
11
32
  postConfigure(): void;
12
33
  }
13
- export interface IDataSource {
34
+ export interface IDataSource<T extends object = object> {
14
35
  name: string;
15
- config: object;
36
+ config: T;
37
+ }
38
+ export interface IEntity {
39
+ id: IdType;
16
40
  }
17
- export type ClassType<T> = Function & {
18
- prototype: T;
19
- };
20
41
  export type EntityClassType<T extends Entity> = typeof Entity & {
21
42
  prototype: T & {
22
43
  id?: IdType;
23
44
  };
24
45
  };
25
46
  export type EntityRelationType = {};
26
- export type NumberIdType = number;
27
- export type StringIdType = string;
28
- export type IdType = string | number;
29
- export type AnyType = any;
30
- export type AnyObject = Record<string | symbol | number, any>;
31
- export type ValueOrPromise<T> = T | Promise<T>;
32
- export type ValueOf<T> = T[keyof T];
33
- export type NullableType = undefined | null | void;
34
- export type TRelationType = 'belongsTo' | 'hasOne' | 'hasMany' | 'hasManyThrough';
35
- export type TBullQueueRole = 'queue' | 'worker';
36
- export type TPermissionEffect = 'allow' | 'deny';
37
- export type TStatusFromClass<T extends ClassType<AnyObject>> = ValueOf<Omit<T, 'prototype' | 'isValid' | 'SCHEME_SET'>>;
38
- export interface IEntity {
39
- id: IdType;
47
+ export interface IDangerFilter extends Omit<Filter, 'order'> {
48
+ order: string | string[];
40
49
  }
41
50
  export interface IRepository {
42
51
  }
@@ -61,9 +70,6 @@ export interface ITzRepository<E extends BaseTzEntity> extends IPersistableRepos
61
70
  authorId: IdType;
62
71
  }): DataObject<E>;
63
72
  }
64
- export interface IDangerFilter extends Omit<Filter, 'order'> {
65
- order: string | string[];
66
- }
67
73
  export interface IService {
68
74
  }
69
75
  export interface ICrudMethodOptions {
@@ -113,8 +119,8 @@ export interface IEnvironmentValidationResult {
113
119
  result: boolean;
114
120
  message?: string;
115
121
  }
116
- export interface IError<N extends number = number> extends Error {
117
- statusCode: N;
122
+ export interface IError<StatusCode extends number = number> extends Error {
123
+ statusCode: StatusCode;
118
124
  message: string;
119
125
  [key: string]: any;
120
126
  }
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-server.js","sourceRoot":"","sources":["../../../../src/components/grpc/helpers/grpc-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc-server.js","sourceRoot":"","sources":["../../../../src/components/grpc/helpers/grpc-server.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,8 @@ export declare class RSA extends BaseCryptoAlgorithm<RSAAlgorithmType, IO> {
17
17
  generateDERKeyPair(opts?: {
18
18
  modulus: number;
19
19
  }): {
20
- publicKey: Buffer;
21
- privateKey: Buffer;
20
+ publicKey: Buffer<ArrayBufferLike>;
21
+ privateKey: Buffer<ArrayBufferLike>;
22
22
  };
23
23
  encrypt(message: string, pubKey: string, opts?: IO): string;
24
24
  decrypt(message: string, privKey: string, opts?: IO): string;
@@ -1,7 +1,7 @@
1
+ import { BaseHelper } from '../../base/base.helper';
2
+ import { TBullQueueRole } from '../../common/types';
1
3
  import { Job, Queue, Worker } from 'bullmq';
2
4
  import Redis from 'ioredis';
3
- import { TBullQueueRole } from '../../common/types';
4
- import { BaseHelper } from '../../base/base.helper';
5
5
  interface IBullMQOptions<TQueueElement = any, TQueueResult = any> {
6
6
  queueName: string;
7
7
  identifier: string;
@@ -10,8 +10,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.BullMQHelper = void 0;
13
- const bullmq_1 = require("bullmq");
14
13
  const base_helper_1 = require("../../base/base.helper");
14
+ const bullmq_1 = require("bullmq");
15
15
  class BullMQHelper extends base_helper_1.BaseHelper {
16
16
  constructor(options) {
17
17
  super({ scope: BullMQHelper.name, identifier: options.identifier });
@@ -1 +1 @@
1
- {"version":3,"file":"bullmq.helper.js","sourceRoot":"","sources":["../../../src/helpers/queue/bullmq.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bullmq.helper.js","sourceRoot":"","sources":["../../../src/helpers/queue/bullmq.helper.ts"],"names":[],"mappings":"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"}
@@ -24,12 +24,12 @@ let RequestSpyMiddleware = RequestSpyMiddleware_1 = class RequestSpyMiddleware e
24
24
  super({ scope: RequestSpyMiddleware_1.name });
25
25
  }
26
26
  handle(context) {
27
- var _a;
27
+ var _a, _b, _c;
28
28
  try {
29
29
  const { request } = context;
30
30
  const requestId = (0, parse_utility_1.getUID)();
31
31
  (0, set_1.default)(request, 'requestId', requestId);
32
- const { url = '', method, body, query, path } = request;
32
+ const { url = '', method, body, query, path, headers } = request;
33
33
  const requestUrl = (_a = decodeURIComponent(url)) === null || _a === void 0 ? void 0 : _a.replace(/(?:\r\n|\r|\n| )/g, '');
34
34
  const requestedRemark = {
35
35
  id: requestId,
@@ -40,7 +40,9 @@ let RequestSpyMiddleware = RequestSpyMiddleware_1 = class RequestSpyMiddleware e
40
40
  body,
41
41
  };
42
42
  (0, set_1.default)(request, 'requestedRemark', requestedRemark);
43
- this.logger.info('[spy][%s] Requested remark: %j', requestId, requestedRemark);
43
+ const requestForwardedIp = (_c = (_b = headers['x-real-ip']) !== null && _b !== void 0 ? _b : headers['x-forwarded-for']) !== null && _c !== void 0 ? _c : 'N/A';
44
+ (0, set_1.default)(request, 'requestForwardedIp', requestForwardedIp);
45
+ this.logger.info('[spy][%s] Request Information | forwardedIp: %s | remark: %j', requestId, requestForwardedIp, requestedRemark);
44
46
  }
45
47
  catch (error) {
46
48
  this.logger.error('[spy] Failed to spy request information | Error: %s', error);
@@ -1 +1 @@
1
- {"version":3,"file":"request-spy.middleware.js","sourceRoot":"","sources":["../../src/middlewares/request-spy.middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAoD;AACpD,6DAAmD;AACnD,yCAA4E;AAC5E,yCAMwB;AAExB,qDAA6B;AAQtB,IAAM,oBAAoB,4BAA1B,MAAM,oBAAqB,SAAQ,4BAAY;IACpD;QACE,KAAK,CAAC,EAAE,KAAK,EAAE,sBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,OAA0B;;QAC/B,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YAE5B,MAAM,SAAS,GAAG,IAAA,sBAAM,GAAE,CAAC;YAC3B,IAAA,aAAG,EAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YAErC,MAAM,EAAE,GAAG,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;YACxD,MAAM,UAAU,GAAG,MAAA,kBAAkB,CAAC,GAAG,CAAC,0CAAE,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;YAC7E,MAAM,eAAe,GAAG;gBACtB,EAAE,EAAE,SAAS;gBACb,GAAG,EAAE,UAAU;gBACf,MAAM;gBACN,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK;gBACnB,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,KAAK;gBACrB,IAAI;aACL,CAAC;YACF,IAAA,aAAG,EAAC,OAAO,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;YAEjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QACjF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE,KAAK,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAED,KAAK;QACH,OAAO,CAAC,OAA0B,EAAE,IAAU,EAAE,EAAE;YAChD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF,CAAA;AApCY,oDAAoB;+BAApB,oBAAoB;IANhC,IAAA,iBAAU,EACT,IAAA,mBAAY,EAAC;QACX,KAAK,EAAE,eAAQ,CAAC,qBAAqB;QACrC,KAAK,EAAE,2BAAoB,CAAC,UAAU;KACvC,CAAC,CACH;;GACY,oBAAoB,CAoChC"}
1
+ {"version":3,"file":"request-spy.middleware.js","sourceRoot":"","sources":["../../src/middlewares/request-spy.middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAoD;AACpD,6DAAmD;AACnD,yCAA4E;AAC5E,yCAMwB;AAExB,qDAA6B;AAQtB,IAAM,oBAAoB,4BAA1B,MAAM,oBAAqB,SAAQ,4BAAY;IACpD;QACE,KAAK,CAAC,EAAE,KAAK,EAAE,sBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,OAA0B;;QAC/B,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YAE5B,MAAM,SAAS,GAAG,IAAA,sBAAM,GAAE,CAAC;YAC3B,IAAA,aAAG,EAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YAErC,MAAM,EAAE,GAAG,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YACjE,MAAM,UAAU,GAAG,MAAA,kBAAkB,CAAC,GAAG,CAAC,0CAAE,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;YAC7E,MAAM,eAAe,GAAG;gBACtB,EAAE,EAAE,SAAS;gBACb,GAAG,EAAE,UAAU;gBACf,MAAM;gBACN,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK;gBACnB,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,KAAK;gBACrB,IAAI;aACL,CAAC;YACF,IAAA,aAAG,EAAC,OAAO,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;YAEjD,MAAM,kBAAkB,GAAG,MAAA,MAAA,OAAO,CAAC,WAAW,CAAC,mCAAI,OAAO,CAAC,iBAAiB,CAAC,mCAAI,KAAK,CAAC;YACvF,IAAA,aAAG,EAAC,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;YAEvD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,8DAA8D,EAC9D,SAAS,EACT,kBAAkB,EAClB,eAAe,CAChB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE,KAAK,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAED,KAAK;QACH,OAAO,CAAC,OAA0B,EAAE,IAAU,EAAE,EAAE;YAChD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF,CAAA;AA5CY,oDAAoB;+BAApB,oBAAoB;IANhC,IAAA,iBAAU,EACT,IAAA,mBAAY,EAAC;QACX,KAAK,EAAE,eAAQ,CAAC,qBAAqB;QACrC,KAAK,EAAE,2BAAoB,CAAC,UAAU;KACvC,CAAC,CACH;;GACY,oBAAoB,CA4ChC"}
@@ -12,8 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.DataTypeMixin = void 0;
13
13
  const repository_1 = require("@loopback/repository");
14
14
  const DataTypeMixin = (superClass) => {
15
- class Mixed extends superClass {
16
- }
15
+ let Mixed = class Mixed extends superClass {
16
+ };
17
17
  __decorate([
18
18
  (0, repository_1.property)({
19
19
  type: 'string',
@@ -62,6 +62,9 @@ const DataTypeMixin = (superClass) => {
62
62
  }),
63
63
  __metadata("design:type", String)
64
64
  ], Mixed.prototype, "dataType", void 0);
65
+ Mixed = __decorate([
66
+ (0, repository_1.model)()
67
+ ], Mixed);
65
68
  return Mixed;
66
69
  };
67
70
  exports.DataTypeMixin = DataTypeMixin;
@@ -1 +1 @@
1
- {"version":3,"file":"data-type.mixin.js","sourceRoot":"","sources":["../../src/mixins/data-type.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAAwD;AAEjD,MAAM,aAAa,GAAG,CAAgC,UAAa,EAAE,EAAE;IAC5E,MAAM,KAAM,SAAQ,UAAU;KA2C7B;IAnCC;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,MAAM;aACjB;SACF,CAAC;;yCACc;IAMhB;QAJC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;SACtC,CAAC;;yCACc;IAShB;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;aAClB;SACF,CAAC;;yCACW;IAUb;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;aAClB;SACF,CAAC;kCACO,KAAK;yCAAS;IASvB;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,WAAW;gBACvB,QAAQ,EAAE,MAAM;aACjB;SACF,CAAC;;2CACgB;IAGpB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AA/CW,QAAA,aAAa,iBA+CxB"}
1
+ {"version":3,"file":"data-type.mixin.js","sourceRoot":"","sources":["../../src/mixins/data-type.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAA+D;AAExD,MAAM,aAAa,GAAG,CAAgC,UAAa,EAAE,EAAE;IAE5E,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;KA2C7B,CAAA;IAnCC;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,MAAM;aACjB;SACF,CAAC;;yCACc;IAMhB;QAJC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;SACtC,CAAC;;yCACc;IAShB;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;aAClB;SACF,CAAC;;yCACW;IAUb;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,OAAO;aAClB;SACF,CAAC;kCACO,KAAK;yCAAS;IASvB;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,WAAW;gBACvB,QAAQ,EAAE,MAAM;aACjB;SACF,CAAC;;2CACgB;IA1Cd,KAAK;QADV,IAAA,kBAAK,GAAE;OACF,KAAK,CA2CV;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhDW,QAAA,aAAa,iBAgDxB"}
@@ -10,13 +10,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.DuplicatableMixin = void 0;
13
- const common_1 = require("../base/controllers/common");
14
13
  const base_model_1 = require("../base/base.model");
14
+ const common_1 = require("../base/controllers/common");
15
15
  const repository_1 = require("@loopback/repository");
16
16
  const DuplicatableMixin = (superClass) => {
17
17
  const sourceIdType = (0, common_1.getIdType)(base_model_1.BaseIdEntity);
18
- class Mixed extends superClass {
19
- }
18
+ let Mixed = class Mixed extends superClass {
19
+ };
20
20
  __decorate([
21
21
  (0, repository_1.property)({
22
22
  type: sourceIdType,
@@ -27,6 +27,9 @@ const DuplicatableMixin = (superClass) => {
27
27
  }),
28
28
  __metadata("design:type", Object)
29
29
  ], Mixed.prototype, "sourceId", void 0);
30
+ Mixed = __decorate([
31
+ (0, repository_1.model)()
32
+ ], Mixed);
30
33
  return Mixed;
31
34
  };
32
35
  exports.DuplicatableMixin = DuplicatableMixin;
@@ -1 +1 @@
1
- {"version":3,"file":"duplicatable.mixin.js","sourceRoot":"","sources":["../../src/mixins/duplicatable.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAsD;AACtD,kDAAiD;AAGjD,qDAAgD;AAEzC,MAAM,iBAAiB,GAAG,CAAsC,UAAa,EAAE,EAAE;IACtF,MAAM,YAAY,GAAG,IAAA,kBAAS,EAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,KAAM,SAAQ,UAAU;KAS7B;IADC;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE;gBACV,UAAU,EAAE,WAAW;gBACvB,QAAQ,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;aACzD;SACF,CAAC;;2CACgB;IAGpB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAdW,QAAA,iBAAiB,qBAc5B"}
1
+ {"version":3,"file":"duplicatable.mixin.js","sourceRoot":"","sources":["../../src/mixins/duplicatable.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAiD;AACjD,sDAAsD;AAGtD,qDAAuD;AAEhD,MAAM,iBAAiB,GAAG,CAAsC,UAAa,EAAE,EAAE;IACtF,MAAM,YAAY,GAAG,IAAA,kBAAS,EAAC,yBAAY,CAAC,CAAC;IAG7C,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;KAS7B,CAAA;IADC;QAPC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE;gBACV,UAAU,EAAE,WAAW;gBACvB,QAAQ,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;aACzD;SACF,CAAC;;2CACgB;IARd,KAAK;QADV,IAAA,kBAAK,GAAE;OACF,KAAK,CASV;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,iBAAiB,qBAgB5B"}
@@ -12,8 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ObjectSearchMixin = void 0;
13
13
  const repository_1 = require("@loopback/repository");
14
14
  const ObjectSearchMixin = (superClass) => {
15
- class Mixed extends superClass {
16
- }
15
+ let Mixed = class Mixed extends superClass {
16
+ };
17
17
  __decorate([
18
18
  (0, repository_1.property)({
19
19
  type: 'object',
@@ -25,6 +25,9 @@ const ObjectSearchMixin = (superClass) => {
25
25
  }),
26
26
  __metadata("design:type", Object)
27
27
  ], Mixed.prototype, "objectSearch", void 0);
28
+ Mixed = __decorate([
29
+ (0, repository_1.model)()
30
+ ], Mixed);
28
31
  return Mixed;
29
32
  };
30
33
  exports.ObjectSearchMixin = ObjectSearchMixin;
@@ -1 +1 @@
1
- {"version":3,"file":"object-search.mixin.js","sourceRoot":"","sources":["../../src/mixins/object-search.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,qDAAwD;AAEjD,MAAM,iBAAiB,GAAG,CAC/B,UAAa,EACb,EAAE;IACF,MAAM,KAAM,SAAQ,UAAU;KAU7B;IADC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE;gBACV,UAAU,EAAE,eAAe;gBAC3B,QAAQ,EAAE,OAAO;aAClB;SACF,CAAC;;+CACe;IAGnB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,iBAAiB,qBAgB5B"}
1
+ {"version":3,"file":"object-search.mixin.js","sourceRoot":"","sources":["../../src/mixins/object-search.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,qDAA+D;AAExD,MAAM,iBAAiB,GAAG,CAC/B,UAAa,EACb,EAAE;IAEF,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;KAU7B,CAAA;IADC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE;gBACV,UAAU,EAAE,eAAe;gBAC3B,QAAQ,EAAE,OAAO;aAClB;SACF,CAAC;;+CACe;IATb,KAAK;QADV,IAAA,kBAAK,GAAE;OACF,KAAK,CAUV;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAjBW,QAAA,iBAAiB,qBAiB5B"}
@@ -12,8 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.SoftDeleteModelMixin = void 0;
13
13
  const repository_1 = require("@loopback/repository");
14
14
  const SoftDeleteModelMixin = (superClass) => {
15
- class Mixed extends superClass {
16
- }
15
+ let Mixed = class Mixed extends superClass {
16
+ };
17
17
  __decorate([
18
18
  (0, repository_1.property)({
19
19
  type: 'boolean',
@@ -25,6 +25,9 @@ const SoftDeleteModelMixin = (superClass) => {
25
25
  }),
26
26
  __metadata("design:type", Boolean)
27
27
  ], Mixed.prototype, "isDeleted", void 0);
28
+ Mixed = __decorate([
29
+ (0, repository_1.model)()
30
+ ], Mixed);
28
31
  return Mixed;
29
32
  };
30
33
  exports.SoftDeleteModelMixin = SoftDeleteModelMixin;
@@ -1 +1 @@
1
- {"version":3,"file":"soft-delete.mixin.js","sourceRoot":"","sources":["../../src/mixins/soft-delete.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAAwD;AAEjD,MAAM,oBAAoB,GAAG,CAAgC,UAAa,EAAE,EAAE;IACnF,MAAM,KAAM,SAAQ,UAAU;KAU7B;IADC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC;;4CACkB;IAGtB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B"}
1
+ {"version":3,"file":"soft-delete.mixin.js","sourceRoot":"","sources":["../../src/mixins/soft-delete.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAA+D;AAExD,MAAM,oBAAoB,GAAG,CAAgC,UAAa,EAAE,EAAE;IAEnF,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;KAU7B,CAAA;IADC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC;;4CACkB;IAThB,KAAK;QADV,IAAA,kBAAK,GAAE;OACF,KAAK,CAUV;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAfW,QAAA,oBAAoB,wBAe/B"}
@@ -12,8 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.TextSearchMixin = void 0;
13
13
  const repository_1 = require("@loopback/repository");
14
14
  const TextSearchMixin = (superClass) => {
15
- class Mixed extends superClass {
16
- }
15
+ let Mixed = class Mixed extends superClass {
16
+ };
17
17
  __decorate([
18
18
  (0, repository_1.property)({
19
19
  type: 'string',
@@ -25,6 +25,9 @@ const TextSearchMixin = (superClass) => {
25
25
  }),
26
26
  __metadata("design:type", String)
27
27
  ], Mixed.prototype, "textSearch", void 0);
28
+ Mixed = __decorate([
29
+ (0, repository_1.model)()
30
+ ], Mixed);
28
31
  return Mixed;
29
32
  };
30
33
  exports.TextSearchMixin = TextSearchMixin;
@@ -1 +1 @@
1
- {"version":3,"file":"text-search.mixin.js","sourceRoot":"","sources":["../../src/mixins/text-search.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAAwD;AAEjD,MAAM,eAAe,GAAG,CAAgC,UAAa,EAAE,EAAE;IAC9E,MAAM,KAAM,SAAQ,UAAU;KAU7B;IADC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE;gBACV,UAAU,EAAE,aAAa;gBACzB,QAAQ,EAAE,MAAM;aACjB;SACF,CAAC;;6CACkB;IAGtB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B"}
1
+ {"version":3,"file":"text-search.mixin.js","sourceRoot":"","sources":["../../src/mixins/text-search.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAA+D;AAExD,MAAM,eAAe,GAAG,CAAgC,UAAa,EAAE,EAAE;IAE9E,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;KAU7B,CAAA;IADC;QARC,IAAA,qBAAQ,EAAC;YACR,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE;gBACV,UAAU,EAAE,aAAa;gBACzB,QAAQ,EAAE,MAAM;aACjB;SACF,CAAC;;6CACkB;IAThB,KAAK;QADV,IAAA,kBAAK,GAAE;OACF,KAAK,CAUV;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAfW,QAAA,eAAe,mBAe1B"}
@@ -1,3 +1,4 @@
1
+ export declare const getPerformanceCheckpoint: () => number;
1
2
  export declare const getExecutedPerformance: (opts: {
2
3
  from: number;
3
4
  digit?: number;
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getExecutedPerformance = void 0;
3
+ exports.getExecutedPerformance = exports.getPerformanceCheckpoint = void 0;
4
4
  const _1 = require(".");
5
5
  const DEFAULT_PERFORMANCE_DECIMAL = 6;
6
+ const getPerformanceCheckpoint = () => {
7
+ return performance.now();
8
+ };
9
+ exports.getPerformanceCheckpoint = getPerformanceCheckpoint;
6
10
  const getExecutedPerformance = (opts) => {
7
11
  var _a;
8
12
  return (0, _1.float)(performance.now() - opts.from, (_a = opts.digit) !== null && _a !== void 0 ? _a : DEFAULT_PERFORMANCE_DECIMAL);
@@ -1 +1 @@
1
- {"version":3,"file":"performance.utility.js","sourceRoot":"","sources":["../../src/utilities/performance.utility.ts"],"names":[],"mappings":";;;AAAA,wBAA0B;AAE1B,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE/B,MAAM,sBAAsB,GAAG,CAAC,IAAsC,EAAE,EAAE;;IAC/E,OAAO,IAAA,QAAK,EAAC,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,MAAA,IAAI,CAAC,KAAK,mCAAI,2BAA2B,CAAC,CAAC;AACzF,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC"}
1
+ {"version":3,"file":"performance.utility.js","sourceRoot":"","sources":["../../src/utilities/performance.utility.ts"],"names":[],"mappings":";;;AAAA,wBAA0B;AAE1B,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE/B,MAAM,wBAAwB,GAAG,GAAG,EAAE;IAC3C,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC;AAC3B,CAAC,CAAC;AAFW,QAAA,wBAAwB,4BAEnC;AAEK,MAAM,sBAAsB,GAAG,CAAC,IAAsC,EAAE,EAAE;;IAC/E,OAAO,IAAA,QAAK,EAAC,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,MAAA,IAAI,CAAC,KAAK,mCAAI,2BAA2B,CAAC,CAAC;AACzF,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC"}
@@ -1,5 +1,22 @@
1
1
  import { ValueOrPromise } from '../common';
2
2
  type TTask<T> = () => Promise<T>;
3
+ /**
4
+ * Execute all tasks with limit number of asyncronous tasks.
5
+ * Whenever 1 task's resolved next task will be executed.
6
+ *
7
+ * @example
8
+ * With 20 tasks need to execute with limit is 5 tasks asyncronous
9
+ * ```
10
+ * const tasks = <Array of 20 functions which return promises>
11
+ * await executePromiseWithLimit({
12
+ * tasks,
13
+ * limit: 5,
14
+ onTaskDone: (opts: { result: any }) => {
15
+ // Do something on task done
16
+ },
17
+ * })
18
+ * ```
19
+ */
3
20
  export declare const executePromiseWithLimit: <T>(opts: {
4
21
  tasks: Array<TTask<T>>;
5
22
  limit: number;
@@ -10,6 +10,23 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.executePromiseWithLimit = void 0;
13
+ /**
14
+ * Execute all tasks with limit number of asyncronous tasks.
15
+ * Whenever 1 task's resolved next task will be executed.
16
+ *
17
+ * @example
18
+ * With 20 tasks need to execute with limit is 5 tasks asyncronous
19
+ * ```
20
+ * const tasks = <Array of 20 functions which return promises>
21
+ * await executePromiseWithLimit({
22
+ * tasks,
23
+ * limit: 5,
24
+ onTaskDone: (opts: { result: any }) => {
25
+ // Do something on task done
26
+ },
27
+ * })
28
+ * ```
29
+ */
13
30
  const executePromiseWithLimit = (opts) => __awaiter(void 0, void 0, void 0, function* () {
14
31
  const { tasks, limit, onTaskDone } = opts;
15
32
  const results = [];
@@ -1 +1 @@
1
- {"version":3,"file":"promise.utility.js","sourceRoot":"","sources":["../../src/utilities/promise.utility.ts"],"names":[],"mappings":";;;;;;;;;;;;AAIO,MAAM,uBAAuB,GAAG,CAAU,IAIhD,EAAE,EAAE;IACH,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;IAE5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACnC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEtB,IAAI,SAAS,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3C,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAA,CAAC;AA3BW,QAAA,uBAAuB,2BA2BlC"}
1
+ {"version":3,"file":"promise.utility.js","sourceRoot":"","sources":["../../src/utilities/promise.utility.ts"],"names":[],"mappings":";;;;;;;;;;;;AAIA;;;;;;;;;;;;;;;;GAgBG;AACI,MAAM,uBAAuB,GAAG,CAAU,IAIhD,EAAE,EAAE;IACH,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;IAE5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACnC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEtB,IAAI,SAAS,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3C,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAA,CAAC;AA3BW,QAAA,uBAAuB,2BA2BlC"}
@@ -12,6 +12,9 @@ export declare const getSchemaObject: <T extends object>(ctor?: Function & {
12
12
  export declare const getRequestId: (opts: {
13
13
  request: Request;
14
14
  }) => undefined;
15
+ export declare const getRequestIp: (opts: {
16
+ request: Request;
17
+ }) => string;
15
18
  export declare const getRequestRemark: (opts: {
16
19
  request: Request;
17
20
  }) => IRequestedRemark | undefined;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getRequestRemark = exports.getRequestId = exports.getSchemaObject = exports.parseMultipartBody = void 0;
6
+ exports.getRequestRemark = exports.getRequestIp = exports.getRequestId = exports.getSchemaObject = exports.parseMultipartBody = void 0;
7
7
  const rest_1 = require("@loopback/rest");
8
8
  const get_1 = __importDefault(require("lodash/get"));
9
9
  const multer_1 = __importDefault(require("multer"));
@@ -34,6 +34,12 @@ const getRequestId = (opts) => {
34
34
  };
35
35
  exports.getRequestId = getRequestId;
36
36
  // -------------------------------------------------------------------------
37
+ const getRequestIp = (opts) => {
38
+ var _a;
39
+ return (_a = (0, get_1.default)(opts.request, 'requestForwardedIp')) !== null && _a !== void 0 ? _a : 'N/A';
40
+ };
41
+ exports.getRequestIp = getRequestIp;
42
+ // -------------------------------------------------------------------------
37
43
  const getRequestRemark = (opts) => {
38
44
  return (0, get_1.default)(opts.request, 'requestedRemark');
39
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"request.utility.js","sourceRoot":"","sources":["../../src/utilities/request.utility.ts"],"names":[],"mappings":";;;;;;AACA,yCAAsE;AACtE,qDAA6B;AAC7B,oDAA4B;AAE5B,4EAA4E;AACrE,MAAM,kBAAkB,GAAG,CAAC,IAIlC,EAAE,EAAE;IACH,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,gBAAM,CAAC,aAAa,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAEnC,OAAO,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAQ,EAAE,EAAE;YAC3C,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAnBW,QAAA,kBAAkB,sBAmB7B;AAEF,4EAA4E;AACrE,MAAM,eAAe,GAAG,CAAmB,IAAkC,EAAE,EAAE;IACtF,OAAO,IAAI,CAAC,CAAC,CAAC,IAAA,wBAAiB,EAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEF,4EAA4E;AACrE,MAAM,YAAY,GAAG,CAAC,IAA0B,EAAE,EAAE;IACzD,OAAO,IAAA,aAAG,EAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AAEF,4EAA4E;AACrE,MAAM,gBAAgB,GAAG,CAAC,IAA0B,EAAgC,EAAE;IAC3F,OAAO,IAAA,aAAG,EAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;AAC9C,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B"}
1
+ {"version":3,"file":"request.utility.js","sourceRoot":"","sources":["../../src/utilities/request.utility.ts"],"names":[],"mappings":";;;;;;AACA,yCAAsE;AACtE,qDAA6B;AAC7B,oDAA4B;AAE5B,4EAA4E;AACrE,MAAM,kBAAkB,GAAG,CAAC,IAIlC,EAAE,EAAE;IACH,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,gBAAM,CAAC,aAAa,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAEnC,OAAO,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAQ,EAAE,EAAE;YAC3C,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAnBW,QAAA,kBAAkB,sBAmB7B;AAEF,4EAA4E;AACrE,MAAM,eAAe,GAAG,CAAmB,IAAkC,EAAE,EAAE;IACtF,OAAO,IAAI,CAAC,CAAC,CAAC,IAAA,wBAAiB,EAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEF,4EAA4E;AACrE,MAAM,YAAY,GAAG,CAAC,IAA0B,EAAE,EAAE;IACzD,OAAO,IAAA,aAAG,EAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AAEF,4EAA4E;AACrE,MAAM,YAAY,GAAG,CAAC,IAA0B,EAAE,EAAE;;IACzD,OAAO,MAAA,IAAA,aAAG,EAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,mCAAI,KAAK,CAAC;AAC1D,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AAEF,4EAA4E;AACrE,MAAM,gBAAgB,GAAG,CAAC,IAA0B,EAAgC,EAAE;IAC3F,OAAO,IAAA,aAAG,EAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;AAC9C,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@minimaltech/node-infra",
3
- "version": "0.3.20",
3
+ "version": "0.3.22",
4
4
  "description": "Minimal Technology NodeJS Infrastructure - Loopback 4 Framework",
5
5
  "keywords": [
6
6
  "web",
@@ -108,29 +108,29 @@
108
108
  "access": "public"
109
109
  },
110
110
  "dependencies": {
111
- "@grpc/grpc-js": "^1.11.3",
111
+ "@grpc/grpc-js": "^1.12.3",
112
112
  "@grpc/proto-loader": "^0.7.13",
113
- "@loopback/authentication": "^11.0.6",
114
- "@loopback/authentication-jwt": "^0.15.6",
115
- "@loopback/authentication-passport": "^7.0.6",
116
- "@loopback/authorization": "^0.15.6",
117
- "@loopback/boot": "^7.0.6",
118
- "@loopback/core": "^6.1.3",
119
- "@loopback/http-server": "^6.0.6",
120
- "@loopback/metadata": "^7.0.6",
121
- "@loopback/repository": "^7.0.6",
122
- "@loopback/rest": "^14.0.6",
123
- "@loopback/rest-crud": "^0.18.6",
124
- "@loopback/rest-explorer": "^7.0.6",
125
- "@loopback/security": "^0.11.6",
126
- "@loopback/service-proxy": "^7.0.6",
113
+ "@loopback/authentication": "^11.0.8",
114
+ "@loopback/authentication-jwt": "^0.15.8",
115
+ "@loopback/authentication-passport": "^7.0.8",
116
+ "@loopback/authorization": "^0.15.8",
117
+ "@loopback/boot": "^7.0.8",
118
+ "@loopback/core": "^6.1.5",
119
+ "@loopback/http-server": "^6.0.8",
120
+ "@loopback/metadata": "^7.0.8",
121
+ "@loopback/repository": "^7.0.8",
122
+ "@loopback/rest": "^14.0.8",
123
+ "@loopback/rest-crud": "^0.18.8",
124
+ "@loopback/rest-explorer": "^7.0.8",
125
+ "@loopback/security": "^0.11.8",
126
+ "@loopback/service-proxy": "^7.0.8",
127
127
  "@node-oauth/oauth2-server": "^5.2.0",
128
128
  "@socket.io/redis-adapter": "^8.3.0",
129
129
  "@socket.io/redis-emitter": "^5.1.0",
130
- "axios": "^1.7.7",
131
- "bullmq": "^5.13.2",
132
- "casbin": "^5.31.0",
133
- "cron": "^3.1.7",
130
+ "axios": "^1.7.8",
131
+ "bullmq": "^5.31.0",
132
+ "casbin": "^5.36.0",
133
+ "cron": "^3.2.1",
134
134
  "dayjs": "^1.11.13",
135
135
  "dotenv-flow": "4.1.0",
136
136
  "ejs": "^3.1.10",
@@ -138,34 +138,34 @@
138
138
  "jsonwebtoken": "^9.0.2",
139
139
  "knex": "^3.1.0",
140
140
  "lodash": "^4.17.21",
141
- "minio": "^8.0.1",
142
- "mocha": "^10.7.3",
143
- "mqtt": "^5.10.1",
141
+ "minio": "^8.0.2",
142
+ "mocha": "^11.0.1",
143
+ "mqtt": "^5.10.3",
144
144
  "multer": "1.4.5-lts.1",
145
145
  "rxjs": "^7.8.1",
146
- "socket.io": "^4.8.0",
147
- "socket.io-client": "^4.8.0",
148
- "winston": "^3.14.2",
146
+ "socket.io": "^4.8.1",
147
+ "socket.io-client": "^4.8.1",
148
+ "winston": "^3.17.0",
149
149
  "winston-daily-rotate-file": "^5.0.0"
150
150
  },
151
151
  "devDependencies": {
152
- "@loopback/build": "^11.0.6",
153
- "@loopback/testlab": "^7.0.6",
152
+ "@loopback/build": "^11.0.7",
153
+ "@loopback/testlab": "^7.0.7",
154
154
  "@minimaltech/eslint-node": "^0.1.15",
155
- "@types/express": "^4.17.21",
155
+ "@types/express": "4.17.21",
156
156
  "@types/jsonwebtoken": "^9.0.7",
157
- "@types/lodash": "^4.17.9",
158
- "@types/mocha": "^10.0.8",
157
+ "@types/lodash": "^4.17.13",
158
+ "@types/mocha": "^10.0.10",
159
159
  "@types/multer": "^1.4.12",
160
- "@types/node": "^20.16.10",
160
+ "@types/node": "^20.17.9",
161
161
  "eslint": "^8.57.1",
162
- "husky": "^9.1.6",
163
- "prettier": "^3.3.3",
162
+ "husky": "^9.1.7",
163
+ "prettier": "^3.4.1",
164
164
  "source-map-support": "^0.5.21",
165
165
  "ts-node": "^10.9.2",
166
166
  "tsc-alias": "^1.8.10",
167
167
  "tsconfig-paths": "^4.2.0",
168
- "typescript": "^5.6.2"
168
+ "typescript": "^5.7.2"
169
169
  },
170
170
  "scripts": {
171
171
  "build": "sh ./scripts/build.sh",