atomic-queues 2.1.1 → 2.2.0

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 (75) hide show
  1. package/README.md +24 -1
  2. package/dist/cli/generators/classes.d.ts.map +1 -1
  3. package/dist/cli/generators/classes.js +15 -11
  4. package/dist/cli/generators/classes.js.map +1 -1
  5. package/dist/cli/generators/typescript.js +16 -9
  6. package/dist/cli/generators/typescript.js.map +1 -1
  7. package/dist/cli/index.js +34 -20
  8. package/dist/cli/index.js.map +1 -1
  9. package/dist/decorators/actor.decorators.d.ts.map +1 -1
  10. package/dist/decorators/actor.decorators.js.map +1 -1
  11. package/dist/decorators/entity.decorators.d.ts.map +1 -1
  12. package/dist/decorators/entity.decorators.js.map +1 -1
  13. package/dist/decorators/job.decorators.d.ts.map +1 -1
  14. package/dist/decorators/job.decorators.js +2 -6
  15. package/dist/decorators/job.decorators.js.map +1 -1
  16. package/dist/decorators/utils.d.ts +2 -1
  17. package/dist/decorators/utils.d.ts.map +1 -1
  18. package/dist/decorators/utils.js +15 -20
  19. package/dist/decorators/utils.js.map +1 -1
  20. package/dist/domain/interfaces/config.interfaces.d.ts +2 -0
  21. package/dist/domain/interfaces/config.interfaces.d.ts.map +1 -1
  22. package/dist/domain/interfaces/cqrs.interfaces.d.ts +2 -2
  23. package/dist/domain/interfaces/cqrs.interfaces.d.ts.map +1 -1
  24. package/dist/module/atomic-queues.module.d.ts +1 -1
  25. package/dist/module/atomic-queues.module.d.ts.map +1 -1
  26. package/dist/module/atomic-queues.module.js +20 -44
  27. package/dist/module/atomic-queues.module.js.map +1 -1
  28. package/dist/services/actor-registry/actor-registry.service.d.ts +5 -3
  29. package/dist/services/actor-registry/actor-registry.service.d.ts.map +1 -1
  30. package/dist/services/actor-registry/actor-registry.service.js +29 -12
  31. package/dist/services/actor-registry/actor-registry.service.js.map +1 -1
  32. package/dist/services/command-discovery/command-discovery.service.d.ts +6 -10
  33. package/dist/services/command-discovery/command-discovery.service.d.ts.map +1 -1
  34. package/dist/services/command-discovery/command-discovery.service.js +12 -25
  35. package/dist/services/command-discovery/command-discovery.service.js.map +1 -1
  36. package/dist/services/executor-pool/executor-pool.service.d.ts.map +1 -1
  37. package/dist/services/executor-pool/executor-pool.service.js +14 -14
  38. package/dist/services/executor-pool/executor-pool.service.js.map +1 -1
  39. package/dist/services/gate/gate.service.d.ts +2 -2
  40. package/dist/services/gate/gate.service.d.ts.map +1 -1
  41. package/dist/services/gate/gate.service.js +19 -4
  42. package/dist/services/gate/gate.service.js.map +1 -1
  43. package/dist/services/handler-executor/handler-executor.service.d.ts +6 -12
  44. package/dist/services/handler-executor/handler-executor.service.d.ts.map +1 -1
  45. package/dist/services/handler-executor/handler-executor.service.js +23 -36
  46. package/dist/services/handler-executor/handler-executor.service.js.map +1 -1
  47. package/dist/services/log/log.service.d.ts.map +1 -1
  48. package/dist/services/log/log.service.js +1 -1
  49. package/dist/services/log/log.service.js.map +1 -1
  50. package/dist/services/queue-bus/cluster-contracts.d.ts +1 -1
  51. package/dist/services/queue-bus/cluster-contracts.d.ts.map +1 -1
  52. package/dist/services/queue-bus/cluster-contracts.js +16 -9
  53. package/dist/services/queue-bus/cluster-contracts.js.map +1 -1
  54. package/dist/services/queue-bus/queue-bus.service.d.ts +46 -29
  55. package/dist/services/queue-bus/queue-bus.service.d.ts.map +1 -1
  56. package/dist/services/queue-bus/queue-bus.service.js +77 -60
  57. package/dist/services/queue-bus/queue-bus.service.js.map +1 -1
  58. package/dist/services/queue-bus/queue-bus.utils.d.ts.map +1 -1
  59. package/dist/services/queue-bus/queue-bus.utils.js.map +1 -1
  60. package/dist/services/registry/registry.service.d.ts.map +1 -1
  61. package/dist/services/registry/registry.service.js +5 -3
  62. package/dist/services/registry/registry.service.js.map +1 -1
  63. package/dist/services/scheduler/scheduler.service.d.ts +2 -2
  64. package/dist/services/scheduler/scheduler.service.d.ts.map +1 -1
  65. package/dist/services/scheduler/scheduler.service.js +11 -9
  66. package/dist/services/scheduler/scheduler.service.js.map +1 -1
  67. package/dist/utils/cqrs-discovery.utils.d.ts +9 -0
  68. package/dist/utils/cqrs-discovery.utils.d.ts.map +1 -0
  69. package/dist/utils/cqrs-discovery.utils.js +28 -0
  70. package/dist/utils/cqrs-discovery.utils.js.map +1 -0
  71. package/dist/utils/index.d.ts +1 -0
  72. package/dist/utils/index.d.ts.map +1 -1
  73. package/dist/utils/index.js +1 -0
  74. package/dist/utils/index.js.map +1 -1
  75. package/package.json +9 -5
@@ -31,22 +31,20 @@ const CORE_SERVICES = [
31
31
  ];
32
32
  let AtomicQueuesModule = AtomicQueuesModule_1 = class AtomicQueuesModule {
33
33
  static forRoot(config) {
34
- const redisProvider = this.createRedisProvider(config);
35
34
  return {
36
35
  module: AtomicQueuesModule_1,
37
36
  imports: [core_1.DiscoveryModule],
38
37
  providers: [
39
38
  { provide: services_1.ATOMIC_QUEUES_CONFIG, useValue: config },
40
- redisProvider,
39
+ {
40
+ provide: services_1.ATOMIC_QUEUES_REDIS,
41
+ useFactory: () => this.buildRedisConnection(config),
42
+ },
41
43
  core_1.DiscoveryService,
42
44
  core_1.MetadataScanner,
43
45
  ...CORE_SERVICES,
44
46
  ],
45
- exports: [
46
- services_1.ATOMIC_QUEUES_CONFIG,
47
- services_1.ATOMIC_QUEUES_REDIS,
48
- ...CORE_SERVICES,
49
- ],
47
+ exports: [services_1.ATOMIC_QUEUES_CONFIG, services_1.ATOMIC_QUEUES_REDIS, ...CORE_SERVICES],
50
48
  };
51
49
  }
52
50
  static forRootAsync(options) {
@@ -61,52 +59,30 @@ let AtomicQueuesModule = AtomicQueuesModule_1 = class AtomicQueuesModule {
61
59
  },
62
60
  {
63
61
  provide: services_1.ATOMIC_QUEUES_REDIS,
64
- useFactory: (config) => {
65
- if (config.redis.url) {
66
- return new ioredis_1.default(config.redis.url, {
67
- maxRetriesPerRequest: config.redis.maxRetriesPerRequest ?? null,
68
- });
69
- }
70
- return new ioredis_1.default({
71
- host: config.redis.host || 'localhost',
72
- port: config.redis.port || 6379,
73
- password: config.redis.password,
74
- db: config.redis.db,
75
- maxRetriesPerRequest: config.redis.maxRetriesPerRequest ?? null,
76
- });
77
- },
62
+ useFactory: (config) => this.buildRedisConnection(config),
78
63
  inject: [services_1.ATOMIC_QUEUES_CONFIG],
79
64
  },
80
65
  core_1.DiscoveryService,
81
66
  core_1.MetadataScanner,
82
67
  ...CORE_SERVICES,
83
68
  ],
84
- exports: [
85
- services_1.ATOMIC_QUEUES_CONFIG,
86
- services_1.ATOMIC_QUEUES_REDIS,
87
- ...CORE_SERVICES,
88
- ],
69
+ exports: [services_1.ATOMIC_QUEUES_CONFIG, services_1.ATOMIC_QUEUES_REDIS, ...CORE_SERVICES],
89
70
  global: options.isGlobal ?? true,
90
71
  };
91
72
  }
92
- static createRedisProvider(config) {
93
- return {
94
- provide: services_1.ATOMIC_QUEUES_REDIS,
95
- useFactory: () => {
96
- if (config.redis.url) {
97
- return new ioredis_1.default(config.redis.url, {
98
- maxRetriesPerRequest: config.redis.maxRetriesPerRequest ?? null,
99
- });
100
- }
101
- return new ioredis_1.default({
102
- host: config.redis.host || 'localhost',
103
- port: config.redis.port || 6379,
104
- password: config.redis.password,
105
- db: config.redis.db,
106
- maxRetriesPerRequest: config.redis.maxRetriesPerRequest ?? null,
107
- });
108
- },
109
- };
73
+ static buildRedisConnection(config) {
74
+ if (config.redis.url) {
75
+ return new ioredis_1.default(config.redis.url, {
76
+ maxRetriesPerRequest: config.redis.maxRetriesPerRequest ?? null,
77
+ });
78
+ }
79
+ return new ioredis_1.default({
80
+ host: config.redis.host || 'localhost',
81
+ port: config.redis.port || 6379,
82
+ password: config.redis.password,
83
+ db: config.redis.db,
84
+ maxRetriesPerRequest: config.redis.maxRetriesPerRequest ?? null,
85
+ });
110
86
  }
111
87
  };
112
88
  exports.AtomicQueuesModule = AtomicQueuesModule;
@@ -1 +1 @@
1
- {"version":3,"file":"atomic-queues.module.js","sourceRoot":"","sources":["../../src/module/atomic-queues.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atomic-queues.module.js","sourceRoot":"","sources":["../../src/module/atomic-queues.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAA+E;AAC/E,uCAAkF;AAClF,sDAA4B;AAE5B,0CAeqB;AAErB,MAAM,aAAa,GAAe;IAChC,qBAAU;IACV,sBAAW;IACX,2BAAgB;IAChB,8BAAmB;IACnB,0BAAe;IACf,wBAAa;IACb,sBAAW;IACX,mBAAQ;IACR,kCAAuB;IACvB,0BAAe;IACf,0BAAe;IACf,0BAAe;CAChB,CAAC;AAaK,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC7B,MAAM,CAAC,OAAO,CAAC,MAAiC;QAC9C,OAAO;YACL,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,CAAC,sBAAe,CAAC;YAC1B,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,+BAAoB,EAAE,QAAQ,EAAE,MAAM,EAAE;gBACnD;oBACE,OAAO,EAAE,8BAAmB;oBAC5B,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;iBACpD;gBACD,uBAAgB;gBAChB,sBAAe;gBACf,GAAG,aAAa;aACjB;YACD,OAAO,EAAE,CAAC,+BAAoB,EAAE,8BAAmB,EAAE,GAAG,aAAa,CAAC;SACvE,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,OAAuC;QACzD,OAAO;YACL,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,CAAC,sBAAe,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,+BAAoB;oBAC7B,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAU;iBACxC;gBACD;oBACE,OAAO,EAAE,8BAAmB;oBAC5B,UAAU,EAAE,CAAC,MAAiC,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;oBACpF,MAAM,EAAE,CAAC,+BAAoB,CAAC;iBAC/B;gBACD,uBAAgB;gBAChB,sBAAe;gBACf,GAAG,aAAa;aACjB;YACD,OAAO,EAAE,CAAC,+BAAoB,EAAE,8BAAmB,EAAE,GAAG,aAAa,CAAC;YACtE,MAAM,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;SACjC,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,MAAiC;QACnE,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACrB,OAAO,IAAI,iBAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;gBACjC,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,IAAI;aAChE,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,iBAAK,CAAC;YACf,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW;YACtC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI;YAC/B,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;YAC/B,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;YACnB,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,IAAI;SAChE,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAzDY,gDAAkB;6BAAlB,kBAAkB;IAF9B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,kBAAkB,CAyD9B"}
@@ -1,5 +1,5 @@
1
1
  import { OnModuleInit, OnApplicationShutdown } from '@nestjs/common';
2
- import { DiscoveryService } from '@nestjs/core';
2
+ import { DiscoveryService, ModuleRef } from '@nestjs/core';
3
3
  import Redis from 'ioredis';
4
4
  import { IAtomicQueuesModuleConfig } from '../../domain';
5
5
  import { HandlerExecutor } from '../handler-executor';
@@ -8,20 +8,22 @@ export declare class ActorRegistry implements OnModuleInit, OnApplicationShutdow
8
8
  private readonly config;
9
9
  private readonly discoveryService;
10
10
  private readonly handlerExecutor;
11
+ private readonly moduleRef;
11
12
  private readonly logger;
12
13
  private readonly keyPrefix;
13
14
  private readonly definitions;
14
15
  private readonly instances;
15
16
  private evictionInterval;
16
- constructor(redis: Redis, config: IAtomicQueuesModuleConfig, discoveryService: DiscoveryService, handlerExecutor: HandlerExecutor);
17
+ constructor(redis: Redis, config: IAtomicQueuesModuleConfig, discoveryService: DiscoveryService, handlerExecutor: HandlerExecutor, moduleRef: ModuleRef);
17
18
  onModuleInit(): Promise<void>;
18
19
  onApplicationShutdown(): Promise<void>;
19
20
  private discoverActors;
20
21
  private registerWithExecutor;
21
- getOrCreateInstance(entityType: string, entityId: string): Promise<any | null>;
22
+ getOrCreateInstance(entityType: string, entityId: string): Promise<Record<string, unknown> | null>;
22
23
  hasActor(entityType: string): boolean;
23
24
  getHandlerMethod(entityType: string, messageName: string): string | undefined;
24
25
  getRegisteredEntityTypes(): string[];
26
+ private createActorInstance;
25
27
  private persistState;
26
28
  private restoreState;
27
29
  private extractState;
@@ -1 +1 @@
1
- {"version":3,"file":"actor-registry.service.d.ts","sourceRoot":"","sources":["../../../src/services/actor-registry/actor-registry.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,YAAY,EAAE,qBAAqB,EAAkB,MAAM,gBAAgB,CAAC;AACjH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAIzD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAiBtD,qBACa,aAAc,YAAW,YAAY,EAAE,qBAAqB;IASxC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACzC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAC7C,OAAO,CAAC,QAAQ,CAAC,eAAe;IAXlC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsC;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,gBAAgB,CAA+B;gBAGP,KAAK,EAAE,KAAK,EACX,MAAM,EAAE,yBAAyB,EACnD,gBAAgB,EAAE,gBAAgB,EAC9C,eAAe,EAAE,eAAe;IAK7C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAM7B,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5C,OAAO,CAAC,cAAc;IAiDtB,OAAO,CAAC,oBAAoB;IAUtB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IA8BpF,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIrC,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI7E,wBAAwB,IAAI,MAAM,EAAE;YAItB,YAAY;YAeZ,YAAY;IAc1B,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,kBAAkB;CAgB3B"}
1
+ {"version":3,"file":"actor-registry.service.d.ts","sourceRoot":"","sources":["../../../src/services/actor-registry/actor-registry.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,YAAY,EACZ,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAIzD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAiBtD,qBACa,aAAc,YAAW,YAAY,EAAE,qBAAqB;IASxC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACzC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAC7C,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAZ5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsC;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,gBAAgB,CAA+B;gBAGP,KAAK,EAAE,KAAK,EACX,MAAM,EAAE,yBAAyB,EACnD,gBAAgB,EAAE,gBAAgB,EAC9C,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS;IAKjC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAM7B,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5C,OAAO,CAAC,cAAc;IA+CtB,OAAO,CAAC,oBAAoB;IAUtB,mBAAmB,CACvB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IA4B1C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIrC,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI7E,wBAAwB,IAAI,MAAM,EAAE;YAItB,mBAAmB;YASnB,YAAY;YAgBZ,YAAY;IAc1B,OAAO,CAAC,YAAY;IAwBpB,OAAO,CAAC,kBAAkB;CAgB3B"}
@@ -25,11 +25,12 @@ const decorators_1 = require("../../decorators");
25
25
  const handler_executor_1 = require("../handler-executor");
26
26
  const constants_1 = require("../constants");
27
27
  let ActorRegistry = ActorRegistry_1 = class ActorRegistry {
28
- constructor(redis, config, discoveryService, handlerExecutor) {
28
+ constructor(redis, config, discoveryService, handlerExecutor, moduleRef) {
29
29
  this.redis = redis;
30
30
  this.config = config;
31
31
  this.discoveryService = discoveryService;
32
32
  this.handlerExecutor = handlerExecutor;
33
+ this.moduleRef = moduleRef;
33
34
  this.logger = new common_1.Logger(ActorRegistry_1.name);
34
35
  this.definitions = new Map();
35
36
  this.instances = new Map();
@@ -61,8 +62,6 @@ let ActorRegistry = ActorRegistry_1 = class ActorRegistry {
61
62
  const handlers = (0, decorators_1.getActorHandlers)(metatype);
62
63
  if (handlers.length === 0)
63
64
  continue;
64
- // If @Actor is present, use its explicit entity type.
65
- // Otherwise, infer the entity type from the message classes' @EntityType.
66
65
  const actorMeta = (0, decorators_1.getActorMetadata)(metatype);
67
66
  let entityType;
68
67
  if (actorMeta) {
@@ -105,9 +104,7 @@ let ActorRegistry = ActorRegistry_1 = class ActorRegistry {
105
104
  const entityKey = `${entityType}:${entityId}`;
106
105
  let entry = this.instances.get(entityKey);
107
106
  if (!entry) {
108
- // Use Reflect.construct to properly run the constructor so class field
109
- // initializers (e.g. `private balance = 0`) are executed.
110
- const instance = Reflect.construct(definition.targetClass, []);
107
+ const instance = await this.createActorInstance(definition);
111
108
  const persisted = this.config.entities?.[entityType]?.statePersistence !== false;
112
109
  if (persisted) {
113
110
  await this.restoreState(entityKey, instance);
@@ -132,15 +129,25 @@ let ActorRegistry = ActorRegistry_1 = class ActorRegistry {
132
129
  getRegisteredEntityTypes() {
133
130
  return Array.from(this.definitions.keys());
134
131
  }
132
+ async createActorInstance(definition) {
133
+ try {
134
+ return (await this.moduleRef.create(definition.targetClass));
135
+ }
136
+ catch {
137
+ // Fallback for classes not registered in the DI container
138
+ return Reflect.construct(definition.targetClass, []);
139
+ }
140
+ }
135
141
  async persistState(entityKey, entry) {
136
142
  const entityConfig = this.config.entities?.[entry.entityType];
137
143
  if (entityConfig?.statePersistence === false)
138
144
  return;
139
145
  try {
140
146
  const stateKey = `${this.keyPrefix}:actor-state:${entityKey}`;
147
+ const stateTTL = entityConfig?.stateTTL ?? 86400;
141
148
  const state = this.extractState(entry.instance);
142
149
  if (Object.keys(state).length > 0) {
143
- await this.redis.set(stateKey, JSON.stringify(state), 'EX', 86400);
150
+ await this.redis.set(stateKey, JSON.stringify(state), 'EX', stateTTL);
144
151
  }
145
152
  }
146
153
  catch (err) {
@@ -167,11 +174,20 @@ let ActorRegistry = ActorRegistry_1 = class ActorRegistry {
167
174
  const val = instance[key];
168
175
  if (typeof val === 'function')
169
176
  continue;
170
- // Skip non-serializable values: class instances (Logger, services, etc.)
171
- // Only persist primitives, plain objects, and arrays
172
- if (val !== null && typeof val === 'object' && Object.getPrototypeOf(val) !== Object.prototype && !Array.isArray(val))
177
+ if (val instanceof Map || val instanceof Set || val instanceof Date)
173
178
  continue;
174
- state[key] = val;
179
+ if (val !== null &&
180
+ typeof val === 'object' &&
181
+ Object.getPrototypeOf(val) !== Object.prototype &&
182
+ !Array.isArray(val))
183
+ continue;
184
+ try {
185
+ JSON.stringify(val);
186
+ state[key] = val;
187
+ }
188
+ catch {
189
+ this.logger.warn(`Skipping non-serializable field '${key}' during state extraction`);
190
+ }
175
191
  }
176
192
  return state;
177
193
  }
@@ -198,6 +214,7 @@ exports.ActorRegistry = ActorRegistry = ActorRegistry_1 = __decorate([
198
214
  __param(1, (0, common_1.Inject)(constants_1.ATOMIC_QUEUES_CONFIG)),
199
215
  __param(2, (0, common_1.Optional)()),
200
216
  __metadata("design:paramtypes", [ioredis_1.default, Object, core_1.DiscoveryService,
201
- handler_executor_1.HandlerExecutor])
217
+ handler_executor_1.HandlerExecutor,
218
+ core_1.ModuleRef])
202
219
  ], ActorRegistry);
203
220
  //# sourceMappingURL=actor-registry.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actor-registry.service.js","sourceRoot":"","sources":["../../../src/services/actor-registry/actor-registry.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actor-registry.service.js","sourceRoot":"","sources":["../../../src/services/actor-registry/actor-registry.service.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,9 @@
1
1
  import { OnModuleInit, Type } from '@nestjs/common';
2
2
  import { DiscoveryService, Reflector } from '@nestjs/core';
3
- interface ICommandBus {
4
- execute<T>(command: T): Promise<any>;
5
- }
6
- interface IQueryBus {
7
- execute<T>(query: T): Promise<any>;
8
- }
3
+ import { ICommandBus, IQueryBus } from '../../domain';
9
4
  interface IJobLike {
10
5
  name: string;
11
- data: Record<string, any>;
6
+ data: Record<string, unknown>;
12
7
  id: string;
13
8
  }
14
9
  export declare class CommandDiscoveryService implements OnModuleInit {
@@ -27,10 +22,11 @@ export declare class CommandDiscoveryService implements OnModuleInit {
27
22
  onModuleInit(): Promise<void>;
28
23
  private discoverCommands;
29
24
  private discoverQueries;
25
+ private discoverByMetadataKey;
30
26
  hasHandler(jobName: string, entityType?: string): boolean;
31
- getCommandClass(jobName: string, entityType?: string): Type<any> | undefined;
32
- getQueryClass(jobName: string, entityType?: string): Type<any> | undefined;
33
- executeJob(job: IJobLike, entityId: string, entityType?: string): Promise<any>;
27
+ getCommandClass(jobName: string, entityType?: string): Type<unknown> | undefined;
28
+ getQueryClass(jobName: string, entityType?: string): Type<unknown> | undefined;
29
+ executeJob(job: IJobLike, entityId: string, entityType?: string): Promise<unknown>;
34
30
  private instantiateFromMetadata;
35
31
  getRegisteredJobNames(): {
36
32
  commands: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"command-discovery.service.d.ts","sourceRoot":"","sources":["../../../src/services/command-discovery/command-discovery.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,YAAY,EAAE,IAAI,EAAY,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAQ3D,UAAU,WAAW;IACnB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CACtC;AAED,UAAU,SAAS;IACjB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CACpC;AAED,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,qBACa,uBAAwB,YAAW,YAAY;IAY5C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAZxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IAEnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyC;IACpE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyC;IAC1E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuC;IAEtE,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,QAAQ,CAA0B;gBAGX,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,SAAS;IAGnD,aAAa,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAI5C,WAAW,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAIhC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBnC,OAAO,CAAC,gBAAgB;IA4BxB,OAAO,CAAC,eAAe;IA4BvB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO;IAUzD,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS;IAS5E,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS;IASpE,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgDpF,OAAO,CAAC,uBAAuB;IA0B/B,qBAAqB,IAAI;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;CAMnE"}
1
+ {"version":3,"file":"command-discovery.service.d.ts","sourceRoot":"","sources":["../../../src/services/command-discovery/command-discovery.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,YAAY,EAAE,IAAI,EAAY,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAQtD,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,qBACa,uBAAwB,YAAW,YAAY;IAY5C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAZxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IAEnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyC;IACpE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyC;IAC1E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuC;IAEtE,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,QAAQ,CAA0B;gBAGX,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,SAAS;IAGnD,aAAa,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAI5C,WAAW,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAIhC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBnC,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,qBAAqB;IA4B7B,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO;IAUzD,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS;IAShF,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS;IASxE,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA4CxF,OAAO,CAAC,uBAAuB;IA0B/B,qBAAqB,IAAI;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;CAMnE"}
@@ -47,25 +47,12 @@ let CommandDiscoveryService = CommandDiscoveryService_1 = class CommandDiscovery
47
47
  }
48
48
  }
49
49
  discoverCommands() {
50
- if (!this.discoveryService)
51
- return;
52
- const providers = this.discoveryService.getProviders();
53
- for (const wrapper of providers) {
54
- const { metatype } = wrapper;
55
- if (!metatype)
56
- continue;
57
- const metadata = Reflect.getMetadata(decorators_1.JOB_COMMAND_METADATA, metatype);
58
- if (metadata) {
59
- this.commandMap.set(metadata.jobName, metadata);
60
- if (metadata.entityType) {
61
- const scopedKey = `${metadata.entityType}:${metadata.jobName}`;
62
- this.scopedCommandMap.set(scopedKey, metadata);
63
- }
64
- this.logger.debug(`Registered @JobCommand: ${metadata.jobName} -> ${metatype.name}`);
65
- }
66
- }
50
+ this.discoverByMetadataKey(decorators_1.JOB_COMMAND_METADATA, this.commandMap, this.scopedCommandMap, '@JobCommand');
67
51
  }
68
52
  discoverQueries() {
53
+ this.discoverByMetadataKey(decorators_1.JOB_QUERY_METADATA, this.queryMap, this.scopedQueryMap, '@JobQuery');
54
+ }
55
+ discoverByMetadataKey(metadataKey, targetMap, scopedMap, label) {
69
56
  if (!this.discoveryService)
70
57
  return;
71
58
  const providers = this.discoveryService.getProviders();
@@ -73,15 +60,15 @@ let CommandDiscoveryService = CommandDiscoveryService_1 = class CommandDiscovery
73
60
  const { metatype } = wrapper;
74
61
  if (!metatype)
75
62
  continue;
76
- const metadata = Reflect.getMetadata(decorators_1.JOB_QUERY_METADATA, metatype);
77
- if (metadata) {
78
- this.queryMap.set(metadata.jobName, metadata);
79
- if (metadata.entityType) {
80
- const scopedKey = `${metadata.entityType}:${metadata.jobName}`;
81
- this.scopedQueryMap.set(scopedKey, metadata);
82
- }
83
- this.logger.debug(`Registered @JobQuery: ${metadata.jobName} -> ${metatype.name}`);
63
+ const metadata = Reflect.getMetadata(metadataKey, metatype);
64
+ if (!metadata)
65
+ continue;
66
+ targetMap.set(metadata.jobName, metadata);
67
+ if (metadata.entityType) {
68
+ const scopedKey = `${metadata.entityType}:${metadata.jobName}`;
69
+ scopedMap.set(scopedKey, metadata);
84
70
  }
71
+ this.logger.debug(`Registered ${label}: ${metadata.jobName} -> ${metatype.name}`);
85
72
  }
86
73
  }
87
74
  hasHandler(jobName, entityType) {
@@ -1 +1 @@
1
- {"version":3,"file":"command-discovery.service.js","sourceRoot":"","sources":["../../../src/services/command-discovery/command-discovery.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-discovery.service.js","sourceRoot":"","sources":["../../../src/services/command-discovery/command-discovery.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"executor-pool.service.d.ts","sourceRoot":"","sources":["../../../src/services/executor-pool/executor-pool.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,qBACa,mBAAoB,YAAW,YAAY,EAAE,qBAAqB;IAU9C,OAAO,CAAC,QAAQ,CAAC,KAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAfhC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,gBAAgB,CAAuB;gBAGC,KAAK,EAAE,KAAK,EACX,MAAM,EAAE,yBAAyB,EAC/D,SAAS,EAAE,gBAAgB,EAC3B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa;IAMzC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB7B,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;YAKf,WAAW;YAmBX,cAAc;YAyCd,aAAa;IAS3B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAwBhC"}
1
+ {"version":3,"file":"executor-pool.service.d.ts","sourceRoot":"","sources":["../../../src/services/executor-pool/executor-pool.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,YAAY,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAsB,MAAM,cAAc,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,qBACa,mBAAoB,YAAW,YAAY,EAAE,qBAAqB;IAU9C,OAAO,CAAC,QAAQ,CAAC,KAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAfhC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,gBAAgB,CAAuB;gBAGC,KAAK,EAAE,KAAK,EACX,MAAM,EAAE,yBAAyB,EAC/D,SAAS,EAAE,gBAAgB,EAC3B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa;IAMzC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB7B,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;YAKf,WAAW;YAkBX,cAAc;YA4Cd,aAAa;IAW3B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAwBhC"}
@@ -66,7 +66,7 @@ let ExecutorPoolService = ExecutorPoolService_1 = class ExecutorPoolService {
66
66
  const maxWait = 30000;
67
67
  const start = Date.now();
68
68
  while (this.activeExecutors > 0 && Date.now() - start < maxWait) {
69
- await new Promise(resolve => setTimeout(resolve, 100));
69
+ await new Promise((resolve) => setTimeout(resolve, 100));
70
70
  }
71
71
  if (this.activeExecutors > 0) {
72
72
  this.logger.warn(`Shutdown with ${this.activeExecutors} active executors still running`);
@@ -85,8 +85,7 @@ let ExecutorPoolService = ExecutorPoolService_1 = class ExecutorPoolService {
85
85
  if (!result)
86
86
  break;
87
87
  this.activeExecutors++;
88
- this.executeMessage(result.entityKey, result.message, result.ownerToken)
89
- .finally(() => {
88
+ this.executeMessage(result.entityKey, result.message, result.ownerToken).finally(() => {
90
89
  this.activeExecutors--;
91
90
  if (this.running) {
92
91
  this.tryDispatch();
@@ -98,10 +97,10 @@ let ExecutorPoolService = ExecutorPoolService_1 = class ExecutorPoolService {
98
97
  const entityType = message.entityType;
99
98
  const entityId = message.entityId;
100
99
  const ttl = this.gateService.getTTLForEntity(entityType);
101
- const refreshInterval = this.config.executor?.gateRefreshInterval ?? (ttl * 500);
100
+ const refreshInterval = this.config.executor?.gateRefreshInterval ?? ttl * 500;
102
101
  const refresher = setInterval(async () => {
103
102
  try {
104
- await this.gateService.extend(entityKey, ttl);
103
+ await this.gateService.extend(entityKey, ownerToken, ttl);
105
104
  }
106
105
  catch (err) {
107
106
  this.logger.error(`Gate refresh failed for ${entityKey}: ${err.message}`);
@@ -112,18 +111,21 @@ let ExecutorPoolService = ExecutorPoolService_1 = class ExecutorPoolService {
112
111
  const actor = await this.actorRegistry.getOrCreateInstance(entityType, entityId);
113
112
  const methodName = this.actorRegistry.getHandlerMethod(entityType, message.name);
114
113
  if (actor && methodName) {
115
- const result = await actor[methodName]({ ...message.data });
116
- await this.publishResult(message, result);
117
- await this.scheduler.complete(entityKey);
118
- return;
114
+ const handler = actor[methodName];
115
+ if (typeof handler === 'function') {
116
+ const result = await handler.call(actor, { ...message.data });
117
+ await this.publishResult(message, result);
118
+ await this.scheduler.complete(entityKey, ownerToken);
119
+ return;
120
+ }
119
121
  }
120
122
  }
121
123
  const result = await this.handlerExecutor.execute(message, entityKey);
122
124
  await this.publishResult(message, result);
123
- await this.scheduler.complete(entityKey);
125
+ await this.scheduler.complete(entityKey, ownerToken);
124
126
  }
125
127
  catch (err) {
126
- await this.scheduler.fail(entityKey, message, err);
128
+ await this.scheduler.fail(entityKey, ownerToken, message, err);
127
129
  await this.publishResult(message, undefined, err);
128
130
  }
129
131
  finally {
@@ -134,9 +136,7 @@ let ExecutorPoolService = ExecutorPoolService_1 = class ExecutorPoolService {
134
136
  if (!message.correlationId)
135
137
  return;
136
138
  const channel = `${this.keyPrefix}:results:${message.correlationId}`;
137
- const payload = error
138
- ? JSON.stringify({ error: error.message })
139
- : JSON.stringify({ result });
139
+ const payload = error ? JSON.stringify({ error: error.message }) : JSON.stringify({ result });
140
140
  await this.redis.publish(channel, payload);
141
141
  }
142
142
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"executor-pool.service.js","sourceRoot":"","sources":["../../../src/services/executor-pool/executor-pool.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor-pool.service.js","sourceRoot":"","sources":["../../../src/services/executor-pool/executor-pool.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAAiG;AACjG,sDAA4B;AAE5B,uCAA+C;AAC/C,4CAAgD;AAChD,kCAAsC;AACtC,gCAAoC;AACpC,0DAAsD;AACtD,sDAAkD;AAClD,4CAAyE;AAGlE,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAS9B,YAC+B,KAA6B,EAC5B,MAAkD,EAC/D,SAA2B,EAC3B,WAAwB,EACxB,UAAsB,EACtB,eAAgC,EAChC,aAA4B;QANC,UAAK,GAAL,KAAK,CAAO;QACX,WAAM,GAAN,MAAM,CAA2B;QAC/D,cAAS,GAAT,SAAS,CAAkB;QAC3B,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAY;QACtB,oBAAe,GAAf,eAAe,CAAiB;QAChC,kBAAa,GAAb,aAAa,CAAe;QAf9B,WAAM,GAAG,IAAI,eAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;QAGvD,oBAAe,GAAG,CAAC,CAAC;QACpB,YAAO,GAAG,KAAK,CAAC;QAChB,qBAAgB,GAAiB,IAAI,CAAC;QAY5C,IAAI,CAAC,SAAS,GAAG,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,+DAA+D;QAC/D,sEAAsE;QACtE,gEAAgE;QAChE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAEvD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAE/C,MAAM,aAAa,GAAG,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;QACjD,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,QAAgB,EAAE,IAAY,EAAE,EAAE;YACrE,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uCAAuC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAExE,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,OAAO,EAAE,CAAC;YAChE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,eAAe,iCAAiC,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,aAAa,GAAG,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;QACjD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,mEAAmE;QACnE,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEtF,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACpE,IAAI,CAAC,MAAM;gBAAE,MAAM;YAEnB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBACpF,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,SAAiB,EACjB,OAA2B,EAC3B,UAAkB;QAElB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,mBAAmB,IAAI,GAAG,GAAG,GAAG,CAAC;QAE/E,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;YACvC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,SAAS,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC,EAAE,eAAe,CAAC,CAAC;QAEpB,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACjF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBACjF,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;oBACxB,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;oBAClC,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;wBAClC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC9D,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;wBAC1C,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;wBACrD,OAAO;oBACT,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1C,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAY,CAAC,CAAC;YACxE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,GAAY,CAAC,CAAC;QAC7D,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,OAA2B,EAC3B,MAAgB,EAChB,KAAa;QAEb,IAAI,CAAC,OAAO,CAAC,aAAa;YAAE,OAAO;QACnC,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,YAAY,OAAO,CAAC,aAAa,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9F,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACK,uBAAuB;QAC7B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAEhC,qBAAqB;QACrB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,EAAE,CAAC;YAC/D,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,kCAAkC;QAClC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACzB,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE7C,8DAA8D;QAC9D,qEAAqE;QACrE,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO;YAAE,OAAO,EAAE,CAAC;QAE7C,yDAAyD;QACzD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAA;AAvKY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;IAWR,WAAA,IAAA,eAAM,EAAC,+BAAmB,CAAC,CAAA;IAC3B,WAAA,IAAA,eAAM,EAAC,gCAAoB,CAAC,CAAA;qCADwB,iBAAK,UAE9B,4BAAgB;QACd,kBAAW;QACZ,gBAAU;QACL,kCAAe;QACjB,8BAAa;GAhBpC,mBAAmB,CAuK/B"}
@@ -9,8 +9,8 @@ export declare class GateService {
9
9
  constructor(redis: Redis, config: IAtomicQueuesModuleConfig);
10
10
  getGateKey(entityKey: string): string;
11
11
  acquire(entityKey: string, ownerToken: string, ttlSeconds?: number): Promise<boolean>;
12
- release(entityKey: string): Promise<void>;
13
- extend(entityKey: string, ttlSeconds?: number): Promise<boolean>;
12
+ release(entityKey: string, ownerToken: string): Promise<boolean>;
13
+ extend(entityKey: string, ownerToken: string, ttlSeconds?: number): Promise<boolean>;
14
14
  isHeld(entityKey: string): Promise<boolean>;
15
15
  getTTLForEntity(entityType: string): number;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gate.service.d.ts","sourceRoot":"","sources":["../../../src/services/gate/gate.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAIzD,qBACa,WAAW;IAMS,OAAO,CAAC,QAAQ,CAAC,KAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANvD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAGY,KAAK,EAAE,KAAK,EACX,MAAM,EAAE,yBAAyB;IAMlF,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAI/B,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOrF,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOhE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;CAG5C"}
1
+ {"version":3,"file":"gate.service.d.ts","sourceRoot":"","sources":["../../../src/services/gate/gate.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAoBzD,qBACa,WAAW;IAMS,OAAO,CAAC,QAAQ,CAAC,KAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANvD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAGY,KAAK,EAAE,KAAK,EACX,MAAM,EAAE,yBAAyB;IAMlF,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAI/B,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOrF,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWhE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAapF,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;CAG5C"}
@@ -21,6 +21,20 @@ const common_1 = require("@nestjs/common");
21
21
  const ioredis_1 = __importDefault(require("ioredis"));
22
22
  const utils_1 = require("../../utils");
23
23
  const constants_1 = require("../constants");
24
+ const RELEASE_IF_OWNER_SCRIPT = `
25
+ if redis.call("GET", KEYS[1]) == ARGV[1] then
26
+ return redis.call("DEL", KEYS[1])
27
+ else
28
+ return 0
29
+ end
30
+ `;
31
+ const EXTEND_IF_OWNER_SCRIPT = `
32
+ if redis.call("GET", KEYS[1]) == ARGV[1] then
33
+ return redis.call("EXPIRE", KEYS[1], ARGV[2])
34
+ else
35
+ return 0
36
+ end
37
+ `;
24
38
  let GateService = GateService_1 = class GateService {
25
39
  constructor(redis, config) {
26
40
  this.redis = redis;
@@ -38,14 +52,15 @@ let GateService = GateService_1 = class GateService {
38
52
  const result = await this.redis.set(gateKey, ownerToken, 'EX', ttl, 'NX');
39
53
  return result === 'OK';
40
54
  }
41
- async release(entityKey) {
55
+ async release(entityKey, ownerToken) {
42
56
  const gateKey = this.getGateKey(entityKey);
43
- await this.redis.del(gateKey);
57
+ const result = (await this.redis.eval(RELEASE_IF_OWNER_SCRIPT, 1, gateKey, ownerToken));
58
+ return result === 1;
44
59
  }
45
- async extend(entityKey, ttlSeconds) {
60
+ async extend(entityKey, ownerToken, ttlSeconds) {
46
61
  const gateKey = this.getGateKey(entityKey);
47
62
  const ttl = ttlSeconds ?? this.defaultTTL;
48
- const result = await this.redis.expire(gateKey, ttl);
63
+ const result = (await this.redis.eval(EXTEND_IF_OWNER_SCRIPT, 1, gateKey, ownerToken, ttl.toString()));
49
64
  return result === 1;
50
65
  }
51
66
  async isHeld(entityKey) {
@@ -1 +1 @@
1
- {"version":3,"file":"gate.service.js","sourceRoot":"","sources":["../../../src/services/gate/gate.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAA4D;AAC5D,sDAA4B;AAE5B,uCAA+C;AAC/C,4CAAyE;AAGlE,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAKtB,YAC+B,KAA6B,EAC5B,MAAkD;QADlC,UAAK,GAAL,KAAK,CAAO;QACX,WAAM,GAAN,MAAM,CAA2B;QANjE,WAAM,GAAG,IAAI,eAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;QAQrD,IAAI,CAAC,SAAS,GAAG,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,OAAO,GAAG,IAAI,CAAC,SAAS,SAAS,SAAS,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,UAAkB,EAAE,UAAmB;QACtE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1E,OAAO,MAAM,KAAK,IAAI,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,UAAmB;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACrD,OAAO,MAAM,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;IACxE,CAAC;CACF,CAAA;AA5CY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAOR,WAAA,IAAA,eAAM,EAAC,+BAAmB,CAAC,CAAA;IAC3B,WAAA,IAAA,eAAM,EAAC,gCAAoB,CAAC,CAAA;qCADwB,iBAAK;GANjD,WAAW,CA4CvB"}
1
+ {"version":3,"file":"gate.service.js","sourceRoot":"","sources":["../../../src/services/gate/gate.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAA4D;AAC5D,sDAA4B;AAE5B,uCAA+C;AAC/C,4CAAyE;AAEzE,MAAM,uBAAuB,GAAG;;;;;;CAM/B,CAAC;AAEF,MAAM,sBAAsB,GAAG;;;;;;CAM9B,CAAC;AAGK,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAKtB,YAC+B,KAA6B,EAC5B,MAAkD;QADlC,UAAK,GAAL,KAAK,CAAO;QACX,WAAM,GAAN,MAAM,CAA2B;QANjE,WAAM,GAAG,IAAI,eAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;QAQrD,IAAI,CAAC,SAAS,GAAG,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,OAAO,GAAG,IAAI,CAAC,SAAS,SAAS,SAAS,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,UAAkB,EAAE,UAAmB;QACtE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1E,OAAO,MAAM,KAAK,IAAI,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,UAAkB;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CACnC,uBAAuB,EACvB,CAAC,EACD,OAAO,EACP,UAAU,CACX,CAAW,CAAC;QACb,OAAO,MAAM,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,UAAkB,EAAE,UAAmB;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAC1C,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CACnC,sBAAsB,EACtB,CAAC,EACD,OAAO,EACP,UAAU,EACV,GAAG,CAAC,QAAQ,EAAE,CACf,CAAW,CAAC;QACb,OAAO,MAAM,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;IACxE,CAAC;CACF,CAAA;AAxDY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAOR,WAAA,IAAA,eAAM,EAAC,+BAAmB,CAAC,CAAA;IAC3B,WAAA,IAAA,eAAM,EAAC,gCAAoB,CAAC,CAAA;qCADwB,iBAAK;GANjD,WAAW,CAwDvB"}