@woltz/rich-domain 1.9.0 → 1.9.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 (53) hide show
  1. package/dist/cjs/core/domain-event.d.ts +3 -0
  2. package/dist/cjs/core/domain-event.d.ts.map +1 -1
  3. package/dist/cjs/core/domain-event.js +8 -1
  4. package/dist/cjs/core/domain-event.js.map +1 -1
  5. package/dist/cjs/criteria.d.ts +1 -1
  6. package/dist/cjs/index.d.ts +1 -1
  7. package/dist/cjs/index.d.ts.map +1 -1
  8. package/dist/cjs/types/index.d.ts +1 -0
  9. package/dist/cjs/types/index.d.ts.map +1 -1
  10. package/dist/cjs/types/index.js +1 -0
  11. package/dist/cjs/types/index.js.map +1 -1
  12. package/dist/cjs/types/outbox-store.d.ts +91 -0
  13. package/dist/cjs/types/outbox-store.d.ts.map +1 -0
  14. package/dist/cjs/types/outbox-store.js +3 -0
  15. package/dist/cjs/types/outbox-store.js.map +1 -0
  16. package/dist/esm/core/domain-event.d.ts +3 -0
  17. package/dist/esm/core/domain-event.d.ts.map +1 -1
  18. package/dist/esm/core/domain-event.js +5 -1
  19. package/dist/esm/core/domain-event.js.map +1 -1
  20. package/dist/esm/criteria.d.ts +1 -1
  21. package/dist/esm/index.d.ts +1 -1
  22. package/dist/esm/index.d.ts.map +1 -1
  23. package/dist/esm/types/index.d.ts +1 -0
  24. package/dist/esm/types/index.d.ts.map +1 -1
  25. package/dist/esm/types/index.js +1 -0
  26. package/dist/esm/types/index.js.map +1 -1
  27. package/dist/esm/types/outbox-store.d.ts +91 -0
  28. package/dist/esm/types/outbox-store.d.ts.map +1 -0
  29. package/dist/esm/types/outbox-store.js +2 -0
  30. package/dist/esm/types/outbox-store.js.map +1 -0
  31. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  32. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  33. package/dist/tsconfig.types.tsbuildinfo +1 -1
  34. package/dist/types/core/domain-event.d.ts +3 -0
  35. package/dist/types/core/domain-event.d.ts.map +1 -1
  36. package/dist/types/criteria.d.ts +1 -1
  37. package/dist/types/index.d.ts +1 -1
  38. package/dist/types/index.d.ts.map +1 -1
  39. package/dist/types/types/index.d.ts +1 -0
  40. package/dist/types/types/index.d.ts.map +1 -1
  41. package/dist/types/types/outbox-store.d.ts +91 -0
  42. package/dist/types/types/outbox-store.d.ts.map +1 -0
  43. package/package.json +1 -1
  44. package/dist/cjs/t.d.ts +0 -2
  45. package/dist/cjs/t.d.ts.map +0 -1
  46. package/dist/cjs/t.js +0 -96
  47. package/dist/cjs/t.js.map +0 -1
  48. package/dist/esm/t.d.ts +0 -2
  49. package/dist/esm/t.d.ts.map +0 -1
  50. package/dist/esm/t.js +0 -94
  51. package/dist/esm/t.js.map +0 -1
  52. package/dist/types/t.d.ts +0 -2
  53. package/dist/types/t.d.ts.map +0 -1
package/dist/cjs/t.js DELETED
@@ -1,96 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const zod_1 = require("zod");
4
- const core_1 = require("./core");
5
- const AddressSchema = zod_1.z.object({
6
- id: zod_1.z.instanceof(core_1.Id),
7
- rua: zod_1.z.string(),
8
- });
9
- class Address extends core_1.Entity {
10
- static validation = {
11
- schema: AddressSchema,
12
- };
13
- changeRua(rua) {
14
- this.props.rua = rua;
15
- }
16
- }
17
- class Role extends core_1.ValueObject {
18
- }
19
- const UserSchema = zod_1.z.object({
20
- id: zod_1.z.instanceof(core_1.Id),
21
- name: zod_1.z.string().min(3),
22
- email: zod_1.z.string().email(),
23
- password: zod_1.z.string(),
24
- address: zod_1.z.instanceof(Address).optional(),
25
- role: zod_1.z.instanceof(Role),
26
- age: zod_1.z.number().int().gte(18),
27
- });
28
- function generatePasswordRandom() {
29
- return Math.random() + "oi";
30
- }
31
- class User extends core_1.Aggregate {
32
- static validation = {
33
- schema: UserSchema,
34
- config: {
35
- throwOnError: false,
36
- },
37
- };
38
- static hooks = {
39
- onBeforeCreate: (props) => {
40
- if (!props.password) {
41
- props.password = generatePasswordRandom();
42
- }
43
- },
44
- rules: (entity) => {
45
- if (entity.age > 90) {
46
- entity.addValidationIssue("age", "Idade nao pode passar de 90 anos.");
47
- }
48
- },
49
- onCreate: (entity) => {
50
- if (entity.isNew()) {
51
- // entity.addDomainEvent(UserCreatedEvent)
52
- }
53
- console.log(`Criei um user, é novo?: ${entity.isNew()}`);
54
- },
55
- };
56
- get age() {
57
- return this.props.age;
58
- }
59
- changeAge(newAge) {
60
- this.props.age = newAge;
61
- }
62
- changeName(newName) {
63
- this.props.name = newName;
64
- }
65
- get address() {
66
- return this.props.address;
67
- }
68
- changeRole(role) {
69
- this.props.role = role;
70
- }
71
- removeAddress() {
72
- if (this.props.address) {
73
- delete this.props.address;
74
- }
75
- }
76
- }
77
- const id = new core_1.Id().value;
78
- const tarcisio = new User({
79
- id: new core_1.Id(id),
80
- age: 27,
81
- email: "root@root.com",
82
- name: "Tarcisio Andrade",
83
- address: new Address({
84
- rua: "Segunda Ligação",
85
- }),
86
- role: new Role("Admin"),
87
- });
88
- tarcisio.changeAge(91);
89
- tarcisio.changeName("22");
90
- tarcisio.changeRole(new Role("User"));
91
- tarcisio.removeAddress();
92
- if (tarcisio.hasValidationErrors) {
93
- console.log(tarcisio.validationErrors.getFormattedErrors());
94
- }
95
- console.log(tarcisio.toJSON());
96
- //# sourceMappingURL=t.js.map
package/dist/cjs/t.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"t.js","sourceRoot":"","sources":["../../src/t.ts"],"names":[],"mappings":"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"}
package/dist/esm/t.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=t.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"t.d.ts","sourceRoot":"","sources":["../../src/t.ts"],"names":[],"mappings":""}
package/dist/esm/t.js DELETED
@@ -1,94 +0,0 @@
1
- import { z } from "zod";
2
- import { Id, Entity, ValueObject, Aggregate } from "./core";
3
- const AddressSchema = z.object({
4
- id: z.instanceof(Id),
5
- rua: z.string(),
6
- });
7
- class Address extends Entity {
8
- static validation = {
9
- schema: AddressSchema,
10
- };
11
- changeRua(rua) {
12
- this.props.rua = rua;
13
- }
14
- }
15
- class Role extends ValueObject {
16
- }
17
- const UserSchema = z.object({
18
- id: z.instanceof(Id),
19
- name: z.string().min(3),
20
- email: z.string().email(),
21
- password: z.string(),
22
- address: z.instanceof(Address).optional(),
23
- role: z.instanceof(Role),
24
- age: z.number().int().gte(18),
25
- });
26
- function generatePasswordRandom() {
27
- return Math.random() + "oi";
28
- }
29
- class User extends Aggregate {
30
- static validation = {
31
- schema: UserSchema,
32
- config: {
33
- throwOnError: false,
34
- },
35
- };
36
- static hooks = {
37
- onBeforeCreate: (props) => {
38
- if (!props.password) {
39
- props.password = generatePasswordRandom();
40
- }
41
- },
42
- rules: (entity) => {
43
- if (entity.age > 90) {
44
- entity.addValidationIssue("age", "Idade nao pode passar de 90 anos.");
45
- }
46
- },
47
- onCreate: (entity) => {
48
- if (entity.isNew()) {
49
- // entity.addDomainEvent(UserCreatedEvent)
50
- }
51
- console.log(`Criei um user, é novo?: ${entity.isNew()}`);
52
- },
53
- };
54
- get age() {
55
- return this.props.age;
56
- }
57
- changeAge(newAge) {
58
- this.props.age = newAge;
59
- }
60
- changeName(newName) {
61
- this.props.name = newName;
62
- }
63
- get address() {
64
- return this.props.address;
65
- }
66
- changeRole(role) {
67
- this.props.role = role;
68
- }
69
- removeAddress() {
70
- if (this.props.address) {
71
- delete this.props.address;
72
- }
73
- }
74
- }
75
- const id = new Id().value;
76
- const tarcisio = new User({
77
- id: new Id(id),
78
- age: 27,
79
- email: "root@root.com",
80
- name: "Tarcisio Andrade",
81
- address: new Address({
82
- rua: "Segunda Ligação",
83
- }),
84
- role: new Role("Admin"),
85
- });
86
- tarcisio.changeAge(91);
87
- tarcisio.changeName("22");
88
- tarcisio.changeRole(new Role("User"));
89
- tarcisio.removeAddress();
90
- if (tarcisio.hasValidationErrors) {
91
- console.log(tarcisio.validationErrors.getFormattedErrors());
92
- }
93
- console.log(tarcisio.toJSON());
94
- //# sourceMappingURL=t.js.map
package/dist/esm/t.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"t.js","sourceRoot":"","sources":["../../src/t.ts"],"names":[],"mappings":"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"}
package/dist/types/t.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=t.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"t.d.ts","sourceRoot":"","sources":["../../src/t.ts"],"names":[],"mappings":""}