@haskou/value-objects 1.1.3 → 1.2.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 (497) hide show
  1. package/dist/errors/BaseError.d.ts.map +1 -0
  2. package/dist/errors/BaseError.js.map +1 -0
  3. package/dist/errors/DomainError.d.ts.map +1 -0
  4. package/dist/errors/DomainError.js.map +1 -0
  5. package/dist/errors/InvalidColorError.d.ts.map +1 -0
  6. package/dist/errors/InvalidColorError.js.map +1 -0
  7. package/dist/errors/InvalidDayError.d.ts.map +1 -0
  8. package/dist/errors/InvalidDayError.js.map +1 -0
  9. package/dist/errors/InvalidDayFormatError.d.ts.map +1 -0
  10. package/dist/errors/InvalidDayFormatError.js.map +1 -0
  11. package/dist/errors/InvalidEmailError.d.ts.map +1 -0
  12. package/dist/errors/InvalidEmailError.js.map +1 -0
  13. package/dist/errors/InvalidFormatError.d.ts.map +1 -0
  14. package/dist/errors/InvalidFormatError.js.map +1 -0
  15. package/dist/errors/InvalidHashError.d.ts.map +1 -0
  16. package/dist/errors/InvalidHashError.js.map +1 -0
  17. package/dist/errors/InvalidHourError.d.ts.map +1 -0
  18. package/dist/errors/InvalidHourError.js.map +1 -0
  19. package/dist/errors/InvalidIntegerError.d.ts.map +1 -0
  20. package/dist/errors/InvalidIntegerError.js.map +1 -0
  21. package/dist/errors/InvalidLatitudeError.d.ts.map +1 -0
  22. package/dist/errors/InvalidLatitudeError.js.map +1 -0
  23. package/dist/errors/InvalidLengthError.d.ts.map +1 -0
  24. package/dist/errors/InvalidLengthError.js.map +1 -0
  25. package/dist/errors/InvalidLongitudeError.d.ts.map +1 -0
  26. package/dist/errors/InvalidLongitudeError.js.map +1 -0
  27. package/dist/errors/InvalidMinutesError.d.ts.map +1 -0
  28. package/dist/errors/InvalidMinutesError.js.map +1 -0
  29. package/dist/errors/InvalidNumberError.d.ts.map +1 -0
  30. package/dist/errors/InvalidNumberError.js.map +1 -0
  31. package/dist/errors/InvalidPositiveNumberError.d.ts.map +1 -0
  32. package/dist/errors/InvalidPositiveNumberError.js.map +1 -0
  33. package/dist/errors/InvalidStringLengthError.d.ts.map +1 -0
  34. package/dist/errors/InvalidStringLengthError.js.map +1 -0
  35. package/dist/errors/InvalidTimestampIntervalError.d.ts.map +1 -0
  36. package/dist/errors/InvalidTimestampIntervalError.js.map +1 -0
  37. package/dist/errors/InvalidValueError.d.ts.map +1 -0
  38. package/dist/errors/InvalidValueError.js.map +1 -0
  39. package/dist/errors/NullObjectError.d.ts.map +1 -0
  40. package/dist/errors/NullObjectError.js.map +1 -0
  41. package/dist/errors/ValueNotInEnumError.d.ts.map +1 -0
  42. package/dist/errors/ValueNotInEnumError.js.map +1 -0
  43. package/dist/errors/index.d.ts.map +1 -0
  44. package/dist/errors/index.js.map +1 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/interfaces/PrimitiveOf.d.ts.map +1 -0
  48. package/dist/interfaces/PrimitiveOf.js.map +1 -0
  49. package/dist/interfaces/index.d.ts.map +1 -0
  50. package/dist/interfaces/index.js.map +1 -0
  51. package/dist/patterns/Assert.d.ts.map +1 -0
  52. package/dist/patterns/Assert.js.map +1 -0
  53. package/dist/patterns/index.d.ts.map +1 -0
  54. package/dist/patterns/index.js.map +1 -0
  55. package/dist/types/Nullish.d.ts.map +1 -0
  56. package/dist/{src/types → types}/Nullish.js.map +1 -1
  57. package/dist/types/Primitive.d.ts.map +1 -0
  58. package/dist/{src/types → types}/Primitive.js.map +1 -1
  59. package/dist/types/index.d.ts.map +1 -0
  60. package/dist/types/index.js.map +1 -0
  61. package/dist/value-objects/Color.d.ts.map +1 -0
  62. package/dist/value-objects/Color.js.map +1 -0
  63. package/dist/value-objects/Email.d.ts.map +1 -0
  64. package/dist/value-objects/Email.js.map +1 -0
  65. package/dist/value-objects/Enum.d.ts.map +1 -0
  66. package/dist/value-objects/Enum.js.map +1 -0
  67. package/dist/value-objects/Integer.d.ts.map +1 -0
  68. package/dist/value-objects/Integer.js.map +1 -0
  69. package/dist/value-objects/NullObject.d.ts.map +1 -0
  70. package/dist/value-objects/NullObject.js.map +1 -0
  71. package/dist/value-objects/NumberValueObject.d.ts.map +1 -0
  72. package/dist/value-objects/NumberValueObject.js.map +1 -0
  73. package/dist/value-objects/PositiveNumber.d.ts.map +1 -0
  74. package/dist/value-objects/PositiveNumber.js.map +1 -0
  75. package/dist/value-objects/StringValueObject.d.ts.map +1 -0
  76. package/dist/value-objects/StringValueObject.js.map +1 -0
  77. package/dist/value-objects/ValueObject.d.ts.map +1 -0
  78. package/dist/value-objects/ValueObject.js.map +1 -0
  79. package/dist/value-objects/coordinates/Coordinates.d.ts.map +1 -0
  80. package/dist/value-objects/coordinates/Coordinates.js.map +1 -0
  81. package/dist/value-objects/coordinates/Latitude.d.ts.map +1 -0
  82. package/dist/value-objects/coordinates/Latitude.js.map +1 -0
  83. package/dist/value-objects/coordinates/Longitude.d.ts.map +1 -0
  84. package/dist/value-objects/coordinates/Longitude.js.map +1 -0
  85. package/dist/value-objects/coordinates/index.d.ts.map +1 -0
  86. package/dist/value-objects/coordinates/index.js.map +1 -0
  87. package/dist/value-objects/hashes/Hash.d.ts.map +1 -0
  88. package/dist/value-objects/hashes/Hash.js.map +1 -0
  89. package/dist/value-objects/hashes/MD5Hash.d.ts.map +1 -0
  90. package/dist/value-objects/hashes/MD5Hash.js.map +1 -0
  91. package/dist/value-objects/hashes/SHA256Hash.d.ts.map +1 -0
  92. package/dist/value-objects/hashes/SHA256Hash.js.map +1 -0
  93. package/dist/value-objects/hashes/SHA512Hash.d.ts.map +1 -0
  94. package/dist/value-objects/hashes/SHA512Hash.js.map +1 -0
  95. package/dist/value-objects/hashes/index.d.ts.map +1 -0
  96. package/dist/value-objects/hashes/index.js.map +1 -0
  97. package/dist/value-objects/ids/ShortId.d.ts.map +1 -0
  98. package/dist/value-objects/ids/ShortId.js.map +1 -0
  99. package/dist/value-objects/ids/UUID.d.ts.map +1 -0
  100. package/dist/value-objects/ids/UUID.js.map +1 -0
  101. package/dist/value-objects/ids/index.d.ts.map +1 -0
  102. package/dist/value-objects/ids/index.js.map +1 -0
  103. package/dist/{src/value-objects → value-objects}/index.d.ts +1 -0
  104. package/dist/value-objects/index.d.ts.map +1 -0
  105. package/dist/{src/value-objects → value-objects}/index.js +1 -0
  106. package/dist/value-objects/index.js.map +1 -0
  107. package/dist/value-objects/time/CalendarDay.d.ts.map +1 -0
  108. package/dist/value-objects/time/CalendarDay.js.map +1 -0
  109. package/dist/value-objects/time/Day.d.ts.map +1 -0
  110. package/dist/value-objects/time/Day.js.map +1 -0
  111. package/dist/value-objects/time/DayOfWeek.d.ts.map +1 -0
  112. package/dist/value-objects/time/DayOfWeek.js.map +1 -0
  113. package/dist/value-objects/time/Duration.d.ts.map +1 -0
  114. package/dist/value-objects/time/Duration.js.map +1 -0
  115. package/dist/value-objects/time/Hour.d.ts.map +1 -0
  116. package/dist/value-objects/time/Hour.js.map +1 -0
  117. package/dist/value-objects/time/Month.d.ts.map +1 -0
  118. package/dist/value-objects/time/Month.js.map +1 -0
  119. package/dist/value-objects/time/MonthOfYear.d.ts.map +1 -0
  120. package/dist/value-objects/time/MonthOfYear.js.map +1 -0
  121. package/dist/value-objects/time/Timestamp.d.ts.map +1 -0
  122. package/dist/value-objects/time/Timestamp.js.map +1 -0
  123. package/dist/value-objects/time/TimestampInterval.d.ts.map +1 -0
  124. package/dist/value-objects/time/TimestampInterval.js.map +1 -0
  125. package/dist/value-objects/time/Year.d.ts.map +1 -0
  126. package/dist/value-objects/time/Year.js.map +1 -0
  127. package/dist/value-objects/time/index.d.ts.map +1 -0
  128. package/dist/value-objects/time/index.js.map +1 -0
  129. package/package.json +1 -1
  130. package/dist/src/errors/BaseError.d.ts.map +0 -1
  131. package/dist/src/errors/BaseError.js.map +0 -1
  132. package/dist/src/errors/DomainError.d.ts.map +0 -1
  133. package/dist/src/errors/DomainError.js.map +0 -1
  134. package/dist/src/errors/InvalidColorError.d.ts.map +0 -1
  135. package/dist/src/errors/InvalidColorError.js.map +0 -1
  136. package/dist/src/errors/InvalidDayError.d.ts.map +0 -1
  137. package/dist/src/errors/InvalidDayError.js.map +0 -1
  138. package/dist/src/errors/InvalidDayFormatError.d.ts.map +0 -1
  139. package/dist/src/errors/InvalidDayFormatError.js.map +0 -1
  140. package/dist/src/errors/InvalidEmailError.d.ts.map +0 -1
  141. package/dist/src/errors/InvalidEmailError.js.map +0 -1
  142. package/dist/src/errors/InvalidFormatError.d.ts.map +0 -1
  143. package/dist/src/errors/InvalidFormatError.js.map +0 -1
  144. package/dist/src/errors/InvalidHashError.d.ts.map +0 -1
  145. package/dist/src/errors/InvalidHashError.js.map +0 -1
  146. package/dist/src/errors/InvalidHourError.d.ts.map +0 -1
  147. package/dist/src/errors/InvalidHourError.js.map +0 -1
  148. package/dist/src/errors/InvalidIntegerError.d.ts.map +0 -1
  149. package/dist/src/errors/InvalidIntegerError.js.map +0 -1
  150. package/dist/src/errors/InvalidLatitudeError.d.ts.map +0 -1
  151. package/dist/src/errors/InvalidLatitudeError.js.map +0 -1
  152. package/dist/src/errors/InvalidLengthError.d.ts.map +0 -1
  153. package/dist/src/errors/InvalidLengthError.js.map +0 -1
  154. package/dist/src/errors/InvalidLongitudeError.d.ts.map +0 -1
  155. package/dist/src/errors/InvalidLongitudeError.js.map +0 -1
  156. package/dist/src/errors/InvalidMinutesError.d.ts.map +0 -1
  157. package/dist/src/errors/InvalidMinutesError.js.map +0 -1
  158. package/dist/src/errors/InvalidNumberError.d.ts.map +0 -1
  159. package/dist/src/errors/InvalidNumberError.js.map +0 -1
  160. package/dist/src/errors/InvalidPositiveNumberError.d.ts.map +0 -1
  161. package/dist/src/errors/InvalidPositiveNumberError.js.map +0 -1
  162. package/dist/src/errors/InvalidStringLengthError.d.ts.map +0 -1
  163. package/dist/src/errors/InvalidStringLengthError.js.map +0 -1
  164. package/dist/src/errors/InvalidTimestampIntervalError.d.ts.map +0 -1
  165. package/dist/src/errors/InvalidTimestampIntervalError.js.map +0 -1
  166. package/dist/src/errors/InvalidValueError.d.ts.map +0 -1
  167. package/dist/src/errors/InvalidValueError.js.map +0 -1
  168. package/dist/src/errors/NullObjectError.d.ts.map +0 -1
  169. package/dist/src/errors/NullObjectError.js.map +0 -1
  170. package/dist/src/errors/ValueNotInEnumError.d.ts.map +0 -1
  171. package/dist/src/errors/ValueNotInEnumError.js.map +0 -1
  172. package/dist/src/errors/index.d.ts.map +0 -1
  173. package/dist/src/errors/index.js.map +0 -1
  174. package/dist/src/index.d.ts.map +0 -1
  175. package/dist/src/index.js.map +0 -1
  176. package/dist/src/interfaces/PrimitiveOf.d.ts.map +0 -1
  177. package/dist/src/interfaces/PrimitiveOf.js.map +0 -1
  178. package/dist/src/interfaces/index.d.ts.map +0 -1
  179. package/dist/src/interfaces/index.js.map +0 -1
  180. package/dist/src/patterns/Assert.d.ts.map +0 -1
  181. package/dist/src/patterns/Assert.js.map +0 -1
  182. package/dist/src/patterns/index.d.ts.map +0 -1
  183. package/dist/src/patterns/index.js.map +0 -1
  184. package/dist/src/types/Nullish.d.ts.map +0 -1
  185. package/dist/src/types/Primitive.d.ts.map +0 -1
  186. package/dist/src/types/index.d.ts.map +0 -1
  187. package/dist/src/types/index.js.map +0 -1
  188. package/dist/src/value-objects/Color.d.ts.map +0 -1
  189. package/dist/src/value-objects/Color.js.map +0 -1
  190. package/dist/src/value-objects/Email.d.ts.map +0 -1
  191. package/dist/src/value-objects/Email.js.map +0 -1
  192. package/dist/src/value-objects/Enum.d.ts.map +0 -1
  193. package/dist/src/value-objects/Enum.js.map +0 -1
  194. package/dist/src/value-objects/Integer.d.ts.map +0 -1
  195. package/dist/src/value-objects/Integer.js.map +0 -1
  196. package/dist/src/value-objects/NullObject.d.ts.map +0 -1
  197. package/dist/src/value-objects/NullObject.js.map +0 -1
  198. package/dist/src/value-objects/NumberValueObject.d.ts.map +0 -1
  199. package/dist/src/value-objects/NumberValueObject.js.map +0 -1
  200. package/dist/src/value-objects/PositiveNumber.d.ts.map +0 -1
  201. package/dist/src/value-objects/PositiveNumber.js.map +0 -1
  202. package/dist/src/value-objects/StringValueObject.d.ts.map +0 -1
  203. package/dist/src/value-objects/StringValueObject.js.map +0 -1
  204. package/dist/src/value-objects/ValueObject.d.ts.map +0 -1
  205. package/dist/src/value-objects/ValueObject.js.map +0 -1
  206. package/dist/src/value-objects/coordinates/Coordinates.d.ts.map +0 -1
  207. package/dist/src/value-objects/coordinates/Coordinates.js.map +0 -1
  208. package/dist/src/value-objects/coordinates/Latitude.d.ts.map +0 -1
  209. package/dist/src/value-objects/coordinates/Latitude.js.map +0 -1
  210. package/dist/src/value-objects/coordinates/Longitude.d.ts.map +0 -1
  211. package/dist/src/value-objects/coordinates/Longitude.js.map +0 -1
  212. package/dist/src/value-objects/coordinates/index.d.ts.map +0 -1
  213. package/dist/src/value-objects/coordinates/index.js.map +0 -1
  214. package/dist/src/value-objects/hashes/Hash.d.ts.map +0 -1
  215. package/dist/src/value-objects/hashes/Hash.js.map +0 -1
  216. package/dist/src/value-objects/hashes/MD5Hash.d.ts.map +0 -1
  217. package/dist/src/value-objects/hashes/MD5Hash.js.map +0 -1
  218. package/dist/src/value-objects/hashes/SHA256Hash.d.ts.map +0 -1
  219. package/dist/src/value-objects/hashes/SHA256Hash.js.map +0 -1
  220. package/dist/src/value-objects/hashes/SHA512Hash.d.ts.map +0 -1
  221. package/dist/src/value-objects/hashes/SHA512Hash.js.map +0 -1
  222. package/dist/src/value-objects/hashes/index.d.ts.map +0 -1
  223. package/dist/src/value-objects/hashes/index.js.map +0 -1
  224. package/dist/src/value-objects/ids/ShortId.d.ts.map +0 -1
  225. package/dist/src/value-objects/ids/ShortId.js.map +0 -1
  226. package/dist/src/value-objects/ids/UUID.d.ts.map +0 -1
  227. package/dist/src/value-objects/ids/UUID.js.map +0 -1
  228. package/dist/src/value-objects/ids/index.d.ts.map +0 -1
  229. package/dist/src/value-objects/ids/index.js.map +0 -1
  230. package/dist/src/value-objects/index.d.ts.map +0 -1
  231. package/dist/src/value-objects/index.js.map +0 -1
  232. package/dist/src/value-objects/time/CalendarDay.d.ts.map +0 -1
  233. package/dist/src/value-objects/time/CalendarDay.js.map +0 -1
  234. package/dist/src/value-objects/time/Day.d.ts.map +0 -1
  235. package/dist/src/value-objects/time/Day.js.map +0 -1
  236. package/dist/src/value-objects/time/DayOfWeek.d.ts.map +0 -1
  237. package/dist/src/value-objects/time/DayOfWeek.js.map +0 -1
  238. package/dist/src/value-objects/time/Duration.d.ts.map +0 -1
  239. package/dist/src/value-objects/time/Duration.js.map +0 -1
  240. package/dist/src/value-objects/time/Hour.d.ts.map +0 -1
  241. package/dist/src/value-objects/time/Hour.js.map +0 -1
  242. package/dist/src/value-objects/time/Month.d.ts.map +0 -1
  243. package/dist/src/value-objects/time/Month.js.map +0 -1
  244. package/dist/src/value-objects/time/MonthOfYear.d.ts.map +0 -1
  245. package/dist/src/value-objects/time/MonthOfYear.js.map +0 -1
  246. package/dist/src/value-objects/time/Timestamp.d.ts.map +0 -1
  247. package/dist/src/value-objects/time/Timestamp.js.map +0 -1
  248. package/dist/src/value-objects/time/TimestampInterval.d.ts.map +0 -1
  249. package/dist/src/value-objects/time/TimestampInterval.js.map +0 -1
  250. package/dist/src/value-objects/time/Year.d.ts.map +0 -1
  251. package/dist/src/value-objects/time/Year.js.map +0 -1
  252. package/dist/src/value-objects/time/index.d.ts.map +0 -1
  253. package/dist/src/value-objects/time/index.js.map +0 -1
  254. package/dist/tests/errors/BaseError.spec.d.ts +0 -2
  255. package/dist/tests/errors/BaseError.spec.d.ts.map +0 -1
  256. package/dist/tests/errors/BaseError.spec.js +0 -54
  257. package/dist/tests/errors/BaseError.spec.js.map +0 -1
  258. package/dist/tests/errors/DomainError.spec.d.ts +0 -2
  259. package/dist/tests/errors/DomainError.spec.d.ts.map +0 -1
  260. package/dist/tests/errors/DomainError.spec.js +0 -47
  261. package/dist/tests/errors/DomainError.spec.js.map +0 -1
  262. package/dist/tests/patterns/Assert.spec.d.ts +0 -2
  263. package/dist/tests/patterns/Assert.spec.d.ts.map +0 -1
  264. package/dist/tests/patterns/Assert.spec.js +0 -27
  265. package/dist/tests/patterns/Assert.spec.js.map +0 -1
  266. package/dist/tests/setup.jest.d.ts +0 -2
  267. package/dist/tests/setup.jest.d.ts.map +0 -1
  268. package/dist/tests/setup.jest.js +0 -6
  269. package/dist/tests/setup.jest.js.map +0 -1
  270. package/dist/tests/value-objects/Color.spec.d.ts +0 -2
  271. package/dist/tests/value-objects/Color.spec.d.ts.map +0 -1
  272. package/dist/tests/value-objects/Color.spec.js +0 -171
  273. package/dist/tests/value-objects/Color.spec.js.map +0 -1
  274. package/dist/tests/value-objects/Email.spec.d.ts +0 -2
  275. package/dist/tests/value-objects/Email.spec.d.ts.map +0 -1
  276. package/dist/tests/value-objects/Email.spec.js +0 -117
  277. package/dist/tests/value-objects/Email.spec.js.map +0 -1
  278. package/dist/tests/value-objects/Enum.spec.d.ts +0 -2
  279. package/dist/tests/value-objects/Enum.spec.d.ts.map +0 -1
  280. package/dist/tests/value-objects/Enum.spec.js +0 -233
  281. package/dist/tests/value-objects/Enum.spec.js.map +0 -1
  282. package/dist/tests/value-objects/Integer.spec.d.ts +0 -2
  283. package/dist/tests/value-objects/Integer.spec.d.ts.map +0 -1
  284. package/dist/tests/value-objects/Integer.spec.js +0 -31
  285. package/dist/tests/value-objects/Integer.spec.js.map +0 -1
  286. package/dist/tests/value-objects/NullObject.spec.d.ts +0 -2
  287. package/dist/tests/value-objects/NullObject.spec.d.ts.map +0 -1
  288. package/dist/tests/value-objects/NullObject.spec.js +0 -48
  289. package/dist/tests/value-objects/NullObject.spec.js.map +0 -1
  290. package/dist/tests/value-objects/NumberValueObject.spec.d.ts +0 -2
  291. package/dist/tests/value-objects/NumberValueObject.spec.d.ts.map +0 -1
  292. package/dist/tests/value-objects/NumberValueObject.spec.js +0 -333
  293. package/dist/tests/value-objects/NumberValueObject.spec.js.map +0 -1
  294. package/dist/tests/value-objects/PositiveNumber.spec.d.ts +0 -2
  295. package/dist/tests/value-objects/PositiveNumber.spec.d.ts.map +0 -1
  296. package/dist/tests/value-objects/PositiveNumber.spec.js +0 -209
  297. package/dist/tests/value-objects/PositiveNumber.spec.js.map +0 -1
  298. package/dist/tests/value-objects/StringValueObject.spec.d.ts +0 -2
  299. package/dist/tests/value-objects/StringValueObject.spec.d.ts.map +0 -1
  300. package/dist/tests/value-objects/StringValueObject.spec.js +0 -104
  301. package/dist/tests/value-objects/StringValueObject.spec.js.map +0 -1
  302. package/dist/tests/value-objects/coordinates/Coordinates.spec.d.ts +0 -2
  303. package/dist/tests/value-objects/coordinates/Coordinates.spec.d.ts.map +0 -1
  304. package/dist/tests/value-objects/coordinates/Coordinates.spec.js +0 -76
  305. package/dist/tests/value-objects/coordinates/Coordinates.spec.js.map +0 -1
  306. package/dist/tests/value-objects/coordinates/Latitude.spec.d.ts +0 -2
  307. package/dist/tests/value-objects/coordinates/Latitude.spec.d.ts.map +0 -1
  308. package/dist/tests/value-objects/coordinates/Latitude.spec.js +0 -23
  309. package/dist/tests/value-objects/coordinates/Latitude.spec.js.map +0 -1
  310. package/dist/tests/value-objects/coordinates/Longitude.spec.d.ts +0 -2
  311. package/dist/tests/value-objects/coordinates/Longitude.spec.d.ts.map +0 -1
  312. package/dist/tests/value-objects/coordinates/Longitude.spec.js +0 -23
  313. package/dist/tests/value-objects/coordinates/Longitude.spec.js.map +0 -1
  314. package/dist/tests/value-objects/hashes/Hashes.spec.d.ts +0 -2
  315. package/dist/tests/value-objects/hashes/Hashes.spec.d.ts.map +0 -1
  316. package/dist/tests/value-objects/hashes/Hashes.spec.js +0 -107
  317. package/dist/tests/value-objects/hashes/Hashes.spec.js.map +0 -1
  318. package/dist/tests/value-objects/hashes/MD5Hash.spec.d.ts +0 -2
  319. package/dist/tests/value-objects/hashes/MD5Hash.spec.d.ts.map +0 -1
  320. package/dist/tests/value-objects/hashes/MD5Hash.spec.js +0 -147
  321. package/dist/tests/value-objects/hashes/MD5Hash.spec.js.map +0 -1
  322. package/dist/tests/value-objects/hashes/SHA256Hash.spec.d.ts +0 -2
  323. package/dist/tests/value-objects/hashes/SHA256Hash.spec.d.ts.map +0 -1
  324. package/dist/tests/value-objects/hashes/SHA256Hash.spec.js +0 -147
  325. package/dist/tests/value-objects/hashes/SHA256Hash.spec.js.map +0 -1
  326. package/dist/tests/value-objects/hashes/SHA512Hash.spec.d.ts +0 -2
  327. package/dist/tests/value-objects/hashes/SHA512Hash.spec.d.ts.map +0 -1
  328. package/dist/tests/value-objects/hashes/SHA512Hash.spec.js +0 -147
  329. package/dist/tests/value-objects/hashes/SHA512Hash.spec.js.map +0 -1
  330. package/dist/tests/value-objects/ids/ShortId.spec.d.ts +0 -2
  331. package/dist/tests/value-objects/ids/ShortId.spec.d.ts.map +0 -1
  332. package/dist/tests/value-objects/ids/ShortId.spec.js +0 -30
  333. package/dist/tests/value-objects/ids/ShortId.spec.js.map +0 -1
  334. package/dist/tests/value-objects/ids/UUID.spec.d.ts +0 -2
  335. package/dist/tests/value-objects/ids/UUID.spec.d.ts.map +0 -1
  336. package/dist/tests/value-objects/ids/UUID.spec.js +0 -30
  337. package/dist/tests/value-objects/ids/UUID.spec.js.map +0 -1
  338. package/dist/tests/value-objects/time/CalendarDay.spec.d.ts +0 -2
  339. package/dist/tests/value-objects/time/CalendarDay.spec.d.ts.map +0 -1
  340. package/dist/tests/value-objects/time/CalendarDay.spec.js +0 -149
  341. package/dist/tests/value-objects/time/CalendarDay.spec.js.map +0 -1
  342. package/dist/tests/value-objects/time/Day.spec.d.ts +0 -2
  343. package/dist/tests/value-objects/time/Day.spec.d.ts.map +0 -1
  344. package/dist/tests/value-objects/time/Day.spec.js +0 -28
  345. package/dist/tests/value-objects/time/Day.spec.js.map +0 -1
  346. package/dist/tests/value-objects/time/DayOfWeek.spec.d.ts +0 -2
  347. package/dist/tests/value-objects/time/DayOfWeek.spec.d.ts.map +0 -1
  348. package/dist/tests/value-objects/time/DayOfWeek.spec.js +0 -44
  349. package/dist/tests/value-objects/time/DayOfWeek.spec.js.map +0 -1
  350. package/dist/tests/value-objects/time/Duration.spec.d.ts +0 -2
  351. package/dist/tests/value-objects/time/Duration.spec.d.ts.map +0 -1
  352. package/dist/tests/value-objects/time/Duration.spec.js +0 -255
  353. package/dist/tests/value-objects/time/Duration.spec.js.map +0 -1
  354. package/dist/tests/value-objects/time/Hour.spec.d.ts +0 -2
  355. package/dist/tests/value-objects/time/Hour.spec.d.ts.map +0 -1
  356. package/dist/tests/value-objects/time/Hour.spec.js +0 -168
  357. package/dist/tests/value-objects/time/Hour.spec.js.map +0 -1
  358. package/dist/tests/value-objects/time/MonthOfYear.spec.d.ts +0 -2
  359. package/dist/tests/value-objects/time/MonthOfYear.spec.d.ts.map +0 -1
  360. package/dist/tests/value-objects/time/MonthOfYear.spec.js +0 -93
  361. package/dist/tests/value-objects/time/MonthOfYear.spec.js.map +0 -1
  362. package/dist/tests/value-objects/time/Timestamp.spec.d.ts +0 -2
  363. package/dist/tests/value-objects/time/Timestamp.spec.d.ts.map +0 -1
  364. package/dist/tests/value-objects/time/Timestamp.spec.js +0 -391
  365. package/dist/tests/value-objects/time/Timestamp.spec.js.map +0 -1
  366. package/dist/tests/value-objects/time/TimestampInterval.spec.d.ts +0 -2
  367. package/dist/tests/value-objects/time/TimestampInterval.spec.d.ts.map +0 -1
  368. package/dist/tests/value-objects/time/TimestampInterval.spec.js +0 -270
  369. package/dist/tests/value-objects/time/TimestampInterval.spec.js.map +0 -1
  370. package/dist/tests/value-objects/time/Year.spec.d.ts +0 -2
  371. package/dist/tests/value-objects/time/Year.spec.d.ts.map +0 -1
  372. package/dist/tests/value-objects/time/Year.spec.js +0 -41
  373. package/dist/tests/value-objects/time/Year.spec.js.map +0 -1
  374. /package/dist/{src/errors → errors}/BaseError.d.ts +0 -0
  375. /package/dist/{src/errors → errors}/BaseError.js +0 -0
  376. /package/dist/{src/errors → errors}/DomainError.d.ts +0 -0
  377. /package/dist/{src/errors → errors}/DomainError.js +0 -0
  378. /package/dist/{src/errors → errors}/InvalidColorError.d.ts +0 -0
  379. /package/dist/{src/errors → errors}/InvalidColorError.js +0 -0
  380. /package/dist/{src/errors → errors}/InvalidDayError.d.ts +0 -0
  381. /package/dist/{src/errors → errors}/InvalidDayError.js +0 -0
  382. /package/dist/{src/errors → errors}/InvalidDayFormatError.d.ts +0 -0
  383. /package/dist/{src/errors → errors}/InvalidDayFormatError.js +0 -0
  384. /package/dist/{src/errors → errors}/InvalidEmailError.d.ts +0 -0
  385. /package/dist/{src/errors → errors}/InvalidEmailError.js +0 -0
  386. /package/dist/{src/errors → errors}/InvalidFormatError.d.ts +0 -0
  387. /package/dist/{src/errors → errors}/InvalidFormatError.js +0 -0
  388. /package/dist/{src/errors → errors}/InvalidHashError.d.ts +0 -0
  389. /package/dist/{src/errors → errors}/InvalidHashError.js +0 -0
  390. /package/dist/{src/errors → errors}/InvalidHourError.d.ts +0 -0
  391. /package/dist/{src/errors → errors}/InvalidHourError.js +0 -0
  392. /package/dist/{src/errors → errors}/InvalidIntegerError.d.ts +0 -0
  393. /package/dist/{src/errors → errors}/InvalidIntegerError.js +0 -0
  394. /package/dist/{src/errors → errors}/InvalidLatitudeError.d.ts +0 -0
  395. /package/dist/{src/errors → errors}/InvalidLatitudeError.js +0 -0
  396. /package/dist/{src/errors → errors}/InvalidLengthError.d.ts +0 -0
  397. /package/dist/{src/errors → errors}/InvalidLengthError.js +0 -0
  398. /package/dist/{src/errors → errors}/InvalidLongitudeError.d.ts +0 -0
  399. /package/dist/{src/errors → errors}/InvalidLongitudeError.js +0 -0
  400. /package/dist/{src/errors → errors}/InvalidMinutesError.d.ts +0 -0
  401. /package/dist/{src/errors → errors}/InvalidMinutesError.js +0 -0
  402. /package/dist/{src/errors → errors}/InvalidNumberError.d.ts +0 -0
  403. /package/dist/{src/errors → errors}/InvalidNumberError.js +0 -0
  404. /package/dist/{src/errors → errors}/InvalidPositiveNumberError.d.ts +0 -0
  405. /package/dist/{src/errors → errors}/InvalidPositiveNumberError.js +0 -0
  406. /package/dist/{src/errors → errors}/InvalidStringLengthError.d.ts +0 -0
  407. /package/dist/{src/errors → errors}/InvalidStringLengthError.js +0 -0
  408. /package/dist/{src/errors → errors}/InvalidTimestampIntervalError.d.ts +0 -0
  409. /package/dist/{src/errors → errors}/InvalidTimestampIntervalError.js +0 -0
  410. /package/dist/{src/errors → errors}/InvalidValueError.d.ts +0 -0
  411. /package/dist/{src/errors → errors}/InvalidValueError.js +0 -0
  412. /package/dist/{src/errors → errors}/NullObjectError.d.ts +0 -0
  413. /package/dist/{src/errors → errors}/NullObjectError.js +0 -0
  414. /package/dist/{src/errors → errors}/ValueNotInEnumError.d.ts +0 -0
  415. /package/dist/{src/errors → errors}/ValueNotInEnumError.js +0 -0
  416. /package/dist/{src/errors → errors}/index.d.ts +0 -0
  417. /package/dist/{src/errors → errors}/index.js +0 -0
  418. /package/dist/{src/index.d.ts → index.d.ts} +0 -0
  419. /package/dist/{src/index.js → index.js} +0 -0
  420. /package/dist/{src/interfaces → interfaces}/PrimitiveOf.d.ts +0 -0
  421. /package/dist/{src/interfaces → interfaces}/PrimitiveOf.js +0 -0
  422. /package/dist/{src/interfaces → interfaces}/index.d.ts +0 -0
  423. /package/dist/{src/interfaces → interfaces}/index.js +0 -0
  424. /package/dist/{src/patterns → patterns}/Assert.d.ts +0 -0
  425. /package/dist/{src/patterns → patterns}/Assert.js +0 -0
  426. /package/dist/{src/patterns → patterns}/index.d.ts +0 -0
  427. /package/dist/{src/patterns → patterns}/index.js +0 -0
  428. /package/dist/{src/types → types}/Nullish.d.ts +0 -0
  429. /package/dist/{src/types → types}/Nullish.js +0 -0
  430. /package/dist/{src/types → types}/Primitive.d.ts +0 -0
  431. /package/dist/{src/types → types}/Primitive.js +0 -0
  432. /package/dist/{src/types → types}/index.d.ts +0 -0
  433. /package/dist/{src/types → types}/index.js +0 -0
  434. /package/dist/{src/value-objects → value-objects}/Color.d.ts +0 -0
  435. /package/dist/{src/value-objects → value-objects}/Color.js +0 -0
  436. /package/dist/{src/value-objects → value-objects}/Email.d.ts +0 -0
  437. /package/dist/{src/value-objects → value-objects}/Email.js +0 -0
  438. /package/dist/{src/value-objects → value-objects}/Enum.d.ts +0 -0
  439. /package/dist/{src/value-objects → value-objects}/Enum.js +0 -0
  440. /package/dist/{src/value-objects → value-objects}/Integer.d.ts +0 -0
  441. /package/dist/{src/value-objects → value-objects}/Integer.js +0 -0
  442. /package/dist/{src/value-objects → value-objects}/NullObject.d.ts +0 -0
  443. /package/dist/{src/value-objects → value-objects}/NullObject.js +0 -0
  444. /package/dist/{src/value-objects → value-objects}/NumberValueObject.d.ts +0 -0
  445. /package/dist/{src/value-objects → value-objects}/NumberValueObject.js +0 -0
  446. /package/dist/{src/value-objects → value-objects}/PositiveNumber.d.ts +0 -0
  447. /package/dist/{src/value-objects → value-objects}/PositiveNumber.js +0 -0
  448. /package/dist/{src/value-objects → value-objects}/StringValueObject.d.ts +0 -0
  449. /package/dist/{src/value-objects → value-objects}/StringValueObject.js +0 -0
  450. /package/dist/{src/value-objects → value-objects}/ValueObject.d.ts +0 -0
  451. /package/dist/{src/value-objects → value-objects}/ValueObject.js +0 -0
  452. /package/dist/{src/value-objects → value-objects}/coordinates/Coordinates.d.ts +0 -0
  453. /package/dist/{src/value-objects → value-objects}/coordinates/Coordinates.js +0 -0
  454. /package/dist/{src/value-objects → value-objects}/coordinates/Latitude.d.ts +0 -0
  455. /package/dist/{src/value-objects → value-objects}/coordinates/Latitude.js +0 -0
  456. /package/dist/{src/value-objects → value-objects}/coordinates/Longitude.d.ts +0 -0
  457. /package/dist/{src/value-objects → value-objects}/coordinates/Longitude.js +0 -0
  458. /package/dist/{src/value-objects → value-objects}/coordinates/index.d.ts +0 -0
  459. /package/dist/{src/value-objects → value-objects}/coordinates/index.js +0 -0
  460. /package/dist/{src/value-objects → value-objects}/hashes/Hash.d.ts +0 -0
  461. /package/dist/{src/value-objects → value-objects}/hashes/Hash.js +0 -0
  462. /package/dist/{src/value-objects → value-objects}/hashes/MD5Hash.d.ts +0 -0
  463. /package/dist/{src/value-objects → value-objects}/hashes/MD5Hash.js +0 -0
  464. /package/dist/{src/value-objects → value-objects}/hashes/SHA256Hash.d.ts +0 -0
  465. /package/dist/{src/value-objects → value-objects}/hashes/SHA256Hash.js +0 -0
  466. /package/dist/{src/value-objects → value-objects}/hashes/SHA512Hash.d.ts +0 -0
  467. /package/dist/{src/value-objects → value-objects}/hashes/SHA512Hash.js +0 -0
  468. /package/dist/{src/value-objects → value-objects}/hashes/index.d.ts +0 -0
  469. /package/dist/{src/value-objects → value-objects}/hashes/index.js +0 -0
  470. /package/dist/{src/value-objects → value-objects}/ids/ShortId.d.ts +0 -0
  471. /package/dist/{src/value-objects → value-objects}/ids/ShortId.js +0 -0
  472. /package/dist/{src/value-objects → value-objects}/ids/UUID.d.ts +0 -0
  473. /package/dist/{src/value-objects → value-objects}/ids/UUID.js +0 -0
  474. /package/dist/{src/value-objects → value-objects}/ids/index.d.ts +0 -0
  475. /package/dist/{src/value-objects → value-objects}/ids/index.js +0 -0
  476. /package/dist/{src/value-objects → value-objects}/time/CalendarDay.d.ts +0 -0
  477. /package/dist/{src/value-objects → value-objects}/time/CalendarDay.js +0 -0
  478. /package/dist/{src/value-objects → value-objects}/time/Day.d.ts +0 -0
  479. /package/dist/{src/value-objects → value-objects}/time/Day.js +0 -0
  480. /package/dist/{src/value-objects → value-objects}/time/DayOfWeek.d.ts +0 -0
  481. /package/dist/{src/value-objects → value-objects}/time/DayOfWeek.js +0 -0
  482. /package/dist/{src/value-objects → value-objects}/time/Duration.d.ts +0 -0
  483. /package/dist/{src/value-objects → value-objects}/time/Duration.js +0 -0
  484. /package/dist/{src/value-objects → value-objects}/time/Hour.d.ts +0 -0
  485. /package/dist/{src/value-objects → value-objects}/time/Hour.js +0 -0
  486. /package/dist/{src/value-objects → value-objects}/time/Month.d.ts +0 -0
  487. /package/dist/{src/value-objects → value-objects}/time/Month.js +0 -0
  488. /package/dist/{src/value-objects → value-objects}/time/MonthOfYear.d.ts +0 -0
  489. /package/dist/{src/value-objects → value-objects}/time/MonthOfYear.js +0 -0
  490. /package/dist/{src/value-objects → value-objects}/time/Timestamp.d.ts +0 -0
  491. /package/dist/{src/value-objects → value-objects}/time/Timestamp.js +0 -0
  492. /package/dist/{src/value-objects → value-objects}/time/TimestampInterval.d.ts +0 -0
  493. /package/dist/{src/value-objects → value-objects}/time/TimestampInterval.js +0 -0
  494. /package/dist/{src/value-objects → value-objects}/time/Year.d.ts +0 -0
  495. /package/dist/{src/value-objects → value-objects}/time/Year.js +0 -0
  496. /package/dist/{src/value-objects → value-objects}/time/index.d.ts +0 -0
  497. /package/dist/{src/value-objects → value-objects}/time/index.js +0 -0
@@ -1,233 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const src_1 = require("../../src");
4
- class StringEnum extends src_1.Enum {
5
- getValues() {
6
- return ['A', 'B', 'C'];
7
- }
8
- }
9
- class NumberEnum extends src_1.Enum {
10
- getValues() {
11
- return [1, 2, 3];
12
- }
13
- }
14
- class MixedEnum extends src_1.Enum {
15
- getValues() {
16
- return ['1', 2];
17
- }
18
- }
19
- var StatusEnum;
20
- (function (StatusEnum) {
21
- StatusEnum["ACTIVE"] = "active";
22
- StatusEnum["INACTIVE"] = "inactive";
23
- StatusEnum["PENDING"] = "pending";
24
- })(StatusEnum || (StatusEnum = {}));
25
- class Status extends src_1.Enum {
26
- getValues() {
27
- return Object.values(StatusEnum);
28
- }
29
- // Static factory methods for convenience
30
- static ACTIVE = () => new Status(StatusEnum.ACTIVE);
31
- static INACTIVE = () => new Status(StatusEnum.INACTIVE);
32
- static PENDING = () => new Status(StatusEnum.PENDING);
33
- }
34
- describe('Enum', () => {
35
- describe('constructor', () => {
36
- it('should return a Null when a Nullish is received', () => {
37
- expect(() => new StringEnum(undefined)).not.toThrow();
38
- expect(src_1.NullObject.isNullObject(new StringEnum(undefined))).toBeTrue();
39
- expect(src_1.NullObject.isNullObject(new StringEnum(null))).toBeTrue();
40
- });
41
- it('should accept valid string enum values', () => {
42
- expect(() => new StringEnum('A')).not.toThrow();
43
- expect(() => new StringEnum('B')).not.toThrow();
44
- expect(() => new StringEnum('C')).not.toThrow();
45
- const enumValue = new StringEnum('A');
46
- expect(enumValue.valueOf()).toBe('A');
47
- expect(enumValue.toString()).toBe('A');
48
- });
49
- it('should accept valid number enum values', () => {
50
- expect(() => new NumberEnum(1)).not.toThrow();
51
- expect(() => new NumberEnum(2)).not.toThrow();
52
- expect(() => new NumberEnum(3)).not.toThrow();
53
- const enumValue = new NumberEnum(2);
54
- expect(enumValue.valueOf()).toBe(2);
55
- expect(enumValue.toString()).toBe('2');
56
- });
57
- it('should accept valid mixed enum values', () => {
58
- expect(() => new MixedEnum('1')).not.toThrow();
59
- expect(() => new MixedEnum(2)).not.toThrow();
60
- const stringValue = new MixedEnum('1');
61
- const numberValue = new MixedEnum(2);
62
- expect(stringValue.valueOf()).toBe('1');
63
- expect(numberValue.valueOf()).toBe(2);
64
- });
65
- it('should reject invalid string enum values', () => {
66
- expect(() => new StringEnum('D')).toThrow(src_1.ValueNotInEnumError);
67
- expect(() => new StringEnum('X')).toThrow(src_1.ValueNotInEnumError);
68
- expect(() => new StringEnum('')).toThrow(src_1.ValueNotInEnumError);
69
- });
70
- it('should reject invalid number enum values', () => {
71
- expect(() => new NumberEnum(0)).toThrow(src_1.ValueNotInEnumError);
72
- expect(() => new NumberEnum(4)).toThrow(src_1.ValueNotInEnumError);
73
- expect(() => new NumberEnum(-1)).toThrow(src_1.ValueNotInEnumError);
74
- });
75
- it('should reject invalid mixed enum values', () => {
76
- expect(() => new MixedEnum('2')).toThrow(src_1.ValueNotInEnumError);
77
- expect(() => new MixedEnum(1)).toThrow(src_1.ValueNotInEnumError);
78
- expect(() => new MixedEnum('invalid')).toThrow(src_1.ValueNotInEnumError);
79
- });
80
- it('should work with TypeScript enum values', () => {
81
- expect(() => new Status(StatusEnum.ACTIVE)).not.toThrow();
82
- expect(() => new Status('active')).not.toThrow();
83
- expect(() => new Status('inactive')).not.toThrow();
84
- expect(() => new Status('pending')).not.toThrow();
85
- const status = new Status(StatusEnum.ACTIVE);
86
- expect(status.valueOf()).toBe('active');
87
- });
88
- it('should reject invalid TypeScript enum values', () => {
89
- expect(() => new Status('unknown')).toThrow(src_1.ValueNotInEnumError);
90
- expect(() => new Status('ACTIVE')).toThrow(src_1.ValueNotInEnumError); // Case sensitive
91
- });
92
- });
93
- describe('inheritance and behavior', () => {
94
- it('should inherit from ', () => {
95
- const enumValue = new StringEnum('A');
96
- expect(enumValue).toBeInstanceOf(StringEnum);
97
- expect(enumValue).toBeInstanceOf(src_1.Enum);
98
- expect(enumValue.valueOf).toBeDefined();
99
- expect(enumValue.isEqual).toBeDefined();
100
- expect(enumValue.toString).toBeDefined();
101
- });
102
- it('should implement valueOf() method correctly', () => {
103
- const stringEnum = new StringEnum('B');
104
- const numberEnum = new NumberEnum(2);
105
- expect(stringEnum.valueOf()).toBe('B');
106
- expect(numberEnum.valueOf()).toBe(2);
107
- });
108
- it('should implement toString() method correctly from ', () => {
109
- const stringEnum = new StringEnum('C');
110
- const numberEnum = new NumberEnum(3);
111
- expect(stringEnum.toString()).toBe('C');
112
- expect(numberEnum.toString()).toBe('3');
113
- });
114
- it('should implement isEqual() method correctly', () => {
115
- const enum1 = new StringEnum('A');
116
- const enum2 = new StringEnum('A');
117
- const enum3 = new StringEnum('B');
118
- expect(enum1.isEqual(enum2)).toBeTrue();
119
- expect(enum1.isEqual(enum3)).toBeFalse();
120
- expect(enum1.isEqual('A')).toBeTrue();
121
- expect(enum1.isEqual('B')).toBeFalse();
122
- });
123
- it('should compare with primitive values using isEqual', () => {
124
- const stringEnum = new StringEnum('A');
125
- const numberEnum = new NumberEnum(1);
126
- expect(stringEnum.isEqual('A')).toBeTrue();
127
- expect(stringEnum.isEqual('B')).toBeFalse();
128
- expect(numberEnum.isEqual(1)).toBeTrue();
129
- expect(numberEnum.isEqual(2)).toBeFalse();
130
- });
131
- it('should implement clone() method correctly', () => {
132
- const original = new StringEnum('B');
133
- const cloned = original.clone();
134
- expect(cloned).toBeInstanceOf(StringEnum);
135
- expect(cloned).toBeInstanceOf(src_1.Enum);
136
- expect(cloned.valueOf()).toBe('B');
137
- expect(cloned.toString()).toBe('B');
138
- expect(cloned.isEqual(original)).toBeTrue();
139
- expect(cloned).not.toBe(original); // Different instances
140
- });
141
- it('should maintain enum validation in cloned instances', () => {
142
- const original = new NumberEnum(3);
143
- const cloned = original.clone();
144
- expect(cloned).toBeInstanceOf(NumberEnum);
145
- expect(cloned.valueOf()).toBe(3);
146
- // Cloned instance should still be a valid enum value
147
- expect(() => cloned.toString()).not.toThrow();
148
- expect(cloned.toString()).toBe('3');
149
- });
150
- });
151
- describe('immutability', () => {
152
- it('should have immutable value property inherited from ', () => {
153
- const enumValue = new StringEnum('A');
154
- // Verify immutability through value consistency
155
- expect(enumValue.valueOf()).toBe('A');
156
- expect(enumValue.value).toBe('A');
157
- const originalValue = enumValue.valueOf();
158
- expect(originalValue).toBe('A');
159
- });
160
- it('should return the same value after creation', () => {
161
- const originalValue = 'B';
162
- const enumValue = new StringEnum(originalValue);
163
- expect(enumValue.valueOf()).toBe(originalValue);
164
- expect(enumValue.toString()).toBe(originalValue);
165
- // Value should remain the same
166
- expect(enumValue.valueOf()).toBe(originalValue);
167
- });
168
- it('should create new instances instead of modifying existing ones', () => {
169
- const value1 = 'A';
170
- const value2 = 'C';
171
- const enum1 = new StringEnum(value1);
172
- const enum2 = new StringEnum(value2);
173
- expect(enum1.valueOf()).toBe(value1);
174
- expect(enum2.valueOf()).toBe(value2);
175
- expect(enum1.valueOf()).not.toBe(enum2.valueOf());
176
- });
177
- it('should maintain immutability when cloning', () => {
178
- const original = new NumberEnum(2);
179
- const cloned = original.clone();
180
- expect(original.valueOf()).toBe(2);
181
- expect(cloned.valueOf()).toBe(2);
182
- expect(original.isEqual(cloned)).toBeTrue();
183
- expect(original).not.toBe(cloned);
184
- // Both should remain immutable
185
- expect(original.valueOf()).toBe(2);
186
- expect(cloned.valueOf()).toBe(2);
187
- });
188
- });
189
- describe('enum validation', () => {
190
- it('should validate against the defined enum values', () => {
191
- const stringEnum = new StringEnum('A');
192
- expect(stringEnum.valueOf()).toBe('A');
193
- // Should be one of ['A', 'B', 'C']
194
- expect(['A', 'B', 'C']).toContain(stringEnum.valueOf());
195
- });
196
- it('should provide meaningful error messages for invalid values', () => {
197
- expect(() => new StringEnum('D')).toThrow(/enum does not include value: D/);
198
- expect(() => new NumberEnum(4)).toThrow(/enum does not include value: 4/);
199
- });
200
- it('should be case-sensitive for string enums', () => {
201
- expect(() => new StringEnum('a')).toThrow(src_1.ValueNotInEnumError);
202
- expect(() => new Status('ACTIVE')).toThrow(src_1.ValueNotInEnumError);
203
- });
204
- it('should handle type-sensitive validation for mixed enums', () => {
205
- // '1' (string) is valid, but 1 (number) is not
206
- expect(() => new MixedEnum('1')).not.toThrow();
207
- expect(() => new MixedEnum(1)).toThrow(src_1.ValueNotInEnumError);
208
- // 2 (number) is valid, but '2' (string) is not
209
- expect(() => new MixedEnum(2)).not.toThrow();
210
- expect(() => new MixedEnum('2')).toThrow(src_1.ValueNotInEnumError);
211
- });
212
- });
213
- describe('static factory methods', () => {
214
- it('should work with static factory methods for convenience', () => {
215
- const activeStatus = Status.ACTIVE();
216
- const inactiveStatus = Status.INACTIVE();
217
- const pendingStatus = Status.PENDING();
218
- expect(activeStatus.valueOf()).toBe('active');
219
- expect(inactiveStatus.valueOf()).toBe('inactive');
220
- expect(pendingStatus.valueOf()).toBe('pending');
221
- expect(activeStatus).toBeInstanceOf(Status);
222
- expect(inactiveStatus).toBeInstanceOf(Status);
223
- expect(pendingStatus).toBeInstanceOf(Status);
224
- });
225
- it('should maintain equality with factory methods', () => {
226
- const status1 = Status.ACTIVE();
227
- const status2 = new Status('active');
228
- expect(status1.isEqual(status2)).toBeTrue();
229
- expect(status1.valueOf()).toBe(status2.valueOf());
230
- });
231
- });
232
- });
233
- //# sourceMappingURL=Enum.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Enum.spec.js","sourceRoot":"","sources":["../../../tests/value-objects/Enum.spec.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=Integer.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Integer.spec.d.ts","sourceRoot":"","sources":["../../../tests/value-objects/Integer.spec.ts"],"names":[],"mappings":""}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const src_1 = require("../../src");
4
- describe('Integer', () => {
5
- it('should create an Integer for a valid integer', () => {
6
- const value = 42;
7
- const integer = new src_1.Integer(value);
8
- expect(integer).toMatchObject({ value });
9
- });
10
- it('should throw InvalidIntegerError for a non-integer value', () => {
11
- const value = 42.5;
12
- expect(() => new src_1.Integer(value)).toThrow(src_1.InvalidIntegerError);
13
- expect(() => new src_1.Integer(value)).toThrow(`Invalid integer value ${value}`);
14
- });
15
- it('should throw InvalidNumberError for NaN', () => {
16
- const value = NaN;
17
- expect(() => new src_1.Integer(value)).toThrow(src_1.InvalidNumberError);
18
- expect(() => new src_1.Integer(value)).toThrow(`Invalid number ${value}`);
19
- });
20
- it('should throw InvalidIntegerError for Infinity', () => {
21
- const value = Infinity;
22
- expect(() => new src_1.Integer(value)).toThrow(src_1.InvalidIntegerError);
23
- expect(() => new src_1.Integer(value)).toThrow(`Invalid integer value ${value}`);
24
- });
25
- it('should throw InvalidIntegerError for -Infinity', () => {
26
- const value = -Infinity;
27
- expect(() => new src_1.Integer(value)).toThrow(src_1.InvalidIntegerError);
28
- expect(() => new src_1.Integer(value)).toThrow(`Invalid integer value ${value}`);
29
- });
30
- });
31
- //# sourceMappingURL=Integer.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Integer.spec.js","sourceRoot":"","sources":["../../../tests/value-objects/Integer.spec.ts"],"names":[],"mappings":";;AAAA,mCAA6E;AAE7E,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC;QAEnC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAG,IAAI,CAAC;QAEnB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAmB,CAAC,CAAC;QAC9D,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,KAAK,GAAG,GAAG,CAAC;QAElB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAkB,CAAC,CAAC;QAC7D,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,KAAK,GAAG,QAAQ,CAAC;QAEvB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAmB,CAAC,CAAC;QAC9D,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC;QAExB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAmB,CAAC,CAAC;QAC9D,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=NullObject.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NullObject.spec.d.ts","sourceRoot":"","sources":["../../../tests/value-objects/NullObject.spec.ts"],"names":[],"mappings":""}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const src_1 = require("../../src");
4
- /* eslint-disable no-unused-expressions */
5
- describe('NullObject', () => {
6
- class TestNullObject {
7
- uid;
8
- constructor(uid) {
9
- this.uid = uid;
10
- }
11
- getUid() {
12
- return 'uid';
13
- }
14
- getName() {
15
- return 'name';
16
- }
17
- valueOf() {
18
- return this.getUid();
19
- }
20
- }
21
- let test;
22
- beforeEach(() => {
23
- test = src_1.NullObject.new(TestNullObject);
24
- });
25
- it('should replace all methods with fake methods throwing NullObjectError', () => {
26
- expect(() => test.getUid()).toThrow(src_1.NullObjectError);
27
- expect(() => test.getName()).toThrow(src_1.NullObjectError);
28
- });
29
- it('should replace valueOf with undefined ', () => {
30
- expect(test.valueOf()).toBeUndefined();
31
- });
32
- it('should return true when checking if it is a null object', () => {
33
- expect(src_1.NullObject.isNullObject(test)).toBeTrue();
34
- });
35
- it('should return false when checking if empty object it is a null object', () => {
36
- expect(src_1.NullObject.isNullObject({})).toBeFalse();
37
- });
38
- it('should return false when checking if null it is a null object', () => {
39
- expect(src_1.NullObject.isNullObject(null)).toBeFalse();
40
- });
41
- it('should return false when checking if undefined it is a null object', () => {
42
- expect(src_1.NullObject.isNullObject(undefined)).toBeFalse();
43
- });
44
- it('should return false when checking if NaN it is a null object', () => {
45
- expect(src_1.NullObject.isNullObject(NaN)).toBeFalse();
46
- });
47
- });
48
- //# sourceMappingURL=NullObject.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NullObject.spec.js","sourceRoot":"","sources":["../../../tests/value-objects/NullObject.spec.ts"],"names":[],"mappings":";;AAAA,mCAAwD;AAExD,0CAA0C;AAC1C,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,MAAM,cAAc;QACW;QAA7B,YAA6B,GAAW;YAAX,QAAG,GAAH,GAAG,CAAQ;QAAG,CAAC;QAErC,MAAM;YACX,OAAO,KAAK,CAAC;QACf,CAAC;QAEM,OAAO;YACZ,OAAO,MAAM,CAAC;QAChB,CAAC;QAEM,OAAO;YACZ,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;KACF;IAED,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,GAAG,gBAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAe,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAe,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,gBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,CAAC,gBAAU,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,CAAC,gBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,CAAC,gBAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,CAAC,gBAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=NumberValueObject.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NumberValueObject.spec.d.ts","sourceRoot":"","sources":["../../../tests/value-objects/NumberValueObject.spec.ts"],"names":[],"mappings":""}