tspace-mysql 1.8.2 → 1.8.3
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 +76 -11
- package/build/lib/core/Abstracts/AbstractDB.d.ts +2 -2
- package/build/lib/core/Abstracts/AbstractDB.js.map +1 -1
- package/build/lib/core/Builder.d.ts +26 -26
- package/build/lib/core/Builder.js +1092 -1014
- package/build/lib/core/Builder.js.map +1 -1
- package/build/lib/core/DB.d.ts +38 -38
- package/build/lib/core/DB.js +119 -115
- package/build/lib/core/DB.js.map +1 -1
- package/build/lib/core/Handlers/Relation.js +9 -7
- package/build/lib/core/Handlers/Relation.js.map +1 -1
- package/build/lib/core/Model.d.ts +138 -88
- package/build/lib/core/Model.js +1403 -1196
- package/build/lib/core/Model.js.map +1 -1
- package/build/lib/core/Nest/index.d.ts +3 -1
- package/build/lib/core/Nest/index.js +4 -2
- package/build/lib/core/Nest/index.js.map +1 -1
- package/build/lib/{connection/index.d.ts → core/Pool.d.ts} +2 -1
- package/build/lib/{connection/index.js → core/Pool.js} +74 -6
- package/build/lib/core/Pool.js.map +1 -0
- package/build/lib/core/Repository.d.ts +16 -16
- package/build/lib/core/Repository.js +73 -45
- package/build/lib/core/Repository.js.map +1 -1
- package/build/lib/core/index.d.ts +12 -12
- package/build/lib/core/index.js +3 -3
- package/build/lib/core/index.js.map +1 -1
- package/build/lib/types/index.d.ts +19 -3
- package/build/tests/01-Pool.test.js +0 -10
- package/build/tests/01-Pool.test.js.map +1 -1
- package/package.json +1 -1
- package/build/lib/connection/index.js.map +0 -1
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { Model, Repository } from "..";
|
|
2
2
|
export type NestRepository<M extends Model> = ReturnType<typeof Repository<M>>;
|
|
3
3
|
export declare const NestInject: <M extends Model<any, unknown>>(model: string | (new () => M)) => string;
|
|
4
|
-
export declare const NestProvider: <M extends Model<any, unknown>>(model: new () => M
|
|
4
|
+
export declare const NestProvider: <M extends Model<any, unknown>>(model: new () => M, options?: {
|
|
5
|
+
pattern?: 'repository' | 'model';
|
|
6
|
+
}) => {
|
|
5
7
|
provide: string;
|
|
6
8
|
useValue: unknown;
|
|
7
9
|
};
|
|
@@ -12,10 +12,12 @@ const NestInject = (model) => {
|
|
|
12
12
|
: nameOfModel(model);
|
|
13
13
|
};
|
|
14
14
|
exports.NestInject = NestInject;
|
|
15
|
-
const NestProvider = (model) => {
|
|
15
|
+
const NestProvider = (model, options = { pattern: 'repository' }) => {
|
|
16
16
|
return {
|
|
17
17
|
provide: nameOfModel(model),
|
|
18
|
-
useValue:
|
|
18
|
+
useValue: options.pattern === 'repository'
|
|
19
|
+
? (0, __1.Repository)(model)
|
|
20
|
+
: new __1.Model()
|
|
19
21
|
};
|
|
20
22
|
};
|
|
21
23
|
exports.NestProvider = NestProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/Nest/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/core/Nest/index.ts"],"names":[],"mappings":";;;AAAA,0BAAuC;AAEvC,MAAM,WAAW,GAAG,CAAkB,KAAmB,EAAW,EAAE;;IAEpE,OAAO,GAAG,MAAA,MAAA,IAAI,KAAK,EAAE,CAAC,WAAW,0CAAE,IAAI,mCAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAA;AAC7F,CAAC,CAAA;AAIM,MAAM,UAAU,GAAG,CAAoB,KAA8B,EAAE,EAAE;IAC9E,OAAO,OAAO,KAAK,KAAK,QAAQ;QAC9B,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC,CAAA;AAJY,QAAA,UAAU,cAItB;AAEM,MAAM,YAAY,GAAG,CAC1B,KAAmB,EACnB,UAEI,EAAE,OAAO,EAAE,YAAY,EAAE,EAC7B,EAAE;IACF,OAAO;QACL,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC;QAC3B,QAAQ,EAAE,OAAO,CAAC,OAAO,KAAK,YAAY;YACxC,CAAC,CAAC,IAAA,cAAU,EAAI,KAAK,CAAY;YACjC,CAAC,CAAC,IAAI,SAAK,EAAE;KAChB,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,YAAY,gBAYxB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { EventEmitter } from 'events';
|
|
3
3
|
import { loadOptionsEnvironment } from '../options';
|
|
4
|
-
import type { TConnection, TOptions } from '../types';
|
|
4
|
+
import type { TConnection, TNewConnection, TOptions } from '../types';
|
|
5
5
|
export declare class PoolConnection extends EventEmitter {
|
|
6
6
|
private OPTIONS;
|
|
7
7
|
/**
|
|
@@ -17,6 +17,7 @@ export declare class PoolConnection extends EventEmitter {
|
|
|
17
17
|
* @property {Function} Connection.connection
|
|
18
18
|
*/
|
|
19
19
|
connected(): TConnection;
|
|
20
|
+
newConnected(): TNewConnection;
|
|
20
21
|
private _detectEventQuery;
|
|
21
22
|
private _detectQueryType;
|
|
22
23
|
private _defaultOptions;
|
|
@@ -99,19 +99,70 @@ class PoolConnection extends events_1.EventEmitter {
|
|
|
99
99
|
return reject(err);
|
|
100
100
|
const query = (sql) => {
|
|
101
101
|
const start = Date.now();
|
|
102
|
-
return new Promise((
|
|
102
|
+
return new Promise((ok, fail) => {
|
|
103
103
|
connection.query(sql, (err, results) => {
|
|
104
104
|
connection.release();
|
|
105
105
|
if (err) {
|
|
106
|
-
return
|
|
106
|
+
return fail(err);
|
|
107
107
|
}
|
|
108
108
|
this._detectEventQuery({ start, sql, results });
|
|
109
|
-
return
|
|
109
|
+
return ok(results);
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
return resolve({
|
|
114
|
+
on: (event, data) => this.on(event, data),
|
|
115
|
+
query
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
newConnected() {
|
|
123
|
+
const pool = (0, mysql2_1.createPool)(Object.fromEntries(this.OPTIONS));
|
|
124
|
+
return {
|
|
125
|
+
on: (event, data) => {
|
|
126
|
+
return this.on(event, data);
|
|
127
|
+
},
|
|
128
|
+
query: (sql) => {
|
|
129
|
+
return new Promise((resolve, reject) => {
|
|
130
|
+
const start = Date.now();
|
|
131
|
+
pool.query(sql, (err, results) => {
|
|
132
|
+
if (err)
|
|
133
|
+
return reject(err);
|
|
134
|
+
this._detectEventQuery({
|
|
135
|
+
start,
|
|
136
|
+
sql,
|
|
137
|
+
results
|
|
138
|
+
});
|
|
139
|
+
return resolve(results);
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
},
|
|
143
|
+
connection: () => {
|
|
144
|
+
let closeTransction = false;
|
|
145
|
+
return new Promise((resolve, reject) => {
|
|
146
|
+
pool.getConnection((err, connection) => {
|
|
147
|
+
if (err)
|
|
148
|
+
return reject(err);
|
|
149
|
+
const query = (sql) => {
|
|
150
|
+
const start = Date.now();
|
|
151
|
+
return new Promise((ok, fail) => {
|
|
152
|
+
if (closeTransction) {
|
|
153
|
+
return fail(new Error('The transaction has either been closed'));
|
|
154
|
+
}
|
|
155
|
+
connection.query(sql, (err, results) => {
|
|
156
|
+
connection.release();
|
|
157
|
+
if (err) {
|
|
158
|
+
return fail(err);
|
|
159
|
+
}
|
|
160
|
+
this._detectEventQuery({ start, sql, results });
|
|
161
|
+
return ok(results);
|
|
110
162
|
});
|
|
111
163
|
});
|
|
112
164
|
};
|
|
113
165
|
const startTransaction = () => __awaiter(this, void 0, void 0, function* () {
|
|
114
|
-
// don't use await as it blocks all connection pools. and ignore the .bind(...) method.
|
|
115
166
|
yield query('START TRANSACTION')
|
|
116
167
|
.catch(err => reject(err));
|
|
117
168
|
return;
|
|
@@ -124,6 +175,19 @@ class PoolConnection extends events_1.EventEmitter {
|
|
|
124
175
|
const rollback = () => __awaiter(this, void 0, void 0, function* () {
|
|
125
176
|
yield query('ROLLBACK')
|
|
126
177
|
.catch(err => reject(err));
|
|
178
|
+
// when rollback will end of transction
|
|
179
|
+
yield end();
|
|
180
|
+
return;
|
|
181
|
+
});
|
|
182
|
+
const end = () => __awaiter(this, void 0, void 0, function* () {
|
|
183
|
+
yield new Promise(resolve => setTimeout(() => {
|
|
184
|
+
// After commit the transaction, you can't perform any actions with this transaction.
|
|
185
|
+
connection.destroy();
|
|
186
|
+
// After destroying the connection, it will be removed from the connection pool.
|
|
187
|
+
pool.end();
|
|
188
|
+
closeTransction = true;
|
|
189
|
+
return resolve();
|
|
190
|
+
}, 500));
|
|
127
191
|
return;
|
|
128
192
|
});
|
|
129
193
|
return resolve({
|
|
@@ -131,7 +195,8 @@ class PoolConnection extends events_1.EventEmitter {
|
|
|
131
195
|
query,
|
|
132
196
|
startTransaction,
|
|
133
197
|
commit,
|
|
134
|
-
rollback
|
|
198
|
+
rollback,
|
|
199
|
+
end
|
|
135
200
|
});
|
|
136
201
|
});
|
|
137
202
|
});
|
|
@@ -282,6 +347,9 @@ class PoolConnection extends events_1.EventEmitter {
|
|
|
282
347
|
if (err) {
|
|
283
348
|
const message = this._messageError.bind(this);
|
|
284
349
|
process.nextTick(() => {
|
|
350
|
+
if (String(err.message).includes('Pool is close')) {
|
|
351
|
+
return;
|
|
352
|
+
}
|
|
285
353
|
console.log(message(err.message == null || err.message === '' ? err.code : err.message));
|
|
286
354
|
if (options_1.default.CONNECTION_ERROR)
|
|
287
355
|
return process.exit();
|
|
@@ -351,4 +419,4 @@ exports.PoolConnection = PoolConnection;
|
|
|
351
419
|
const pool = new PoolConnection().connected();
|
|
352
420
|
exports.Pool = pool;
|
|
353
421
|
exports.default = pool;
|
|
354
|
-
//# sourceMappingURL=
|
|
422
|
+
//# sourceMappingURL=Pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pool.js","sourceRoot":"","sources":["../../../src/lib/core/Pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
13
13
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
14
14
|
* @type {?Object} options
|
|
15
15
|
* @property {?object} options.select
|
|
16
|
-
* @property {?object} options.
|
|
16
|
+
* @property {?object} options.except
|
|
17
17
|
* @property {?object[]} options.orderBy
|
|
18
18
|
* @property {?string[]} options.groupBy
|
|
19
19
|
* @property {?string} options.having
|
|
@@ -54,8 +54,8 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
54
54
|
*
|
|
55
55
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
56
56
|
* @type {?Object} options
|
|
57
|
-
|
|
58
|
-
* @property {?object} options.
|
|
57
|
+
* @property {?object} options.select
|
|
58
|
+
* @property {?object} options.except
|
|
59
59
|
* @property {?object[]} options.orderBy
|
|
60
60
|
* @property {?string[]} options.groupBy
|
|
61
61
|
* @property {?string} options.having
|
|
@@ -97,7 +97,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
97
97
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
98
98
|
* @type {?Object} options
|
|
99
99
|
* @property {?object} options.select
|
|
100
|
-
* @property {?object} options.
|
|
100
|
+
* @property {?object} options.except
|
|
101
101
|
* @property {?object[]} options.orderBy
|
|
102
102
|
* @property {?string[]} options.groupBy
|
|
103
103
|
* @property {?string} options.having
|
|
@@ -139,7 +139,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
139
139
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
140
140
|
* @type {?object} options
|
|
141
141
|
* @property {?object} options.select
|
|
142
|
-
* @property {?object} options.
|
|
142
|
+
* @property {?object} options.except
|
|
143
143
|
* @property {?object[]} options.orderBy
|
|
144
144
|
* @property {?string[]} options.groupBy
|
|
145
145
|
* @property {?string} options.having
|
|
@@ -182,7 +182,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
182
182
|
* making it easier to display data in a web application and improve user experience.
|
|
183
183
|
* @type {?object} options
|
|
184
184
|
* @property {?object} options.select
|
|
185
|
-
* @property {?object} options.
|
|
185
|
+
* @property {?object} options.except
|
|
186
186
|
* @property {?object[]} options.orderBy
|
|
187
187
|
* @property {?string[]} options.groupBy
|
|
188
188
|
* @property {?string} options.having
|
|
@@ -226,7 +226,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
226
226
|
* making it easier to display data in a web application and improve user experience
|
|
227
227
|
* @type {?object} options
|
|
228
228
|
* @property {?object} options.select
|
|
229
|
-
* @property {?object} options.
|
|
229
|
+
* @property {?object} options.except
|
|
230
230
|
* @property {?object[]} options.orderBy
|
|
231
231
|
* @property {?string[]} options.groupBy
|
|
232
232
|
* @property {?string} options.having
|
|
@@ -268,7 +268,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
268
268
|
* It returns a boolean value indicating whether there are any matching records.
|
|
269
269
|
* @type {?object} options
|
|
270
270
|
* @property {?object} options.select
|
|
271
|
-
* @property {?object} options.
|
|
271
|
+
* @property {?object} options.except
|
|
272
272
|
* @property {?object[]} options.orderBy
|
|
273
273
|
* @property {?string[]} options.groupBy
|
|
274
274
|
* @property {?string} options.having
|
|
@@ -291,7 +291,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
291
291
|
* This method is particularly useful for debugging and understanding the SQL queries generated by your application.
|
|
292
292
|
* @type {?object} options
|
|
293
293
|
* @property {?object} options.select
|
|
294
|
-
* @property {?object} options.
|
|
294
|
+
* @property {?object} options.except
|
|
295
295
|
* @property {?object[]} options.orderBy
|
|
296
296
|
* @property {?string[]} options.groupBy
|
|
297
297
|
* @property {?string} options.having
|
|
@@ -317,7 +317,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
317
317
|
* It returns a JSON formatted.
|
|
318
318
|
* @type {?object} options
|
|
319
319
|
* @property {?object} options.select
|
|
320
|
-
* @property {?object} options.
|
|
320
|
+
* @property {?object} options.except
|
|
321
321
|
* @property {?object[]} options.orderBy
|
|
322
322
|
* @property {?string[]} options.groupBy
|
|
323
323
|
* @property {?string} options.having
|
|
@@ -344,7 +344,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
344
344
|
* @param {string} column
|
|
345
345
|
* @type {?object} options
|
|
346
346
|
* @property {?object} options.select
|
|
347
|
-
* @property {?object} options.
|
|
347
|
+
* @property {?object} options.except
|
|
348
348
|
* @property {?object[]} options.orderBy
|
|
349
349
|
* @property {?string[]} options.groupBy
|
|
350
350
|
* @property {?string} options.having
|
|
@@ -369,7 +369,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
369
369
|
* @param {string} column
|
|
370
370
|
* @type {?object} options
|
|
371
371
|
* @property {?object} options.select
|
|
372
|
-
* @property {?object} options.
|
|
372
|
+
* @property {?object} options.except
|
|
373
373
|
* @property {?object[]} options.orderBy
|
|
374
374
|
* @property {?string[]} options.groupBy
|
|
375
375
|
* @property {?string} options.having
|
|
@@ -394,7 +394,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
394
394
|
* @param {string} column
|
|
395
395
|
* @type {?object} options
|
|
396
396
|
* @property {?object} options.select
|
|
397
|
-
* @property {?object} options.
|
|
397
|
+
* @property {?object} options.except
|
|
398
398
|
* @property {?object[]} options.orderBy
|
|
399
399
|
* @property {?string[]} options.groupBy
|
|
400
400
|
* @property {?string} options.having
|
|
@@ -419,7 +419,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
419
419
|
* @param {string} column
|
|
420
420
|
* @type {?object} options
|
|
421
421
|
* @property {?object} options.select
|
|
422
|
-
* @property {?object} options.
|
|
422
|
+
* @property {?object} options.except
|
|
423
423
|
* @property {?object[]} options.orderBy
|
|
424
424
|
* @property {?string[]} options.groupBy
|
|
425
425
|
* @property {?string} options.having
|
|
@@ -444,7 +444,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
444
444
|
* @param {string} column
|
|
445
445
|
* @type {?object} options
|
|
446
446
|
* @property {?object} options.select
|
|
447
|
-
* @property {?object} options.
|
|
447
|
+
* @property {?object} options.except
|
|
448
448
|
* @property {?object[]} options.orderBy
|
|
449
449
|
* @property {?string[]} options.groupBy
|
|
450
450
|
* @property {?string} options.having
|
|
@@ -469,7 +469,7 @@ declare class RepositoryHandler<TS extends Record<string, any> = any, TR = unkno
|
|
|
469
469
|
* @param {string} column
|
|
470
470
|
* @type {?object} options
|
|
471
471
|
* @property {?object} options.select
|
|
472
|
-
* @property {?object} options.
|
|
472
|
+
* @property {?object} options.except
|
|
473
473
|
* @property {?object[]} options.orderBy
|
|
474
474
|
* @property {?string[]} options.groupBy
|
|
475
475
|
* @property {?string} options.having
|
|
@@ -21,7 +21,7 @@ class RepositoryHandler {
|
|
|
21
21
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
22
22
|
* @type {?Object} options
|
|
23
23
|
* @property {?object} options.select
|
|
24
|
-
* @property {?object} options.
|
|
24
|
+
* @property {?object} options.except
|
|
25
25
|
* @property {?object[]} options.orderBy
|
|
26
26
|
* @property {?string[]} options.groupBy
|
|
27
27
|
* @property {?string} options.having
|
|
@@ -72,8 +72,8 @@ class RepositoryHandler {
|
|
|
72
72
|
*
|
|
73
73
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
74
74
|
* @type {?Object} options
|
|
75
|
-
|
|
76
|
-
* @property {?object} options.
|
|
75
|
+
* @property {?object} options.select
|
|
76
|
+
* @property {?object} options.except
|
|
77
77
|
* @property {?object[]} options.orderBy
|
|
78
78
|
* @property {?string[]} options.groupBy
|
|
79
79
|
* @property {?string} options.having
|
|
@@ -119,7 +119,7 @@ class RepositoryHandler {
|
|
|
119
119
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
120
120
|
* @type {?Object} options
|
|
121
121
|
* @property {?object} options.select
|
|
122
|
-
* @property {?object} options.
|
|
122
|
+
* @property {?object} options.except
|
|
123
123
|
* @property {?object[]} options.orderBy
|
|
124
124
|
* @property {?string[]} options.groupBy
|
|
125
125
|
* @property {?string} options.having
|
|
@@ -171,7 +171,7 @@ class RepositoryHandler {
|
|
|
171
171
|
* It allows you to retrieve a single record from a database table that meets the specified criteria.
|
|
172
172
|
* @type {?object} options
|
|
173
173
|
* @property {?object} options.select
|
|
174
|
-
* @property {?object} options.
|
|
174
|
+
* @property {?object} options.except
|
|
175
175
|
* @property {?object[]} options.orderBy
|
|
176
176
|
* @property {?string[]} options.groupBy
|
|
177
177
|
* @property {?string} options.having
|
|
@@ -218,7 +218,7 @@ class RepositoryHandler {
|
|
|
218
218
|
* making it easier to display data in a web application and improve user experience.
|
|
219
219
|
* @type {?object} options
|
|
220
220
|
* @property {?object} options.select
|
|
221
|
-
* @property {?object} options.
|
|
221
|
+
* @property {?object} options.except
|
|
222
222
|
* @property {?object[]} options.orderBy
|
|
223
223
|
* @property {?string[]} options.groupBy
|
|
224
224
|
* @property {?string} options.having
|
|
@@ -274,7 +274,7 @@ class RepositoryHandler {
|
|
|
274
274
|
* making it easier to display data in a web application and improve user experience
|
|
275
275
|
* @type {?object} options
|
|
276
276
|
* @property {?object} options.select
|
|
277
|
-
* @property {?object} options.
|
|
277
|
+
* @property {?object} options.except
|
|
278
278
|
* @property {?object[]} options.orderBy
|
|
279
279
|
* @property {?string[]} options.groupBy
|
|
280
280
|
* @property {?string} options.having
|
|
@@ -320,7 +320,7 @@ class RepositoryHandler {
|
|
|
320
320
|
* It returns a boolean value indicating whether there are any matching records.
|
|
321
321
|
* @type {?object} options
|
|
322
322
|
* @property {?object} options.select
|
|
323
|
-
* @property {?object} options.
|
|
323
|
+
* @property {?object} options.except
|
|
324
324
|
* @property {?object[]} options.orderBy
|
|
325
325
|
* @property {?string[]} options.groupBy
|
|
326
326
|
* @property {?string} options.having
|
|
@@ -352,7 +352,7 @@ class RepositoryHandler {
|
|
|
352
352
|
* This method is particularly useful for debugging and understanding the SQL queries generated by your application.
|
|
353
353
|
* @type {?object} options
|
|
354
354
|
* @property {?object} options.select
|
|
355
|
-
* @property {?object} options.
|
|
355
|
+
* @property {?object} options.except
|
|
356
356
|
* @property {?object[]} options.orderBy
|
|
357
357
|
* @property {?string[]} options.groupBy
|
|
358
358
|
* @property {?string} options.having
|
|
@@ -385,7 +385,7 @@ class RepositoryHandler {
|
|
|
385
385
|
* It returns a JSON formatted.
|
|
386
386
|
* @type {?object} options
|
|
387
387
|
* @property {?object} options.select
|
|
388
|
-
* @property {?object} options.
|
|
388
|
+
* @property {?object} options.except
|
|
389
389
|
* @property {?object[]} options.orderBy
|
|
390
390
|
* @property {?string[]} options.groupBy
|
|
391
391
|
* @property {?string} options.having
|
|
@@ -421,7 +421,7 @@ class RepositoryHandler {
|
|
|
421
421
|
* @param {string} column
|
|
422
422
|
* @type {?object} options
|
|
423
423
|
* @property {?object} options.select
|
|
424
|
-
* @property {?object} options.
|
|
424
|
+
* @property {?object} options.except
|
|
425
425
|
* @property {?object[]} options.orderBy
|
|
426
426
|
* @property {?string[]} options.groupBy
|
|
427
427
|
* @property {?string} options.having
|
|
@@ -455,7 +455,7 @@ class RepositoryHandler {
|
|
|
455
455
|
* @param {string} column
|
|
456
456
|
* @type {?object} options
|
|
457
457
|
* @property {?object} options.select
|
|
458
|
-
* @property {?object} options.
|
|
458
|
+
* @property {?object} options.except
|
|
459
459
|
* @property {?object[]} options.orderBy
|
|
460
460
|
* @property {?string[]} options.groupBy
|
|
461
461
|
* @property {?string} options.having
|
|
@@ -489,7 +489,7 @@ class RepositoryHandler {
|
|
|
489
489
|
* @param {string} column
|
|
490
490
|
* @type {?object} options
|
|
491
491
|
* @property {?object} options.select
|
|
492
|
-
* @property {?object} options.
|
|
492
|
+
* @property {?object} options.except
|
|
493
493
|
* @property {?object[]} options.orderBy
|
|
494
494
|
* @property {?string[]} options.groupBy
|
|
495
495
|
* @property {?string} options.having
|
|
@@ -523,7 +523,7 @@ class RepositoryHandler {
|
|
|
523
523
|
* @param {string} column
|
|
524
524
|
* @type {?object} options
|
|
525
525
|
* @property {?object} options.select
|
|
526
|
-
* @property {?object} options.
|
|
526
|
+
* @property {?object} options.except
|
|
527
527
|
* @property {?object[]} options.orderBy
|
|
528
528
|
* @property {?string[]} options.groupBy
|
|
529
529
|
* @property {?string} options.having
|
|
@@ -557,7 +557,7 @@ class RepositoryHandler {
|
|
|
557
557
|
* @param {string} column
|
|
558
558
|
* @type {?object} options
|
|
559
559
|
* @property {?object} options.select
|
|
560
|
-
* @property {?object} options.
|
|
560
|
+
* @property {?object} options.except
|
|
561
561
|
* @property {?object[]} options.orderBy
|
|
562
562
|
* @property {?string[]} options.groupBy
|
|
563
563
|
* @property {?string} options.having
|
|
@@ -591,7 +591,7 @@ class RepositoryHandler {
|
|
|
591
591
|
* @param {string} column
|
|
592
592
|
* @type {?object} options
|
|
593
593
|
* @property {?object} options.select
|
|
594
|
-
* @property {?object} options.
|
|
594
|
+
* @property {?object} options.except
|
|
595
595
|
* @property {?object[]} options.orderBy
|
|
596
596
|
* @property {?string[]} options.groupBy
|
|
597
597
|
* @property {?string} options.having
|
|
@@ -1000,7 +1000,7 @@ class RepositoryHandler {
|
|
|
1000
1000
|
return yield instance.deleteMany();
|
|
1001
1001
|
});
|
|
1002
1002
|
}
|
|
1003
|
-
_handleRelationQuery({ instance, name, options }) {
|
|
1003
|
+
_handleRelationQuery({ instance, name, options, exists }) {
|
|
1004
1004
|
const cbRelation = instance.findWithQuery(name);
|
|
1005
1005
|
if (cbRelation == null)
|
|
1006
1006
|
return null;
|
|
@@ -1010,28 +1010,43 @@ class RepositoryHandler {
|
|
|
1010
1010
|
});
|
|
1011
1011
|
if (instanceRelation == null)
|
|
1012
1012
|
return null;
|
|
1013
|
-
|
|
1013
|
+
if (exists) {
|
|
1014
|
+
instance.relationQueryExists(name, () => instanceRelation);
|
|
1015
|
+
}
|
|
1016
|
+
else {
|
|
1017
|
+
instance.relationQuery(name, () => instanceRelation);
|
|
1018
|
+
}
|
|
1014
1019
|
return cbRelation;
|
|
1015
1020
|
}
|
|
1016
1021
|
const instanceRelation = this._handlerRequest(Object.assign(Object.assign({}, options), { instance: cbRelation }));
|
|
1017
1022
|
if (instanceRelation == null)
|
|
1018
1023
|
return null;
|
|
1019
|
-
|
|
1024
|
+
if (exists) {
|
|
1025
|
+
instance.relationQueryExists(name, () => instanceRelation);
|
|
1026
|
+
}
|
|
1027
|
+
else {
|
|
1028
|
+
instance.relationQuery(name, () => instanceRelation);
|
|
1029
|
+
}
|
|
1020
1030
|
return cbRelation;
|
|
1021
1031
|
}
|
|
1022
1032
|
_handlerRequest(options) {
|
|
1023
|
-
let { cache, select,
|
|
1033
|
+
let { cache, select, except, join, leftJoin, rightJoin, where, whereRaw, whereQuery, groupBy, having, orderBy, limit, offset, relations, relationsExists, when, instance } = options;
|
|
1024
1034
|
instance = (instance == null ? new this._model() : instance);
|
|
1025
1035
|
if (relations != null) {
|
|
1026
1036
|
const filterRelations = [];
|
|
1027
1037
|
for (const name in relations) {
|
|
1028
1038
|
const value = relations[name];
|
|
1029
|
-
if (typeof value === 'boolean') {
|
|
1030
|
-
|
|
1031
|
-
filterRelations.push(name);
|
|
1032
|
-
}
|
|
1039
|
+
if (typeof value === 'boolean' && value) {
|
|
1040
|
+
filterRelations.push(name);
|
|
1033
1041
|
continue;
|
|
1034
1042
|
}
|
|
1043
|
+
const cbRelation = this._handleRelationQuery({
|
|
1044
|
+
instance,
|
|
1045
|
+
name,
|
|
1046
|
+
options: { relations: value }
|
|
1047
|
+
});
|
|
1048
|
+
if (cbRelation == null)
|
|
1049
|
+
continue;
|
|
1035
1050
|
this._handleRelationQuery({
|
|
1036
1051
|
instance,
|
|
1037
1052
|
name,
|
|
@@ -1044,17 +1059,26 @@ class RepositoryHandler {
|
|
|
1044
1059
|
const filterRelations = [];
|
|
1045
1060
|
for (const name in relationsExists) {
|
|
1046
1061
|
const value = relationsExists[name];
|
|
1047
|
-
if (typeof value === 'boolean') {
|
|
1048
|
-
|
|
1049
|
-
filterRelations.push(name);
|
|
1050
|
-
}
|
|
1062
|
+
if (typeof value === 'boolean' && value) {
|
|
1063
|
+
filterRelations.push(name);
|
|
1051
1064
|
continue;
|
|
1052
1065
|
}
|
|
1066
|
+
const cbRelation = this._handleRelationQuery({
|
|
1067
|
+
instance,
|
|
1068
|
+
name,
|
|
1069
|
+
options: { relationsExists: value },
|
|
1070
|
+
exists: true
|
|
1071
|
+
});
|
|
1072
|
+
if (cbRelation == null)
|
|
1073
|
+
continue;
|
|
1074
|
+
// console.log('hi!')
|
|
1053
1075
|
this._handleRelationQuery({
|
|
1054
1076
|
instance,
|
|
1055
1077
|
name,
|
|
1056
|
-
options: value
|
|
1078
|
+
options: value,
|
|
1079
|
+
exists: true
|
|
1057
1080
|
});
|
|
1081
|
+
// filterRelations.push(name)
|
|
1058
1082
|
}
|
|
1059
1083
|
instance.relationsExists(...filterRelations);
|
|
1060
1084
|
}
|
|
@@ -1079,30 +1103,28 @@ class RepositoryHandler {
|
|
|
1079
1103
|
name: column,
|
|
1080
1104
|
options: { select: value }
|
|
1081
1105
|
});
|
|
1082
|
-
if (cbRelation
|
|
1083
|
-
selects.push(column);
|
|
1106
|
+
if (cbRelation != null)
|
|
1084
1107
|
continue;
|
|
1085
|
-
|
|
1108
|
+
selects.push(column);
|
|
1086
1109
|
}
|
|
1087
1110
|
instance.select(...selects);
|
|
1088
1111
|
}
|
|
1089
1112
|
}
|
|
1090
|
-
if (
|
|
1091
|
-
const
|
|
1092
|
-
for (const column in
|
|
1113
|
+
if (except != null) {
|
|
1114
|
+
const excepts = [];
|
|
1115
|
+
for (const column in except) {
|
|
1093
1116
|
//@ts-ignore
|
|
1094
|
-
const value =
|
|
1117
|
+
const value = except[column];
|
|
1095
1118
|
const cbRelation = this._handleRelationQuery({
|
|
1096
1119
|
instance,
|
|
1097
1120
|
name: column,
|
|
1098
|
-
options: {
|
|
1121
|
+
options: { except: value }
|
|
1099
1122
|
});
|
|
1100
|
-
if (cbRelation
|
|
1101
|
-
omits.push(column);
|
|
1123
|
+
if (cbRelation != null)
|
|
1102
1124
|
continue;
|
|
1103
|
-
|
|
1125
|
+
excepts.push(column);
|
|
1104
1126
|
}
|
|
1105
|
-
instance.except(...
|
|
1127
|
+
instance.except(...excepts);
|
|
1106
1128
|
}
|
|
1107
1129
|
if (join != null) {
|
|
1108
1130
|
for (const v of join) {
|
|
@@ -1128,9 +1150,8 @@ class RepositoryHandler {
|
|
|
1128
1150
|
name: column,
|
|
1129
1151
|
options: { where: value }
|
|
1130
1152
|
});
|
|
1131
|
-
if (cbRelation == null)
|
|
1153
|
+
if (cbRelation == null)
|
|
1132
1154
|
continue;
|
|
1133
|
-
}
|
|
1134
1155
|
//@ts-ignore
|
|
1135
1156
|
delete where[column];
|
|
1136
1157
|
}
|
|
@@ -1155,8 +1176,15 @@ class RepositoryHandler {
|
|
|
1155
1176
|
if (orderBy != null) {
|
|
1156
1177
|
for (const column in orderBy) {
|
|
1157
1178
|
//@ts-ignore
|
|
1158
|
-
const
|
|
1159
|
-
|
|
1179
|
+
const value = orderBy[column];
|
|
1180
|
+
const cbRelation = this._handleRelationQuery({
|
|
1181
|
+
instance,
|
|
1182
|
+
name: column,
|
|
1183
|
+
options: { orderBy: value }
|
|
1184
|
+
});
|
|
1185
|
+
if (cbRelation != null)
|
|
1186
|
+
continue;
|
|
1187
|
+
instance.orderBy(column, value);
|
|
1160
1188
|
}
|
|
1161
1189
|
}
|
|
1162
1190
|
if (limit != null) {
|