@spinajs/orm-sql 2.0.45 → 2.0.48

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.
Files changed (79) hide show
  1. package/README.md +11 -11
  2. package/lib/builders.d.ts +1 -2
  3. package/lib/builders.d.ts.map +1 -0
  4. package/lib/builders.js +7 -10
  5. package/lib/builders.js.map +1 -1
  6. package/lib/compilers.d.ts +1 -0
  7. package/lib/compilers.d.ts.map +1 -0
  8. package/lib/compilers.js +138 -146
  9. package/lib/compilers.js.map +1 -1
  10. package/lib/converters.d.ts +1 -0
  11. package/lib/converters.d.ts.map +1 -0
  12. package/lib/converters.js +9 -14
  13. package/lib/converters.js.map +1 -1
  14. package/lib/index.d.ts +3 -2
  15. package/lib/index.d.ts.map +1 -0
  16. package/lib/index.js +47 -65
  17. package/lib/index.js.map +1 -1
  18. package/lib/statements.d.ts +1 -0
  19. package/lib/statements.d.ts.map +1 -0
  20. package/lib/statements.js +45 -51
  21. package/lib/statements.js.map +1 -1
  22. package/package.json +53 -50
  23. package/lib/orm/src/builders.d.ts +0 -636
  24. package/lib/orm/src/builders.js +0 -1509
  25. package/lib/orm/src/builders.js.map +0 -1
  26. package/lib/orm/src/converters.d.ts +0 -14
  27. package/lib/orm/src/converters.js +0 -57
  28. package/lib/orm/src/converters.js.map +0 -1
  29. package/lib/orm/src/decorators.d.ts +0 -152
  30. package/lib/orm/src/decorators.js +0 -454
  31. package/lib/orm/src/decorators.js.map +0 -1
  32. package/lib/orm/src/dehydrators.d.ts +0 -7
  33. package/lib/orm/src/dehydrators.js +0 -41
  34. package/lib/orm/src/dehydrators.js.map +0 -1
  35. package/lib/orm/src/driver.d.ts +0 -80
  36. package/lib/orm/src/driver.js +0 -104
  37. package/lib/orm/src/driver.js.map +0 -1
  38. package/lib/orm/src/enums.d.ts +0 -115
  39. package/lib/orm/src/enums.js +0 -125
  40. package/lib/orm/src/enums.js.map +0 -1
  41. package/lib/orm/src/exceptions.d.ts +0 -6
  42. package/lib/orm/src/exceptions.js +0 -11
  43. package/lib/orm/src/exceptions.js.map +0 -1
  44. package/lib/orm/src/hydrators.d.ts +0 -19
  45. package/lib/orm/src/hydrators.js +0 -110
  46. package/lib/orm/src/hydrators.js.map +0 -1
  47. package/lib/orm/src/interfaces.d.ts +0 -794
  48. package/lib/orm/src/interfaces.js +0 -293
  49. package/lib/orm/src/interfaces.js.map +0 -1
  50. package/lib/orm/src/model.d.ts +0 -310
  51. package/lib/orm/src/model.js +0 -779
  52. package/lib/orm/src/model.js.map +0 -1
  53. package/lib/orm/src/orm.d.ts +0 -61
  54. package/lib/orm/src/orm.js +0 -341
  55. package/lib/orm/src/orm.js.map +0 -1
  56. package/lib/orm/src/relations.d.ts +0 -150
  57. package/lib/orm/src/relations.js +0 -681
  58. package/lib/orm/src/relations.js.map +0 -1
  59. package/lib/orm/src/statements.d.ts +0 -140
  60. package/lib/orm/src/statements.js +0 -314
  61. package/lib/orm/src/statements.js.map +0 -1
  62. package/lib/orm/src/types.d.ts +0 -11
  63. package/lib/orm/src/types.js +0 -3
  64. package/lib/orm/src/types.js.map +0 -1
  65. package/lib/orm-sql/src/builders.d.ts +0 -11
  66. package/lib/orm-sql/src/builders.js +0 -42
  67. package/lib/orm-sql/src/builders.js.map +0 -1
  68. package/lib/orm-sql/src/compilers.d.ts +0 -226
  69. package/lib/orm-sql/src/compilers.js +0 -1016
  70. package/lib/orm-sql/src/compilers.js.map +0 -1
  71. package/lib/orm-sql/src/converters.d.ts +0 -10
  72. package/lib/orm-sql/src/converters.js +0 -39
  73. package/lib/orm-sql/src/converters.js.map +0 -1
  74. package/lib/orm-sql/src/index.d.ts +0 -6
  75. package/lib/orm-sql/src/index.js +0 -70
  76. package/lib/orm-sql/src/index.js.map +0 -1
  77. package/lib/orm-sql/src/statements.d.ts +0 -46
  78. package/lib/orm-sql/src/statements.js +0 -268
  79. package/lib/orm-sql/src/statements.js.map +0 -1
@@ -1,293 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- 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;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.QueryScope = exports.TableAliasCompiler = exports.SetValueConverter = exports.JsonValueConverter = exports.DatetimeValueConverter = exports.ValueConverter = exports.ModelMiddleware = exports.QueryMiddleware = exports.GroupByQueryCompiler = exports.OrderByQueryCompiler = exports.AlterColumnQueryCompiler = exports.ColumnQueryCompiler = exports.DropTableCompiler = exports.TableExistsCompiler = exports.AlterTableQueryCompiler = exports.DropEventQueryCompiler = exports.EventQueryCompiler = exports.TableCloneQueryCompiler = exports.TruncateTableQueryCompiler = exports.TableHistoryQueryCompiler = exports.TableQueryCompiler = exports.OnDuplicateQueryCompiler = exports.InsertQueryCompiler = exports.UpdateQueryCompiler = exports.DeleteQueryCompiler = exports.ForeignKeyQueryCompiler = exports.LimitQueryCompiler = exports.IndexQueryCompiler = exports.JoinQueryCompiler = exports.SelectQueryCompiler = exports.RecursiveQueryCompiler = exports.OrmMigration = exports.RelationType = exports.MigrationTransactionMode = exports.ReferentialAction = exports.InsertBehaviour = exports.DefaultValueBuilder = exports.ColumnAlterationType = exports.QueryContext = void 0;
10
- const di_1 = require("@spinajs/di");
11
- const exceptions_1 = require("@spinajs/exceptions");
12
- var QueryContext;
13
- (function (QueryContext) {
14
- QueryContext[QueryContext["Insert"] = 0] = "Insert";
15
- QueryContext[QueryContext["Select"] = 1] = "Select";
16
- QueryContext[QueryContext["Update"] = 2] = "Update";
17
- QueryContext[QueryContext["Delete"] = 3] = "Delete";
18
- QueryContext[QueryContext["Schema"] = 4] = "Schema";
19
- QueryContext[QueryContext["Transaction"] = 5] = "Transaction";
20
- })(QueryContext = exports.QueryContext || (exports.QueryContext = {}));
21
- var ColumnAlterationType;
22
- (function (ColumnAlterationType) {
23
- ColumnAlterationType[ColumnAlterationType["Add"] = 0] = "Add";
24
- ColumnAlterationType[ColumnAlterationType["Modify"] = 1] = "Modify";
25
- ColumnAlterationType[ColumnAlterationType["Rename"] = 2] = "Rename";
26
- })(ColumnAlterationType = exports.ColumnAlterationType || (exports.ColumnAlterationType = {}));
27
- class DefaultValueBuilder {
28
- }
29
- exports.DefaultValueBuilder = DefaultValueBuilder;
30
- var InsertBehaviour;
31
- (function (InsertBehaviour) {
32
- /**
33
- * Ignores if primary key exists in db
34
- */
35
- InsertBehaviour[InsertBehaviour["InsertOrIgnore"] = 0] = "InsertOrIgnore";
36
- /**
37
- * Updates entry if pk exists
38
- */
39
- InsertBehaviour[InsertBehaviour["InsertOrUpdate"] = 1] = "InsertOrUpdate";
40
- /**
41
- * Replaces entry if pk exists
42
- */
43
- InsertBehaviour[InsertBehaviour["InsertOrReplace"] = 2] = "InsertOrReplace";
44
- InsertBehaviour[InsertBehaviour["None"] = 3] = "None";
45
- })(InsertBehaviour = exports.InsertBehaviour || (exports.InsertBehaviour = {}));
46
- /**
47
- * Foreign key referential actions
48
- */
49
- var ReferentialAction;
50
- (function (ReferentialAction) {
51
- ReferentialAction["Cascade"] = "CASCADE";
52
- ReferentialAction["SetNull"] = "SET NULL";
53
- ReferentialAction["Restrict"] = "RESTRICT";
54
- ReferentialAction["NoAction"] = "NO ACTION";
55
- ReferentialAction["SetDefault"] = "SET DEFAULT";
56
- })(ReferentialAction = exports.ReferentialAction || (exports.ReferentialAction = {}));
57
- /**
58
- * Transaction mode when migration DB
59
- */
60
- var MigrationTransactionMode;
61
- (function (MigrationTransactionMode) {
62
- /**
63
- * Migration is run whithout transaction
64
- */
65
- MigrationTransactionMode[MigrationTransactionMode["None"] = 0] = "None";
66
- /**
67
- * On transaction for one migration - every migration has its own
68
- */
69
- MigrationTransactionMode[MigrationTransactionMode["PerMigration"] = 1] = "PerMigration";
70
- })(MigrationTransactionMode = exports.MigrationTransactionMode || (exports.MigrationTransactionMode = {}));
71
- var RelationType;
72
- (function (RelationType) {
73
- RelationType[RelationType["One"] = 0] = "One";
74
- RelationType[RelationType["Many"] = 1] = "Many";
75
- RelationType[RelationType["ManyToMany"] = 2] = "ManyToMany";
76
- })(RelationType = exports.RelationType || (exports.RelationType = {}));
77
- let OrmMigration = class OrmMigration {
78
- };
79
- OrmMigration = __decorate([
80
- (0, di_1.NewInstance)()
81
- ], OrmMigration);
82
- exports.OrmMigration = OrmMigration;
83
- /**
84
- * Definitions of query compiler are needed for DI resolving
85
- * ==========================================================
86
- */
87
- let RecursiveQueryCompiler = class RecursiveQueryCompiler {
88
- };
89
- RecursiveQueryCompiler = __decorate([
90
- (0, di_1.NewInstance)()
91
- ], RecursiveQueryCompiler);
92
- exports.RecursiveQueryCompiler = RecursiveQueryCompiler;
93
- let SelectQueryCompiler = class SelectQueryCompiler {
94
- };
95
- SelectQueryCompiler = __decorate([
96
- (0, di_1.NewInstance)()
97
- ], SelectQueryCompiler);
98
- exports.SelectQueryCompiler = SelectQueryCompiler;
99
- let JoinQueryCompiler = class JoinQueryCompiler {
100
- };
101
- JoinQueryCompiler = __decorate([
102
- (0, di_1.NewInstance)()
103
- ], JoinQueryCompiler);
104
- exports.JoinQueryCompiler = JoinQueryCompiler;
105
- let IndexQueryCompiler = class IndexQueryCompiler {
106
- };
107
- IndexQueryCompiler = __decorate([
108
- (0, di_1.NewInstance)()
109
- ], IndexQueryCompiler);
110
- exports.IndexQueryCompiler = IndexQueryCompiler;
111
- let LimitQueryCompiler = class LimitQueryCompiler {
112
- };
113
- LimitQueryCompiler = __decorate([
114
- (0, di_1.NewInstance)()
115
- ], LimitQueryCompiler);
116
- exports.LimitQueryCompiler = LimitQueryCompiler;
117
- let ForeignKeyQueryCompiler = class ForeignKeyQueryCompiler {
118
- };
119
- ForeignKeyQueryCompiler = __decorate([
120
- (0, di_1.NewInstance)()
121
- ], ForeignKeyQueryCompiler);
122
- exports.ForeignKeyQueryCompiler = ForeignKeyQueryCompiler;
123
- let DeleteQueryCompiler = class DeleteQueryCompiler {
124
- };
125
- DeleteQueryCompiler = __decorate([
126
- (0, di_1.NewInstance)()
127
- ], DeleteQueryCompiler);
128
- exports.DeleteQueryCompiler = DeleteQueryCompiler;
129
- let UpdateQueryCompiler = class UpdateQueryCompiler {
130
- };
131
- UpdateQueryCompiler = __decorate([
132
- (0, di_1.NewInstance)()
133
- ], UpdateQueryCompiler);
134
- exports.UpdateQueryCompiler = UpdateQueryCompiler;
135
- let InsertQueryCompiler = class InsertQueryCompiler {
136
- };
137
- InsertQueryCompiler = __decorate([
138
- (0, di_1.NewInstance)()
139
- ], InsertQueryCompiler);
140
- exports.InsertQueryCompiler = InsertQueryCompiler;
141
- let OnDuplicateQueryCompiler = class OnDuplicateQueryCompiler {
142
- };
143
- OnDuplicateQueryCompiler = __decorate([
144
- (0, di_1.NewInstance)()
145
- ], OnDuplicateQueryCompiler);
146
- exports.OnDuplicateQueryCompiler = OnDuplicateQueryCompiler;
147
- let TableQueryCompiler = class TableQueryCompiler {
148
- };
149
- TableQueryCompiler = __decorate([
150
- (0, di_1.NewInstance)()
151
- ], TableQueryCompiler);
152
- exports.TableQueryCompiler = TableQueryCompiler;
153
- let TableHistoryQueryCompiler = class TableHistoryQueryCompiler {
154
- };
155
- TableHistoryQueryCompiler = __decorate([
156
- (0, di_1.NewInstance)()
157
- ], TableHistoryQueryCompiler);
158
- exports.TableHistoryQueryCompiler = TableHistoryQueryCompiler;
159
- let TruncateTableQueryCompiler = class TruncateTableQueryCompiler {
160
- };
161
- TruncateTableQueryCompiler = __decorate([
162
- (0, di_1.NewInstance)()
163
- ], TruncateTableQueryCompiler);
164
- exports.TruncateTableQueryCompiler = TruncateTableQueryCompiler;
165
- let TableCloneQueryCompiler = class TableCloneQueryCompiler {
166
- };
167
- TableCloneQueryCompiler = __decorate([
168
- (0, di_1.NewInstance)()
169
- ], TableCloneQueryCompiler);
170
- exports.TableCloneQueryCompiler = TableCloneQueryCompiler;
171
- let EventQueryCompiler = class EventQueryCompiler {
172
- };
173
- EventQueryCompiler = __decorate([
174
- (0, di_1.NewInstance)()
175
- ], EventQueryCompiler);
176
- exports.EventQueryCompiler = EventQueryCompiler;
177
- let DropEventQueryCompiler = class DropEventQueryCompiler {
178
- };
179
- DropEventQueryCompiler = __decorate([
180
- (0, di_1.NewInstance)()
181
- ], DropEventQueryCompiler);
182
- exports.DropEventQueryCompiler = DropEventQueryCompiler;
183
- let AlterTableQueryCompiler = class AlterTableQueryCompiler {
184
- };
185
- AlterTableQueryCompiler = __decorate([
186
- (0, di_1.NewInstance)()
187
- ], AlterTableQueryCompiler);
188
- exports.AlterTableQueryCompiler = AlterTableQueryCompiler;
189
- let TableExistsCompiler = class TableExistsCompiler {
190
- };
191
- TableExistsCompiler = __decorate([
192
- (0, di_1.NewInstance)()
193
- ], TableExistsCompiler);
194
- exports.TableExistsCompiler = TableExistsCompiler;
195
- let DropTableCompiler = class DropTableCompiler {
196
- };
197
- DropTableCompiler = __decorate([
198
- (0, di_1.NewInstance)()
199
- ], DropTableCompiler);
200
- exports.DropTableCompiler = DropTableCompiler;
201
- let ColumnQueryCompiler = class ColumnQueryCompiler {
202
- };
203
- ColumnQueryCompiler = __decorate([
204
- (0, di_1.NewInstance)()
205
- ], ColumnQueryCompiler);
206
- exports.ColumnQueryCompiler = ColumnQueryCompiler;
207
- let AlterColumnQueryCompiler = class AlterColumnQueryCompiler {
208
- };
209
- AlterColumnQueryCompiler = __decorate([
210
- (0, di_1.NewInstance)()
211
- ], AlterColumnQueryCompiler);
212
- exports.AlterColumnQueryCompiler = AlterColumnQueryCompiler;
213
- let OrderByQueryCompiler = class OrderByQueryCompiler {
214
- };
215
- OrderByQueryCompiler = __decorate([
216
- (0, di_1.NewInstance)()
217
- ], OrderByQueryCompiler);
218
- exports.OrderByQueryCompiler = OrderByQueryCompiler;
219
- let GroupByQueryCompiler = class GroupByQueryCompiler {
220
- };
221
- GroupByQueryCompiler = __decorate([
222
- (0, di_1.NewInstance)()
223
- ], GroupByQueryCompiler);
224
- exports.GroupByQueryCompiler = GroupByQueryCompiler;
225
- class QueryMiddleware {
226
- }
227
- exports.QueryMiddleware = QueryMiddleware;
228
- class ModelMiddleware {
229
- }
230
- exports.ModelMiddleware = ModelMiddleware;
231
- class ValueConverter {
232
- /**
233
- * Converts value to database type
234
- *
235
- * @param value - value to convert
236
- */
237
- toDB(_value, _model, _options) {
238
- throw new exceptions_1.MethodNotImplemented();
239
- }
240
- /**
241
- * Converts value from database type eg. mysql timestamp to DateTime
242
- *
243
- * @param value - value to convert
244
- */
245
- fromDB(_value, _rawData, _options) {
246
- throw new exceptions_1.MethodNotImplemented();
247
- }
248
- }
249
- exports.ValueConverter = ValueConverter;
250
- /**
251
- * Converter for DATETIME field (eg. mysql datetime)
252
- */
253
- class DatetimeValueConverter extends ValueConverter {
254
- }
255
- exports.DatetimeValueConverter = DatetimeValueConverter;
256
- class JsonValueConverter extends ValueConverter {
257
- /**
258
- * Converts value to database type
259
- *
260
- * @param value - value to convert
261
- */
262
- toDB(value) {
263
- return JSON.stringify(value);
264
- }
265
- /**
266
- * Converts value from database type eg. mysql timestamp to DateTime
267
- *
268
- * @param value - value to convert
269
- */
270
- fromDB(value) {
271
- return JSON.parse(value);
272
- }
273
- }
274
- exports.JsonValueConverter = JsonValueConverter;
275
- /**
276
- * Converter for set field (eg. mysql SET)
277
- */
278
- class SetValueConverter extends ValueConverter {
279
- }
280
- exports.SetValueConverter = SetValueConverter;
281
- let TableAliasCompiler = class TableAliasCompiler {
282
- };
283
- TableAliasCompiler = __decorate([
284
- (0, di_1.Singleton)()
285
- ], TableAliasCompiler);
286
- exports.TableAliasCompiler = TableAliasCompiler;
287
- /**
288
- * base class for select & where builder for defining scopes
289
- */
290
- class QueryScope {
291
- }
292
- exports.QueryScope = QueryScope;
293
- //# sourceMappingURL=interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../orm/src/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1,310 +0,0 @@
1
- import { PickRelations } from './types';
2
- import { Relation } from './relations';
3
- import { IModelDescriptor, InsertBehaviour, IUpdateResult, IWhereBuilder, QueryScope, IHistoricalModel } from './interfaces';
4
- import { WhereFunction } from './types';
5
- import { RawQuery, UpdateQueryBuilder, TruncateTableQueryBuilder, QueryBuilder, SelectQueryBuilder, DeleteQueryBuilder, InsertQueryBuilder } from './builders';
6
- import { Op } from './enums';
7
- import { Class, IContainer } from '@spinajs/di';
8
- import { Wrap } from './statements';
9
- import { DateTime } from 'luxon';
10
- import { OrmDriver } from './driver';
11
- export declare function extractModelDescriptor(targetOrForward: any): IModelDescriptor;
12
- export interface IModelBase {
13
- ModelDescriptor: IModelDescriptor;
14
- Container: IContainer;
15
- PrimaryKeyName: string;
16
- PrimaryKeyValue: any;
17
- getFlattenRelationModels(): IModelBase[];
18
- /**
19
- * Fills model with data. It only fills properties that exists in database
20
- *
21
- * @param data - data to fill
22
- */
23
- hydrate(data: Partial<this>): void;
24
- /**
25
- *
26
- * Attachess model to proper relation an sets foreign key
27
- *
28
- * @param data - model to attach
29
- */
30
- attach(data: ModelBase): void;
31
- /**
32
- * Extracts all data from model. It takes only properties that exists in DB
33
- */
34
- dehydrate(omit?: string[]): Partial<this>;
35
- /**
36
- * deletes enitt from db. If model have SoftDelete decorator, model is marked as deleted
37
- */
38
- destroy(): Promise<void>;
39
- /**
40
- * If model can be in achived state - sets archived at date and saves it to db
41
- */
42
- archive(): Promise<void>;
43
- update(): Promise<void>;
44
- /**
45
- * Save all changes to db. It creates new entry id db or updates existing one if
46
- * primary key exists
47
- */
48
- insert(insertBehaviour: InsertBehaviour): Promise<IUpdateResult>;
49
- /**
50
- * Gets model data from database and returns as fresh instance.
51
- *
52
- * If primary key is not fetched, tries to load by columns with unique constraint.
53
- * If there is no unique columns or primary key, throws error
54
- */
55
- fresh(): Promise<this>;
56
- /**
57
- * Refresh model from database.
58
- *
59
- * If no primary key is set, tries to fetch data base on columns
60
- * with unique constraints. If none exists, throws exception
61
- */
62
- refresh(): Promise<void>;
63
- toJSON(): any;
64
- driver(): OrmDriver;
65
- }
66
- export declare class ModelBase<M = unknown> implements IModelBase {
67
- private _container;
68
- /**
69
- * List of hidden properties from JSON / dehydrations
70
- * eg. password field of user
71
- */
72
- protected _hidden: string[];
73
- static readonly _queryScopes: QueryScope;
74
- /**
75
- * Gets descriptor for this model. It contains information about relations, orm driver, connection properties,
76
- * db table attached, column information and others.
77
- */
78
- get ModelDescriptor(): IModelDescriptor;
79
- /**
80
- * Gets di container associated with this model ( via connection object eg. different drivers have their own implementation of things)
81
- */
82
- get Container(): IContainer;
83
- get PrimaryKeyName(): string;
84
- get PrimaryKeyValue(): any;
85
- set PrimaryKeyValue(newVal: any);
86
- driver(): OrmDriver;
87
- /**
88
- * Recursivelly takes all relation data and returns as single array
89
- */
90
- getFlattenRelationModels(recursive?: boolean): ModelBase[];
91
- /**
92
- * Clears all data in table
93
- */
94
- static truncate(): void;
95
- /**
96
- * Get all data from db
97
- */
98
- static all<T extends typeof ModelBase>(this: T, _page?: number, _perPage?: number): SelectQueryBuilder<Array<InstanceType<T>>>;
99
- /**
100
- * Inserts data to DB.
101
- *
102
- * @param _data - data to insert
103
- */
104
- static insert<T extends typeof ModelBase>(this: T, _data: InstanceType<T> | Partial<InstanceType<T>> | PickRelations<T, Relation<any, any>> | Array<InstanceType<T>> | Array<Partial<InstanceType<T>>>, _insertBehaviour?: InsertBehaviour): InsertQueryBuilder;
105
- /**
106
- * Search entities in db
107
- *
108
- * @param column - column to search or function
109
- * @param operator - boolean operator
110
- * @param value - value to compare
111
- */
112
- static where<T extends typeof ModelBase>(this: T, val: boolean): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
113
- static where<T extends typeof ModelBase>(this: T, val: Partial<InstanceType<T>> | PickRelations<T, Relation<any, any>>): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
114
- static where<T extends typeof ModelBase>(this: T, func: WhereFunction<InstanceType<T>>): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
115
- static where<T extends typeof ModelBase>(this: T, column: string, operator: Op, value: any): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
116
- static where<T extends typeof ModelBase>(this: T, column: string, value: any): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
117
- static where<T extends typeof ModelBase>(this: T, statement: Wrap): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
118
- static where<T extends typeof ModelBase>(this: T, column: string | boolean | WhereFunction<InstanceType<T>> | RawQuery | Partial<InstanceType<T>> | Wrap | PickRelations<T, Relation<any, any>>, operator?: Op | any, value?: any): SelectQueryBuilder<Array<InstanceType<T>>> & T['_queryScopes'];
119
- /**
120
- * Updates single or multiple records at once with provided value based on condition
121
- *
122
- * @param _data - data to set
123
- */
124
- static update<T extends typeof ModelBase>(this: T, _data: Partial<InstanceType<T>>): UpdateQueryBuilder<InstanceType<T>> & T['_queryScopes'];
125
- /**
126
- * Tries to find all models with given primary keys
127
- */
128
- static find<T extends typeof ModelBase>(this: T, _pks: any[]): Promise<Array<InstanceType<T>>>;
129
- /**
130
- * Tries to get first result from db
131
- *
132
- * Orders by Primary key, if pk not exists then by unique constraints and lastly by CreateAt if no unique columns exists.
133
- */
134
- static first<T extends typeof ModelBase>(this: T, callback?: (builder: IWhereBuilder<T> & T['_queryScopes']) => void): Promise<number>;
135
- /**
136
- * Tries to get first result from db
137
- *
138
- * Orders by Primary key, if pk not exists then by unique constraints and lastly by CreateAt if no unique columns exists.
139
- */
140
- static last<T extends typeof ModelBase>(this: T, callback?: (builder: IWhereBuilder<T> & T['_queryScopes']) => void): Promise<InstanceType<T>>;
141
- /**
142
- * Tries to get newest result from db. It throws if model dont have CreatedAt decorated property
143
- */
144
- static newest<T extends typeof ModelBase>(this: T, callback?: (builder: IWhereBuilder<T> & T['_queryScopes']) => void): Promise<InstanceType<T>>;
145
- /**
146
- * Tries to get oldest result from db. It throws if model dont have CreatedAt decorated property
147
- */
148
- static oldest<T extends typeof ModelBase>(this: T, callback?: (builder: IWhereBuilder<T> & T['_queryScopes']) => void): Promise<InstanceType<T>>;
149
- /**
150
- * Returns total count of entries in db for this model
151
- */
152
- static count<T extends typeof ModelBase>(this: T, callback?: (builder: IWhereBuilder<T> & T['_queryScopes']) => void): Promise<InstanceType<T>>;
153
- /**
154
- * Tries to find all models in db. If not all exists, throws exception
155
- */
156
- static findOrFail<T extends typeof ModelBase>(this: T, _pks: any[]): Promise<Array<InstanceType<T>>>;
157
- /**
158
- * gets model by specified pk, if not exists, returns null
159
- *
160
- */
161
- static get<T extends typeof ModelBase>(this: T, _pk: any): Promise<InstanceType<T>>;
162
- /**
163
- * Finds model by specified pk. If model not exists in db throws exception
164
- *
165
- */
166
- static getOrFail<T extends typeof ModelBase>(this: T, _pk: any): Promise<InstanceType<T>>;
167
- /**
168
- *
169
- * Checks if model with pk key or unique fields exists and if not creates one AND NOT save in db
170
- * NOTE: it checks for unique fields constraint
171
- */
172
- static getOrNew<T extends typeof ModelBase>(this: T, _pk?: any, _data?: Partial<InstanceType<T>>): Promise<InstanceType<T>>;
173
- /**
174
- * Creates query on this model. used for quering db for partial data, to perform some kind of operations
175
- * that dont need full ORM model to involve, or other non standard operations eg. joins or raw data queries based on this model
176
- */
177
- static query<T extends typeof ModelBase>(this: T): SelectQueryBuilder<InstanceType<T>> & T['_queryScopes'];
178
- /**
179
- *
180
- * Checks if model with pk key / unique fields exists and if not creates one and saves to db
181
- * NOTE: it checks for unique fields too.
182
- *
183
- * @param data - model width data to check
184
- */
185
- static getOrCreate<T extends typeof ModelBase>(this: T, _pk: any, _data?: Partial<InstanceType<T>>): Promise<InstanceType<T>>;
186
- /**
187
- * Creates new model & saves is to db
188
- *
189
- * @param data - initial model data
190
- */
191
- static create<T extends typeof ModelBase>(this: T, _data: Partial<InstanceType<T>>): Promise<InstanceType<T>>;
192
- /**
193
- * Deletes model from db
194
- *
195
- * @param pk - primary key
196
- */
197
- static destroy<T extends typeof ModelBase>(this: T, _pk?: any | any[]): DeleteQueryBuilder<InstanceType<T>> & T['_queryScopes'];
198
- constructor(data?: Partial<M>);
199
- /**
200
- * Fills model with data. It only fills properties that exists in database
201
- *
202
- * @param data - data to fill
203
- */
204
- hydrate(data: Partial<this>): void;
205
- /**
206
- *
207
- * Attachess model to proper relation an sets foreign key
208
- *
209
- * @param data - model to attach
210
- */
211
- attach(data: ModelBase): void;
212
- /**
213
- * Extracts all data from model. It takes only properties that exists in DB
214
- */
215
- dehydrate(omit?: string[]): Partial<this>;
216
- toSql(): Partial<this>;
217
- /**
218
- * deletes enitt from db. If model have SoftDelete decorator, model is marked as deleted
219
- */
220
- destroy(): Promise<void>;
221
- /**
222
- * If model can be in achived state - sets archived at date and saves it to db
223
- */
224
- archive(): Promise<void>;
225
- update(): Promise<void>;
226
- /**
227
- * Save all changes to db. It creates new entry id db or updates existing one if
228
- * primary key exists
229
- */
230
- insert(insertBehaviour?: InsertBehaviour): Promise<IUpdateResult>;
231
- /**
232
- * Gets model data from database and returns as fresh instance.
233
- *
234
- * If primary key is not fetched, tries to load by columns with unique constraint.
235
- * If there is no unique columns or primary key, throws error
236
- */
237
- fresh(): Promise<this>;
238
- /**
239
- * Refresh model from database.
240
- *
241
- * If no primary key is set, tries to fetch data base on columns
242
- * with unique constraints. If none exists, throws exception
243
- */
244
- refresh(): Promise<void>;
245
- toJSON(): Partial<this>;
246
- /**
247
- * sets default values for model. values are taken from DB default column prop
248
- */
249
- protected setDefaults(): void;
250
- protected createSelectQuery(): {
251
- query: SelectQueryBuilder<unknown>;
252
- description: IModelDescriptor;
253
- model: Class<any>;
254
- };
255
- protected createUpdateQuery(): {
256
- query: UpdateQueryBuilder<unknown>;
257
- description: IModelDescriptor;
258
- model: Class<any>;
259
- };
260
- protected createInsertQuery(): {
261
- query: InsertQueryBuilder;
262
- description: IModelDescriptor;
263
- model: Class<any>;
264
- };
265
- }
266
- export declare abstract class HistoricalModel implements IHistoricalModel {
267
- readonly __action__: 'update' | 'insert' | 'delete';
268
- readonly __revision__: number;
269
- readonly __start__: DateTime;
270
- readonly __end__: DateTime;
271
- }
272
- /**
273
- * Helper function to create query based on model
274
- *
275
- * @param model - source model for query
276
- * @param query - query class
277
- * @param injectModel - should inject model information into query, if not, query will return raw data
278
- *
279
- * @returns
280
- */
281
- export declare function createQuery<T extends QueryBuilder>(model: Class<any>, query: Class<T>, injectModel?: boolean): {
282
- query: T extends import("@spinajs/di").AsyncService ? Promise<T> : T;
283
- description: IModelDescriptor;
284
- model: Class<any>;
285
- };
286
- export declare const MODEL_STATIC_MIXINS: {
287
- truncate(): TruncateTableQueryBuilder;
288
- driver(): OrmDriver;
289
- query(): SelectQueryBuilder;
290
- where(column: string | boolean | WhereFunction<any> | RawQuery | Wrap | {}, operator?: Op | any, value?: any): SelectQueryBuilder;
291
- update<T extends typeof ModelBase>(data: Partial<InstanceType<T>>): UpdateQueryBuilder<unknown>;
292
- all(page?: number, perPage?: number): SelectQueryBuilder<unknown>;
293
- /**
294
- * Try to insert new value
295
- */
296
- insert<T_1 extends typeof ModelBase>(this: T_1, data: InstanceType<T_1> | Partial<InstanceType<T_1>> | InstanceType<T_1>[] | Partial<InstanceType<T_1>>[], insertBehaviour?: InsertBehaviour): Promise<IUpdateResult>;
297
- find<T_2 extends typeof ModelBase>(this: T_2, pks: any[]): Promise<InstanceType<T_2>[]>;
298
- findOrFail<T_3 extends typeof ModelBase>(this: T_3, pks: any[]): Promise<InstanceType<T_3>[]>;
299
- get<T_4 extends typeof ModelBase>(this: T_4, pk: any): Promise<InstanceType<T_4>>;
300
- getOrFail<T_5 extends typeof ModelBase>(this: T_5, pk: any): Promise<InstanceType<T_5>>;
301
- destroy<T_6 extends typeof ModelBase>(pks?: any | any[]): IWhereBuilder<InstanceType<T_6>>;
302
- create<T_7 extends typeof ModelBase>(this: T_7, data: Partial<InstanceType<T_7>>): Promise<InstanceType<T_7>>;
303
- getOrCreate<T_8 extends typeof ModelBase>(this: T_8, pk: any, data: Partial<InstanceType<T_8>>): Promise<InstanceType<T_8>>;
304
- getOrNew<T_9 extends typeof ModelBase>(this: T_9, pk: any, data?: Partial<InstanceType<T_9>>): Promise<InstanceType<T_9>>;
305
- first<T_10 extends typeof ModelBase>(this: T_10, callback?: (builder: IWhereBuilder<T_10>) => void): Promise<InstanceType<T_10>>;
306
- last<T_11 extends typeof ModelBase>(this: T_11, callback?: (builder: IWhereBuilder<T_11>) => void): Promise<InstanceType<T_11>>;
307
- newest<T_12 extends typeof ModelBase>(this: T_12, callback?: (builder: IWhereBuilder<T_12>) => void): Promise<InstanceType<T_12>>;
308
- oldest<T_13 extends typeof ModelBase>(this: T_13, callback?: (builder: IWhereBuilder<T_13>) => void): Promise<InstanceType<T_13>>;
309
- count<T_14 extends typeof ModelBase>(this: T_14, callback?: (builder: IWhereBuilder<T_14>) => void): Promise<number>;
310
- };