@decaf-ts/decorator-validation 1.14.0 → 1.16.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 (327) hide show
  1. package/lib/cjs/constants/errors.cjs +1 -0
  2. package/lib/cjs/constants/errors.cjs.map +1 -0
  3. package/lib/cjs/constants/index.cjs +1 -0
  4. package/lib/cjs/constants/index.cjs.map +1 -0
  5. package/lib/cjs/constants/validation.cjs +1 -0
  6. package/lib/cjs/constants/validation.cjs.map +1 -0
  7. package/lib/cjs/index.cjs +2 -1
  8. package/lib/cjs/index.cjs.map +1 -0
  9. package/lib/cjs/model/Builder.cjs +49 -48
  10. package/lib/cjs/model/Builder.cjs.map +1 -0
  11. package/lib/cjs/model/Model.cjs +31 -30
  12. package/lib/cjs/model/Model.cjs.map +1 -0
  13. package/lib/cjs/model/ModelErrorDefinition.cjs +1 -0
  14. package/lib/cjs/model/ModelErrorDefinition.cjs.map +1 -0
  15. package/lib/cjs/model/ModelRegistry.cjs +7 -6
  16. package/lib/cjs/model/ModelRegistry.cjs.map +1 -0
  17. package/lib/cjs/model/constants.cjs +2 -13
  18. package/lib/cjs/model/constants.cjs.map +1 -0
  19. package/lib/cjs/model/construction.cjs +5 -4
  20. package/lib/cjs/model/construction.cjs.map +1 -0
  21. package/lib/cjs/model/decorators.cjs +12 -11
  22. package/lib/cjs/model/decorators.cjs.map +1 -0
  23. package/lib/cjs/model/index.cjs +1 -0
  24. package/lib/cjs/model/index.cjs.map +1 -0
  25. package/lib/cjs/model/types.cjs +1 -0
  26. package/lib/cjs/model/types.cjs.map +1 -0
  27. package/lib/cjs/model/utils.cjs +1 -0
  28. package/lib/cjs/model/utils.cjs.map +1 -0
  29. package/lib/cjs/model/validation.cjs +33 -32
  30. package/lib/cjs/model/validation.cjs.map +1 -0
  31. package/lib/cjs/overrides/Metadata.cjs +1 -0
  32. package/lib/cjs/overrides/Metadata.cjs.map +1 -0
  33. package/lib/cjs/overrides/index.cjs +1 -0
  34. package/lib/cjs/overrides/index.cjs.map +1 -0
  35. package/lib/cjs/overrides/overrides.cjs +20 -19
  36. package/lib/cjs/overrides/overrides.cjs.map +1 -0
  37. package/lib/cjs/overrides/types.cjs +1 -0
  38. package/lib/cjs/overrides/types.cjs.map +1 -0
  39. package/lib/cjs/types/index.cjs +1 -0
  40. package/lib/cjs/types/index.cjs.map +1 -0
  41. package/lib/cjs/types/validation.cjs +1 -0
  42. package/lib/cjs/types/{validation.js.map → validation.cjs.map} +1 -1
  43. package/lib/cjs/utils/DateBuilder.cjs +1 -0
  44. package/lib/cjs/utils/DateBuilder.cjs.map +1 -0
  45. package/lib/cjs/utils/PathProxy.cjs +9 -8
  46. package/lib/cjs/utils/PathProxy.cjs.map +1 -0
  47. package/lib/cjs/utils/constants.cjs +2 -21
  48. package/lib/cjs/utils/constants.cjs.map +1 -0
  49. package/lib/cjs/utils/dates.cjs +9 -8
  50. package/lib/cjs/utils/dates.cjs.map +1 -0
  51. package/lib/cjs/utils/equality.cjs +1 -0
  52. package/lib/cjs/utils/equality.cjs.map +1 -0
  53. package/lib/cjs/utils/hashing.cjs +6 -3
  54. package/lib/cjs/utils/hashing.cjs.map +1 -0
  55. package/lib/cjs/utils/index.cjs +1 -0
  56. package/lib/cjs/utils/index.cjs.map +1 -0
  57. package/lib/cjs/utils/registry.cjs +1 -0
  58. package/lib/cjs/utils/registry.cjs.map +1 -0
  59. package/lib/cjs/utils/serialization.cjs +3 -2
  60. package/lib/cjs/utils/serialization.cjs.map +1 -0
  61. package/lib/cjs/utils/serializers.cjs +8 -7
  62. package/lib/cjs/utils/serializers.cjs.map +1 -0
  63. package/lib/cjs/utils/strings.cjs +1 -0
  64. package/lib/cjs/utils/strings.cjs.map +1 -0
  65. package/lib/cjs/utils/types.cjs +1 -0
  66. package/lib/cjs/utils/types.cjs.map +1 -0
  67. package/lib/cjs/validation/Validation.cjs +9 -8
  68. package/lib/cjs/validation/Validation.cjs.map +1 -0
  69. package/lib/cjs/validation/Validators/AsyncValidator.cjs +5 -4
  70. package/lib/cjs/validation/Validators/AsyncValidator.cjs.map +1 -0
  71. package/lib/cjs/validation/Validators/BaseValidator.cjs +8 -7
  72. package/lib/cjs/validation/Validators/BaseValidator.cjs.map +1 -0
  73. package/lib/cjs/validation/Validators/DateValidator.cjs +17 -11
  74. package/lib/cjs/validation/Validators/DateValidator.cjs.map +1 -0
  75. package/lib/cjs/validation/Validators/DiffValidator.cjs +21 -15
  76. package/lib/cjs/validation/Validators/DiffValidator.cjs.map +1 -0
  77. package/lib/cjs/validation/Validators/EmailValidator.cjs +18 -12
  78. package/lib/cjs/validation/Validators/EmailValidator.cjs.map +1 -0
  79. package/lib/cjs/validation/Validators/EqualsValidator.cjs +21 -15
  80. package/lib/cjs/validation/Validators/EqualsValidator.cjs.map +1 -0
  81. package/lib/cjs/validation/Validators/GreaterThanOrEqualValidator.cjs +24 -18
  82. package/lib/cjs/validation/Validators/GreaterThanOrEqualValidator.cjs.map +1 -0
  83. package/lib/cjs/validation/Validators/GreaterThanValidator.cjs +21 -15
  84. package/lib/cjs/validation/Validators/GreaterThanValidator.cjs.map +1 -0
  85. package/lib/cjs/validation/Validators/LessThanOrEqualValidator.cjs +24 -18
  86. package/lib/cjs/validation/Validators/LessThanOrEqualValidator.cjs.map +1 -0
  87. package/lib/cjs/validation/Validators/LessThanValidator.cjs +21 -15
  88. package/lib/cjs/validation/Validators/LessThanValidator.cjs.map +1 -0
  89. package/lib/cjs/validation/Validators/ListValidator.cjs +17 -11
  90. package/lib/cjs/validation/Validators/ListValidator.cjs.map +1 -0
  91. package/lib/cjs/validation/Validators/MaxLengthValidator.cjs +19 -13
  92. package/lib/cjs/validation/Validators/MaxLengthValidator.cjs.map +1 -0
  93. package/lib/cjs/validation/Validators/MaxValidator.cjs +17 -11
  94. package/lib/cjs/validation/Validators/MaxValidator.cjs.map +1 -0
  95. package/lib/cjs/validation/Validators/MinLengthValidator.cjs +19 -13
  96. package/lib/cjs/validation/Validators/MinLengthValidator.cjs.map +1 -0
  97. package/lib/cjs/validation/Validators/MinValidator.cjs +17 -11
  98. package/lib/cjs/validation/Validators/MinValidator.cjs.map +1 -0
  99. package/lib/cjs/validation/Validators/OptionValidator.cjs +17 -11
  100. package/lib/cjs/validation/Validators/OptionValidator.cjs.map +1 -0
  101. package/lib/cjs/validation/Validators/PasswordValidator.cjs +18 -12
  102. package/lib/cjs/validation/Validators/PasswordValidator.cjs.map +1 -0
  103. package/lib/cjs/validation/Validators/PatternValidator.cjs +17 -11
  104. package/lib/cjs/validation/Validators/PatternValidator.cjs.map +1 -0
  105. package/lib/cjs/validation/Validators/RequiredValidator.cjs +17 -11
  106. package/lib/cjs/validation/Validators/RequiredValidator.cjs.map +1 -0
  107. package/lib/cjs/validation/Validators/StepValidator.cjs +17 -11
  108. package/lib/cjs/validation/Validators/StepValidator.cjs.map +1 -0
  109. package/lib/cjs/validation/Validators/TypeValidator.cjs +23 -17
  110. package/lib/cjs/validation/Validators/TypeValidator.cjs.map +1 -0
  111. package/lib/cjs/validation/Validators/URLValidator.cjs +18 -12
  112. package/lib/cjs/validation/Validators/URLValidator.cjs.map +1 -0
  113. package/lib/cjs/validation/Validators/Validator.cjs +5 -4
  114. package/lib/cjs/validation/Validators/Validator.cjs.map +1 -0
  115. package/lib/cjs/validation/Validators/ValidatorRegistry.cjs +4 -3
  116. package/lib/cjs/validation/Validators/ValidatorRegistry.cjs.map +1 -0
  117. package/lib/cjs/validation/Validators/constants.cjs +3 -2
  118. package/lib/cjs/validation/Validators/constants.cjs.map +1 -0
  119. package/lib/cjs/validation/Validators/decorators.cjs +5 -4
  120. package/lib/cjs/validation/Validators/decorators.cjs.map +1 -0
  121. package/lib/cjs/validation/Validators/index.cjs +1 -0
  122. package/lib/cjs/validation/Validators/index.cjs.map +1 -0
  123. package/lib/cjs/validation/Validators/utils.cjs +14 -13
  124. package/lib/cjs/validation/Validators/utils.cjs.map +1 -0
  125. package/lib/cjs/validation/decorators.cjs +70 -69
  126. package/lib/cjs/validation/decorators.cjs.map +1 -0
  127. package/lib/cjs/validation/index.cjs +1 -0
  128. package/lib/cjs/validation/index.cjs.map +1 -0
  129. package/lib/cjs/validation/types.cjs +2 -1
  130. package/lib/cjs/validation/types.cjs.map +1 -0
  131. package/lib/esm/index.js +1 -1
  132. package/lib/types/constants/errors.d.cts +17 -0
  133. package/lib/types/constants/errors.d.mts +17 -0
  134. package/lib/types/constants/index.d.cts +2 -0
  135. package/lib/types/constants/index.d.mts +2 -0
  136. package/lib/types/constants/validation.d.cts +16 -0
  137. package/lib/types/constants/validation.d.mts +16 -0
  138. package/lib/types/index.d.cts +20 -0
  139. package/lib/types/index.d.mts +20 -0
  140. package/lib/types/index.d.ts +1 -1
  141. package/lib/types/model/Builder.d.cts +86 -0
  142. package/lib/types/model/Builder.d.mts +86 -0
  143. package/lib/types/model/Model.d.cts +286 -0
  144. package/lib/types/model/Model.d.mts +286 -0
  145. package/lib/types/model/ModelErrorDefinition.d.cts +22 -0
  146. package/lib/types/model/ModelErrorDefinition.d.mts +22 -0
  147. package/lib/types/model/ModelRegistry.d.cts +181 -0
  148. package/lib/types/model/ModelRegistry.d.mts +181 -0
  149. package/lib/types/model/constants.d.cts +65 -0
  150. package/lib/types/model/constants.d.mts +65 -0
  151. package/lib/types/model/construction.d.cts +46 -0
  152. package/lib/types/model/construction.d.mts +46 -0
  153. package/lib/types/model/decorators.d.cts +47 -0
  154. package/lib/types/model/decorators.d.mts +47 -0
  155. package/lib/types/model/index.d.cts +10 -0
  156. package/lib/types/model/index.d.mts +10 -0
  157. package/lib/types/model/types.d.cts +145 -0
  158. package/lib/types/model/types.d.mts +145 -0
  159. package/lib/types/model/utils.d.cts +13 -0
  160. package/lib/types/model/utils.d.mts +13 -0
  161. package/lib/types/model/validation.d.cts +92 -0
  162. package/lib/types/model/validation.d.mts +92 -0
  163. package/lib/types/overrides/Metadata.d.cts +132 -0
  164. package/lib/types/overrides/Metadata.d.mts +132 -0
  165. package/lib/types/overrides/index.d.cts +4 -0
  166. package/lib/types/overrides/index.d.mts +4 -0
  167. package/lib/types/overrides/overrides.d.cts +1 -0
  168. package/lib/types/overrides/overrides.d.mts +1 -0
  169. package/lib/types/overrides/types.d.cts +17 -0
  170. package/lib/types/overrides/types.d.mts +17 -0
  171. package/lib/types/types/index.d.cts +1 -0
  172. package/lib/types/types/index.d.mts +1 -0
  173. package/lib/types/types/validation.d.cts +28 -0
  174. package/lib/types/types/validation.d.mts +28 -0
  175. package/lib/types/utils/DateBuilder.d.cts +121 -0
  176. package/lib/types/utils/DateBuilder.d.mts +121 -0
  177. package/lib/types/utils/PathProxy.d.cts +43 -0
  178. package/lib/types/utils/PathProxy.d.mts +43 -0
  179. package/lib/types/utils/constants.d.cts +32 -0
  180. package/lib/types/utils/constants.d.mts +32 -0
  181. package/lib/types/utils/dates.d.cts +86 -0
  182. package/lib/types/utils/dates.d.mts +86 -0
  183. package/lib/types/utils/equality.d.cts +56 -0
  184. package/lib/types/utils/equality.d.mts +56 -0
  185. package/lib/types/utils/hashing.d.cts +82 -0
  186. package/lib/types/utils/hashing.d.mts +82 -0
  187. package/lib/types/utils/index.d.cts +11 -0
  188. package/lib/types/utils/index.d.mts +11 -0
  189. package/lib/types/utils/registry.d.cts +68 -0
  190. package/lib/types/utils/registry.d.mts +68 -0
  191. package/lib/types/utils/serialization.d.cts +12 -0
  192. package/lib/types/utils/serialization.d.mts +12 -0
  193. package/lib/types/utils/serializers.d.cts +41 -0
  194. package/lib/types/utils/serializers.d.mts +41 -0
  195. package/lib/types/utils/strings.d.cts +25 -0
  196. package/lib/types/utils/strings.d.mts +25 -0
  197. package/lib/types/utils/types.d.cts +35 -0
  198. package/lib/types/utils/types.d.mts +35 -0
  199. package/lib/types/validation/Validation.d.cts +53 -0
  200. package/lib/types/validation/Validation.d.mts +53 -0
  201. package/lib/types/validation/Validators/AsyncValidator.d.cts +72 -0
  202. package/lib/types/validation/Validators/AsyncValidator.d.mts +72 -0
  203. package/lib/types/validation/Validators/BaseValidator.d.cts +118 -0
  204. package/lib/types/validation/Validators/BaseValidator.d.mts +118 -0
  205. package/lib/types/validation/Validators/DateValidator.d.cts +60 -0
  206. package/lib/types/validation/Validators/DateValidator.d.mts +60 -0
  207. package/lib/types/validation/Validators/DiffValidator.d.cts +29 -0
  208. package/lib/types/validation/Validators/DiffValidator.d.mts +29 -0
  209. package/lib/types/validation/Validators/EmailValidator.d.cts +60 -0
  210. package/lib/types/validation/Validators/EmailValidator.d.mts +60 -0
  211. package/lib/types/validation/Validators/EqualsValidator.d.cts +29 -0
  212. package/lib/types/validation/Validators/EqualsValidator.d.mts +29 -0
  213. package/lib/types/validation/Validators/GreaterThanOrEqualValidator.d.cts +29 -0
  214. package/lib/types/validation/Validators/GreaterThanOrEqualValidator.d.mts +29 -0
  215. package/lib/types/validation/Validators/GreaterThanValidator.d.cts +29 -0
  216. package/lib/types/validation/Validators/GreaterThanValidator.d.mts +29 -0
  217. package/lib/types/validation/Validators/LessThanOrEqualValidator.d.cts +29 -0
  218. package/lib/types/validation/Validators/LessThanOrEqualValidator.d.mts +29 -0
  219. package/lib/types/validation/Validators/LessThanValidator.d.cts +29 -0
  220. package/lib/types/validation/Validators/LessThanValidator.d.mts +29 -0
  221. package/lib/types/validation/Validators/ListValidator.d.cts +66 -0
  222. package/lib/types/validation/Validators/ListValidator.d.mts +66 -0
  223. package/lib/types/validation/Validators/MaxLengthValidator.d.cts +29 -0
  224. package/lib/types/validation/Validators/MaxLengthValidator.d.mts +29 -0
  225. package/lib/types/validation/Validators/MaxValidator.d.cts +74 -0
  226. package/lib/types/validation/Validators/MaxValidator.d.mts +74 -0
  227. package/lib/types/validation/Validators/MinLengthValidator.d.cts +29 -0
  228. package/lib/types/validation/Validators/MinLengthValidator.d.mts +29 -0
  229. package/lib/types/validation/Validators/MinValidator.d.cts +74 -0
  230. package/lib/types/validation/Validators/MinValidator.d.mts +74 -0
  231. package/lib/types/validation/Validators/OptionValidator.d.cts +29 -0
  232. package/lib/types/validation/Validators/OptionValidator.d.mts +29 -0
  233. package/lib/types/validation/Validators/PasswordValidator.d.cts +28 -0
  234. package/lib/types/validation/Validators/PasswordValidator.d.mts +28 -0
  235. package/lib/types/validation/Validators/PatternValidator.d.cts +103 -0
  236. package/lib/types/validation/Validators/PatternValidator.d.mts +103 -0
  237. package/lib/types/validation/Validators/RequiredValidator.d.cts +74 -0
  238. package/lib/types/validation/Validators/RequiredValidator.d.mts +74 -0
  239. package/lib/types/validation/Validators/StepValidator.d.cts +29 -0
  240. package/lib/types/validation/Validators/StepValidator.d.mts +29 -0
  241. package/lib/types/validation/Validators/TypeValidator.d.cts +79 -0
  242. package/lib/types/validation/Validators/TypeValidator.d.mts +79 -0
  243. package/lib/types/validation/Validators/URLValidator.d.cts +61 -0
  244. package/lib/types/validation/Validators/URLValidator.d.mts +61 -0
  245. package/lib/types/validation/Validators/Validator.d.cts +65 -0
  246. package/lib/types/validation/Validators/Validator.d.mts +65 -0
  247. package/lib/types/validation/Validators/ValidatorRegistry.d.cts +41 -0
  248. package/lib/types/validation/Validators/ValidatorRegistry.d.mts +41 -0
  249. package/lib/types/validation/Validators/constants.d.cts +157 -0
  250. package/lib/types/validation/Validators/constants.d.mts +157 -0
  251. package/lib/types/validation/Validators/decorators.d.cts +12 -0
  252. package/lib/types/validation/Validators/decorators.d.mts +12 -0
  253. package/lib/types/validation/Validators/index.d.cts +26 -0
  254. package/lib/types/validation/Validators/index.d.mts +26 -0
  255. package/lib/types/validation/Validators/utils.d.cts +75 -0
  256. package/lib/types/validation/Validators/utils.d.mts +75 -0
  257. package/lib/types/validation/decorators.d.cts +313 -0
  258. package/lib/types/validation/decorators.d.mts +313 -0
  259. package/lib/types/validation/index.d.cts +9 -0
  260. package/lib/types/validation/index.d.mts +9 -0
  261. package/lib/types/validation/types.d.cts +309 -0
  262. package/lib/types/validation/types.d.mts +309 -0
  263. package/package.json +1 -1
  264. package/lib/cjs/constants/errors.js.map +0 -1
  265. package/lib/cjs/constants/index.js.map +0 -1
  266. package/lib/cjs/constants/validation.js.map +0 -1
  267. package/lib/cjs/index.js.map +0 -1
  268. package/lib/cjs/model/Builder.js.map +0 -1
  269. package/lib/cjs/model/Model.js.map +0 -1
  270. package/lib/cjs/model/ModelErrorDefinition.js.map +0 -1
  271. package/lib/cjs/model/ModelRegistry.js.map +0 -1
  272. package/lib/cjs/model/constants.js.map +0 -1
  273. package/lib/cjs/model/construction.js.map +0 -1
  274. package/lib/cjs/model/decorators.js.map +0 -1
  275. package/lib/cjs/model/index.js.map +0 -1
  276. package/lib/cjs/model/types.js.map +0 -1
  277. package/lib/cjs/model/utils.js.map +0 -1
  278. package/lib/cjs/model/validation.js.map +0 -1
  279. package/lib/cjs/overrides/Metadata.js.map +0 -1
  280. package/lib/cjs/overrides/index.js.map +0 -1
  281. package/lib/cjs/overrides/overrides.js.map +0 -1
  282. package/lib/cjs/overrides/types.js.map +0 -1
  283. package/lib/cjs/types/index.js.map +0 -1
  284. package/lib/cjs/utils/DateBuilder.js.map +0 -1
  285. package/lib/cjs/utils/PathProxy.js.map +0 -1
  286. package/lib/cjs/utils/constants.js.map +0 -1
  287. package/lib/cjs/utils/dates.js.map +0 -1
  288. package/lib/cjs/utils/equality.js.map +0 -1
  289. package/lib/cjs/utils/hashing.js.map +0 -1
  290. package/lib/cjs/utils/index.js.map +0 -1
  291. package/lib/cjs/utils/registry.js.map +0 -1
  292. package/lib/cjs/utils/serialization.js.map +0 -1
  293. package/lib/cjs/utils/serializers.js.map +0 -1
  294. package/lib/cjs/utils/strings.js.map +0 -1
  295. package/lib/cjs/utils/types.js.map +0 -1
  296. package/lib/cjs/validation/Validation.js.map +0 -1
  297. package/lib/cjs/validation/Validators/AsyncValidator.js.map +0 -1
  298. package/lib/cjs/validation/Validators/BaseValidator.js.map +0 -1
  299. package/lib/cjs/validation/Validators/DateValidator.js.map +0 -1
  300. package/lib/cjs/validation/Validators/DiffValidator.js.map +0 -1
  301. package/lib/cjs/validation/Validators/EmailValidator.js.map +0 -1
  302. package/lib/cjs/validation/Validators/EqualsValidator.js.map +0 -1
  303. package/lib/cjs/validation/Validators/GreaterThanOrEqualValidator.js.map +0 -1
  304. package/lib/cjs/validation/Validators/GreaterThanValidator.js.map +0 -1
  305. package/lib/cjs/validation/Validators/LessThanOrEqualValidator.js.map +0 -1
  306. package/lib/cjs/validation/Validators/LessThanValidator.js.map +0 -1
  307. package/lib/cjs/validation/Validators/ListValidator.js.map +0 -1
  308. package/lib/cjs/validation/Validators/MaxLengthValidator.js.map +0 -1
  309. package/lib/cjs/validation/Validators/MaxValidator.js.map +0 -1
  310. package/lib/cjs/validation/Validators/MinLengthValidator.js.map +0 -1
  311. package/lib/cjs/validation/Validators/MinValidator.js.map +0 -1
  312. package/lib/cjs/validation/Validators/OptionValidator.js.map +0 -1
  313. package/lib/cjs/validation/Validators/PasswordValidator.js.map +0 -1
  314. package/lib/cjs/validation/Validators/PatternValidator.js.map +0 -1
  315. package/lib/cjs/validation/Validators/RequiredValidator.js.map +0 -1
  316. package/lib/cjs/validation/Validators/StepValidator.js.map +0 -1
  317. package/lib/cjs/validation/Validators/TypeValidator.js.map +0 -1
  318. package/lib/cjs/validation/Validators/URLValidator.js.map +0 -1
  319. package/lib/cjs/validation/Validators/Validator.js.map +0 -1
  320. package/lib/cjs/validation/Validators/ValidatorRegistry.js.map +0 -1
  321. package/lib/cjs/validation/Validators/constants.js.map +0 -1
  322. package/lib/cjs/validation/Validators/decorators.js.map +0 -1
  323. package/lib/cjs/validation/Validators/index.js.map +0 -1
  324. package/lib/cjs/validation/Validators/utils.js.map +0 -1
  325. package/lib/cjs/validation/decorators.js.map +0 -1
  326. package/lib/cjs/validation/index.js.map +0 -1
  327. package/lib/cjs/validation/types.js.map +0 -1
@@ -18,4 +18,5 @@ exports.COMPARISON_ERROR_MESSAGES = {
18
18
  TYPE_MISMATCH_COMPARISON: "Cannot compare values of different types: {0} and {1}.",
19
19
  NAN_COMPARISON: "Comparison not supported for NaN values",
20
20
  };
21
+ //# sourceMappingURL=errors.js.map
21
22
  //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["errors.js"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACU,QAAA,yBAAyB,GAAG;IACrC,YAAY,EAAE,sEAAsE;IACpF,6BAA6B,EAAE,uFAAuF;IACtH,gBAAgB,EAAE,0EAA0E;IAC5F,kBAAkB,EAAE,wDAAwD;IAC5E,4BAA4B,EAAE,mDAAmD;IACjF,4BAA4B,EAAE,kDAAkD;IAChF,uBAAuB,EAAE,yCAAyC;IAClE,wBAAwB,EAAE,wDAAwD;IAClF,cAAc,EAAE,yCAAyC;CAC5D,CAAC;AACF,kCAAkC"}
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./errors.cjs"), exports);
18
18
  __exportStar(require("./validation.cjs"), exports);
19
+ //# sourceMappingURL=index.js.map
19
20
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC;AAChC,iCAAiC"}
@@ -17,4 +17,5 @@ exports.VALIDATION_PARENT_KEY = Symbol("_parent");
17
17
  * @memberOf module:decorator-validation
18
18
  */
19
19
  exports.ASYNC_META_KEY = Symbol("isAsync");
20
+ //# sourceMappingURL=validation.js.map
20
21
  //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["validation.js"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACU,QAAA,qBAAqB,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AACvD;;;;;;GAMG;AACU,QAAA,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAChD,sCAAsC"}
package/lib/cjs/index.cjs CHANGED
@@ -35,7 +35,7 @@ __exportStar(require("./model/index.cjs"), exports);
35
35
  * @const VERSION
36
36
  * @memberOf module:decorator-validation
37
37
  */
38
- exports.VERSION = "1.13.0";
38
+ exports.VERSION = "1.15.0";
39
39
  /**
40
40
  * @description Current version of the reflection package
41
41
  * @summary Stores the semantic version number of the package
@@ -44,4 +44,5 @@ exports.VERSION = "1.13.0";
44
44
  */
45
45
  exports.PACKAGE_NAME = "@decaf-ts/decorator-validation";
46
46
  decoration_1.Metadata.registerLibrary(exports.PACKAGE_NAME, exports.VERSION);
47
+ //# sourceMappingURL=index.js.map
47
48
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;GAMG;AACH,qDAAgD;AAChD,uDAAqC;AACrC,uDAAqC;AACrC,mDAAiC;AACjC,mDAAiC;AACjC,wDAAsC;AACtC,mDAAiC;AACjC;;;;;GAKG;AACU,QAAA,OAAO,GAAG,aAAa,CAAC;AACrC;;;;;GAKG;AACU,QAAA,YAAY,GAAG,aAAa,CAAC;AAC1C,qBAAQ,CAAC,eAAe,CAAC,oBAAY,EAAE,eAAO,CAAC,CAAC;AAChD,iCAAiC"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ModelBuilder = exports.AttributeBuilder = void 0;
4
- const Model_1 = require("./Model.cjs");
4
+ const Model_js_1 = require("./Model.cjs");
5
5
  const typed_object_accumulator_1 = require("typed-object-accumulator");
6
6
  const decoration_1 = require("@decaf-ts/decoration");
7
- const decorators_1 = require("./decorators.cjs");
8
- const decorators_2 = require("./../validation/decorators.cjs");
9
- const constants_1 = require("./../validation/Validators/constants.cjs");
10
- const Validation_1 = require("./../validation/Validation.cjs");
7
+ const decorators_js_1 = require("./decorators.cjs");
8
+ const decorators_js_2 = require("./../validation/decorators.cjs");
9
+ const constants_js_1 = require("./../validation/Validators/constants.cjs");
10
+ const Validation_js_1 = require("./../validation/Validation.cjs");
11
11
  class AttributeBuilder {
12
12
  constructor(parent, attr, declaredType) {
13
13
  this.parent = parent;
@@ -37,92 +37,92 @@ class AttributeBuilder {
37
37
  const message = typeof messageOrMeta === "string"
38
38
  ? messageOrMeta
39
39
  : AttributeBuilder.resolveMessage(meta);
40
- return this.decorate((0, decorators_2.required)(message));
40
+ return this.decorate((0, decorators_js_2.required)(message));
41
41
  }
42
42
  min(valueOrMeta, message) {
43
43
  const meta = AttributeBuilder.asMeta(valueOrMeta);
44
- const value = meta?.[constants_1.ValidationKeys.MIN] ??
44
+ const value = meta?.[constants_js_1.ValidationKeys.MIN] ??
45
45
  (meta ? undefined : valueOrMeta);
46
46
  if (value === undefined)
47
- throw new Error(`Missing ${constants_1.ValidationKeys.MIN} for ${String(this.attr)}`);
48
- return this.decorate((0, decorators_2.min)(value, AttributeBuilder.resolveMessage(meta, message)));
47
+ throw new Error(`Missing ${constants_js_1.ValidationKeys.MIN} for ${String(this.attr)}`);
48
+ return this.decorate((0, decorators_js_2.min)(value, AttributeBuilder.resolveMessage(meta, message)));
49
49
  }
50
50
  max(valueOrMeta, message) {
51
51
  const meta = AttributeBuilder.asMeta(valueOrMeta);
52
- const value = meta?.[constants_1.ValidationKeys.MAX] ??
52
+ const value = meta?.[constants_js_1.ValidationKeys.MAX] ??
53
53
  (meta ? undefined : valueOrMeta);
54
54
  if (value === undefined)
55
- throw new Error(`Missing ${constants_1.ValidationKeys.MAX} for ${String(this.attr)}`);
56
- return this.decorate((0, decorators_2.max)(value, AttributeBuilder.resolveMessage(meta, message)));
55
+ throw new Error(`Missing ${constants_js_1.ValidationKeys.MAX} for ${String(this.attr)}`);
56
+ return this.decorate((0, decorators_js_2.max)(value, AttributeBuilder.resolveMessage(meta, message)));
57
57
  }
58
58
  step(valueOrMeta, message) {
59
59
  const meta = AttributeBuilder.asMeta(valueOrMeta);
60
- const value = meta?.[constants_1.ValidationKeys.STEP] ??
60
+ const value = meta?.[constants_js_1.ValidationKeys.STEP] ??
61
61
  (meta ? undefined : valueOrMeta);
62
62
  if (value === undefined)
63
- throw new Error(`Missing ${constants_1.ValidationKeys.STEP} for ${String(this.attr)}`);
64
- return this.decorate((0, decorators_2.step)(value, AttributeBuilder.resolveMessage(meta, message)));
63
+ throw new Error(`Missing ${constants_js_1.ValidationKeys.STEP} for ${String(this.attr)}`);
64
+ return this.decorate((0, decorators_js_2.step)(value, AttributeBuilder.resolveMessage(meta, message)));
65
65
  }
66
66
  minlength(valueOrMeta, message) {
67
67
  const meta = AttributeBuilder.asMeta(valueOrMeta);
68
- const value = meta?.[constants_1.ValidationKeys.MIN_LENGTH] ??
68
+ const value = meta?.[constants_js_1.ValidationKeys.MIN_LENGTH] ??
69
69
  (meta ? undefined : valueOrMeta);
70
70
  if (value === undefined)
71
- throw new Error(`Missing ${constants_1.ValidationKeys.MIN_LENGTH} for ${String(this.attr)}`);
72
- return this.decorate((0, decorators_2.minlength)(value, AttributeBuilder.resolveMessage(meta, message)));
71
+ throw new Error(`Missing ${constants_js_1.ValidationKeys.MIN_LENGTH} for ${String(this.attr)}`);
72
+ return this.decorate((0, decorators_js_2.minlength)(value, AttributeBuilder.resolveMessage(meta, message)));
73
73
  }
74
74
  maxlength(valueOrMeta, message) {
75
75
  const meta = AttributeBuilder.asMeta(valueOrMeta);
76
- const value = meta?.[constants_1.ValidationKeys.MAX_LENGTH] ??
76
+ const value = meta?.[constants_js_1.ValidationKeys.MAX_LENGTH] ??
77
77
  (meta ? undefined : valueOrMeta);
78
78
  if (value === undefined)
79
- throw new Error(`Missing ${constants_1.ValidationKeys.MAX_LENGTH} for ${String(this.attr)}`);
80
- return this.decorate((0, decorators_2.maxlength)(value, AttributeBuilder.resolveMessage(meta, message)));
79
+ throw new Error(`Missing ${constants_js_1.ValidationKeys.MAX_LENGTH} for ${String(this.attr)}`);
80
+ return this.decorate((0, decorators_js_2.maxlength)(value, AttributeBuilder.resolveMessage(meta, message)));
81
81
  }
82
82
  pattern(valueOrMeta, message) {
83
83
  const meta = AttributeBuilder.asMeta(valueOrMeta);
84
- const rawPattern = meta?.[constants_1.ValidationKeys.PATTERN] ??
84
+ const rawPattern = meta?.[constants_js_1.ValidationKeys.PATTERN] ??
85
85
  (meta ? undefined : valueOrMeta);
86
86
  const regex = AttributeBuilder.patternFromString(rawPattern) ?? /.*/;
87
- return this.decorate((0, decorators_2.pattern)(regex, AttributeBuilder.resolveMessage(meta, message)));
87
+ return this.decorate((0, decorators_js_2.pattern)(regex, AttributeBuilder.resolveMessage(meta, message)));
88
88
  }
89
89
  email(messageOrMeta) {
90
90
  const meta = AttributeBuilder.asMeta(messageOrMeta);
91
91
  const message = typeof messageOrMeta === "string"
92
92
  ? messageOrMeta
93
93
  : AttributeBuilder.resolveMessage(meta);
94
- return this.decorate((0, decorators_2.email)(message));
94
+ return this.decorate((0, decorators_js_2.email)(message));
95
95
  }
96
96
  url(messageOrMeta) {
97
97
  const meta = AttributeBuilder.asMeta(messageOrMeta);
98
98
  const message = typeof messageOrMeta === "string"
99
99
  ? messageOrMeta
100
100
  : AttributeBuilder.resolveMessage(meta);
101
- return this.decorate((0, decorators_2.url)(message));
101
+ return this.decorate((0, decorators_js_2.url)(message));
102
102
  }
103
103
  type(valueOrMeta, message) {
104
104
  const meta = AttributeBuilder.asMeta(valueOrMeta);
105
105
  const types = meta?.customTypes ?? meta?.type ?? (meta ? undefined : valueOrMeta);
106
- return this.decorate((0, decorators_2.type)(types, AttributeBuilder.resolveMessage(meta, message)));
106
+ return this.decorate((0, decorators_js_2.type)(types, AttributeBuilder.resolveMessage(meta, message)));
107
107
  }
108
108
  date(formatOrMeta, message) {
109
109
  const meta = AttributeBuilder.asMeta(formatOrMeta);
110
- const format = meta?.[constants_1.ValidationKeys.FORMAT] ??
110
+ const format = meta?.[constants_js_1.ValidationKeys.FORMAT] ??
111
111
  (meta ? undefined : formatOrMeta);
112
- return this.decorate((0, decorators_2.date)(format, AttributeBuilder.resolveMessage(meta, message)));
112
+ return this.decorate((0, decorators_js_2.date)(format, AttributeBuilder.resolveMessage(meta, message)));
113
113
  }
114
114
  password(valueOrMeta, message) {
115
115
  const meta = AttributeBuilder.asMeta(valueOrMeta);
116
- const rawPattern = meta?.[constants_1.ValidationKeys.PATTERN] ??
116
+ const rawPattern = meta?.[constants_js_1.ValidationKeys.PATTERN] ??
117
117
  (meta ? undefined : valueOrMeta);
118
118
  const regex = AttributeBuilder.patternFromString(rawPattern);
119
- return this.decorate((0, decorators_2.password)(regex, AttributeBuilder.resolveMessage(meta, message)));
119
+ return this.decorate((0, decorators_js_2.password)(regex, AttributeBuilder.resolveMessage(meta, message)));
120
120
  }
121
121
  list(clazzOrMeta, collection, message) {
122
122
  const meta = AttributeBuilder.asMeta(clazzOrMeta);
123
123
  const clazz = meta?.clazz ?? (meta ? undefined : clazzOrMeta);
124
124
  const typeOfCollection = meta?.type ?? collection;
125
- return this.decorate((0, decorators_2.list)(clazz, typeOfCollection, AttributeBuilder.resolveMessage(meta, message)));
125
+ return this.decorate((0, decorators_js_2.list)(clazz, typeOfCollection, AttributeBuilder.resolveMessage(meta, message)));
126
126
  }
127
127
  set(clazzOrMeta, message) {
128
128
  if (AttributeBuilder.isMetadataPayload(clazzOrMeta))
@@ -131,8 +131,8 @@ class AttributeBuilder {
131
131
  }
132
132
  enum(valueOrMeta, message) {
133
133
  const meta = AttributeBuilder.asMeta(valueOrMeta);
134
- const values = meta?.[constants_1.ValidationKeys.ENUM] ?? (meta ? undefined : valueOrMeta);
135
- return this.decorate((0, decorators_2.option)(values, AttributeBuilder.resolveMessage(meta, message)));
134
+ const values = meta?.[constants_js_1.ValidationKeys.ENUM] ?? (meta ? undefined : valueOrMeta);
135
+ return this.decorate((0, decorators_js_2.option)(values, AttributeBuilder.resolveMessage(meta, message)));
136
136
  }
137
137
  option(value, message) {
138
138
  return this.enum(value, message);
@@ -180,43 +180,43 @@ class AttributeBuilder {
180
180
  return { target: propertyOrMeta, options };
181
181
  }
182
182
  equals(propertyOrMeta, options) {
183
- const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_1.ValidationKeys.EQUALS, options);
184
- return this.decorate((0, decorators_2.eq)(target, resolvedOptions));
183
+ const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_js_1.ValidationKeys.EQUALS, options);
184
+ return this.decorate((0, decorators_js_2.eq)(target, resolvedOptions));
185
185
  }
186
186
  eq(propertyOrMeta, options) {
187
187
  return this.equals(propertyOrMeta, options);
188
188
  }
189
189
  different(propertyOrMeta, options) {
190
- const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_1.ValidationKeys.DIFF, options);
191
- return this.decorate((0, decorators_2.diff)(target, resolvedOptions));
190
+ const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_js_1.ValidationKeys.DIFF, options);
191
+ return this.decorate((0, decorators_js_2.diff)(target, resolvedOptions));
192
192
  }
193
193
  diff(propertyOrMeta, options) {
194
194
  return this.different(propertyOrMeta, options);
195
195
  }
196
196
  lessThan(propertyOrMeta, options) {
197
- const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_1.ValidationKeys.LESS_THAN, options);
198
- return this.decorate((0, decorators_2.lt)(target, resolvedOptions));
197
+ const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_js_1.ValidationKeys.LESS_THAN, options);
198
+ return this.decorate((0, decorators_js_2.lt)(target, resolvedOptions));
199
199
  }
200
200
  lt(propertyOrMeta, options) {
201
201
  return this.lessThan(propertyOrMeta, options);
202
202
  }
203
203
  lessThanOrEqual(propertyOrMeta, options) {
204
- const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_1.ValidationKeys.LESS_THAN_OR_EQUAL, options);
205
- return this.decorate((0, decorators_2.lte)(target, resolvedOptions));
204
+ const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_js_1.ValidationKeys.LESS_THAN_OR_EQUAL, options);
205
+ return this.decorate((0, decorators_js_2.lte)(target, resolvedOptions));
206
206
  }
207
207
  lte(propertyOrMeta, options) {
208
208
  return this.lessThanOrEqual(propertyOrMeta, options);
209
209
  }
210
210
  greaterThan(propertyOrMeta, options) {
211
- const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_1.ValidationKeys.GREATER_THAN, options);
212
- return this.decorate((0, decorators_2.gt)(target, resolvedOptions));
211
+ const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_js_1.ValidationKeys.GREATER_THAN, options);
212
+ return this.decorate((0, decorators_js_2.gt)(target, resolvedOptions));
213
213
  }
214
214
  gt(propertyOrMeta, options) {
215
215
  return this.greaterThan(propertyOrMeta, options);
216
216
  }
217
217
  greaterThanOrEqual(propertyOrMeta, options) {
218
- const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_1.ValidationKeys.GREATER_THAN_OR_EQUAL, options);
219
- return this.decorate((0, decorators_2.gte)(target, resolvedOptions));
218
+ const { target, options: resolvedOptions } = this.resolveComparison(propertyOrMeta, constants_js_1.ValidationKeys.GREATER_THAN_OR_EQUAL, options);
219
+ return this.decorate((0, decorators_js_2.gte)(target, resolvedOptions));
220
220
  }
221
221
  gte(propertyOrMeta, options) {
222
222
  return this.greaterThanOrEqual(propertyOrMeta, options);
@@ -347,7 +347,7 @@ class ModelBuilder extends typed_object_accumulator_1.ObjectAccumulator {
347
347
  build() {
348
348
  if (!this._name)
349
349
  throw new Error("name is required");
350
- const Parent = this._parent ?? Model_1.Model;
350
+ const Parent = this._parent ?? Model_js_1.Model;
351
351
  class DynamicBuiltClass extends Parent {
352
352
  constructor(arg) {
353
353
  super(arg);
@@ -360,7 +360,7 @@ class ModelBuilder extends typed_object_accumulator_1.ObjectAccumulator {
360
360
  for (const attribute of this.attributes.values()) {
361
361
  attribute.build(DynamicBuiltClass);
362
362
  }
363
- let result = (0, decorators_1.model)()(DynamicBuiltClass);
363
+ let result = (0, decorators_js_1.model)()(DynamicBuiltClass);
364
364
  for (const decorator of this._classDecorators) {
365
365
  const decorated = decorator(result);
366
366
  if (decorated)
@@ -392,7 +392,7 @@ class ModelBuilder extends typed_object_accumulator_1.ObjectAccumulator {
392
392
  continue;
393
393
  }
394
394
  try {
395
- const decoratorFactory = Validation_1.Validation.decoratorFromKey(key);
395
+ const decoratorFactory = Validation_js_1.Validation.decoratorFromKey(key);
396
396
  const decorator = typeof decoratorFactory === "function"
397
397
  ? decoratorFactory(validationMeta)
398
398
  : decoratorFactory;
@@ -408,4 +408,5 @@ class ModelBuilder extends typed_object_accumulator_1.ObjectAccumulator {
408
408
  }
409
409
  }
410
410
  exports.ModelBuilder = ModelBuilder;
411
+ //# sourceMappingURL=Builder.js.map
411
412
  //# sourceMappingURL=Builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Builder.js","sourceRoot":"","sources":["Builder.js"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Model = void 0;
4
- const serialization_1 = require("./../utils/serialization.cjs");
5
- const validation_1 = require("./validation.cjs");
6
- const hashing_1 = require("./../utils/hashing.cjs");
7
- const constants_1 = require("./../utils/constants.cjs");
8
- const constants_2 = require("./../constants/index.cjs");
4
+ const serialization_js_1 = require("./../utils/serialization.cjs");
5
+ const validation_js_1 = require("./validation.cjs");
6
+ const hashing_js_1 = require("./../utils/hashing.cjs");
7
+ const constants_js_1 = require("./../utils/constants.cjs");
8
+ const index_js_1 = require("./../constants/index.cjs");
9
9
  const decoration_1 = require("@decaf-ts/decoration");
10
- const equality_1 = require("./../utils/equality.cjs");
11
- const ModelRegistry_1 = require("./ModelRegistry.cjs");
10
+ const equality_js_1 = require("./../utils/equality.cjs");
11
+ const ModelRegistry_js_1 = require("./ModelRegistry.cjs");
12
12
  /**
13
13
  * @summary Abstract class representing a Validatable Model object
14
14
  * @description Meant to be used as a base class for all Model classes
@@ -38,7 +38,7 @@ class Model {
38
38
  constructor(arg = undefined) { }
39
39
  isAsync() {
40
40
  const self = this;
41
- return !!(self[constants_2.ASYNC_META_KEY] ?? self?.constructor[constants_2.ASYNC_META_KEY]);
41
+ return !!(self[index_js_1.ASYNC_META_KEY] ?? self?.constructor[index_js_1.ASYNC_META_KEY]);
42
42
  }
43
43
  /**
44
44
  * @description Validates the model object against its defined validation rules
@@ -48,7 +48,7 @@ class Model {
48
48
  * @return {ModelErrorDefinition | undefined} - Returns a ModelErrorDefinition object if validation errors exist, otherwise undefined
49
49
  */
50
50
  hasErrors(...exceptions) {
51
- return (0, validation_1.validate)(this, this.isAsync(), ...exceptions);
51
+ return (0, validation_js_1.validate)(this, this.isAsync(), ...exceptions);
52
52
  }
53
53
  /**
54
54
  * @description Determines if this model is equal to another object
@@ -59,7 +59,7 @@ class Model {
59
59
  * @return {boolean} - True if objects are equal, false otherwise
60
60
  */
61
61
  equals(obj, ...exceptions) {
62
- return (0, equality_1.isEqual)(this, obj, ...exceptions);
62
+ return (0, equality_js_1.isEqual)(this, obj, ...exceptions);
63
63
  }
64
64
  compare(other, ...exceptions) {
65
65
  const props = decoration_1.Metadata.properties(this.constructor);
@@ -77,7 +77,7 @@ class Model {
77
77
  acc[k] = { other: undefined, current: this[k] };
78
78
  return acc;
79
79
  }
80
- if ((0, equality_1.isEqual)(this[k], other[k]))
80
+ if ((0, equality_js_1.isEqual)(this[k], other[k]))
81
81
  return acc;
82
82
  if (Model.isPropertyModel(this, k)) {
83
83
  const nestedDiff = this[k].compare(other[k]);
@@ -92,7 +92,7 @@ class Model {
92
92
  return acc;
93
93
  }
94
94
  const listDiff = this[k].map((item, i) => {
95
- if ((0, equality_1.isEqual)(item, other[k][i]))
95
+ if ((0, equality_js_1.isEqual)(item, other[k][i]))
96
96
  return null;
97
97
  if (item instanceof Model &&
98
98
  other[k][i] instanceof Model) {
@@ -149,15 +149,15 @@ class Model {
149
149
  static deserialize(str) {
150
150
  let metadata;
151
151
  try {
152
- metadata = decoration_1.Metadata.get(this.constructor, constants_1.ModelKeys.SERIALIZATION);
152
+ metadata = decoration_1.Metadata.get(this.constructor, constants_js_1.ModelKeys.SERIALIZATION);
153
153
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
154
154
  }
155
155
  catch (e) {
156
156
  metadata = undefined;
157
157
  }
158
158
  if (metadata && metadata.serializer)
159
- return serialization_1.Serialization.deserialize(str, metadata.serializer, ...(metadata.args || []));
160
- return serialization_1.Serialization.deserialize(str);
159
+ return serialization_js_1.Serialization.deserialize(str, metadata.serializer, ...(metadata.args || []));
160
+ return serialization_js_1.Serialization.deserialize(str);
161
161
  }
162
162
  /**
163
163
  * @description Copies properties from a source object to a model instance
@@ -220,7 +220,7 @@ class Model {
220
220
  * M-->>C: Return updated self
221
221
  */
222
222
  static fromModel(self, obj) {
223
- return ModelRegistry_1.ModelRegistryManager.fromModel(self, obj);
223
+ return ModelRegistry_js_1.ModelRegistryManager.fromModel(self, obj);
224
224
  }
225
225
  /**
226
226
  * @description Configures the global model builder function
@@ -230,7 +230,7 @@ class Model {
230
230
  * @return {void}
231
231
  */
232
232
  static setBuilder(builder) {
233
- ModelRegistry_1.ModelRegistryManager.setBuilder(builder);
233
+ ModelRegistry_js_1.ModelRegistryManager.setBuilder(builder);
234
234
  }
235
235
  /**
236
236
  * @description Retrieves the currently configured global model builder function
@@ -239,7 +239,7 @@ class Model {
239
239
  * @return {ModelBuilderFunction | undefined} - The current global builder function or undefined if not set
240
240
  */
241
241
  static getBuilder() {
242
- return ModelRegistry_1.ModelRegistryManager.getBuilder();
242
+ return ModelRegistry_js_1.ModelRegistryManager.getBuilder();
243
243
  }
244
244
  /**
245
245
  * @description Provides access to the current model registry
@@ -249,7 +249,7 @@ class Model {
249
249
  * @private
250
250
  */
251
251
  static getRegistry() {
252
- return ModelRegistry_1.ModelRegistryManager.getRegistry();
252
+ return ModelRegistry_js_1.ModelRegistryManager.getRegistry();
253
253
  }
254
254
  /**
255
255
  * @description Configures the model registry to be used by the Model system
@@ -259,7 +259,7 @@ class Model {
259
259
  * @return {void}
260
260
  */
261
261
  static setRegistry(modelRegistry) {
262
- ModelRegistry_1.ModelRegistryManager.setRegistry(modelRegistry);
262
+ ModelRegistry_js_1.ModelRegistryManager.setRegistry(modelRegistry);
263
263
  }
264
264
  /**
265
265
  * @description Registers a model constructor with the model registry
@@ -273,7 +273,7 @@ class Model {
273
273
  * @see ModelRegistry
274
274
  */
275
275
  static register(constructor, name) {
276
- return ModelRegistry_1.ModelRegistryManager.getRegistry().register(constructor, name);
276
+ return ModelRegistry_js_1.ModelRegistryManager.getRegistry().register(constructor, name);
277
277
  }
278
278
  /**
279
279
  * @description Retrieves a registered model constructor by name
@@ -286,7 +286,7 @@ class Model {
286
286
  * @see ModelRegistry
287
287
  */
288
288
  static get(name) {
289
- return ModelRegistry_1.ModelRegistryManager.getRegistry().get(name);
289
+ return ModelRegistry_js_1.ModelRegistryManager.getRegistry().get(name);
290
290
  }
291
291
  /**
292
292
  * @description Creates a model instance from a plain object
@@ -325,7 +325,7 @@ class Model {
325
325
  * @return {boolean} - True if the models are equal, false otherwise
326
326
  */
327
327
  static equals(obj1, obj2, ...exceptions) {
328
- return (0, equality_1.isEqual)(obj1, obj2, ...exceptions);
328
+ return (0, equality_js_1.isEqual)(obj1, obj2, ...exceptions);
329
329
  }
330
330
  /**
331
331
  * @description Validates a model instance against its validation rules
@@ -338,7 +338,7 @@ class Model {
338
338
  * @return {ModelErrorDefinition | undefined} - Returns validation errors if any, otherwise undefined
339
339
  */
340
340
  static hasErrors(model, async, ...propsToIgnore) {
341
- return (0, validation_1.validate)(model, async, ...propsToIgnore);
341
+ return (0, validation_js_1.validate)(model, async, ...propsToIgnore);
342
342
  }
343
343
  /**
344
344
  * @description Converts a model instance to a serialized string
@@ -351,15 +351,15 @@ class Model {
351
351
  static serialize(model) {
352
352
  let metadata;
353
353
  try {
354
- metadata = decoration_1.Metadata.get(model.constructor, constants_1.ModelKeys.SERIALIZATION);
354
+ metadata = decoration_1.Metadata.get(model.constructor, constants_js_1.ModelKeys.SERIALIZATION);
355
355
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
356
356
  }
357
357
  catch (e) {
358
358
  metadata = undefined;
359
359
  }
360
360
  if (metadata && metadata.serializer)
361
- return serialization_1.Serialization.serialize(this, metadata.serializer, ...(metadata.args || []));
362
- return serialization_1.Serialization.serialize(model);
361
+ return serialization_js_1.Serialization.serialize(this, metadata.serializer, ...(metadata.args || []));
362
+ return serialization_js_1.Serialization.serialize(model);
363
363
  }
364
364
  /**
365
365
  * @description Generates a hash string for a model instance
@@ -370,10 +370,10 @@ class Model {
370
370
  * @return {string} - The hash string representing the model
371
371
  */
372
372
  static hash(model) {
373
- const metadata = decoration_1.Metadata.get(model.constructor, constants_1.ModelKeys.HASHING);
373
+ const metadata = decoration_1.Metadata.get(model.constructor, constants_js_1.ModelKeys.HASHING);
374
374
  if (metadata && metadata.algorithm)
375
- return hashing_1.Hashing.hash(model, metadata.algorithm, ...(metadata.args || []));
376
- return hashing_1.Hashing.hash(model);
375
+ return hashing_js_1.Hashing.hash(model, metadata.algorithm, ...(metadata.args || []));
376
+ return hashing_js_1.Hashing.hash(model);
377
377
  }
378
378
  /**
379
379
  * @description Determines if an object is a model instance or has model metadata
@@ -418,4 +418,5 @@ class Model {
418
418
  }
419
419
  }
420
420
  exports.Model = Model;
421
+ //# sourceMappingURL=Model.js.map
421
422
  //# sourceMappingURL=Model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Model.js","sourceRoot":"","sources":["Model.js"],"names":[],"mappings":"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"}
@@ -54,4 +54,5 @@ class ModelErrorDefinition {
54
54
  }
55
55
  }
56
56
  exports.ModelErrorDefinition = ModelErrorDefinition;
57
+ //# sourceMappingURL=ModelErrorDefinition.js.map
57
58
  //# sourceMappingURL=ModelErrorDefinition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModelErrorDefinition.js","sourceRoot":"","sources":["ModelErrorDefinition.js"],"names":[],"mappings":";;;AAAA;;;;;;;;;;GAUG;AACH,MAAa,oBAAoB;IAC7B,YAAY,MAAM;QACd,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC;gBAClE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE;oBAC9B,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,KAAK;oBACnB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC;oBACnB,QAAQ,EAAE,KAAK;iBAClB,CAAC,CAAC;QACX,CAAC;IACL,CAAC;IACD;;;;OAIG;IACH,QAAQ;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5D,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC;aAC7B,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACxB,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC9D,IAAI,CAAC,SAAS;oBACV,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;oBAE5B,SAAS,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,OAAO,SAAS,CAAC;YACrB,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,IAAI,SAAS,EAAE,CAAC;gBACZ,SAAS,GAAG,GAAG,IAAI,MAAM,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,KAAK;oBACN,KAAK,GAAG,SAAS,CAAC;;oBAElB,KAAK,IAAI,KAAK,SAAS,EAAE,CAAC;YAClC,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC;CACJ;AAxCD,oDAwCC;AACD,gDAAgD"}
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ModelRegistryManager = void 0;
4
4
  exports.bulkModelRegister = bulkModelRegister;
5
5
  const decoration_1 = require("@decaf-ts/decoration");
6
- const constants_1 = require("./constants.cjs");
7
- const index_1 = require("./../validation/index.cjs");
6
+ const constants_js_1 = require("./constants.cjs");
7
+ const index_js_1 = require("./../validation/index.cjs");
8
8
  let modelBuilderFunction;
9
9
  let actingModelRegistry;
10
10
  /**
@@ -200,7 +200,7 @@ class ModelRegistryManager {
200
200
  if (!decorators || !decorators.length)
201
201
  throw new Error(`failed to find decorators for property ${prop}`);
202
202
  const clazz = decorators.map((t) => typeof t === "function" && !t.name ? t() : t);
203
- const reserved = Object.values(constants_1.ReservedModels);
203
+ const reserved = Object.values(constants_js_1.ReservedModels);
204
204
  clazz.forEach((c) => {
205
205
  if (!reserved.includes(c))
206
206
  try {
@@ -208,14 +208,14 @@ class ModelRegistryManager {
208
208
  case "Array":
209
209
  case "Set": {
210
210
  const validation = decoration_1.Metadata.validationFor(self.constructor, prop);
211
- if (!validation || !validation[index_1.ValidationKeys.LIST])
211
+ if (!validation || !validation[index_js_1.ValidationKeys.LIST])
212
212
  break;
213
- const listDec = validation[index_1.ValidationKeys.LIST];
213
+ const listDec = validation[index_js_1.ValidationKeys.LIST];
214
214
  const clazzName = listDec.clazz
215
215
  .map((t) => typeof t === "function" && !t.name
216
216
  ? t()
217
217
  : t)
218
- .find((t) => !constants_1.jsTypes.includes(t.name));
218
+ .find((t) => !constants_js_1.jsTypes.includes(t.name));
219
219
  if (c.name === "Array")
220
220
  self[prop] = self[prop].map((el) => {
221
221
  return ["object", "function"].includes(typeof el) &&
@@ -293,4 +293,5 @@ function bulkModelRegister(...models) {
293
293
  ModelRegistryManager.getRegistry().register(constructor, m.name);
294
294
  });
295
295
  }
296
+ //# sourceMappingURL=ModelRegistry.js.map
296
297
  //# sourceMappingURL=ModelRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModelRegistry.js","sourceRoot":"","sources":["ModelRegistry.js"],"names":[],"mappings":"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"}