@synapseagency/shared-kernel 0.0.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 (163) hide show
  1. package/index.d.ts +1 -0
  2. package/index.js +5 -0
  3. package/index.js.map +1 -0
  4. package/package.json +27 -0
  5. package/src/index.d.ts +3 -0
  6. package/src/index.js +7 -0
  7. package/src/index.js.map +1 -0
  8. package/src/lib/application/application.service.d.ts +11 -0
  9. package/src/lib/application/application.service.js +50 -0
  10. package/src/lib/application/application.service.js.map +1 -0
  11. package/src/lib/application/authenticated-actor.type.d.ts +5 -0
  12. package/src/lib/application/authenticated-actor.type.js +3 -0
  13. package/src/lib/application/authenticated-actor.type.js.map +1 -0
  14. package/src/lib/application/cqrs/index.d.ts +1 -0
  15. package/src/lib/application/cqrs/index.js +5 -0
  16. package/src/lib/application/cqrs/index.js.map +1 -0
  17. package/src/lib/application/cqrs/query/index.d.ts +5 -0
  18. package/src/lib/application/cqrs/query/index.js +9 -0
  19. package/src/lib/application/cqrs/query/index.js.map +1 -0
  20. package/src/lib/application/cqrs/query/pagination-output.d.ts +11 -0
  21. package/src/lib/application/cqrs/query/pagination-output.js +16 -0
  22. package/src/lib/application/cqrs/query/pagination-output.js.map +1 -0
  23. package/src/lib/application/cqrs/query/query.interface.d.ts +9 -0
  24. package/src/lib/application/cqrs/query/query.interface.js +3 -0
  25. package/src/lib/application/cqrs/query/query.interface.js.map +1 -0
  26. package/src/lib/application/cqrs/query/search-input.d.ts +8 -0
  27. package/src/lib/application/cqrs/query/search-input.js +3 -0
  28. package/src/lib/application/cqrs/query/search-input.js.map +1 -0
  29. package/src/lib/application/cqrs/query/search-params.d.ts +25 -0
  30. package/src/lib/application/cqrs/query/search-params.js +82 -0
  31. package/src/lib/application/cqrs/query/search-params.js.map +1 -0
  32. package/src/lib/application/cqrs/query/search-result.d.ts +22 -0
  33. package/src/lib/application/cqrs/query/search-result.js +28 -0
  34. package/src/lib/application/cqrs/query/search-result.js.map +1 -0
  35. package/src/lib/application/domain-event-handler.interface.d.ts +7 -0
  36. package/src/lib/application/domain-event-handler.interface.js +3 -0
  37. package/src/lib/application/domain-event-handler.interface.js.map +1 -0
  38. package/src/lib/application/email.gateway.interface.d.ts +3 -0
  39. package/src/lib/application/email.gateway.interface.js +3 -0
  40. package/src/lib/application/email.gateway.interface.js.map +1 -0
  41. package/src/lib/application/file-storage.gateway.interface.d.ts +4 -0
  42. package/src/lib/application/file-storage.gateway.interface.js +3 -0
  43. package/src/lib/application/file-storage.gateway.interface.js.map +1 -0
  44. package/src/lib/application/index.d.ts +9 -0
  45. package/src/lib/application/index.js +13 -0
  46. package/src/lib/application/index.js.map +1 -0
  47. package/src/lib/application/message-broker.interface.d.ts +4 -0
  48. package/src/lib/application/message-broker.interface.js +3 -0
  49. package/src/lib/application/message-broker.interface.js.map +1 -0
  50. package/src/lib/application/tenant.gateway.d.ts +5 -0
  51. package/src/lib/application/tenant.gateway.js +3 -0
  52. package/src/lib/application/tenant.gateway.js.map +1 -0
  53. package/src/lib/application/use-case.interface.d.ts +3 -0
  54. package/src/lib/application/use-case.interface.js +3 -0
  55. package/src/lib/application/use-case.interface.js.map +1 -0
  56. package/src/lib/domain/aggregate-root.d.ts +13 -0
  57. package/src/lib/domain/aggregate-root.js +29 -0
  58. package/src/lib/domain/aggregate-root.js.map +1 -0
  59. package/src/lib/domain/entity.d.ts +7 -0
  60. package/src/lib/domain/entity.js +9 -0
  61. package/src/lib/domain/entity.js.map +1 -0
  62. package/src/lib/domain/errors/already-exists-in.error.d.ts +5 -0
  63. package/src/lib/domain/errors/already-exists-in.error.js +11 -0
  64. package/src/lib/domain/errors/already-exists-in.error.js.map +1 -0
  65. package/src/lib/domain/errors/already-exists.error.d.ts +5 -0
  66. package/src/lib/domain/errors/already-exists.error.js +21 -0
  67. package/src/lib/domain/errors/already-exists.error.js.map +1 -0
  68. package/src/lib/domain/errors/forbidden.error.d.ts +3 -0
  69. package/src/lib/domain/errors/forbidden.error.js +11 -0
  70. package/src/lib/domain/errors/forbidden.error.js.map +1 -0
  71. package/src/lib/domain/errors/index.d.ts +6 -0
  72. package/src/lib/domain/errors/index.js +10 -0
  73. package/src/lib/domain/errors/index.js.map +1 -0
  74. package/src/lib/domain/errors/invalid-argument.error.d.ts +3 -0
  75. package/src/lib/domain/errors/invalid-argument.error.js +11 -0
  76. package/src/lib/domain/errors/invalid-argument.error.js.map +1 -0
  77. package/src/lib/domain/errors/not-found.error.d.ts +5 -0
  78. package/src/lib/domain/errors/not-found.error.js +22 -0
  79. package/src/lib/domain/errors/not-found.error.js.map +1 -0
  80. package/src/lib/domain/errors/permision-denied.error.d.ts +6 -0
  81. package/src/lib/domain/errors/permision-denied.error.js +20 -0
  82. package/src/lib/domain/errors/permision-denied.error.js.map +1 -0
  83. package/src/lib/domain/events/domain-event-mediator.d.ts +11 -0
  84. package/src/lib/domain/events/domain-event-mediator.js +52 -0
  85. package/src/lib/domain/events/domain-event-mediator.js.map +1 -0
  86. package/src/lib/domain/events/domain-event.interface.d.ts +13 -0
  87. package/src/lib/domain/events/domain-event.interface.js +3 -0
  88. package/src/lib/domain/events/domain-event.interface.js.map +1 -0
  89. package/src/lib/domain/events/gateways/event.gateway.d.ts +3 -0
  90. package/src/lib/domain/events/gateways/event.gateway.js +3 -0
  91. package/src/lib/domain/events/gateways/event.gateway.js.map +1 -0
  92. package/src/lib/domain/events/gateways/index.d.ts +1 -0
  93. package/src/lib/domain/events/gateways/index.js +5 -0
  94. package/src/lib/domain/events/gateways/index.js.map +1 -0
  95. package/src/lib/domain/events/index.d.ts +3 -0
  96. package/src/lib/domain/events/index.js +7 -0
  97. package/src/lib/domain/events/index.js.map +1 -0
  98. package/src/lib/domain/index.d.ts +9 -0
  99. package/src/lib/domain/index.js +13 -0
  100. package/src/lib/domain/index.js.map +1 -0
  101. package/src/lib/domain/plate-validator.d.ts +7 -0
  102. package/src/lib/domain/plate-validator.js +35 -0
  103. package/src/lib/domain/plate-validator.js.map +1 -0
  104. package/src/lib/domain/repository/index.d.ts +1 -0
  105. package/src/lib/domain/repository/index.js +5 -0
  106. package/src/lib/domain/repository/index.js.map +1 -0
  107. package/src/lib/domain/repository/repository-interface.d.ts +16 -0
  108. package/src/lib/domain/repository/repository-interface.js +3 -0
  109. package/src/lib/domain/repository/repository-interface.js.map +1 -0
  110. package/src/lib/domain/unit-of-work.interface.d.ts +9 -0
  111. package/src/lib/domain/unit-of-work.interface.js +3 -0
  112. package/src/lib/domain/unit-of-work.interface.js.map +1 -0
  113. package/src/lib/domain/validators/class-validator-fields.d.ts +5 -0
  114. package/src/lib/domain/validators/class-validator-fields.js +24 -0
  115. package/src/lib/domain/validators/class-validator-fields.js.map +1 -0
  116. package/src/lib/domain/validators/index.d.ts +6 -0
  117. package/src/lib/domain/validators/index.js +11 -0
  118. package/src/lib/domain/validators/index.js.map +1 -0
  119. package/src/lib/domain/validators/notification.d.ts +10 -0
  120. package/src/lib/domain/validators/notification.js +54 -0
  121. package/src/lib/domain/validators/notification.js.map +1 -0
  122. package/src/lib/domain/validators/validation.error.d.ts +19 -0
  123. package/src/lib/domain/validators/validation.error.js +43 -0
  124. package/src/lib/domain/validators/validation.error.js.map +1 -0
  125. package/src/lib/domain/validators/validator-fields-interface.d.ts +7 -0
  126. package/src/lib/domain/validators/validator-fields-interface.js +3 -0
  127. package/src/lib/domain/validators/validator-fields-interface.js.map +1 -0
  128. package/src/lib/domain/validators/validator-rules.d.ts +12 -0
  129. package/src/lib/domain/validators/validator-rules.js +46 -0
  130. package/src/lib/domain/validators/validator-rules.js.map +1 -0
  131. package/src/lib/domain/validators/zod-fields.d.ts +8 -0
  132. package/src/lib/domain/validators/zod-fields.js +53 -0
  133. package/src/lib/domain/validators/zod-fields.js.map +1 -0
  134. package/src/lib/domain/value-object.d.ts +3 -0
  135. package/src/lib/domain/value-object.js +17 -0
  136. package/src/lib/domain/value-object.js.map +1 -0
  137. package/src/lib/domain/value-objects/cnpj.vo.d.ts +21 -0
  138. package/src/lib/domain/value-objects/cnpj.vo.js +86 -0
  139. package/src/lib/domain/value-objects/cnpj.vo.js.map +1 -0
  140. package/src/lib/domain/value-objects/cpf.vo.d.ts +21 -0
  141. package/src/lib/domain/value-objects/cpf.vo.js +86 -0
  142. package/src/lib/domain/value-objects/cpf.vo.js.map +1 -0
  143. package/src/lib/domain/value-objects/helpers/as-array.helper.d.ts +2 -0
  144. package/src/lib/domain/value-objects/helpers/as-array.helper.js +13 -0
  145. package/src/lib/domain/value-objects/helpers/as-array.helper.js.map +1 -0
  146. package/src/lib/domain/value-objects/helpers/index.d.ts +1 -0
  147. package/src/lib/domain/value-objects/helpers/index.js +5 -0
  148. package/src/lib/domain/value-objects/helpers/index.js.map +1 -0
  149. package/src/lib/domain/value-objects/index.d.ts +5 -0
  150. package/src/lib/domain/value-objects/index.js +9 -0
  151. package/src/lib/domain/value-objects/index.js.map +1 -0
  152. package/src/lib/domain/value-objects/tenant-id.vo.d.ts +3 -0
  153. package/src/lib/domain/value-objects/tenant-id.vo.js +8 -0
  154. package/src/lib/domain/value-objects/tenant-id.vo.js.map +1 -0
  155. package/src/lib/domain/value-objects/uuid.vo.d.ts +10 -0
  156. package/src/lib/domain/value-objects/uuid.vo.js +31 -0
  157. package/src/lib/domain/value-objects/uuid.vo.js.map +1 -0
  158. package/src/lib/infra/db/in-memory/in-memory.repository.d.ts +18 -0
  159. package/src/lib/infra/db/in-memory/in-memory.repository.js +69 -0
  160. package/src/lib/infra/db/in-memory/in-memory.repository.js.map +1 -0
  161. package/src/lib/infra/db/in-memory/index.d.ts +1 -0
  162. package/src/lib/infra/db/in-memory/index.js +5 -0
  163. package/src/lib/infra/db/in-memory/index.js.map +1 -0
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InMemoryRepository = void 0;
4
+ const invalid_argument_error_1 = require("../../../domain/errors/invalid-argument.error");
5
+ const not_found_error_1 = require("../../../domain/errors/not-found.error");
6
+ class InMemoryRepository {
7
+ items = [];
8
+ async insert(entity) {
9
+ this.items.push(entity);
10
+ }
11
+ async bulkInsert(entities) {
12
+ this.items.push(...entities);
13
+ }
14
+ async update(entity) {
15
+ const indexFound = this.items.findIndex((item) => item.entity_id.equals(entity.entity_id));
16
+ if (indexFound === -1) {
17
+ throw new not_found_error_1.NotFoundError(entity.entity_id, this.getEntity());
18
+ }
19
+ this.items[indexFound] = entity;
20
+ }
21
+ async delete(entity_id) {
22
+ const indexFound = this.items.findIndex((item) => item.entity_id.equals(entity_id));
23
+ if (indexFound === -1) {
24
+ throw new not_found_error_1.NotFoundError(entity_id, this.getEntity());
25
+ }
26
+ this.items.splice(indexFound, 1);
27
+ }
28
+ async findById(entity_id) {
29
+ const item = this.items.find((item) => item.entity_id.equals(entity_id));
30
+ return typeof item === 'undefined' ? null : item;
31
+ }
32
+ async findAll() {
33
+ return this.items;
34
+ }
35
+ async findByIds(ids) {
36
+ //avoid to return repeated items
37
+ return this.items.filter((entity) => {
38
+ return ids.some((id) => entity.entity_id.equals(id));
39
+ });
40
+ }
41
+ async existsById(ids) {
42
+ if (!ids.length) {
43
+ throw new invalid_argument_error_1.InvalidArgumentError('ids must be an array with at least one element');
44
+ }
45
+ if (this.items.length === 0) {
46
+ return {
47
+ exists: [],
48
+ not_exists: ids
49
+ };
50
+ }
51
+ const existsId = new Set();
52
+ const notExistsId = new Set();
53
+ ids.forEach((id) => {
54
+ const item = this.items.find((entity) => entity.entity_id.equals(id));
55
+ if (item) {
56
+ existsId.add(id);
57
+ }
58
+ else {
59
+ notExistsId.add(id);
60
+ }
61
+ });
62
+ return {
63
+ exists: Array.from(existsId.values()),
64
+ not_exists: Array.from(notExistsId.values())
65
+ };
66
+ }
67
+ }
68
+ exports.InMemoryRepository = InMemoryRepository;
69
+ //# sourceMappingURL=in-memory.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.repository.js","sourceRoot":"","sources":["../../../../../../../../libs/shared-kernel/src/lib/infra/db/in-memory/in-memory.repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './in-memory.repository';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./in-memory.repository"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/shared-kernel/src/lib/infra/db/in-memory/index.ts"],"names":[],"mappings":";;;AAAA,iEAAsC"}