@memberjunction/sql-dialect 6.1.4 → 6.2.0-edge.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/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/postgresqlDialect.d.ts +12 -12
- package/dist/postgresqlDialect.js +24 -24
- package/dist/postgresqlRestarLayeredOuter.d.ts +8 -0
- package/dist/postgresqlRestarLayeredOuter.d.ts.map +1 -1
- package/dist/postgresqlRestarLayeredOuter.js +22 -6
- package/dist/postgresqlRestarLayeredOuter.js.map +1 -1
- package/dist/sqlServerDialect.d.ts +12 -12
- package/dist/sqlServerDialect.js +24 -24
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export { SQLServerDialect } from './sqlServerDialect.js';
|
|
|
6
6
|
export { PostgreSQLDialect } from './postgresqlDialect.js';
|
|
7
7
|
export { GetDialect } from './dialectFactory.js';
|
|
8
8
|
export { FindReferencedIdentifiers } from './identifierReferences.js';
|
|
9
|
-
export { restarLayeredOuterView, buildCreateOrReplaceLayeredOuterViewSQL, LayeredOuterRestarError, findTopLevelKeyword, splitTopLevelCommaList, } from './postgresqlRestarLayeredOuter.js';
|
|
9
|
+
export { RestarLayeredOuterView, restarLayeredOuterView, BuildCreateOrReplaceLayeredOuterViewSQL, buildCreateOrReplaceLayeredOuterViewSQL, LayeredOuterRestarError, FindTopLevelKeyword, findTopLevelKeyword, SplitTopLevelCommaList, splitTopLevelCommaList, } from './postgresqlRestarLayeredOuter.js';
|
|
10
10
|
export type { RestarLayeredOuterViewArgs } from './postgresqlRestarLayeredOuter.js';
|
|
11
11
|
export { AutoQuotePostgreSQLIdentifiers, PostgreSQLQuotingKeywords, PostgreSQLStructuralKeywords, PostgreSQLContextualStructuralKeywords, } from './postgresqlAutoQuote.js';
|
|
12
12
|
export { IsBooleanSQLType, IsStringSQLType, IsFixedWidthStringSQLType, IsDateSQLType, IsIntegerSQLType, IsFloatSQLType, IsUuidSQLType, IsBinarySQLType, IsJsonSQLType, IsCurrencySQLType, IsIntervalSQLType, IsNetworkSQLType, IsNumericSQLType, } from './typeClassification.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EACH,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,GACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EACH,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EACH,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,GACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EACH,sBAAsB,EAAE,sBAAsB,EAC9C,uCAAuC,EAAE,uCAAuC,EAChF,uBAAuB,EACvB,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,GACjD,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EACH,8BAA8B,EAC9B,yBAAyB,EACzB,4BAA4B,EAC5B,sCAAsC,GACzC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,gBAAgB,EAChB,eAAe,EACf,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,yBAAyB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ export { SQLServerDialect } from './sqlServerDialect.js';
|
|
|
3
3
|
export { PostgreSQLDialect } from './postgresqlDialect.js';
|
|
4
4
|
export { GetDialect } from './dialectFactory.js';
|
|
5
5
|
export { FindReferencedIdentifiers } from './identifierReferences.js';
|
|
6
|
-
export { restarLayeredOuterView, buildCreateOrReplaceLayeredOuterViewSQL, LayeredOuterRestarError, findTopLevelKeyword, splitTopLevelCommaList, } from './postgresqlRestarLayeredOuter.js';
|
|
6
|
+
export { RestarLayeredOuterView, restarLayeredOuterView, BuildCreateOrReplaceLayeredOuterViewSQL, buildCreateOrReplaceLayeredOuterViewSQL, LayeredOuterRestarError, FindTopLevelKeyword, findTopLevelKeyword, SplitTopLevelCommaList, splitTopLevelCommaList, } from './postgresqlRestarLayeredOuter.js';
|
|
7
7
|
export { AutoQuotePostgreSQLIdentifiers, PostgreSQLQuotingKeywords, PostgreSQLStructuralKeywords, PostgreSQLContextualStructuralKeywords, } from './postgresqlAutoQuote.js';
|
|
8
8
|
export { IsBooleanSQLType, IsStringSQLType, IsFixedWidthStringSQLType, IsDateSQLType, IsIntegerSQLType, IsFloatSQLType, IsUuidSQLType, IsBinarySQLType, IsJsonSQLType, IsCurrencySQLType, IsIntervalSQLType, IsNetworkSQLType, IsNumericSQLType, } from './typeClassification.js';
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACH,UAAU,GASb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EACH,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACH,UAAU,GASb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EACH,sBAAsB,EAAE,sBAAsB,EAC9C,uCAAuC,EAAE,uCAAuC,EAChF,uBAAuB,EACvB,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,GACjD,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACH,8BAA8B,EAC9B,yBAAyB,EACzB,4BAA4B,EAC5B,sCAAsC,GACzC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,gBAAgB,EAChB,eAAe,EACf,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,yBAAyB,CAAC"}
|
|
@@ -64,23 +64,23 @@ export declare class PostgreSQLDialect extends SQLDialect {
|
|
|
64
64
|
ParameterDefault(value: string): string;
|
|
65
65
|
CurrentTimestampUTC(): string;
|
|
66
66
|
AffectedRowCountSQL(dmlStatement: string, alias: string): string;
|
|
67
|
-
private static readonly
|
|
68
|
-
private static readonly
|
|
67
|
+
private static readonly _booleanTypeNames;
|
|
68
|
+
private static readonly _stringTypeNames;
|
|
69
69
|
/**
|
|
70
70
|
* PG fixed-width / space-padded char types. `character` (without `varying`)
|
|
71
71
|
* and `bpchar` are the formal/internal names; `char` is the short alias.
|
|
72
72
|
* Note: `character varying` is NOT included — it's variable-width.
|
|
73
73
|
*/
|
|
74
|
-
private static readonly
|
|
75
|
-
private static readonly
|
|
76
|
-
private static readonly
|
|
77
|
-
private static readonly
|
|
78
|
-
private static readonly
|
|
79
|
-
private static readonly
|
|
80
|
-
private static readonly
|
|
81
|
-
private static readonly
|
|
82
|
-
private static readonly
|
|
83
|
-
private static readonly
|
|
74
|
+
private static readonly _fixedWidthStringTypeNames;
|
|
75
|
+
private static readonly _dateTypeNames;
|
|
76
|
+
private static readonly _integerTypeNames;
|
|
77
|
+
private static readonly _floatTypeNames;
|
|
78
|
+
private static readonly _uuidTypeNames;
|
|
79
|
+
private static readonly _binaryTypeNames;
|
|
80
|
+
private static readonly _jsonTypeNames;
|
|
81
|
+
private static readonly _currencyTypeNames;
|
|
82
|
+
private static readonly _intervalTypeNames;
|
|
83
|
+
private static readonly _networkTypeNames;
|
|
84
84
|
get BooleanTypeNames(): readonly string[];
|
|
85
85
|
get StringTypeNames(): readonly string[];
|
|
86
86
|
get FixedWidthStringTypeNames(): readonly string[];
|
|
@@ -242,35 +242,35 @@ export class PostgreSQLDialect extends SQLDialect {
|
|
|
242
242
|
// Includes both the formal name (`character varying`) and the internal
|
|
243
243
|
// / short alias (`varchar`, `bpchar`) since both surface depending on
|
|
244
244
|
// the metadata source.
|
|
245
|
-
static { this.
|
|
246
|
-
static { this.
|
|
245
|
+
static { this._booleanTypeNames = ['bool', 'boolean']; }
|
|
246
|
+
static { this._stringTypeNames = ['text', 'varchar', 'char', 'character', 'character varying', 'bpchar', 'citext', 'name']; }
|
|
247
247
|
/**
|
|
248
248
|
* PG fixed-width / space-padded char types. `character` (without `varying`)
|
|
249
249
|
* and `bpchar` are the formal/internal names; `char` is the short alias.
|
|
250
250
|
* Note: `character varying` is NOT included — it's variable-width.
|
|
251
251
|
*/
|
|
252
|
-
static { this.
|
|
253
|
-
static { this.
|
|
254
|
-
static { this.
|
|
255
|
-
static { this.
|
|
256
|
-
static { this.
|
|
257
|
-
static { this.
|
|
258
|
-
static { this.
|
|
259
|
-
static { this.
|
|
260
|
-
static { this.
|
|
261
|
-
static { this.
|
|
262
|
-
get BooleanTypeNames() { return PostgreSQLDialect.
|
|
263
|
-
get StringTypeNames() { return PostgreSQLDialect.
|
|
264
|
-
get FixedWidthStringTypeNames() { return PostgreSQLDialect.
|
|
265
|
-
get DateTypeNames() { return PostgreSQLDialect.
|
|
266
|
-
get IntegerTypeNames() { return PostgreSQLDialect.
|
|
267
|
-
get FloatTypeNames() { return PostgreSQLDialect.
|
|
268
|
-
get UuidTypeNames() { return PostgreSQLDialect.
|
|
269
|
-
get BinaryTypeNames() { return PostgreSQLDialect.
|
|
270
|
-
get JsonTypeNames() { return PostgreSQLDialect.
|
|
271
|
-
get CurrencyTypeNames() { return PostgreSQLDialect.
|
|
272
|
-
get IntervalTypeNames() { return PostgreSQLDialect.
|
|
273
|
-
get NetworkTypeNames() { return PostgreSQLDialect.
|
|
252
|
+
static { this._fixedWidthStringTypeNames = ['char', 'character', 'bpchar']; }
|
|
253
|
+
static { this._dateTypeNames = ['date', 'time', 'time without time zone', 'time with time zone', 'timestamp', 'timestamptz', 'timestamp with time zone', 'timestamp without time zone']; }
|
|
254
|
+
static { this._integerTypeNames = ['int', 'int2', 'int4', 'int8', 'integer', 'bigint', 'smallint', 'serial', 'bigserial', 'smallserial', 'oid']; }
|
|
255
|
+
static { this._floatTypeNames = ['decimal', 'numeric', 'real', 'double precision', 'float4', 'float8']; }
|
|
256
|
+
static { this._uuidTypeNames = ['uuid']; }
|
|
257
|
+
static { this._binaryTypeNames = ['bytea']; }
|
|
258
|
+
static { this._jsonTypeNames = ['json', 'jsonb', 'xml']; }
|
|
259
|
+
static { this._currencyTypeNames = ['money']; }
|
|
260
|
+
static { this._intervalTypeNames = ['interval']; }
|
|
261
|
+
static { this._networkTypeNames = ['inet', 'cidr', 'macaddr', 'macaddr8']; }
|
|
262
|
+
get BooleanTypeNames() { return PostgreSQLDialect._booleanTypeNames; }
|
|
263
|
+
get StringTypeNames() { return PostgreSQLDialect._stringTypeNames; }
|
|
264
|
+
get FixedWidthStringTypeNames() { return PostgreSQLDialect._fixedWidthStringTypeNames; }
|
|
265
|
+
get DateTypeNames() { return PostgreSQLDialect._dateTypeNames; }
|
|
266
|
+
get IntegerTypeNames() { return PostgreSQLDialect._integerTypeNames; }
|
|
267
|
+
get FloatTypeNames() { return PostgreSQLDialect._floatTypeNames; }
|
|
268
|
+
get UuidTypeNames() { return PostgreSQLDialect._uuidTypeNames; }
|
|
269
|
+
get BinaryTypeNames() { return PostgreSQLDialect._binaryTypeNames; }
|
|
270
|
+
get JsonTypeNames() { return PostgreSQLDialect._jsonTypeNames; }
|
|
271
|
+
get CurrencyTypeNames() { return PostgreSQLDialect._currencyTypeNames; }
|
|
272
|
+
get IntervalTypeNames() { return PostgreSQLDialect._intervalTypeNames; }
|
|
273
|
+
get NetworkTypeNames() { return PostgreSQLDialect._networkTypeNames; }
|
|
274
274
|
NewUUID() {
|
|
275
275
|
return 'gen_random_uuid()';
|
|
276
276
|
}
|
|
@@ -29,12 +29,20 @@ export interface RestarLayeredOuterViewArgs {
|
|
|
29
29
|
/** Inner view column names in ordinal order (unquoted). */
|
|
30
30
|
innerColumns: string[];
|
|
31
31
|
}
|
|
32
|
+
export declare function RestarLayeredOuterView(args: RestarLayeredOuterViewArgs): string;
|
|
33
|
+
/** @deprecated Use {@link RestarLayeredOuterView}. */
|
|
32
34
|
export declare function restarLayeredOuterView(args: RestarLayeredOuterViewArgs): string;
|
|
35
|
+
export declare function BuildCreateOrReplaceLayeredOuterViewSQL(schema: string, outerView: string, restarredSelect: string): string;
|
|
36
|
+
/** @deprecated Use {@link BuildCreateOrReplaceLayeredOuterViewSQL}. */
|
|
33
37
|
export declare function buildCreateOrReplaceLayeredOuterViewSQL(schema: string, outerView: string, restarredSelect: string): string;
|
|
34
38
|
/**
|
|
35
39
|
* Index of a top-level SQL keyword (FROM, etc.) in `sql`, ignoring matches
|
|
36
40
|
* inside parentheses or quoted identifiers/strings.
|
|
37
41
|
*/
|
|
42
|
+
export declare function FindTopLevelKeyword(sql: string, keyword: string): number;
|
|
43
|
+
/** @deprecated Use {@link FindTopLevelKeyword}. */
|
|
38
44
|
export declare function findTopLevelKeyword(sql: string, keyword: string): number;
|
|
45
|
+
export declare function SplitTopLevelCommaList(list: string): string[];
|
|
46
|
+
/** @deprecated Use {@link SplitTopLevelCommaList}. */
|
|
39
47
|
export declare function splitTopLevelCommaList(list: string): string[];
|
|
40
48
|
//# sourceMappingURL=postgresqlRestarLayeredOuter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgresqlRestarLayeredOuter.d.ts","sourceRoot":"","sources":["../src/postgresqlRestarLayeredOuter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,qBAAa,uBAAwB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI9B;AAED,MAAM,WAAW,0BAA0B;IACvC,gFAAgF;IAChF,cAAc,EAAE,MAAM,CAAC;IACvB,iEAAiE;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;CAC1B;AAID,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAgD/E;AAED,wBAAgB,uCAAuC,CACnD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,GACxB,MAAM,CAER;AAmBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA+BxE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAgC7D"}
|
|
1
|
+
{"version":3,"file":"postgresqlRestarLayeredOuter.d.ts","sourceRoot":"","sources":["../src/postgresqlRestarLayeredOuter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,qBAAa,uBAAwB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI9B;AAED,MAAM,WAAW,0BAA0B;IACvC,gFAAgF;IAChF,cAAc,EAAE,MAAM,CAAC;IACvB,iEAAiE;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;CAC1B;AAID,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAgD/E;AAED,sDAAsD;AACtD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAE/E;AAED,wBAAgB,uCAAuC,CACnD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,GACxB,MAAM,CAER;AAED,uEAAuE;AACvE,wBAAgB,uCAAuC,CACnD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,GACxB,MAAM,CAER;AAmBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA+BxE;AAED,mDAAmD;AACnD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAgC7D;AAED,sDAAsD;AACtD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAE7D"}
|
|
@@ -25,7 +25,7 @@ export class LayeredOuterRestarError extends Error {
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
const IDENT = String.raw `(?:"[^"]+"|[A-Za-z_][A-Za-z0-9_$]*)`;
|
|
28
|
-
export function
|
|
28
|
+
export function RestarLayeredOuterView(args) {
|
|
29
29
|
const innerCols = new Set(args.innerColumns.map((c) => c));
|
|
30
30
|
if (innerCols.size === 0) {
|
|
31
31
|
throw new LayeredOuterRestarError('innerColumns is empty; cannot restar a layered outer view');
|
|
@@ -37,14 +37,14 @@ export function restarLayeredOuterView(args) {
|
|
|
37
37
|
if (!/^select\b/i.test(def)) {
|
|
38
38
|
throw new LayeredOuterRestarError(`outer view definition does not start with SELECT: ${def.slice(0, 80)}`);
|
|
39
39
|
}
|
|
40
|
-
const fromPos =
|
|
40
|
+
const fromPos = FindTopLevelKeyword(def, 'from');
|
|
41
41
|
if (fromPos < 0) {
|
|
42
42
|
throw new LayeredOuterRestarError('outer view definition has no top-level FROM');
|
|
43
43
|
}
|
|
44
44
|
const selectList = def.slice('select'.length, fromPos).trim();
|
|
45
45
|
const fromAndRest = def.slice(fromPos).trim();
|
|
46
46
|
const alias = detectInnerAlias(fromAndRest, args.innerViewName) ?? 'g';
|
|
47
|
-
const items =
|
|
47
|
+
const items = SplitTopLevelCommaList(selectList);
|
|
48
48
|
if (items.length === 0) {
|
|
49
49
|
throw new LayeredOuterRestarError('outer view SELECT list is empty');
|
|
50
50
|
}
|
|
@@ -66,9 +66,17 @@ export function restarLayeredOuterView(args) {
|
|
|
66
66
|
}
|
|
67
67
|
return rebuildSelect(alias, items.slice(consumed), fromAndRest);
|
|
68
68
|
}
|
|
69
|
-
|
|
69
|
+
/** @deprecated Use {@link RestarLayeredOuterView}. */
|
|
70
|
+
export function restarLayeredOuterView(args) {
|
|
71
|
+
return RestarLayeredOuterView(args);
|
|
72
|
+
}
|
|
73
|
+
export function BuildCreateOrReplaceLayeredOuterViewSQL(schema, outerView, restarredSelect) {
|
|
70
74
|
return `CREATE OR REPLACE VIEW ${quoteQualified(schema, outerView)}\nAS\n${restarredSelect}`;
|
|
71
75
|
}
|
|
76
|
+
/** @deprecated Use {@link BuildCreateOrReplaceLayeredOuterViewSQL}. */
|
|
77
|
+
export function buildCreateOrReplaceLayeredOuterViewSQL(schema, outerView, restarredSelect) {
|
|
78
|
+
return BuildCreateOrReplaceLayeredOuterViewSQL(schema, outerView, restarredSelect);
|
|
79
|
+
}
|
|
72
80
|
function rebuildSelect(alias, extras, fromAndRest) {
|
|
73
81
|
const star = `SELECT ${quoteIdent(alias)}.*`;
|
|
74
82
|
if (extras.length === 0) {
|
|
@@ -87,7 +95,7 @@ function quoteQualified(schema, name) {
|
|
|
87
95
|
* Index of a top-level SQL keyword (FROM, etc.) in `sql`, ignoring matches
|
|
88
96
|
* inside parentheses or quoted identifiers/strings.
|
|
89
97
|
*/
|
|
90
|
-
export function
|
|
98
|
+
export function FindTopLevelKeyword(sql, keyword) {
|
|
91
99
|
const target = keyword.toLowerCase();
|
|
92
100
|
let depth = 0;
|
|
93
101
|
let i = 0;
|
|
@@ -117,7 +125,11 @@ export function findTopLevelKeyword(sql, keyword) {
|
|
|
117
125
|
}
|
|
118
126
|
return -1;
|
|
119
127
|
}
|
|
120
|
-
|
|
128
|
+
/** @deprecated Use {@link FindTopLevelKeyword}. */
|
|
129
|
+
export function findTopLevelKeyword(sql, keyword) {
|
|
130
|
+
return FindTopLevelKeyword(sql, keyword);
|
|
131
|
+
}
|
|
132
|
+
export function SplitTopLevelCommaList(list) {
|
|
121
133
|
const items = [];
|
|
122
134
|
let depth = 0;
|
|
123
135
|
let start = 0;
|
|
@@ -150,6 +162,10 @@ export function splitTopLevelCommaList(list) {
|
|
|
150
162
|
}
|
|
151
163
|
return items;
|
|
152
164
|
}
|
|
165
|
+
/** @deprecated Use {@link SplitTopLevelCommaList}. */
|
|
166
|
+
export function splitTopLevelCommaList(list) {
|
|
167
|
+
return SplitTopLevelCommaList(list);
|
|
168
|
+
}
|
|
153
169
|
function skipQuoted(sql, start, quote) {
|
|
154
170
|
let i = start + 1;
|
|
155
171
|
while (i < sql.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgresqlRestarLayeredOuter.js","sourceRoot":"","sources":["../src/postgresqlRestarLayeredOuter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"postgresqlRestarLayeredOuter.js","sourceRoot":"","sources":["../src/postgresqlRestarLayeredOuter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IAC1C,CAAC;CACJ;AAWD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAA,qCAAqC,CAAC;AAE9D,MAAM,UAAU,sBAAsB,CAAC,IAAgC;IACnE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,uBAAuB,CAAC,2DAA2D,CAAC,CAAC;IACnG,CAAC;IAED,IAAI,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IACrC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,uBAAuB,CAAC,qDAAqD,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/G,CAAC;IAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,uBAAuB,CAAC,6CAA6C,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9D,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC;IAEvE,MAAM,KAAK,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACjD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,uBAAuB,CAAC,iCAAiC,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;YACjD,QAAQ,EAAE,CAAC;QACf,CAAC;aAAM,CAAC;YACJ,MAAM;QACV,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,uBAAuB,CAC7B,+DAA+D,IAAI,CAAC,aAAa,iBAAiB,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAC7H,CAAC;IACN,CAAC;IAED,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC;AACpE,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,sBAAsB,CAAC,IAAgC;IACnE,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,uCAAuC,CACnD,MAAc,EACd,SAAiB,EACjB,eAAuB;IAEvB,OAAO,0BAA0B,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,eAAe,EAAE,CAAC;AACjG,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,uCAAuC,CACnD,MAAc,EACd,SAAiB,EACjB,eAAuB;IAEvB,OAAO,uCAAuC,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,aAAa,CAAC,KAAa,EAAE,MAAgB,EAAE,WAAmB;IACvE,MAAM,IAAI,GAAG,UAAU,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,GAAG,IAAI,KAAK,WAAW,EAAE,CAAC;IACrC,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9D,OAAO,GAAG,IAAI,UAAU,SAAS,KAAK,WAAW,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC5B,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC3C,CAAC;AAED,SAAS,cAAc,CAAC,MAAc,EAAE,IAAY;IAChD,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW,EAAE,OAAe;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACrC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC3B,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3B,SAAS;QACb,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,CAAC,EAAE,CAAC;YACJ,SAAS;QACb,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,CAAC,EAAE,CAAC;YACJ,SAAS;QACb,CAAC;QACD,IACI,KAAK,KAAK,CAAC;YACX,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;YACtB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;YACxD,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EACtC,CAAC;YACC,OAAO,CAAC,CAAC;QACb,CAAC;QACD,CAAC,EAAE,CAAC;IACR,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACd,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,mBAAmB,CAAC,GAAW,EAAE,OAAe;IAC5D,OAAO,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY;IAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC3B,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5B,SAAS;QACb,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,CAAC,EAAE,CAAC;YACJ,SAAS;QACb,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,CAAC,EAAE,CAAC;YACJ,SAAS;QACb,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,CAAC,EAAE,CAAC;IACR,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IACtC,IAAI,IAAI,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,sBAAsB,CAAC,IAAY;IAC/C,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,UAAU,CAAC,GAAW,EAAE,KAAa,EAAE,KAAa;IACzD,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IAClB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YACnB,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;gBACvB,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACb,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QACD,CAAC,EAAE,CAAC;IACR,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACtB,CAAC;AAED,SAAS,cAAc,CAAC,GAAW,EAAE,KAAa;IAC9C,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,KAAa;IAC5C,IAAI,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,gBAAgB,CAAC,WAAmB,EAAE,aAAqB;IAChE,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,YAAY,KAAK,QAAQ,KAAK,oBAAoB,KAAK,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7H,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACjI,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC7B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC5B,OAAO,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC;AAC/B,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa;IAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACzG,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,KAAa,EAAE,SAAsB;IAC/E,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAE3B,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,iBAAiB,KAAK,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/E,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,OAAO,EAAE,CAAC;QACV,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACtB,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,QAAQ,KAAK,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC;IAChF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,MAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAS;IAClC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,KAAK,EAAE,CAAC;iBACrB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,KAAK,EAAE,CAAC;YAC/B,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,KAAK,GAAG,KAAK,CAAC;gBACd,MAAM;YACV,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM;QACV,CAAC;QACD,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -39,19 +39,19 @@ export declare class SQLServerDialect extends SQLDialect {
|
|
|
39
39
|
Coalesce(expr: string, fallback: string): string;
|
|
40
40
|
CurrentTimestampUTC(): string;
|
|
41
41
|
AffectedRowCountSQL(dmlStatement: string, alias: string): string;
|
|
42
|
-
private static readonly
|
|
43
|
-
private static readonly
|
|
42
|
+
private static readonly _booleanTypeNames;
|
|
43
|
+
private static readonly _stringTypeNames;
|
|
44
44
|
/** `char` and `nchar` right-pad stored values with spaces up to declared length. */
|
|
45
|
-
private static readonly
|
|
46
|
-
private static readonly
|
|
47
|
-
private static readonly
|
|
48
|
-
private static readonly
|
|
49
|
-
private static readonly
|
|
50
|
-
private static readonly
|
|
51
|
-
private static readonly
|
|
52
|
-
private static readonly
|
|
53
|
-
private static readonly
|
|
54
|
-
private static readonly
|
|
45
|
+
private static readonly _fixedWidthStringTypeNames;
|
|
46
|
+
private static readonly _dateTypeNames;
|
|
47
|
+
private static readonly _integerTypeNames;
|
|
48
|
+
private static readonly _floatTypeNames;
|
|
49
|
+
private static readonly _uuidTypeNames;
|
|
50
|
+
private static readonly _binaryTypeNames;
|
|
51
|
+
private static readonly _jsonTypeNames;
|
|
52
|
+
private static readonly _currencyTypeNames;
|
|
53
|
+
private static readonly _intervalTypeNames;
|
|
54
|
+
private static readonly _networkTypeNames;
|
|
55
55
|
get BooleanTypeNames(): readonly string[];
|
|
56
56
|
get StringTypeNames(): readonly string[];
|
|
57
57
|
get FixedWidthStringTypeNames(): readonly string[];
|
package/dist/sqlServerDialect.js
CHANGED
|
@@ -178,22 +178,22 @@ export class SQLServerDialect extends SQLDialect {
|
|
|
178
178
|
// ─── Type-Name Sets ──────────────────────────────────────────────
|
|
179
179
|
// SQL Server's column-type names as they appear in `sys.columns.name`
|
|
180
180
|
// / `EntityField.Type` for entities backed by a SQL Server schema.
|
|
181
|
-
static { this.
|
|
182
|
-
static { this.
|
|
181
|
+
static { this._booleanTypeNames = ['bit']; }
|
|
182
|
+
static { this._stringTypeNames = ['text', 'ntext', 'varchar', 'nvarchar', 'char', 'nchar']; }
|
|
183
183
|
/** `char` and `nchar` right-pad stored values with spaces up to declared length. */
|
|
184
|
-
static { this.
|
|
185
|
-
static { this.
|
|
186
|
-
static { this.
|
|
187
|
-
static { this.
|
|
188
|
-
static { this.
|
|
189
|
-
static { this.
|
|
190
|
-
static { this.
|
|
191
|
-
static { this.
|
|
192
|
-
static { this.
|
|
193
|
-
static { this.
|
|
194
|
-
get BooleanTypeNames() { return SQLServerDialect.
|
|
195
|
-
get StringTypeNames() { return SQLServerDialect.
|
|
196
|
-
get FixedWidthStringTypeNames() { return SQLServerDialect.
|
|
184
|
+
static { this._fixedWidthStringTypeNames = ['char', 'nchar']; }
|
|
185
|
+
static { this._dateTypeNames = ['date', 'time', 'datetime', 'datetime2', 'datetimeoffset', 'smalldatetime']; }
|
|
186
|
+
static { this._integerTypeNames = ['int', 'integer', 'bigint', 'smallint', 'tinyint', 'rowversion', 'timestamp']; }
|
|
187
|
+
static { this._floatTypeNames = ['decimal', 'numeric', 'float', 'real']; }
|
|
188
|
+
static { this._uuidTypeNames = ['uniqueidentifier']; }
|
|
189
|
+
static { this._binaryTypeNames = ['binary', 'varbinary', 'image']; }
|
|
190
|
+
static { this._jsonTypeNames = ['xml']; }
|
|
191
|
+
static { this._currencyTypeNames = ['money', 'smallmoney']; }
|
|
192
|
+
static { this._intervalTypeNames = []; }
|
|
193
|
+
static { this._networkTypeNames = []; }
|
|
194
|
+
get BooleanTypeNames() { return SQLServerDialect._booleanTypeNames; }
|
|
195
|
+
get StringTypeNames() { return SQLServerDialect._stringTypeNames; }
|
|
196
|
+
get FixedWidthStringTypeNames() { return SQLServerDialect._fixedWidthStringTypeNames; }
|
|
197
197
|
/** SQL Server index keys are limited to 900 bytes → 450 NVARCHAR (2-byte) chars. */
|
|
198
198
|
get MaxKeyStringLength() { return 450; }
|
|
199
199
|
/** SQL Server enforces a hard ~8060-byte in-row row size; only variable-length values go off-row. */
|
|
@@ -245,15 +245,15 @@ export class SQLServerDialect extends SQLDialect {
|
|
|
245
245
|
return 5;
|
|
246
246
|
return 24; // unknown → treat as off-row variable-length pointer (conservative)
|
|
247
247
|
}
|
|
248
|
-
get DateTypeNames() { return SQLServerDialect.
|
|
249
|
-
get IntegerTypeNames() { return SQLServerDialect.
|
|
250
|
-
get FloatTypeNames() { return SQLServerDialect.
|
|
251
|
-
get UuidTypeNames() { return SQLServerDialect.
|
|
252
|
-
get BinaryTypeNames() { return SQLServerDialect.
|
|
253
|
-
get JsonTypeNames() { return SQLServerDialect.
|
|
254
|
-
get CurrencyTypeNames() { return SQLServerDialect.
|
|
255
|
-
get IntervalTypeNames() { return SQLServerDialect.
|
|
256
|
-
get NetworkTypeNames() { return SQLServerDialect.
|
|
248
|
+
get DateTypeNames() { return SQLServerDialect._dateTypeNames; }
|
|
249
|
+
get IntegerTypeNames() { return SQLServerDialect._integerTypeNames; }
|
|
250
|
+
get FloatTypeNames() { return SQLServerDialect._floatTypeNames; }
|
|
251
|
+
get UuidTypeNames() { return SQLServerDialect._uuidTypeNames; }
|
|
252
|
+
get BinaryTypeNames() { return SQLServerDialect._binaryTypeNames; }
|
|
253
|
+
get JsonTypeNames() { return SQLServerDialect._jsonTypeNames; }
|
|
254
|
+
get CurrencyTypeNames() { return SQLServerDialect._currencyTypeNames; }
|
|
255
|
+
get IntervalTypeNames() { return SQLServerDialect._intervalTypeNames; }
|
|
256
|
+
get NetworkTypeNames() { return SQLServerDialect._networkTypeNames; }
|
|
257
257
|
NewUUID() {
|
|
258
258
|
return 'NEWID()';
|
|
259
259
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@memberjunction/sql-dialect",
|
|
3
3
|
"license": "BUSL-1.1",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "6.1
|
|
5
|
+
"version": "6.2.0-edge.1",
|
|
6
6
|
"description": "MemberJunction: SQL Dialect Abstraction Layer for multi-database support",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"types": "dist/index.d.ts",
|