@iamkirbki/database-handler-pg 4.0.6 → 4.0.8
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.
|
@@ -7,6 +7,7 @@ export default class PostgresAdapter implements IDatabaseAdapter {
|
|
|
7
7
|
exec(query: string): Promise<void>;
|
|
8
8
|
transaction(fn: (items: unknown[]) => void): Promise<Function>;
|
|
9
9
|
tableColumnInformation(tableName: string): Promise<TableColumnInfo[]>;
|
|
10
|
+
tableExists(tableName: string): Promise<boolean>;
|
|
10
11
|
close(): Promise<void>;
|
|
11
12
|
}
|
|
12
13
|
//# sourceMappingURL=PostgresAdapter.d.ts.map
|
|
@@ -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,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"}
|
|
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,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBhD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/B"}
|
package/dist/PostgresAdapter.js
CHANGED
|
@@ -81,6 +81,24 @@ export default class PostgresAdapter {
|
|
|
81
81
|
}));
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
|
+
tableExists(tableName) {
|
|
85
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
86
|
+
const client = this._pool ? yield this._pool.connect() : undefined;
|
|
87
|
+
if (!client) {
|
|
88
|
+
throw new Error("Database client is not available.");
|
|
89
|
+
}
|
|
90
|
+
const query = `
|
|
91
|
+
SELECT EXISTS (
|
|
92
|
+
SELECT 1
|
|
93
|
+
FROM information_schema.tables
|
|
94
|
+
WHERE table_name = $1
|
|
95
|
+
)
|
|
96
|
+
`;
|
|
97
|
+
const res = yield client.query(query, [tableName]);
|
|
98
|
+
client.release();
|
|
99
|
+
return res.rows[0].exists;
|
|
100
|
+
});
|
|
101
|
+
}
|
|
84
102
|
close() {
|
|
85
103
|
return __awaiter(this, void 0, void 0, function* () {
|
|
86
104
|
if (this._pool) {
|
|
@@ -5,7 +5,7 @@ export declare class PostgresSchemaBuilder implements AbstractSchemaBuilder {
|
|
|
5
5
|
private _adapter;
|
|
6
6
|
constructor(_adapter: PostgresAdapter);
|
|
7
7
|
createTable(name: string, callback: (table: PostgresTableSchemaBuilder) => void): Promise<void>;
|
|
8
|
-
dropTable(name: string): Promise<void>;
|
|
8
|
+
dropTable(name: string, cascade?: boolean): Promise<void>;
|
|
9
9
|
alterTable(_oldName: string, _callback: (table: PostgresTableSchemaBuilder) => void): Promise<void>;
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=PostgresSchemaBuilder.d.ts.map
|
|
@@ -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,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,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/F,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
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,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAc5G"}
|
|
@@ -24,9 +24,11 @@ export class PostgresSchemaBuilder {
|
|
|
24
24
|
yield statement.run();
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
|
-
dropTable(name) {
|
|
27
|
+
dropTable(name, cascade) {
|
|
28
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
|
|
29
|
+
let query = `DROP TABLE IF EXISTS ${name}`;
|
|
30
|
+
if (cascade)
|
|
31
|
+
query += " CASCADE";
|
|
30
32
|
const statement = yield this._adapter.prepare(query);
|
|
31
33
|
yield statement.run();
|
|
32
34
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@iamkirbki/database-handler-pg",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.8",
|
|
4
4
|
"author": "iamkirbki",
|
|
5
5
|
"description": "PostgreSQL adapter for @kirbkis-database-handler/core",
|
|
6
6
|
"license": "ISC",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"build": "tsc --build && tsc-alias"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@iamkirbki/database-handler-core": "^4.0
|
|
31
|
+
"@iamkirbki/database-handler-core": "^4.2.0",
|
|
32
32
|
"pg": "^8.16.3"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|