@iamkirbki/database-handler-pg 3.1.4 → 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.
@@ -1,7 +1,7 @@
1
1
  import { IDatabaseAdapter, IStatementAdapter, TableColumnInfo } from "@iamkirbki/database-handler-core";
2
2
  import { PoolConfig } from "pg";
3
3
  export default class PostgresAdapter implements IDatabaseAdapter {
4
- private pool;
4
+ private _pool;
5
5
  connect(config: PoolConfig): Promise<void>;
6
6
  prepare(query: string): Promise<IStatementAdapter>;
7
7
  exec(query: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresAdapter.d.ts","sourceRoot":"","sources":["../src/PostgresAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxG,OAAO,EAAQ,UAAU,EAAE,MAAM,IAAI,CAAC;AAGtC,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,gBAAgB;IAC5D,OAAO,CAAC,IAAI,CAAqB;IAE3B,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAKlD,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlC,WAAW,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IA6B9D,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAyBrE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/B"}
1
+ {"version":3,"file":"PostgresAdapter.d.ts","sourceRoot":"","sources":["../src/PostgresAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxG,OAAO,EAAQ,UAAU,EAAE,MAAM,IAAI,CAAC;AAGtC,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,gBAAgB;IAC5D,OAAO,CAAC,KAAK,CAAqB;IAE5B,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAKlD,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlC,WAAW,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IA6B9D,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAyBrE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/B"}
@@ -11,22 +11,22 @@ import { Pool } from "pg";
11
11
  import PostgresStatement from "./PostgresStatement.js";
12
12
  export default class PostgresAdapter {
13
13
  constructor() {
14
- this.pool = null;
14
+ this._pool = null;
15
15
  }
16
16
  connect(config) {
17
17
  return __awaiter(this, void 0, void 0, function* () {
18
- this.pool = new Pool(config);
18
+ this._pool = new Pool(config);
19
19
  });
20
20
  }
21
21
  prepare(query) {
22
22
  return __awaiter(this, void 0, void 0, function* () {
23
- const client = this.pool ? yield this.pool.connect() : undefined;
23
+ const client = this._pool ? yield this._pool.connect() : undefined;
24
24
  return new PostgresStatement(query, client);
25
25
  });
26
26
  }
27
27
  exec(query) {
28
28
  return __awaiter(this, void 0, void 0, function* () {
29
- const client = this.pool ? yield this.pool.connect() : undefined;
29
+ const client = this._pool ? yield this._pool.connect() : undefined;
30
30
  const statement = new PostgresStatement(query, client);
31
31
  yield statement.run();
32
32
  });
@@ -34,7 +34,7 @@ export default class PostgresAdapter {
34
34
  // eslint-disable-next-line no-unused-vars
35
35
  transaction(fn) {
36
36
  return __awaiter(this, void 0, void 0, function* () {
37
- const client = this.pool ? yield this.pool.connect() : undefined;
37
+ const client = this._pool ? yield this._pool.connect() : undefined;
38
38
  if (!client) {
39
39
  throw new Error("Database client is not available for transaction.");
40
40
  }
@@ -60,7 +60,7 @@ export default class PostgresAdapter {
60
60
  }
61
61
  tableColumnInformation(tableName) {
62
62
  return __awaiter(this, void 0, void 0, function* () {
63
- const client = this.pool ? yield this.pool.connect() : undefined;
63
+ const client = this._pool ? yield this._pool.connect() : undefined;
64
64
  if (!client) {
65
65
  throw new Error("Database client is not available.");
66
66
  }
@@ -83,9 +83,9 @@ export default class PostgresAdapter {
83
83
  }
84
84
  close() {
85
85
  return __awaiter(this, void 0, void 0, function* () {
86
- if (this.pool) {
87
- yield this.pool.end();
88
- this.pool = null;
86
+ if (this._pool) {
87
+ yield this._pool.end();
88
+ this._pool = null;
89
89
  }
90
90
  });
91
91
  }
@@ -1,9 +1,9 @@
1
1
  import { PostgresTableSchemaBuilder } from "./PostgresTableSchemaBuilder.js";
2
2
  import PostgresAdapter from "./PostgresAdapter.js";
3
3
  import { AbstractSchemaBuilder } from "@iamkirbki/database-handler-core";
4
- export declare class PostgresSchemaBuilder extends AbstractSchemaBuilder {
5
- private adapter;
6
- constructor(adapter: PostgresAdapter);
4
+ export declare class PostgresSchemaBuilder implements AbstractSchemaBuilder {
5
+ private _adapter;
6
+ constructor(_adapter: PostgresAdapter);
7
7
  createTable(name: string, callback: (table: PostgresTableSchemaBuilder) => void): Promise<void>;
8
8
  dropTable(name: string): Promise<void>;
9
9
  alterTable(_oldName: string, _callback: (table: PostgresTableSchemaBuilder) => void): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresSchemaBuilder.d.ts","sourceRoot":"","sources":["../src/PostgresSchemaBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,qBAAa,qBAAsB,SAAQ,qBAAqB;IAEhD,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,eAAe;IAKtC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI;IAW/E,SAAS,CAAC,IAAI,EAAE,MAAM;IAOtB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAc5G"}
1
+ {"version":3,"file":"PostgresSchemaBuilder.d.ts","sourceRoot":"","sources":["../src/PostgresSchemaBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,qBAAa,qBAAsB,YAAW,qBAAqB;IAEnD,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,eAAe;IAGvC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI;IAW/E,SAAS,CAAC,IAAI,EAAE,MAAM;IAOtB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAc5G"}
@@ -8,12 +8,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { PostgresTableSchemaBuilder } from "./PostgresTableSchemaBuilder.js";
11
- import { AbstractSchemaBuilder } from "@iamkirbki/database-handler-core";
12
- export class PostgresSchemaBuilder extends AbstractSchemaBuilder {
11
+ export class PostgresSchemaBuilder {
13
12
  // eslint-disable-next-line no-unused-vars
14
- constructor(adapter) {
15
- super();
16
- this.adapter = adapter;
13
+ constructor(_adapter) {
14
+ this._adapter = _adapter;
17
15
  }
18
16
  // eslint-disable-next-line no-unused-vars
19
17
  createTable(name, callback) {
@@ -21,15 +19,15 @@ export class PostgresSchemaBuilder extends AbstractSchemaBuilder {
21
19
  const tableBuilder = new PostgresTableSchemaBuilder();
22
20
  callback(tableBuilder);
23
21
  const cols = tableBuilder.build();
24
- const query = `CREATE TABLE ${name} ${cols}`;
25
- const statement = yield this.adapter.prepare(query);
22
+ const query = `CREATE TABLE IF NOT EXISTS ${name} ${cols}`;
23
+ const statement = yield this._adapter.prepare(query);
26
24
  statement.run();
27
25
  });
28
26
  }
29
27
  dropTable(name) {
30
28
  return __awaiter(this, void 0, void 0, function* () {
31
29
  const query = `DROP TABLE IF EXISTS ${name}`;
32
- const statement = yield this.adapter.prepare(query);
30
+ const statement = yield this._adapter.prepare(query);
33
31
  statement.run();
34
32
  });
35
33
  }
@@ -1,8 +1,8 @@
1
1
  import { IStatementAdapter } from "@iamkirbki/database-handler-core";
2
2
  import { PoolClient } from "pg";
3
3
  export default class PostgresStatement implements IStatementAdapter {
4
- private query;
5
- private client;
4
+ private _query;
5
+ private _client;
6
6
  constructor(query: string, _client: PoolClient | undefined);
7
7
  /**
8
8
  * Transform SQLite-style named parameters (@name) to PostgreSQL positional parameters ($1, $2)
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresStatement.d.ts","sourceRoot":"","sources":["../src/PostgresStatement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,iBAAiB;IAC/D,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAyB;gBAE3B,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,SAAS;IAK1D;;;OAGG;IACH,OAAO,CAAC,cAAc;IAoBhB,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1C,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAW5C,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;CAU/D"}
1
+ {"version":3,"file":"PostgresStatement.d.ts","sourceRoot":"","sources":["../src/PostgresStatement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,iBAAiB;IAC/D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAyB;gBAE5B,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,SAAS;IAK1D;;;OAGG;IACH,OAAO,CAAC,cAAc;IAoBhB,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1C,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAW5C,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;CAU/D"}
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  export default class PostgresStatement {
11
11
  constructor(query, _client) {
12
- this.query = query;
13
- this.client = _client;
12
+ this._query = query;
13
+ this._client = _client;
14
14
  }
15
15
  /**
16
16
  * Transform SQLite-style named parameters (@name) to PostgreSQL positional parameters ($1, $2)
@@ -18,12 +18,12 @@ export default class PostgresStatement {
18
18
  */
19
19
  transformQuery(parameters) {
20
20
  if (!parameters || Object.keys(parameters).length === 0) {
21
- return { query: this.query, values: [] };
21
+ return { query: this._query, values: [] };
22
22
  }
23
23
  const paramMap = new Map();
24
24
  let paramIndex = 1;
25
25
  const values = [];
26
- const transformedQuery = this.query.replace(/@(\w+)/g, (_match, paramName) => {
26
+ const transformedQuery = this._query.replace(/@(\w+)/g, (_match, paramName) => {
27
27
  if (!paramMap.has(paramName)) {
28
28
  paramMap.set(paramName, paramIndex++);
29
29
  values.push(parameters[paramName]);
@@ -37,12 +37,12 @@ export default class PostgresStatement {
37
37
  var _a, _b;
38
38
  const { query, values } = this.transformQuery(parameters);
39
39
  try {
40
- const res = yield ((_a = this.client) === null || _a === void 0 ? void 0 : _a.query(query, values));
40
+ const res = yield ((_a = this._client) === null || _a === void 0 ? void 0 : _a.query(query, values));
41
41
  return res;
42
42
  }
43
43
  finally {
44
- (_b = this.client) === null || _b === void 0 ? void 0 : _b.release();
45
- this.client = undefined; // Prevent double release
44
+ (_b = this._client) === null || _b === void 0 ? void 0 : _b.release();
45
+ this._client = undefined; // Prevent double release
46
46
  }
47
47
  });
48
48
  }
@@ -51,12 +51,12 @@ export default class PostgresStatement {
51
51
  var _a, _b;
52
52
  const { query, values } = this.transformQuery(parameters);
53
53
  try {
54
- const res = yield ((_a = this.client) === null || _a === void 0 ? void 0 : _a.query(query, values));
54
+ const res = yield ((_a = this._client) === null || _a === void 0 ? void 0 : _a.query(query, values));
55
55
  return (res === null || res === void 0 ? void 0 : res.rows) || [];
56
56
  }
57
57
  finally {
58
- (_b = this.client) === null || _b === void 0 ? void 0 : _b.release();
59
- this.client = undefined; // Prevent double release
58
+ (_b = this._client) === null || _b === void 0 ? void 0 : _b.release();
59
+ this._client = undefined; // Prevent double release
60
60
  }
61
61
  });
62
62
  }
@@ -65,12 +65,12 @@ export default class PostgresStatement {
65
65
  var _a, _b;
66
66
  const { query, values } = this.transformQuery(parameters);
67
67
  try {
68
- const res = yield ((_a = this.client) === null || _a === void 0 ? void 0 : _a.query(query, values));
68
+ const res = yield ((_a = this._client) === null || _a === void 0 ? void 0 : _a.query(query, values));
69
69
  return res === null || res === void 0 ? void 0 : res.rows[0];
70
70
  }
71
71
  finally {
72
- (_b = this.client) === null || _b === void 0 ? void 0 : _b.release();
73
- this.client = undefined; // Prevent double release
72
+ (_b = this._client) === null || _b === void 0 ? void 0 : _b.release();
73
+ this._client = undefined; // Prevent double release
74
74
  }
75
75
  });
76
76
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iamkirbki/database-handler-pg",
3
- "version": "3.1.4",
3
+ "version": "4.0.1",
4
4
  "author": "iamkirbki",
5
5
  "description": "PostgreSQL adapter for @kirbkis-database-handler/core",
6
6
  "license": "ISC",
@@ -21,14 +21,14 @@
21
21
  ],
22
22
  "repository": {
23
23
  "type": "git",
24
- "url": "https://github.com/IamKirbki/bettersqlite3-handler.git",
24
+ "url": "https://github.com/IamKirbki/npm-database-handler.git",
25
25
  "directory": "packages/pg"
26
26
  },
27
27
  "scripts": {
28
- "build": "tsc"
28
+ "build": "tsc --build && tsc-alias"
29
29
  },
30
30
  "dependencies": {
31
- "@iamkirbki/database-handler-core": "^3.1.4",
31
+ "@iamkirbki/database-handler-core": "^4.0.1",
32
32
  "pg": "^8.16.3"
33
33
  },
34
34
  "devDependencies": {