@spinajs/orm 1.2.77 → 1.2.83

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.
@@ -1 +1 @@
1
- {"version":3,"file":"builders.js","sourceRoot":"","sources":["../src/builders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builders.js","sourceRoot":"","sources":["../src/builders.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { ModelBase } from './model';
2
+ export declare abstract class ModelDehydrator {
3
+ abstract dehydrate(model: ModelBase): any;
4
+ }
5
+ export declare class StandardModelDehydrator extends ModelDehydrator {
6
+ dehydrate(model: ModelBase): {};
7
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandardModelDehydrator = exports.ModelDehydrator = void 0;
4
+ const exceptions_1 = require("./exceptions");
5
+ const interfaces_1 = require("./interfaces");
6
+ class ModelDehydrator {
7
+ }
8
+ exports.ModelDehydrator = ModelDehydrator;
9
+ class StandardModelDehydrator extends ModelDehydrator {
10
+ dehydrate(model) {
11
+ var _a;
12
+ const obj = {};
13
+ (_a = model.ModelDescriptor.Columns) === null || _a === void 0 ? void 0 : _a.forEach((c) => {
14
+ const val = model[c.Name];
15
+ if (c.PrimaryKey && !c.Nullable && (val === null || val === undefined || val === '')) {
16
+ throw new exceptions_1.OrmException(`Field ${c.Name} cannot be null`);
17
+ }
18
+ obj[c.Name] = c.Converter ? c.Converter.toDB(val) : val;
19
+ });
20
+ for (const [, val] of model.ModelDescriptor.Relations) {
21
+ if (val.Type === interfaces_1.RelationType.One) {
22
+ if (model[val.Name]) {
23
+ obj[val.ForeignKey] = model[val.Name].PrimaryKeyValue;
24
+ }
25
+ }
26
+ }
27
+ return obj;
28
+ }
29
+ }
30
+ exports.StandardModelDehydrator = StandardModelDehydrator;
31
+ //# sourceMappingURL=dehydrators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dehydrators.js","sourceRoot":"","sources":["../src/dehydrators.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,6CAA4C;AAG5C,MAAsB,eAAe;CAEpC;AAFD,0CAEC;AAED,MAAa,uBAAwB,SAAQ,eAAe;IACnD,SAAS,CAAC,KAAgB;;QAC/B,MAAM,GAAG,GAAG,EAAE,CAAC;QAEf,MAAA,KAAK,CAAC,eAAe,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3C,MAAM,GAAG,GAAI,KAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,CAAC,EAAE;gBACpF,MAAM,IAAI,yBAAY,CAAC,SAAS,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC;aAC1D;YACA,GAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,KAAK,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,SAAS,EAAE;YACrD,IAAI,GAAG,CAAC,IAAI,KAAK,yBAAY,CAAC,GAAG,EAAE;gBACjC,IAAK,KAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAC3B,GAAW,CAAC,GAAG,CAAC,UAAU,CAAC,GAAI,KAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC;iBACzE;aACF;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAtBD,0DAsBC"}
package/lib/driver.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Log } from '@spinajs/log';
2
2
  import { QueryContext } from './interfaces';
3
3
  import { SyncModule, IContainer, Container } from '@spinajs/di';
4
- import { IDriverOptions, IColumnDescriptor } from '.';
4
+ import { IDriverOptions, IColumnDescriptor, TruncateTableQueryBuilder } from '.';
5
5
  import { UpdateQueryBuilder, SelectQueryBuilder, IndexQueryBuilder, DeleteQueryBuilder, InsertQueryBuilder, SchemaQueryBuilder, QueryBuilder } from './builders';
6
6
  export declare type TransactionCallback = (driver: OrmDriver) => Promise<any>;
7
7
  export declare abstract class OrmDriver extends SyncModule {
@@ -52,6 +52,10 @@ export declare abstract class OrmDriver extends SyncModule {
52
52
  * This can be used to execute raw queries to db without orm model layer
53
53
  */
54
54
  insert(): InsertQueryBuilder;
55
+ /**
56
+ * Truncates given table
57
+ */
58
+ truncate(table: string): TruncateTableQueryBuilder;
55
59
  /**
56
60
  * Creates update query builder associated with this connection.
57
61
  * This can be used to execute raw queries to db without orm model layer
package/lib/driver.js CHANGED
@@ -12,8 +12,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.OrmDriver = void 0;
13
13
  const log_1 = require("@spinajs/log");
14
14
  const di_1 = require("@spinajs/di");
15
+ const _1 = require(".");
15
16
  const builders_1 = require("./builders");
16
17
  const hydrators_1 = require("./hydrators");
18
+ const dehydrators_1 = require("./dehydrators");
17
19
  class OrmDriver extends di_1.SyncModule {
18
20
  constructor(options) {
19
21
  super();
@@ -32,6 +34,7 @@ class OrmDriver extends di_1.SyncModule {
32
34
  di_1.DI.register(hydrators_1.NonDbPropertyHydrator).as(hydrators_1.ModelHydrator);
33
35
  di_1.DI.register(hydrators_1.OneToOneRelationHydrator).as(hydrators_1.ModelHydrator);
34
36
  di_1.DI.register(hydrators_1.JunctionModelPropertyHydrator).as(hydrators_1.ModelHydrator);
37
+ di_1.DI.register(dehydrators_1.StandardModelDehydrator).as(dehydrators_1.ModelDehydrator);
35
38
  }
36
39
  /**
37
40
  * Creates select query builder associated with this connection.
@@ -54,6 +57,14 @@ class OrmDriver extends di_1.SyncModule {
54
57
  insert() {
55
58
  return this.Container.resolve(builders_1.InsertQueryBuilder, [this]);
56
59
  }
60
+ /**
61
+ * Truncates given table
62
+ */
63
+ truncate(table) {
64
+ const b = this.Container.resolve(_1.TruncateTableQueryBuilder, [this]);
65
+ b.setTable(table);
66
+ return b;
67
+ }
57
68
  /**
58
69
  * Creates update query builder associated with this connection.
59
70
  * This can be used to execute raw queries to db without orm model layer
package/lib/driver.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAmC;AAGnC,oCAAgF;AAEhF,yCAAiK;AACjK,2CAAgJ;AAIhJ,MAAsB,SAAU,SAAQ,eAAU;IAahD,YAAY,OAAuB;QACjC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IA8BM,OAAO;QACZ,IAAI,CAAC,GAAG,GAAG,OAAE,CAAC,OAAO,CAAC,SAAG,EAAE,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE5D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAE5C;;WAEG;QACH,OAAE,CAAC,QAAQ,CAAC,8BAAkB,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QAClD,OAAE,CAAC,QAAQ,CAAC,iCAAqB,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QACrD,OAAE,CAAC,QAAQ,CAAC,oCAAwB,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QACxD,OAAE,CAAC,QAAQ,CAAC,yCAA6B,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,GAAG;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,KAAK;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,4BAAiB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;CASF;AAhHC;IADC,IAAA,eAAU,GAAE;8BACY,cAAS;gDAAC;AAPrC,8BAuHC"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAmC;AAGnC,oCAAgF;AAChF,wBAAiF;AACjF,yCAAiK;AACjK,2CAAgJ;AAChJ,+CAAyE;AAIzE,MAAsB,SAAU,SAAQ,eAAU;IAahD,YAAY,OAAuB;QACjC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IA8BM,OAAO;QACZ,IAAI,CAAC,GAAG,GAAG,OAAE,CAAC,OAAO,CAAC,SAAG,EAAE,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE5D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAE5C;;WAEG;QACH,OAAE,CAAC,QAAQ,CAAC,8BAAkB,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QAClD,OAAE,CAAC,QAAQ,CAAC,iCAAqB,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QACrD,OAAE,CAAC,QAAQ,CAAC,oCAAwB,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QACxD,OAAE,CAAC,QAAQ,CAAC,yCAA6B,CAAC,CAAC,EAAE,CAAC,yBAAa,CAAC,CAAC;QAC7D,OAAE,CAAC,QAAQ,CAAC,qCAAuB,CAAC,CAAC,EAAE,CAAC,6BAAe,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,GAAG;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,QAAQ,CAAC,KAAa;QAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,4BAAyB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACI,KAAK;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,4BAAiB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;CASF;AA1HC;IADC,IAAA,eAAU,GAAE;8BACY,cAAS;gDAAC;AAPrC,8BAiIC"}
package/lib/enums.d.ts CHANGED
@@ -37,13 +37,15 @@ export declare enum WhereBoolean {
37
37
  /**
38
38
  * Allowed operators in queries
39
39
  */
40
- export declare enum WhereOperators {
40
+ export declare enum SqlOperator {
41
41
  LT = "<",
42
42
  LTE = "<=",
43
43
  GT = ">",
44
44
  GTE = ">=",
45
45
  NOT = "!=",
46
+ NOT_2 = "<>",
46
47
  EQ = "=",
48
+ EQ_NULL = "<=>",
47
49
  IN = "in",
48
50
  NOT_IN = "not in",
49
51
  NULL = "is null",
@@ -52,6 +54,7 @@ export declare enum WhereOperators {
52
54
  NOT_BETWEEN = "not between",
53
55
  LIKE = "like"
54
56
  }
57
+ export declare type Op = '<' | '>' | '!=' | '<=>' | '>=' | '<=' | '<>' | 'like' | '=';
55
58
  /**
56
59
  * Allowed join methods in queries
57
60
  */
package/lib/enums.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SORT_ORDER = exports.ColumnType = exports.ColumnMethods = exports.JoinMethod = exports.WhereOperators = exports.WhereBoolean = exports.QueryMethod = void 0;
3
+ exports.SORT_ORDER = exports.ColumnType = exports.ColumnMethods = exports.JoinMethod = exports.SqlOperator = exports.WhereBoolean = exports.QueryMethod = void 0;
4
4
  /**
5
5
  * Allowed query methods and types.
6
6
  */
@@ -42,22 +42,24 @@ var WhereBoolean;
42
42
  /**
43
43
  * Allowed operators in queries
44
44
  */
45
- var WhereOperators;
46
- (function (WhereOperators) {
47
- WhereOperators["LT"] = "<";
48
- WhereOperators["LTE"] = "<=";
49
- WhereOperators["GT"] = ">";
50
- WhereOperators["GTE"] = ">=";
51
- WhereOperators["NOT"] = "!=";
52
- WhereOperators["EQ"] = "=";
53
- WhereOperators["IN"] = "in";
54
- WhereOperators["NOT_IN"] = "not in";
55
- WhereOperators["NULL"] = "is null";
56
- WhereOperators["NOT_NULL"] = "is not null";
57
- WhereOperators["BETWEEN"] = "between";
58
- WhereOperators["NOT_BETWEEN"] = "not between";
59
- WhereOperators["LIKE"] = "like";
60
- })(WhereOperators = exports.WhereOperators || (exports.WhereOperators = {}));
45
+ var SqlOperator;
46
+ (function (SqlOperator) {
47
+ SqlOperator["LT"] = "<";
48
+ SqlOperator["LTE"] = "<=";
49
+ SqlOperator["GT"] = ">";
50
+ SqlOperator["GTE"] = ">=";
51
+ SqlOperator["NOT"] = "!=";
52
+ SqlOperator["NOT_2"] = "<>";
53
+ SqlOperator["EQ"] = "=";
54
+ SqlOperator["EQ_NULL"] = "<=>";
55
+ SqlOperator["IN"] = "in";
56
+ SqlOperator["NOT_IN"] = "not in";
57
+ SqlOperator["NULL"] = "is null";
58
+ SqlOperator["NOT_NULL"] = "is not null";
59
+ SqlOperator["BETWEEN"] = "between";
60
+ SqlOperator["NOT_BETWEEN"] = "not between";
61
+ SqlOperator["LIKE"] = "like";
62
+ })(SqlOperator = exports.SqlOperator || (exports.SqlOperator = {}));
61
63
  /**
62
64
  * Allowed join methods in queries
63
65
  */
package/lib/enums.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../src/enums.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,WA8BX;AA9BD,WAAY,WAAW;IACrB;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,+CAAK,CAAA;IAEL;;OAEG;IACH,iDAAM,CAAA;AACR,CAAC,EA9BW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QA8BtB;AAED;;GAEG;AACH,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,yBAAS,CAAA;AACX,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAED;;GAEG;AACH,IAAY,cAcX;AAdD,WAAY,cAAc;IACxB,0BAAQ,CAAA;IACR,4BAAU,CAAA;IACV,0BAAQ,CAAA;IACR,4BAAU,CAAA;IACV,4BAAU,CAAA;IACV,0BAAQ,CAAA;IACR,2BAAS,CAAA;IACT,mCAAiB,CAAA;IACjB,kCAAgB,CAAA;IAChB,0CAAwB,CAAA;IACxB,qCAAmB,CAAA;IACnB,6CAA2B,CAAA;IAC3B,+BAAa,CAAA;AACf,CAAC,EAdW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAczB;AAED;;GAEG;AACH,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,kCAAoB,CAAA;IACpB,gCAAkB,CAAA;IAClB,4CAA8B,CAAA;IAC9B,kCAAoB,CAAA;IACpB,8CAAgC,CAAA;IAChC,4CAA8B,CAAA;IAC9B,kCAAoB,CAAA;AACtB,CAAC,EARW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAQrB;AAED;;GAEG;AACH,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,4BAAW,CAAA;IACX,4BAAW,CAAA;IACX,4BAAW,CAAA;IACX,gCAAe,CAAA;AACjB,CAAC,EANW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAMxB;AAED;;GAEG;AACH,IAAY,UA2BX;AA3BD,WAAY,UAAU;IACpB,wCAA0B,CAAA;IAC1B,sCAAwB,CAAA;IACxB,0CAA4B,CAAA;IAC5B,6BAAe,CAAA;IACf,oCAAsB,CAAA;IACtB,oCAAsB,CAAA;IACtB,wCAA0B,CAAA;IAC1B,oCAAsB,CAAA;IACtB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,oCAAsB,CAAA;IACtB,qCAAuB,CAAA;IACvB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,oCAAsB,CAAA;IACtB,wCAA0B,CAAA;IAC1B,oCAAsB,CAAA;AACxB,CAAC,EA3BW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QA2BrB;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../src/enums.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,WA8BX;AA9BD,WAAY,WAAW;IACrB;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,iDAAM,CAAA;IAEN;;OAEG;IACH,+CAAK,CAAA;IAEL;;OAEG;IACH,iDAAM,CAAA;AACR,CAAC,EA9BW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QA8BtB;AAED;;GAEG;AACH,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,yBAAS,CAAA;AACX,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAED;;GAEG;AACH,IAAY,WAgBX;AAhBD,WAAY,WAAW;IACrB,uBAAQ,CAAA;IACR,yBAAU,CAAA;IACV,uBAAQ,CAAA;IACR,yBAAU,CAAA;IACV,yBAAU,CAAA;IACV,2BAAY,CAAA;IACZ,uBAAQ,CAAA;IACR,8BAAe,CAAA;IACf,wBAAS,CAAA;IACT,gCAAiB,CAAA;IACjB,+BAAgB,CAAA;IAChB,uCAAwB,CAAA;IACxB,kCAAmB,CAAA;IACnB,0CAA2B,CAAA;IAC3B,4BAAa,CAAA;AACf,CAAC,EAhBW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAgBtB;AAID;;GAEG;AACH,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,kCAAoB,CAAA;IACpB,gCAAkB,CAAA;IAClB,4CAA8B,CAAA;IAC9B,kCAAoB,CAAA;IACpB,8CAAgC,CAAA;IAChC,4CAA8B,CAAA;IAC9B,kCAAoB,CAAA;AACtB,CAAC,EARW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAQrB;AAED;;GAEG;AACH,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,4BAAW,CAAA;IACX,4BAAW,CAAA;IACX,4BAAW,CAAA;IACX,gCAAe,CAAA;AACjB,CAAC,EANW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAMxB;AAED;;GAEG;AACH,IAAY,UA2BX;AA3BD,WAAY,UAAU;IACpB,wCAA0B,CAAA;IAC1B,sCAAwB,CAAA;IACxB,0CAA4B,CAAA;IAC5B,6BAAe,CAAA;IACf,oCAAsB,CAAA;IACtB,oCAAsB,CAAA;IACtB,wCAA0B,CAAA;IAC1B,oCAAsB,CAAA;IACtB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,oCAAsB,CAAA;IACtB,qCAAuB,CAAA;IACvB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,oCAAsB,CAAA;IACtB,wCAA0B,CAAA;IAC1B,oCAAsB,CAAA;AACxB,CAAC,EA3BW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QA2BrB;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './interfaces';
2
+ export * from './enums';
2
3
  export * from './statements';
3
4
  export * from './builders';
4
5
  export * from './model';
@@ -7,6 +8,8 @@ export * from './orm';
7
8
  export * from './types';
8
9
  export * from './decorators';
9
10
  export * from './hydrators';
11
+ export * from './dehydrators';
10
12
  export * from './driver';
11
13
  export * from './converters';
12
14
  export * from './wrappers';
15
+ export * from './exceptions';
package/lib/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
15
  };
12
16
  Object.defineProperty(exports, "__esModule", { value: true });
13
17
  __exportStar(require("./interfaces"), exports);
18
+ __exportStar(require("./enums"), exports);
14
19
  __exportStar(require("./statements"), exports);
15
20
  __exportStar(require("./builders"), exports);
16
21
  __exportStar(require("./model"), exports);
@@ -19,7 +24,9 @@ __exportStar(require("./orm"), exports);
19
24
  __exportStar(require("./types"), exports);
20
25
  __exportStar(require("./decorators"), exports);
21
26
  __exportStar(require("./hydrators"), exports);
27
+ __exportStar(require("./dehydrators"), exports);
22
28
  __exportStar(require("./driver"), exports);
23
29
  __exportStar(require("./converters"), exports);
24
30
  __exportStar(require("./wrappers"), exports);
31
+ __exportStar(require("./exceptions"), exports);
25
32
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+CAA6B;AAC7B,6CAA2B;AAC3B,0CAAwB;AACxB,8CAA4B;AAC5B,wCAAsB;AACtB,0CAAwB;AACxB,+CAA6B;AAC7B,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B;AAC7B,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,6CAA2B;AAC3B,0CAAwB;AACxB,8CAA4B;AAC5B,wCAAsB;AACtB,0CAAwB;AACxB,+CAA6B;AAC7B,8CAA4B;AAC5B,gDAA8B;AAC9B,2CAAyB;AACzB,+CAA6B;AAC7B,6CAA2B;AAC3B,+CAA6B"}
@@ -1,9 +1,10 @@
1
- import { RawQuery } from './builders';
1
+ import { Op } from './enums';
2
+ import { QueryBuilder, RawQuery } from './builders';
2
3
  import { SORT_ORDER, WhereBoolean } from './enums';
3
4
  import { IQueryStatement, WrapStatement } from './statements';
4
5
  import { WhereFunction } from './types';
5
6
  import { OrmDriver } from './driver';
6
- import { Constructor } from '@spinajs/di';
7
+ import { Constructor, IContainer } from '@spinajs/di';
7
8
  import { ModelBase } from './model';
8
9
  export declare enum QueryContext {
9
10
  Insert = 0,
@@ -13,20 +14,24 @@ export declare enum QueryContext {
13
14
  Schema = 4,
14
15
  Transaction = 5
15
16
  }
17
+ export declare enum ColumnAlterationType {
18
+ Add = 0,
19
+ Modify = 1,
20
+ Rename = 2
21
+ }
16
22
  export declare enum InsertBehaviour {
17
23
  /**
18
- * On duplicate entry ignore & fetch only model primary key
19
- * On duplicate check not only for pkeys but also for unique constrain
24
+ * Ignores if primary key exists in db
20
25
  */
21
- OnDuplicateIgnore = 0,
26
+ InsertOrIgnore = 0,
22
27
  /**
23
- * On duplicate update entry ( when unique constraint is hit update db from model data)
28
+ * Updates entry if pk exists
24
29
  */
25
- OnDuplicateUpdate = 1,
30
+ InsertOrUpdate = 1,
26
31
  /**
27
- * Throw error if model hits constraint ( primary or unique keys )
32
+ * Replaces entry if pk exists
28
33
  */
29
- OnDuplicateThrow = 2,
34
+ InsertOrReplace = 2,
30
35
  None = 3
31
36
  }
32
37
  /**
@@ -198,6 +203,13 @@ export declare enum RelationType {
198
203
  ManyToMany = 2
199
204
  }
200
205
  export declare type ForwardRefFunction = () => Constructor<ModelBase>;
206
+ /**
207
+ * Returns result of last insert or affected rows ( eg. rows affected would be 0 if insert is ignored )
208
+ */
209
+ export interface IUpdateResult {
210
+ RowsAffected: number;
211
+ LastInsertId: number;
212
+ }
201
213
  export interface IRelationDescriptor {
202
214
  /**
203
215
  * Name of relations, defaults for property name in model that owns relation
@@ -375,16 +387,20 @@ export interface ISort {
375
387
  export interface IQueryBuilder {
376
388
  Table: string;
377
389
  TableAlias: string;
378
- Schema: string;
379
- schema(schema: string): IQueryBuilder;
390
+ Database: string;
391
+ database(database: string): IQueryBuilder;
380
392
  from(table: string, alias?: string): this;
381
393
  setAlias(alias: string): this;
394
+ Driver: OrmDriver;
395
+ Container: IContainer;
382
396
  }
383
397
  export interface ILimitBuilder {
384
398
  take(count: number): this;
385
399
  skip(count: number): this;
386
400
  first<T>(): Promise<T>;
387
401
  firstOrFail<T>(): Promise<T>;
402
+ firstOrThrow<T>(error: Error): Promise<T>;
403
+ orThrow<T>(error: Error): Promise<T>;
388
404
  getLimits(): IQueryLimit;
389
405
  }
390
406
  export interface IOrderByBuilder {
@@ -433,9 +449,27 @@ export interface IColumnsBuilder {
433
449
  export interface IWhereBuilder {
434
450
  Statements: IQueryStatement[];
435
451
  Op: WhereBoolean;
436
- where(column: string | boolean | {} | WhereFunction | WrapStatement, operator?: any, value?: any): this;
437
- orWhere(column: string | boolean | {} | WhereFunction | WrapStatement, operator?: any, value?: any): this;
438
- andWhere(column: string | boolean | {} | WhereFunction | WrapStatement, operator?: any, value?: any): this;
452
+ where(val: boolean): this;
453
+ where(val: {}): this;
454
+ where(func: WhereFunction): this;
455
+ where(column: string, operator: Op, value: any): this;
456
+ where(column: string, value: any): this;
457
+ where(statement: WrapStatement): this;
458
+ where(column: string | boolean | WhereFunction | RawQuery | {} | WrapStatement, operator?: Op | any, value?: any): this;
459
+ orWhere(val: boolean): this;
460
+ orWhere(val: {}): this;
461
+ orWhere(func: WhereFunction): this;
462
+ orWhere(column: string, operator: Op, value: any): this;
463
+ orWhere(column: string, value: any): this;
464
+ orWhere(statement: WrapStatement): this;
465
+ orWhere(column: string | boolean | WhereFunction | RawQuery | {}, operator?: Op | any, value?: any): this;
466
+ andWhere(val: boolean): this;
467
+ andWhere(val: {}): this;
468
+ andWhere(func: WhereFunction): this;
469
+ andWhere(column: string, operator: Op, value: any): this;
470
+ andWhere(column: string, value: any): this;
471
+ andWhere(statement: WrapStatement): this;
472
+ andWhere(column: string | boolean | WhereFunction | RawQuery | {}, operator?: Op | any, value?: any): this;
439
473
  whereObject(obj: any): this;
440
474
  whereNotNull(column: string): this;
441
475
  whereNull(column: string): this;
@@ -498,7 +532,7 @@ export interface ICompilerOutput {
498
532
  bindings: any[];
499
533
  }
500
534
  export interface IQueryCompiler {
501
- compile(): ICompilerOutput;
535
+ compile(): ICompilerOutput | ICompilerOutput[];
502
536
  }
503
537
  export interface ILimitCompiler {
504
538
  limit(builder: ILimitBuilder): ICompilerOutput;
@@ -534,6 +568,9 @@ export declare abstract class JoinQueryCompiler implements IQueryCompiler {
534
568
  export declare abstract class IndexQueryCompiler implements IQueryCompiler {
535
569
  abstract compile(): ICompilerOutput;
536
570
  }
571
+ export declare abstract class LimitQueryCompiler implements IQueryCompiler {
572
+ abstract compile(): ICompilerOutput;
573
+ }
537
574
  export declare abstract class ForeignKeyQueryCompiler implements IQueryCompiler {
538
575
  abstract compile(): ICompilerOutput;
539
576
  }
@@ -552,12 +589,24 @@ export declare abstract class OnDuplicateQueryCompiler implements IQueryCompiler
552
589
  export declare abstract class TableQueryCompiler implements IQueryCompiler {
553
590
  abstract compile(): ICompilerOutput;
554
591
  }
592
+ export declare abstract class TruncateTableQueryCompiler implements IQueryCompiler {
593
+ abstract compile(): ICompilerOutput;
594
+ }
595
+ export declare abstract class TableCloneQueryCompiler implements IQueryCompiler {
596
+ abstract compile(): ICompilerOutput[];
597
+ }
598
+ export declare abstract class AlterTableQueryCompiler implements IQueryCompiler {
599
+ abstract compile(): ICompilerOutput[];
600
+ }
555
601
  export declare abstract class TableExistsCompiler implements IQueryCompiler {
556
602
  abstract compile(): ICompilerOutput;
557
603
  }
558
604
  export declare abstract class ColumnQueryCompiler implements IQueryCompiler {
559
605
  abstract compile(): ICompilerOutput;
560
606
  }
607
+ export declare abstract class AlterColumnQueryCompiler implements IQueryCompiler {
608
+ abstract compile(): ICompilerOutput;
609
+ }
561
610
  export declare abstract class OrderByQueryCompiler implements IQueryCompiler {
562
611
  abstract compile(): ICompilerOutput;
563
612
  }
@@ -570,7 +619,7 @@ export declare abstract class GroupByQueryCompiler implements IQueryCompiler {
570
619
  /**
571
620
  * Middlewares for query builders
572
621
  */
573
- export interface IBuilderMiddleware {
622
+ export interface IBuilderMiddleware<T = any[]> {
574
623
  /**
575
624
  *
576
625
  * Executed AFTER query is executed in DB and raw data is fetched
@@ -578,7 +627,7 @@ export interface IBuilderMiddleware {
578
627
  *
579
628
  * @param data - raw data fetched from DB
580
629
  */
581
- afterData(data: any[]): any[];
630
+ afterQuery(data: T): T;
582
631
  /**
583
632
  * Executed when model is about to create. Use it to
584
633
  * override model creation logic. If null is returned, default model
@@ -618,3 +667,6 @@ export declare class DatetimeValueConverter extends ValueConverter {
618
667
  */
619
668
  export declare class SetValueConverter extends ValueConverter {
620
669
  }
670
+ export declare abstract class TableAliasCompiler {
671
+ abstract compile(builder: QueryBuilder, tbl?: string): string;
672
+ }