@spinajs/orm-postgres 2.0.556 → 3.0.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.
- package/README.md +20 -20
- package/lib/cjs/compilers.d.ts +5 -5
- package/lib/cjs/compilers.d.ts.map +1 -1
- package/lib/cjs/compilers.js +23 -17
- package/lib/cjs/compilers.js.map +1 -1
- package/lib/cjs/converters.d.ts +7 -7
- package/lib/cjs/converters.d.ts.map +1 -1
- package/lib/cjs/converters.js +18 -40
- package/lib/cjs/converters.js.map +1 -1
- package/lib/cjs/errors.d.ts +4 -0
- package/lib/cjs/errors.d.ts.map +1 -0
- package/lib/cjs/errors.js +31 -0
- package/lib/cjs/errors.js.map +1 -0
- package/lib/cjs/expressions.d.ts +9 -0
- package/lib/cjs/expressions.d.ts.map +1 -0
- package/lib/cjs/expressions.js +22 -0
- package/lib/cjs/expressions.js.map +1 -0
- package/lib/cjs/index.d.ts +12 -3
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +95 -35
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/statements.d.ts +19 -6
- package/lib/cjs/statements.d.ts.map +1 -1
- package/lib/cjs/statements.js +37 -8
- package/lib/cjs/statements.js.map +1 -1
- package/lib/mjs/compilers.d.ts +5 -5
- package/lib/mjs/compilers.d.ts.map +1 -1
- package/lib/mjs/compilers.js +23 -17
- package/lib/mjs/compilers.js.map +1 -1
- package/lib/mjs/converters.d.ts +7 -7
- package/lib/mjs/converters.d.ts.map +1 -1
- package/lib/mjs/converters.js +19 -41
- package/lib/mjs/converters.js.map +1 -1
- package/lib/mjs/errors.d.ts +4 -0
- package/lib/mjs/errors.d.ts.map +1 -0
- package/lib/mjs/errors.js +28 -0
- package/lib/mjs/errors.js.map +1 -0
- package/lib/mjs/expressions.d.ts +9 -0
- package/lib/mjs/expressions.d.ts.map +1 -0
- package/lib/mjs/expressions.js +18 -0
- package/lib/mjs/expressions.js.map +1 -0
- package/lib/mjs/index.d.ts +12 -3
- package/lib/mjs/index.d.ts.map +1 -1
- package/lib/mjs/index.js +97 -39
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/statements.d.ts +19 -6
- package/lib/mjs/statements.d.ts.map +1 -1
- package/lib/mjs/statements.js +37 -9
- package/lib/mjs/statements.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +13 -10
package/lib/cjs/index.js
CHANGED
|
@@ -26,18 +26,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.PostgresOrmDriver = exports.PostgresServerResponseMapper = void 0;
|
|
27
27
|
exports.toPositionalParameters = toPositionalParameters;
|
|
28
28
|
exports.toDriverStatement = toDriverStatement;
|
|
29
|
+
exports.parseUtcTimestamp = parseUtcTimestamp;
|
|
30
|
+
exports.parseUtcDate = parseUtcDate;
|
|
29
31
|
exports.utcTypeParser = utcTypeParser;
|
|
30
32
|
exports.parseColumnDefault = parseColumnDefault;
|
|
31
33
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
34
|
+
const expressions_js_1 = require("./expressions.js");
|
|
32
35
|
const di_1 = require("@spinajs/di");
|
|
33
36
|
const orm_1 = require("@spinajs/orm");
|
|
34
37
|
const orm_sql_1 = require("@spinajs/orm-sql");
|
|
35
38
|
const pg_1 = __importDefault(require("pg"));
|
|
36
39
|
const compilers_js_1 = require("./compilers.js");
|
|
37
40
|
const statements_js_1 = require("./statements.js");
|
|
41
|
+
const errors_js_1 = require("./errors.js");
|
|
38
42
|
const converters_js_1 = require("./converters.js");
|
|
39
43
|
__exportStar(require("./compilers.js"), exports);
|
|
44
|
+
__exportStar(require("./expressions.js"), exports);
|
|
40
45
|
__exportStar(require("./statements.js"), exports);
|
|
46
|
+
__exportStar(require("./errors.js"), exports);
|
|
41
47
|
__exportStar(require("./converters.js"), exports);
|
|
42
48
|
/**
|
|
43
49
|
* SQLSTATE classes that mean the transport died rather than the statement being wrong.
|
|
@@ -62,23 +68,45 @@ function toPositionalParameters(stmt) {
|
|
|
62
68
|
*/
|
|
63
69
|
function toDriverStatement(stmt, params) {
|
|
64
70
|
const count = params?.length ?? 0;
|
|
71
|
+
if (count === 0) {
|
|
72
|
+
return stmt;
|
|
73
|
+
}
|
|
74
|
+
// Quoted literals / identifiers and the jsonb operators `?|` `?&` are text, not placeholders.
|
|
65
75
|
let i = 0;
|
|
66
|
-
return stmt.replace(
|
|
76
|
+
return stmt.replace(/'(?:[^']|'')*'|"(?:[^"]|"")*"|\?&|\?\|(?!\|)|\?/g, (match) => (match === '?' && i < count ? `$${++i}` : match));
|
|
67
77
|
}
|
|
68
|
-
const
|
|
69
|
-
const
|
|
78
|
+
const defaultParser = pg_1.default.types.getTypeParser;
|
|
79
|
+
const parseTimestamptz = defaultParser(pg_1.default.types.builtins.TIMESTAMPTZ, 'text');
|
|
80
|
+
const parseDate = defaultParser(pg_1.default.types.builtins.DATE, 'text');
|
|
70
81
|
/**
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
* midnight of its calendar day. `timestamptz` keeps the default parser: its text carries the offset.
|
|
82
|
+
* Parses `timestamp` (without time zone) as UTC: the datetime converter writes UTC into such a
|
|
83
|
+
* column, and pg's own parser reads it in the process zone.
|
|
74
84
|
*/
|
|
85
|
+
function parseUtcTimestamp(value) {
|
|
86
|
+
if (value === 'infinity' || value === '-infinity') {
|
|
87
|
+
return parseTimestamptz(value);
|
|
88
|
+
}
|
|
89
|
+
return value.endsWith(' BC') ? parseTimestamptz(`${value.slice(0, -3)}+00 BC`) : parseTimestamptz(`${value}+00`);
|
|
90
|
+
}
|
|
91
|
+
/** Parses `date` as UTC midnight of its calendar day; pg's own parser takes local midnight, which read as UTC is the day before east of UTC. */
|
|
92
|
+
function parseUtcDate(value) {
|
|
93
|
+
if (value === 'infinity' || value === '-infinity') {
|
|
94
|
+
return parseDate(value);
|
|
95
|
+
}
|
|
96
|
+
return value.endsWith(' BC') ? parseUtcTimestamp(`${value.slice(0, -3)} 00:00:00 BC`) : parseUtcTimestamp(`${value} 00:00:00`);
|
|
97
|
+
}
|
|
98
|
+
/** The pool's type parsers: `timestamp` and `date` as UTC, the rest as pg reads them ( `timestamptz` text carries its offset ). */
|
|
75
99
|
function utcTypeParser(oid, format) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
100
|
+
if (format !== 'binary' && oid === pg_1.default.types.builtins.TIMESTAMP) {
|
|
101
|
+
return parseUtcTimestamp;
|
|
102
|
+
}
|
|
103
|
+
if (format !== 'binary' && oid === pg_1.default.types.builtins.DATE) {
|
|
104
|
+
return parseUtcDate;
|
|
79
105
|
}
|
|
80
|
-
return (
|
|
106
|
+
return defaultParser(oid, format);
|
|
81
107
|
}
|
|
108
|
+
// Per pool, not the global pg.types: that registry is shared with every other pg user in the process.
|
|
109
|
+
const UTC_TYPES = { getTypeParser: utcTypeParser };
|
|
82
110
|
const QUOTED_LITERAL_DEFAULT = /^'((?:[^']|'')*)'::[a-z0-9_ ."]+$/i;
|
|
83
111
|
const NUMERIC_LITERAL_DEFAULT = /^\(?-?\d+(\.\d+)?\)?$/;
|
|
84
112
|
/**
|
|
@@ -143,6 +171,8 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
143
171
|
* READ COMMITTED, which is the standard-permitted upgrade, so it is not refused here.
|
|
144
172
|
*/
|
|
145
173
|
this.SupportedIsolationLevels = ['READ UNCOMMITTED', 'READ COMMITTED', 'REPEATABLE READ', 'SERIALIZABLE'];
|
|
174
|
+
/** The wire protocol counts parameters in an Int16. */
|
|
175
|
+
this.MaxBindings = 65535;
|
|
146
176
|
/**
|
|
147
177
|
* pg hands NUMERIC/DECIMAL and BIGINT back as STRINGS: both can exceed 2^53, where a
|
|
148
178
|
* float loses exactly the precision those types exist to keep, so node-postgres refuses
|
|
@@ -159,7 +189,8 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
159
189
|
executeOnDb(stmt, params, context) {
|
|
160
190
|
// Reads and writes are both retried: `withReconnect` only re-runs on transport
|
|
161
191
|
// failures, where the statement provably never reached the server.
|
|
162
|
-
|
|
192
|
+
const bound = this.toDriverParams(params);
|
|
193
|
+
return this.withReconnect(() => this._executeOnDbOnce(stmt, bound, context));
|
|
163
194
|
}
|
|
164
195
|
isRetryableError(err) {
|
|
165
196
|
// Inside a transaction the connection carried uncommitted state. Reconnecting and
|
|
@@ -196,6 +227,10 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
196
227
|
else {
|
|
197
228
|
// Taking the client explicitly, instead of letting `Pool.query` do it out of
|
|
198
229
|
// sight, is what makes `orm_pool_acquire_seconds` a real number instead of zero.
|
|
230
|
+
if (!this.Pool) {
|
|
231
|
+
// A failed reconnect leaves no pool; 08003 ( connection does not exist ) lets withReconnect retry.
|
|
232
|
+
throw Object.assign(new Error('postgres pool is not connected'), { code: '08003' });
|
|
233
|
+
}
|
|
199
234
|
const acquireStart = process.hrtime.bigint();
|
|
200
235
|
const client = await this.Pool.connect();
|
|
201
236
|
this.observeAcquireSeconds(Number(process.hrtime.bigint() - acquireStart) / 1e9);
|
|
@@ -227,11 +262,11 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
227
262
|
}
|
|
228
263
|
}
|
|
229
264
|
catch (err) {
|
|
230
|
-
throw
|
|
265
|
+
throw (0, errors_js_1.mapPostgresError)(err, {
|
|
231
266
|
Host: this.Options.Host,
|
|
232
267
|
User: this.Options.User,
|
|
233
268
|
Name: this.Options.Name,
|
|
234
|
-
}, stmt, params
|
|
269
|
+
}, stmt, params);
|
|
235
270
|
}
|
|
236
271
|
}
|
|
237
272
|
supportedFeatures() {
|
|
@@ -244,6 +279,8 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
244
279
|
// With RETURNING every key comes back per row; the LAST_INSERT_ID batch walk is
|
|
245
280
|
// MySQL's workaround for not having it.
|
|
246
281
|
insertIdIsFirstOfBatch: false,
|
|
282
|
+
concurrentTransactions: true,
|
|
283
|
+
nativeJson: true,
|
|
247
284
|
};
|
|
248
285
|
}
|
|
249
286
|
resolve() {
|
|
@@ -257,11 +294,13 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
257
294
|
* dialect-specific is inherited by accident.
|
|
258
295
|
*/
|
|
259
296
|
this.Container.register(statements_js_1.DoubleQuoteIdentifierQuoter).as(orm_1.IdentifierQuoter);
|
|
297
|
+
this.Container.register(statements_js_1.PostgresInStatement).as(orm_1.InStatement);
|
|
298
|
+
this.Container.register(expressions_js_1.PostgresSqlExpressions).as(orm_1.SqlExpressions);
|
|
299
|
+
this.Container.register(compilers_js_1.PostgresIndexQueryCompiler).as(orm_1.IndexQueryCompiler);
|
|
260
300
|
this.Container.register(compilers_js_1.PostgresOnDuplicateQueryCompiler).as(orm_1.OnDuplicateQueryCompiler);
|
|
261
301
|
this.Container.register(compilers_js_1.PostgresInsertQueryCompiler).as(orm_1.InsertQueryCompiler);
|
|
262
302
|
this.Container.register(compilers_js_1.PostgresColumnQueryCompiler).as(orm_1.ColumnQueryCompiler);
|
|
263
303
|
this.Container.register(compilers_js_1.PostgresAlterColumnQueryCompiler).as(orm_1.AlterColumnQueryCompiler);
|
|
264
|
-
this.Container.register(compilers_js_1.PostgresAlterTableQueryCompiler).as(orm_1.AlterTableQueryCompiler);
|
|
265
304
|
this.Container.register(compilers_js_1.PostgresLimitQueryCompiler).as(orm_1.LimitQueryCompiler);
|
|
266
305
|
this.Container.register(compilers_js_1.PostgresCreateDatabaseQueryCompiler).as(orm_1.CreateDatabaseCompiler);
|
|
267
306
|
this.Container.register(compilers_js_1.PostgresDefaultValueBuilder).as(orm_1.DefaultValueBuilder);
|
|
@@ -269,9 +308,11 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
269
308
|
this.Container.register(compilers_js_1.PostgresTableAliasCompiler).as(orm_1.TableAliasCompiler);
|
|
270
309
|
this.Container.register(compilers_js_1.PostgresCreateViewCompiler).as(orm_1.CreateViewCompiler);
|
|
271
310
|
this.Container.register(statements_js_1.PostgresLiteralQuoter).as(orm_1.LiteralQuoter);
|
|
272
|
-
this.Container.register(statements_js_1.PostgresJoinStatement).as(orm_1.JoinStatement);
|
|
273
|
-
this.Container.register(converters_js_1.PostgresJsonValueConverter).as(orm_1.JsonValueConverter);
|
|
274
311
|
this.Container.register(converters_js_1.PostgresDatetimeValueConverter).as(orm_1.DatetimeValueConverter);
|
|
312
|
+
this.Container.register(converters_js_1.PostgresJsonValueConverter).as(orm_1.JsonValueConverter);
|
|
313
|
+
this.Container.register(statements_js_1.PostgresNowExpression).as(orm_1.NowExpression);
|
|
314
|
+
this.Container.register(statements_js_1.PostgresJoinStatement).as(orm_1.JoinStatement);
|
|
315
|
+
this.Container.register(statements_js_1.PostgresDateTimeWrapper).as(orm_1.DateTimeWrapper);
|
|
275
316
|
// Shared implementations that happen to be valid postgres, claimed explicitly.
|
|
276
317
|
// DROP DATABASE IF EXISTS is among them: with this driver's quoter injected the
|
|
277
318
|
// shared compiler already emits exactly the postgres statement.
|
|
@@ -281,6 +322,7 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
281
322
|
this.Container.register(orm_sql_1.SqlDropDatabaseQueryCompiler).as(orm_1.DropDatabaseCompiler);
|
|
282
323
|
this.Container.register(orm_sql_1.SqlTruncateTableQueryCompiler).as(orm_1.TruncateTableQueryCompiler);
|
|
283
324
|
this.Container.register(orm_sql_1.SqlWithRecursiveCompiler).as(orm_1.RecursiveQueryCompiler);
|
|
325
|
+
this.Container.register(orm_sql_1.SqlAlterTableQueryCompiler).as(orm_1.AlterTableQueryCompiler);
|
|
284
326
|
// No native scheduler in this engine, and nothing is simulated in its place.
|
|
285
327
|
this.Container.register(orm_sql_1.UnsupportedEventQueryCompiler).as(orm_1.EventQueryCompiler);
|
|
286
328
|
this.Container.register(orm_sql_1.UnsupportedDropEventQueryCompiler).as(orm_1.DropEventQueryCompiler);
|
|
@@ -304,11 +346,9 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
304
346
|
return false;
|
|
305
347
|
}
|
|
306
348
|
}
|
|
307
|
-
|
|
349
|
+
poolConfig() {
|
|
308
350
|
const pool = this.resolvedPoolOptions();
|
|
309
|
-
|
|
310
|
-
const previous = this.Pool;
|
|
311
|
-
this.Pool = new pg_1.default.Pool({
|
|
351
|
+
return {
|
|
312
352
|
host: this.Options.Host,
|
|
313
353
|
user: this.Options.User,
|
|
314
354
|
password: this.Options.Password,
|
|
@@ -318,32 +358,48 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
318
358
|
min: pool.Min,
|
|
319
359
|
idleTimeoutMillis: pool.IdleTimeout,
|
|
320
360
|
connectionTimeoutMillis: pool.AcquireTimeout,
|
|
321
|
-
|
|
322
|
-
|
|
361
|
+
// now(), date_trunc() and the text of a timestamptz follow the session zone. pg reads PGOPTIONS only
|
|
362
|
+
// when no options are given, so it is kept here.
|
|
363
|
+
options: `${process.env.PGOPTIONS ?? ''} -c TimeZone=UTC`.trim(),
|
|
364
|
+
types: UTC_TYPES,
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
async connect() {
|
|
368
|
+
// A reconnect replaces the pool; the dead one still holds its sockets and timers.
|
|
369
|
+
const previous = this.Pool;
|
|
370
|
+
this.Pool = null;
|
|
371
|
+
await previous?.end().catch(() => undefined);
|
|
372
|
+
this.Pool = new pg_1.default.Pool(this.poolConfig());
|
|
323
373
|
// An idle client's connection can die between checkouts; without a listener pg emits
|
|
324
374
|
// 'error' on the pool and an unhandled 'error' event kills the process.
|
|
325
375
|
this.Pool.on('error', (err) => {
|
|
326
|
-
this.Log?.warn(
|
|
376
|
+
this.Log?.warn({ error: err, connection: this.Options.Name }, 'postgres pool connection error for ${connection}');
|
|
327
377
|
});
|
|
328
|
-
//
|
|
329
|
-
//
|
|
378
|
+
// search_path is a session setting, so it is set on each connection as the pool opens it; the
|
|
379
|
+
// listener is in place before the probe below, so no connection misses it.
|
|
330
380
|
const schema = this.Options.Options?.Schema;
|
|
331
|
-
const session = [`SET TIME ZONE 'UTC'`, ...(schema ? [`SET search_path TO ${(0, statements_js_1.pgEscapeIdentifier)(schema)}`] : [])].join('; ');
|
|
332
381
|
this.Pool.on('connect', (c) => {
|
|
333
382
|
// The pool listens for errors only while a client is idle. A checked-out client whose
|
|
334
383
|
// socket dies emits 'error' too, and unhandled that kills the process; the statement in
|
|
335
384
|
// flight already rejects with the same error.
|
|
336
385
|
c.on('error', () => undefined);
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
386
|
+
if (schema) {
|
|
387
|
+
c.query(`SET search_path TO ${(0, statements_js_1.pgEscapeIdentifier)(schema)}`).catch((err) => {
|
|
388
|
+
this.Log?.warn({ error: err, schema, connection: this.Options.Name }, 'could not set search_path to ${schema} for ${connection}');
|
|
389
|
+
});
|
|
390
|
+
}
|
|
340
391
|
});
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
392
|
+
try {
|
|
393
|
+
const client = await this.Pool.connect();
|
|
394
|
+
client.release();
|
|
395
|
+
this.setState(orm_1.ConnectionState.Connected);
|
|
396
|
+
return this;
|
|
397
|
+
}
|
|
398
|
+
catch (err) {
|
|
399
|
+
await this.Pool.end().catch(() => undefined);
|
|
400
|
+
this.Pool = null;
|
|
401
|
+
throw err;
|
|
402
|
+
}
|
|
347
403
|
}
|
|
348
404
|
async disconnect() {
|
|
349
405
|
this.stopHealthCheck();
|
|
@@ -354,6 +410,10 @@ let PostgresOrmDriver = class PostgresOrmDriver extends orm_sql_1.SqlDriver {
|
|
|
354
410
|
}
|
|
355
411
|
return this;
|
|
356
412
|
}
|
|
413
|
+
async lockTableShared(table) {
|
|
414
|
+
this.assertInTransaction('lockTableShared');
|
|
415
|
+
await this.schema().raw(`LOCK TABLE ${this.Container.resolve(orm_1.IdentifierQuoter).quoteQualified(table)} IN SHARE MODE`);
|
|
416
|
+
}
|
|
357
417
|
async tableInfo(name, schema) {
|
|
358
418
|
// Callers written against mysql semantics (orm's model bootstrap among them) pass
|
|
359
419
|
// `Options.Database` here, where database and schema are the same word. In postgres they are
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/statements.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IContainer } from '@spinajs/di';
|
|
2
|
-
import { IdentifierQuoter } from '@spinajs/orm';
|
|
3
|
-
import { SqlJoinStatement, SqlLiteralQuoter } from '@spinajs/orm-sql';
|
|
2
|
+
import { IdentifierQuoter, NowExpression, OrmDriver } from '@spinajs/orm';
|
|
3
|
+
import { SqlDateTimeWrapper, SqlInStatement, SqlJoinStatement, SqlLiteralQuoter } from '@spinajs/orm-sql';
|
|
4
4
|
/**
|
|
5
5
|
* PostgreSQL quotes identifiers with the ANSI double quote and escapes an embedded `"` by
|
|
6
6
|
* doubling it. The shared `orm-sql` helper emits backticks, which PostgreSQL reads as an
|
|
@@ -21,12 +21,25 @@ export declare class PostgresLiteralQuoter extends SqlLiteralQuoter {
|
|
|
21
21
|
protected quoteString(value: string): string;
|
|
22
22
|
protected quoteBoolean(value: boolean): string;
|
|
23
23
|
}
|
|
24
|
+
/** A long list is bound as one array parameter; postgres infers the element type from the column. */
|
|
25
|
+
export declare class PostgresInStatement extends SqlInStatement {
|
|
26
|
+
protected listExpression(column: string): string;
|
|
27
|
+
protected listBinding(values: unknown[]): unknown;
|
|
28
|
+
}
|
|
29
|
+
/** The start of the current transaction, as for a column default. */
|
|
30
|
+
export declare class PostgresNowExpression extends NowExpression {
|
|
31
|
+
sql(): string;
|
|
32
|
+
}
|
|
24
33
|
/**
|
|
25
|
-
* A
|
|
26
|
-
*
|
|
34
|
+
* A connection cannot reach another database, so the shared `"<database>"."<table>"`
|
|
35
|
+
* spelling would be read as a schema named like the database. Joined tables are
|
|
36
|
+
* qualified with the configured schema instead, or left bare to follow search_path.
|
|
27
37
|
*/
|
|
28
38
|
export declare class PostgresJoinStatement extends SqlJoinStatement {
|
|
29
|
-
protected
|
|
30
|
-
|
|
39
|
+
protected tableQualifier(driver: OrmDriver): string | undefined;
|
|
40
|
+
}
|
|
41
|
+
/** PostgreSQL has no `DATETIME()` function; a cast to TIMESTAMP is its spelling. */
|
|
42
|
+
export declare class PostgresDateTimeWrapper extends SqlDateTimeWrapper {
|
|
43
|
+
wrap(): string;
|
|
31
44
|
}
|
|
32
45
|
//# sourceMappingURL=statements.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAuB,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAuB,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAG1G;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;GAIG;AACH,qBACa,2BAA4B,SAAQ,gBAAgB;IACxD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjC;CACF;AAED,qBAEa,qBAAsB,SAAQ,gBAAgB;IACzD,YAAY,SAAS,EAAE,UAAU,EAEhC;IAED,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3C;IAED,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE7C;CACF;AAED,qGAAqG;AACrG,qBACa,mBAAoB,SAAQ,cAAc;IACrD,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/C;IAED,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAEhD;CACF;AAED,qEAAqE;AACrE,qBAAa,qBAAsB,SAAQ,aAAa;IAC/C,GAAG,IAAI,MAAM,CAEnB;CACF;AAED;;;;GAIG;AACH,qBACa,qBAAsB,SAAQ,gBAAgB;IACzD,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAE9D;CACF;AAED,oFAAoF;AACpF,qBACa,uBAAwB,SAAQ,kBAAkB;IACtD,IAAI,IAAI,MAAM,CAGpB;CACF"}
|
package/lib/cjs/statements.js
CHANGED
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.PostgresJoinStatement = exports.PostgresLiteralQuoter = exports.DoubleQuoteIdentifierQuoter = void 0;
|
|
15
|
+
exports.PostgresDateTimeWrapper = exports.PostgresJoinStatement = exports.PostgresNowExpression = exports.PostgresInStatement = exports.PostgresLiteralQuoter = exports.DoubleQuoteIdentifierQuoter = void 0;
|
|
16
16
|
exports.pgEscapeIdentifier = pgEscapeIdentifier;
|
|
17
17
|
const di_1 = require("@spinajs/di");
|
|
18
18
|
const orm_1 = require("@spinajs/orm");
|
|
@@ -58,20 +58,49 @@ exports.PostgresLiteralQuoter = PostgresLiteralQuoter = __decorate([
|
|
|
58
58
|
(0, di_1.Inject)(di_1.Container),
|
|
59
59
|
__metadata("design:paramtypes", [Object])
|
|
60
60
|
], PostgresLiteralQuoter);
|
|
61
|
+
/** A long list is bound as one array parameter; postgres infers the element type from the column. */
|
|
62
|
+
let PostgresInStatement = class PostgresInStatement extends orm_sql_1.SqlInStatement {
|
|
63
|
+
listExpression(column) {
|
|
64
|
+
return this._not ? `${column} <> ALL(?)` : `${column} = ANY(?)`;
|
|
65
|
+
}
|
|
66
|
+
listBinding(values) {
|
|
67
|
+
return values;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
exports.PostgresInStatement = PostgresInStatement;
|
|
71
|
+
exports.PostgresInStatement = PostgresInStatement = __decorate([
|
|
72
|
+
(0, di_1.NewInstance)()
|
|
73
|
+
], PostgresInStatement);
|
|
74
|
+
/** The start of the current transaction, as for a column default. */
|
|
75
|
+
class PostgresNowExpression extends orm_1.NowExpression {
|
|
76
|
+
sql() {
|
|
77
|
+
return 'CURRENT_TIMESTAMP';
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.PostgresNowExpression = PostgresNowExpression;
|
|
61
81
|
/**
|
|
62
|
-
* A
|
|
63
|
-
*
|
|
82
|
+
* A connection cannot reach another database, so the shared `"<database>"."<table>"`
|
|
83
|
+
* spelling would be read as a schema named like the database. Joined tables are
|
|
84
|
+
* qualified with the configured schema instead, or left bare to follow search_path.
|
|
64
85
|
*/
|
|
65
86
|
let PostgresJoinStatement = class PostgresJoinStatement extends orm_sql_1.SqlJoinStatement {
|
|
66
|
-
|
|
67
|
-
return
|
|
68
|
-
}
|
|
69
|
-
keyColumn(column) {
|
|
70
|
-
return this.Quoter.quote(`${column}`);
|
|
87
|
+
tableQualifier(driver) {
|
|
88
|
+
return driver.Options.Options?.Schema;
|
|
71
89
|
}
|
|
72
90
|
};
|
|
73
91
|
exports.PostgresJoinStatement = PostgresJoinStatement;
|
|
74
92
|
exports.PostgresJoinStatement = PostgresJoinStatement = __decorate([
|
|
75
93
|
(0, di_1.NewInstance)()
|
|
76
94
|
], PostgresJoinStatement);
|
|
95
|
+
/** PostgreSQL has no `DATETIME()` function; a cast to TIMESTAMP is its spelling. */
|
|
96
|
+
let PostgresDateTimeWrapper = class PostgresDateTimeWrapper extends orm_sql_1.SqlDateTimeWrapper {
|
|
97
|
+
wrap() {
|
|
98
|
+
const column = this._tableAlias ? `${this.Quoter.quote(this._tableAlias)}.${this.Quoter.quote(this._value)}` : this.Quoter.quote(this._value);
|
|
99
|
+
return `CAST(${column} AS TIMESTAMP)`;
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
exports.PostgresDateTimeWrapper = PostgresDateTimeWrapper;
|
|
103
|
+
exports.PostgresDateTimeWrapper = PostgresDateTimeWrapper = __decorate([
|
|
104
|
+
(0, di_1.NewInstance)()
|
|
105
|
+
], PostgresDateTimeWrapper);
|
|
77
106
|
//# sourceMappingURL=statements.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statements.js","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oCAAyE;AACzE,
|
|
1
|
+
{"version":3,"file":"statements.js","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oCAAyE;AACzE,sCAA0E;AAC1E,8CAA0G;AAC1G,4CAAoB;AAEpB;;;;;GAKG;AACH,4BAAmC,IAAY;IAC7C,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC;AACtD,CAAC;AAED;;;;GAIG;AAEI,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,sBAAgB;IACxD,KAAK,CAAC,IAAY;QACvB,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;CACF,CAAA;;sCAJY,2BAA2B;IADvC,IAAA,gBAAW,GAAE;GACD,2BAA2B,CAIvC;AAIM,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,0BAAgB;IACzD,YAAY,SAAqB;QAC/B,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAES,WAAW,CAAC,KAAa;QACjC,OAAO,YAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAES,YAAY,CAAC,KAAc;QACnC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAClC,CAAC;CACF,CAAA;;gCAZY,qBAAqB;IAFjC,IAAA,gBAAW,GAAE;IACb,IAAA,WAAM,EAAC,cAAS,CAAC;;GACL,qBAAqB,CAYjC;AAED,qGAAqG;AAE9F,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,wBAAc;IAC3C,cAAc,CAAC,MAAc;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,WAAW,CAAC;IAClE,CAAC;IAES,WAAW,CAAC,MAAiB;QACrC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;;8BARY,mBAAmB;IAD/B,IAAA,gBAAW,GAAE;GACD,mBAAmB,CAQ/B;AAED,qEAAqE;AACrE,2BAAmC,SAAQ,mBAAa;IAC/C,GAAG;QACR,OAAO,mBAAmB,CAAC;IAC7B,CAAC;CACF;;AAED;;;;GAIG;AAEI,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,0BAAgB;IAC/C,cAAc,CAAC,MAAiB;QACxC,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAA4B,CAAC;IAC9D,CAAC;CACF,CAAA;;gCAJY,qBAAqB;IADjC,IAAA,gBAAW,GAAE;GACD,qBAAqB,CAIjC;AAED,oFAAoF;AAE7E,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,4BAAkB;IACtD,IAAI;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAgB,CAAC,CAAC;QAClK,OAAO,QAAQ,MAAM,gBAAgB,CAAC;IACxC,CAAC;CACF,CAAA;;kCALY,uBAAuB;IADnC,IAAA,gBAAW,GAAE;GACD,uBAAuB,CAKnC"}
|
package/lib/mjs/compilers.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Container, IContainer } from '@spinajs/di';
|
|
2
2
|
import { Log } from '@spinajs/log';
|
|
3
3
|
import { ICompilerOutput, OnDuplicateQueryBuilder, InsertQueryBuilder, TableExistsCompiler, TableExistsQueryBuilder, LimitQueryCompiler, LimitBuilder, CreateDatabaseCompiler, CreateDatabaseQueryBuilder, IdentifierQuoter, TableAliasCompiler, CreateViewQueryBuilder } from '@spinajs/orm';
|
|
4
|
-
import { SqlInsertQueryCompiler, SqlColumnQueryCompiler, SqlAlterColumnQueryCompiler,
|
|
4
|
+
import { SqlInsertQueryCompiler, SqlColumnQueryCompiler, SqlAlterColumnQueryCompiler, SqlOnDuplicateQueryCompiler, SqlDefaultValueBuilder, SqlCreateViewQueryCompiler, SqlIndexQueryCompiler } from '@spinajs/orm-sql';
|
|
5
5
|
export declare class PostgresTableExistsCompiler implements TableExistsCompiler {
|
|
6
6
|
protected builder: TableExistsQueryBuilder;
|
|
7
7
|
constructor(builder: TableExistsQueryBuilder);
|
|
@@ -103,10 +103,6 @@ export declare class PostgresAlterColumnQueryCompiler extends SqlAlterColumnQuer
|
|
|
103
103
|
protected _add(definition: string): string | null;
|
|
104
104
|
protected _modify(_definition: string): string | null;
|
|
105
105
|
}
|
|
106
|
-
/** Postgres folds an unquoted identifier to lower case, so a dropped column is quoted. */
|
|
107
|
-
export declare class PostgresAlterTableQueryCompiler extends SqlAlterTableQueryCompiler {
|
|
108
|
-
protected droppedColumn(column: string): string;
|
|
109
|
-
}
|
|
110
106
|
/**
|
|
111
107
|
* Postgres spells database DDL its own way: encoding is `ENCODING`, not CHARACTER SET,
|
|
112
108
|
* and CREATE DATABASE has no IF NOT EXISTS at all — existence has to be checked by the
|
|
@@ -125,6 +121,7 @@ export declare class PostgresCreateDatabaseQueryCompiler extends CreateDatabaseC
|
|
|
125
121
|
*/
|
|
126
122
|
export declare class PostgresDefaultValueBuilder<T> extends SqlDefaultValueBuilder<T> {
|
|
127
123
|
date(): T;
|
|
124
|
+
dateTime(): T;
|
|
128
125
|
}
|
|
129
126
|
/**
|
|
130
127
|
* Table references carry NO database prefix in postgres. The shared `SqlTableAliasCompiler`
|
|
@@ -149,4 +146,7 @@ export declare class PostgresCreateViewCompiler extends SqlCreateViewQueryCompil
|
|
|
149
146
|
protected _withOptions(): string;
|
|
150
147
|
protected _checkOption(): string;
|
|
151
148
|
}
|
|
149
|
+
export declare class PostgresIndexQueryCompiler extends SqlIndexQueryCompiler {
|
|
150
|
+
protected _drop(): string;
|
|
151
|
+
}
|
|
152
152
|
//# sourceMappingURL=compilers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compilers.d.ts","sourceRoot":"","sources":["../../src/compilers.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,SAAS,EAAE,UAAU,EAAc,MAAM,aAAa,CAAC;AAErF,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAY,uBAAuB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,uBAAuB,EAAgB,kBAAkB,EAAE,YAAY,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,gBAAgB,EAAuB,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC3U,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"compilers.d.ts","sourceRoot":"","sources":["../../src/compilers.ts"],"names":[],"mappings":"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"}
|
package/lib/mjs/compilers.js
CHANGED
|
@@ -12,8 +12,9 @@ import { NewInstance, Inject, Container, Autoinject } from '@spinajs/di';
|
|
|
12
12
|
import { NotSupported } from '@spinajs/exceptions';
|
|
13
13
|
import { Logger, Log } from '@spinajs/log';
|
|
14
14
|
import { RawQuery, OnDuplicateQueryBuilder, InsertQueryBuilder, TableExistsQueryBuilder, OrmException, LimitQueryCompiler, LimitBuilder, CreateDatabaseCompiler, CreateDatabaseQueryBuilder, IdentifierQuoter, ColumnQueryCompiler, TableAliasCompiler, CreateViewQueryBuilder } from '@spinajs/orm';
|
|
15
|
-
import { SqlInsertQueryCompiler, SqlColumnQueryCompiler, SqlAlterColumnQueryCompiler,
|
|
15
|
+
import { SqlInsertQueryCompiler, SqlColumnQueryCompiler, SqlAlterColumnQueryCompiler, SqlOnDuplicateQueryCompiler, SqlDefaultValueBuilder, escapeStringLiteral, assertCharsetName, SqlCreateViewQueryCompiler, SqlIndexQueryCompiler } from '@spinajs/orm-sql';
|
|
16
16
|
import _ from 'lodash';
|
|
17
|
+
import { PostgresNowExpression } from './statements.js';
|
|
17
18
|
let PostgresTableExistsCompiler = class PostgresTableExistsCompiler {
|
|
18
19
|
constructor(builder) {
|
|
19
20
|
this.builder = builder;
|
|
@@ -208,8 +209,9 @@ let PostgresColumnQueryCompiler = class PostgresColumnQueryCompiler extends SqlC
|
|
|
208
209
|
}
|
|
209
210
|
_stmt.push('GENERATED BY DEFAULT AS IDENTITY');
|
|
210
211
|
}
|
|
211
|
-
|
|
212
|
-
|
|
212
|
+
const collation = this.builder.Collation || (this.builder.Exact ? 'C' : '');
|
|
213
|
+
if (collation) {
|
|
214
|
+
_stmt.push(`COLLATE ${this.Quoter.quote(collation)}`);
|
|
213
215
|
}
|
|
214
216
|
if (this.builder.NotNull) {
|
|
215
217
|
_stmt.push('NOT NULL');
|
|
@@ -289,7 +291,7 @@ let PostgresColumnQueryCompiler = class PostgresColumnQueryCompiler extends SqlC
|
|
|
289
291
|
return 'TIME';
|
|
290
292
|
case 'dateTime':
|
|
291
293
|
case 'timestamp':
|
|
292
|
-
//
|
|
294
|
+
// precision 3 because JS dates carry milliseconds
|
|
293
295
|
return 'TIMESTAMPTZ(3)';
|
|
294
296
|
case 'json':
|
|
295
297
|
return 'JSONB';
|
|
@@ -318,14 +320,15 @@ let PostgresAlterColumnQueryCompiler = class PostgresAlterColumnQueryCompiler ex
|
|
|
318
320
|
_add(definition) {
|
|
319
321
|
if (this.builder.AfterColumn) {
|
|
320
322
|
// AFTER is MySQL-only; postgres appends columns at the end and offers no placement
|
|
321
|
-
this.Log.warn(
|
|
323
|
+
this.Log.warn({ column: this.builder.Name, afterColumn: this.builder.AfterColumn }, 'postgres cannot place column ${column} AFTER ${afterColumn} - the column is appended at the end of the table');
|
|
322
324
|
}
|
|
323
325
|
return `ADD COLUMN ${definition}`;
|
|
324
326
|
}
|
|
325
327
|
_modify(_definition) {
|
|
326
328
|
const column = this.Quoter.quote(this.builder.Name);
|
|
327
329
|
const compiler = this.container.resolve(ColumnQueryCompiler, [this.builder]);
|
|
328
|
-
|
|
330
|
+
// Without USING, postgres refuses a type it has no implicit cast to, e.g. text to jsonb.
|
|
331
|
+
const actions = [`ALTER COLUMN ${column} TYPE ${compiler.typeExpression()} USING ${column}::${compiler.typeExpression()}`];
|
|
329
332
|
actions.push(this.builder.NotNull ? `ALTER COLUMN ${column} SET NOT NULL` : `ALTER COLUMN ${column} DROP NOT NULL`);
|
|
330
333
|
const defaultExpression = compiler.defaultExpression();
|
|
331
334
|
actions.push(defaultExpression ? `ALTER COLUMN ${column} SET ${defaultExpression}` : `ALTER COLUMN ${column} DROP DEFAULT`);
|
|
@@ -341,17 +344,6 @@ PostgresAlterColumnQueryCompiler = __decorate([
|
|
|
341
344
|
Inject(Container)
|
|
342
345
|
], PostgresAlterColumnQueryCompiler);
|
|
343
346
|
export { PostgresAlterColumnQueryCompiler };
|
|
344
|
-
/** Postgres folds an unquoted identifier to lower case, so a dropped column is quoted. */
|
|
345
|
-
let PostgresAlterTableQueryCompiler = class PostgresAlterTableQueryCompiler extends SqlAlterTableQueryCompiler {
|
|
346
|
-
droppedColumn(column) {
|
|
347
|
-
return this.container.resolve(IdentifierQuoter).quote(column);
|
|
348
|
-
}
|
|
349
|
-
};
|
|
350
|
-
PostgresAlterTableQueryCompiler = __decorate([
|
|
351
|
-
NewInstance(),
|
|
352
|
-
Inject(Container)
|
|
353
|
-
], PostgresAlterTableQueryCompiler);
|
|
354
|
-
export { PostgresAlterTableQueryCompiler };
|
|
355
347
|
/**
|
|
356
348
|
* Postgres spells database DDL its own way: encoding is `ENCODING`, not CHARACTER SET,
|
|
357
349
|
* and CREATE DATABASE has no IF NOT EXISTS at all — existence has to be checked by the
|
|
@@ -397,6 +389,10 @@ let PostgresDefaultValueBuilder = class PostgresDefaultValueBuilder extends SqlD
|
|
|
397
389
|
this.Query = RawQuery.create('CURRENT_DATE');
|
|
398
390
|
return this.Owner;
|
|
399
391
|
}
|
|
392
|
+
dateTime() {
|
|
393
|
+
this.Query = RawQuery.create(new PostgresNowExpression().sql());
|
|
394
|
+
return this.Owner;
|
|
395
|
+
}
|
|
400
396
|
};
|
|
401
397
|
PostgresDefaultValueBuilder = __decorate([
|
|
402
398
|
NewInstance()
|
|
@@ -457,4 +453,14 @@ PostgresCreateViewCompiler = __decorate([
|
|
|
457
453
|
__metadata("design:paramtypes", [Container, CreateViewQueryBuilder])
|
|
458
454
|
], PostgresCreateViewCompiler);
|
|
459
455
|
export { PostgresCreateViewCompiler };
|
|
456
|
+
// Index names are schema-wide, so DROP INDEX names no table.
|
|
457
|
+
let PostgresIndexQueryCompiler = class PostgresIndexQueryCompiler extends SqlIndexQueryCompiler {
|
|
458
|
+
_drop() {
|
|
459
|
+
return `DROP INDEX ${this.Quoter.quote(this._builder.Name)}`;
|
|
460
|
+
}
|
|
461
|
+
};
|
|
462
|
+
PostgresIndexQueryCompiler = __decorate([
|
|
463
|
+
NewInstance()
|
|
464
|
+
], PostgresIndexQueryCompiler);
|
|
465
|
+
export { PostgresIndexQueryCompiler };
|
|
460
466
|
//# sourceMappingURL=compilers.js.map
|