@hg-ts/repository 0.1.50 → 0.1.51

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 (89) hide show
  1. package/.eslintcache +1 -1
  2. package/.turbo/turbo-build.log +2 -0
  3. package/.turbo/turbo-lint$colon$ts.log +2 -0
  4. package/.turbo/turbo-test.log +16 -0
  5. package/dist/exceptions/aggregate.not-found.exception.d.ts +5 -4
  6. package/dist/exceptions/aggregate.not-found.exception.d.ts.map +1 -1
  7. package/dist/exceptions/aggregate.not-found.exception.js +4 -0
  8. package/dist/exceptions/aggregate.not-found.exception.js.map +1 -1
  9. package/dist/repositories/base.memory.repository.d.ts +0 -1
  10. package/dist/repositories/base.memory.repository.d.ts.map +1 -1
  11. package/dist/repositories/base.memory.repository.js.map +1 -1
  12. package/dist/repositories/base.repository.d.ts +0 -2
  13. package/dist/repositories/base.repository.d.ts.map +1 -1
  14. package/dist/repositories/base.repository.js +1 -2
  15. package/dist/repositories/base.repository.js.map +1 -1
  16. package/dist/repositories/repository.d.ts +0 -1
  17. package/dist/repositories/repository.d.ts.map +1 -1
  18. package/dist/tests/base-repository.test.d.ts +4 -2
  19. package/dist/tests/base-repository.test.d.ts.map +1 -1
  20. package/dist/tests/base-repository.test.js +39 -1
  21. package/dist/tests/base-repository.test.js.map +1 -1
  22. package/dist/tests/test.aggregate.d.ts +0 -1
  23. package/dist/tests/test.aggregate.d.ts.map +1 -1
  24. package/dist/tests/test.not-found.exception.d.ts +0 -1
  25. package/dist/tests/test.not-found.exception.d.ts.map +1 -1
  26. package/eslint.config.mjs +3 -0
  27. package/package.json +27 -33
  28. package/src/exceptions/aggregate.not-found.exception.ts +11 -4
  29. package/src/repositories/base.repository.ts +0 -2
  30. package/src/tests/base-repository.test.ts +42 -3
  31. package/tsconfig.json +1 -1
  32. package/.eslintrc.json +0 -3
  33. package/.mocharc.cjs +0 -1
  34. package/.nyc_output/0994dcba-d1a0-492d-8874-d50513742fda.json +0 -1
  35. package/.nyc_output/7fa066c7-2378-4646-9970-80bef7ba951c.json +0 -1
  36. package/.nyc_output/ac0e081a-3e6d-4ce0-bf23-7cd02388a247.json +0 -1
  37. package/.nyc_output/processinfo/0994dcba-d1a0-492d-8874-d50513742fda.json +0 -1
  38. package/.nyc_output/processinfo/7fa066c7-2378-4646-9970-80bef7ba951c.json +0 -1
  39. package/.nyc_output/processinfo/ac0e081a-3e6d-4ce0-bf23-7cd02388a247.json +0 -1
  40. package/.nyc_output/processinfo/index.json +0 -1
  41. package/.nycrc +0 -3
  42. package/coverage/cobertura-coverage.xml +0 -239
  43. package/coverage/coverage-final.json +0 -11
  44. package/dist-esm/exceptions/aggregate.not-found.exception.d.ts +0 -9
  45. package/dist-esm/exceptions/aggregate.not-found.exception.d.ts.map +0 -1
  46. package/dist-esm/exceptions/aggregate.not-found.exception.js +0 -14
  47. package/dist-esm/exceptions/aggregate.not-found.exception.js.map +0 -1
  48. package/dist-esm/exceptions/index.d.ts +0 -2
  49. package/dist-esm/exceptions/index.d.ts.map +0 -1
  50. package/dist-esm/exceptions/index.js +0 -2
  51. package/dist-esm/exceptions/index.js.map +0 -1
  52. package/dist-esm/index.d.ts +0 -4
  53. package/dist-esm/index.d.ts.map +0 -1
  54. package/dist-esm/index.js +0 -4
  55. package/dist-esm/index.js.map +0 -1
  56. package/dist-esm/repositories/base.memory.repository.d.ts +0 -13
  57. package/dist-esm/repositories/base.memory.repository.d.ts.map +0 -1
  58. package/dist-esm/repositories/base.memory.repository.js +0 -42
  59. package/dist-esm/repositories/base.memory.repository.js.map +0 -1
  60. package/dist-esm/repositories/base.repository.d.ts +0 -19
  61. package/dist-esm/repositories/base.repository.d.ts.map +0 -1
  62. package/dist-esm/repositories/base.repository.js +0 -24
  63. package/dist-esm/repositories/base.repository.js.map +0 -1
  64. package/dist-esm/repositories/index.d.ts +0 -4
  65. package/dist-esm/repositories/index.d.ts.map +0 -1
  66. package/dist-esm/repositories/index.js +0 -4
  67. package/dist-esm/repositories/index.js.map +0 -1
  68. package/dist-esm/repositories/repository.d.ts +0 -17
  69. package/dist-esm/repositories/repository.d.ts.map +0 -1
  70. package/dist-esm/repositories/repository.js +0 -3
  71. package/dist-esm/repositories/repository.js.map +0 -1
  72. package/dist-esm/tests/base-repository.test.d.ts +0 -9
  73. package/dist-esm/tests/base-repository.test.d.ts.map +0 -1
  74. package/dist-esm/tests/base-repository.test.js +0 -53
  75. package/dist-esm/tests/base-repository.test.js.map +0 -1
  76. package/dist-esm/tests/test.aggregate.d.ts +0 -8
  77. package/dist-esm/tests/test.aggregate.d.ts.map +0 -1
  78. package/dist-esm/tests/test.aggregate.js +0 -11
  79. package/dist-esm/tests/test.aggregate.js.map +0 -1
  80. package/dist-esm/tests/test.memory.repository.d.ts +0 -8
  81. package/dist-esm/tests/test.memory.repository.d.ts.map +0 -1
  82. package/dist-esm/tests/test.memory.repository.js +0 -12
  83. package/dist-esm/tests/test.memory.repository.js.map +0 -1
  84. package/dist-esm/tests/test.not-found.exception.d.ts +0 -7
  85. package/dist-esm/tests/test.not-found.exception.d.ts.map +0 -1
  86. package/dist-esm/tests/test.not-found.exception.js +0 -7
  87. package/dist-esm/tests/test.not-found.exception.js.map +0 -1
  88. package/mocha.junit.xml +0 -13
  89. package/tsconfig.esm.json +0 -9
package/.eslintcache CHANGED
@@ -1 +1 @@
1
- [{"/Volumes/Work/ts/hg/framework/packages/repository/src/exceptions/aggregate.not-found.exception.ts":"1","/Volumes/Work/ts/hg/framework/packages/repository/src/exceptions/index.ts":"2","/Volumes/Work/ts/hg/framework/packages/repository/src/index.ts":"3","/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/base.memory.repository.ts":"4","/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/base.repository.ts":"5","/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/index.ts":"6","/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/repository.ts":"7","/Volumes/Work/ts/hg/framework/packages/repository/src/tests/base-repository.test.ts":"8","/Volumes/Work/ts/hg/framework/packages/repository/src/tests/test.aggregate.ts":"9","/Volumes/Work/ts/hg/framework/packages/repository/src/tests/test.memory.repository.ts":"10","/Volumes/Work/ts/hg/framework/packages/repository/src/tests/test.not-found.exception.ts":"11"},{"size":534,"mtime":1660867531450,"results":"12","hashOfConfig":"13"},{"size":49,"mtime":1658013976770,"results":"14","hashOfConfig":"13"},{"size":87,"mtime":1665300013457,"results":"15","hashOfConfig":"13"},{"size":1723,"mtime":1664318807291,"results":"16","hashOfConfig":"13"},{"size":1424,"mtime":1664318788406,"results":"17","hashOfConfig":"13"},{"size":107,"mtime":1626299896348,"results":"18","hashOfConfig":"13"},{"size":976,"mtime":1664318798972,"results":"19","hashOfConfig":"13"},{"size":1234,"mtime":1698022585984,"results":"20","hashOfConfig":"13"},{"size":284,"mtime":1665300649832,"results":"21","hashOfConfig":"13"},{"size":573,"mtime":1658014313846,"results":"22","hashOfConfig":"13"},{"size":291,"mtime":1658014024533,"results":"23","hashOfConfig":"13"},{"filePath":"24","messages":"25","suppressedMessages":"26","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"hqif00",{"filePath":"27","messages":"28","suppressedMessages":"29","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"30","messages":"31","suppressedMessages":"32","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"33","messages":"34","suppressedMessages":"35","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"36","messages":"37","suppressedMessages":"38","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"39","messages":"40","suppressedMessages":"41","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"42","messages":"43","suppressedMessages":"44","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"45","messages":"46","suppressedMessages":"47","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"48","messages":"49","suppressedMessages":"50","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"51","messages":"52","suppressedMessages":"53","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"54","messages":"55","suppressedMessages":"56","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Volumes/Work/ts/hg/framework/packages/repository/src/exceptions/aggregate.not-found.exception.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/exceptions/index.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/index.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/base.memory.repository.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/base.repository.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/index.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/repositories/repository.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/tests/base-repository.test.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/tests/test.aggregate.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/tests/test.memory.repository.ts",[],[],"/Volumes/Work/ts/hg/framework/packages/repository/src/tests/test.not-found.exception.ts",[],[]]
1
+ [{"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/exceptions/aggregate.not-found.exception.js":"1","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/exceptions/index.js":"2","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/index.js":"3","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/base.memory.repository.js":"4","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/base.repository.js":"5","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/index.js":"6","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/repository.js":"7","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/base-repository.test.js":"8","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/test.aggregate.js":"9","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/test.memory.repository.js":"10","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/test.not-found.exception.js":"11","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/eslint.config.mjs":"12","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/exceptions/aggregate.not-found.exception.ts":"13","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/exceptions/index.ts":"14","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/index.ts":"15","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/base.memory.repository.ts":"16","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/base.repository.ts":"17","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/index.ts":"18","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/repository.ts":"19","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/base-repository.test.ts":"20","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/test.aggregate.ts":"21","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/test.memory.repository.ts":"22","/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/test.not-found.exception.ts":"23"},{"size":792,"mtime":1746292859976,"results":"24","hashOfConfig":"25"},{"size":219,"mtime":1746292859978,"results":"26","hashOfConfig":"25"},{"size":283,"mtime":1746292859988,"results":"27","hashOfConfig":"25"},{"size":1559,"mtime":1746292859986,"results":"28","hashOfConfig":"25"},{"size":809,"mtime":1746292859982,"results":"29","hashOfConfig":"25"},{"size":329,"mtime":1746292859987,"results":"30","hashOfConfig":"25"},{"size":198,"mtime":1746292859979,"results":"31","hashOfConfig":"25"},{"size":4468,"mtime":1746292859996,"results":"32","hashOfConfig":"25"},{"size":425,"mtime":1746292859989,"results":"33","hashOfConfig":"25"},{"size":624,"mtime":1746292859991,"results":"34","hashOfConfig":"25"},{"size":426,"mtime":1746292859990,"results":"35","hashOfConfig":"25"},{"size":59,"mtime":1736896000125,"results":"36","hashOfConfig":"25"},{"size":699,"mtime":1740569961303,"results":"37","hashOfConfig":"38"},{"size":49,"mtime":1736876770677,"results":"39","hashOfConfig":"38"},{"size":87,"mtime":1736876770677,"results":"40","hashOfConfig":"38"},{"size":1723,"mtime":1736876770677,"results":"41","hashOfConfig":"38"},{"size":1361,"mtime":1740570005563,"results":"42","hashOfConfig":"38"},{"size":107,"mtime":1736876770677,"results":"43","hashOfConfig":"38"},{"size":976,"mtime":1736876770677,"results":"44","hashOfConfig":"38"},{"size":2348,"mtime":1740569824579,"results":"45","hashOfConfig":"38"},{"size":284,"mtime":1736876770677,"results":"46","hashOfConfig":"38"},{"size":573,"mtime":1736876770677,"results":"47","hashOfConfig":"38"},{"size":291,"mtime":1736876770677,"results":"48","hashOfConfig":"38"},{"filePath":"49","messages":"50","suppressedMessages":"51","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"1gtnk1i",{"filePath":"52","messages":"53","suppressedMessages":"54","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"55","messages":"56","suppressedMessages":"57","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"58","messages":"59","suppressedMessages":"60","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"61","messages":"62","suppressedMessages":"63","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"64","messages":"65","suppressedMessages":"66","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"67","messages":"68","suppressedMessages":"69","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"70","messages":"71","suppressedMessages":"72","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"73","messages":"74","suppressedMessages":"75","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"76","messages":"77","suppressedMessages":"78","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"79","messages":"80","suppressedMessages":"81","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"82","messages":"83","suppressedMessages":"84","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"85","messages":"86","suppressedMessages":"87","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"i5df87",{"filePath":"88","messages":"89","suppressedMessages":"90","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"91","messages":"92","suppressedMessages":"93","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"94","messages":"95","suppressedMessages":"96","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"97","messages":"98","suppressedMessages":"99","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"100","messages":"101","suppressedMessages":"102","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"103","messages":"104","suppressedMessages":"105","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"106","messages":"107","suppressedMessages":"108","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"109","messages":"110","suppressedMessages":"111","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"112","messages":"113","suppressedMessages":"114","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"115","messages":"116","suppressedMessages":"117","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/exceptions/aggregate.not-found.exception.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/exceptions/index.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/index.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/base.memory.repository.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/base.repository.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/index.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/repositories/repository.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/base-repository.test.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/test.aggregate.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/test.memory.repository.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/dist/tests/test.not-found.exception.js",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/eslint.config.mjs",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/exceptions/aggregate.not-found.exception.ts",[],["118"],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/exceptions/index.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/index.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/base.memory.repository.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/base.repository.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/index.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/repositories/repository.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/base-repository.test.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/test.aggregate.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/test.memory.repository.ts",[],[],"/Users/atsapko/WebstormProjects/personnal/framework/packages/repository/src/tests/test.not-found.exception.ts",[],[],{"ruleId":"119","severity":2,"message":"120","line":25,"column":14,"nodeType":"121","messageId":"122","endLine":25,"endColumn":23,"suppressions":"123"},"no-undefined","Unexpected use of undefined.","Identifier","unexpectedUndefined",["124"],{"kind":"125","justification":"126"},"directive",""]
@@ -0,0 +1,2 @@
1
+
2
+ 
@@ -0,0 +1,2 @@
1
+
2
+ 
@@ -0,0 +1,16 @@
1
+
2
+ ▶ BaseRepositoryTestSuite
3
+ ✔ saveTest (1.473166ms)
4
+ ✔ deleteTest (0.421416ms)
5
+ ✔ updateTest (0.767666ms)
6
+ ✔ getOrFailNotFoundExceptionTest (0.707042ms)
7
+ ✔ getNotFoundWithoutExceptionTest (0.109541ms)
8
+ ✔ BaseRepositoryTestSuite (4.259458ms)
9
+ ℹ tests 5
10
+ ℹ suites 1
11
+ ℹ pass 5
12
+ ℹ fail 0
13
+ ℹ cancelled 0
14
+ ℹ skipped 0
15
+ ℹ todo 0
16
+ ℹ duration_ms 198.380458
@@ -1,9 +1,10 @@
1
1
  import { BaseException } from '@hg-ts/exception';
2
- export type AggregateNotFoundParams = {
3
- id?: unknown;
2
+ export type AggregateNotFoundParams<IdType = unknown> = {
3
+ id?: IdType;
4
4
  code?: number;
5
5
  };
6
- export declare abstract class AggregateNotFoundException extends BaseException {
7
- protected constructor(aggregateName: string, params?: AggregateNotFoundParams);
6
+ export declare abstract class AggregateNotFoundException<IdType = unknown> extends BaseException {
7
+ readonly id?: IdType;
8
+ protected constructor(aggregateName: string, params?: AggregateNotFoundParams<IdType>);
8
9
  }
9
10
  //# sourceMappingURL=aggregate.not-found.exception.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.not-found.exception.d.ts","sourceRoot":"","sources":["../../src/exceptions/aggregate.not-found.exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,MAAM,MAAM,uBAAuB,GAAG;IACrC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAA;AAED,8BAAsB,0BAA2B,SAAQ,aAAa;IACrE,SAAS,aAAa,aAAa,EAAE,MAAM,EAAE,MAAM,GAAE,uBAA4B;CAYjF"}
1
+ {"version":3,"file":"aggregate.not-found.exception.d.ts","sourceRoot":"","sources":["../../src/exceptions/aggregate.not-found.exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,MAAM,MAAM,uBAAuB,CAAC,MAAM,GAAG,OAAO,IAAI;IACvD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAA;AAED,8BAAsB,0BAA0B,CAAC,MAAM,GAAG,OAAO,CAAE,SAAQ,aAAa;IACvF,SAAgB,EAAE,CAAC,EAAE,MAAM,CAAC;IAE5B,SAAS,aAAa,aAAa,EAAE,MAAM,EAAE,MAAM,GAAE,uBAAuB,CAAC,MAAM,CAAM;CAiBzF"}
@@ -4,6 +4,7 @@ exports.AggregateNotFoundException = void 0;
4
4
  const exception_1 = require("@hg-ts/exception");
5
5
  const util_1 = require("util");
6
6
  class AggregateNotFoundException extends exception_1.BaseException {
7
+ id;
7
8
  constructor(aggregateName, params = {}) {
8
9
  const { code, id } = params;
9
10
  const messageParts = [aggregateName];
@@ -12,6 +13,9 @@ class AggregateNotFoundException extends exception_1.BaseException {
12
13
  }
13
14
  messageParts.push('not found');
14
15
  super(messageParts.join(' '), { code });
16
+ if (id !== undefined) {
17
+ this.id = id;
18
+ }
15
19
  }
16
20
  }
17
21
  exports.AggregateNotFoundException = AggregateNotFoundException;
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.not-found.exception.js","sourceRoot":"","sources":["../../src/exceptions/aggregate.not-found.exception.ts"],"names":[],"mappings":";;;AAAA,gDAAiD;AACjD,+BAA8B;AAO9B,MAAsB,0BAA2B,SAAQ,yBAAa;IACrE,YAAsB,aAAqB,EAAE,SAAkC,EAAE;QAChF,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC;QAC5B,MAAM,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC;QAErC,IAAI,EAAE,EAAE;YACP,YAAY,CAAC,IAAI,CAAC,WAAW,IAAA,aAAM,EAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SAC3C;QAED,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE/B,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;CACD;AAbD,gEAaC"}
1
+ {"version":3,"file":"aggregate.not-found.exception.js","sourceRoot":"","sources":["../../src/exceptions/aggregate.not-found.exception.ts"],"names":[],"mappings":";;;AAAA,gDAAiD;AACjD,+BAA8B;AAO9B,MAAsB,0BAA6C,SAAQ,yBAAa;IACvE,EAAE,CAAU;IAE5B,YAAsB,aAAqB,EAAE,SAA0C,EAAE;QACxF,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC;QAC5B,MAAM,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC;QAErC,IAAI,EAAE,EAAE,CAAC;YACR,YAAY,CAAC,IAAI,CAAC,WAAW,IAAA,aAAM,EAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE/B,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAGxC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACd,CAAC;IACF,CAAC;CACD;AApBD,gEAoBC"}
@@ -1,4 +1,3 @@
1
- /// <reference types="@hg-ts/types" />
2
1
  import type { BaseAggregate } from '@hg-ts/domain';
3
2
  import { BaseRepository } from './base.repository';
4
3
  import type { BaseFindOptions, AggregateId } from './repository';
@@ -1 +1 @@
1
- {"version":3,"file":"base.memory.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/base.memory.repository.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EACX,eAAe,EACf,WAAW,EACX,MAAM,cAAc,CAAC;AAWtB,8BAAsB,oBAAoB,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,EAC3E,WAAW,SAAS,eAAe,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAC9E,SAAQ,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC;IAC9C,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAQ;IAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgD;IAE/D,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvD,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;cAInB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;CAcxE"}
1
+ {"version":3,"file":"base.memory.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/base.memory.repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EACX,eAAe,EACf,WAAW,EACX,MAAM,cAAc,CAAC;AAWtB,8BAAsB,oBAAoB,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,EAC3E,WAAW,SAAS,eAAe,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAC9E,SAAQ,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC;IAC9C,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAQ;IAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgD;IAE/D,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvD,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;cAInB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;CAcxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.memory.repository.js","sourceRoot":"","sources":["../../src/repositories/base.memory.repository.ts"],"names":[],"mappings":";;;AACA,uDAAmD;AAMnD,SAAS,KAAK,CAAuC,SAAoB;IACxE,MAAM,kBAAkB,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAEjD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEjC,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAsB,oBAErB,SAAQ,gCAAsC;IACpC,MAAM,GAAqC,IAAI,CAAC;IACzC,WAAW,GAAG,IAAI,GAAG,EAAqC,CAAC;IAErE,KAAK,CAAC,IAAI,CAAC,SAAkC;QACnD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC1E;aAAM;YACN,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;SACxD;IACF,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,SAAkC;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC5E;aAAM;YACN,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;SACzC;IACF,CAAC;IAEM,KAAK,CAAC,KAAK;QACjB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAoB;QAChD,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;QAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACtB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAC9C,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,CAAC;SACvC;QAED,IAAI,OAAO,EAAE,KAAK,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YAC1D,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,CAAC;SACnC;QAED,OAAO,EAAE,CAAC;IACX,CAAC;CACD;AAxCD,oDAwCC"}
1
+ {"version":3,"file":"base.memory.repository.js","sourceRoot":"","sources":["../../src/repositories/base.memory.repository.ts"],"names":[],"mappings":";;;AACA,uDAAmD;AAMnD,SAAS,KAAK,CAAuC,SAAoB;IACxE,MAAM,kBAAkB,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAEjD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEjC,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAsB,oBAErB,SAAQ,gCAAsC;IACpC,MAAM,GAAqC,IAAI,CAAC;IACzC,WAAW,GAAG,IAAI,GAAG,EAAqC,CAAC;IAErE,KAAK,CAAC,IAAI,CAAC,SAAkC;QACnD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,SAAkC;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;IAEM,KAAK,CAAC,KAAK;QACjB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAoB;QAChD,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;QAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAC9C,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,OAAO,EAAE,KAAK,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,EAAE,CAAC;IACX,CAAC;CACD;AAxCD,oDAwCC"}
@@ -1,8 +1,6 @@
1
- /// <reference types="@hg-ts/types" />
2
1
  import type { BaseAggregate } from '@hg-ts/domain';
3
2
  import type { AggregateNotFoundException } from '../exceptions';
4
3
  import { BaseFindOptions, AggregateId, Repository } from './repository';
5
- export declare const INTERNAL_SYMBOL: unique symbol;
6
4
  type KeyType = number | string | symbol;
7
5
  export type InternalData = {
8
6
  updatedKeys: Set<KeyType>;
@@ -1 +1 @@
1
- {"version":3,"file":"base.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/base.repository.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EACN,eAAe,EACf,WAAW,EACX,UAAU,EACV,MAAM,cAAc,CAAC;AAEtB,eAAO,MAAM,eAAe,eAAgC,CAAC;AAE7D,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAExC,MAAM,MAAM,YAAY,GAAG;IACvB,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAC7B,CAAC;AAEF,8BAAsB,cAAc,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,EACrE,WAAW,SAAS,eAAe,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAC9E,SAAQ,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC;IAC7B,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAO7D,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAUzD,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAMjD,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAMpE,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAErF,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,0BAA0B;CAClG"}
1
+ {"version":3,"file":"base.repository.d.ts","sourceRoot":"","sources":["../../src/repositories/base.repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EACN,eAAe,EACf,WAAW,EACX,UAAU,EACV,MAAM,cAAc,CAAC;AAEtB,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAExC,MAAM,MAAM,YAAY,GAAG;IACvB,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CAC7B,CAAC;AAEF,8BAAsB,cAAc,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,EACrE,WAAW,SAAS,eAAe,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAC9E,SAAQ,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC;IAC7B,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAO7D,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAUzD,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAMjD,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAMpE,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAErF,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,0BAA0B;CAClG"}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseRepository = exports.INTERNAL_SYMBOL = void 0;
3
+ exports.BaseRepository = void 0;
4
4
  const repository_1 = require("./repository");
5
- exports.INTERNAL_SYMBOL = Symbol('Repository.Internal');
6
5
  class BaseRepository extends repository_1.Repository {
7
6
  async get(id) {
8
7
  const [entity] = await this.find({ id });
@@ -1 +1 @@
1
- {"version":3,"file":"base.repository.js","sourceRoot":"","sources":["../../src/repositories/base.repository.ts"],"names":[],"mappings":";;;AAEA,6CAIsB;AAET,QAAA,eAAe,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAQ7D,MAAsB,cAErB,SAAQ,uBAAkC;IACnC,KAAK,CAAC,GAAG,CAAC,EAA0B;QAE1C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAEzC,OAAO,MAAM,IAAI,IAAI,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,EAA0B;QAChD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElC,IAAI,MAAM,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,EAA0B;QAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElC,OAAO,MAAM,KAAK,IAAI,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,OAA8B;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAElD,OAAO,QAAQ,CAAC;IACjB,CAAC;CAKD;AAnCD,wCAmCC"}
1
+ {"version":3,"file":"base.repository.js","sourceRoot":"","sources":["../../src/repositories/base.repository.ts"],"names":[],"mappings":";;;AAEA,6CAIsB;AAQtB,MAAsB,cAErB,SAAQ,uBAAkC;IACnC,KAAK,CAAC,GAAG,CAAC,EAA0B;QAE1C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAEzC,OAAO,MAAM,IAAI,IAAI,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,EAA0B;QAChD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,EAA0B;QAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElC,OAAO,MAAM,KAAK,IAAI,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,OAA8B;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAElD,OAAO,QAAQ,CAAC;IACjB,CAAC;CAKD;AAnCD,wCAmCC"}
@@ -1,4 +1,3 @@
1
- /// <reference types="@hg-ts/types" />
2
1
  import type { BaseAggregate } from '@hg-ts/domain';
3
2
  export type AggregateId<Aggregate> = Aggregate extends BaseAggregate<infer X> ? X : never;
4
3
  export type BaseFindOptions<Aggregate extends BaseAggregate<any>> = {
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/repositories/repository.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,MAAM,WAAW,CAAC,SAAS,IAAI,SAAS,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE1F,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,IAAI;IACnE,EAAE,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;CACvD,CAAC;AAEF,8BAAsB,UAAU,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,EACpE,WAAW,SAAS,eAAe,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC;aAC3D,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;aAE5C,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;aAE7D,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;aAEzD,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;aAEjD,IAAI,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;aAEpD,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;aAEtD,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;aAEjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CACtC"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/repositories/repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,MAAM,WAAW,CAAC,SAAS,IAAI,SAAS,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE1F,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,IAAI;IACnE,EAAE,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;CACvD,CAAC;AAEF,8BAAsB,UAAU,CAAC,SAAS,SAAS,aAAa,CAAC,GAAG,CAAC,EACpE,WAAW,SAAS,eAAe,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC;aAC3D,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;aAE5C,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;aAE7D,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;aAEzD,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;aAEjD,IAAI,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;aAEpD,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;aAEtD,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;aAEjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CACtC"}
@@ -1,7 +1,9 @@
1
- import { TestSuite } from '@hg-ts/tests';
2
- export declare class BaseRepositoryTestSuite extends TestSuite {
1
+ import { Suite } from '@hg-ts/tests';
2
+ export declare class BaseRepositoryTestSuite extends Suite {
3
3
  private readonly repository;
4
4
  saveTest(): Promise<void>;
5
+ deleteTest(): Promise<void>;
6
+ updateTest(): Promise<void>;
5
7
  getOrFailNotFoundExceptionTest(): Promise<void>;
6
8
  getNotFoundWithoutExceptionTest(): Promise<void>;
7
9
  beforeEach(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"base-repository.test.d.ts","sourceRoot":"","sources":["../../src/tests/base-repository.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAKN,SAAS,EACT,MAAM,cAAc,CAAC;AAOtB,qBACa,uBAAwB,SAAQ,SAAS;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IAG5C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBzB,8BAA8B,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/C,+BAA+B,IAAI,OAAO,CAAC,IAAI,CAAC;IAMvC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAGjD"}
1
+ {"version":3,"file":"base-repository.test.d.ts","sourceRoot":"","sources":["../../src/tests/base-repository.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAKN,KAAK,EACL,MAAM,cAAc,CAAC;AAOtB,qBACa,uBAAwB,SAAQ,KAAK;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IAG5C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAezB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB3B,8BAA8B,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/C,+BAA+B,IAAI,OAAO,CAAC,IAAI,CAAC;IAMvC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAGjD"}
@@ -7,7 +7,7 @@ const uuid_1 = require("uuid");
7
7
  const test_aggregate_1 = require("./test.aggregate");
8
8
  const test_memory_repository_1 = require("./test.memory.repository");
9
9
  const test_not_found_exception_1 = require("./test.not-found.exception");
10
- let BaseRepositoryTestSuite = class BaseRepositoryTestSuite extends tests_1.TestSuite {
10
+ let BaseRepositoryTestSuite = class BaseRepositoryTestSuite extends tests_1.Suite {
11
11
  repository = new test_memory_repository_1.TestMemoryRepository();
12
12
  async saveTest() {
13
13
  const id = (0, uuid_1.v4)();
@@ -18,6 +18,31 @@ let BaseRepositoryTestSuite = class BaseRepositoryTestSuite extends tests_1.Test
18
18
  (0, tests_1.expect)(savedAggregate).not.toBe(aggregate);
19
19
  (0, tests_1.expect)({ ...savedAggregate }).toMatchObject({ ...aggregate });
20
20
  }
21
+ async deleteTest() {
22
+ const id = (0, uuid_1.v4)();
23
+ const aggregate = new test_aggregate_1.TestAggregate(id);
24
+ await this.repository.save(aggregate);
25
+ const savedAggregate = await this.repository.getOrFail(id);
26
+ (0, tests_1.expect)(savedAggregate).toBeInstanceOf(test_aggregate_1.TestAggregate);
27
+ await this.repository.delete(aggregate);
28
+ await this.repository.getOrFail(id);
29
+ }
30
+ async updateTest() {
31
+ const id = (0, uuid_1.v4)();
32
+ const initialValue = (0, uuid_1.v4)();
33
+ const expectedValue = (0, uuid_1.v4)();
34
+ const aggregate = new test_aggregate_1.TestAggregate(id);
35
+ aggregate.setSomeField(initialValue);
36
+ await this.repository.save(aggregate);
37
+ const savedAggregate = await this.repository.getOrFail(id);
38
+ (0, tests_1.expect)(savedAggregate).toBeInstanceOf(test_aggregate_1.TestAggregate);
39
+ (0, tests_1.expect)(savedAggregate.someField).toBe(initialValue);
40
+ savedAggregate.setSomeField(expectedValue);
41
+ await this.repository.save(savedAggregate);
42
+ const updatedAggregate = await this.repository.getOrFail(id);
43
+ (0, tests_1.expect)(updatedAggregate).toBeInstanceOf(test_aggregate_1.TestAggregate);
44
+ (0, tests_1.expect)(updatedAggregate.someField).toBe(expectedValue);
45
+ }
21
46
  async getOrFailNotFoundExceptionTest() {
22
47
  const id = (0, uuid_1.v4)();
23
48
  await this.repository.getOrFail(id);
@@ -37,6 +62,19 @@ tslib_1.__decorate([
37
62
  tslib_1.__metadata("design:paramtypes", []),
38
63
  tslib_1.__metadata("design:returntype", Promise)
39
64
  ], BaseRepositoryTestSuite.prototype, "saveTest", null);
65
+ tslib_1.__decorate([
66
+ (0, tests_1.Test)(),
67
+ (0, tests_1.ExpectException)(test_not_found_exception_1.TestNotFoundException),
68
+ tslib_1.__metadata("design:type", Function),
69
+ tslib_1.__metadata("design:paramtypes", []),
70
+ tslib_1.__metadata("design:returntype", Promise)
71
+ ], BaseRepositoryTestSuite.prototype, "deleteTest", null);
72
+ tslib_1.__decorate([
73
+ (0, tests_1.Test)(),
74
+ tslib_1.__metadata("design:type", Function),
75
+ tslib_1.__metadata("design:paramtypes", []),
76
+ tslib_1.__metadata("design:returntype", Promise)
77
+ ], BaseRepositoryTestSuite.prototype, "updateTest", null);
40
78
  tslib_1.__decorate([
41
79
  (0, tests_1.Test)(),
42
80
  (0, tests_1.ExpectException)(test_not_found_exception_1.TestNotFoundException),
@@ -1 +1 @@
1
- {"version":3,"file":"base-repository.test.js","sourceRoot":"","sources":["../../src/tests/base-repository.test.ts"],"names":[],"mappings":";;;;AAAA,wCAMsB;AACtB,+BAAkC;AAElC,qDAAiD;AACjD,qEAAgE;AAChE,yEAAmE;AAG5D,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,iBAAS;IACpC,UAAU,GAAG,IAAI,6CAAoB,EAAE,CAAC;IAG5C,AAAN,KAAK,CAAC,QAAQ;QACpB,MAAM,EAAE,GAAG,IAAA,SAAI,GAAE,CAAC;QAClB,MAAM,SAAS,GAAG,IAAI,8BAAa,CAAC,EAAE,CAAC,CAAC;QAExC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAG3D,IAAA,cAAM,EAAC,cAAc,CAAC,CAAC,cAAc,CAAC,8BAAa,CAAC,CAAC;QACrD,IAAA,cAAM,EAAC,cAAc,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAA,cAAM,EAAC,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;IAIY,AAAN,KAAK,CAAC,8BAA8B;QAC1C,MAAM,EAAE,GAAG,IAAA,SAAI,GAAE,CAAC;QAElB,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAGY,AAAN,KAAK,CAAC,+BAA+B;QAC3C,MAAM,EAAE,GAAG,IAAA,SAAI,GAAE,CAAC;QAElB,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAEe,KAAK,CAAC,UAAU;QAC/B,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;CACD,CAAA;AApCY,0DAAuB;AAItB;IADZ,IAAA,YAAI,GAAE;;;;uDAaN;AAIY;IAFZ,IAAA,YAAI,GAAE;IACN,IAAA,uBAAe,EAAC,gDAAqB,CAAC;;;;6EAKtC;AAGY;IADZ,IAAA,YAAI,GAAE;;;;8EAKN;kCA/BW,uBAAuB;IADnC,IAAA,gBAAQ,GAAE;GACE,uBAAuB,CAoCnC"}
1
+ {"version":3,"file":"base-repository.test.js","sourceRoot":"","sources":["../../src/tests/base-repository.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="@hg-ts/types" />
2
1
  import { BaseAggregate } from '@hg-ts/domain';
3
2
  export declare class TestAggregate extends BaseAggregate {
4
3
  someField: Nullable<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"test.aggregate.d.ts","sourceRoot":"","sources":["../../src/tests/test.aggregate.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,qBAAa,aAAc,SAAQ,aAAa;IACxC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAQ;gBAEvB,EAAE,EAAE,MAAM;IAItB,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI;CAGlD"}
1
+ {"version":3,"file":"test.aggregate.d.ts","sourceRoot":"","sources":["../../src/tests/test.aggregate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,qBAAa,aAAc,SAAQ,aAAa;IACxC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAQ;gBAEvB,EAAE,EAAE,MAAM;IAItB,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI;CAGlD"}
@@ -1,4 +1,3 @@
1
- /// <reference types="@hg-ts/types" />
2
1
  import { AggregateNotFoundException } from '../exceptions';
3
2
  import type { TestAggregate } from './test.aggregate';
4
3
  export declare class TestNotFoundException extends AggregateNotFoundException {
@@ -1 +1 @@
1
- {"version":3,"file":"test.not-found.exception.d.ts","sourceRoot":"","sources":["../../src/tests/test.not-found.exception.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,qBAAa,qBAAsB,SAAQ,0BAA0B;gBACjD,EAAE,GAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAQ;CAG3D"}
1
+ {"version":3,"file":"test.not-found.exception.d.ts","sourceRoot":"","sources":["../../src/tests/test.not-found.exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,qBAAa,qBAAsB,SAAQ,0BAA0B;gBACjD,EAAE,GAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAQ;CAG3D"}
@@ -0,0 +1,3 @@
1
+ import config from '@hg-ts/linter';
2
+
3
+ export default config;
package/package.json CHANGED
@@ -1,48 +1,42 @@
1
1
  {
2
2
  "name": "@hg-ts/repository",
3
- "version": "0.1.50",
3
+ "version": "0.1.51",
4
4
  "main": "dist/index.js",
5
- "module": "dist-esm/index.js",
5
+ "exports": {
6
+ ".": "./dist/index.js"
7
+ },
6
8
  "repository": "git@gitlab.com:hyper-graph/framework.git",
7
9
  "scripts": {
8
- "prepack": "yarn build && yarn lint && yarn test",
9
- "build": "hg build",
10
- "build:dev": "hg build:dev",
11
- "lint": "hg lint",
12
- "lint:fix": "hg lint:fix",
13
- "test": "hg test",
14
- "test:dev": "hg test:dev",
15
- "test:coverage": "hg test:coverage"
10
+ "prepack": "yarn build && yarn lint:ts && yarn test",
11
+ "build": "tsc",
12
+ "build:dev": "tsc-watch",
13
+ "lint:ts": "lint-ts",
14
+ "lint:ts:fix": "lint-ts --fix",
15
+ "test": "node --test",
16
+ "test:dev": "yarn build:dev --onSuccess \"yarn test\""
16
17
  },
17
18
  "devDependencies": {
18
- "@hg-ts-config/eslint-config": "0.1.50",
19
- "@hg-ts-config/nyc": "0.1.50",
20
- "@hg-ts-config/typescript": "0.1.50",
21
- "@hg-ts/cli": "0.1.50",
22
- "@hg-ts/domain": "0.1.50",
23
- "@hg-ts/exception": "0.1.50",
24
- "@hg-ts/tests": "0.1.50",
25
- "@hg-ts/types": "0.1.50",
26
- "@types/node": "20.8.7",
27
- "@types/uuid": "9.0.6",
28
- "@typescript-eslint/eslint-plugin": "6.8.0",
29
- "@typescript-eslint/parser": "6.8.0",
30
- "eslint": "8.52.0",
31
- "mocha": "10.2.0",
32
- "mocha-junit-reporter": "2.2.1",
33
- "nyc": "15.1.0",
34
- "reflect-metadata": "*",
35
- "tsc-watch": "6.0.4",
36
- "tslib": "2.6.2",
37
- "typescript": "5.2.2"
19
+ "@hg-ts-config/typescript": "0.1.51",
20
+ "@hg-ts/domain": "0.1.51",
21
+ "@hg-ts/exception": "0.1.51",
22
+ "@hg-ts/linter": "0.1.51",
23
+ "@hg-ts/tests": "0.1.51",
24
+ "@hg-ts/types": "0.1.51",
25
+ "@types/node": "22.10.6",
26
+ "@types/uuid": "10.0.0",
27
+ "eslint": "9.18.0",
28
+ "reflect-metadata": "0.2.2",
29
+ "tsc-watch": "6.3.0",
30
+ "tslib": "2.8.1",
31
+ "typescript": "5.7.3"
38
32
  },
39
33
  "peerDependencies": {
40
- "@hg-ts/domain": "0.1.50",
41
- "@hg-ts/exception": "0.1.50",
34
+ "@hg-ts/domain": "0.1.51",
35
+ "@hg-ts/exception": "0.1.51",
42
36
  "reflect-metadata": "*",
43
37
  "tslib": "*"
44
38
  },
45
39
  "dependencies": {
46
- "uuid": "9.0.1"
40
+ "uuid": "11.0.5"
47
41
  }
48
42
  }
@@ -1,13 +1,15 @@
1
1
  import { BaseException } from '@hg-ts/exception';
2
2
  import { format } from 'util';
3
3
 
4
- export type AggregateNotFoundParams = {
5
- id?: unknown;
4
+ export type AggregateNotFoundParams<IdType = unknown> = {
5
+ id?: IdType;
6
6
  code?: number;
7
7
  }
8
8
 
9
- export abstract class AggregateNotFoundException extends BaseException {
10
- protected constructor(aggregateName: string, params: AggregateNotFoundParams = {}) {
9
+ export abstract class AggregateNotFoundException<IdType = unknown> extends BaseException {
10
+ public readonly id?: IdType;
11
+
12
+ protected constructor(aggregateName: string, params: AggregateNotFoundParams<IdType> = {}) {
11
13
  const { code, id } = params;
12
14
  const messageParts = [aggregateName];
13
15
 
@@ -18,5 +20,10 @@ export abstract class AggregateNotFoundException extends BaseException {
18
20
  messageParts.push('not found');
19
21
 
20
22
  super(messageParts.join(' '), { code });
23
+
24
+ // eslint-disable-next-line no-undefined
25
+ if (id !== undefined) {
26
+ this.id = id;
27
+ }
21
28
  }
22
29
  }
@@ -6,8 +6,6 @@ import {
6
6
  Repository,
7
7
  } from './repository';
8
8
 
9
- export const INTERNAL_SYMBOL = Symbol('Repository.Internal');
10
-
11
9
  type KeyType = number | string | symbol;
12
10
 
13
11
  export type InternalData = {
@@ -3,7 +3,7 @@ import {
3
3
  expect,
4
4
  ExpectException,
5
5
  Test,
6
- TestSuite,
6
+ Suite,
7
7
  } from '@hg-ts/tests';
8
8
  import { v4 as uuid } from 'uuid';
9
9
 
@@ -12,7 +12,7 @@ import { TestMemoryRepository } from './test.memory.repository';
12
12
  import { TestNotFoundException } from './test.not-found.exception';
13
13
 
14
14
  @Describe()
15
- export class BaseRepositoryTestSuite extends TestSuite {
15
+ export class BaseRepositoryTestSuite extends Suite {
16
16
  private readonly repository = new TestMemoryRepository();
17
17
 
18
18
  @Test()
@@ -24,12 +24,51 @@ export class BaseRepositoryTestSuite extends TestSuite {
24
24
 
25
25
  const savedAggregate = await this.repository.getOrFail(id);
26
26
 
27
-
28
27
  expect(savedAggregate).toBeInstanceOf(TestAggregate);
29
28
  expect(savedAggregate).not.toBe(aggregate);
30
29
  expect({ ...savedAggregate }).toMatchObject({ ...aggregate });
31
30
  }
32
31
 
32
+ @Test()
33
+ @ExpectException(TestNotFoundException)
34
+ public async deleteTest(): Promise<void> {
35
+ const id = uuid();
36
+ const aggregate = new TestAggregate(id);
37
+
38
+ await this.repository.save(aggregate);
39
+
40
+ const savedAggregate = await this.repository.getOrFail(id);
41
+
42
+ expect(savedAggregate).toBeInstanceOf(TestAggregate);
43
+
44
+ await this.repository.delete(aggregate);
45
+ await this.repository.getOrFail(id);
46
+ }
47
+
48
+ @Test()
49
+ public async updateTest(): Promise<void> {
50
+ const id = uuid();
51
+ const initialValue = uuid();
52
+ const expectedValue = uuid();
53
+ const aggregate = new TestAggregate(id);
54
+ aggregate.setSomeField(initialValue);
55
+
56
+ await this.repository.save(aggregate);
57
+
58
+ const savedAggregate = await this.repository.getOrFail(id);
59
+
60
+ expect(savedAggregate).toBeInstanceOf(TestAggregate);
61
+ expect(savedAggregate.someField).toBe(initialValue);
62
+ savedAggregate.setSomeField(expectedValue);
63
+
64
+ await this.repository.save(savedAggregate);
65
+
66
+ const updatedAggregate = await this.repository.getOrFail(id);
67
+
68
+ expect(updatedAggregate).toBeInstanceOf(TestAggregate);
69
+ expect(updatedAggregate.someField).toBe(expectedValue);
70
+ }
71
+
33
72
  @Test()
34
73
  @ExpectException(TestNotFoundException)
35
74
  public async getOrFailNotFoundExceptionTest(): Promise<void> {
package/tsconfig.json CHANGED
@@ -5,5 +5,5 @@
5
5
  "rootDir": "src",
6
6
  "outDir": "dist"
7
7
  },
8
- "exclude": ["dist", "dist-esm"]
8
+ "exclude": ["dist"]
9
9
  }
package/.eslintrc.json DELETED
@@ -1,3 +0,0 @@
1
- {
2
- "extends": "@hg-ts-config/eslint-config/.eslintrc.json"
3
- }
package/.mocharc.cjs DELETED
@@ -1 +0,0 @@
1
- module.exports = require('@hg-ts/tests/config/common.cjs');