@spinajs/orm 1.0.60 → 1.2.26
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 +11 -2
- package/lib/builders.d.ts +30 -23
- package/lib/builders.js +67 -193
- package/lib/builders.js.map +1 -1
- package/lib/decorators.d.ts +18 -19
- package/lib/decorators.js +21 -21
- package/lib/decorators.js.map +1 -1
- package/lib/driver.d.ts +8 -9
- package/lib/driver.js +5 -20
- package/lib/driver.js.map +1 -1
- package/lib/exceptions.d.ts +6 -0
- package/lib/exceptions.js +11 -0
- package/lib/exceptions.js.map +1 -0
- package/lib/helpers.js +2 -2
- package/lib/helpers.js.map +1 -1
- package/lib/hydrators.d.ts +4 -4
- package/lib/hydrators.js +6 -6
- package/lib/hydrators.js.map +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.js +1 -2
- package/lib/index.js.map +1 -1
- package/lib/interfaces.d.ts +19 -27
- package/lib/interfaces.js +14 -14
- package/lib/interfaces.js.map +1 -1
- package/lib/model.d.ts +55 -53
- package/lib/model.js +132 -149
- package/lib/model.js.map +1 -1
- package/lib/orm.d.ts +9 -9
- package/lib/orm.js +66 -40
- package/lib/orm.js.map +1 -1
- package/lib/relations.d.ts +14 -13
- package/lib/relations.js +60 -81
- package/lib/relations.js.map +1 -1
- package/lib/statements.d.ts +1 -1
- package/lib/statements.js +19 -21
- package/lib/statements.js.map +1 -1
- package/lib/wrappers.d.ts +1 -1
- package/lib/wrappers.js.map +1 -1
- package/package.json +37 -61
- package/LICENSE +0 -674
package/lib/model.js
CHANGED
|
@@ -1,25 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
3
|
exports.MODEL_STATIC_MIXINS = exports.ModelBase = exports.extractModelDescriptor = void 0;
|
|
4
|
+
/* eslint-disable prettier/prettier */
|
|
23
5
|
const relations_1 = require("./relations");
|
|
24
6
|
const decorators_1 = require("./decorators");
|
|
25
7
|
const interfaces_1 = require("./interfaces");
|
|
@@ -27,10 +9,11 @@ const builders_1 = require("./builders");
|
|
|
27
9
|
const di_1 = require("@spinajs/di");
|
|
28
10
|
const orm_1 = require("./orm");
|
|
29
11
|
const hydrators_1 = require("./hydrators");
|
|
30
|
-
const _ =
|
|
12
|
+
const _ = require("lodash");
|
|
31
13
|
const uuid_1 = require("uuid");
|
|
14
|
+
const exceptions_1 = require("./exceptions");
|
|
32
15
|
function extractModelDescriptor(targetOrForward) {
|
|
33
|
-
const target = !di_1.isConstructor(targetOrForward) && targetOrForward ? targetOrForward() : targetOrForward;
|
|
16
|
+
const target = !(0, di_1.isConstructor)(targetOrForward) && targetOrForward ? targetOrForward() : targetOrForward;
|
|
34
17
|
if (!target) {
|
|
35
18
|
return null;
|
|
36
19
|
}
|
|
@@ -82,51 +65,63 @@ class ModelBase {
|
|
|
82
65
|
throw Error('Not implemented');
|
|
83
66
|
}
|
|
84
67
|
/**
|
|
85
|
-
* Inserts data to DB
|
|
68
|
+
* Inserts data to DB.
|
|
86
69
|
*
|
|
87
|
-
* @param _data data to insert
|
|
70
|
+
* @param _data - data to insert
|
|
88
71
|
*/
|
|
89
72
|
static insert(_data) {
|
|
90
73
|
throw Error('Not implemented');
|
|
91
74
|
}
|
|
92
75
|
/**
|
|
93
|
-
*
|
|
76
|
+
* Search entities in db
|
|
94
77
|
*
|
|
95
|
-
* @param
|
|
78
|
+
* @param column - column to search or function
|
|
79
|
+
* @param operator - boolean operator
|
|
80
|
+
* @param value - value to compare
|
|
96
81
|
*/
|
|
97
|
-
static
|
|
82
|
+
static where(_column, _operator, _value) {
|
|
98
83
|
throw Error('Not implemented');
|
|
99
84
|
}
|
|
100
85
|
/**
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
* @param column column to search or function
|
|
104
|
-
* @param operator boolean operator
|
|
105
|
-
* @param value value to compare
|
|
86
|
+
* Updates single or multiple records at once with provided value based on condition
|
|
106
87
|
*
|
|
107
|
-
* @
|
|
88
|
+
* @param _data - data to set
|
|
108
89
|
*/
|
|
109
|
-
static
|
|
90
|
+
static update(_data) {
|
|
110
91
|
throw Error('Not implemented');
|
|
111
92
|
}
|
|
112
93
|
/**
|
|
113
|
-
*
|
|
94
|
+
* Tries to find all models with given primary keys
|
|
95
|
+
*/
|
|
96
|
+
static find(_pks) {
|
|
97
|
+
throw Error('Not implemented');
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Tries to find all models in db. If not all exists, throws exception
|
|
101
|
+
*/
|
|
102
|
+
static findOrFail(_pks) {
|
|
103
|
+
throw Error('Not implemented');
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* gets model by specified pk, if not exists, returns null
|
|
114
107
|
*
|
|
115
|
-
* @param _data data to set
|
|
116
108
|
*/
|
|
117
|
-
static
|
|
109
|
+
static get(_pk) {
|
|
118
110
|
throw Error('Not implemented');
|
|
119
111
|
}
|
|
120
|
-
|
|
121
|
-
|
|
112
|
+
/**
|
|
113
|
+
* Finds model by specified pk. If model not exists in db throws exception
|
|
114
|
+
*
|
|
115
|
+
*/
|
|
116
|
+
static getOrFail(_pk) {
|
|
122
117
|
throw Error('Not implemented');
|
|
123
118
|
}
|
|
124
119
|
/**
|
|
125
|
-
* Finds model by specified pk
|
|
126
120
|
*
|
|
127
|
-
*
|
|
121
|
+
* Checks if model with pk key or unique fields exists and if not creates one AND NOT save in db
|
|
122
|
+
* NOTE: it checks for unique fields constraint
|
|
128
123
|
*/
|
|
129
|
-
static
|
|
124
|
+
static getOrNew(_pk, _data) {
|
|
130
125
|
throw Error('Not implemented');
|
|
131
126
|
}
|
|
132
127
|
/**
|
|
@@ -141,34 +136,29 @@ class ModelBase {
|
|
|
141
136
|
* Checks if model with pk key / unique fields exists and if not creates one and saves to db
|
|
142
137
|
* NOTE: it checks for unique fields too.
|
|
143
138
|
*
|
|
144
|
-
* @param
|
|
139
|
+
* @param data - model width data to check
|
|
145
140
|
*/
|
|
146
|
-
static
|
|
141
|
+
static getOrCreate(_pk, _data) {
|
|
147
142
|
throw Error('Not implemented');
|
|
148
143
|
}
|
|
149
144
|
/**
|
|
150
145
|
* Creates new model & saves is to db
|
|
151
146
|
*
|
|
152
|
-
* @param
|
|
147
|
+
* @param data - initial model data
|
|
153
148
|
*/
|
|
154
149
|
static create(_data) {
|
|
155
150
|
throw Error('Not implemented');
|
|
156
151
|
}
|
|
157
152
|
/**
|
|
153
|
+
* Deletes model from db
|
|
158
154
|
*
|
|
159
|
-
*
|
|
160
|
-
* NOTE: it checks for unique fields constraint
|
|
161
|
-
*
|
|
162
|
-
* @param {any} data - model to check
|
|
155
|
+
* @param pk - primary key
|
|
163
156
|
*/
|
|
164
|
-
static firstOrNew(_data) {
|
|
165
|
-
throw Error('Not implemented');
|
|
166
|
-
}
|
|
167
157
|
static destroy(_pk) {
|
|
168
158
|
throw Error('Not implemented');
|
|
169
159
|
}
|
|
170
160
|
constructor(data) {
|
|
171
|
-
this.
|
|
161
|
+
this.setDefaults();
|
|
172
162
|
if (data) {
|
|
173
163
|
Object.assign(this, data);
|
|
174
164
|
}
|
|
@@ -176,10 +166,10 @@ class ModelBase {
|
|
|
176
166
|
/**
|
|
177
167
|
* Fills model with data. It only fills properties that exists in database
|
|
178
168
|
*
|
|
179
|
-
* @param data data to fill
|
|
169
|
+
* @param data - data to fill
|
|
180
170
|
*/
|
|
181
171
|
hydrate(data) {
|
|
182
|
-
di_1.DI.resolve(Array.ofType(hydrators_1.ModelHydrator)).forEach(h => h.hydrate(this, data));
|
|
172
|
+
di_1.DI.resolve(Array.ofType(hydrators_1.ModelHydrator)).forEach((h) => h.hydrate(this, data));
|
|
183
173
|
}
|
|
184
174
|
/**
|
|
185
175
|
* Extracts all data from model. It takes only properties that exists in DB
|
|
@@ -187,8 +177,11 @@ class ModelBase {
|
|
|
187
177
|
dehydrate() {
|
|
188
178
|
var _a;
|
|
189
179
|
const obj = {};
|
|
190
|
-
(_a = this.ModelDescriptor.Columns) === null || _a === void 0 ? void 0 : _a.forEach(c => {
|
|
180
|
+
(_a = this.ModelDescriptor.Columns) === null || _a === void 0 ? void 0 : _a.forEach((c) => {
|
|
191
181
|
const val = this[c.Name];
|
|
182
|
+
if (!c.Nullable && (val === null || val === undefined || val === '')) {
|
|
183
|
+
throw new exceptions_1.OrmException(`Field ${c.Name} cannot be null`);
|
|
184
|
+
}
|
|
192
185
|
obj[c.Name] = c.Converter ? c.Converter.toDB(val) : val;
|
|
193
186
|
});
|
|
194
187
|
for (const [, val] of this.ModelDescriptor.Relations) {
|
|
@@ -209,62 +202,60 @@ class ModelBase {
|
|
|
209
202
|
}
|
|
210
203
|
await this.constructor.destroy(this.PrimaryKeyValue);
|
|
211
204
|
}
|
|
205
|
+
async update() {
|
|
206
|
+
const { query } = _createQuery(this.constructor, builders_1.UpdateQueryBuilder);
|
|
207
|
+
if (this.ModelDescriptor.Timestamps.UpdatedAt) {
|
|
208
|
+
this[this.ModelDescriptor.Timestamps.UpdatedAt] = new Date();
|
|
209
|
+
}
|
|
210
|
+
await query.update(this.dehydrate()).where(this.PrimaryKeyName, this.PrimaryKeyValue);
|
|
211
|
+
}
|
|
212
212
|
/**
|
|
213
213
|
* Save all changes to db. It creates new entry id db or updates existing one if
|
|
214
214
|
* primary key exists
|
|
215
215
|
*/
|
|
216
|
-
async
|
|
216
|
+
async insert(insertBehaviour = interfaces_1.InsertBehaviour.None) {
|
|
217
217
|
const self = this;
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
218
|
+
const { query, description } = _createQuery(this.constructor, builders_1.InsertQueryBuilder);
|
|
219
|
+
switch (insertBehaviour) {
|
|
220
|
+
case interfaces_1.InsertBehaviour.OnDuplicateIgnore:
|
|
221
|
+
query.ignore();
|
|
222
|
+
break;
|
|
223
|
+
case interfaces_1.InsertBehaviour.OnDuplicateUpdate:
|
|
224
|
+
query.onDuplicate().update(description.Columns.filter((c) => !c.PrimaryKey).map((c) => c.Name));
|
|
225
|
+
break;
|
|
226
|
+
}
|
|
227
|
+
const id = await query.values(this.dehydrate());
|
|
228
|
+
// ignore fired, we dont have insert ID
|
|
229
|
+
if (insertBehaviour !== interfaces_1.InsertBehaviour.None && id === 0 && !this.PrimaryKeyValue) {
|
|
230
|
+
const { query, description } = _createQuery(this.constructor, builders_1.SelectQueryBuilder, false);
|
|
231
|
+
const idRes = await query
|
|
232
|
+
.columns([this.PrimaryKeyName])
|
|
233
|
+
.where(function () {
|
|
234
|
+
description.Columns.filter((c) => c.Unique).forEach((c) => {
|
|
235
|
+
this.where(c, self[c.Name]);
|
|
236
|
+
});
|
|
237
|
+
})
|
|
238
|
+
.first();
|
|
239
|
+
this.PrimaryKeyValue = idRes[this.PrimaryKeyName];
|
|
224
240
|
}
|
|
225
241
|
else {
|
|
226
|
-
|
|
227
|
-
switch (insertBehaviour) {
|
|
228
|
-
case interfaces_1.InsertBehaviour.OnDuplicateIgnore:
|
|
229
|
-
query.ignore();
|
|
230
|
-
break;
|
|
231
|
-
case interfaces_1.InsertBehaviour.OnDuplicateUpdate:
|
|
232
|
-
query.onDuplicate().update(description.Columns.filter(c => !c.PrimaryKey).map(c => c.Name));
|
|
233
|
-
break;
|
|
234
|
-
}
|
|
235
|
-
const id = await query.values(this.dehydrate());
|
|
236
|
-
// ignore fired, we dont have insert ID
|
|
237
|
-
if (insertBehaviour !== interfaces_1.InsertBehaviour.None && id === 0 && !this.PrimaryKeyValue) {
|
|
238
|
-
const { query, description } = _createQuery(this.constructor, builders_1.SelectQueryBuilder, false);
|
|
239
|
-
const idRes = await query
|
|
240
|
-
.columns([this.PrimaryKeyName])
|
|
241
|
-
.where(function () {
|
|
242
|
-
description.Columns.filter(c => c.Unique).forEach(c => {
|
|
243
|
-
this.where(c, self[c.Name]);
|
|
244
|
-
});
|
|
245
|
-
})
|
|
246
|
-
.first();
|
|
247
|
-
this.PrimaryKeyValue = idRes[this.PrimaryKeyName];
|
|
248
|
-
}
|
|
249
|
-
else {
|
|
250
|
-
this.PrimaryKeyValue = id;
|
|
251
|
-
}
|
|
242
|
+
this.PrimaryKeyValue = id;
|
|
252
243
|
}
|
|
253
244
|
}
|
|
254
245
|
/**
|
|
255
246
|
* Gets model data from database and returns as fresh instance.
|
|
256
247
|
*/
|
|
257
248
|
async fresh() {
|
|
258
|
-
return this.constructor.
|
|
249
|
+
return this.constructor.get(this.PrimaryKeyValue);
|
|
259
250
|
}
|
|
260
251
|
/**
|
|
261
252
|
* sets default values for model. values are taken from DB default column prop
|
|
262
253
|
*/
|
|
263
|
-
|
|
254
|
+
setDefaults() {
|
|
264
255
|
var _a;
|
|
265
|
-
(_a = this.ModelDescriptor.Columns) === null || _a === void 0 ? void 0 : _a.forEach(c => {
|
|
256
|
+
(_a = this.ModelDescriptor.Columns) === null || _a === void 0 ? void 0 : _a.forEach((c) => {
|
|
266
257
|
if (c.Uuid) {
|
|
267
|
-
this[c.Name] = uuid_1.v4();
|
|
258
|
+
this[c.Name] = (0, uuid_1.v4)();
|
|
268
259
|
}
|
|
269
260
|
else {
|
|
270
261
|
this[c.Name] = c.DefaultValue;
|
|
@@ -329,31 +320,32 @@ exports.MODEL_STATIC_MIXINS = {
|
|
|
329
320
|
},
|
|
330
321
|
all(page, perPage) {
|
|
331
322
|
const { query } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
332
|
-
query.select(
|
|
323
|
+
query.select('*');
|
|
333
324
|
if (page >= 0 && perPage > 0) {
|
|
334
325
|
query.take(perPage).skip(page * perPage);
|
|
335
326
|
}
|
|
336
327
|
return query;
|
|
337
328
|
},
|
|
338
|
-
insertBulk(data) {
|
|
339
|
-
const { query } = _createQuery(this, builders_1.InsertQueryBuilder);
|
|
340
|
-
return query.values(data.map(d => {
|
|
341
|
-
if (d instanceof ModelBase) {
|
|
342
|
-
return d.dehydrate();
|
|
343
|
-
}
|
|
344
|
-
return d;
|
|
345
|
-
}));
|
|
346
|
-
},
|
|
347
329
|
/**
|
|
348
330
|
* Try to insert new value
|
|
349
331
|
*/
|
|
350
332
|
insert(data) {
|
|
351
333
|
const { query } = _createQuery(this, builders_1.InsertQueryBuilder);
|
|
352
|
-
if (data
|
|
353
|
-
query.values(data.
|
|
334
|
+
if (Array.isArray(data)) {
|
|
335
|
+
query.values(data.map((d) => {
|
|
336
|
+
if (d instanceof ModelBase) {
|
|
337
|
+
return d.dehydrate();
|
|
338
|
+
}
|
|
339
|
+
return d;
|
|
340
|
+
}));
|
|
354
341
|
}
|
|
355
342
|
else {
|
|
356
|
-
|
|
343
|
+
if (data instanceof ModelBase) {
|
|
344
|
+
query.values(data.dehydrate());
|
|
345
|
+
}
|
|
346
|
+
else {
|
|
347
|
+
query.values(data);
|
|
348
|
+
}
|
|
357
349
|
}
|
|
358
350
|
return query;
|
|
359
351
|
},
|
|
@@ -361,7 +353,8 @@ exports.MODEL_STATIC_MIXINS = {
|
|
|
361
353
|
const { query, description } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
362
354
|
const pkey = description.PrimaryKey;
|
|
363
355
|
query.select('*');
|
|
364
|
-
|
|
356
|
+
query.whereIn(pkey, pks);
|
|
357
|
+
return await query;
|
|
365
358
|
},
|
|
366
359
|
async findOrFail(pks) {
|
|
367
360
|
const { query, description } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
@@ -380,80 +373,70 @@ exports.MODEL_STATIC_MIXINS = {
|
|
|
380
373
|
async afterHydration(_data) { },
|
|
381
374
|
};
|
|
382
375
|
query.select('*');
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
return await query;
|
|
387
|
-
}
|
|
388
|
-
else {
|
|
389
|
-
return await query.where(pkey, pks).firstOrFail();
|
|
390
|
-
}
|
|
376
|
+
query.whereIn(pkey, pks);
|
|
377
|
+
query.middleware(middleware);
|
|
378
|
+
return await query;
|
|
391
379
|
},
|
|
392
|
-
|
|
393
|
-
|
|
380
|
+
async get(pk) {
|
|
381
|
+
const { query, description } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
382
|
+
const pkey = description.PrimaryKey;
|
|
383
|
+
query.select('*');
|
|
384
|
+
query.where(pkey, pk);
|
|
385
|
+
return await query.first();
|
|
386
|
+
},
|
|
387
|
+
async getOrFail(pk) {
|
|
388
|
+
const { query, description } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
389
|
+
const pkey = description.PrimaryKey;
|
|
390
|
+
query.select('*');
|
|
391
|
+
query.where(pkey, pk);
|
|
392
|
+
return await query.firstOrFail();
|
|
393
|
+
},
|
|
394
|
+
async destroy(pks) {
|
|
395
|
+
var _a;
|
|
394
396
|
const description = _descriptor(this);
|
|
395
397
|
const orm = di_1.DI.get(orm_1.Orm);
|
|
396
398
|
const driver = orm.Connections.get(description.Connection);
|
|
397
399
|
const converter = driver.Container.resolve(interfaces_1.DatetimeValueConverter);
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
const { query } = _createQuery(this, builders_1.UpdateQueryBuilder);
|
|
401
|
-
query.update({
|
|
402
|
-
[description.SoftDelete.DeletedAt]: converter.toDB(new Date()),
|
|
403
|
-
});
|
|
404
|
-
return query;
|
|
405
|
-
}
|
|
406
|
-
else {
|
|
407
|
-
const { query } = _createQuery(this, builders_1.DeleteQueryBuilder);
|
|
408
|
-
return query;
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
if ((_b = description.SoftDelete) === null || _b === void 0 ? void 0 : _b.DeletedAt) {
|
|
412
|
-
const data = Array.isArray(pks) ? pks : [pks];
|
|
400
|
+
const data = Array.isArray(pks) ? pks : [pks];
|
|
401
|
+
if ((_a = description.SoftDelete) === null || _a === void 0 ? void 0 : _a.DeletedAt) {
|
|
413
402
|
const { query } = _createQuery(this, builders_1.UpdateQueryBuilder);
|
|
414
|
-
|
|
415
|
-
.whereIn(description.PrimaryKey, data)
|
|
416
|
-
.update({
|
|
403
|
+
await query.whereIn(description.PrimaryKey, data).update({
|
|
417
404
|
[description.SoftDelete.DeletedAt]: converter.toDB(new Date()),
|
|
418
405
|
});
|
|
419
406
|
}
|
|
420
407
|
else {
|
|
421
408
|
const { query } = _createQuery(this, builders_1.DeleteQueryBuilder);
|
|
422
|
-
|
|
409
|
+
await query.whereIn(description.PrimaryKey, data);
|
|
423
410
|
}
|
|
424
411
|
},
|
|
425
412
|
async create(data) {
|
|
426
413
|
const entity = new (Function.prototype.bind.apply(this))(data);
|
|
427
|
-
await entity.
|
|
414
|
+
await entity.insert();
|
|
428
415
|
return entity;
|
|
429
416
|
},
|
|
430
|
-
async
|
|
417
|
+
async getOrCreate(pk, data) {
|
|
431
418
|
const { query, description } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
432
419
|
// pk constrain
|
|
433
|
-
|
|
434
|
-
query.where(description.PrimaryKey, data[description.PrimaryKey]);
|
|
435
|
-
}
|
|
420
|
+
query.where(description.PrimaryKey, pk);
|
|
436
421
|
// check for all unique columns ( unique constrain )
|
|
437
|
-
description.Columns.filter(c => c.Unique).forEach(c => {
|
|
438
|
-
query.
|
|
422
|
+
description.Columns.filter((c) => c.Unique).forEach((c) => {
|
|
423
|
+
query.andWhere(c, data[c.Name]);
|
|
439
424
|
});
|
|
440
425
|
let entity = (await query.first());
|
|
441
426
|
if (!entity) {
|
|
442
427
|
entity = new (Function.prototype.bind.apply(this))(data);
|
|
443
|
-
await entity.
|
|
428
|
+
await entity.insert();
|
|
444
429
|
return entity;
|
|
445
430
|
}
|
|
446
431
|
return entity;
|
|
447
432
|
},
|
|
448
|
-
async
|
|
433
|
+
async getOrNew(pk, data) {
|
|
449
434
|
const { query, description } = _createQuery(this, builders_1.SelectQueryBuilder);
|
|
450
435
|
// pk constrain
|
|
451
|
-
|
|
452
|
-
query.where(description.PrimaryKey, data[description.PrimaryKey]);
|
|
453
|
-
}
|
|
436
|
+
query.where(description.PrimaryKey, pk);
|
|
454
437
|
// check for all unique columns ( unique constrain )
|
|
455
|
-
description.Columns.filter(c => c.Unique).forEach(c => {
|
|
456
|
-
query.
|
|
438
|
+
description.Columns.filter((c) => c.Unique).forEach((c) => {
|
|
439
|
+
query.andWhere(c, data[c.Name]);
|
|
457
440
|
});
|
|
458
441
|
let entity = (await query.first());
|
|
459
442
|
if (!entity) {
|
package/lib/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/lib/orm.d.ts
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import { Configuration } from '@spinajs/configuration';
|
|
2
|
-
import { AsyncModule,
|
|
2
|
+
import { AsyncModule, Container, Class } from '@spinajs/di';
|
|
3
3
|
import { Log } from '@spinajs/log';
|
|
4
4
|
import { ClassInfo } from '@spinajs/reflection';
|
|
5
5
|
import { OrmMigration } from './interfaces';
|
|
6
6
|
import { ModelBase } from './model';
|
|
7
7
|
import { OrmDriver } from './driver';
|
|
8
8
|
export declare class Orm extends AsyncModule {
|
|
9
|
-
Models: Array<ClassInfo<ModelBase
|
|
9
|
+
Models: Array<ClassInfo<ModelBase>>;
|
|
10
10
|
Migrations: Array<ClassInfo<OrmMigration>>;
|
|
11
11
|
Connections: Map<string, OrmDriver>;
|
|
12
|
-
Container:
|
|
12
|
+
Container: Container;
|
|
13
13
|
protected Log: Log;
|
|
14
14
|
protected Configuration: Configuration;
|
|
15
15
|
/**
|
|
16
16
|
*
|
|
17
17
|
* Migrates schema up ( fill function is not executed )
|
|
18
18
|
*
|
|
19
|
-
* @param name migration file name
|
|
19
|
+
* @param name - migration file name
|
|
20
20
|
*/
|
|
21
21
|
migrateUp(name?: string): Promise<void>;
|
|
22
22
|
/**
|
|
23
23
|
*
|
|
24
24
|
* Migrates schema up ( fill function is not executed )
|
|
25
25
|
*
|
|
26
|
-
* @param name migration file name
|
|
26
|
+
* @param name - migration file name
|
|
27
27
|
*/
|
|
28
28
|
migrateDown(name?: string): Promise<void>;
|
|
29
29
|
/**
|
|
@@ -31,7 +31,7 @@ export declare class Orm extends AsyncModule {
|
|
|
31
31
|
* ORM always try to load table at resolve time
|
|
32
32
|
*/
|
|
33
33
|
reloadTableInfo(): Promise<void>;
|
|
34
|
-
resolveAsync(
|
|
34
|
+
resolveAsync(): Promise<void>;
|
|
35
35
|
/**
|
|
36
36
|
*
|
|
37
37
|
* Register model to ORM programatically so ORM can see it and use it. Sometimes dynamical model discovery is not possible eg.
|
|
@@ -39,9 +39,9 @@ export declare class Orm extends AsyncModule {
|
|
|
39
39
|
*
|
|
40
40
|
* NOTE: use it in ORM constructor before ORM is resolved & model list used.
|
|
41
41
|
*
|
|
42
|
-
* @param model model to register
|
|
42
|
+
* @param model - model to register
|
|
43
43
|
*/
|
|
44
|
-
protected registerModel<T extends ModelBase
|
|
44
|
+
protected registerModel<T extends ModelBase>(model: Class<T>): void;
|
|
45
45
|
/**
|
|
46
46
|
*
|
|
47
47
|
* Register migration to ORM programatically so ORM can see it and use it. Sometimes dynamical migration discovery is not possible eg.
|
|
@@ -49,7 +49,7 @@ export declare class Orm extends AsyncModule {
|
|
|
49
49
|
*
|
|
50
50
|
* NOTE: use it in ORM constructor before ORM is resolved & migrate function used.
|
|
51
51
|
*
|
|
52
|
-
* @param model model to register
|
|
52
|
+
* @param model - model to register
|
|
53
53
|
*/
|
|
54
54
|
protected registerMigration<T extends OrmMigration>(migration: Class<T>): void;
|
|
55
55
|
private createConnections;
|