@haskou/value-objects 6.1.1 → 7.0.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 (280) hide show
  1. package/README.md +4 -0
  2. package/dist/index.cjs +1244 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +538 -0
  5. package/dist/index.d.cts.map +1 -0
  6. package/dist/index.d.mts +1 -0
  7. package/dist/index.mjs +2 -0
  8. package/package.json +18 -11
  9. package/dist/errors/BaseError.d.ts +0 -8
  10. package/dist/errors/BaseError.d.ts.map +0 -1
  11. package/dist/errors/BaseError.js +0 -22
  12. package/dist/errors/BaseError.js.map +0 -1
  13. package/dist/errors/DomainError.d.ts +0 -7
  14. package/dist/errors/DomainError.d.ts.map +0 -1
  15. package/dist/errors/DomainError.js +0 -15
  16. package/dist/errors/DomainError.js.map +0 -1
  17. package/dist/errors/InvalidColorError.d.ts +0 -5
  18. package/dist/errors/InvalidColorError.d.ts.map +0 -1
  19. package/dist/errors/InvalidColorError.js +0 -11
  20. package/dist/errors/InvalidColorError.js.map +0 -1
  21. package/dist/errors/InvalidDayError.d.ts +0 -5
  22. package/dist/errors/InvalidDayError.d.ts.map +0 -1
  23. package/dist/errors/InvalidDayError.js +0 -11
  24. package/dist/errors/InvalidDayError.js.map +0 -1
  25. package/dist/errors/InvalidDayFormatError.d.ts +0 -5
  26. package/dist/errors/InvalidDayFormatError.d.ts.map +0 -1
  27. package/dist/errors/InvalidDayFormatError.js +0 -11
  28. package/dist/errors/InvalidDayFormatError.js.map +0 -1
  29. package/dist/errors/InvalidEmailError.d.ts +0 -5
  30. package/dist/errors/InvalidEmailError.d.ts.map +0 -1
  31. package/dist/errors/InvalidEmailError.js +0 -11
  32. package/dist/errors/InvalidEmailError.js.map +0 -1
  33. package/dist/errors/InvalidFormatError.d.ts +0 -5
  34. package/dist/errors/InvalidFormatError.d.ts.map +0 -1
  35. package/dist/errors/InvalidFormatError.js +0 -11
  36. package/dist/errors/InvalidFormatError.js.map +0 -1
  37. package/dist/errors/InvalidHashError.d.ts +0 -5
  38. package/dist/errors/InvalidHashError.d.ts.map +0 -1
  39. package/dist/errors/InvalidHashError.js +0 -11
  40. package/dist/errors/InvalidHashError.js.map +0 -1
  41. package/dist/errors/InvalidHourError.d.ts +0 -5
  42. package/dist/errors/InvalidHourError.d.ts.map +0 -1
  43. package/dist/errors/InvalidHourError.js +0 -11
  44. package/dist/errors/InvalidHourError.js.map +0 -1
  45. package/dist/errors/InvalidIntegerError.d.ts +0 -5
  46. package/dist/errors/InvalidIntegerError.d.ts.map +0 -1
  47. package/dist/errors/InvalidIntegerError.js +0 -11
  48. package/dist/errors/InvalidIntegerError.js.map +0 -1
  49. package/dist/errors/InvalidLatitudeError.d.ts +0 -5
  50. package/dist/errors/InvalidLatitudeError.d.ts.map +0 -1
  51. package/dist/errors/InvalidLatitudeError.js +0 -11
  52. package/dist/errors/InvalidLatitudeError.js.map +0 -1
  53. package/dist/errors/InvalidLengthError.d.ts +0 -5
  54. package/dist/errors/InvalidLengthError.d.ts.map +0 -1
  55. package/dist/errors/InvalidLengthError.js +0 -11
  56. package/dist/errors/InvalidLengthError.js.map +0 -1
  57. package/dist/errors/InvalidLongitudeError.d.ts +0 -5
  58. package/dist/errors/InvalidLongitudeError.d.ts.map +0 -1
  59. package/dist/errors/InvalidLongitudeError.js +0 -11
  60. package/dist/errors/InvalidLongitudeError.js.map +0 -1
  61. package/dist/errors/InvalidMinutesError.d.ts +0 -5
  62. package/dist/errors/InvalidMinutesError.d.ts.map +0 -1
  63. package/dist/errors/InvalidMinutesError.js +0 -11
  64. package/dist/errors/InvalidMinutesError.js.map +0 -1
  65. package/dist/errors/InvalidNumberError.d.ts +0 -5
  66. package/dist/errors/InvalidNumberError.d.ts.map +0 -1
  67. package/dist/errors/InvalidNumberError.js +0 -11
  68. package/dist/errors/InvalidNumberError.js.map +0 -1
  69. package/dist/errors/InvalidPasswordError.d.ts +0 -5
  70. package/dist/errors/InvalidPasswordError.d.ts.map +0 -1
  71. package/dist/errors/InvalidPasswordError.js +0 -11
  72. package/dist/errors/InvalidPasswordError.js.map +0 -1
  73. package/dist/errors/InvalidPositiveNumberError.d.ts +0 -5
  74. package/dist/errors/InvalidPositiveNumberError.d.ts.map +0 -1
  75. package/dist/errors/InvalidPositiveNumberError.js +0 -11
  76. package/dist/errors/InvalidPositiveNumberError.js.map +0 -1
  77. package/dist/errors/InvalidStringLengthError.d.ts +0 -5
  78. package/dist/errors/InvalidStringLengthError.d.ts.map +0 -1
  79. package/dist/errors/InvalidStringLengthError.js +0 -11
  80. package/dist/errors/InvalidStringLengthError.js.map +0 -1
  81. package/dist/errors/InvalidTimestampIntervalError.d.ts +0 -6
  82. package/dist/errors/InvalidTimestampIntervalError.d.ts.map +0 -1
  83. package/dist/errors/InvalidTimestampIntervalError.js +0 -11
  84. package/dist/errors/InvalidTimestampIntervalError.js.map +0 -1
  85. package/dist/errors/NullObjectCreationDisabledError.d.ts +0 -5
  86. package/dist/errors/NullObjectCreationDisabledError.d.ts.map +0 -1
  87. package/dist/errors/NullObjectCreationDisabledError.js +0 -12
  88. package/dist/errors/NullObjectCreationDisabledError.js.map +0 -1
  89. package/dist/errors/NullObjectError.d.ts +0 -5
  90. package/dist/errors/NullObjectError.d.ts.map +0 -1
  91. package/dist/errors/NullObjectError.js +0 -12
  92. package/dist/errors/NullObjectError.js.map +0 -1
  93. package/dist/errors/ValueNotInEnumError.d.ts +0 -5
  94. package/dist/errors/ValueNotInEnumError.d.ts.map +0 -1
  95. package/dist/errors/ValueNotInEnumError.js +0 -11
  96. package/dist/errors/ValueNotInEnumError.js.map +0 -1
  97. package/dist/errors/index.d.ts +0 -24
  98. package/dist/errors/index.d.ts.map +0 -1
  99. package/dist/errors/index.js +0 -27
  100. package/dist/errors/index.js.map +0 -1
  101. package/dist/index.d.ts +0 -6
  102. package/dist/index.d.ts.map +0 -1
  103. package/dist/index.js +0 -9
  104. package/dist/index.js.map +0 -1
  105. package/dist/interfaces/PrimitiveOf.d.ts +0 -9
  106. package/dist/interfaces/PrimitiveOf.d.ts.map +0 -1
  107. package/dist/interfaces/PrimitiveOf.js +0 -3
  108. package/dist/interfaces/PrimitiveOf.js.map +0 -1
  109. package/dist/interfaces/index.d.ts +0 -2
  110. package/dist/interfaces/index.d.ts.map +0 -1
  111. package/dist/interfaces/index.js +0 -5
  112. package/dist/interfaces/index.js.map +0 -1
  113. package/dist/patterns/Assert.d.ts +0 -5
  114. package/dist/patterns/Assert.d.ts.map +0 -1
  115. package/dist/patterns/Assert.js +0 -11
  116. package/dist/patterns/Assert.js.map +0 -1
  117. package/dist/patterns/index.d.ts +0 -2
  118. package/dist/patterns/index.d.ts.map +0 -1
  119. package/dist/patterns/index.js +0 -5
  120. package/dist/patterns/index.js.map +0 -1
  121. package/dist/types/Nullish.d.ts +0 -2
  122. package/dist/types/Nullish.d.ts.map +0 -1
  123. package/dist/types/Nullish.js +0 -3
  124. package/dist/types/Nullish.js.map +0 -1
  125. package/dist/types/Primitive.d.ts +0 -2
  126. package/dist/types/Primitive.d.ts.map +0 -1
  127. package/dist/types/Primitive.js +0 -3
  128. package/dist/types/Primitive.js.map +0 -1
  129. package/dist/types/index.d.ts +0 -3
  130. package/dist/types/index.d.ts.map +0 -1
  131. package/dist/types/index.js +0 -6
  132. package/dist/types/index.js.map +0 -1
  133. package/dist/value-objects/Color.d.ts +0 -19
  134. package/dist/value-objects/Color.d.ts.map +0 -1
  135. package/dist/value-objects/Color.js +0 -40
  136. package/dist/value-objects/Color.js.map +0 -1
  137. package/dist/value-objects/Email.d.ts +0 -7
  138. package/dist/value-objects/Email.d.ts.map +0 -1
  139. package/dist/value-objects/Email.js +0 -22
  140. package/dist/value-objects/Email.js.map +0 -1
  141. package/dist/value-objects/Enum.d.ts +0 -9
  142. package/dist/value-objects/Enum.d.ts.map +0 -1
  143. package/dist/value-objects/Enum.js +0 -24
  144. package/dist/value-objects/Enum.js.map +0 -1
  145. package/dist/value-objects/Integer.d.ts +0 -6
  146. package/dist/value-objects/Integer.d.ts.map +0 -1
  147. package/dist/value-objects/Integer.js +0 -21
  148. package/dist/value-objects/Integer.js.map +0 -1
  149. package/dist/value-objects/NullObject.d.ts +0 -8
  150. package/dist/value-objects/NullObject.d.ts.map +0 -1
  151. package/dist/value-objects/NullObject.js +0 -43
  152. package/dist/value-objects/NullObject.js.map +0 -1
  153. package/dist/value-objects/NumberValueObject.d.ts +0 -15
  154. package/dist/value-objects/NumberValueObject.d.ts.map +0 -1
  155. package/dist/value-objects/NumberValueObject.js +0 -48
  156. package/dist/value-objects/NumberValueObject.js.map +0 -1
  157. package/dist/value-objects/Password.d.ts +0 -8
  158. package/dist/value-objects/Password.d.ts.map +0 -1
  159. package/dist/value-objects/Password.js +0 -28
  160. package/dist/value-objects/Password.js.map +0 -1
  161. package/dist/value-objects/PositiveNumber.d.ts +0 -6
  162. package/dist/value-objects/PositiveNumber.d.ts.map +0 -1
  163. package/dist/value-objects/PositiveNumber.js +0 -21
  164. package/dist/value-objects/PositiveNumber.js.map +0 -1
  165. package/dist/value-objects/StringValueObject.d.ts +0 -7
  166. package/dist/value-objects/StringValueObject.d.ts.map +0 -1
  167. package/dist/value-objects/StringValueObject.js +0 -24
  168. package/dist/value-objects/StringValueObject.js.map +0 -1
  169. package/dist/value-objects/UniqueObjectArray.d.ts +0 -15
  170. package/dist/value-objects/UniqueObjectArray.d.ts.map +0 -1
  171. package/dist/value-objects/UniqueObjectArray.js +0 -42
  172. package/dist/value-objects/UniqueObjectArray.js.map +0 -1
  173. package/dist/value-objects/ValueObject.d.ts +0 -16
  174. package/dist/value-objects/ValueObject.d.ts.map +0 -1
  175. package/dist/value-objects/ValueObject.js +0 -50
  176. package/dist/value-objects/ValueObject.js.map +0 -1
  177. package/dist/value-objects/coordinates/Coordinates.d.ts +0 -12
  178. package/dist/value-objects/coordinates/Coordinates.d.ts.map +0 -1
  179. package/dist/value-objects/coordinates/Coordinates.js +0 -28
  180. package/dist/value-objects/coordinates/Coordinates.js.map +0 -1
  181. package/dist/value-objects/coordinates/Latitude.d.ts +0 -8
  182. package/dist/value-objects/coordinates/Latitude.d.ts.map +0 -1
  183. package/dist/value-objects/coordinates/Latitude.js +0 -22
  184. package/dist/value-objects/coordinates/Latitude.js.map +0 -1
  185. package/dist/value-objects/coordinates/Longitude.d.ts +0 -8
  186. package/dist/value-objects/coordinates/Longitude.d.ts.map +0 -1
  187. package/dist/value-objects/coordinates/Longitude.js +0 -22
  188. package/dist/value-objects/coordinates/Longitude.js.map +0 -1
  189. package/dist/value-objects/coordinates/index.d.ts +0 -4
  190. package/dist/value-objects/coordinates/index.d.ts.map +0 -1
  191. package/dist/value-objects/coordinates/index.js +0 -7
  192. package/dist/value-objects/coordinates/index.js.map +0 -1
  193. package/dist/value-objects/hashes/Hash.d.ts +0 -7
  194. package/dist/value-objects/hashes/Hash.d.ts.map +0 -1
  195. package/dist/value-objects/hashes/Hash.js +0 -20
  196. package/dist/value-objects/hashes/Hash.js.map +0 -1
  197. package/dist/value-objects/hashes/MD5Hash.d.ts +0 -7
  198. package/dist/value-objects/hashes/MD5Hash.d.ts.map +0 -1
  199. package/dist/value-objects/hashes/MD5Hash.js +0 -21
  200. package/dist/value-objects/hashes/MD5Hash.js.map +0 -1
  201. package/dist/value-objects/hashes/SHA256Hash.d.ts +0 -8
  202. package/dist/value-objects/hashes/SHA256Hash.d.ts.map +0 -1
  203. package/dist/value-objects/hashes/SHA256Hash.js +0 -26
  204. package/dist/value-objects/hashes/SHA256Hash.js.map +0 -1
  205. package/dist/value-objects/hashes/SHA512Hash.d.ts +0 -8
  206. package/dist/value-objects/hashes/SHA512Hash.d.ts.map +0 -1
  207. package/dist/value-objects/hashes/SHA512Hash.js +0 -26
  208. package/dist/value-objects/hashes/SHA512Hash.js.map +0 -1
  209. package/dist/value-objects/hashes/index.d.ts +0 -5
  210. package/dist/value-objects/hashes/index.d.ts.map +0 -1
  211. package/dist/value-objects/hashes/index.js +0 -8
  212. package/dist/value-objects/hashes/index.js.map +0 -1
  213. package/dist/value-objects/ids/ShortId.d.ts +0 -12
  214. package/dist/value-objects/ids/ShortId.d.ts.map +0 -1
  215. package/dist/value-objects/ids/ShortId.js +0 -39
  216. package/dist/value-objects/ids/ShortId.js.map +0 -1
  217. package/dist/value-objects/ids/UUID.d.ts +0 -13
  218. package/dist/value-objects/ids/UUID.d.ts.map +0 -1
  219. package/dist/value-objects/ids/UUID.js +0 -48
  220. package/dist/value-objects/ids/UUID.js.map +0 -1
  221. package/dist/value-objects/ids/index.d.ts +0 -3
  222. package/dist/value-objects/ids/index.d.ts.map +0 -1
  223. package/dist/value-objects/ids/index.js +0 -6
  224. package/dist/value-objects/ids/index.js.map +0 -1
  225. package/dist/value-objects/index.d.ts +0 -17
  226. package/dist/value-objects/index.d.ts.map +0 -1
  227. package/dist/value-objects/index.js +0 -20
  228. package/dist/value-objects/index.js.map +0 -1
  229. package/dist/value-objects/media/Media.d.ts +0 -11
  230. package/dist/value-objects/media/Media.d.ts.map +0 -1
  231. package/dist/value-objects/media/Media.js +0 -38
  232. package/dist/value-objects/media/Media.js.map +0 -1
  233. package/dist/value-objects/media/index.d.ts +0 -2
  234. package/dist/value-objects/media/index.d.ts.map +0 -1
  235. package/dist/value-objects/media/index.js +0 -5
  236. package/dist/value-objects/media/index.js.map +0 -1
  237. package/dist/value-objects/time/CalendarDay.d.ts +0 -26
  238. package/dist/value-objects/time/CalendarDay.d.ts.map +0 -1
  239. package/dist/value-objects/time/CalendarDay.js +0 -88
  240. package/dist/value-objects/time/CalendarDay.js.map +0 -1
  241. package/dist/value-objects/time/Day.d.ts +0 -7
  242. package/dist/value-objects/time/Day.d.ts.map +0 -1
  243. package/dist/value-objects/time/Day.js +0 -18
  244. package/dist/value-objects/time/Day.js.map +0 -1
  245. package/dist/value-objects/time/DayOfWeek.d.ts +0 -34
  246. package/dist/value-objects/time/DayOfWeek.d.ts.map +0 -1
  247. package/dist/value-objects/time/DayOfWeek.js +0 -51
  248. package/dist/value-objects/time/DayOfWeek.js.map +0 -1
  249. package/dist/value-objects/time/Duration.d.ts +0 -23
  250. package/dist/value-objects/time/Duration.d.ts.map +0 -1
  251. package/dist/value-objects/time/Duration.js +0 -79
  252. package/dist/value-objects/time/Duration.js.map +0 -1
  253. package/dist/value-objects/time/Hour.d.ts +0 -18
  254. package/dist/value-objects/time/Hour.d.ts.map +0 -1
  255. package/dist/value-objects/time/Hour.js +0 -80
  256. package/dist/value-objects/time/Hour.js.map +0 -1
  257. package/dist/value-objects/time/Month.d.ts +0 -18
  258. package/dist/value-objects/time/Month.d.ts.map +0 -1
  259. package/dist/value-objects/time/Month.js +0 -41
  260. package/dist/value-objects/time/Month.js.map +0 -1
  261. package/dist/value-objects/time/MonthOfYear.d.ts +0 -17
  262. package/dist/value-objects/time/MonthOfYear.d.ts.map +0 -1
  263. package/dist/value-objects/time/MonthOfYear.js +0 -45
  264. package/dist/value-objects/time/MonthOfYear.js.map +0 -1
  265. package/dist/value-objects/time/Timestamp.d.ts +0 -53
  266. package/dist/value-objects/time/Timestamp.d.ts.map +0 -1
  267. package/dist/value-objects/time/Timestamp.js +0 -197
  268. package/dist/value-objects/time/Timestamp.js.map +0 -1
  269. package/dist/value-objects/time/TimestampInterval.d.ts +0 -24
  270. package/dist/value-objects/time/TimestampInterval.d.ts.map +0 -1
  271. package/dist/value-objects/time/TimestampInterval.js +0 -78
  272. package/dist/value-objects/time/TimestampInterval.js.map +0 -1
  273. package/dist/value-objects/time/Year.d.ts +0 -10
  274. package/dist/value-objects/time/Year.d.ts.map +0 -1
  275. package/dist/value-objects/time/Year.js +0 -26
  276. package/dist/value-objects/time/Year.js.map +0 -1
  277. package/dist/value-objects/time/index.d.ts +0 -11
  278. package/dist/value-objects/time/index.d.ts.map +0 -1
  279. package/dist/value-objects/time/index.js +0 -14
  280. package/dist/value-objects/time/index.js.map +0 -1
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ShortId = void 0;
4
- const buffer_1 = require("buffer");
5
- const InvalidFormatError_1 = require("../../errors/InvalidFormatError");
6
- const InvalidLengthError_1 = require("../../errors/InvalidLengthError");
7
- const patterns_1 = require("../../patterns");
8
- const NullObject_1 = require("../NullObject");
9
- const ValueObject_1 = require("../ValueObject");
10
- class ShortId extends ValueObject_1.ValueObject {
11
- static LENGTH = 24;
12
- static PATTERN = new RegExp(`[a-zA-Z0-9]{${this.LENGTH}}$`);
13
- static randomBytes(size) {
14
- const bytes = new Uint8Array(size);
15
- globalThis.crypto.getRandomValues(bytes);
16
- return buffer_1.Buffer.from(bytes);
17
- }
18
- static generateObjectIdHex() {
19
- const bytes = ShortId.randomBytes(12);
20
- bytes.writeUInt32BE(Math.floor(Date.now() / 1000), 0);
21
- return bytes.toString('hex');
22
- }
23
- static generate() {
24
- return new ShortId(ShortId.generateObjectIdHex());
25
- }
26
- constructor(value) {
27
- super(value?.valueOf());
28
- if (NullObject_1.NullObject.isNullObject(this)) {
29
- return this;
30
- }
31
- this.ensureIsShortId(this.value);
32
- }
33
- ensureIsShortId(value) {
34
- (0, patterns_1.assert)(value.length === ShortId.LENGTH, new InvalidLengthError_1.InvalidLengthError(this.value, ShortId.LENGTH));
35
- (0, patterns_1.assert)(ShortId.PATTERN.test(value), new InvalidFormatError_1.InvalidFormatError(this.value));
36
- }
37
- }
38
- exports.ShortId = ShortId;
39
- //# sourceMappingURL=ShortId.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShortId.js","sourceRoot":"","sources":["../../../src/value-objects/ids/ShortId.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,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;IAErE,MAAM,CAAC,WAAW,CAAC,IAAY;QACrC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAEzC,OAAO,eAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEO,MAAM,CAAC,mBAAmB;QAChC,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACtC,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;;AArCH,0BAsCC"}
@@ -1,13 +0,0 @@
1
- import { StringValueObject } from '../StringValueObject';
2
- import { ValueObject } from '../ValueObject';
3
- export declare class UUID extends ValueObject<string> {
4
- private static readonly LENGTH;
5
- private static readonly PATTERN;
6
- private static readonly SENTINEL_PATTERN;
7
- private static randomBytes;
8
- private static fromRandomBytes;
9
- static generate(): UUID;
10
- constructor(value: string | StringValueObject);
11
- private ensureIsUUID;
12
- }
13
- //# sourceMappingURL=UUID.d.ts.map
@@ -1 +0,0 @@
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,CACgD;IAE/E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAC6C;IAErF,OAAO,CAAC,MAAM,CAAC,WAAW;IAO1B,OAAO,CAAC,MAAM,CAAC,eAAe;WAgBhB,QAAQ,IAAI,IAAI;gBAIlB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAS7C,OAAO,CAAC,YAAY;CAUrB"}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UUID = void 0;
4
- const buffer_1 = require("buffer");
5
- const InvalidFormatError_1 = require("../../errors/InvalidFormatError");
6
- const InvalidLengthError_1 = require("../../errors/InvalidLengthError");
7
- const patterns_1 = require("../../patterns");
8
- const NullObject_1 = require("../NullObject");
9
- const ValueObject_1 = require("../ValueObject");
10
- class UUID extends ValueObject_1.ValueObject {
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 randomBytes(size) {
15
- const bytes = new Uint8Array(size);
16
- globalThis.crypto.getRandomValues(bytes);
17
- return buffer_1.Buffer.from(bytes);
18
- }
19
- static fromRandomBytes(bytes) {
20
- const uuidBytes = buffer_1.Buffer.from(bytes);
21
- uuidBytes[6] = (uuidBytes[6] % 16) + 64;
22
- uuidBytes[8] = (uuidBytes[8] % 64) + 128;
23
- const hex = uuidBytes.toString('hex');
24
- return [
25
- hex.slice(0, 8),
26
- hex.slice(8, 12),
27
- hex.slice(12, 16),
28
- hex.slice(16, 20),
29
- hex.slice(20),
30
- ].join('-');
31
- }
32
- static generate() {
33
- return new UUID(UUID.fromRandomBytes(UUID.randomBytes(16)));
34
- }
35
- constructor(value) {
36
- super(value?.valueOf());
37
- if (NullObject_1.NullObject.isNullObject(this)) {
38
- return this;
39
- }
40
- this.ensureIsUUID(this.value);
41
- }
42
- ensureIsUUID(value) {
43
- (0, patterns_1.assert)(value.length === UUID.LENGTH, new InvalidLengthError_1.InvalidLengthError(this.value, UUID.LENGTH));
44
- (0, patterns_1.assert)(UUID.PATTERN.test(value) || UUID.SENTINEL_PATTERN.test(value), new InvalidFormatError_1.InvalidFormatError(this.value));
45
- }
46
- }
47
- exports.UUID = UUID;
48
- //# sourceMappingURL=UUID.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UUID.js","sourceRoot":"","sources":["../../../src/value-objects/ids/UUID.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,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,GAC7B,4EAA4E,CAAC;IAEvE,MAAM,CAAU,gBAAgB,GACtC,kFAAkF,CAAC;IAE7E,MAAM,CAAC,WAAW,CAAC,IAAY;QACrC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAEzC,OAAO,eAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEO,MAAM,CAAC,eAAe,CAAC,KAAa;QAC1C,MAAM,SAAS,GAAG,eAAM,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,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,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;;AArDH,oBAsDC"}
@@ -1,3 +0,0 @@
1
- export * from './ShortId';
2
- export * from './UUID';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/value-objects/ids/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./ShortId"), exports);
5
- tslib_1.__exportStar(require("./UUID"), exports);
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/value-objects/ids/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,iDAAuB"}
@@ -1,17 +0,0 @@
1
- export * from './coordinates';
2
- export * from './hashes';
3
- export * from './ids';
4
- export * from './media';
5
- export * from './time';
6
- export * from './Color';
7
- export * from './Email';
8
- export * from './Enum';
9
- export * from './Integer';
10
- export * from './NumberValueObject';
11
- export * from './Password';
12
- export * from './PositiveNumber';
13
- export * from './StringValueObject';
14
- export * from './NullObject';
15
- export * from './UniqueObjectArray';
16
- export * from './ValueObject';
17
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
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,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,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./coordinates"), exports);
5
- tslib_1.__exportStar(require("./hashes"), exports);
6
- tslib_1.__exportStar(require("./ids"), exports);
7
- tslib_1.__exportStar(require("./media"), exports);
8
- tslib_1.__exportStar(require("./time"), exports);
9
- tslib_1.__exportStar(require("./Color"), exports);
10
- tslib_1.__exportStar(require("./Email"), exports);
11
- tslib_1.__exportStar(require("./Enum"), exports);
12
- tslib_1.__exportStar(require("./Integer"), exports);
13
- tslib_1.__exportStar(require("./NumberValueObject"), exports);
14
- tslib_1.__exportStar(require("./Password"), exports);
15
- tslib_1.__exportStar(require("./PositiveNumber"), exports);
16
- tslib_1.__exportStar(require("./StringValueObject"), exports);
17
- tslib_1.__exportStar(require("./NullObject"), exports);
18
- tslib_1.__exportStar(require("./UniqueObjectArray"), exports);
19
- tslib_1.__exportStar(require("./ValueObject"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/value-objects/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,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,11 +0,0 @@
1
- import { Buffer } from 'buffer';
2
- import { ValueObject } from '../ValueObject';
3
- export declare class Media extends ValueObject<string> {
4
- private readonly buffer?;
5
- constructor(value: string | Buffer);
6
- getBuffer(): Buffer;
7
- getSize(): number;
8
- getBase64(): string;
9
- hasValue(other: unknown): boolean;
10
- }
11
- //# sourceMappingURL=Media.d.ts.map
@@ -1 +0,0 @@
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,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAWzC"}
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Media = void 0;
4
- const buffer_1 = require("buffer");
5
- const NullObject_1 = require("../NullObject");
6
- const ValueObject_1 = require("../ValueObject");
7
- class Media extends ValueObject_1.ValueObject {
8
- buffer;
9
- constructor(value) {
10
- super(value?.toString());
11
- if (NullObject_1.NullObject.isNullObject(this)) {
12
- return this;
13
- }
14
- this.buffer = buffer_1.Buffer.isBuffer(value) ? buffer_1.Buffer.from(value) : undefined;
15
- }
16
- getBuffer() {
17
- return this.buffer === undefined
18
- ? buffer_1.Buffer.from(this.value)
19
- : buffer_1.Buffer.from(this.buffer);
20
- }
21
- getSize() {
22
- return this.getBuffer().length;
23
- }
24
- getBase64() {
25
- return this.getBuffer().toString('base64');
26
- }
27
- hasValue(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.hasValue(other);
35
- }
36
- }
37
- exports.Media = Media;
38
- //# sourceMappingURL=Media.js.map
@@ -1 +0,0 @@
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,QAAQ,CAAC,KAAc;QAC5B,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,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAtCD,sBAsCC"}
@@ -1,2 +0,0 @@
1
- export * from './Media';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/value-objects/media/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./Media"), exports);
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/value-objects/media/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB"}
@@ -1,26 +0,0 @@
1
- import { ValueObject } from '../ValueObject';
2
- import { Day } from './Day';
3
- import { DayOfWeek } from './DayOfWeek';
4
- import { Month } from './Month';
5
- import { MonthOfYear } from './MonthOfYear';
6
- import { Timestamp } from './Timestamp';
7
- export declare class CalendarDay extends ValueObject<string> {
8
- private readonly year;
9
- private readonly month;
10
- private readonly day;
11
- private static ensureIsValidString;
12
- private static generateStringValue;
13
- private static ensureIsValidDate;
14
- private static timestampFromString;
15
- private static timestampFromValue;
16
- constructor(value?: string | Date | number | Timestamp);
17
- isAfter(date: CalendarDay): boolean;
18
- isBefore(date: CalendarDay): boolean;
19
- getYear(): number;
20
- getMonth(): Month;
21
- getMonthOfYear(): MonthOfYear;
22
- getDay(): Day;
23
- getDayOfWeek(): DayOfWeek;
24
- toTimestamp(): Timestamp;
25
- }
26
- //# sourceMappingURL=CalendarDay.d.ts.map
@@ -1 +0,0 @@
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,88 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CalendarDay = void 0;
4
- const InvalidDayError_1 = require("../../errors/InvalidDayError");
5
- const InvalidDayFormatError_1 = require("../../errors/InvalidDayFormatError");
6
- const Assert_1 = require("../../patterns/Assert");
7
- const ValueObject_1 = require("../ValueObject");
8
- const Day_1 = require("./Day");
9
- const DayOfWeek_1 = require("./DayOfWeek");
10
- const Month_1 = require("./Month");
11
- const MonthOfYear_1 = require("./MonthOfYear");
12
- const Timestamp_1 = require("./Timestamp");
13
- class CalendarDay extends ValueObject_1.ValueObject {
14
- year;
15
- month;
16
- day;
17
- static ensureIsValidString(value) {
18
- (0, Assert_1.assert)(value.match(/^\d{4}-\d{1,2}-\d{1,2}$/), new InvalidDayFormatError_1.InvalidDayFormatError(value));
19
- }
20
- static generateStringValue(timestamp) {
21
- const paddedMonth = timestamp.getMonth().toString().padStart(2, '0');
22
- const paddedDay = timestamp.getDay().toString().padStart(2, '0');
23
- return `${timestamp.getYear().toString()}-${paddedMonth}-${paddedDay}`;
24
- }
25
- 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);
45
- }
46
- constructor(value) {
47
- let timestamp;
48
- if (value !== undefined) {
49
- timestamp = CalendarDay.timestampFromValue(value);
50
- }
51
- else {
52
- timestamp = new Timestamp_1.Timestamp();
53
- }
54
- super(CalendarDay.generateStringValue(timestamp));
55
- this.year = timestamp.getYear().valueOf();
56
- this.month = timestamp.getMonth().getIndex() + 1;
57
- this.day = timestamp.getDay().valueOf();
58
- }
59
- isAfter(date) {
60
- return this.valueOf() > date.valueOf();
61
- }
62
- isBefore(date) {
63
- return this.valueOf() < date.valueOf();
64
- }
65
- getYear() {
66
- return this.year;
67
- }
68
- getMonth() {
69
- return new Month_1.Month(this.month);
70
- }
71
- getMonthOfYear() {
72
- return new MonthOfYear_1.MonthOfYear(this.month, this.year);
73
- }
74
- getDay() {
75
- return new Day_1.Day(this.day);
76
- }
77
- getDayOfWeek() {
78
- return DayOfWeek_1.DayOfWeek.fromNumber(this.toTimestamp().getDayOfWeek());
79
- }
80
- 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);
85
- }
86
- }
87
- exports.CalendarDay = CalendarDay;
88
- //# sourceMappingURL=CalendarDay.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CalendarDay.js","sourceRoot":"","sources":["../../../src/value-objects/time/CalendarDay.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,8EAA2E;AAC3E,kDAA+C;AAC/C,gDAA6C;AAC7C,+BAA4B;AAC5B,2CAAwC;AACxC,mCAAgC;AAChC,+CAA4C;AAC5C,2CAAwC;AAExC,MAAa,WAAY,SAAQ,yBAAmB;IACjC,IAAI,CAAS;IACb,KAAK,CAAS;IACd,GAAG,CAAS;IAErB,MAAM,CAAC,mBAAmB,CAAC,KAAa;QAC9C,IAAA,eAAM,EACJ,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,EACtC,IAAI,6CAAqB,CAAC,KAAK,CAAC,CACjC,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAAC,SAAoB;QACrD,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAEjE,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;IACzE,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAAC,KAAgC;QAC/D,IAAA,eAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,iCAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAAC,KAAa;QAC9C,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAEvC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QAE1C,IAAA,eAAM,EACJ,IAAI,CAAC,cAAc,EAAE,KAAK,IAAI;YAC5B,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,GAAG,CAAC;YAChC,IAAI,CAAC,UAAU,EAAE,KAAK,GAAG,EAC3B,IAAI,iCAAe,CAAC,KAAK,CAAC,CAC3B,CAAC;QAEF,OAAO,IAAI,qBAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAC/B,KAAyC;QAEzC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;QAED,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErC,OAAO,IAAI,qBAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,YAAY,KAA0C;QACpD,IAAI,SAAoB,CAAC;QAEzB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAS,GAAG,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;QAC9B,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;QAElD,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;IAEM,OAAO,CAAC,IAAiB;QAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAEM,QAAQ,CAAC,IAAiB;QAC/B,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IACzC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,aAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,cAAc;QACnB,OAAO,IAAI,yBAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,SAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAEM,YAAY;QACjB,OAAO,qBAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IACjE,CAAC;IAEM,WAAW;QAChB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAEzD,OAAO,IAAI,qBAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;CACF;AAxGD,kCAwGC"}
@@ -1,7 +0,0 @@
1
- import { Integer } from '../Integer';
2
- import { NumberValueObject } from '../NumberValueObject';
3
- export declare class Day extends Integer {
4
- constructor(value: number | NumberValueObject);
5
- private ensureIsValidDay;
6
- }
7
- //# sourceMappingURL=Day.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Day.d.ts","sourceRoot":"","sources":["../../../src/value-objects/time/Day.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,GAAI,SAAQ,OAAO;gBAClB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAM7C,OAAO,CAAC,gBAAgB;CAIzB"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Day = void 0;
4
- const InvalidDayError_1 = require("../../errors/InvalidDayError");
5
- const Assert_1 = require("../../patterns/Assert");
6
- const Integer_1 = require("../Integer");
7
- class Day extends Integer_1.Integer {
8
- constructor(value) {
9
- super(value.valueOf());
10
- this.ensureIsValidDay();
11
- }
12
- ensureIsValidDay() {
13
- (0, Assert_1.assert)(this.isGreaterOrEqualThan(1), new InvalidDayError_1.InvalidDayError(this.value));
14
- (0, Assert_1.assert)(this.isLessOrEqualThan(31), new InvalidDayError_1.InvalidDayError(this.value));
15
- }
16
- }
17
- exports.Day = Day;
18
- //# sourceMappingURL=Day.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Day.js","sourceRoot":"","sources":["../../../src/value-objects/time/Day.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,kDAA+C;AAC/C,wCAAqC;AAGrC,MAAa,GAAI,SAAQ,iBAAO;IAC9B,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAEvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEO,gBAAgB;QACtB,IAAA,eAAM,EAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,IAAI,iCAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,IAAA,eAAM,EAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI,iCAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,CAAC;CACF;AAXD,kBAWC"}
@@ -1,34 +0,0 @@
1
- import { Enum } from '../Enum';
2
- import { Timestamp } from './Timestamp';
3
- export declare enum EDaysOfWeek {
4
- MONDAY = "monday",
5
- TUESDAY = "tuesday",
6
- WEDNESDAY = "wednesday",
7
- THURSDAY = "thursday",
8
- FRIDAY = "friday",
9
- SATURDAY = "saturday",
10
- SUNDAY = "sunday"
11
- }
12
- export declare const timeStampDayToDaysMap: {
13
- friday: number;
14
- monday: number;
15
- saturday: number;
16
- sunday: number;
17
- thursday: number;
18
- tuesday: number;
19
- wednesday: number;
20
- };
21
- export declare class DayOfWeek extends Enum {
22
- static MONDAY: DayOfWeek;
23
- static TUESDAY: DayOfWeek;
24
- static WEDNESDAY: DayOfWeek;
25
- static THURSDAY: DayOfWeek;
26
- static FRIDAY: DayOfWeek;
27
- static SATURDAY: DayOfWeek;
28
- static SUNDAY: DayOfWeek;
29
- static fromNumber(day: number): DayOfWeek;
30
- static fromTimestamp(timestamp: Timestamp): DayOfWeek;
31
- getValues(): string[];
32
- toNumber(): number;
33
- }
34
- //# sourceMappingURL=DayOfWeek.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DayOfWeek.d.ts","sourceRoot":"","sources":["../../../src/value-objects/time/DayOfWeek.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,qBAAqB;;;;;;;;CAQjC,CAAC;AAEF,qBAAa,SAAU,SAAQ,IAAI;IACjC,OAAc,MAAM,YAAqC;IACzD,OAAc,OAAO,YAAsC;IAC3D,OAAc,SAAS,YAAwC;IAC/D,OAAc,QAAQ,YAAuC;IAC7D,OAAc,MAAM,YAAqC;IACzD,OAAc,QAAQ,YAAuC;IAC7D,OAAc,MAAM,YAAqC;WAE3C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;WAWlC,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAMrD,SAAS,IAAI,MAAM,EAAE;IAIrB,QAAQ,IAAI,MAAM;CAG1B"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DayOfWeek = exports.timeStampDayToDaysMap = exports.EDaysOfWeek = void 0;
4
- const InvalidDayError_1 = require("../../errors/InvalidDayError");
5
- const patterns_1 = require("../../patterns");
6
- const Enum_1 = require("../Enum");
7
- var EDaysOfWeek;
8
- (function (EDaysOfWeek) {
9
- EDaysOfWeek["MONDAY"] = "monday";
10
- EDaysOfWeek["TUESDAY"] = "tuesday";
11
- EDaysOfWeek["WEDNESDAY"] = "wednesday";
12
- EDaysOfWeek["THURSDAY"] = "thursday";
13
- EDaysOfWeek["FRIDAY"] = "friday";
14
- EDaysOfWeek["SATURDAY"] = "saturday";
15
- EDaysOfWeek["SUNDAY"] = "sunday";
16
- })(EDaysOfWeek || (exports.EDaysOfWeek = EDaysOfWeek = {}));
17
- exports.timeStampDayToDaysMap = {
18
- [EDaysOfWeek.FRIDAY]: 5,
19
- [EDaysOfWeek.MONDAY]: 1,
20
- [EDaysOfWeek.SATURDAY]: 6,
21
- [EDaysOfWeek.SUNDAY]: 0,
22
- [EDaysOfWeek.THURSDAY]: 4,
23
- [EDaysOfWeek.TUESDAY]: 2,
24
- [EDaysOfWeek.WEDNESDAY]: 3,
25
- };
26
- class DayOfWeek extends Enum_1.Enum {
27
- static MONDAY = new DayOfWeek(EDaysOfWeek.MONDAY);
28
- static TUESDAY = new DayOfWeek(EDaysOfWeek.TUESDAY);
29
- static WEDNESDAY = new DayOfWeek(EDaysOfWeek.WEDNESDAY);
30
- static THURSDAY = new DayOfWeek(EDaysOfWeek.THURSDAY);
31
- static FRIDAY = new DayOfWeek(EDaysOfWeek.FRIDAY);
32
- static SATURDAY = new DayOfWeek(EDaysOfWeek.SATURDAY);
33
- static SUNDAY = new DayOfWeek(EDaysOfWeek.SUNDAY);
34
- static fromNumber(day) {
35
- const [eDay] = Object.entries(exports.timeStampDayToDaysMap).find(([, value]) => value === day) || [];
36
- (0, patterns_1.assert)(eDay, new InvalidDayError_1.InvalidDayError(eDay));
37
- return new DayOfWeek(eDay);
38
- }
39
- static fromTimestamp(timestamp) {
40
- const dayOfWeekNumber = timestamp.getDayOfWeek();
41
- return DayOfWeek.fromNumber(dayOfWeekNumber);
42
- }
43
- getValues() {
44
- return Object.values(EDaysOfWeek);
45
- }
46
- toNumber() {
47
- return exports.timeStampDayToDaysMap[this.value];
48
- }
49
- }
50
- exports.DayOfWeek = DayOfWeek;
51
- //# sourceMappingURL=DayOfWeek.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DayOfWeek.js","sourceRoot":"","sources":["../../../src/value-objects/time/DayOfWeek.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,6CAAwC;AACxC,kCAA+B;AAG/B,IAAY,WAQX;AARD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;IACvB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;AACnB,CAAC,EARW,WAAW,2BAAX,WAAW,QAQtB;AAEY,QAAA,qBAAqB,GAAG;IACnC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;IACxB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAa,SAAU,SAAQ,WAAI;IAC1B,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAElD,MAAM,CAAC,UAAU,CAAC,GAAW;QAClC,MAAM,CAAC,IAAI,CAAC,GACV,MAAM,CAAC,OAAO,CAAC,6BAAqB,CAAC,CAAC,IAAI,CACxC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,GAAG,CAC7B,IAAI,EAAE,CAAC;QAEV,IAAA,iBAAM,EAAC,IAAI,EAAE,IAAI,iCAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QAExC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,SAAoB;QAC9C,MAAM,eAAe,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC;QAEjD,OAAO,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;IAEM,SAAS;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAEM,QAAQ;QACb,OAAO,6BAAqB,CAAC,IAAI,CAAC,KAAoB,CAAC,CAAC;IAC1D,CAAC;;AAhCH,8BAiCC"}
@@ -1,23 +0,0 @@
1
- import { NumberValueObject } from '../NumberValueObject';
2
- export declare class Duration extends NumberValueObject {
3
- private static readonly MILLISECOND_FACTOR;
4
- private static readonly SECOND_UNITS;
5
- private static readonly millisecondFactors;
6
- static fromDays(days: number | NumberValueObject): Duration;
7
- static fromHours(hours: number | NumberValueObject): Duration;
8
- static fromMinutes(minutes: number | NumberValueObject): Duration;
9
- static fromSeconds(seconds: number | NumberValueObject): Duration;
10
- static fromMilliseconds(milliseconds: number | NumberValueObject): Duration;
11
- constructor(milliseconds: NumberValueObject | Duration);
12
- getTotalDays(): NumberValueObject;
13
- getTotalHours(): NumberValueObject;
14
- getTotalMinutes(): NumberValueObject;
15
- getTotalSeconds(): NumberValueObject;
16
- getTotalMilliseconds(): NumberValueObject;
17
- getDays(): NumberValueObject;
18
- getHours(): NumberValueObject;
19
- getMinutes(): NumberValueObject;
20
- getSeconds(): NumberValueObject;
21
- getMilliseconds(): NumberValueObject;
22
- }
23
- //# sourceMappingURL=Duration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Duration.d.ts","sourceRoot":"","sources":["../../../src/value-objects/time/Duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,QAAS,SAAQ,iBAAiB;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAQlC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAsBxC;WAEY,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQpD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQtD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQ1D,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQ1D,gBAAgB,CAC5B,YAAY,EAAE,MAAM,GAAG,iBAAiB,GACvC,QAAQ;gBAIC,YAAY,EAAE,iBAAiB,GAAG,QAAQ;IAI/C,YAAY,IAAI,iBAAiB;IAIjC,aAAa,IAAI,iBAAiB;IAIlC,eAAe,IAAI,iBAAiB;IAIpC,eAAe,IAAI,iBAAiB;IAIpC,oBAAoB,IAAI,iBAAiB;IAIzC,OAAO,IAAI,iBAAiB;IAQ5B,QAAQ,IAAI,iBAAiB;IAQ7B,UAAU,IAAI,iBAAiB;IAU/B,UAAU,IAAI,iBAAiB;IAU/B,eAAe,IAAI,iBAAiB;CAK5C"}
@@ -1,79 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Duration = void 0;
4
- const NumberValueObject_1 = require("../NumberValueObject");
5
- class Duration extends NumberValueObject_1.NumberValueObject {
6
- static MILLISECOND_FACTOR = 1000;
7
- static SECOND_UNITS = {
8
- DAYS: 24 * 60 * 60,
9
- HOURS: 60 * 60,
10
- MINUTES: 60,
11
- MONTHS: 30 * 24 * 60 * 60,
12
- SECONDS: 1,
13
- WEEKS: 7 * 24 * 60 * 60,
14
- YEARS: 365 * 24 * 60 * 60,
15
- };
16
- static millisecondFactors = {
17
- DAYS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.DAYS * this.MILLISECOND_FACTOR),
18
- HOURS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.HOURS * this.MILLISECOND_FACTOR),
19
- MINUTES: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.MINUTES * this.MILLISECOND_FACTOR),
20
- MONTHS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.MONTHS * this.MILLISECOND_FACTOR),
21
- SECONDS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.SECONDS * this.MILLISECOND_FACTOR),
22
- WEEKS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.WEEKS * this.MILLISECOND_FACTOR),
23
- YEARS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.YEARS * this.MILLISECOND_FACTOR),
24
- };
25
- static fromDays(days) {
26
- return new Duration(new NumberValueObject_1.NumberValueObject(days.valueOf()).multiply(this.millisecondFactors.DAYS));
27
- }
28
- static fromHours(hours) {
29
- return new Duration(new NumberValueObject_1.NumberValueObject(hours.valueOf()).multiply(this.millisecondFactors.HOURS));
30
- }
31
- static fromMinutes(minutes) {
32
- return new Duration(new NumberValueObject_1.NumberValueObject(minutes.valueOf()).multiply(this.millisecondFactors.MINUTES));
33
- }
34
- static fromSeconds(seconds) {
35
- return new Duration(new NumberValueObject_1.NumberValueObject(seconds.valueOf()).multiply(this.millisecondFactors.SECONDS));
36
- }
37
- static fromMilliseconds(milliseconds) {
38
- return new Duration(new NumberValueObject_1.NumberValueObject(milliseconds.valueOf()));
39
- }
40
- constructor(milliseconds) {
41
- super(milliseconds.valueOf());
42
- }
43
- getTotalDays() {
44
- return new Duration(this).divide(Duration.millisecondFactors.DAYS);
45
- }
46
- getTotalHours() {
47
- return new Duration(this).divide(Duration.millisecondFactors.HOURS);
48
- }
49
- getTotalMinutes() {
50
- return new Duration(this).divide(Duration.millisecondFactors.MINUTES);
51
- }
52
- getTotalSeconds() {
53
- return new Duration(this).divide(Duration.millisecondFactors.SECONDS);
54
- }
55
- getTotalMilliseconds() {
56
- return new NumberValueObject_1.NumberValueObject(this.valueOf());
57
- }
58
- getDays() {
59
- return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this).divide(Duration.millisecondFactors.DAYS).valueOf()));
60
- }
61
- getHours() {
62
- return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this).divide(Duration.millisecondFactors.HOURS).valueOf()) % 24);
63
- }
64
- getMinutes() {
65
- return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this)
66
- .divide(Duration.millisecondFactors.MINUTES)
67
- .valueOf()) % Duration.SECOND_UNITS.MINUTES);
68
- }
69
- getSeconds() {
70
- return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this)
71
- .divide(Duration.millisecondFactors.SECONDS)
72
- .valueOf()) % Duration.SECOND_UNITS.MINUTES);
73
- }
74
- getMilliseconds() {
75
- return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this).valueOf()) % Duration.MILLISECOND_FACTOR);
76
- }
77
- }
78
- exports.Duration = Duration;
79
- //# sourceMappingURL=Duration.js.map