@spinajs/orm-sql 2.0.96 → 2.0.98
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/lib/cjs/statements.d.ts.map +1 -1
- package/lib/cjs/statements.js +28 -24
- package/lib/cjs/statements.js.map +1 -1
- package/lib/mjs/statements.d.ts.map +1 -1
- package/lib/mjs/statements.js +8 -4
- package/lib/mjs/statements.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAY,WAAW,EAAE,eAAe,EAA+D,MAAM,cAAc,CAAC;AAEpZ,qBACa,eAAgB,SAAQ,iBAAiB;IAC7C,KAAK,IAAI,qBAAqB;CAMtC;AAED,qBACa,yBAA0B,SAAQ,sBAAsB;IAC5D,KAAK,IAAI,qBAAqB;CAiBtC;AAED,qBACa,mBAAoB,SAAQ,gBAAgB;IAChD,KAAK,IAAI,qBAAqB;CAQtC;AAED,qBACa,mBAAoB,SAAQ,gBAAgB;IACvD,KAAK,IAAI,qBAAqB;CAa/B;AAED,qBACa,iBAAkB,SAAQ,cAAc;IAC5C,KAAK,IAAI,qBAAqB;CAsCtC;AAED,qBACa,gBAAiB,SAAQ,aAAa;IAC1C,KAAK,IAAI,qBAAqB;CA6BtC;AAED,qBACa,cAAe,SAAQ,WAAW;IACtC,KAAK,IAAI,qBAAqB;CAQtC;AAED,qBACa,kBAAmB,SAAQ,eAAe;IAC9C,KAAK,IAAI,qBAAqB;CAsBtC;AAED,qBACa,wBAAyB,SAAQ,qBAAqB;IAC1D,KAAK,IAAI,qBAAqB;CAkBtC;AAED,8BACsB,cAAe,SAAQ,WAAW;IAC/C,IAAI,IAAI,MAAM;CAOtB;AAED,8BAAsB,kBAAmB,SAAQ,eAAe;IACvD,IAAI,IAAI,MAAM;CAOtB;AAED,qBACa,qBAAsB,SAAQ,kBAAkB;IACpD,KAAK,IAAI,qBAAqB;CAMtC;AAED,qBACa,sBAAuB,SAAQ,mBAAmB;IACtD,KAAK;;;;CASb;AAED,qBACa,uBAAwB,SAAQ,oBAAoB;IACxD,KAAK,IAAI,qBAAqB;CAetC"}
|
package/lib/cjs/statements.js
CHANGED
|
@@ -7,11 +7,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.SqlExistsQueryStatement = exports.SqlWhereQueryStatement = exports.SqlColumnRawStatement = exports.SqlDateTimeWrapper = exports.SqlDateWrapper = exports.SqlColumnMethodStatement = exports.SqlColumnStatement = exports.SqlInStatement = exports.SqlJoinStatement = exports.SqlWhereStatement = exports.SqlGroupByStatement = exports.SqlBetweenStatement = exports.SqlWithRecursiveStatement = exports.SqlRawStatement = void 0;
|
|
10
|
+
const orm_1 = require("@spinajs/orm");
|
|
10
11
|
/* eslint-disable prettier/prettier */
|
|
11
12
|
const compilers_js_1 = require("./compilers.js");
|
|
12
13
|
const di_1 = require("@spinajs/di");
|
|
13
|
-
const
|
|
14
|
-
let SqlRawStatement = class SqlRawStatement extends
|
|
14
|
+
const orm_2 = require("@spinajs/orm");
|
|
15
|
+
let SqlRawStatement = class SqlRawStatement extends orm_2.RawQueryStatement {
|
|
15
16
|
build() {
|
|
16
17
|
return {
|
|
17
18
|
Bindings: this._bindings,
|
|
@@ -23,10 +24,12 @@ SqlRawStatement = __decorate([
|
|
|
23
24
|
(0, di_1.NewInstance)()
|
|
24
25
|
], SqlRawStatement);
|
|
25
26
|
exports.SqlRawStatement = SqlRawStatement;
|
|
26
|
-
let SqlWithRecursiveStatement = class SqlWithRecursiveStatement extends
|
|
27
|
+
let SqlWithRecursiveStatement = class SqlWithRecursiveStatement extends orm_2.WithRecursiveStatement {
|
|
27
28
|
build() {
|
|
28
29
|
const initialQuery = this._query.clone().clearJoins().toDB();
|
|
29
|
-
const
|
|
30
|
+
const joinStmt = this.container.resolve(orm_2.JoinStatement, [this._query, this._query.Model, 'recursive_cte', orm_1.JoinMethod.RECURSIVE, this._pkName, this._rcKeyName, '$recursive$', '$recursive_cte$']);
|
|
31
|
+
this._query.JoinStatements.push(joinStmt);
|
|
32
|
+
const additionalQuery = this._query.clone().clearWhere().setAlias('$recursive$').toDB();
|
|
30
33
|
const cte_columns = this._query
|
|
31
34
|
.getColumns()
|
|
32
35
|
.map((c) => c.Column)
|
|
@@ -41,7 +44,7 @@ SqlWithRecursiveStatement = __decorate([
|
|
|
41
44
|
(0, di_1.NewInstance)()
|
|
42
45
|
], SqlWithRecursiveStatement);
|
|
43
46
|
exports.SqlWithRecursiveStatement = SqlWithRecursiveStatement;
|
|
44
|
-
let SqlBetweenStatement = class SqlBetweenStatement extends
|
|
47
|
+
let SqlBetweenStatement = class SqlBetweenStatement extends orm_2.BetweenStatement {
|
|
45
48
|
build() {
|
|
46
49
|
const exprr = this._not ? 'NOT BETWEEN' : 'BETWEEN';
|
|
47
50
|
return {
|
|
@@ -54,9 +57,9 @@ SqlBetweenStatement = __decorate([
|
|
|
54
57
|
(0, di_1.NewInstance)()
|
|
55
58
|
], SqlBetweenStatement);
|
|
56
59
|
exports.SqlBetweenStatement = SqlBetweenStatement;
|
|
57
|
-
let SqlGroupByStatement = class SqlGroupByStatement extends
|
|
60
|
+
let SqlGroupByStatement = class SqlGroupByStatement extends orm_2.GroupByStatement {
|
|
58
61
|
build() {
|
|
59
|
-
if (this._expr instanceof
|
|
62
|
+
if (this._expr instanceof orm_2.RawQuery) {
|
|
60
63
|
return {
|
|
61
64
|
Bindings: this._expr.Bindings,
|
|
62
65
|
Statements: [`${this._expr.Query}`],
|
|
@@ -74,20 +77,20 @@ SqlGroupByStatement = __decorate([
|
|
|
74
77
|
(0, di_1.NewInstance)()
|
|
75
78
|
], SqlGroupByStatement);
|
|
76
79
|
exports.SqlGroupByStatement = SqlGroupByStatement;
|
|
77
|
-
let SqlWhereStatement = class SqlWhereStatement extends
|
|
80
|
+
let SqlWhereStatement = class SqlWhereStatement extends orm_2.WhereStatement {
|
|
78
81
|
build() {
|
|
79
|
-
const isNullableQuery = this._operator ===
|
|
82
|
+
const isNullableQuery = this._operator === orm_2.SqlOperator.NOT_NULL || this._operator === orm_2.SqlOperator.NULL;
|
|
80
83
|
const binding = isNullableQuery ? '' : ' ?';
|
|
81
84
|
let column = this._column;
|
|
82
85
|
let val = this._value;
|
|
83
86
|
if (this._model) {
|
|
84
|
-
const desc = (0,
|
|
87
|
+
const desc = (0, orm_2.extractModelDescriptor)(this._model);
|
|
85
88
|
const rel = desc.Relations.get(column);
|
|
86
89
|
if (rel) {
|
|
87
90
|
column = rel.ForeignKey;
|
|
88
91
|
}
|
|
89
92
|
}
|
|
90
|
-
if (column instanceof
|
|
93
|
+
if (column instanceof orm_2.Wrap) {
|
|
91
94
|
const wrapper = this._container.resolve(column.Wrapper, [column.Column, this._tableAlias]);
|
|
92
95
|
column = wrapper.wrap();
|
|
93
96
|
}
|
|
@@ -95,7 +98,7 @@ let SqlWhereStatement = class SqlWhereStatement extends orm_1.WhereStatement {
|
|
|
95
98
|
if (this._tableAlias) {
|
|
96
99
|
column = `\`${this._tableAlias}\`.${this._column}`;
|
|
97
100
|
}
|
|
98
|
-
if (val instanceof
|
|
101
|
+
if (val instanceof orm_2.ModelBase) {
|
|
99
102
|
val = val.PrimaryKeyValue;
|
|
100
103
|
}
|
|
101
104
|
else {
|
|
@@ -116,12 +119,13 @@ SqlWhereStatement = __decorate([
|
|
|
116
119
|
(0, di_1.NewInstance)()
|
|
117
120
|
], SqlWhereStatement);
|
|
118
121
|
exports.SqlWhereStatement = SqlWhereStatement;
|
|
119
|
-
let SqlJoinStatement = class SqlJoinStatement extends
|
|
122
|
+
let SqlJoinStatement = class SqlJoinStatement extends orm_2.JoinStatement {
|
|
120
123
|
build() {
|
|
124
|
+
const method = this._method === orm_1.JoinMethod.RECURSIVE ? orm_1.JoinMethod.INNER : this._method;
|
|
121
125
|
if (this._query) {
|
|
122
126
|
return {
|
|
123
127
|
Bindings: this._query.Bindings,
|
|
124
|
-
Statements: [`${
|
|
128
|
+
Statements: [`${method} ${this._query.Query}`],
|
|
125
129
|
};
|
|
126
130
|
}
|
|
127
131
|
let table = `\`${this._table}\``;
|
|
@@ -131,12 +135,12 @@ let SqlJoinStatement = class SqlJoinStatement extends orm_1.JoinStatement {
|
|
|
131
135
|
primaryKey = `\`${this._alias}\`.${this._foreignKey}`;
|
|
132
136
|
}
|
|
133
137
|
if (this._tableAlias) {
|
|
134
|
-
table = `\`${this._table}\` as \`${this._tableAlias}\``;
|
|
138
|
+
table = `\`${this._table}\` as \`${this._method === orm_1.JoinMethod.RECURSIVE ? this._alias : this._tableAlias}\``;
|
|
135
139
|
foreignKey = `\`${this._tableAlias}\`.${this._primaryKey}`;
|
|
136
140
|
}
|
|
137
141
|
return {
|
|
138
142
|
Bindings: [],
|
|
139
|
-
Statements: [`${
|
|
143
|
+
Statements: [`${method} ${table} ON ${primaryKey} = ${foreignKey}`],
|
|
140
144
|
};
|
|
141
145
|
}
|
|
142
146
|
};
|
|
@@ -144,7 +148,7 @@ SqlJoinStatement = __decorate([
|
|
|
144
148
|
(0, di_1.NewInstance)()
|
|
145
149
|
], SqlJoinStatement);
|
|
146
150
|
exports.SqlJoinStatement = SqlJoinStatement;
|
|
147
|
-
let SqlInStatement = class SqlInStatement extends
|
|
151
|
+
let SqlInStatement = class SqlInStatement extends orm_2.InStatement {
|
|
148
152
|
build() {
|
|
149
153
|
const exprr = this._not ? 'NOT IN' : 'IN';
|
|
150
154
|
return {
|
|
@@ -157,7 +161,7 @@ SqlInStatement = __decorate([
|
|
|
157
161
|
(0, di_1.NewInstance)()
|
|
158
162
|
], SqlInStatement);
|
|
159
163
|
exports.SqlInStatement = SqlInStatement;
|
|
160
|
-
let SqlColumnStatement = class SqlColumnStatement extends
|
|
164
|
+
let SqlColumnStatement = class SqlColumnStatement extends orm_2.ColumnStatement {
|
|
161
165
|
build() {
|
|
162
166
|
let exprr = '';
|
|
163
167
|
if (this.IsWildcard) {
|
|
@@ -182,7 +186,7 @@ SqlColumnStatement = __decorate([
|
|
|
182
186
|
(0, di_1.NewInstance)()
|
|
183
187
|
], SqlColumnStatement);
|
|
184
188
|
exports.SqlColumnStatement = SqlColumnStatement;
|
|
185
|
-
let SqlColumnMethodStatement = class SqlColumnMethodStatement extends
|
|
189
|
+
let SqlColumnMethodStatement = class SqlColumnMethodStatement extends orm_2.ColumnMethodStatement {
|
|
186
190
|
build() {
|
|
187
191
|
let _exprr = '';
|
|
188
192
|
if (this.IsWildcard) {
|
|
@@ -204,7 +208,7 @@ SqlColumnMethodStatement = __decorate([
|
|
|
204
208
|
(0, di_1.NewInstance)()
|
|
205
209
|
], SqlColumnMethodStatement);
|
|
206
210
|
exports.SqlColumnMethodStatement = SqlColumnMethodStatement;
|
|
207
|
-
let SqlDateWrapper = class SqlDateWrapper extends
|
|
211
|
+
let SqlDateWrapper = class SqlDateWrapper extends orm_2.DateWrapper {
|
|
208
212
|
wrap() {
|
|
209
213
|
if (this._tableAlias) {
|
|
210
214
|
return `DATE(\`${this._tableAlias}\`.\`${this._value}\`)`;
|
|
@@ -216,7 +220,7 @@ SqlDateWrapper = __decorate([
|
|
|
216
220
|
(0, di_1.NewInstance)()
|
|
217
221
|
], SqlDateWrapper);
|
|
218
222
|
exports.SqlDateWrapper = SqlDateWrapper;
|
|
219
|
-
class SqlDateTimeWrapper extends
|
|
223
|
+
class SqlDateTimeWrapper extends orm_2.DateTimeWrapper {
|
|
220
224
|
wrap() {
|
|
221
225
|
if (this._tableAlias) {
|
|
222
226
|
return `DATETIME(\`${this._tableAlias}\`.\`${this._value}\`)`;
|
|
@@ -225,7 +229,7 @@ class SqlDateTimeWrapper extends orm_1.DateTimeWrapper {
|
|
|
225
229
|
}
|
|
226
230
|
}
|
|
227
231
|
exports.SqlDateTimeWrapper = SqlDateTimeWrapper;
|
|
228
|
-
let SqlColumnRawStatement = class SqlColumnRawStatement extends
|
|
232
|
+
let SqlColumnRawStatement = class SqlColumnRawStatement extends orm_2.ColumnRawStatement {
|
|
229
233
|
build() {
|
|
230
234
|
return {
|
|
231
235
|
Bindings: this.RawQuery.Bindings,
|
|
@@ -237,7 +241,7 @@ SqlColumnRawStatement = __decorate([
|
|
|
237
241
|
(0, di_1.NewInstance)()
|
|
238
242
|
], SqlColumnRawStatement);
|
|
239
243
|
exports.SqlColumnRawStatement = SqlColumnRawStatement;
|
|
240
|
-
let SqlWhereQueryStatement = class SqlWhereQueryStatement extends
|
|
244
|
+
let SqlWhereQueryStatement = class SqlWhereQueryStatement extends orm_2.WhereQueryStatement {
|
|
241
245
|
build() {
|
|
242
246
|
const _compiler = new compilers_js_1.SqlWhereCompiler();
|
|
243
247
|
const _result = _compiler.where(this._builder);
|
|
@@ -251,7 +255,7 @@ SqlWhereQueryStatement = __decorate([
|
|
|
251
255
|
(0, di_1.NewInstance)()
|
|
252
256
|
], SqlWhereQueryStatement);
|
|
253
257
|
exports.SqlWhereQueryStatement = SqlWhereQueryStatement;
|
|
254
|
-
let SqlExistsQueryStatement = class SqlExistsQueryStatement extends
|
|
258
|
+
let SqlExistsQueryStatement = class SqlExistsQueryStatement extends orm_2.ExistsQueryStatement {
|
|
255
259
|
build() {
|
|
256
260
|
let exprr = '';
|
|
257
261
|
const compiled = this._builder.toDB();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statements.js","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":";;;;;;;;;AAAA,sCAAsC;AACtC,iDAAkD;AAClD,oCAA0C;AAC1C,sCAAoZ;AAG7Y,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,uBAAiB;IAC7C,KAAK;QACV,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;SAC/B,CAAC;IACJ,CAAC;CACF,CAAA;AAPY,eAAe;IAD3B,IAAA,gBAAW,GAAE;GACD,eAAe,CAO3B;AAPY,0CAAe;AAUrB,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,4BAAsB;IAC5D,KAAK;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"statements.js","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAY,WAAW,EAAE,eAAe,EAA+D,MAAM,cAAc,CAAC;AAEpZ,qBACa,eAAgB,SAAQ,iBAAiB;IAC7C,KAAK,IAAI,qBAAqB;CAMtC;AAED,qBACa,yBAA0B,SAAQ,sBAAsB;IAC5D,KAAK,IAAI,qBAAqB;CAiBtC;AAED,qBACa,mBAAoB,SAAQ,gBAAgB;IAChD,KAAK,IAAI,qBAAqB;CAQtC;AAED,qBACa,mBAAoB,SAAQ,gBAAgB;IACvD,KAAK,IAAI,qBAAqB;CAa/B;AAED,qBACa,iBAAkB,SAAQ,cAAc;IAC5C,KAAK,IAAI,qBAAqB;CAsCtC;AAED,qBACa,gBAAiB,SAAQ,aAAa;IAC1C,KAAK,IAAI,qBAAqB;CA6BtC;AAED,qBACa,cAAe,SAAQ,WAAW;IACtC,KAAK,IAAI,qBAAqB;CAQtC;AAED,qBACa,kBAAmB,SAAQ,eAAe;IAC9C,KAAK,IAAI,qBAAqB;CAsBtC;AAED,qBACa,wBAAyB,SAAQ,qBAAqB;IAC1D,KAAK,IAAI,qBAAqB;CAkBtC;AAED,8BACsB,cAAe,SAAQ,WAAW;IAC/C,IAAI,IAAI,MAAM;CAOtB;AAED,8BAAsB,kBAAmB,SAAQ,eAAe;IACvD,IAAI,IAAI,MAAM;CAOtB;AAED,qBACa,qBAAsB,SAAQ,kBAAkB;IACpD,KAAK,IAAI,qBAAqB;CAMtC;AAED,qBACa,sBAAuB,SAAQ,mBAAmB;IACtD,KAAK;;;;CASb;AAED,qBACa,uBAAwB,SAAQ,oBAAoB;IACxD,KAAK,IAAI,qBAAqB;CAetC"}
|
package/lib/mjs/statements.js
CHANGED
|
@@ -4,6 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
+
import { JoinMethod } from '@spinajs/orm';
|
|
7
8
|
/* eslint-disable prettier/prettier */
|
|
8
9
|
import { SqlWhereCompiler } from './compilers.js';
|
|
9
10
|
import { NewInstance } from '@spinajs/di';
|
|
@@ -23,7 +24,9 @@ export { SqlRawStatement };
|
|
|
23
24
|
let SqlWithRecursiveStatement = class SqlWithRecursiveStatement extends WithRecursiveStatement {
|
|
24
25
|
build() {
|
|
25
26
|
const initialQuery = this._query.clone().clearJoins().toDB();
|
|
26
|
-
const
|
|
27
|
+
const joinStmt = this.container.resolve(JoinStatement, [this._query, this._query.Model, 'recursive_cte', JoinMethod.RECURSIVE, this._pkName, this._rcKeyName, '$recursive$', '$recursive_cte$']);
|
|
28
|
+
this._query.JoinStatements.push(joinStmt);
|
|
29
|
+
const additionalQuery = this._query.clone().clearWhere().setAlias('$recursive$').toDB();
|
|
27
30
|
const cte_columns = this._query
|
|
28
31
|
.getColumns()
|
|
29
32
|
.map((c) => c.Column)
|
|
@@ -115,10 +118,11 @@ SqlWhereStatement = __decorate([
|
|
|
115
118
|
export { SqlWhereStatement };
|
|
116
119
|
let SqlJoinStatement = class SqlJoinStatement extends JoinStatement {
|
|
117
120
|
build() {
|
|
121
|
+
const method = this._method === JoinMethod.RECURSIVE ? JoinMethod.INNER : this._method;
|
|
118
122
|
if (this._query) {
|
|
119
123
|
return {
|
|
120
124
|
Bindings: this._query.Bindings,
|
|
121
|
-
Statements: [`${
|
|
125
|
+
Statements: [`${method} ${this._query.Query}`],
|
|
122
126
|
};
|
|
123
127
|
}
|
|
124
128
|
let table = `\`${this._table}\``;
|
|
@@ -128,12 +132,12 @@ let SqlJoinStatement = class SqlJoinStatement extends JoinStatement {
|
|
|
128
132
|
primaryKey = `\`${this._alias}\`.${this._foreignKey}`;
|
|
129
133
|
}
|
|
130
134
|
if (this._tableAlias) {
|
|
131
|
-
table = `\`${this._table}\` as \`${this._tableAlias}\``;
|
|
135
|
+
table = `\`${this._table}\` as \`${this._method === JoinMethod.RECURSIVE ? this._alias : this._tableAlias}\``;
|
|
132
136
|
foreignKey = `\`${this._tableAlias}\`.${this._primaryKey}`;
|
|
133
137
|
}
|
|
134
138
|
return {
|
|
135
139
|
Bindings: [],
|
|
136
|
-
Statements: [`${
|
|
140
|
+
Statements: [`${method} ${table} ON ${primaryKey} = ${foreignKey}`],
|
|
137
141
|
};
|
|
138
142
|
}
|
|
139
143
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statements.js","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":";;;;;;AAAA,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAyB,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAiC,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAG7Y,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,iBAAiB;IAC7C,KAAK;QACV,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;SAC/B,CAAC;IACJ,CAAC;CACF,CAAA;AAPY,eAAe;IAD3B,WAAW,EAAE;GACD,eAAe,CAO3B;SAPY,eAAe;AAUrB,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,sBAAsB;IAC5D,KAAK;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"statements.js","sourceRoot":"","sources":["../../src/statements.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAyB,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAiC,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAG7Y,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,iBAAiB;IAC7C,KAAK;QACV,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;SAC/B,CAAC;IACJ,CAAC;CACF,CAAA;AAPY,eAAe;IAD3B,WAAW,EAAE;GACD,eAAe,CAO3B;SAPY,eAAe;AAUrB,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,sBAAsB;IAC5D,KAAK;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC;QAG7D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,eAAe,EAAE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAC,aAAa,EAAC,iBAAiB,CAAC,CAAC,CAAC;QAC9L,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC;QACxF,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM;aAC5B,UAAU,EAAE;aACZ,GAAG,CAAC,CAAC,CAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;aACrC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEb,OAAO;YACL,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;YAChE,UAAU,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC;SAC/E,CAAC;IACJ,CAAC;CACF,CAAA;AAlBY,yBAAyB;IADrC,WAAW,EAAE;GACD,yBAAyB,CAkBrC;SAlBY,yBAAyB;AAqB/B,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,gBAAgB;IAChD,KAAK;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpD,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,UAAU,CAAC;SACjD,CAAC;IACJ,CAAC;CACF,CAAA;AATY,mBAAmB;IAD/B,WAAW,EAAE;GACD,mBAAmB,CAS/B;SATY,mBAAmB;AAYzB,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,gBAAgB;IACvD,KAAK;QACH,IAAI,IAAI,CAAC,KAAK,YAAY,QAAQ,EAAE;YAClC,OAAO;gBACL,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;gBAC7B,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;aACpC,CAAC;SACH;aAAM;YACL,OAAO;gBACL,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC;aAClC,CAAC;SACH;IACH,CAAC;CACF,CAAA;AAdY,mBAAmB;IAD/B,WAAW,EAAE;GACD,mBAAmB,CAc/B;SAdY,mBAAmB;AAiBzB,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,cAAc;IAC5C,KAAK;QACV,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,KAAK,WAAW,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,CAAC,IAAI,CAAC;QACvG,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1B,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;QAEtB,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAgB,CAAC,CAAC;YACjD,IAAI,GAAG,EAAE;gBACP,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC;aACzB;SACF;QAED,IAAI,MAAM,YAAY,IAAI,EAAE;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1G,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;SACzB;aAAM;YACL,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,MAAM,GAAG,KAAK,IAAI,CAAC,WAAW,MAAM,IAAI,CAAC,OAAiB,EAAE,CAAC;aAC9D;YAED,IAAI,GAAG,YAAY,SAAS,EAAE;gBAC5B,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC;aAC3B;iBAAM;gBACL,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAmB,6BAA6B,CAAC,CAAC;gBACxF,IAAI,UAAU,IAAI,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;oBAC7E,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAiB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;oBACxG,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;iBACvC;aACF;SACF;QAED,OAAO;YACL,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACtC,UAAU,EAAE,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC;SACpE,CAAC;IACJ,CAAC;CACF,CAAA;AAvCY,iBAAiB;IAD7B,WAAW,EAAE;GACD,iBAAiB,CAuC7B;SAvCY,iBAAiB;AA0CvB,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,aAAa;IAC1C,KAAK;QAEV,MAAM,MAAM,GAAI,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAExF,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO;gBACL,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAC9B,UAAU,EAAE,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;aAC/C,CAAC;SACH;QAED,IAAI,KAAK,GAAG,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC;QACjC,IAAI,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QAClC,IAAI,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QAElC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,UAAU,GAAG,KAAK,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;SACvD;QAED,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,KAAK,GAAG,KAAK,IAAI,CAAC,MAAM,WAAW,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC;YAC7G,UAAU,GAAG,KAAK,IAAI,CAAC,WAAW,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;SAC5D;QAED,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,CAAC,GAAG,MAAM,IAAI,KAAK,OAAO,UAAU,MAAM,UAAU,EAAE,CAAC;SACpE,CAAC;IACJ,CAAC;CACF,CAAA;AA9BY,gBAAgB;IAD5B,WAAW,EAAE;GACD,gBAAgB,CA8B5B;SA9BY,gBAAgB;AAiCtB,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,WAAW;IACtC,KAAK;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAE1C,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;SACjF,CAAC;IACJ,CAAC;CACF,CAAA;AATY,cAAc;IAD1B,WAAW,EAAE;GACD,cAAc,CAS1B;SATY,cAAc;AAYpB,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,eAAe;IAC9C,KAAK;QACV,IAAI,KAAK,GAAG,EAAE,CAAC;QAEf,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,KAAK,GAAG,GAAG,CAAC;SACb;aAAM;YACL,KAAK,GAAG,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC;YAE9B,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,KAAK,IAAI,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC;aACnC;SACF;QAED,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,KAAK,GAAG,KAAK,IAAI,CAAC,WAAW,MAAM,KAAK,EAAE,CAAC;SAC5C;QAED,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,CAAC,KAAK,CAAC;SACpB,CAAC;IACJ,CAAC;CACF,CAAA;AAvBY,kBAAkB;IAD9B,WAAW,EAAE;GACD,kBAAkB,CAuB9B;SAvBY,kBAAkB;AA0BxB,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,qBAAqB;IAC1D,KAAK;QACV,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC;SAC7C;aAAM;YACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,MAAM,IAAI,CAAC,OAAO,KAAK,CAAC;SACjD;QAED,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC;SACpC;QAED,OAAO;YACL,QAAQ,EAAE,EAAW;YACrB,UAAU,EAAE,CAAC,MAAM,CAAC;SACrB,CAAC;IACJ,CAAC;CACF,CAAA;AAnBY,wBAAwB;IADpC,WAAW,EAAE;GACD,wBAAwB,CAmBpC;SAnBY,wBAAwB;AAsB9B,IAAe,cAAc,GAA7B,MAAe,cAAe,SAAQ,WAAW;IAC/C,IAAI;QACT,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,OAAO,UAAU,IAAI,CAAC,WAAW,QAAQ,IAAI,CAAC,MAAM,KAAK,CAAC;SAC3D;QAED,OAAO,UAAU,IAAI,CAAC,MAAM,KAAK,CAAC;IACpC,CAAC;CACF,CAAA;AARqB,cAAc;IADnC,WAAW,EAAE;GACQ,cAAc,CAQnC;SARqB,cAAc;AAUpC,MAAM,OAAgB,kBAAmB,SAAQ,eAAe;IACvD,IAAI;QACT,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,OAAO,cAAc,IAAI,CAAC,WAAW,QAAQ,IAAI,CAAC,MAAM,KAAK,CAAC;SAC/D;QAED,OAAO,cAAc,IAAI,CAAC,MAAM,KAAK,CAAC;IACxC,CAAC;CACF;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,kBAAkB;IACpD,KAAK;QACV,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAChC,UAAU,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC;CACF,CAAA;AAPY,qBAAqB;IADjC,WAAW,EAAE;GACD,qBAAqB,CAOjC;SAPY,qBAAqB;AAU3B,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,mBAAmB;IACtD,KAAK;QACV,MAAM,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE/C,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;SACjG,CAAC;IACJ,CAAC;CACF,CAAA;AAVY,sBAAsB;IADlC,WAAW,EAAE;GACD,sBAAsB,CAUlC;SAVY,sBAAsB;AAa5B,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,oBAAoB;IACxD,KAAK;QACV,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEtC,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,KAAK,IAAI,gBAAgB,QAAQ,CAAC,UAAU,IAAI,CAAC;SAClD;aAAM;YACL,KAAK,IAAI,YAAY,QAAQ,CAAC,UAAU,IAAI,CAAC;SAC9C;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,UAAU,EAAE,CAAC,KAAK,CAAC;SACpB,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,uBAAuB;IADnC,WAAW,EAAE;GACD,uBAAuB,CAgBnC;SAhBY,uBAAuB"}
|