@warlock.js/cascade 2.0.4 → 2.1.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.
Files changed (107) hide show
  1. package/cjs/aggregate/LookupPipeline.d.ts.map +1 -1
  2. package/cjs/aggregate/LookupPipeline.js +8 -4
  3. package/cjs/aggregate/LookupPipeline.js.map +1 -1
  4. package/cjs/aggregate/aggregate.d.ts +25 -1
  5. package/cjs/aggregate/aggregate.d.ts.map +1 -1
  6. package/cjs/aggregate/aggregate.js +147 -0
  7. package/cjs/aggregate/aggregate.js.map +1 -1
  8. package/cjs/blueprint/blueprint.d.ts +1 -1
  9. package/cjs/connection.d.ts.map +1 -1
  10. package/cjs/connection.js +1 -0
  11. package/cjs/connection.js.map +1 -1
  12. package/cjs/database.d.ts +14 -2
  13. package/cjs/database.d.ts.map +1 -1
  14. package/cjs/database.js +53 -1
  15. package/cjs/database.js.map +1 -1
  16. package/cjs/migration/migration-office.d.ts.map +1 -1
  17. package/cjs/migration/migration-office.js +0 -1
  18. package/cjs/migration/migration-office.js.map +1 -1
  19. package/cjs/migration/migration-officer.d.ts +1 -1
  20. package/cjs/model/ModelAggregate.d.ts.map +1 -1
  21. package/cjs/model/ModelAggregate.js +17 -8
  22. package/cjs/model/ModelAggregate.js.map +1 -1
  23. package/cjs/model/ModelSync.d.ts +2 -3
  24. package/cjs/model/ModelSync.d.ts.map +1 -1
  25. package/cjs/model/ModelSync.js +2 -2
  26. package/cjs/model/ModelSync.js.map +1 -1
  27. package/cjs/model/base-model.d.ts +22 -2
  28. package/cjs/model/base-model.d.ts.map +1 -1
  29. package/cjs/model/base-model.js +57 -4
  30. package/cjs/model/base-model.js.map +1 -1
  31. package/cjs/model/crud-model.d.ts +9 -4
  32. package/cjs/model/crud-model.d.ts.map +1 -1
  33. package/cjs/model/crud-model.js +27 -13
  34. package/cjs/model/crud-model.js.map +1 -1
  35. package/cjs/model/joinable.d.ts.map +1 -1
  36. package/cjs/model/joinable.js +5 -2
  37. package/cjs/model/joinable.js.map +1 -1
  38. package/cjs/model/model.d.ts +22 -1
  39. package/cjs/model/model.d.ts.map +1 -1
  40. package/cjs/model/model.js +93 -53
  41. package/cjs/model/model.js.map +1 -1
  42. package/cjs/model/types.d.ts +1 -0
  43. package/cjs/model/types.d.ts.map +1 -1
  44. package/cjs/query/query.d.ts +27 -57
  45. package/cjs/query/query.d.ts.map +1 -1
  46. package/cjs/query/query.js +80 -157
  47. package/cjs/query/query.js.map +1 -1
  48. package/cjs/query/types.d.ts +5 -1
  49. package/cjs/query/types.d.ts.map +1 -1
  50. package/cjs/types.d.ts +9 -2
  51. package/cjs/types.d.ts.map +1 -1
  52. package/cjs/utils/parse-filter.d.ts +2 -2
  53. package/cjs/utils/parse-filter.d.ts.map +1 -1
  54. package/esm/aggregate/LookupPipeline.d.ts.map +1 -1
  55. package/esm/aggregate/LookupPipeline.js +8 -4
  56. package/esm/aggregate/LookupPipeline.js.map +1 -1
  57. package/esm/aggregate/aggregate.d.ts +25 -1
  58. package/esm/aggregate/aggregate.d.ts.map +1 -1
  59. package/esm/aggregate/aggregate.js +147 -0
  60. package/esm/aggregate/aggregate.js.map +1 -1
  61. package/esm/blueprint/blueprint.d.ts +1 -1
  62. package/esm/connection.d.ts.map +1 -1
  63. package/esm/connection.js +1 -0
  64. package/esm/connection.js.map +1 -1
  65. package/esm/database.d.ts +14 -2
  66. package/esm/database.d.ts.map +1 -1
  67. package/esm/database.js +53 -1
  68. package/esm/database.js.map +1 -1
  69. package/esm/migration/migration-office.d.ts.map +1 -1
  70. package/esm/migration/migration-office.js +0 -1
  71. package/esm/migration/migration-office.js.map +1 -1
  72. package/esm/migration/migration-officer.d.ts +1 -1
  73. package/esm/model/ModelAggregate.d.ts.map +1 -1
  74. package/esm/model/ModelAggregate.js +17 -8
  75. package/esm/model/ModelAggregate.js.map +1 -1
  76. package/esm/model/ModelSync.d.ts +2 -3
  77. package/esm/model/ModelSync.d.ts.map +1 -1
  78. package/esm/model/ModelSync.js +2 -2
  79. package/esm/model/ModelSync.js.map +1 -1
  80. package/esm/model/base-model.d.ts +22 -2
  81. package/esm/model/base-model.d.ts.map +1 -1
  82. package/esm/model/base-model.js +57 -4
  83. package/esm/model/base-model.js.map +1 -1
  84. package/esm/model/crud-model.d.ts +9 -4
  85. package/esm/model/crud-model.d.ts.map +1 -1
  86. package/esm/model/crud-model.js +27 -13
  87. package/esm/model/crud-model.js.map +1 -1
  88. package/esm/model/joinable.d.ts.map +1 -1
  89. package/esm/model/joinable.js +5 -2
  90. package/esm/model/joinable.js.map +1 -1
  91. package/esm/model/model.d.ts +22 -1
  92. package/esm/model/model.d.ts.map +1 -1
  93. package/esm/model/model.js +93 -53
  94. package/esm/model/model.js.map +1 -1
  95. package/esm/model/types.d.ts +1 -0
  96. package/esm/model/types.d.ts.map +1 -1
  97. package/esm/query/query.d.ts +27 -57
  98. package/esm/query/query.d.ts.map +1 -1
  99. package/esm/query/query.js +80 -157
  100. package/esm/query/query.js.map +1 -1
  101. package/esm/query/types.d.ts +5 -1
  102. package/esm/query/types.d.ts.map +1 -1
  103. package/esm/types.d.ts +9 -2
  104. package/esm/types.d.ts.map +1 -1
  105. package/esm/utils/parse-filter.d.ts +2 -2
  106. package/esm/utils/parse-filter.d.ts.map +1 -1
  107. package/package.json +5 -2
@@ -1 +1 @@
1
- {"version":3,"file":"LookupPipeline.d.ts","sourceRoot":"","sources":["../../src/aggregate/LookupPipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,aAAa,CAAC,EAAE,CAAC;IACxC,GAAG,CAAC,EAAE,aAAa,CAAC;CACrB,CAAC;AAEF,qBAAa,cAAe,SAAQ,QAAQ;IAC1C;;OAEG;gBACgB,OAAO,EAAE,qBAAqB;CAalD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,kBAE5D"}
1
+ {"version":3,"file":"LookupPipeline.d.ts","sourceRoot":"","sources":["../../src/aggregate/LookupPipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,aAAa,CAAC,EAAE,CAAC;IACxC,GAAG,CAAC,EAAE,aAAa,CAAC;CACrB,CAAC;AAEF,qBAAa,cAAe,SAAQ,QAAQ;IAC1C;;OAEG;gBACgB,OAAO,EAAE,qBAAqB;CAoBlD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,kBAE5D"}
@@ -1,17 +1,21 @@
1
- 'use strict';var parsePipelines=require('./parsePipelines.js'),pipeline=require('./pipeline.js');class LookupPipeline extends pipeline.Pipeline {
1
+ 'use strict';var supportiveIs=require('@mongez/supportive-is'),parsePipelines=require('./parsePipelines.js'),pipeline=require('./pipeline.js');class LookupPipeline extends pipeline.Pipeline {
2
2
  /**
3
3
  * Constructor
4
4
  */
5
5
  constructor(options) {
6
6
  super("lookup");
7
7
  const { from, localField, foreignField, as, pipeline = [] } = options;
8
- this.data({
8
+ const parsedPipelines = parsePipelines.parsePipelines(pipeline);
9
+ const data = {
9
10
  from,
10
11
  localField,
11
12
  foreignField,
12
13
  as,
13
- pipeline: parsePipelines.parsePipelines(pipeline),
14
- });
14
+ };
15
+ if (!supportiveIs.isEmpty(parsedPipelines)) {
16
+ data.pipeline = parsedPipelines;
17
+ }
18
+ this.data(data);
15
19
  }
16
20
  }
17
21
  function lookupPipeline(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"LookupPipeline.js","sources":["../../src/aggregate/LookupPipeline.ts"],"sourcesContent":[null],"names":["Pipeline","parsePipelines"],"mappings":"iGAcM,MAAO,cAAe,SAAQA,iBAAQ,CAAA;AAC1C;;AAEG;AACH,IAAA,WAAA,CAAmB,OAA8B,EAAA;QAC/C,KAAK,CAAC,QAAQ,CAAC,CAAC;AAEhB,QAAA,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;QAEtE,IAAI,CAAC,IAAI,CAAC;YACR,IAAI;YACJ,UAAU;YACV,YAAY;YACZ,EAAE;AACF,YAAA,QAAQ,EAAEC,6BAAc,CAAC,QAAQ,CAAC;AACnC,SAAA,CAAC,CAAC;KACJ;AACF,CAAA;AAEK,SAAU,cAAc,CAAC,OAA8B,EAAA;AAC3D,IAAA,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;AACrC"}
1
+ {"version":3,"file":"LookupPipeline.js","sources":["../../src/aggregate/LookupPipeline.ts"],"sourcesContent":[null],"names":["Pipeline","parsePipelines","isEmpty"],"mappings":"+IAeM,MAAO,cAAe,SAAQA,iBAAQ,CAAA;AAC1C;;AAEG;AACH,IAAA,WAAA,CAAmB,OAA8B,EAAA;QAC/C,KAAK,CAAC,QAAQ,CAAC,CAAC;AAEhB,QAAA,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;AAEtE,QAAA,MAAM,eAAe,GAAGC,6BAAc,CAAC,QAAQ,CAAC,CAAC;AAEjD,QAAA,MAAM,IAAI,GAAkB;YAC1B,IAAI;YACJ,UAAU;YACV,YAAY;YACZ,EAAE;SACH,CAAC;AAEF,QAAA,IAAI,CAACC,oBAAO,CAAC,eAAe,CAAC,EAAE;AAC7B,YAAA,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC;AACjC,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACjB;AACF,CAAA;AAEK,SAAU,cAAc,CAAC,OAA8B,EAAA;AAC3D,IAAA,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;AACrC"}
@@ -297,7 +297,15 @@ export declare class Aggregate {
297
297
  /**
298
298
  * Get pipelines
299
299
  */
300
- getPipelines(): (Pipeline | GenericObject)[];
300
+ getPipelines(): (GenericObject | Pipeline)[];
301
+ /**
302
+ * Determine if record exists
303
+ */
304
+ exists(): Promise<boolean>;
305
+ /**
306
+ * {@inheritdoc}
307
+ */
308
+ toJSON(): any[];
301
309
  /**
302
310
  * Get only first result
303
311
  */
@@ -334,6 +342,22 @@ export declare class Aggregate {
334
342
  * Update the given data
335
343
  */
336
344
  update(data: any): Promise<any>;
345
+ /**
346
+ * Increment the given column
347
+ */
348
+ increment(column: string | string[] | Record<string, number>, value?: number): Promise<any>;
349
+ /**
350
+ * Decrement the given column(s)
351
+ */
352
+ decrement(column: string, value?: number): Promise<any>;
353
+ /**
354
+ * Multiply the given column(s)
355
+ */
356
+ multiply(column: string | string[] | Record<string, number>, value: number): Promise<any>;
357
+ /**
358
+ * Divide the given column(s)
359
+ */
360
+ divide(column: string | string[] | Record<string, number>, value: number): Promise<any>;
337
361
  /**
338
362
  * Unset the given columns
339
363
  */
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.d.ts","sourceRoot":"","sources":["../../src/aggregate/aggregate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aggregate.d.ts","sourceRoot":"","sources":["../../src/aggregate/aggregate.ts"],"names":[],"mappings":"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"}
@@ -503,6 +503,18 @@
503
503
  getPipelines() {
504
504
  return this.pipelines;
505
505
  }
506
+ /**
507
+ * Determine if record exists
508
+ */
509
+ async exists() {
510
+ return (await this.limit(1).count()) > 0;
511
+ }
512
+ /**
513
+ * {@inheritdoc}
514
+ */
515
+ toJSON() {
516
+ return this.parse();
517
+ }
506
518
  /**
507
519
  * Get only first result
508
520
  */
@@ -637,6 +649,141 @@
637
649
  throw error;
638
650
  }
639
651
  }
652
+ /**
653
+ * Increment the given column
654
+ */
655
+ async increment(column, value = 1) {
656
+ try {
657
+ const query = [];
658
+ const filters = {};
659
+ this.parse().forEach(pipeline => {
660
+ if (pipeline.$match) {
661
+ Object.assign(filters, pipeline.$match);
662
+ }
663
+ else {
664
+ query.push(pipeline);
665
+ }
666
+ });
667
+ Aggregate._events.trigger("updating", this);
668
+ let incrementData;
669
+ if (typeof column === "string") {
670
+ incrementData = { [column]: value };
671
+ }
672
+ else if (Array.isArray(column)) {
673
+ incrementData = column.reduce((acc, col) => {
674
+ acc[col] = value;
675
+ return acc;
676
+ }, {});
677
+ }
678
+ else {
679
+ incrementData = column;
680
+ }
681
+ const results = await this.query.updateMany(this.collection, filters, [
682
+ ...query,
683
+ {
684
+ $inc: incrementData,
685
+ },
686
+ ]);
687
+ return results.modifiedCount;
688
+ }
689
+ catch (error) {
690
+ logger.log.error("database", "aggregate.increment", error);
691
+ throw error;
692
+ }
693
+ }
694
+ /**
695
+ * Decrement the given column(s)
696
+ */
697
+ async decrement(column, value = 1) {
698
+ return this.increment(column, -value);
699
+ }
700
+ /**
701
+ * Multiply the given column(s)
702
+ */
703
+ async multiply(column, value) {
704
+ try {
705
+ const query = [];
706
+ const filters = {};
707
+ this.parse().forEach(pipeline => {
708
+ if (pipeline.$match) {
709
+ Object.assign(filters, pipeline.$match);
710
+ }
711
+ else {
712
+ query.push(pipeline);
713
+ }
714
+ });
715
+ Aggregate._events.trigger("updating", this);
716
+ let multiplyData;
717
+ if (typeof column === "string") {
718
+ multiplyData = { [column]: value };
719
+ }
720
+ else if (Array.isArray(column)) {
721
+ multiplyData = column.reduce((acc, col) => {
722
+ acc[col] = value;
723
+ return acc;
724
+ }, {});
725
+ }
726
+ else {
727
+ multiplyData = column;
728
+ }
729
+ const results = await this.query.updateMany(this.collection, filters, [
730
+ ...query,
731
+ {
732
+ $mul: multiplyData,
733
+ },
734
+ ]);
735
+ return results.modifiedCount;
736
+ }
737
+ catch (error) {
738
+ logger.log.error("database", "aggregate.multiply", error);
739
+ throw error;
740
+ }
741
+ }
742
+ /**
743
+ * Divide the given column(s)
744
+ */
745
+ async divide(column, value) {
746
+ if (value === 0) {
747
+ throw new Error("Division by zero is not allowed.");
748
+ }
749
+ try {
750
+ const query = [];
751
+ const filters = {};
752
+ this.parse().forEach(pipeline => {
753
+ if (pipeline.$match) {
754
+ Object.assign(filters, pipeline.$match);
755
+ }
756
+ else {
757
+ query.push(pipeline);
758
+ }
759
+ });
760
+ Aggregate._events.trigger("updating", this);
761
+ let divideData;
762
+ if (typeof column === "string") {
763
+ divideData = { [column]: 1 / value };
764
+ }
765
+ else if (Array.isArray(column)) {
766
+ divideData = column.reduce((acc, col) => {
767
+ acc[col] = 1 / value;
768
+ return acc;
769
+ }, {});
770
+ }
771
+ else {
772
+ divideData = Object.fromEntries(Object.entries(column).map(([key, val]) => [key, 1 / val]));
773
+ }
774
+ const results = await this.query.updateMany(this.collection, filters, [
775
+ ...query,
776
+ {
777
+ $mul: divideData,
778
+ },
779
+ ]);
780
+ return results.modifiedCount;
781
+ }
782
+ catch (error) {
783
+ logger.log.error("database", "aggregate.divide", error);
784
+ throw error;
785
+ }
786
+ }
640
787
  /**
641
788
  * Unset the given columns
642
789
  */
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.js","sources":["../../src/aggregate/aggregate.ts"],"sourcesContent":[null],"names":["ModelEvents","query","SortPipeline","SortByPipeline","SortRandomPipeline","GroupByPipeline","year","$agg","month","dayOfMonth","week","get","LimitPipeline","SkipPipeline","SelectPipeline","DeselectPipeline","UnwindPipeline","WherePipeline","WhereExpression","toOperator","OrWherePipeline","LookupPipeline","last","ObjectId","parseValuesInObject","log","count","parsePipelines"],"mappings":"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"}
1
+ {"version":3,"file":"aggregate.js","sources":["../../src/aggregate/aggregate.ts"],"sourcesContent":[null],"names":["ModelEvents","query","SortPipeline","SortByPipeline","SortRandomPipeline","GroupByPipeline","year","$agg","month","dayOfMonth","week","get","LimitPipeline","SkipPipeline","SelectPipeline","DeselectPipeline","UnwindPipeline","WherePipeline","WhereExpression","toOperator","OrWherePipeline","LookupPipeline","last","ObjectId","parseValuesInObject","log","count","parsePipelines"],"mappings":"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"}
@@ -107,7 +107,7 @@ export declare class Blueprint {
107
107
  /**
108
108
  * Get collection instance
109
109
  */
110
- collection(): Collection;
110
+ collection(): Collection<TSchema>;
111
111
  /**
112
112
  * Rename collection to the given name
113
113
  */
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAY,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,CAAC;AAE9D,qBAAa,UAAU;IACrB;;OAEG;IACI,MAAM,EAAG,WAAW,CAAC;IAE5B;;OAEG;IACI,QAAQ,EAAG,QAAQ,CAAC;IAE3B;;OAEG;IACH,SAAS,CAAC,uBAAuB,UAAS;IAE1C;;OAEG;IACI,cAAc,EAAE,sBAAsB,CAO3C;IAEF;;OAEG;IACU,OAAO,CAClB,sBAAsB,CAAC,EAAE,sBAAsB,GAAG,kBAAkB;IA8EtE;;OAEG;IACI,WAAW;IAIlB;;OAEG;IACH,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAI5D;;OAEG;IACI,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG;IAInD;;OAEG;IACI,WAAW,CAAC,IAAI,EAAE,MAAM;CAKhC;AAED,eAAO,MAAM,UAAU,YAAmB,CAAC"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAY,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,CAAC;AAE9D,qBAAa,UAAU;IACrB;;OAEG;IACI,MAAM,EAAG,WAAW,CAAC;IAE5B;;OAEG;IACI,QAAQ,EAAG,QAAQ,CAAC;IAE3B;;OAEG;IACH,SAAS,CAAC,uBAAuB,UAAS;IAE1C;;OAEG;IACI,cAAc,EAAE,sBAAsB,CAO3C;IAEF;;OAEG;IACU,OAAO,CAClB,sBAAsB,CAAC,EAAE,sBAAsB,GAAG,kBAAkB;IA+EtE;;OAEG;IACI,WAAW;IAIlB;;OAEG;IACH,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAI5D;;OAEG;IACI,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG;IAInD;;OAEG;IACI,WAAW,CAAC,IAAI,EAAE,MAAM;CAKhC;AAED,eAAO,MAAM,UAAU,YAAmB,CAAC"}
package/cjs/connection.js CHANGED
@@ -38,6 +38,7 @@
38
38
  const { host, port, username, password, database: databaseName, dbAuth, url, ...otherConnectionOptions } = this.configurations;
39
39
  try {
40
40
  logger.log.info("database", "connection", `Connecting to the database ${copper.colors.goldBright(databaseName)}`);
41
+ //
41
42
  const { model: _, ...connectionOptions } = otherConnectionOptions;
42
43
  if (dbAuth) {
43
44
  connectionOptions.authSource = dbAuth;
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sources":["../src/connection.ts"],"sourcesContent":[null],"names":["setDatabaseConfigurations","log","colors","MongoClient","database","events","Database"],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sources":["../src/connection.ts"],"sourcesContent":[null],"names":["setDatabaseConfigurations","log","colors","MongoClient","database","events","Database"],"mappings":"mVAWa,UAAU,CAAA;AACrB;;AAEG;AACI,IAAA,MAAM,CAAe;AAE5B;;AAEG;AACI,IAAA,QAAQ,CAAY;AAE3B;;AAEG;IACO,uBAAuB,GAAG,KAAK,CAAC;AAE1C;;AAEG;AACI,IAAA,cAAc,GAA2B;AAC9C,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,MAAM,EAAE,EAAE;KACX,CAAC;AAEF;;AAEG;IACI,MAAM,OAAO,CAClB,sBAAoE,EAAA;QAEpE,IAAI,IAAI,CAAC,uBAAuB;YAAE,OAAO;AAEzC,QAAA,IAAI,sBAAsB,EAAE;YAC1B,IAAI,CAAC,cAAc,GAAG;gBACpB,GAAG,IAAI,CAAC,cAAc;AACtB,gBAAA,GAAG,sBAAsB;aAC1B,CAAC;AAEF,YAAAA,gCAAyB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAChD,SAAA;QAED,MAAM,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,MAAM,EACN,GAAG,EACH,GAAG,sBAAsB,EAC1B,GAAG,IAAI,CAAC,cAAc,CAAC;QAExB,IAAI;AACF,YAAAC,UAAG,CAAC,IAAI,CACN,UAAU,EACV,YAAY,EACZ,CAAA,2BAAA,EAA8BC,aAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA,CAAE,CAChE,CAAC;;YAGF,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,iBAAiB,EAAE,GAAG,sBAAsB,CAAC;AAElE,YAAA,IAAI,MAAM,EAAE;AACV,gBAAA,iBAAiB,CAAC,UAAU,GAAG,MAAM,CAAC;AACvC,aAAA;AAED,YAAA,IAAI,QAAQ,IAAI,QAAQ,IAAI,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,IAAI,GAAG;oBACvB,QAAQ;oBACR,QAAQ;iBACT,CAAC;AACH,aAAA;AAED,YAAA,IAAI,CAAC,MAAM,GAAG,MAAMC,mBAAW,CAAC,OAAO,CACrC,GAAG,IAAI,CAAA,UAAA,EAAa,IAAI,CAAI,CAAA,EAAA,IAAI,EAAE,EAClC,iBAAiB,CAClB,CAAC;YAEF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;AAE3D,YAAA,IAAI,CAAC,QAAQ,GAAGC,iBAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAE1E,YAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;;YAGpC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAK;AAC3B,gBAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC9B,aAAC,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACpCH,UAAG,CAAC,IAAI,CACN,UAAU,EACV,YAAY,EACZ,sEAAsE,CACvE,CAAC;AACH,aAAA;AAAM,iBAAA;gBACLA,UAAG,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,EAAE,2BAA2B,CAAC,CAAC;AACpE,aAAA;AAED,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACjC,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;YACdA,UAAG,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AAE3C,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC9B,SAAA;KACF;AAED;;AAEG;IACI,WAAW,GAAA;QAChB,OAAO,IAAI,CAAC,uBAAuB,CAAC;KACrC;AAED;;AAEG;AACO,IAAA,OAAO,CAAC,SAA0B,EAAE,GAAG,IAAW,EAAA;QAC1D,OAAOI,uBAAM,CAAC,OAAO,CAAC,CAAA,oBAAA,EAAuB,SAAS,CAAA,CAAE,EAAE,GAAG,IAAI,CAAC,CAAC;KACpE;AAED;;AAEG;IACI,EAAE,CAAC,SAA0B,EAAE,QAAa,EAAA;QACjD,OAAOA,uBAAM,CAAC,SAAS,CAAC,CAAA,oBAAA,EAAuB,SAAS,CAAE,CAAA,EAAE,QAAQ,CAAC,CAAC;KACvE;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,IAAY,EAAA;QAC7B,OAAO,IAAIC,iBAAQ,EAAE;aAClB,WAAW,CAAE,IAAI,CAAC,MAAsB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;aAClD,aAAa,CAAC,IAAI,CAAC,CAAC;KACxB;AACF,CAAA;AAEY,MAAA,UAAU,GAAG,IAAI,UAAU"}
package/cjs/database.d.ts CHANGED
@@ -1,11 +1,17 @@
1
1
  /// <reference types="node" />
2
2
  import { AsyncLocalStorage } from "async_hooks";
3
- import type { ClientSession, ClientSessionOptions, Collection, Db } from "mongodb";
3
+ import type { ClientSession, ClientSessionOptions, Collection, Db, Document } from "mongodb";
4
4
  import type { Connection } from "./connection";
5
5
  export type DatabaseSessionTransaction = {
6
6
  session: ClientSession;
7
7
  database: Database;
8
8
  };
9
+ export type DatabaseTransactionCallbackOptions = {
10
+ rollback: symbol;
11
+ commit: symbol;
12
+ session: ClientSession;
13
+ };
14
+ export type DatabaseTransactionCallback = (options: DatabaseTransactionCallbackOptions) => Promise<symbol | void>;
9
15
  export declare class Database {
10
16
  /**
11
17
  * MongoDB Internal Database instance
@@ -16,6 +22,12 @@ export declare class Database {
16
22
  */
17
23
  connection: Connection;
18
24
  sessionsContainer: AsyncLocalStorage<DatabaseSessionTransaction>;
25
+ /**
26
+ * Perform a database transaction
27
+ *
28
+ * @todo There is an issue when executing models with writing ops that have events on abort, it will not rollback the transaction
29
+ */
30
+ transaction(callback: DatabaseTransactionCallback, sessionOptions?: ClientSessionOptions): Promise<unknown>;
19
31
  /**
20
32
  * Create a new transaction session and wrap it with a context
21
33
  */
@@ -35,7 +47,7 @@ export declare class Database {
35
47
  /**
36
48
  * Get database collection instance
37
49
  */
38
- collection(collection: string): Collection;
50
+ collection<TSchema extends Document = Document>(collection: string): Collection<TSchema>;
39
51
  /**
40
52
  * List collection names
41
53
  */
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,EAAE,EACH,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,qBAAa,QAAQ;IACnB;;OAEG;IACI,QAAQ,EAAG,EAAE,CAAC;IAErB;;OAEG;IACI,UAAU,EAAG,UAAU,CAAC;IAExB,iBAAiB,gDAC8B;IAEtD;;OAEG;IACU,YAAY,CACvB,QAAQ,EAAE,CAAC,WAAW,EAAE,0BAA0B,KAAK,OAAO,CAAC,GAAG,CAAC,EACnE,cAAc,GAAE,oBAMf;IAgCH;;OAEG;IACI,gBAAgB;IAGvB;;OAEG;IACI,aAAa,CAAC,UAAU,EAAE,UAAU;IAM3C;;OAEG;IACI,WAAW,CAAC,QAAQ,EAAE,EAAE;IAM/B;;OAEG;IACI,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU;IAIjD;;OAEG;IACU,mBAAmB;IAMhC;;OAEG;IACU,IAAI;CAGlB;AAED,eAAO,MAAM,QAAQ,UAAiB,CAAC"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,EAAE,EACF,QAAQ,EACT,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAKF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,CACxC,OAAO,EAAE,kCAAkC,KACxC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAE5B,qBAAa,QAAQ;IACnB;;OAEG;IACI,QAAQ,EAAG,EAAE,CAAC;IAErB;;OAEG;IACI,UAAU,EAAG,UAAU,CAAC;IAExB,iBAAiB,gDAC8B;IAEtD;;;;OAIG;IACU,WAAW,CACtB,QAAQ,EAAE,2BAA2B,EACrC,cAAc,GAAE,oBAMf;IA2CH;;OAEG;IACU,YAAY,CACvB,QAAQ,EAAE,CAAC,WAAW,EAAE,0BAA0B,KAAK,OAAO,CAAC,GAAG,CAAC,EACnE,cAAc,GAAE,oBAMf;IAgCH;;OAEG;IACI,gBAAgB;IAGvB;;OAEG;IACI,aAAa,CAAC,UAAU,EAAE,UAAU;IAM3C;;OAEG;IACI,WAAW,CAAC,QAAQ,EAAE,EAAE;IAM/B;;OAEG;IACI,UAAU,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,EACnD,UAAU,EAAE,MAAM,GACjB,UAAU,CAAC,OAAO,CAAC;IAItB;;OAEG;IACU,mBAAmB;IAMhC;;OAEG;IACU,IAAI;CAGlB;AAED,eAAO,MAAM,QAAQ,UAAiB,CAAC"}
package/cjs/database.js CHANGED
@@ -1,4 +1,6 @@
1
- 'use strict';var async_hooks=require('async_hooks');class Database {
1
+ 'use strict';var async_hooks=require('async_hooks');const ROLLBACK_SYMBOL = Symbol("rollback");
2
+ const COMMIT_SYMBOL = Symbol("commit");
3
+ class Database {
2
4
  /**
3
5
  * MongoDB Internal Database instance
4
6
  */
@@ -8,6 +10,56 @@
8
10
  */
9
11
  connection;
10
12
  sessionsContainer = new async_hooks.AsyncLocalStorage();
13
+ /**
14
+ * Perform a database transaction
15
+ *
16
+ * @todo There is an issue when executing models with writing ops that have events on abort, it will not rollback the transaction
17
+ */
18
+ async transaction(callback, sessionOptions = {
19
+ defaultTransactionOptions: {
20
+ readPreference: "primary",
21
+ readConcern: { level: "local" },
22
+ writeConcern: { w: "majority" },
23
+ },
24
+ }) {
25
+ return new Promise((resolve, reject) => {
26
+ const session = this.connection.client.startSession(sessionOptions);
27
+ this.sessionsContainer.run({
28
+ session,
29
+ database: this,
30
+ }, async () => {
31
+ try {
32
+ // Begin transaction using withTransaction
33
+ await session.withTransaction(async () => {
34
+ // Execute the callback and let it control rollback/commit
35
+ const output = await callback({
36
+ session,
37
+ commit: COMMIT_SYMBOL,
38
+ rollback: ROLLBACK_SYMBOL,
39
+ });
40
+ if (output === ROLLBACK_SYMBOL) {
41
+ // If the callback explicitly returns rollback, rollback
42
+ await session.abortTransaction();
43
+ await session.endSession(); // Always end the session
44
+ resolve(false);
45
+ }
46
+ else {
47
+ // If the callback explicitly returns commit, commit
48
+ await session.commitTransaction();
49
+ await session.endSession(); // Always end the session
50
+ resolve(true); // Resolve promise successfully
51
+ }
52
+ });
53
+ }
54
+ catch (error) {
55
+ console.log("Transaction failed, rolling back...", error);
56
+ await session.abortTransaction(); // Rollback on any error
57
+ await session.endSession(); // Always end the session
58
+ reject(error); // Reject promise with error
59
+ }
60
+ });
61
+ });
62
+ }
11
63
  /**
12
64
  * Create a new transaction session and wrap it with a context
13
65
  */
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sources":["../src/database.ts"],"sourcesContent":[null],"names":["AsyncLocalStorage"],"mappings":"0DAca,QAAQ,CAAA;AACnB;;AAEG;AACI,IAAA,QAAQ,CAAM;AAErB;;AAEG;AACI,IAAA,UAAU,CAAc;AAExB,IAAA,iBAAiB,GACtB,IAAIA,6BAAiB,EAA8B,CAAC;AAEtD;;AAEG;AACI,IAAA,MAAM,YAAY,CACvB,QAAmE,EACnE,cAAuC,GAAA;AACrC,QAAA,yBAAyB,EAAE;AACzB,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,WAAW,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;AAC/B,YAAA,YAAY,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE;AAChC,SAAA;AACF,KAAA,EAAA;AAED,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAEpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB;gBACE,OAAO;AACP,gBAAA,QAAQ,EAAE,IAAI;aACf,EACD,YAAW;gBACT,IAAI;AACF,oBAAA,MAAM,OAAO,CAAC,eAAe,CAAC,YAAW;AACvC,wBAAA,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;4BAC5B,OAAO;AACP,4BAAA,QAAQ,EAAE,IAAI;AACf,yBAAA,CAAC,CAAC;wBAEH,OAAO,CAAC,MAAM,CAAC,CAAC;wBAEhB,OAAO,CAAC,iBAAiB,EAAE,CAAC;AAC9B,qBAAC,CAAC,CAAC;AACJ,iBAAA;AAAC,gBAAA,OAAO,KAAK,EAAE;oBACd,MAAM,CAAC,KAAK,CAAC,CAAC;AACf,iBAAA;AAAS,wBAAA;oBACR,OAAO,CAAC,UAAU,EAAE,CAAC;AACtB,iBAAA;AACH,aAAC,CACF,CAAC;AACJ,SAAC,CAAC,CAAC;KACJ;AAED;;AAEG;IACI,gBAAgB,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;KAC1C;AACD;;AAEG;AACI,IAAA,aAAa,CAAC,UAAsB,EAAA;AACzC,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AAE7B,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,QAAY,EAAA;AAC7B,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAEzB,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,UAAU,CAAC,UAAkB,EAAA;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;KAC7C;AAED;;AAEG;AACI,IAAA,MAAM,mBAAmB,GAAA;QAC9B,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,CAC1D,UAAU,IAAI,UAAU,CAAC,IAAI,CAC9B,CAAC;KACH;AAED;;AAEG;AACI,IAAA,MAAM,IAAI,GAAA;AACf,QAAA,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;KAC3C;AACF,CAAA;AAEY,MAAA,QAAQ,GAAG,IAAI,QAAQ"}
1
+ {"version":3,"file":"database.js","sources":["../src/database.ts"],"sourcesContent":[null],"names":["AsyncLocalStorage"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migration-office.d.ts","sourceRoot":"","sources":["../../src/migration/migration-office.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9D,qBAAa,eAAe;IAC1B;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,mBAAmB,EAAE,CAAM;IAEjD;;OAEG;IACI,QAAQ,CAAC,SAAS,EAAE,SAAS;IA0BpC;;OAEG;IACI,IAAI;IAIX;;OAEG;IACI,UAAU;CAGlB;AAED,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
1
+ {"version":3,"file":"migration-office.d.ts","sourceRoot":"","sources":["../../src/migration/migration-office.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9D,qBAAa,eAAe;IAC1B;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,mBAAmB,EAAE,CAAM;IAEjD;;OAEG;IACI,QAAQ,CAAC,SAAS,EAAE,SAAS;IAwBpC;;OAEG;IACI,IAAI;IAIX;;OAEG;IACI,UAAU;CAGlB;AAED,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
@@ -16,7 +16,6 @@
16
16
  },
17
17
  async executeDown() {
18
18
  const blueprint = migration.blueprint.clone();
19
- console.log(blueprint.collectionName);
20
19
  await migration.down(blueprint);
21
20
  await blueprint.execute();
22
21
  },
@@ -1 +1 @@
1
- {"version":3,"file":"migration-office.js","sources":["../../src/migration/migration-office.ts"],"sourcesContent":[null],"names":[],"mappings":"mBAEa,eAAe,CAAA;AAC1B;;AAEG;IACO,UAAU,GAA0B,EAAE,CAAC;AAEjD;;AAEG;AACI,IAAA,QAAQ,CAAC,SAAoB,EAAA;AAClC,QAAA,MAAM,mBAAmB,GAAG;AAC1B,YAAA,GAAG,SAAS;AACZ,YAAA,MAAM,SAAS,GAAA;gBACb,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;AAE9C,gBAAA,MAAM,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAE9B,gBAAA,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;aAC3B;AACD,YAAA,MAAM,WAAW,GAAA;gBACf,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;AAE9C,gBAAA,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;AAEtC,gBAAA,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAEhC,gBAAA,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;aAC3B;SACF,CAAC;AAEF,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAE1C,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;IACI,IAAI,GAAA;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED;;AAEG;IACI,UAAU,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;KAC9D;AACF,CAAA;AAEY,MAAA,eAAe,GAAG,IAAI,eAAe"}
1
+ {"version":3,"file":"migration-office.js","sources":["../../src/migration/migration-office.ts"],"sourcesContent":[null],"names":[],"mappings":"mBAEa,eAAe,CAAA;AAC1B;;AAEG;IACO,UAAU,GAA0B,EAAE,CAAC;AAEjD;;AAEG;AACI,IAAA,QAAQ,CAAC,SAAoB,EAAA;AAClC,QAAA,MAAM,mBAAmB,GAAG;AAC1B,YAAA,GAAG,SAAS;AACZ,YAAA,MAAM,SAAS,GAAA;gBACb,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;AAE9C,gBAAA,MAAM,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAE9B,gBAAA,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;aAC3B;AACD,YAAA,MAAM,WAAW,GAAA;gBACf,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;AAE9C,gBAAA,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAEhC,gBAAA,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;aAC3B;SACF,CAAC;AAEF,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAE1C,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;IACI,IAAI,GAAA;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED;;AAEG;IACI,UAAU,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;KAC9D;AACF,CAAA;AAEY,MAAA,eAAe,GAAG,IAAI,eAAe"}
@@ -27,7 +27,7 @@ export declare class MigrationOfficer {
27
27
  /**
28
28
  * Get migrations list
29
29
  */
30
- list(): Promise<any>;
30
+ list(): Promise<WithId<T>[]>;
31
31
  }
32
32
  export declare const migrationOfficer: MigrationOfficer;
33
33
  //# sourceMappingURL=migration-officer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelAggregate.d.ts","sourceRoot":"","sources":["../../src/model/ModelAggregate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAQ,SAAS,EAAkB,MAAM,cAAc,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,MAAM,EACN,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAEjB,qBAAa,cAAc,CAAC,CAAC,SAAS,KAAK,CAAE,SAAQ,SAAS;IAUzC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,KAAK;IATzD;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,aAAa,CAAM;IAE1C;;OAEG;gBACmC,KAAK,EAAE,OAAO,KAAK;IAKzD;;OAEG;IACU,GAAG,CAAC,MAAM,GAAG,CAAC,EACzB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,GAC7B,OAAO,CAAC,MAAM,EAAE,CAAC;IAmBpB;;OAEG;IACU,YAAY,CAAC,IAAI,SAAS,QAAQ,GAAG,QAAQ,EACxD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,CAAC,CAAC;IAIb;;;;;OAKG;IACU,aAAa,CAAC,IAAI,SAAS,QAAQ,GAAG,QAAQ,EACzD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,CAAC,EAAE,CAAC;IAQf;;OAEG;IACU,KAAK,CAAC,MAAM,GAAG,CAAC,EAC3B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG;IAK9B;;OAEG;IACU,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG;IAI/C;;OAEG;IACU,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM;IAIlC;;OAEG;IACU,QAAQ,CAAC,CAAC,GAAG,CAAC,EACzB,IAAI,SAAI,EACR,KAAK,SAAqB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAIhC;;OAEG;IACU,MAAM;IAUnB;;OAEG;IACI,OAAO,CACZ,OAAO,EAAE,MAAM,GAAG,aAAa,EAC/B,OAAO,CAAC,EACJ;QACE,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,QAAQ,EAAE,CAAC,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC;QACvC,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,GACD,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,GAAG,CAAC;IA+BrC;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAQjD;;OAEG;IACI,YAAY,CACjB,OAAO,EAAE,MAAM,GAAG,aAAa,EAC/B,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,QAAQ,EAAE,CAAC,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC;QACvC,EAAE,CAAC,EAAE,MAAM,CAAC;KACb;IAaH;;OAEG;IACI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE;IAqC/C;;OAEG;IACI,KAAK;CAOb"}
1
+ {"version":3,"file":"ModelAggregate.d.ts","sourceRoot":"","sources":["../../src/model/ModelAggregate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAQ,SAAS,EAAkB,MAAM,cAAc,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,MAAM,EACN,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAEjB,qBAAa,cAAc,CAAC,CAAC,SAAS,KAAK,CAAE,SAAQ,SAAS;IAUzC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,KAAK;IATzD;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,aAAa,CAAM;IAE1C;;OAEG;gBACmC,KAAK,EAAE,OAAO,KAAK;IAKzD;;OAEG;IACU,GAAG,CAAC,MAAM,GAAG,CAAC,EACzB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,GAC7B,OAAO,CAAC,MAAM,EAAE,CAAC;IAmBpB;;OAEG;IACU,YAAY,CAAC,IAAI,SAAS,QAAQ,GAAG,QAAQ,EACxD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,CAAC,CAAC;IAIb;;;;;OAKG;IACU,aAAa,CAAC,IAAI,SAAS,QAAQ,GAAG,QAAQ,EACzD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,CAAC,EAAE,CAAC;IAQf;;OAEG;IACU,KAAK,CAAC,MAAM,GAAG,CAAC,EAC3B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG;IAK9B;;OAEG;IACU,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG;IAI/C;;OAEG;IACU,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM;IAIlC;;OAEG;IACU,QAAQ,CAAC,CAAC,GAAG,CAAC,EACzB,IAAI,SAAI,EACR,KAAK,SAAqB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAIhC;;OAEG;IACU,MAAM;IAUnB;;OAEG;IACI,OAAO,CACZ,OAAO,EAAE,MAAM,GAAG,aAAa,EAC/B,OAAO,CAAC,EACJ;QACE,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,QAAQ,EAAE,CAAC,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC;QACvC,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,GACD,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,GAAG,CAAC;IA+BrC;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAgBjD;;OAEG;IACI,YAAY,CACjB,OAAO,EAAE,MAAM,GAAG,aAAa,EAC/B,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,QAAQ,EAAE,CAAC,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC;QACvC,EAAE,CAAC,EAAE,MAAM,CAAC;KACb;IAeH;;OAEG;IACI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE;IAqC/C;;OAEG;IACI,KAAK;CAOb"}
@@ -1,4 +1,4 @@
1
- 'use strict';var reinforcements=require('@mongez/reinforcements'),expressions=require('../aggregate/expressions.js');require('@mongez/supportive-is'),require('@mongez/time-wizard');var SelectPipeline=require('../aggregate/SelectPipeline.js'),aggregate=require('../aggregate/aggregate.js'),joinableProxy=require('../utils/joinable-proxy.js');class ModelAggregate extends aggregate.Aggregate {
1
+ 'use strict';var copper=require('@mongez/copper'),reinforcements=require('@mongez/reinforcements'),expressions=require('../aggregate/expressions.js');require('@mongez/supportive-is'),require('@mongez/time-wizard');var SelectPipeline=require('../aggregate/SelectPipeline.js'),aggregate=require('../aggregate/aggregate.js'),joinableProxy=require('../utils/joinable-proxy.js');class ModelAggregate extends aggregate.Aggregate {
2
2
  model;
3
3
  /**
4
4
  * Joining list
@@ -112,21 +112,30 @@
112
112
  * Get joinable instance for current model
113
113
  */
114
114
  getJoinable(joinable) {
115
+ let joinableObject;
115
116
  if (typeof joinable === "string") {
116
- joinable = this.model.relations[joinable];
117
+ joinableObject = this.model.relations[joinable];
118
+ if (!joinableObject) {
119
+ throw new Error(`Call to undefined joinable ${copper.colors.redBright(joinable)} in ${this.model.name} model relations`);
120
+ }
121
+ }
122
+ else {
123
+ joinableObject = joinable;
117
124
  }
118
- return joinableProxy.joinableProxy(joinable.clone());
125
+ return joinableProxy.joinableProxy(joinableObject.clone());
119
126
  }
120
127
  /**
121
128
  * Perform a join and count the records of the joined collection
122
129
  */
123
130
  countJoining(joining, options) {
124
- joining = this.getJoinable(joining);
125
- const as = joining.get("as");
126
- const returnAs = options?.as || as + "Count";
127
- return this.joining(joining, options).addField(returnAs, {
131
+ const joiningObject = this.getJoinable(joining);
132
+ const as = joiningObject.get("as");
133
+ const returnAs = options?.as || (as || "document") + "Count";
134
+ return this.joining(joiningObject, options)
135
+ .addField(returnAs, {
128
136
  $size: expressions.$agg.columnName(as),
129
- });
137
+ })
138
+ .deselect([as]);
130
139
  }
131
140
  /**
132
141
  * Join the given alias