@event-nest/mongodb 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@event-nest/mongodb",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "license": "MIT",
5
- "description": "A MongoDB based implementation for the event-nest library. It uses MongoDB collections and transactions to store events and entity information",
5
+ "description": "Event sourcing module for NestJS using MongoDB. It uses MongoDB collections and transactions to store events and object information",
6
6
  "author": "Nick Tsitlakidis",
7
7
  "repository": {
8
8
  "type": "git",
@@ -24,12 +24,12 @@
24
24
  "@nestjs/core": "^9.0.0",
25
25
  "reflect-metadata": "0.1.13",
26
26
  "rxjs": "^7.2.0",
27
- "@event-nest/core": "1.0.0",
28
- "tslib": "2.5.3"
27
+ "@event-nest/core": "1.0.2"
29
28
  },
30
29
  "dependencies": {
31
30
  "class-transformer": "^0.5.1",
32
- "mongodb": "^5.6.0"
31
+ "mongodb": "^5.6.0",
32
+ "tslib": "^2.3.0"
33
33
  },
34
34
  "main": "./src/index.js",
35
35
  "types": "./src/index.d.ts"
@@ -3,9 +3,9 @@ import { MongoDbModuleAsyncOptions, MongodbModuleOptions } from "./mongodb-modul
3
3
  import { DomainEventEmitter } from "@event-nest/core";
4
4
  import { ModulesContainer } from "@nestjs/core";
5
5
  export declare class EventNestMongoDbModule implements OnApplicationBootstrap {
6
- private readonly _eventBus;
6
+ private readonly _eventEmitter;
7
7
  private readonly _modulesContainer;
8
- constructor(_eventBus: DomainEventEmitter, _modulesContainer: ModulesContainer);
8
+ constructor(_eventEmitter: DomainEventEmitter, _modulesContainer: ModulesContainer);
9
9
  static register(options: MongodbModuleOptions): DynamicModule;
10
10
  static registerAsync(options: MongoDbModuleAsyncOptions): DynamicModule;
11
11
  onApplicationBootstrap(): any;
@@ -8,31 +8,32 @@ const core_1 = require("@event-nest/core");
8
8
  const core_2 = require("@nestjs/core");
9
9
  const module_providers_1 = require("./module-providers");
10
10
  let EventNestMongoDbModule = exports.EventNestMongoDbModule = EventNestMongoDbModule_1 = class EventNestMongoDbModule {
11
- constructor(_eventBus, _modulesContainer) {
12
- this._eventBus = _eventBus;
11
+ constructor(_eventEmitter, _modulesContainer) {
12
+ this._eventEmitter = _eventEmitter;
13
13
  this._modulesContainer = _modulesContainer;
14
14
  }
15
15
  static register(options) {
16
16
  return {
17
17
  module: EventNestMongoDbModule_1,
18
- providers: (0, module_providers_1.createProviders)(options),
18
+ providers: module_providers_1.ModuleProviders.create(options),
19
19
  exports: [core_1.EVENT_STORE]
20
20
  };
21
21
  }
22
22
  static registerAsync(options) {
23
23
  return {
24
24
  module: EventNestMongoDbModule_1,
25
- providers: (0, module_providers_1.createAsyncProviders)(options),
25
+ providers: module_providers_1.ModuleProviders.createAsync(options),
26
26
  exports: [core_1.EVENT_STORE]
27
27
  };
28
28
  }
29
29
  onApplicationBootstrap() {
30
- this._eventBus.bindSubscriptions(this._modulesContainer);
30
+ this._eventEmitter.bindSubscriptions(this._modulesContainer);
31
31
  }
32
32
  };
33
33
  exports.EventNestMongoDbModule = EventNestMongoDbModule = EventNestMongoDbModule_1 = tslib_1.__decorate([
34
34
  (0, common_1.Global)(),
35
35
  (0, common_1.Module)({}),
36
- tslib_1.__metadata("design:paramtypes", [core_1.DomainEventEmitter, core_2.ModulesContainer])
36
+ tslib_1.__metadata("design:paramtypes", [core_1.DomainEventEmitter,
37
+ core_2.ModulesContainer])
37
38
  ], EventNestMongoDbModule);
38
39
  //# sourceMappingURL=event-nest-mongodb.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-nest-mongodb.module.js","sourceRoot":"","sources":["../../../../../libs/mongodb/src/lib/event-nest-mongodb.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuF;AAEvF,2CAAmE;AACnE,uCAAgD;AAChD,yDAA2E;AAIpE,IAAM,sBAAsB,+DAA5B,MAAM,sBAAsB;IAC/B,YAA6B,SAA6B,EAAmB,iBAAmC;QAAnF,cAAS,GAAT,SAAS,CAAoB;QAAmB,sBAAiB,GAAjB,iBAAiB,CAAkB;IAAG,CAAC;IAEpH,MAAM,CAAC,QAAQ,CAAC,OAA6B;QACzC,OAAO;YACH,MAAM,EAAE,wBAAsB;YAC9B,SAAS,EAAE,IAAA,kCAAe,EAAC,OAAO,CAAC;YACnC,OAAO,EAAE,CAAC,kBAAW,CAAC;SACzB,CAAC;IACN,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,OAAkC;QACnD,OAAO;YACH,MAAM,EAAE,wBAAsB;YAC9B,SAAS,EAAE,IAAA,uCAAoB,EAAC,OAAO,CAAC;YACxC,OAAO,EAAE,CAAC,kBAAW,CAAC;SACzB,CAAC;IACN,CAAC;IAED,sBAAsB;QAClB,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC7D,CAAC;CACJ,CAAA;iCAtBY,sBAAsB;IAFlC,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;6CAEiC,yBAAkB,EAAsC,uBAAgB;GADvG,sBAAsB,CAsBlC"}
1
+ {"version":3,"file":"event-nest-mongodb.module.js","sourceRoot":"","sources":["../../../../../libs/mongodb/src/lib/event-nest-mongodb.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuF;AAEvF,2CAAmE;AACnE,uCAAgD;AAChD,yDAAqD;AAI9C,IAAM,sBAAsB,+DAA5B,MAAM,sBAAsB;IAC/B,YACqB,aAAiC,EACjC,iBAAmC;QADnC,kBAAa,GAAb,aAAa,CAAoB;QACjC,sBAAiB,GAAjB,iBAAiB,CAAkB;IACrD,CAAC;IAEJ,MAAM,CAAC,QAAQ,CAAC,OAA6B;QACzC,OAAO;YACH,MAAM,EAAE,wBAAsB;YAC9B,SAAS,EAAE,kCAAe,CAAC,MAAM,CAAC,OAAO,CAAC;YAC1C,OAAO,EAAE,CAAC,kBAAW,CAAC;SACzB,CAAC;IACN,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,OAAkC;QACnD,OAAO;YACH,MAAM,EAAE,wBAAsB;YAC9B,SAAS,EAAE,kCAAe,CAAC,WAAW,CAAC,OAAO,CAAC;YAC/C,OAAO,EAAE,CAAC,kBAAW,CAAC;SACzB,CAAC;IACN,CAAC;IAED,sBAAsB;QAClB,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACjE,CAAC;CACJ,CAAA;iCAzBY,sBAAsB;IAFlC,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;6CAG6B,yBAAkB;QACd,uBAAgB;GAH/C,sBAAsB,CAyBlC"}
@@ -1,4 +1,6 @@
1
1
  import { Provider } from "@nestjs/common";
2
2
  import { MongoDbModuleAsyncOptions, MongodbModuleOptions } from "./mongodb-module-options";
3
- export declare function createProviders(options: MongodbModuleOptions): Provider[];
4
- export declare function createAsyncProviders(options: MongoDbModuleAsyncOptions): Provider[];
3
+ export declare class ModuleProviders {
4
+ static create(options: MongodbModuleOptions): Provider[];
5
+ static createAsync(options: MongoDbModuleAsyncOptions): Provider[];
6
+ }
@@ -1,53 +1,53 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createAsyncProviders = exports.createProviders = void 0;
3
+ exports.ModuleProviders = void 0;
4
4
  const core_1 = require("@event-nest/core");
5
5
  const mongodb_1 = require("mongodb");
6
6
  const mongo_event_store_1 = require("./storage/mongo-event-store");
7
- function createProviders(options) {
8
- return [
9
- {
7
+ class ModuleProviders {
8
+ static create(options) {
9
+ return [
10
+ {
11
+ provide: core_1.DomainEventEmitter,
12
+ useFactory: () => {
13
+ return new core_1.DomainEventEmitter(options.runParallelSubscriptions);
14
+ }
15
+ },
16
+ {
17
+ provide: core_1.EVENT_STORE,
18
+ useFactory: (eventEmitter) => {
19
+ return new mongo_event_store_1.MongoEventStore(eventEmitter, new mongodb_1.MongoClient(options.connectionUri), options.aggregatesCollection, options.eventsCollection);
20
+ },
21
+ inject: [core_1.DomainEventEmitter]
22
+ }
23
+ ];
24
+ }
25
+ static createAsync(options) {
26
+ const optionsProvider = {
27
+ provide: "EVENT_NEST_OPTIONS",
28
+ useFactory: async (...args) => {
29
+ const mongoDbModuleOptions = await options.useFactory(...args);
30
+ return mongoDbModuleOptions;
31
+ },
32
+ inject: options.inject
33
+ };
34
+ const eventBusProvider = {
10
35
  provide: core_1.DomainEventEmitter,
11
- useFactory: () => {
36
+ useFactory: (options) => {
12
37
  return new core_1.DomainEventEmitter(options.runParallelSubscriptions);
13
- }
14
- },
15
- {
38
+ },
39
+ inject: ["EVENT_NEST_OPTIONS"]
40
+ };
41
+ const eventStoreProvider = {
16
42
  provide: core_1.EVENT_STORE,
17
- useFactory: (eventBus) => {
43
+ useFactory: (options, eventBus) => {
18
44
  const mongoClient = new mongodb_1.MongoClient(options.connectionUri);
19
45
  return new mongo_event_store_1.MongoEventStore(eventBus, mongoClient, options.aggregatesCollection, options.eventsCollection);
20
46
  },
21
- inject: [core_1.DomainEventEmitter]
22
- }
23
- ];
24
- }
25
- exports.createProviders = createProviders;
26
- function createAsyncProviders(options) {
27
- const optionsProvider = {
28
- provide: "EVENT_NEST_OPTIONS",
29
- useFactory: async (...args) => {
30
- const mongoDbModuleOptions = await options.useFactory(...args);
31
- return mongoDbModuleOptions;
32
- },
33
- inject: options.inject
34
- };
35
- const eventBusProvider = {
36
- provide: core_1.DomainEventEmitter,
37
- useFactory: (options) => {
38
- return new core_1.DomainEventEmitter(options.runParallelSubscriptions);
39
- },
40
- inject: ["EVENT_NEST_OPTIONS"]
41
- };
42
- const eventStoreProvider = {
43
- provide: core_1.EVENT_STORE,
44
- useFactory: (options, eventBus) => {
45
- const mongoClient = new mongodb_1.MongoClient(options.connectionUri);
46
- return new mongo_event_store_1.MongoEventStore(eventBus, mongoClient, options.aggregatesCollection, options.eventsCollection);
47
- },
48
- inject: ["EVENT_NEST_OPTIONS", core_1.DomainEventEmitter]
49
- };
50
- return [optionsProvider, eventBusProvider, eventStoreProvider];
47
+ inject: ["EVENT_NEST_OPTIONS", core_1.DomainEventEmitter]
48
+ };
49
+ return [optionsProvider, eventBusProvider, eventStoreProvider];
50
+ }
51
51
  }
52
- exports.createAsyncProviders = createAsyncProviders;
52
+ exports.ModuleProviders = ModuleProviders;
53
53
  //# sourceMappingURL=module-providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module-providers.js","sourceRoot":"","sources":["../../../../../libs/mongodb/src/lib/module-providers.ts"],"names":[],"mappings":";;;AACA,2CAAmE;AAEnE,qCAAsC;AACtC,mEAA8D;AAE9D,SAAgB,eAAe,CAAC,OAA6B;IACzD,OAAO;QACH;YACI,OAAO,EAAE,yBAAkB;YAC3B,UAAU,EAAE,GAAG,EAAE;gBACb,OAAO,IAAI,yBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YACpE,CAAC;SACJ;QACD;YACI,OAAO,EAAE,kBAAW;YACpB,UAAU,EAAE,CAAC,QAA4B,EAAE,EAAE;gBACzC,MAAM,WAAW,GAAG,IAAI,qBAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBAC3D,OAAO,IAAI,mCAAe,CACtB,QAAQ,EACR,WAAW,EACX,OAAO,CAAC,oBAAoB,EAC5B,OAAO,CAAC,gBAAgB,CAC3B,CAAC;YACN,CAAC;YACD,MAAM,EAAE,CAAC,yBAAkB,CAAC;SAC/B;KACJ,CAAC;AACN,CAAC;AAtBD,0CAsBC;AAED,SAAgB,oBAAoB,CAAC,OAAkC;IACnE,MAAM,eAAe,GAAG;QACpB,OAAO,EAAE,oBAAoB;QAC7B,UAAU,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;YACjC,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/D,OAAO,oBAAoB,CAAC;QAChC,CAAC;QACD,MAAM,EAAE,OAAO,CAAC,MAAM;KACzB,CAAC;IAEF,MAAM,gBAAgB,GAAG;QACrB,OAAO,EAAE,yBAAkB;QAC3B,UAAU,EAAE,CAAC,OAA6B,EAAE,EAAE;YAC1C,OAAO,IAAI,yBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,EAAE,CAAC,oBAAoB,CAAC;KACjC,CAAC;IAEF,MAAM,kBAAkB,GAAG;QACvB,OAAO,EAAE,kBAAW;QACpB,UAAU,EAAE,CAAC,OAA6B,EAAE,QAA4B,EAAE,EAAE;YACxE,MAAM,WAAW,GAAG,IAAI,qBAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAC3D,OAAO,IAAI,mCAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC9G,CAAC;QACD,MAAM,EAAE,CAAC,oBAAoB,EAAE,yBAAkB,CAAC;KACrD,CAAC;IAEF,OAAO,CAAC,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;AACnE,CAAC;AA5BD,oDA4BC"}
1
+ {"version":3,"file":"module-providers.js","sourceRoot":"","sources":["../../../../../libs/mongodb/src/lib/module-providers.ts"],"names":[],"mappings":";;;AACA,2CAAmE;AAEnE,qCAAsC;AACtC,mEAA8D;AAE9D,MAAa,eAAe;IACxB,MAAM,CAAC,MAAM,CAAC,OAA6B;QACvC,OAAO;YACH;gBACI,OAAO,EAAE,yBAAkB;gBAC3B,UAAU,EAAE,GAAG,EAAE;oBACb,OAAO,IAAI,yBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;gBACpE,CAAC;aACJ;YACD;gBACI,OAAO,EAAE,kBAAW;gBACpB,UAAU,EAAE,CAAC,YAAgC,EAAE,EAAE;oBAC7C,OAAO,IAAI,mCAAe,CACtB,YAAY,EACZ,IAAI,qBAAW,CAAC,OAAO,CAAC,aAAa,CAAC,EACtC,OAAO,CAAC,oBAAoB,EAC5B,OAAO,CAAC,gBAAgB,CAC3B,CAAC;gBACN,CAAC;gBACD,MAAM,EAAE,CAAC,yBAAkB,CAAC;aAC/B;SACJ,CAAC;IACN,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,OAAkC;QACjD,MAAM,eAAe,GAAG;YACpB,OAAO,EAAE,oBAAoB;YAC7B,UAAU,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;gBACjC,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC/D,OAAO,oBAAoB,CAAC;YAChC,CAAC;YACD,MAAM,EAAE,OAAO,CAAC,MAAM;SACzB,CAAC;QAEF,MAAM,gBAAgB,GAAG;YACrB,OAAO,EAAE,yBAAkB;YAC3B,UAAU,EAAE,CAAC,OAA6B,EAAE,EAAE;gBAC1C,OAAO,IAAI,yBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YACpE,CAAC;YACD,MAAM,EAAE,CAAC,oBAAoB,CAAC;SACjC,CAAC;QAEF,MAAM,kBAAkB,GAAG;YACvB,OAAO,EAAE,kBAAW;YACpB,UAAU,EAAE,CAAC,OAA6B,EAAE,QAA4B,EAAE,EAAE;gBACxE,MAAM,WAAW,GAAG,IAAI,qBAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBAC3D,OAAO,IAAI,mCAAe,CACtB,QAAQ,EACR,WAAW,EACX,OAAO,CAAC,oBAAoB,EAC5B,OAAO,CAAC,gBAAgB,CAC3B,CAAC;YACN,CAAC;YACD,MAAM,EAAE,CAAC,oBAAoB,EAAE,yBAAkB,CAAC;SACrD,CAAC;QAEF,OAAO,CAAC,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;IACnE,CAAC;CACJ;AA1DD,0CA0DC"}
@@ -1,11 +1,13 @@
1
1
  import { MongoClient } from "mongodb";
2
2
  import { AbstractEventStore, AggregateRoot, AggregateRootClass, DomainEventEmitter, StoredAggregateRoot, StoredEvent } from "@event-nest/core";
3
3
  export declare class MongoEventStore extends AbstractEventStore {
4
- private _mongoClient;
5
- private _aggregatesCollectionName;
6
- private _eventsCollectionName;
7
- private _logger;
4
+ private readonly _mongoClient;
5
+ private readonly _aggregatesCollectionName;
6
+ private readonly _eventsCollectionName;
7
+ private readonly _logger;
8
8
  constructor(eventBus: DomainEventEmitter, _mongoClient: MongoClient, _aggregatesCollectionName: string, _eventsCollectionName: string);
9
+ get aggregatesCollectionName(): string;
10
+ get eventsCollectionName(): string;
9
11
  findByAggregateRootId<T extends AggregateRoot>(aggregateRootClass: AggregateRootClass<T>, id: string): Promise<Array<StoredEvent>>;
10
12
  generateEntityId(): Promise<string>;
11
13
  save(events: Array<StoredEvent>, aggregate: StoredAggregateRoot): Promise<Array<StoredEvent>>;
@@ -13,9 +13,16 @@ class MongoEventStore extends core_1.AbstractEventStore {
13
13
  this._eventsCollectionName = _eventsCollectionName;
14
14
  this._logger = new common_1.Logger(MongoEventStore.name);
15
15
  }
16
+ get aggregatesCollectionName() {
17
+ return this._aggregatesCollectionName;
18
+ }
19
+ get eventsCollectionName() {
20
+ return this._eventsCollectionName;
21
+ }
16
22
  async findByAggregateRootId(aggregateRootClass, id) {
17
23
  const aggregateRootName = (0, core_1.getAggregateRootName)(aggregateRootClass);
18
24
  if ((0, core_1.isNil)(aggregateRootName)) {
25
+ this._logger.error(`Missing aggregate root name for class: ${aggregateRootClass.name}. Use the @AggregateRootName decorator.`);
19
26
  throw new core_1.MissingAggregateRootNameException(aggregateRootClass.name);
20
27
  }
21
28
  const documents = await this._mongoClient
@@ -1 +1 @@
1
- {"version":3,"file":"mongo-event-store.js","sourceRoot":"","sources":["../../../../../../libs/mongodb/src/lib/storage/mongo-event-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongo-event-store.js","sourceRoot":"","sources":["../../../../../../libs/mongodb/src/lib/storage/mongo-event-store.ts"],"names":[],"mappings":";;;AAAA,qCAAgD;AAChD,2CAAwC;AACxC,+EAA0E;AAC1E,2CAU0B;AAE1B,MAAa,eAAgB,SAAQ,yBAAkB;IAGnD,YACI,QAA4B,EACX,YAAyB,EACzB,yBAAiC,EACjC,qBAA6B;QAE9C,KAAK,CAAC,QAAQ,CAAC,CAAC;QAJC,iBAAY,GAAZ,YAAY,CAAa;QACzB,8BAAyB,GAAzB,yBAAyB,CAAQ;QACjC,0BAAqB,GAArB,qBAAqB,CAAQ;QAG9C,IAAI,CAAC,OAAO,GAAG,IAAI,eAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,wBAAwB;QACxB,OAAO,IAAI,CAAC,yBAAyB,CAAC;IAC1C,CAAC;IAED,IAAI,oBAAoB;QACpB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,qBAAqB,CACvB,kBAAyC,EACzC,EAAU;QAEV,MAAM,iBAAiB,GAAG,IAAA,2BAAoB,EAAC,kBAAkB,CAAC,CAAC;QACnE,IAAI,IAAA,YAAK,EAAC,iBAAiB,CAAC,EAAE;YAC1B,IAAI,CAAC,OAAO,CAAC,KAAK,CACd,0CAA0C,kBAAkB,CAAC,IAAI,yCAAyC,CAC7G,CAAC;YACF,MAAM,IAAI,wCAAiC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;SACxE;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY;aACpC,EAAE,EAAE;aACJ,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC;aACtC,IAAI,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;aACnE,OAAO,EAAE,CAAC;QACf,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACzB,OAAO,kBAAW,CAAC,WAAW,CAC1B,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,EACrB,GAAG,CAAC,iBAAiB,CAAC,EACtB,GAAG,CAAC,WAAW,CAAC,EAChB,GAAG,CAAC,WAAW,CAAC,EAChB,GAAG,CAAC,sBAAsB,CAAC,EAC3B,GAAG,CAAC,mBAAmB,CAAC,EACxB,GAAG,CAAC,SAAS,CAAC,CACjB,CAAC;YACN,CAAC,CAAC,CAAC;SACN;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAED,gBAAgB;QACZ,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,kBAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAA0B,EAAE,SAA8B;QACjE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,MAAM,CAAC;SACjB;QAED,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,cAAmC,CAAC;QAExC,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,YAAY;aACjD,EAAE,EAAE;aACJ,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC;aAC1C,OAAO,CAAC;YACL,GAAG,EAAE,IAAI,kBAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;SAClC,CAAC,CAAC;QAEP,IAAI,cAAc,GAAG,IAAA,YAAK,EAAC,sBAAsB,CAAC;YAC9C,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,0BAAmB,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC;QAE3G,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QACjD,MAAM,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,EAAE;YACrC,IAAI,IAAA,YAAK,EAAC,cAAc,CAAC,EAAE;gBACvB,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,SAAS,CAAC,EAAE,+BAA+B,CAAC,CAAC;gBAC7E,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,IAAI,kBAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;gBAC/E,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAC1F,cAAc,GAAG,SAAS,CAAC;aAC9B;YAED,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO,EAAE;gBAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,CACd,mCAAmC,SAAS,CAAC,EAAE,cAAc,SAAS,CAAC,OAAO,YAAY,cAAc,CAAC,OAAO,EAAE,CACrH,CAAC;gBACF,MAAM,IAAI,uDAAyB,CAAC,SAAS,CAAC,EAAE,EAAE,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;aAChG;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpC,kBAAkB,GAAG,SAAS,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC/C,MAAM,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,kBAAkB,CAAC;aACvD;YAED,SAAS,CAAC,OAAO,GAAG,kBAAkB,CAAC;YACvC,cAAc,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,MAAM,yBAAyB,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;YAEnF,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC7B,OAAO;oBACH,GAAG,EAAE,IAAI,kBAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBACxB,SAAS,EAAE,EAAE,CAAC,SAAS;oBACvB,eAAe,EAAE,EAAE,CAAC,eAAe;oBACnC,oBAAoB,EAAE,EAAE,CAAC,oBAAoB;oBAC7C,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;oBACvC,SAAS,EAAE,EAAE,CAAC,SAAS;oBACvB,OAAO,EAAE,EAAE,CAAC,OAAO;iBACtB,CAAC;YACN,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACvF,MAAM,IAAI,CAAC,YAAY;iBAClB,EAAE,EAAE;iBACJ,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC;iBAC1C,gBAAgB,CACb;gBACI,GAAG,EAAE,IAAI,kBAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;aACvC,EACD;gBACI,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE;aAC5C,CACJ,CAAC;QACV,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAlID,0CAkIC"}