@keltoi/hydra 2.0.4 → 2.0.5

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 +35 -46
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -203,11 +203,11 @@ class Traceable extends Entity{
203
203
  db.schema.createTable(
204
204
  model.name,
205
205
  table=>{
206
- schema(table);
207
-
208
206
  table.dateTime('createdAt')
209
207
  .notNullable()
210
208
  .defaultTo(db.fn.now());
209
+
210
+ schema(table);
211
211
  }
212
212
  )
213
213
  )
@@ -275,10 +275,10 @@ class Thing extends Entity{
275
275
  db.schema.createTable(
276
276
  thing.name,
277
277
  table=>{
278
- schema(table);
279
-
280
278
  table.string('name',size)
281
279
  .notNullable();
280
+
281
+ schema(table);
282
282
  }
283
283
  )
284
284
  )
@@ -318,8 +318,6 @@ class Changeable extends Entity{
318
318
  db.schema.hasTable(model.name),
319
319
  ()=>Promise.resolve(
320
320
  db.schema.createTable(model.name,table=>{
321
- schema(table);
322
-
323
321
  table.dateTime('createdAt')
324
322
  .notNullable()
325
323
  .defaultTo(db.fn.now());
@@ -329,6 +327,8 @@ class Changeable extends Entity{
329
327
 
330
328
  table.boolean('active')
331
329
  .defaultTo(true);
330
+
331
+ schema(table);
332
332
  })
333
333
  )
334
334
  )
@@ -460,44 +460,41 @@ let Repository$1 = class Repository{
460
460
  .then(ids=>new Result({
461
461
  data:{ key: ids[0] }
462
462
  }))
463
- .catch(err=>Promise.reject(
464
- new Result({code:500,message:err})
465
- ))
463
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
466
464
 
467
465
  update = (entity = new Entity())=>
468
466
  this.myContext()
469
467
  .where(entity.key)
470
468
  .update(entity.data)
471
469
  .then(affected=>new Result({ data:affected }))
472
- .catch(err=>Promise.reject(
473
- new Result({code:500,message:err})
474
- ))
470
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
475
471
 
476
472
  delete = (entity = new Entity())=>
477
473
  this.myContext()
478
474
  .where(entity.key)
479
475
  .del()
480
476
  .then(affected=>new Result({ data:affected }))
481
- .catch(err=>Promise.reject(
482
- new Result({code:500,message:err})
483
- ))
477
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
484
478
 
485
479
  get = (entity = new Entity())=>
486
480
  this.myContext()
487
481
  .where(entity.key)
488
482
  .first()
489
- .then(model=>{
490
- if (!!model) return new Result({ data:model })
491
-
492
- const error = new Result({code:404,message:'Not found'});
493
-
494
- return Promise.reject(error)
495
- })
483
+ .then(Repository.resultModelOrError)
496
484
 
497
485
  list = ()=>
498
486
  this.myContext()
499
487
  .select()
500
488
  .then(models=>new Result({ data:models }))
489
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
490
+
491
+ static resultModelOrError(model){
492
+ if (!!model) return new Result({ data:model })
493
+
494
+ const error = new Result({code:404,message:'Not found'});
495
+
496
+ return Promise.reject(error)
497
+ }
501
498
  };
502
499
 
503
500
  class ChangeableRepository extends Repository$1{
@@ -511,6 +508,7 @@ class ChangeableRepository extends Repository$1{
511
508
  .select()
512
509
  .orderBy(['createdAt','updatedAt'],order)
513
510
  .then(result => new Result({data:result}))
511
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
514
512
 
515
513
  before = (date = new Date(), order = 'asc') =>
516
514
  this.myContext()
@@ -519,6 +517,7 @@ class ChangeableRepository extends Repository$1{
519
517
  .select()
520
518
  .orderBy(['createdAt','updatedAt'],order)
521
519
  .then(result => new Result({data:result}))
520
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
522
521
 
523
522
  after = (date=new Date(), order = 'asc') =>
524
523
  this.myContext()
@@ -527,6 +526,7 @@ class ChangeableRepository extends Repository$1{
527
526
  .select()
528
527
  .orderBy(['createdAt','updatedAt'],order)
529
528
  .then(result => new Result({data:result}))
529
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
530
530
 
531
531
  list = (order = 'asc') =>
532
532
  this.myContext()
@@ -534,32 +534,21 @@ class ChangeableRepository extends Repository$1{
534
534
  .select()
535
535
  .orderBy(['createdAt','updatedAt'],order)
536
536
  .then(result => new Result({data:result}))
537
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
537
538
 
538
539
  last = () =>
539
540
  this.myContext()
540
541
  .where({active:true})
541
542
  .first()
542
543
  .orderBy('createdAt',"desc")
543
- .then(result => {
544
- if (!!result) return result
545
-
546
- const error = new Result({code:404,message:'Not found'});
547
-
548
- return Promise.reject(error)
549
- })
544
+ .then(Repository$1.resultModelOrError)
550
545
 
551
546
  first = () =>
552
547
  this.myContext()
553
548
  .where({active:true})
554
549
  .first()
555
550
  .orderBy('createdAt',"asc")
556
- .then(result => {
557
- if (!!result) return result
558
-
559
- const error = new Result({code:404,message:'Not found'});
560
-
561
- return Promise.reject(error)
562
- })
551
+ .then(Repository$1.resultModelOrError)
563
552
  }
564
553
 
565
554
  class TraceableRepository extends Repository$1{
@@ -571,13 +560,8 @@ class TraceableRepository extends Repository$1{
571
560
  this.myContext()
572
561
  .where(traceable.key)
573
562
  .first()
574
- .then(model => {
575
- if (!!model) return model
576
-
577
- const error = new Result({code:404,message:'Not found'});
578
-
579
- return Promise.reject(error)
580
- })
563
+ .then(Repository$1.resultModelOrError)
564
+ .catch(err=>Promise.reject( new Result({code:500,message:err})) )
581
565
 
582
566
  before = (date = new Date(), order = 'asc') =>
583
567
  this.myContext()
@@ -585,6 +569,7 @@ class TraceableRepository extends Repository$1{
585
569
  .select()
586
570
  .orderBy('createdAt',order)
587
571
  .then(result => new Result({data:result}))
572
+ .catch(err=>Promise.reject( new Result({code:500,message:err})) )
588
573
 
589
574
  after = (date = new Date(), order = 'asc') =>
590
575
  this.myContext()
@@ -592,16 +577,18 @@ class TraceableRepository extends Repository$1{
592
577
  .select()
593
578
  .orderBy('createdAt',order)
594
579
  .then(result => new Result({data:result}))
580
+ .catch(err=>Promise.reject( new Result({code:500,message:err})) )
595
581
 
596
582
  list = (order='asc') =>
597
583
  this.myContext()
598
584
  .select()
599
585
  .orderBy('createdAt',order)
600
586
  .then(result => new Result({data:result}))
587
+ .catch(err=>Promise.reject( new Result({code:500,message:err})) )
601
588
 
602
- update = () => Promise.reject(new Result({code:400,message:'Cannot update a logged object'}))
589
+ update = () => Promise.reject( new Result({code:400,message:'Cannot update a logged object'}) )
603
590
 
604
- delete = () => Promise.reject(new Result({code:400,message:'Cannot delete a logged object'}))
591
+ delete = () => Promise.reject( new Result({code:400,message:'Cannot delete a logged object'}) )
605
592
 
606
593
  }
607
594
 
@@ -618,7 +605,7 @@ class ThingRepository extends Repository$1{
618
605
  ?new Result({data:result})
619
606
  :new Result({code:404,message:'Not found'})
620
607
  )
621
- .catch(err=>Promise.reject(new Result({code:500,message:err})))
608
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ))
622
609
  }
623
610
 
624
611
  class DbLinked {
@@ -700,6 +687,7 @@ class DbLinked {
700
687
  })
701
688
  )
702
689
  .then(result=>new Result({data:result}))
690
+ .catch(err=>Promise.reject(new Result({code:500,message:err})));
703
691
  }
704
692
 
705
693
  getOrdinatesByAbscissa(linked=new Linking()){
@@ -720,6 +708,7 @@ class DbLinked {
720
708
  })
721
709
  )
722
710
  .then(result=>new Result({data:result}))
711
+ .catch(err=>Promise.reject( new Result({code:500,message:err}) ));
723
712
  }
724
713
 
725
714
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keltoi/hydra",
3
- "version": "2.0.4",
3
+ "version": "2.0.5",
4
4
  "description": "Boilerplate to start your API from zero using Repository Pattern",
5
5
  "main": "index.js",
6
6
  "module": "index.js",