@keltoi/hydra 2.4.1 → 2.5.1
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 +89 -14
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -107,7 +107,7 @@ class Entity{
|
|
|
107
107
|
if(result.isError) return Promise.reject(result)
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
static
|
|
110
|
+
static collectionFromResult(result=new Result()){
|
|
111
111
|
if(result.isError) return Promise.reject(result)
|
|
112
112
|
}
|
|
113
113
|
}
|
|
@@ -204,15 +204,18 @@ class Linking{
|
|
|
204
204
|
}
|
|
205
205
|
|
|
206
206
|
class Traceable extends Entity{
|
|
207
|
+
#createdAt
|
|
207
208
|
constructor({
|
|
208
209
|
key={},
|
|
209
210
|
struct={},
|
|
210
211
|
createdAt=new Date()
|
|
211
212
|
}){
|
|
212
|
-
super(key,
|
|
213
|
+
super(key,struct);
|
|
214
|
+
|
|
215
|
+
this.#createdAt = createdAt;
|
|
213
216
|
}
|
|
214
217
|
|
|
215
|
-
get createdAt(){ return this
|
|
218
|
+
get createdAt(){ return this.#createdAt }
|
|
216
219
|
|
|
217
220
|
static structMe(
|
|
218
221
|
db=knex(),
|
|
@@ -309,6 +312,10 @@ class Thing extends Entity{
|
|
|
309
312
|
}
|
|
310
313
|
|
|
311
314
|
class Changeable extends Entity{
|
|
315
|
+
#createdAt
|
|
316
|
+
#updatedAt
|
|
317
|
+
#active
|
|
318
|
+
|
|
312
319
|
constructor({
|
|
313
320
|
key={},
|
|
314
321
|
struct = {},
|
|
@@ -318,18 +325,23 @@ class Changeable extends Entity{
|
|
|
318
325
|
}){
|
|
319
326
|
super(
|
|
320
327
|
key,
|
|
321
|
-
|
|
322
|
-
...struct,
|
|
323
|
-
createdAt,
|
|
324
|
-
updatedAt,
|
|
325
|
-
active
|
|
326
|
-
}
|
|
328
|
+
struct
|
|
327
329
|
);
|
|
330
|
+
|
|
331
|
+
this.#createdAt = createdAt;
|
|
332
|
+
this.#updatedAt = updatedAt;
|
|
333
|
+
this.#active = active;
|
|
328
334
|
}
|
|
329
335
|
|
|
330
|
-
get createdAt(){ return this.
|
|
331
|
-
get updatedAt(){ return this.
|
|
332
|
-
get active(){ return this.
|
|
336
|
+
get createdAt(){ return this.createdAt }
|
|
337
|
+
get updatedAt(){ return this.updatedAt }
|
|
338
|
+
get active(){ return this.active }
|
|
339
|
+
|
|
340
|
+
get change(){
|
|
341
|
+
return {
|
|
342
|
+
updatedAt: this.updatedAt
|
|
343
|
+
}
|
|
344
|
+
}
|
|
333
345
|
|
|
334
346
|
static structMe(
|
|
335
347
|
db=knex(),
|
|
@@ -546,12 +558,50 @@ class ChangeableRepository extends Repository$1{
|
|
|
546
558
|
super(entity,context);
|
|
547
559
|
}
|
|
548
560
|
|
|
561
|
+
insert = (entity = new Changeable())=>
|
|
562
|
+
this.myContext()
|
|
563
|
+
.insert({
|
|
564
|
+
...entity.$,
|
|
565
|
+
createdAt:entity.createdAt,
|
|
566
|
+
active:true
|
|
567
|
+
})
|
|
568
|
+
.then(()=>new Result({ data:entity }))
|
|
569
|
+
.catch(err=>Promise.reject( new Result({code:500,message:err}) ))
|
|
570
|
+
|
|
571
|
+
create = (entity = new Changeable())=>
|
|
572
|
+
this.myContext()
|
|
573
|
+
.insert({
|
|
574
|
+
...entity.data,
|
|
575
|
+
active:true
|
|
576
|
+
},
|
|
577
|
+
Object.keys(entity.key)
|
|
578
|
+
)
|
|
579
|
+
.then(ids=>{
|
|
580
|
+
entity.key = ids[0];
|
|
581
|
+
|
|
582
|
+
return new Result({ data:entity })
|
|
583
|
+
})
|
|
584
|
+
.catch(err=>Promise.reject( new Result({code:500,message:err}) ))
|
|
585
|
+
|
|
586
|
+
update = (entity = new Changeable())=>
|
|
587
|
+
this.myContext()
|
|
588
|
+
.where(entity.key)
|
|
589
|
+
.update({
|
|
590
|
+
...entity.data,
|
|
591
|
+
updatedAt:new Date()
|
|
592
|
+
})
|
|
593
|
+
.then(affected=> affected > 0
|
|
594
|
+
? new Result({ code:200,data:`${this.name} updated` })
|
|
595
|
+
: new Result({ code:404,message:'Not found' })
|
|
596
|
+
)
|
|
597
|
+
.catch(err=>Promise.reject( new Result({code:500,message:err}) ))
|
|
598
|
+
|
|
549
599
|
reactive = (entity = new Changeable())=>
|
|
550
600
|
this.myContext()
|
|
551
601
|
.where(entity.key)
|
|
552
602
|
.update({
|
|
553
603
|
active:true,
|
|
554
|
-
updatedAt:
|
|
604
|
+
updatedAt:new Date()
|
|
555
605
|
})
|
|
556
606
|
.then(affected=> affected > 0
|
|
557
607
|
? new Result({ code:200,data:`${this.name} updated` })
|
|
@@ -564,7 +614,7 @@ class ChangeableRepository extends Repository$1{
|
|
|
564
614
|
.where(entity.key)
|
|
565
615
|
.update({
|
|
566
616
|
active:false,
|
|
567
|
-
updatedAt:
|
|
617
|
+
updatedAt:new Date()
|
|
568
618
|
})
|
|
569
619
|
.then(affected=> affected > 0
|
|
570
620
|
? new Result({ code:200,data:`${this.name} updated` })
|
|
@@ -656,6 +706,31 @@ class TraceableRepository extends Repository$1{
|
|
|
656
706
|
.then(result => new Result({data:result}))
|
|
657
707
|
.catch(err=>Promise.reject( new Result({code:500,message:err})) )
|
|
658
708
|
|
|
709
|
+
insert = (entity = new Traceable()) =>
|
|
710
|
+
this.myContext()
|
|
711
|
+
.insert({
|
|
712
|
+
...entity.$,
|
|
713
|
+
createdAt:entity.createdAt
|
|
714
|
+
})
|
|
715
|
+
.then(()=>new Result({ data:entity }))
|
|
716
|
+
.catch(err=>Promise.reject( new Result({code:500,message:err})) )
|
|
717
|
+
|
|
718
|
+
create = (entity = new Traceable()) =>
|
|
719
|
+
this.myContext()
|
|
720
|
+
.insert(
|
|
721
|
+
{
|
|
722
|
+
...entity.$,
|
|
723
|
+
createdAt:new Date()
|
|
724
|
+
},
|
|
725
|
+
Object.keys(entity.key)
|
|
726
|
+
)
|
|
727
|
+
.then(ids=>{
|
|
728
|
+
entity.key = ids[0];
|
|
729
|
+
|
|
730
|
+
return new Result({ data:entity })
|
|
731
|
+
})
|
|
732
|
+
.catch(err=>Promise.reject( new Result({code:500,message:err})) )
|
|
733
|
+
|
|
659
734
|
update = () => Promise.reject( new Result({code:400,message:'Cannot update a logged object'}) )
|
|
660
735
|
|
|
661
736
|
delete = () => Promise.reject( new Result({code:400,message:'Cannot delete a logged object'}) )
|