@keltoi/hydra 2.0.11 → 2.1.0

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 (2) hide show
  1. package/index.js +23 -3
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -97,9 +97,7 @@ class Entity{
97
97
  }
98
98
 
99
99
  class Model {
100
- constructor({}) {
101
-
102
- }
100
+ constructor() {}
103
101
 
104
102
  static fromEntity(entity = new Entity()) {
105
103
  return new Model(entity.$)
@@ -441,6 +439,8 @@ let Repository$1 = class Repository{
441
439
 
442
440
  myContext
443
441
 
442
+ get name(){ return this.#name }
443
+
444
444
  constructor(entity=Entity,context=new Context$2())
445
445
  {
446
446
  this.#name = entity.name;
@@ -516,6 +516,26 @@ class ChangeableRepository extends Repository$1{
516
516
  super(entity,context);
517
517
  }
518
518
 
519
+ reactive = (entity = new Changeable())=>
520
+ this.myContext()
521
+ .where(entity.key)
522
+ .update({active:true})
523
+ .then(affected=> affected > 0
524
+ ? new Result({ code:200,data:`${this.name} updated` })
525
+ : new Result({ code:404,message:'Not found' })
526
+ )
527
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
528
+
529
+ remove = (entity = new Changeable())=>
530
+ this.myContext()
531
+ .where(entity.key)
532
+ .update({active:false})
533
+ .then(affected=> affected > 0
534
+ ? new Result({ code:200,data:`${this.name} updated` })
535
+ : new Result({ code:404,message:'Not found' })
536
+ )
537
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
538
+
519
539
  deceased = (order = 'asc') =>
520
540
  this.myContext()
521
541
  .where({active:false})
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keltoi/hydra",
3
- "version": "2.0.11",
3
+ "version": "2.1.0",
4
4
  "description": "Boilerplate to start your API from zero using Repository Pattern",
5
5
  "main": "index.js",
6
6
  "module": "index.js",