@event-nest/postgresql 3.4.2 → 4.0.1

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@event-nest/postgresql",
3
- "version": "3.4.2",
3
+ "version": "4.0.1",
4
4
  "license": "MIT",
5
5
  "description": "Event sourcing module for NestJS using PostgreSQL. It uses SQL tables and transactions to store events",
6
6
  "author": "Nick Tsitlakidis",
@@ -9,7 +9,7 @@
9
9
  "url": "https://github.com/NickTsitlakidis/event-nest.git"
10
10
  },
11
11
  "engines": {
12
- "node": ">= 18"
12
+ "node": ">= 20"
13
13
  },
14
14
  "type": "commonjs",
15
15
  "keywords": [
@@ -22,9 +22,9 @@
22
22
  "postgresql"
23
23
  ],
24
24
  "peerDependencies": {
25
- "@nestjs/common": "^9.0.0 || ^10.0.0",
26
- "@nestjs/core": "^9.0.0 || ^10.0.0",
27
- "pg": "^8.11.5",
25
+ "@nestjs/common": "^^10.0.0 || ^11.0.0",
26
+ "@nestjs/core": "^10.0.0 || ^11.0.0",
27
+ "pg": "^8.14.1",
28
28
  "reflect-metadata": "^0.1.12 || ^0.2.0",
29
29
  "rxjs": "^7.2.0"
30
30
  },
@@ -35,7 +35,7 @@
35
35
  "es-toolkit": "^1.32.0",
36
36
  "knex": "^3.1.0",
37
37
  "tslib": "^2.3.0",
38
- "@event-nest/core": "3.4.2"
38
+ "@event-nest/core": "4.0.1"
39
39
  },
40
40
  "types": "./src/index.d.ts"
41
41
  }
@@ -83,7 +83,8 @@ function buildKnexConnection(options) {
83
83
  client: "pg",
84
84
  connection: {
85
85
  connectionString: options.connectionUri
86
- }
86
+ },
87
+ pool: options.connectionPool
87
88
  });
88
89
  }
89
90
  return (0, knex_1.knex)({
@@ -94,7 +95,8 @@ function buildKnexConnection(options) {
94
95
  ca: options.ssl.certificate,
95
96
  rejectUnauthorized: options.ssl.rejectUnauthorized
96
97
  }
97
- }
98
+ },
99
+ pool: options.connectionPool
98
100
  });
99
101
  }
100
102
  //# sourceMappingURL=module-providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module-providers.js","sourceRoot":"","sources":["../../../../../libs/postgresql/src/lib/module-providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-providers.js","sourceRoot":"","sources":["../../../../../libs/postgresql/src/lib/module-providers.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,21 @@
1
1
  import { CoreModuleOptions } from "@event-nest/core";
2
+ export interface ConnectionPoolOptions {
3
+ acquireTimeoutMillis?: number;
4
+ afterCreate?: Function;
5
+ createRetryIntervalMillis?: number;
6
+ createTimeoutMillis?: number;
7
+ destroyTimeoutMillis?: number;
8
+ idleTimeoutMillis?: number;
9
+ log?: (message: string, logLevel: string) => void;
10
+ max?: number;
11
+ min?: number;
12
+ name?: string;
13
+ priorityRange?: number;
14
+ propagateCreateError?: boolean;
15
+ reapIntervalMillis?: number;
16
+ refreshIdle?: boolean;
17
+ returnToHead?: boolean;
18
+ }
2
19
  export interface PostgreSQLModuleAsyncOptions {
3
20
  inject?: any[];
4
21
  useFactory: (...parameters: any[]) => PostgreSQLModuleOptions | Promise<PostgreSQLModuleOptions>;
@@ -8,6 +25,11 @@ export interface PostgreSQLModuleOptions extends CoreModuleOptions {
8
25
  * The name of the table which will be used to store the aggregate root rows.
9
26
  */
10
27
  aggregatesTableName: string;
28
+ /**
29
+ * A configuration object through which you can customize the connection pool options.
30
+ * Event Nest is using Knex.js under the hood, so all the options supported by Knex.js are supported here.
31
+ */
32
+ connectionPool?: ConnectionPoolOptions;
11
33
  /**
12
34
  * A valid connection string which will be used to connect to the PostgreSQL server.
13
35
  */
@@ -7,16 +7,16 @@ export declare class PostgreSQLEventStore extends AbstractEventStore {
7
7
  private readonly _schemaConfiguration;
8
8
  constructor(eventEmitter: DomainEventEmitter, schemaName: string, aggregatesTableName: string, eventsTableName: string, _knexConnection: knex.Knex);
9
9
  /**
10
- * @deprecated Use {@link schemaConfiguration} instead
10
+ * @deprecated Use {@link schemaConfiguration} instead. It will be removed in version 5.x
11
11
  */
12
12
  get aggregatesTableName(): string;
13
13
  /**
14
- * @deprecated Use {@link schemaConfiguration} instead
14
+ * @deprecated Use {@link schemaConfiguration} instead. It will be removed in version 5.x
15
15
  */
16
16
  get eventsTableName(): string;
17
17
  get schemaConfiguration(): SchemaConfiguration;
18
18
  /**
19
- * @deprecated Use {@link schemaConfiguration} instead
19
+ * @deprecated Use {@link schemaConfiguration} instead. It will be removed in version 5.x
20
20
  */
21
21
  get schemaName(): string;
22
22
  findAggregateRootVersion(id: string): Promise<number>;
@@ -14,13 +14,13 @@ class PostgreSQLEventStore extends core_1.AbstractEventStore {
14
14
  this._schemaConfiguration = new schema_configuration_1.SchemaConfiguration(schemaName, aggregatesTableName, eventsTableName);
15
15
  }
16
16
  /**
17
- * @deprecated Use {@link schemaConfiguration} instead
17
+ * @deprecated Use {@link schemaConfiguration} instead. It will be removed in version 5.x
18
18
  */
19
19
  get aggregatesTableName() {
20
20
  return this.schemaConfiguration.aggregatesTable;
21
21
  }
22
22
  /**
23
- * @deprecated Use {@link schemaConfiguration} instead
23
+ * @deprecated Use {@link schemaConfiguration} instead. It will be removed in version 5.x
24
24
  */
25
25
  get eventsTableName() {
26
26
  return this.schemaConfiguration.eventsTable;
@@ -29,7 +29,7 @@ class PostgreSQLEventStore extends core_1.AbstractEventStore {
29
29
  return this._schemaConfiguration;
30
30
  }
31
31
  /**
32
- * @deprecated Use {@link schemaConfiguration} instead
32
+ * @deprecated Use {@link schemaConfiguration} instead. It will be removed in version 5.x
33
33
  */
34
34
  get schemaName() {
35
35
  return this.schemaConfiguration.schema;