@reldens/storage 0.5.0-beta.6 → 0.10.0-beta.20

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/index.js CHANGED
@@ -6,18 +6,21 @@
6
6
 
7
7
  const { BaseDataServer } = require('./lib/base-data-server');
8
8
  const { BaseDriver } = require('./lib/base-driver');
9
- const { ObjectionJsDriver } = require('./lib/objection-js-driver');
10
- const { ObjectionJsDataServer } = require('./lib/objection-js-data-server');
11
- const { MikroOrmDriver } = require('./lib/mikro-orm-driver');
12
- const { ModelClassDeprecated } = require('./lib/objection-js-model-deprecated');
9
+ const { ObjectionJsDriver } = require('./lib/objection-js/objection-js-driver');
10
+ const { ObjectionJsDataServer } = require('./lib/objection-js/objection-js-data-server');
11
+ const { Model } = require('objection');
12
+ const { MikroOrmDriver } = require('./lib/mikro-orm/mikro-orm-driver');
13
+ const { MikroOrmDataServer } = require('./lib/mikro-orm/mikro-orm-data-server');
13
14
 
14
15
  module.exports = {
15
- ModelClassDeprecated: ModelClassDeprecated,
16
- // databases:
16
+ // base:
17
17
  BaseDataServer: BaseDataServer,
18
- ObjectionJsDataServer: ObjectionJsDataServer,
19
- // drivers:
20
18
  BaseDriver: BaseDriver,
19
+ // objection-js:
20
+ ObjectionJsDataServer: ObjectionJsDataServer,
21
21
  ObjectionJsDriver: ObjectionJsDriver,
22
+ ObjectionJsRawModel: Model,
23
+ // mikro-orm:
24
+ MikroOrmDataServer: MikroOrmDataServer,
22
25
  MikroOrmDriver: MikroOrmDriver
23
26
  };
@@ -34,6 +34,11 @@ class BaseDataServer
34
34
  ErrorManager.error('BaseDriver generateEntities() not implemented.');
35
35
  }
36
36
 
37
+ getEntity(entityName)
38
+ {
39
+ return this.entityManager.get(entityName);
40
+ }
41
+
37
42
  }
38
43
 
39
44
  module.exports.BaseDataServer = BaseDataServer;
@@ -4,7 +4,7 @@
4
4
  *
5
5
  */
6
6
 
7
- const { ErrorManager, sc } = require('@reldens/utils');
7
+ const { ErrorManager, sc, Logger} = require('@reldens/utils');
8
8
 
9
9
  class BaseDriver
10
10
  {
@@ -32,6 +32,11 @@ class BaseDriver
32
32
  ErrorManager.error('BaseDriver create() not implemented.');
33
33
  }
34
34
 
35
+ createWithRelations(params, relations)
36
+ {
37
+ ErrorManager.error('BaseDriver create() not implemented.');
38
+ }
39
+
35
40
  update(filters, updatePatch)
36
41
  {
37
42
  ErrorManager.error('BaseDriver update() not implemented.');
@@ -117,6 +122,15 @@ class BaseDriver
117
122
  ErrorManager.error('BaseDriver loadByWithRelations() not implemented.');
118
123
  }
119
124
 
125
+ executeCustomQuery(methodName)
126
+ {
127
+ if(typeof this.rawModel[methodName] !== 'function'){
128
+ Logger.error('Custom query method not found in raw model.', methodName, this.rawModel);
129
+ return false;
130
+ }
131
+ return this.rawModel[methodName]();
132
+ }
133
+
120
134
  }
121
135
 
122
136
  module.exports.BaseDriver = BaseDriver;
@@ -0,0 +1,20 @@
1
+ /**
2
+ *
3
+ * Reldens - MikroOrmDataServer
4
+ *
5
+ */
6
+
7
+ const { BaseDataServer } = require('../base-data-server');
8
+
9
+ class MikroOrmDataServer extends BaseDataServer
10
+ {
11
+
12
+ constructor(props)
13
+ {
14
+ super(props);
15
+ // @TODO: implement.
16
+ }
17
+
18
+ }
19
+
20
+ module.exports.MikroOrmDataServer = MikroOrmDataServer;
@@ -4,7 +4,7 @@
4
4
  *
5
5
  */
6
6
 
7
- const { BaseDriver } = require('./base-driver');
7
+ const { BaseDriver } = require('../base-driver');
8
8
 
9
9
  class MikroOrmDriver extends BaseDriver
10
10
  {
@@ -4,11 +4,10 @@
4
4
  *
5
5
  */
6
6
 
7
- const { BaseDataServer } = require('./base-data-server');
8
- const { ModelClassDeprecated } = require('./objection-js-model-deprecated');
7
+ const { BaseDataServer } = require('../base-data-server');
9
8
  const { ObjectionJsDriver } = require('./objection-js-driver');
9
+ const { Model } = require('objection');
10
10
  const Knex = require('knex');
11
- const { sc } = require('@reldens/utils');
12
11
 
13
12
  class ObjectionJsDataServer extends BaseDataServer
14
13
  {
@@ -16,8 +15,10 @@ class ObjectionJsDataServer extends BaseDataServer
16
15
  constructor(props)
17
16
  {
18
17
  super(props);
19
- this.rawModel = sc.getDef(props, 'rawModel', ModelClassDeprecated);
20
18
  this.knex = false;
19
+ if(!this.rawModel){
20
+ this.rawModel = Model;
21
+ }
21
22
  }
22
23
 
23
24
  connect()
@@ -4,7 +4,7 @@
4
4
  *
5
5
  */
6
6
 
7
- const { BaseDriver } = require('./base-driver');
7
+ const { BaseDriver } = require('../base-driver');
8
8
  const { sc } = require('@reldens/utils');
9
9
 
10
10
  class ObjectionJsDriver extends BaseDriver
@@ -30,6 +30,11 @@ class ObjectionJsDriver extends BaseDriver
30
30
  this.rawModel.query().insert(params);
31
31
  }
32
32
 
33
+ createWithRelations(params, relations)
34
+ {
35
+ return this.rawModel.query().insertGraphAndFetch(params);
36
+ }
37
+
33
38
  update(filters, updatePatch)
34
39
  {
35
40
  return this.rawModel.query().patch(updatePatch).where(filters);
@@ -47,7 +52,7 @@ class ObjectionJsDriver extends BaseDriver
47
52
 
48
53
  delete(id)
49
54
  {
50
- return this.rawModel.delete().where(this.id, id);
55
+ return this.rawModel.query().delete().where(this.id, id);
51
56
  }
52
57
 
53
58
  count(filters)
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@reldens/storage",
3
3
  "scope": "@reldens",
4
- "version": "0.5.0-beta.6",
4
+ "version": "0.10.0-beta.20",
5
5
  "description": "Reldens - Storage",
6
6
  "author": "Damian A. Pastorini",
7
7
  "license": "MIT",
@@ -15,8 +15,12 @@
15
15
  "keywords": [
16
16
  "reldens",
17
17
  "storage",
18
+ "objection",
18
19
  "objectionjs",
20
+ "objection-js",
21
+ "mikro",
19
22
  "mikroorm",
23
+ "mikro-orm",
20
24
  "driver",
21
25
  "orm",
22
26
  "database",
@@ -40,9 +44,9 @@
40
44
  "url": "https://github.com/damian-pastorini/reldens-storage/issues"
41
45
  },
42
46
  "dependencies": {
43
- "@reldens/utils": "^0.4.6",
44
- "knex": "^0.21.21",
45
- "objection": "^2.2.15",
47
+ "@reldens/utils": "^0.5.0",
48
+ "knex": "^0.95.14",
49
+ "objection": "^3.0.0",
46
50
  "mysql": "^2.18.1"
47
51
  }
48
52
  }
@@ -1,51 +0,0 @@
1
- /**
2
- *
3
- * Reldens - ObjectionModel
4
- *
5
- * Objection JS Model wrapper.
6
- *
7
- */
8
-
9
- const { Model } = require('objection');
10
-
11
- class ObjectionJsModelDeprecated extends Model
12
- {
13
-
14
- static loadAll(withRelations)
15
- {
16
- let result = this.query();
17
- let relations = Object.keys(this.relationMappings || {});
18
- if(withRelations === true && relations){
19
- result.withGraphFetched('['+relations.join(',')+']');
20
- }
21
- return result;
22
- }
23
-
24
- static loadById(id, withRelations)
25
- {
26
- let result = this.query();
27
- let relations = Object.keys(this.relationMappings || {});
28
- if(withRelations === true && relations.length > 0){
29
- result.withGraphFetched('['+relations.join(',')+']');
30
- }
31
- return result.findById(id);
32
- }
33
-
34
- static loadBy(field, value, withRelations)
35
- {
36
- let result = this.query();
37
- let relations = Object.keys((this.relationMappings || {}));
38
- if(withRelations === true && relations.length > 0){
39
- result.withGraphFetched('['+relations.join(',')+']');
40
- }
41
- return result.where(field, value);
42
- }
43
-
44
- static updateBy(field, fieldValue, updatePatch)
45
- {
46
- return this.query().patch(updatePatch).where(field, fieldValue);
47
- }
48
-
49
- }
50
-
51
- module.exports.ModelClassDeprecated = ObjectionJsModelDeprecated;