@haskou/value-objects 4.0.1 → 4.1.0

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 (143) hide show
  1. package/README.md +176 -79
  2. package/dist/errors/index.d.ts +0 -2
  3. package/dist/errors/index.d.ts.map +1 -1
  4. package/dist/errors/index.js +0 -2
  5. package/dist/errors/index.js.map +1 -1
  6. package/dist/interfaces/PrimitiveOf.d.ts +1 -5
  7. package/dist/interfaces/PrimitiveOf.d.ts.map +1 -1
  8. package/dist/patterns/Assert.d.ts +1 -1
  9. package/dist/patterns/Assert.d.ts.map +1 -1
  10. package/dist/types/Primitive.d.ts +1 -1
  11. package/dist/types/Primitive.d.ts.map +1 -1
  12. package/dist/value-objects/Email.d.ts +0 -1
  13. package/dist/value-objects/Email.d.ts.map +1 -1
  14. package/dist/value-objects/Email.js +1 -2
  15. package/dist/value-objects/Email.js.map +1 -1
  16. package/dist/value-objects/NumberValueObject.js +1 -1
  17. package/dist/value-objects/NumberValueObject.js.map +1 -1
  18. package/dist/value-objects/UniqueObjectArray.d.ts.map +1 -1
  19. package/dist/value-objects/coordinates/Latitude.d.ts.map +1 -1
  20. package/dist/value-objects/coordinates/Latitude.js +4 -5
  21. package/dist/value-objects/coordinates/Latitude.js.map +1 -1
  22. package/dist/value-objects/coordinates/Longitude.d.ts.map +1 -1
  23. package/dist/value-objects/coordinates/Longitude.js +4 -5
  24. package/dist/value-objects/coordinates/Longitude.js.map +1 -1
  25. package/dist/value-objects/crypto/CryptoAdapter.d.ts +2 -3
  26. package/dist/value-objects/crypto/CryptoAdapter.d.ts.map +1 -1
  27. package/dist/value-objects/crypto/CryptoAdapter.js +4 -9
  28. package/dist/value-objects/crypto/CryptoAdapter.js.map +1 -1
  29. package/dist/value-objects/crypto/EncryptedKeyPair.d.ts +4 -4
  30. package/dist/value-objects/crypto/EncryptedKeyPair.d.ts.map +1 -1
  31. package/dist/value-objects/crypto/EncryptedKeyPair.js.map +1 -1
  32. package/dist/value-objects/crypto/EncryptedPayload.d.ts +0 -2
  33. package/dist/value-objects/crypto/EncryptedPayload.d.ts.map +1 -1
  34. package/dist/value-objects/crypto/EncryptedPayload.js +0 -15
  35. package/dist/value-objects/crypto/EncryptedPayload.js.map +1 -1
  36. package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts +2 -3
  37. package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts.map +1 -1
  38. package/dist/value-objects/crypto/EncryptedPrivateKey.js +4 -6
  39. package/dist/value-objects/crypto/EncryptedPrivateKey.js.map +1 -1
  40. package/dist/value-objects/crypto/KeyPair.d.ts +2 -2
  41. package/dist/value-objects/crypto/KeyPair.d.ts.map +1 -1
  42. package/dist/value-objects/crypto/KeyPair.js +1 -1
  43. package/dist/value-objects/crypto/KeyPair.js.map +1 -1
  44. package/dist/value-objects/crypto/PrivateKey.d.ts +0 -13
  45. package/dist/value-objects/crypto/PrivateKey.d.ts.map +1 -1
  46. package/dist/value-objects/crypto/PrivateKey.js +12 -58
  47. package/dist/value-objects/crypto/PrivateKey.js.map +1 -1
  48. package/dist/value-objects/crypto/PublicKey.d.ts +2 -6
  49. package/dist/value-objects/crypto/PublicKey.d.ts.map +1 -1
  50. package/dist/value-objects/crypto/PublicKey.js +6 -20
  51. package/dist/value-objects/crypto/PublicKey.js.map +1 -1
  52. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.d.ts +2 -2
  53. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.d.ts.map +1 -1
  54. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.js.map +1 -1
  55. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.d.ts +5 -7
  56. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.d.ts.map +1 -1
  57. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.js +17 -41
  58. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.js.map +1 -1
  59. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.d.ts +2 -2
  60. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.d.ts.map +1 -1
  61. package/dist/value-objects/crypto/index.d.ts +0 -3
  62. package/dist/value-objects/crypto/index.d.ts.map +1 -1
  63. package/dist/value-objects/crypto/index.js +0 -3
  64. package/dist/value-objects/crypto/index.js.map +1 -1
  65. package/dist/value-objects/hashes/MD5Hash.d.ts.map +1 -1
  66. package/dist/value-objects/hashes/MD5Hash.js +1 -2
  67. package/dist/value-objects/hashes/MD5Hash.js.map +1 -1
  68. package/dist/value-objects/hashes/SHA256Hash.d.ts.map +1 -1
  69. package/dist/value-objects/hashes/SHA256Hash.js +1 -2
  70. package/dist/value-objects/hashes/SHA256Hash.js.map +1 -1
  71. package/dist/value-objects/hashes/SHA512Hash.d.ts.map +1 -1
  72. package/dist/value-objects/hashes/SHA512Hash.js +1 -2
  73. package/dist/value-objects/hashes/SHA512Hash.js.map +1 -1
  74. package/dist/value-objects/ids/ShortId.d.ts +0 -1
  75. package/dist/value-objects/ids/ShortId.d.ts.map +1 -1
  76. package/dist/value-objects/ids/ShortId.js +3 -7
  77. package/dist/value-objects/ids/ShortId.js.map +1 -1
  78. package/dist/value-objects/ids/UUID.d.ts +0 -2
  79. package/dist/value-objects/ids/UUID.d.ts.map +1 -1
  80. package/dist/value-objects/ids/UUID.js +4 -18
  81. package/dist/value-objects/ids/UUID.js.map +1 -1
  82. package/dist/value-objects/index.d.ts +0 -1
  83. package/dist/value-objects/index.d.ts.map +1 -1
  84. package/dist/value-objects/index.js +0 -1
  85. package/dist/value-objects/index.js.map +1 -1
  86. package/dist/value-objects/media/Media.d.ts +0 -2
  87. package/dist/value-objects/media/Media.d.ts.map +1 -1
  88. package/dist/value-objects/media/Media.js +1 -14
  89. package/dist/value-objects/media/Media.js.map +1 -1
  90. package/dist/value-objects/time/CalendarDay.d.ts +1 -2
  91. package/dist/value-objects/time/CalendarDay.d.ts.map +1 -1
  92. package/dist/value-objects/time/CalendarDay.js +11 -25
  93. package/dist/value-objects/time/CalendarDay.js.map +1 -1
  94. package/dist/value-objects/time/DayOfWeek.d.ts.map +1 -1
  95. package/dist/value-objects/time/DayOfWeek.js +3 -2
  96. package/dist/value-objects/time/DayOfWeek.js.map +1 -1
  97. package/dist/value-objects/time/Duration.js +2 -2
  98. package/dist/value-objects/time/Duration.js.map +1 -1
  99. package/dist/value-objects/time/Hour.d.ts +0 -3
  100. package/dist/value-objects/time/Hour.d.ts.map +1 -1
  101. package/dist/value-objects/time/Hour.js +31 -30
  102. package/dist/value-objects/time/Hour.js.map +1 -1
  103. package/dist/value-objects/time/Timestamp.d.ts +0 -3
  104. package/dist/value-objects/time/Timestamp.d.ts.map +1 -1
  105. package/dist/value-objects/time/Timestamp.js +6 -50
  106. package/dist/value-objects/time/Timestamp.js.map +1 -1
  107. package/dist/value-objects/time/TimestampInterval.d.ts +4 -2
  108. package/dist/value-objects/time/TimestampInterval.d.ts.map +1 -1
  109. package/dist/value-objects/time/TimestampInterval.js +10 -0
  110. package/dist/value-objects/time/TimestampInterval.js.map +1 -1
  111. package/package.json +32 -57
  112. package/dist/errors/InvalidEncryptedPrivateKeyFormatError.d.ts +0 -5
  113. package/dist/errors/InvalidEncryptedPrivateKeyFormatError.d.ts.map +0 -1
  114. package/dist/errors/InvalidEncryptedPrivateKeyFormatError.js +0 -11
  115. package/dist/errors/InvalidEncryptedPrivateKeyFormatError.js.map +0 -1
  116. package/dist/errors/InvalidPasswordError.d.ts +0 -5
  117. package/dist/errors/InvalidPasswordError.d.ts.map +0 -1
  118. package/dist/errors/InvalidPasswordError.js +0 -11
  119. package/dist/errors/InvalidPasswordError.js.map +0 -1
  120. package/dist/value-objects/Password.d.ts +0 -8
  121. package/dist/value-objects/Password.d.ts.map +0 -1
  122. package/dist/value-objects/Password.js +0 -28
  123. package/dist/value-objects/Password.js.map +0 -1
  124. package/dist/value-objects/crypto/AsymmetricEncryptedPayload.d.ts +0 -5
  125. package/dist/value-objects/crypto/AsymmetricEncryptedPayload.d.ts.map +0 -1
  126. package/dist/value-objects/crypto/AsymmetricEncryptedPayload.js +0 -11
  127. package/dist/value-objects/crypto/AsymmetricEncryptedPayload.js.map +0 -1
  128. package/dist/value-objects/crypto/StrictBase64.d.ts +0 -15
  129. package/dist/value-objects/crypto/StrictBase64.d.ts.map +0 -1
  130. package/dist/value-objects/crypto/StrictBase64.js +0 -36
  131. package/dist/value-objects/crypto/StrictBase64.js.map +0 -1
  132. package/dist/value-objects/crypto/SymmetricEncryptedPayload.d.ts +0 -5
  133. package/dist/value-objects/crypto/SymmetricEncryptedPayload.d.ts.map +0 -1
  134. package/dist/value-objects/crypto/SymmetricEncryptedPayload.js +0 -11
  135. package/dist/value-objects/crypto/SymmetricEncryptedPayload.js.map +0 -1
  136. package/dist/value-objects/crypto/SymmetricKey.d.ts +0 -49
  137. package/dist/value-objects/crypto/SymmetricKey.d.ts.map +0 -1
  138. package/dist/value-objects/crypto/SymmetricKey.js +0 -149
  139. package/dist/value-objects/crypto/SymmetricKey.js.map +0 -1
  140. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV3.d.ts +0 -24
  141. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV3.d.ts.map +0 -1
  142. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV3.js +0 -105
  143. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV3.js.map +0 -1
@@ -2,11 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EncryptedPrivateKeyV2 = void 0;
4
4
  const buffer_1 = require("buffer");
5
- const InvalidEncryptedPrivateKeyFormatError_1 = require("../../../errors/InvalidEncryptedPrivateKeyFormatError");
6
- const patterns_1 = require("../../../patterns");
5
+ const CryptoAdapter_1 = require("../CryptoAdapter");
7
6
  const PrivateKey_1 = require("../PrivateKey");
8
- const SymmetricEncryptedPayload_1 = require("../SymmetricEncryptedPayload");
9
- const SymmetricKey_1 = require("../SymmetricKey");
10
7
  const CryptoDerivation_1 = require("./CryptoDerivation");
11
8
  const EncryptedPrivateKeyVersion_1 = require("./EncryptedPrivateKeyVersion");
12
9
  class EncryptedPrivateKeyV2 extends EncryptedPrivateKeyVersion_1.EncryptedPrivateKeyVersion {
@@ -16,43 +13,24 @@ class EncryptedPrivateKeyV2 extends EncryptedPrivateKeyVersion_1.EncryptedPrivat
16
13
  static SCRYPT_R = 8;
17
14
  static SCRYPT_P = 1;
18
15
  static SALT_ENTROPY = 16;
16
+ static IV_ENTROPY = 12;
17
+ static KEY_LENGTH = 32;
19
18
  static CIPHER = 'aes-256-gcm';
20
19
  static EXPECTED_PARTS = 9;
21
- static SYMMETRIC_PAYLOAD_VERSION = 'v1';
22
20
  static hasSupportedScryptParameters(parts) {
23
21
  return (parts[2] === `N${EncryptedPrivateKeyV2.SCRYPT_N}` &&
24
22
  parts[3] === `r${EncryptedPrivateKeyV2.SCRYPT_R}` &&
25
23
  parts[4] === `p${EncryptedPrivateKeyV2.SCRYPT_P}`);
26
24
  }
27
- static async deriveSymmetricKey(password, salt, options) {
28
- return SymmetricKey_1.SymmetricKey.fromPassword(password, { ...options, salt });
29
- }
30
- static toSymmetricPayload(parts) {
31
- const iv = parts[6];
32
- const tag = parts[7];
33
- const cipherText = parts[8];
34
- return new SymmetricEncryptedPayload_1.SymmetricEncryptedPayload([
35
- EncryptedPrivateKeyV2.SYMMETRIC_PAYLOAD_VERSION,
36
- EncryptedPrivateKeyV2.CIPHER,
37
- iv,
38
- cipherText,
39
- tag,
40
- ].join('.'));
41
- }
42
25
  static async encrypt(privateKey, password) {
43
26
  const salt = await CryptoDerivation_1.CryptoDerivation.randomBytesAsync(EncryptedPrivateKeyV2.SALT_ENTROPY);
44
- const key = await EncryptedPrivateKeyV2.deriveSymmetricKey(password, salt, {
27
+ const key = await CryptoDerivation_1.CryptoDerivation.scryptAsync(password.valueOf(), salt, EncryptedPrivateKeyV2.KEY_LENGTH, {
45
28
  N: EncryptedPrivateKeyV2.SCRYPT_N,
46
29
  p: EncryptedPrivateKeyV2.SCRYPT_P,
47
30
  r: EncryptedPrivateKeyV2.SCRYPT_R,
48
31
  });
49
- const symmetricPayload = key
50
- .encrypt(privateKey.valueOf())
51
- .valueOf()
52
- .split('.');
53
- const iv = symmetricPayload[2];
54
- const cipherText = symmetricPayload[3];
55
- const tag = symmetricPayload[4];
32
+ const iv = await CryptoDerivation_1.CryptoDerivation.randomBytesAsync(EncryptedPrivateKeyV2.IV_ENTROPY);
33
+ const { cipherText, tag } = CryptoAdapter_1.CryptoAdapter.encryptAes256Gcm(key, iv, buffer_1.Buffer.from(privateKey.valueOf()));
56
34
  return [
57
35
  EncryptedPrivateKeyV2.VERSION,
58
36
  EncryptedPrivateKeyV2.KDF,
@@ -60,9 +38,9 @@ class EncryptedPrivateKeyV2 extends EncryptedPrivateKeyVersion_1.EncryptedPrivat
60
38
  `r${EncryptedPrivateKeyV2.SCRYPT_R}`,
61
39
  `p${EncryptedPrivateKeyV2.SCRYPT_P}`,
62
40
  salt.toString('base64'),
63
- iv,
64
- tag,
65
- cipherText,
41
+ iv.toString('base64'),
42
+ buffer_1.Buffer.from(tag).toString('base64'),
43
+ buffer_1.Buffer.from(cipherText).toString('base64'),
66
44
  ].join('.');
67
45
  }
68
46
  matches(parts) {
@@ -72,22 +50,20 @@ class EncryptedPrivateKeyV2 extends EncryptedPrivateKeyVersion_1.EncryptedPrivat
72
50
  EncryptedPrivateKeyV2.hasSupportedScryptParameters(parts));
73
51
  }
74
52
  async decrypt(parts, password) {
75
- (0, patterns_1.assert)(EncryptedPrivateKeyV2.hasSupportedScryptParameters(parts), new InvalidEncryptedPrivateKeyFormatError_1.InvalidEncryptedPrivateKeyFormatError('Unsupported encrypted private key parameters'));
53
+ if (!EncryptedPrivateKeyV2.hasSupportedScryptParameters(parts)) {
54
+ throw new Error('Unsupported encrypted private key parameters');
55
+ }
76
56
  const N = parseInt(parts[2].slice(1), 10);
77
57
  const r = parseInt(parts[3].slice(1), 10);
78
58
  const p = parseInt(parts[4].slice(1), 10);
79
59
  const salt = buffer_1.Buffer.from(parts[5], 'base64');
80
- const key = await EncryptedPrivateKeyV2.deriveSymmetricKey(password, salt, {
81
- N,
82
- p,
83
- r,
84
- });
85
- const decrypted = key.decrypt(EncryptedPrivateKeyV2.toSymmetricPayload(parts));
60
+ const iv = buffer_1.Buffer.from(parts[6], 'base64');
61
+ const tag = buffer_1.Buffer.from(parts[7], 'base64');
62
+ const cipherText = buffer_1.Buffer.from(parts[8], 'base64');
63
+ const key = await CryptoDerivation_1.CryptoDerivation.scryptAsync(password.valueOf(), salt, EncryptedPrivateKeyV2.KEY_LENGTH, { N, p, r });
64
+ const decrypted = CryptoAdapter_1.CryptoAdapter.decryptAes256Gcm(key, iv, cipherText, tag);
86
65
  return new PrivateKey_1.PrivateKey(decrypted.toString());
87
66
  }
88
- needsReEncryption() {
89
- return true;
90
- }
91
67
  }
92
68
  exports.EncryptedPrivateKeyV2 = EncryptedPrivateKeyV2;
93
69
  //# sourceMappingURL=EncryptedPrivateKeyV2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EncryptedPrivateKeyV2.js","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EncryptedPrivateKeyV2.js","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
+ import { StringValueObject } from '../../StringValueObject';
1
2
  import { PrivateKey } from '../PrivateKey';
2
- import { CryptoPassword } from '../SymmetricKey';
3
3
  export declare abstract class EncryptedPrivateKeyVersion {
4
4
  abstract matches(parts: string[]): boolean;
5
- abstract decrypt(parts: string[], password: CryptoPassword): Promise<PrivateKey>;
5
+ abstract decrypt(parts: string[], password: string | StringValueObject): Promise<PrivateKey>;
6
6
  needsReEncryption(): boolean;
7
7
  }
8
8
  //# sourceMappingURL=EncryptedPrivateKeyVersion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EncryptedPrivateKeyVersion.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,8BAAsB,0BAA0B;aAC9B,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO;aACjC,OAAO,CACrB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC;IAEf,iBAAiB,IAAI,OAAO;CAGpC"}
1
+ {"version":3,"file":"EncryptedPrivateKeyVersion.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,8BAAsB,0BAA0B;aAC9B,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO;aACjC,OAAO,CACrB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,UAAU,CAAC;IAEf,iBAAiB,IAAI,OAAO;CAGpC"}
@@ -1,4 +1,3 @@
1
- export * from './AsymmetricEncryptedPayload';
2
1
  export * from './EncryptedKeyPair';
3
2
  export * from './EncryptedPayload';
4
3
  export * from './EncryptedPrivateKey';
@@ -7,6 +6,4 @@ export * from './KeyPair';
7
6
  export * from './PrivateKey';
8
7
  export * from './PublicKey';
9
8
  export * from './Signature';
10
- export * from './SymmetricEncryptedPayload';
11
- export * from './SymmetricKey';
12
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./AsymmetricEncryptedPayload"), exports);
5
4
  tslib_1.__exportStar(require("./EncryptedKeyPair"), exports);
6
5
  tslib_1.__exportStar(require("./EncryptedPayload"), exports);
7
6
  tslib_1.__exportStar(require("./EncryptedPrivateKey"), exports);
@@ -10,6 +9,4 @@ tslib_1.__exportStar(require("./KeyPair"), exports);
10
9
  tslib_1.__exportStar(require("./PrivateKey"), exports);
11
10
  tslib_1.__exportStar(require("./PublicKey"), exports);
12
11
  tslib_1.__exportStar(require("./Signature"), exports);
13
- tslib_1.__exportStar(require("./SymmetricEncryptedPayload"), exports);
14
- tslib_1.__exportStar(require("./SymmetricKey"), exports);
15
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,6DAAmC;AACnC,6DAAmC;AACnC,gEAAsC;AACtC,gDAAsB;AACtB,oDAA0B;AAC1B,uDAA6B;AAC7B,sDAA4B;AAC5B,sDAA4B;AAC5B,sEAA4C;AAC5C,yDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/index.ts"],"names":[],"mappings":";;;AAAA,6DAAmC;AACnC,6DAAmC;AACnC,gEAAsC;AACtC,gDAAsB;AACtB,oDAA0B;AAC1B,uDAA6B;AAC7B,sDAA4B;AAC5B,sDAA4B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MD5Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,OAAQ,SAAQ,IAAI;WACjB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,OAAO;gBASE,MAAM,EAAE,MAAM,GAAG,iBAAiB;CAY/C"}
1
+ {"version":3,"file":"MD5Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,OAAQ,SAAQ,IAAI;WACjB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,OAAO;gBAIE,MAAM,EAAE,MAAM,GAAG,iBAAiB;CAY/C"}
@@ -4,7 +4,6 @@ exports.MD5Hash = void 0;
4
4
  const InvalidHashError_1 = require("../../errors/InvalidHashError");
5
5
  const patterns_1 = require("../../patterns");
6
6
  const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
7
- const Media_1 = require("../media/Media");
8
7
  const NullObject_1 = require("../NullObject");
9
8
  const Hash_1 = require("./Hash");
10
9
  class MD5Hash extends Hash_1.Hash {
@@ -12,7 +11,7 @@ class MD5Hash extends Hash_1.Hash {
12
11
  return !!hash.valueOf().match(/^[a-f0-9]{32}$/);
13
12
  }
14
13
  static from(buffer) {
15
- return new MD5Hash(CryptoAdapter_1.CryptoAdapter.hash('md5', buffer instanceof Media_1.Media ? buffer.getBuffer() : buffer.valueOf()));
14
+ return new MD5Hash(CryptoAdapter_1.CryptoAdapter.hash('md5', buffer.valueOf()));
16
15
  }
17
16
  constructor(source) {
18
17
  super(source?.valueOf());
@@ -1 +1 @@
1
- {"version":3,"file":"MD5Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":";;;AAEA,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AACxD,0CAAuC;AACvC,8CAA2C;AAE3C,iCAA8B;AAE9B,MAAa,OAAQ,SAAQ,WAAI;IACxB,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,OAAO,CAChB,6BAAa,CAAC,IAAI,CAChB,KAAK,EACL,MAAM,YAAY,aAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAChE,CACF,CAAC;IACJ,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAC/B,IAAI,mCAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAC9C,CAAC;IACJ,CAAC;CACF;AA5BD,0BA4BC"}
1
+ {"version":3,"file":"MD5Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":";;;AAEA,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AAExD,8CAA2C;AAE3C,iCAA8B;AAE9B,MAAa,OAAQ,SAAQ,WAAI;IACxB,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,OAAO,CAAC,6BAAa,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAC/B,IAAI,mCAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAC9C,CAAC;IACJ,CAAC;CACF;AAvBD,0BAuBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SHA256Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBASD,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
1
+ {"version":3,"file":"SHA256Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBAID,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
@@ -5,7 +5,6 @@ const buffer_1 = require("buffer");
5
5
  const InvalidHashError_1 = require("../../errors/InvalidHashError");
6
6
  const patterns_1 = require("../../patterns");
7
7
  const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
8
- const Media_1 = require("../media/Media");
9
8
  const NullObject_1 = require("../NullObject");
10
9
  const StringValueObject_1 = require("../StringValueObject");
11
10
  const ValueObject_1 = require("../ValueObject");
@@ -14,7 +13,7 @@ class SHA256Hash extends ValueObject_1.ValueObject {
14
13
  return !!hash.valueOf().match(/^[a-f0-9]{64}$/i);
15
14
  }
16
15
  static from(buffer) {
17
- return new SHA256Hash(CryptoAdapter_1.CryptoAdapter.hash('sha256', buffer instanceof Media_1.Media ? buffer.getBuffer() : buffer.valueOf()));
16
+ return new SHA256Hash(CryptoAdapter_1.CryptoAdapter.hash('sha256', buffer.valueOf()));
18
17
  }
19
18
  constructor(source) {
20
19
  super(source?.valueOf());
@@ -1 +1 @@
1
- {"version":3,"file":"SHA256Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AACxD,0CAAuC;AACvC,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CACnB,6BAAa,CAAC,IAAI,CAChB,QAAQ,EACR,MAAM,YAAY,aAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAChE,CACF,CAAC;IACJ,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AAlCD,gCAkCC"}
1
+ {"version":3,"file":"SHA256Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AAExD,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CAAC,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AA7BD,gCA6BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SHA512Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBASD,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
1
+ {"version":3,"file":"SHA512Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBAID,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
@@ -5,7 +5,6 @@ const buffer_1 = require("buffer");
5
5
  const InvalidHashError_1 = require("../../errors/InvalidHashError");
6
6
  const patterns_1 = require("../../patterns");
7
7
  const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
8
- const Media_1 = require("../media/Media");
9
8
  const NullObject_1 = require("../NullObject");
10
9
  const StringValueObject_1 = require("../StringValueObject");
11
10
  const ValueObject_1 = require("../ValueObject");
@@ -14,7 +13,7 @@ class SHA512Hash extends ValueObject_1.ValueObject {
14
13
  return !!hash.valueOf().match(/^[a-f0-9]{128}$/i);
15
14
  }
16
15
  static from(buffer) {
17
- return new SHA512Hash(CryptoAdapter_1.CryptoAdapter.hash('sha512', buffer instanceof Media_1.Media ? buffer.getBuffer() : buffer.valueOf()));
16
+ return new SHA512Hash(CryptoAdapter_1.CryptoAdapter.hash('sha512', buffer.valueOf()));
18
17
  }
19
18
  constructor(source) {
20
19
  super(source?.valueOf());
@@ -1 +1 @@
1
- {"version":3,"file":"SHA512Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AACxD,0CAAuC;AACvC,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CACnB,6BAAa,CAAC,IAAI,CAChB,QAAQ,EACR,MAAM,YAAY,aAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAChE,CACF,CAAC;IACJ,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AAlCD,gCAkCC"}
1
+ {"version":3,"file":"SHA512Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AAExD,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CAAC,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AA7BD,gCA6BC"}
@@ -3,7 +3,6 @@ import { ValueObject } from '../ValueObject';
3
3
  export declare class ShortId extends ValueObject<string> {
4
4
  private static readonly LENGTH;
5
5
  private static readonly PATTERN;
6
- private static generateObjectIdHex;
7
6
  static generate(): ShortId;
8
7
  constructor(value: string | StringValueObject);
9
8
  private ensureIsShortId;
@@ -1 +1 @@
1
- {"version":3,"file":"ShortId.d.ts","sourceRoot":"","sources":["../../../src/value-objects/ids/ShortId.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,OAAQ,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA8C;IAE7E,OAAO,CAAC,MAAM,CAAC,mBAAmB;WAOpB,QAAQ,IAAI,OAAO;gBAIrB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAS7C,OAAO,CAAC,eAAe;CAOxB"}
1
+ {"version":3,"file":"ShortId.d.ts","sourceRoot":"","sources":["../../../src/value-objects/ids/ShortId.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,OAAQ,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA8C;WAE/D,QAAQ,IAAI,OAAO;gBAIrB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAS7C,OAAO,CAAC,eAAe;CAOxB"}
@@ -1,22 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ShortId = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const bson_objectid_1 = tslib_1.__importDefault(require("bson-objectid"));
4
6
  const InvalidFormatError_1 = require("../../errors/InvalidFormatError");
5
7
  const InvalidLengthError_1 = require("../../errors/InvalidLengthError");
6
8
  const patterns_1 = require("../../patterns");
7
- const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
8
9
  const NullObject_1 = require("../NullObject");
9
10
  const ValueObject_1 = require("../ValueObject");
10
11
  class ShortId extends ValueObject_1.ValueObject {
11
12
  static LENGTH = 24;
12
13
  static PATTERN = new RegExp(`[a-zA-Z0-9]{${this.LENGTH}}$`);
13
- static generateObjectIdHex() {
14
- const bytes = CryptoAdapter_1.CryptoAdapter.randomBytes(12);
15
- bytes.writeUInt32BE(Math.floor(Date.now() / 1000), 0);
16
- return bytes.toString('hex');
17
- }
18
14
  static generate() {
19
- return new ShortId(ShortId.generateObjectIdHex());
15
+ return new ShortId((0, bson_objectid_1.default)().toHexString());
20
16
  }
21
17
  constructor(value) {
22
18
  super(value?.valueOf());
@@ -1 +1 @@
1
- {"version":3,"file":"ShortId.js","sourceRoot":"","sources":["../../../src/value-objects/ids/ShortId.ts"],"names":[],"mappings":";;;AAAA,wEAAqE;AACrE,wEAAqE;AACrE,6CAAwC;AACxC,2DAAwD;AACxD,8CAA2C;AAE3C,gDAA6C;AAE7C,MAAa,OAAQ,SAAQ,yBAAmB;IACtC,MAAM,CAAU,MAAM,GAAG,EAAE,CAAC;IAC5B,MAAM,CAAU,OAAO,GAAG,IAAI,MAAM,CAAC,eAAe,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAErE,MAAM,CAAC,mBAAmB;QAChC,MAAM,KAAK,GAAG,6BAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC5C,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtD,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,QAAQ;QACpB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAEO,eAAe,CAAC,KAAa;QACnC,IAAA,iBAAM,EACJ,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAC/B,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CACnD,CAAC;QACF,IAAA,iBAAM,EAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1E,CAAC;;AA9BH,0BA+BC"}
1
+ {"version":3,"file":"ShortId.js","sourceRoot":"","sources":["../../../src/value-objects/ids/ShortId.ts"],"names":[],"mappings":";;;;AAAA,0EAAqC;AAErC,wEAAqE;AACrE,wEAAqE;AACrE,6CAAwC;AACxC,8CAA2C;AAE3C,gDAA6C;AAE7C,MAAa,OAAQ,SAAQ,yBAAmB;IACtC,MAAM,CAAU,MAAM,GAAG,EAAE,CAAC;IAC5B,MAAM,CAAU,OAAO,GAAG,IAAI,MAAM,CAAC,eAAe,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAEtE,MAAM,CAAC,QAAQ;QACpB,OAAO,IAAI,OAAO,CAAC,IAAA,uBAAQ,GAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAEO,eAAe,CAAC,KAAa;QACnC,IAAA,iBAAM,EACJ,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAC/B,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CACnD,CAAC;QACF,IAAA,iBAAM,EAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1E,CAAC;;AAvBH,0BAwBC"}
@@ -3,8 +3,6 @@ import { ValueObject } from '../ValueObject';
3
3
  export declare class UUID extends ValueObject<string> {
4
4
  private static readonly LENGTH;
5
5
  private static readonly PATTERN;
6
- private static readonly SENTINEL_PATTERN;
7
- private static fromRandomBytes;
8
6
  static generate(): UUID;
9
7
  constructor(value: string | StringValueObject);
10
8
  private ensureIsUUID;
@@ -1 +1 @@
1
- {"version":3,"file":"UUID.d.ts","sourceRoot":"","sources":["../../../src/value-objects/ids/UUID.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,IAAK,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CACgD;IAE/E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAC6C;IAErF,OAAO,CAAC,MAAM,CAAC,eAAe;WAgBhB,QAAQ,IAAI,IAAI;gBAIlB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAS7C,OAAO,CAAC,YAAY;CAUrB"}
1
+ {"version":3,"file":"UUID.d.ts","sourceRoot":"","sources":["../../../src/value-objects/ids/UUID.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,IAAK,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA6C;WAE9D,QAAQ,IAAI,IAAI;gBAIlB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAS7C,OAAO,CAAC,YAAY;CAOrB"}
@@ -1,31 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.UUID = void 0;
4
+ const uuid_1 = require("uuid");
4
5
  const InvalidFormatError_1 = require("../../errors/InvalidFormatError");
5
6
  const InvalidLengthError_1 = require("../../errors/InvalidLengthError");
6
7
  const patterns_1 = require("../../patterns");
7
- const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
8
8
  const NullObject_1 = require("../NullObject");
9
9
  const ValueObject_1 = require("../ValueObject");
10
10
  class UUID extends ValueObject_1.ValueObject {
11
11
  static LENGTH = 36;
12
- static PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
13
- static SENTINEL_PATTERN = /^(?:00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;
14
- static fromRandomBytes(bytes) {
15
- const uuidBytes = Buffer.from(bytes);
16
- uuidBytes[6] = (uuidBytes[6] % 16) + 64;
17
- uuidBytes[8] = (uuidBytes[8] % 64) + 128;
18
- const hex = uuidBytes.toString('hex');
19
- return [
20
- hex.slice(0, 8),
21
- hex.slice(8, 12),
22
- hex.slice(12, 16),
23
- hex.slice(16, 20),
24
- hex.slice(20),
25
- ].join('-');
26
- }
12
+ static PATTERN = new RegExp(`^[a-z0-9-]{${this.LENGTH}}$`);
27
13
  static generate() {
28
- return new UUID(UUID.fromRandomBytes(CryptoAdapter_1.CryptoAdapter.randomBytes(16)));
14
+ return new UUID((0, uuid_1.v4)());
29
15
  }
30
16
  constructor(value) {
31
17
  super(value?.valueOf());
@@ -36,7 +22,7 @@ class UUID extends ValueObject_1.ValueObject {
36
22
  }
37
23
  ensureIsUUID(value) {
38
24
  (0, patterns_1.assert)(value.length === UUID.LENGTH, new InvalidLengthError_1.InvalidLengthError(this.value, UUID.LENGTH));
39
- (0, patterns_1.assert)(UUID.PATTERN.test(value) || UUID.SENTINEL_PATTERN.test(value), new InvalidFormatError_1.InvalidFormatError(this.value));
25
+ (0, patterns_1.assert)(UUID.PATTERN.test(value), new InvalidFormatError_1.InvalidFormatError(this.value));
40
26
  }
41
27
  }
42
28
  exports.UUID = UUID;
@@ -1 +1 @@
1
- {"version":3,"file":"UUID.js","sourceRoot":"","sources":["../../../src/value-objects/ids/UUID.ts"],"names":[],"mappings":";;;AAAA,wEAAqE;AACrE,wEAAqE;AACrE,6CAAwC;AACxC,2DAAwD;AACxD,8CAA2C;AAE3C,gDAA6C;AAE7C,MAAa,IAAK,SAAQ,yBAAmB;IACnC,MAAM,CAAU,MAAM,GAAG,EAAE,CAAC;IAC5B,MAAM,CAAU,OAAO,GAC7B,4EAA4E,CAAC;IAEvE,MAAM,CAAU,gBAAgB,GACtC,kFAAkF,CAAC;IAE7E,MAAM,CAAC,eAAe,CAAC,KAAa;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;QACxC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;QAEzC,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEtC,OAAO;YACL,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAChB,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;YACjB,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;YACjB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;SACd,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,QAAQ;QACpB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,6BAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAEO,YAAY,CAAC,KAAa;QAChC,IAAA,iBAAM,EACJ,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAC5B,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAChD,CAAC;QACF,IAAA,iBAAM,EACJ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAC7D,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CACnC,CAAC;IACJ,CAAC;;AA9CH,oBA+CC"}
1
+ {"version":3,"file":"UUID.js","sourceRoot":"","sources":["../../../src/value-objects/ids/UUID.ts"],"names":[],"mappings":";;;AAAA,+BAA0B;AAE1B,wEAAqE;AACrE,wEAAqE;AACrE,6CAAwC;AACxC,8CAA2C;AAE3C,gDAA6C;AAE7C,MAAa,IAAK,SAAQ,yBAAmB;IACnC,MAAM,CAAU,MAAM,GAAG,EAAE,CAAC;IAC5B,MAAM,CAAU,OAAO,GAAG,IAAI,MAAM,CAAC,cAAc,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAErE,MAAM,CAAC,QAAQ;QACpB,OAAO,IAAI,IAAI,CAAC,IAAA,SAAE,GAAE,CAAC,CAAC;IACxB,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAEO,YAAY,CAAC,KAAa;QAChC,IAAA,iBAAM,EACJ,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAC5B,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAChD,CAAC;QACF,IAAA,iBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,uCAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;;AAvBH,oBAwBC"}
@@ -9,7 +9,6 @@ export * from './Email';
9
9
  export * from './Enum';
10
10
  export * from './Integer';
11
11
  export * from './NumberValueObject';
12
- export * from './Password';
13
12
  export * from './PositiveNumber';
14
13
  export * from './StringValueObject';
15
14
  export * from './NullObject';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/value-objects/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/value-objects/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
@@ -12,7 +12,6 @@ tslib_1.__exportStar(require("./Email"), exports);
12
12
  tslib_1.__exportStar(require("./Enum"), exports);
13
13
  tslib_1.__exportStar(require("./Integer"), exports);
14
14
  tslib_1.__exportStar(require("./NumberValueObject"), exports);
15
- tslib_1.__exportStar(require("./Password"), exports);
16
15
  tslib_1.__exportStar(require("./PositiveNumber"), exports);
17
16
  tslib_1.__exportStar(require("./StringValueObject"), exports);
18
17
  tslib_1.__exportStar(require("./NullObject"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/value-objects/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,mDAAyB;AACzB,mDAAyB;AACzB,gDAAsB;AACtB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,kDAAwB;AACxB,iDAAuB;AACvB,oDAA0B;AAC1B,8DAAoC;AACpC,qDAA2B;AAC3B,2DAAiC;AACjC,8DAAoC;AACpC,uDAA6B;AAC7B,8DAAoC;AACpC,wDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/value-objects/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,mDAAyB;AACzB,mDAAyB;AACzB,gDAAsB;AACtB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,kDAAwB;AACxB,iDAAuB;AACvB,oDAA0B;AAC1B,8DAAoC;AACpC,2DAAiC;AACjC,8DAAoC;AACpC,uDAA6B;AAC7B,8DAAoC;AACpC,wDAA8B"}
@@ -1,11 +1,9 @@
1
1
  import { Buffer } from 'buffer';
2
2
  import { ValueObject } from '../ValueObject';
3
3
  export declare class Media extends ValueObject<string> {
4
- private readonly buffer?;
5
4
  constructor(value: string | Buffer);
6
5
  getBuffer(): Buffer;
7
6
  getSize(): number;
8
7
  getBase64(): string;
9
- isEqual(other: unknown): boolean;
10
8
  }
11
9
  //# sourceMappingURL=Media.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Media.d.ts","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,KAAM,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;gBAErB,KAAK,EAAE,MAAM,GAAG,MAAM;IAU3B,SAAS,IAAI,MAAM;IAMnB,OAAO,IAAI,MAAM;IAIjB,SAAS,IAAI,MAAM;IAInB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAWxC"}
1
+ {"version":3,"file":"Media.d.ts","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,KAAM,SAAQ,WAAW,CAAC,MAAM,CAAC;gBAChC,KAAK,EAAE,MAAM,GAAG,MAAM;IAQ3B,SAAS,IAAI,MAAM;IAInB,OAAO,IAAI,MAAM;IAIjB,SAAS,IAAI,MAAM;CAG3B"}
@@ -5,18 +5,14 @@ const buffer_1 = require("buffer");
5
5
  const NullObject_1 = require("../NullObject");
6
6
  const ValueObject_1 = require("../ValueObject");
7
7
  class Media extends ValueObject_1.ValueObject {
8
- buffer;
9
8
  constructor(value) {
10
9
  super(value?.toString());
11
10
  if (NullObject_1.NullObject.isNullObject(this)) {
12
11
  return this;
13
12
  }
14
- this.buffer = buffer_1.Buffer.isBuffer(value) ? buffer_1.Buffer.from(value) : undefined;
15
13
  }
16
14
  getBuffer() {
17
- return this.buffer === undefined
18
- ? buffer_1.Buffer.from(this.value)
19
- : buffer_1.Buffer.from(this.buffer);
15
+ return buffer_1.Buffer.from(this.value);
20
16
  }
21
17
  getSize() {
22
18
  return this.getBuffer().length;
@@ -24,15 +20,6 @@ class Media extends ValueObject_1.ValueObject {
24
20
  getBase64() {
25
21
  return this.getBuffer().toString('base64');
26
22
  }
27
- isEqual(other) {
28
- if (other instanceof Media) {
29
- return this.getBuffer().equals(other.getBuffer());
30
- }
31
- if (buffer_1.Buffer.isBuffer(other)) {
32
- return this.getBuffer().equals(other);
33
- }
34
- return super.isEqual(other);
35
- }
36
23
  }
37
24
  exports.Media = Media;
38
25
  //# sourceMappingURL=Media.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Media.js","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,8CAA2C;AAC3C,gDAA6C;AAE7C,MAAa,KAAM,SAAQ,yBAAmB;IAC3B,MAAM,CAAU;IAEjC,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS;YAC9B,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAEM,OAAO,CAAC,KAAc;QAC3B,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACF;AAtCD,sBAsCC"}
1
+ {"version":3,"file":"Media.js","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,8CAA2C;AAC3C,gDAA6C;AAE7C,MAAa,KAAM,SAAQ,yBAAmB;IAC5C,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEM,SAAS;QACd,OAAO,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;CACF;AApBD,sBAoBC"}
@@ -8,11 +8,10 @@ export declare class CalendarDay extends ValueObject<string> {
8
8
  private readonly year;
9
9
  private readonly month;
10
10
  private readonly day;
11
+ private static ensureIsValidValue;
11
12
  private static ensureIsValidString;
12
13
  private static generateStringValue;
13
14
  private static ensureIsValidDate;
14
- private static timestampFromString;
15
- private static timestampFromValue;
16
15
  constructor(value?: string | Date | number | Timestamp);
17
16
  isAfter(date: CalendarDay): boolean;
18
17
  isBefore(date: CalendarDay): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarDay.d.ts","sourceRoot":"","sources":["../../../src/value-objects/time/CalendarDay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,WAAY,SAAQ,WAAW,CAAC,MAAM,CAAC;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAOlC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAOlC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAkBlC,OAAO,CAAC,MAAM,CAAC,kBAAkB;gBAYrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS;IAgB/C,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAInC,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAIpC,OAAO,IAAI,MAAM;IAIjB,QAAQ,IAAI,KAAK;IAIjB,cAAc,IAAI,WAAW;IAI7B,MAAM,IAAI,GAAG;IAIb,YAAY,IAAI,SAAS;IAIzB,WAAW,IAAI,SAAS;CAOhC"}
1
+ {"version":3,"file":"CalendarDay.d.ts","sourceRoot":"","sources":["../../../src/value-objects/time/CalendarDay.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,WAAY,SAAQ,WAAW,CAAC,MAAM,CAAC;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IASjC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAOlC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAOlC,OAAO,CAAC,MAAM,CAAC,iBAAiB;gBAIpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS;IAiB/C,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAInC,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO;IAIpC,OAAO,IAAI,MAAM;IAIjB,QAAQ,IAAI,KAAK;IAIjB,cAAc,IAAI,WAAW;IAI7B,MAAM,IAAI,GAAG;IAIb,YAAY,IAAI,SAAS;IAIzB,WAAW,IAAI,SAAS;CAGhC"}
@@ -14,6 +14,12 @@ class CalendarDay extends ValueObject_1.ValueObject {
14
14
  year;
15
15
  month;
16
16
  day;
17
+ static ensureIsValidValue(value) {
18
+ if (typeof value == 'string') {
19
+ this.ensureIsValidString(value);
20
+ }
21
+ this.ensureIsValidDate(new Date(value.valueOf()));
22
+ }
17
23
  static ensureIsValidString(value) {
18
24
  (0, Assert_1.assert)(value.match(/^\d{4}-\d{1,2}-\d{1,2}$/), new InvalidDayFormatError_1.InvalidDayFormatError(value));
19
25
  }
@@ -23,30 +29,13 @@ class CalendarDay extends ValueObject_1.ValueObject {
23
29
  return `${timestamp.getYear().toString()}-${paddedMonth}-${paddedDay}`;
24
30
  }
25
31
  static ensureIsValidDate(value) {
26
- (0, Assert_1.assert)(Number.isFinite(value.valueOf()), new InvalidDayError_1.InvalidDayError(value));
27
- }
28
- static timestampFromString(value) {
29
- CalendarDay.ensureIsValidString(value);
30
- const [year, month, day] = value.split('-').map(Number);
31
- const date = new Date(0);
32
- date.setUTCHours(0, 0, 0, 0);
33
- date.setUTCFullYear(year, month - 1, day);
34
- (0, Assert_1.assert)(date.getUTCFullYear() === year &&
35
- date.getUTCMonth() === month - 1 &&
36
- date.getUTCDate() === day, new InvalidDayError_1.InvalidDayError(value));
37
- return new Timestamp_1.Timestamp(date);
38
- }
39
- static timestampFromValue(value) {
40
- if (typeof value === 'string') {
41
- return CalendarDay.timestampFromString(value);
42
- }
43
- CalendarDay.ensureIsValidDate(value);
44
- return new Timestamp_1.Timestamp(value);
32
+ (0, Assert_1.assert)(!isNaN(value.valueOf()), new InvalidDayError_1.InvalidDayError(value));
45
33
  }
46
34
  constructor(value) {
47
35
  let timestamp;
48
- if (value !== undefined) {
49
- timestamp = CalendarDay.timestampFromValue(value);
36
+ if (value) {
37
+ CalendarDay.ensureIsValidValue(value);
38
+ timestamp = new Timestamp_1.Timestamp(value);
50
39
  }
51
40
  else {
52
41
  timestamp = new Timestamp_1.Timestamp();
@@ -78,10 +67,7 @@ class CalendarDay extends ValueObject_1.ValueObject {
78
67
  return DayOfWeek_1.DayOfWeek.fromNumber(this.toTimestamp().getDayOfWeek());
79
68
  }
80
69
  toTimestamp() {
81
- const date = new Date(0);
82
- date.setUTCHours(0, 0, 0, 0);
83
- date.setUTCFullYear(this.year, this.month - 1, this.day);
84
- return new Timestamp_1.Timestamp(date);
70
+ return new Timestamp_1.Timestamp(Date.UTC(this.year, this.month - 1, this.day));
85
71
  }
86
72
  }
87
73
  exports.CalendarDay = CalendarDay;
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarDay.js","sourceRoot":"","sources":["../../../src/value-objects/time/CalendarDay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CalendarDay.js","sourceRoot":"","sources":["../../../src/value-objects/time/CalendarDay.ts"],"names":[],"mappings":"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"}