@warlock.js/seal 4.0.135 → 4.0.136

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 (379) hide show
  1. package/cjs/factory/validators.d.ts +1 -1
  2. package/cjs/factory/validators.d.ts.map +1 -1
  3. package/cjs/factory/validators.js +2 -2
  4. package/cjs/factory/validators.js.map +1 -1
  5. package/cjs/helpers/validation-helpers.d.ts +22 -0
  6. package/cjs/helpers/validation-helpers.d.ts.map +1 -1
  7. package/cjs/helpers/validation-helpers.js +56 -34
  8. package/cjs/helpers/validation-helpers.js.map +1 -1
  9. package/cjs/index.js +1 -1
  10. package/cjs/mutators/date-mutators.js +1 -1
  11. package/cjs/mutators/date-mutators.js.map +1 -1
  12. package/cjs/rules/array/array-rules.d.ts.map +1 -1
  13. package/cjs/rules/array/array-rules.js +1 -0
  14. package/cjs/rules/array/array-rules.js.map +1 -1
  15. package/cjs/rules/common/enum.d.ts.map +1 -1
  16. package/cjs/rules/common/enum.js +17 -3
  17. package/cjs/rules/common/enum.js.map +1 -1
  18. package/cjs/rules/common/equals-field-rules.d.ts.map +1 -1
  19. package/cjs/rules/common/equals-field-rules.js +1 -0
  20. package/cjs/rules/common/equals-field-rules.js.map +1 -1
  21. package/cjs/rules/common/type-rules.d.ts +4 -0
  22. package/cjs/rules/common/type-rules.d.ts.map +1 -1
  23. package/cjs/rules/common/type-rules.js +14 -1
  24. package/cjs/rules/common/type-rules.js.map +1 -1
  25. package/cjs/rules/common/unknown-key.js +2 -2
  26. package/cjs/rules/common/unknown-key.js.map +1 -1
  27. package/cjs/rules/conditional/forbidden-if-rules.d.ts.map +1 -1
  28. package/cjs/rules/conditional/forbidden-if-rules.js +6 -0
  29. package/cjs/rules/conditional/forbidden-if-rules.js.map +1 -1
  30. package/cjs/rules/conditional/index.d.ts +1 -0
  31. package/cjs/rules/conditional/index.d.ts.map +1 -1
  32. package/cjs/rules/conditional/present-if-rules.d.ts.map +1 -1
  33. package/cjs/rules/conditional/present-if-rules.js +2 -0
  34. package/cjs/rules/conditional/present-if-rules.js.map +1 -1
  35. package/cjs/rules/conditional/present-unless-rules.d.ts.map +1 -1
  36. package/cjs/rules/conditional/present-unless-rules.js +2 -0
  37. package/cjs/rules/conditional/present-unless-rules.js.map +1 -1
  38. package/cjs/rules/conditional/present-with-rules.d.ts.map +1 -1
  39. package/cjs/rules/conditional/present-with-rules.js +9 -2
  40. package/cjs/rules/conditional/present-with-rules.js.map +1 -1
  41. package/cjs/rules/conditional/present-without-rules.d.ts.map +1 -1
  42. package/cjs/rules/conditional/present-without-rules.js +9 -2
  43. package/cjs/rules/conditional/present-without-rules.js.map +1 -1
  44. package/cjs/rules/conditional/required-if-rules.d.ts.map +1 -1
  45. package/cjs/rules/conditional/required-if-rules.js +22 -7
  46. package/cjs/rules/conditional/required-if-rules.js.map +1 -1
  47. package/cjs/rules/conditional/required-unless-rules.d.ts.map +1 -1
  48. package/cjs/rules/conditional/required-unless-rules.js +2 -0
  49. package/cjs/rules/conditional/required-unless-rules.js.map +1 -1
  50. package/cjs/rules/conditional/required-when-rule.d.ts +18 -0
  51. package/cjs/rules/conditional/required-when-rule.d.ts.map +1 -0
  52. package/cjs/rules/conditional/required-when-rule.js +26 -0
  53. package/cjs/rules/conditional/required-when-rule.js.map +1 -0
  54. package/cjs/rules/conditional/required-with-rules.d.ts.map +1 -1
  55. package/cjs/rules/conditional/required-with-rules.js +1 -0
  56. package/cjs/rules/conditional/required-with-rules.js.map +1 -1
  57. package/cjs/rules/conditional/required-without-rules.d.ts.map +1 -1
  58. package/cjs/rules/conditional/required-without-rules.js +1 -0
  59. package/cjs/rules/conditional/required-without-rules.js.map +1 -1
  60. package/cjs/rules/core/equal.d.ts.map +1 -1
  61. package/cjs/rules/core/equal.js +1 -0
  62. package/cjs/rules/core/equal.js.map +1 -1
  63. package/cjs/rules/core/required.d.ts +1 -1
  64. package/cjs/rules/core/required.js +1 -1
  65. package/cjs/rules/date/date-comparison-rules.d.ts.map +1 -1
  66. package/cjs/rules/date/date-comparison-rules.js +2 -0
  67. package/cjs/rules/date/date-comparison-rules.js.map +1 -1
  68. package/cjs/rules/date/date-day-rules.d.ts.map +1 -1
  69. package/cjs/rules/date/date-day-rules.js +4 -1
  70. package/cjs/rules/date/date-day-rules.js.map +1 -1
  71. package/cjs/rules/date/date-field-comparison-rules.d.ts.map +1 -1
  72. package/cjs/rules/date/date-field-comparison-rules.js +4 -0
  73. package/cjs/rules/date/date-field-comparison-rules.js.map +1 -1
  74. package/cjs/rules/date/date-period-rules.d.ts +20 -4
  75. package/cjs/rules/date/date-period-rules.d.ts.map +1 -1
  76. package/cjs/rules/date/date-period-rules.js +44 -5
  77. package/cjs/rules/date/date-period-rules.js.map +1 -1
  78. package/cjs/rules/date/date-relative-rules.d.ts.map +1 -1
  79. package/cjs/rules/date/date-relative-rules.js +3 -0
  80. package/cjs/rules/date/date-relative-rules.js.map +1 -1
  81. package/cjs/rules/date/date-special-rules.d.ts.map +1 -1
  82. package/cjs/rules/date/date-special-rules.js +5 -6
  83. package/cjs/rules/date/date-special-rules.js.map +1 -1
  84. package/cjs/rules/date/date.d.ts.map +1 -1
  85. package/cjs/rules/date/date.js +15 -6
  86. package/cjs/rules/date/date.js.map +1 -1
  87. package/cjs/rules/file/dimensions.d.ts.map +1 -1
  88. package/cjs/rules/file/dimensions.js +4 -0
  89. package/cjs/rules/file/dimensions.js.map +1 -1
  90. package/cjs/rules/file/file-size.d.ts.map +1 -1
  91. package/cjs/rules/file/file-size.js +4 -22
  92. package/cjs/rules/file/file-size.js.map +1 -1
  93. package/cjs/rules/length/length-rules.d.ts.map +1 -1
  94. package/cjs/rules/length/length-rules.js +13 -22
  95. package/cjs/rules/length/length-rules.js.map +1 -1
  96. package/cjs/rules/number/number-rules.d.ts.map +1 -1
  97. package/cjs/rules/number/number-rules.js +13 -2
  98. package/cjs/rules/number/number-rules.js.map +1 -1
  99. package/cjs/rules/scalar/accepted-rule.d.ts.map +1 -1
  100. package/cjs/rules/scalar/accepted-rule.js +12 -5
  101. package/cjs/rules/scalar/accepted-rule.js.map +1 -1
  102. package/cjs/rules/scalar/declined-rule.d.ts.map +1 -1
  103. package/cjs/rules/scalar/declined-rule.js +12 -5
  104. package/cjs/rules/scalar/declined-rule.js.map +1 -1
  105. package/cjs/rules/string/matches.d.ts.map +1 -1
  106. package/cjs/rules/string/matches.js +1 -0
  107. package/cjs/rules/string/matches.js.map +1 -1
  108. package/cjs/rules/string/pattern.d.ts.map +1 -1
  109. package/cjs/rules/string/pattern.js +1 -0
  110. package/cjs/rules/string/pattern.js.map +1 -1
  111. package/cjs/rules/string/string-comparison.d.ts.map +1 -1
  112. package/cjs/rules/string/string-comparison.js +4 -0
  113. package/cjs/rules/string/string-comparison.js.map +1 -1
  114. package/cjs/types/context-types.d.ts +0 -1
  115. package/cjs/types/context-types.d.ts.map +1 -1
  116. package/cjs/types/inference-types.d.ts +10 -5
  117. package/cjs/types/inference-types.d.ts.map +1 -1
  118. package/cjs/types/rule-types.d.ts +4 -0
  119. package/cjs/types/rule-types.d.ts.map +1 -1
  120. package/cjs/validators/array-validator.d.ts +2 -2
  121. package/cjs/validators/array-validator.d.ts.map +1 -1
  122. package/cjs/validators/array-validator.js +13 -23
  123. package/cjs/validators/array-validator.js.map +1 -1
  124. package/cjs/validators/base-validator.d.ts +79 -369
  125. package/cjs/validators/base-validator.d.ts.map +1 -1
  126. package/cjs/validators/base-validator.js +144 -826
  127. package/cjs/validators/base-validator.js.map +1 -1
  128. package/cjs/validators/boolean-validator.d.ts +18 -15
  129. package/cjs/validators/boolean-validator.d.ts.map +1 -1
  130. package/cjs/validators/boolean-validator.js +46 -16
  131. package/cjs/validators/boolean-validator.js.map +1 -1
  132. package/cjs/validators/date-validator.d.ts +8 -3
  133. package/cjs/validators/date-validator.d.ts.map +1 -1
  134. package/cjs/validators/date-validator.js +176 -246
  135. package/cjs/validators/date-validator.js.map +1 -1
  136. package/cjs/validators/float-validator.js +1 -1
  137. package/cjs/validators/float-validator.js.map +1 -1
  138. package/cjs/validators/index.d.ts +5 -0
  139. package/cjs/validators/index.d.ts.map +1 -1
  140. package/cjs/validators/int-validator.js +1 -1
  141. package/cjs/validators/int-validator.js.map +1 -1
  142. package/cjs/validators/methods/equality-conditional-methods.d.ts +88 -0
  143. package/cjs/validators/methods/equality-conditional-methods.d.ts.map +1 -0
  144. package/cjs/validators/methods/equality-conditional-methods.js +118 -0
  145. package/cjs/validators/methods/equality-conditional-methods.js.map +1 -0
  146. package/cjs/validators/methods/forbidden-methods.d.ts +58 -0
  147. package/cjs/validators/methods/forbidden-methods.d.ts.map +1 -0
  148. package/cjs/validators/methods/forbidden-methods.js +122 -0
  149. package/cjs/validators/methods/forbidden-methods.js.map +1 -0
  150. package/cjs/validators/methods/present-methods.d.ts +102 -0
  151. package/cjs/validators/methods/present-methods.d.ts.map +1 -0
  152. package/cjs/validators/methods/present-methods.js +229 -0
  153. package/cjs/validators/methods/present-methods.js.map +1 -0
  154. package/cjs/validators/methods/required-methods.d.ts +174 -0
  155. package/cjs/validators/methods/required-methods.d.ts.map +1 -0
  156. package/cjs/validators/methods/required-methods.js +246 -0
  157. package/cjs/validators/methods/required-methods.js.map +1 -0
  158. package/cjs/validators/number-validator.d.ts +11 -13
  159. package/cjs/validators/number-validator.d.ts.map +1 -1
  160. package/cjs/validators/number-validator.js +60 -78
  161. package/cjs/validators/number-validator.js.map +1 -1
  162. package/cjs/validators/numeric-validator.js +1 -1
  163. package/cjs/validators/numeric-validator.js.map +1 -1
  164. package/cjs/validators/object-validator.d.ts +1 -0
  165. package/cjs/validators/object-validator.d.ts.map +1 -1
  166. package/cjs/validators/object-validator.js +21 -15
  167. package/cjs/validators/object-validator.js.map +1 -1
  168. package/cjs/validators/primitive-validator.d.ts +70 -0
  169. package/cjs/validators/primitive-validator.d.ts.map +1 -0
  170. package/cjs/validators/primitive-validator.js +80 -0
  171. package/cjs/validators/primitive-validator.js.map +1 -0
  172. package/cjs/validators/record-validator.d.ts +4 -0
  173. package/cjs/validators/record-validator.d.ts.map +1 -1
  174. package/cjs/validators/record-validator.js +7 -1
  175. package/cjs/validators/record-validator.js.map +1 -1
  176. package/cjs/validators/scalar-validator.d.ts +5 -15
  177. package/cjs/validators/scalar-validator.d.ts.map +1 -1
  178. package/cjs/validators/scalar-validator.js +20 -78
  179. package/cjs/validators/scalar-validator.js.map +1 -1
  180. package/cjs/validators/string-validator.d.ts +2 -18
  181. package/cjs/validators/string-validator.d.ts.map +1 -1
  182. package/cjs/validators/string-validator.js +71 -164
  183. package/cjs/validators/string-validator.js.map +1 -1
  184. package/cjs/validators/tuple-validator.d.ts.map +1 -1
  185. package/cjs/validators/tuple-validator.js +2 -2
  186. package/cjs/validators/tuple-validator.js.map +1 -1
  187. package/cjs/validators/union-validator.d.ts.map +1 -1
  188. package/cjs/validators/union-validator.js +1 -3
  189. package/cjs/validators/union-validator.js.map +1 -1
  190. package/esm/factory/validators.d.ts +1 -1
  191. package/esm/factory/validators.d.ts.map +1 -1
  192. package/esm/factory/validators.js +2 -2
  193. package/esm/factory/validators.js.map +1 -1
  194. package/esm/helpers/validation-helpers.d.ts +22 -0
  195. package/esm/helpers/validation-helpers.d.ts.map +1 -1
  196. package/esm/helpers/validation-helpers.js +56 -34
  197. package/esm/helpers/validation-helpers.js.map +1 -1
  198. package/esm/index.js +1 -1
  199. package/esm/mutators/date-mutators.js +1 -1
  200. package/esm/mutators/date-mutators.js.map +1 -1
  201. package/esm/rules/array/array-rules.d.ts.map +1 -1
  202. package/esm/rules/array/array-rules.js +1 -0
  203. package/esm/rules/array/array-rules.js.map +1 -1
  204. package/esm/rules/common/enum.d.ts.map +1 -1
  205. package/esm/rules/common/enum.js +18 -4
  206. package/esm/rules/common/enum.js.map +1 -1
  207. package/esm/rules/common/equals-field-rules.d.ts.map +1 -1
  208. package/esm/rules/common/equals-field-rules.js +1 -0
  209. package/esm/rules/common/equals-field-rules.js.map +1 -1
  210. package/esm/rules/common/type-rules.d.ts +4 -0
  211. package/esm/rules/common/type-rules.d.ts.map +1 -1
  212. package/esm/rules/common/type-rules.js +15 -2
  213. package/esm/rules/common/type-rules.js.map +1 -1
  214. package/esm/rules/common/unknown-key.js +2 -2
  215. package/esm/rules/common/unknown-key.js.map +1 -1
  216. package/esm/rules/conditional/forbidden-if-rules.d.ts.map +1 -1
  217. package/esm/rules/conditional/forbidden-if-rules.js +6 -0
  218. package/esm/rules/conditional/forbidden-if-rules.js.map +1 -1
  219. package/esm/rules/conditional/index.d.ts +1 -0
  220. package/esm/rules/conditional/index.d.ts.map +1 -1
  221. package/esm/rules/conditional/present-if-rules.d.ts.map +1 -1
  222. package/esm/rules/conditional/present-if-rules.js +2 -0
  223. package/esm/rules/conditional/present-if-rules.js.map +1 -1
  224. package/esm/rules/conditional/present-unless-rules.d.ts.map +1 -1
  225. package/esm/rules/conditional/present-unless-rules.js +2 -0
  226. package/esm/rules/conditional/present-unless-rules.js.map +1 -1
  227. package/esm/rules/conditional/present-with-rules.d.ts.map +1 -1
  228. package/esm/rules/conditional/present-with-rules.js +9 -2
  229. package/esm/rules/conditional/present-with-rules.js.map +1 -1
  230. package/esm/rules/conditional/present-without-rules.d.ts.map +1 -1
  231. package/esm/rules/conditional/present-without-rules.js +9 -2
  232. package/esm/rules/conditional/present-without-rules.js.map +1 -1
  233. package/esm/rules/conditional/required-if-rules.d.ts.map +1 -1
  234. package/esm/rules/conditional/required-if-rules.js +22 -7
  235. package/esm/rules/conditional/required-if-rules.js.map +1 -1
  236. package/esm/rules/conditional/required-unless-rules.d.ts.map +1 -1
  237. package/esm/rules/conditional/required-unless-rules.js +2 -0
  238. package/esm/rules/conditional/required-unless-rules.js.map +1 -1
  239. package/esm/rules/conditional/required-when-rule.d.ts +18 -0
  240. package/esm/rules/conditional/required-when-rule.d.ts.map +1 -0
  241. package/esm/rules/conditional/required-when-rule.js +26 -0
  242. package/esm/rules/conditional/required-when-rule.js.map +1 -0
  243. package/esm/rules/conditional/required-with-rules.d.ts.map +1 -1
  244. package/esm/rules/conditional/required-with-rules.js +1 -0
  245. package/esm/rules/conditional/required-with-rules.js.map +1 -1
  246. package/esm/rules/conditional/required-without-rules.d.ts.map +1 -1
  247. package/esm/rules/conditional/required-without-rules.js +1 -0
  248. package/esm/rules/conditional/required-without-rules.js.map +1 -1
  249. package/esm/rules/core/equal.d.ts.map +1 -1
  250. package/esm/rules/core/equal.js +1 -0
  251. package/esm/rules/core/equal.js.map +1 -1
  252. package/esm/rules/core/required.d.ts +1 -1
  253. package/esm/rules/core/required.js +1 -1
  254. package/esm/rules/date/date-comparison-rules.d.ts.map +1 -1
  255. package/esm/rules/date/date-comparison-rules.js +2 -0
  256. package/esm/rules/date/date-comparison-rules.js.map +1 -1
  257. package/esm/rules/date/date-day-rules.d.ts.map +1 -1
  258. package/esm/rules/date/date-day-rules.js +4 -1
  259. package/esm/rules/date/date-day-rules.js.map +1 -1
  260. package/esm/rules/date/date-field-comparison-rules.d.ts.map +1 -1
  261. package/esm/rules/date/date-field-comparison-rules.js +4 -0
  262. package/esm/rules/date/date-field-comparison-rules.js.map +1 -1
  263. package/esm/rules/date/date-period-rules.d.ts +20 -4
  264. package/esm/rules/date/date-period-rules.d.ts.map +1 -1
  265. package/esm/rules/date/date-period-rules.js +44 -5
  266. package/esm/rules/date/date-period-rules.js.map +1 -1
  267. package/esm/rules/date/date-relative-rules.d.ts.map +1 -1
  268. package/esm/rules/date/date-relative-rules.js +3 -0
  269. package/esm/rules/date/date-relative-rules.js.map +1 -1
  270. package/esm/rules/date/date-special-rules.d.ts.map +1 -1
  271. package/esm/rules/date/date-special-rules.js +5 -6
  272. package/esm/rules/date/date-special-rules.js.map +1 -1
  273. package/esm/rules/date/date.d.ts.map +1 -1
  274. package/esm/rules/date/date.js +15 -6
  275. package/esm/rules/date/date.js.map +1 -1
  276. package/esm/rules/file/dimensions.d.ts.map +1 -1
  277. package/esm/rules/file/dimensions.js +4 -0
  278. package/esm/rules/file/dimensions.js.map +1 -1
  279. package/esm/rules/file/file-size.d.ts.map +1 -1
  280. package/esm/rules/file/file-size.js +4 -22
  281. package/esm/rules/file/file-size.js.map +1 -1
  282. package/esm/rules/length/length-rules.d.ts.map +1 -1
  283. package/esm/rules/length/length-rules.js +13 -22
  284. package/esm/rules/length/length-rules.js.map +1 -1
  285. package/esm/rules/number/number-rules.d.ts.map +1 -1
  286. package/esm/rules/number/number-rules.js +13 -2
  287. package/esm/rules/number/number-rules.js.map +1 -1
  288. package/esm/rules/scalar/accepted-rule.d.ts.map +1 -1
  289. package/esm/rules/scalar/accepted-rule.js +12 -5
  290. package/esm/rules/scalar/accepted-rule.js.map +1 -1
  291. package/esm/rules/scalar/declined-rule.d.ts.map +1 -1
  292. package/esm/rules/scalar/declined-rule.js +12 -5
  293. package/esm/rules/scalar/declined-rule.js.map +1 -1
  294. package/esm/rules/string/matches.d.ts.map +1 -1
  295. package/esm/rules/string/matches.js +1 -0
  296. package/esm/rules/string/matches.js.map +1 -1
  297. package/esm/rules/string/pattern.d.ts.map +1 -1
  298. package/esm/rules/string/pattern.js +1 -0
  299. package/esm/rules/string/pattern.js.map +1 -1
  300. package/esm/rules/string/string-comparison.d.ts.map +1 -1
  301. package/esm/rules/string/string-comparison.js +4 -0
  302. package/esm/rules/string/string-comparison.js.map +1 -1
  303. package/esm/types/context-types.d.ts +0 -1
  304. package/esm/types/context-types.d.ts.map +1 -1
  305. package/esm/types/inference-types.d.ts +10 -5
  306. package/esm/types/inference-types.d.ts.map +1 -1
  307. package/esm/types/rule-types.d.ts +4 -0
  308. package/esm/types/rule-types.d.ts.map +1 -1
  309. package/esm/validators/array-validator.d.ts +2 -2
  310. package/esm/validators/array-validator.d.ts.map +1 -1
  311. package/esm/validators/array-validator.js +13 -23
  312. package/esm/validators/array-validator.js.map +1 -1
  313. package/esm/validators/base-validator.d.ts +79 -369
  314. package/esm/validators/base-validator.d.ts.map +1 -1
  315. package/esm/validators/base-validator.js +144 -826
  316. package/esm/validators/base-validator.js.map +1 -1
  317. package/esm/validators/boolean-validator.d.ts +18 -15
  318. package/esm/validators/boolean-validator.d.ts.map +1 -1
  319. package/esm/validators/boolean-validator.js +46 -16
  320. package/esm/validators/boolean-validator.js.map +1 -1
  321. package/esm/validators/date-validator.d.ts +8 -3
  322. package/esm/validators/date-validator.d.ts.map +1 -1
  323. package/esm/validators/date-validator.js +176 -246
  324. package/esm/validators/date-validator.js.map +1 -1
  325. package/esm/validators/float-validator.js +1 -1
  326. package/esm/validators/float-validator.js.map +1 -1
  327. package/esm/validators/index.d.ts +5 -0
  328. package/esm/validators/index.d.ts.map +1 -1
  329. package/esm/validators/int-validator.js +1 -1
  330. package/esm/validators/int-validator.js.map +1 -1
  331. package/esm/validators/methods/equality-conditional-methods.d.ts +88 -0
  332. package/esm/validators/methods/equality-conditional-methods.d.ts.map +1 -0
  333. package/esm/validators/methods/equality-conditional-methods.js +118 -0
  334. package/esm/validators/methods/equality-conditional-methods.js.map +1 -0
  335. package/esm/validators/methods/forbidden-methods.d.ts +58 -0
  336. package/esm/validators/methods/forbidden-methods.d.ts.map +1 -0
  337. package/esm/validators/methods/forbidden-methods.js +122 -0
  338. package/esm/validators/methods/forbidden-methods.js.map +1 -0
  339. package/esm/validators/methods/present-methods.d.ts +102 -0
  340. package/esm/validators/methods/present-methods.d.ts.map +1 -0
  341. package/esm/validators/methods/present-methods.js +229 -0
  342. package/esm/validators/methods/present-methods.js.map +1 -0
  343. package/esm/validators/methods/required-methods.d.ts +174 -0
  344. package/esm/validators/methods/required-methods.d.ts.map +1 -0
  345. package/esm/validators/methods/required-methods.js +246 -0
  346. package/esm/validators/methods/required-methods.js.map +1 -0
  347. package/esm/validators/number-validator.d.ts +11 -13
  348. package/esm/validators/number-validator.d.ts.map +1 -1
  349. package/esm/validators/number-validator.js +60 -78
  350. package/esm/validators/number-validator.js.map +1 -1
  351. package/esm/validators/numeric-validator.js +1 -1
  352. package/esm/validators/numeric-validator.js.map +1 -1
  353. package/esm/validators/object-validator.d.ts +1 -0
  354. package/esm/validators/object-validator.d.ts.map +1 -1
  355. package/esm/validators/object-validator.js +21 -15
  356. package/esm/validators/object-validator.js.map +1 -1
  357. package/esm/validators/primitive-validator.d.ts +70 -0
  358. package/esm/validators/primitive-validator.d.ts.map +1 -0
  359. package/esm/validators/primitive-validator.js +80 -0
  360. package/esm/validators/primitive-validator.js.map +1 -0
  361. package/esm/validators/record-validator.d.ts +4 -0
  362. package/esm/validators/record-validator.d.ts.map +1 -1
  363. package/esm/validators/record-validator.js +8 -2
  364. package/esm/validators/record-validator.js.map +1 -1
  365. package/esm/validators/scalar-validator.d.ts +5 -15
  366. package/esm/validators/scalar-validator.d.ts.map +1 -1
  367. package/esm/validators/scalar-validator.js +20 -78
  368. package/esm/validators/scalar-validator.js.map +1 -1
  369. package/esm/validators/string-validator.d.ts +2 -18
  370. package/esm/validators/string-validator.d.ts.map +1 -1
  371. package/esm/validators/string-validator.js +71 -164
  372. package/esm/validators/string-validator.js.map +1 -1
  373. package/esm/validators/tuple-validator.d.ts.map +1 -1
  374. package/esm/validators/tuple-validator.js +2 -2
  375. package/esm/validators/tuple-validator.js.map +1 -1
  376. package/esm/validators/union-validator.d.ts.map +1 -1
  377. package/esm/validators/union-validator.js +1 -3
  378. package/esm/validators/union-validator.js.map +1 -1
  379. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required-methods.js","sources":["../../../src/validators/methods/required-methods.ts"],"sourcesContent":[null],"names":["BaseValidator","requiredRule","presentRule","requiredWithRule","requiredWithoutRule","requiredIfRule","requiredUnlessRule","requiredIfEmptyRule","requiredIfNotEmptyRule","requiredIfAllEmptyRule","requiredIfAnyEmptyRule","requiredIfAllNotEmptyRule","requiredIfAnyNotEmptyRule","requiredIfInRule","requiredIfNotInRule","requiredWithAllRule","requiredWithoutAllRule","requiredWithAnyRule","requiredWithoutAnyRule","requiredWhenRule"],"mappings":"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"}
@@ -1,10 +1,8 @@
1
- import { BaseValidator } from "./base-validator";
2
- import { ScalarValidator } from "./scalar-validator";
3
- import { StringValidator } from "./string-validator";
1
+ import { PrimitiveValidator } from "./primitive-validator";
4
2
  /**
5
3
  * Number validator class - base for Int and Float validators
6
4
  */
7
- export declare class NumberValidator extends BaseValidator {
5
+ export declare class NumberValidator extends PrimitiveValidator {
8
6
  constructor(errorMessage?: string);
9
7
  /**
10
8
  * Check if value is a number type
@@ -112,15 +110,15 @@ export declare class NumberValidator extends BaseValidator {
112
110
  * @category Validation Rule
113
111
  */
114
112
  betweenSibling(minField: string, maxField: string, errorMessage?: string): this;
115
- enum: (values: any, errorMessage?: string) => ScalarValidator;
116
- in: (values: any[], errorMessage?: string) => ScalarValidator;
117
- oneOf: (values: any[], errorMessage?: string) => ScalarValidator;
118
- allowsOnly: (values: any[], errorMessage?: string) => ScalarValidator;
119
- forbids: (values: any[], errorMessage?: string) => ScalarValidator;
120
- notIn: (values: any[], errorMessage?: string) => ScalarValidator;
121
- length: (length: number, errorMessage?: string) => StringValidator;
122
- minLength: (length: number, errorMessage?: string) => StringValidator;
123
- maxLength: (length: number, errorMessage?: string) => StringValidator;
113
+ /**
114
+ * Value (as a string) must be exactly this many characters.
115
+ * Useful for fixed-format numeric codes (e.g. 4-digit PIN).
116
+ */
117
+ length(length: number, errorMessage?: string): this;
118
+ /** Value (as string representation) length must be ≥ min */
119
+ minLength(length: number, errorMessage?: string): this;
120
+ /** Value (as string representation) length must be max */
121
+ maxLength(length: number, errorMessage?: string): this;
124
122
  /**
125
123
  * Convert value to its absolute value
126
124
  */
@@ -1 +1 @@
1
- {"version":3,"file":"number-validator.d.ts","sourceRoot":"","sources":["../../src/validators/number-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"number-validator.d.ts","sourceRoot":"","sources":["../../src/validators/number-validator.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;gBAClC,YAAY,CAAC,EAAE,MAAM;IAKxC;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAIvC;;;;;OAKG;IACI,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD;;;;;OAKG;IACI,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD;;;OAGG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD;;;OAGG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD;;;;;OAKG;IACI,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAOhE;;;;;OAKG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAO7D;;;OAGG;IACI,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIvD;;;OAGG;IACI,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIvD;;;OAGG;IACI,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAO9D;;;OAGG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIrD;;;OAGG;IACI,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAO3D;;;OAGG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIrD,iDAAiD;IAC1C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIlD;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIvD;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD;;OAEG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAIrD,wCAAwC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAIrC,mCAAmC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAIrC,8BAA8B;IACvB,GAAG,CAAC,YAAY,CAAC,EAAE,MAAM;IAIhC,+BAA+B;IACxB,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM;IAIjC;;;;;OAKG;IACI,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAQhF;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAU/E;;;OAGG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAInD,4DAA4D;IACrD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD,4DAA4D;IACrD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAMtD;;OAEG;IACI,GAAG;IAIV;;OAEG;IACI,IAAI;IAIX;;OAEG;IACI,KAAK;IAIZ;;OAEG;IACI,KAAK,CAAC,QAAQ,SAAI;IAIzB;;OAEG;IACI,OAAO,CAAC,QAAQ,SAAI;CAG5B"}
@@ -1,10 +1,10 @@
1
- 'use strict';require('@mongez/reinforcements'),require('@mongez/supportive-is'),require('dayjs');var numberMutators=require('../mutators/number-mutators.js');require('net');var numberRules=require('../rules/number/number-rules.js'),typeRules=require('../rules/common/type-rules.js'),baseValidator=require('./base-validator.js'),scalarValidator=require('./scalar-validator.js'),stringValidator=require('./string-validator.js');/**
1
+ 'use strict';require('@mongez/reinforcements'),require('@mongez/supportive-is'),require('dayjs');var numberMutators=require('../mutators/number-mutators.js');require('net');var numberRules=require('../rules/number/number-rules.js'),lengthRules=require('../rules/length/length-rules.js'),typeRules=require('../rules/common/type-rules.js'),primitiveValidator=require('./primitive-validator.js');/**
2
2
  * Number validator class - base for Int and Float validators
3
3
  */
4
- class NumberValidator extends baseValidator.BaseValidator {
4
+ class NumberValidator extends primitiveValidator.PrimitiveValidator {
5
5
  constructor(errorMessage) {
6
6
  super();
7
- this.addRule(typeRules.numberRule, errorMessage);
7
+ this.addMutableRule(typeRules.numberRule, errorMessage);
8
8
  }
9
9
  /**
10
10
  * Check if value is a number type
@@ -19,10 +19,7 @@ class NumberValidator extends baseValidator.BaseValidator {
19
19
  * @category Validation Rule
20
20
  */
21
21
  min(min, errorMessage) {
22
- const rule = this.addRule(numberRules.minRule, errorMessage);
23
- rule.context.options.min = min;
24
- rule.context.options.scope = "global";
25
- return this;
22
+ return this.addRule(numberRules.minRule, errorMessage, { min, scope: "global" });
26
23
  }
27
24
  /**
28
25
  * Value must be equal or less than the given number or field
@@ -31,30 +28,21 @@ class NumberValidator extends baseValidator.BaseValidator {
31
28
  * @category Validation Rule
32
29
  */
33
30
  max(max, errorMessage) {
34
- const rule = this.addRule(numberRules.maxRule, errorMessage);
35
- rule.context.options.max = max;
36
- rule.context.options.scope = "global";
37
- return this;
31
+ return this.addRule(numberRules.maxRule, errorMessage, { max, scope: "global" });
38
32
  }
39
33
  /**
40
34
  * Value must be >= sibling field value
41
35
  * @category Validation Rule
42
36
  */
43
37
  minSibling(field, errorMessage) {
44
- const rule = this.addRule(numberRules.minRule, errorMessage);
45
- rule.context.options.min = field;
46
- rule.context.options.scope = "sibling";
47
- return this;
38
+ return this.addRule(numberRules.minRule, errorMessage, { min: field, scope: "sibling" });
48
39
  }
49
40
  /**
50
41
  * Value must be <= sibling field value
51
42
  * @category Validation Rule
52
43
  */
53
44
  maxSibling(field, errorMessage) {
54
- const rule = this.addRule(numberRules.maxRule, errorMessage);
55
- rule.context.options.max = field;
56
- rule.context.options.scope = "sibling";
57
- return this;
45
+ return this.addRule(numberRules.maxRule, errorMessage, { max: field, scope: "sibling" });
58
46
  }
59
47
  /**
60
48
  * Value must be strictly greater than the given number or field (>)
@@ -63,10 +51,10 @@ class NumberValidator extends baseValidator.BaseValidator {
63
51
  * @category Validation Rule
64
52
  */
65
53
  greaterThan(value, errorMessage) {
66
- const rule = this.addRule(numberRules.greaterThanRule, errorMessage);
67
- rule.context.options.value = value;
68
- rule.context.options.scope = "global";
69
- return this;
54
+ return this.addRule(numberRules.greaterThanRule, errorMessage, {
55
+ value,
56
+ scope: "global",
57
+ });
70
58
  }
71
59
  /**
72
60
  * Value must be strictly less than the given number or field (<)
@@ -75,10 +63,10 @@ class NumberValidator extends baseValidator.BaseValidator {
75
63
  * @category Validation Rule
76
64
  */
77
65
  lessThan(value, errorMessage) {
78
- const rule = this.addRule(numberRules.lessThanRule, errorMessage);
79
- rule.context.options.value = value;
80
- rule.context.options.scope = "global";
81
- return this;
66
+ return this.addRule(numberRules.lessThanRule, errorMessage, {
67
+ value,
68
+ scope: "global",
69
+ });
82
70
  }
83
71
  /**
84
72
  * Alias for greaterThan() - shorter syntax
@@ -99,10 +87,10 @@ class NumberValidator extends baseValidator.BaseValidator {
99
87
  * @category Validation Rule
100
88
  */
101
89
  greaterThanSibling(field, errorMessage) {
102
- const rule = this.addRule(numberRules.greaterThanRule, errorMessage);
103
- rule.context.options.value = field;
104
- rule.context.options.scope = "sibling";
105
- return this;
90
+ return this.addRule(numberRules.greaterThanRule, errorMessage, {
91
+ value: field,
92
+ scope: "sibling",
93
+ });
106
94
  }
107
95
  /**
108
96
  * Alias for greaterThanSibling() - shorter syntax
@@ -116,10 +104,10 @@ class NumberValidator extends baseValidator.BaseValidator {
116
104
  * @category Validation Rule
117
105
  */
118
106
  lessThanSibling(field, errorMessage) {
119
- const rule = this.addRule(numberRules.lessThanRule, errorMessage);
120
- rule.context.options.value = field;
121
- rule.context.options.scope = "sibling";
122
- return this;
107
+ return this.addRule(numberRules.lessThanRule, errorMessage, {
108
+ value: field,
109
+ scope: "sibling",
110
+ });
123
111
  }
124
112
  /**
125
113
  * Alias for lessThanSibling() - shorter syntax
@@ -130,9 +118,7 @@ class NumberValidator extends baseValidator.BaseValidator {
130
118
  }
131
119
  /** Value must be a modulo of the given number */
132
120
  modulo(value, errorMessage) {
133
- const rule = this.addRule(numberRules.moduloRule, errorMessage);
134
- rule.context.options.value = value;
135
- return this;
121
+ return this.addRule(numberRules.moduloRule, errorMessage, { value });
136
122
  }
137
123
  /**
138
124
  * Alias for modulo() - Value must be divisible by the given number
@@ -154,23 +140,19 @@ class NumberValidator extends baseValidator.BaseValidator {
154
140
  }
155
141
  /** Accept only numbers higher than 0 */
156
142
  positive(errorMessage) {
157
- this.addRule(numberRules.positiveRule, errorMessage);
158
- return this;
143
+ return this.addRule(numberRules.positiveRule, errorMessage);
159
144
  }
160
145
  /** Accept only negative numbers */
161
146
  negative(errorMessage) {
162
- this.addRule(numberRules.negativeRule, errorMessage);
163
- return this;
147
+ return this.addRule(numberRules.negativeRule, errorMessage);
164
148
  }
165
149
  /** Accept only odd numbers */
166
150
  odd(errorMessage) {
167
- this.addRule(numberRules.oddRule, errorMessage);
168
- return this;
151
+ return this.addRule(numberRules.oddRule, errorMessage);
169
152
  }
170
153
  /** Accept only even numbers */
171
154
  even(errorMessage) {
172
- this.addRule(numberRules.evenRule, errorMessage);
173
- return this;
155
+ return this.addRule(numberRules.evenRule, errorMessage);
174
156
  }
175
157
  /**
176
158
  * Accept only numbers between the given two numbers or fields (Inclusive)
@@ -179,68 +161,68 @@ class NumberValidator extends baseValidator.BaseValidator {
179
161
  * @category Validation Rule
180
162
  */
181
163
  between(min, max, errorMessage) {
182
- const rule = this.addRule(numberRules.betweenNumbersRule, errorMessage);
183
- rule.context.options.min = min;
184
- rule.context.options.max = max;
185
- rule.context.options.scope = "global";
186
- return this;
164
+ return this.addRule(numberRules.betweenNumbersRule, errorMessage, {
165
+ min,
166
+ max,
167
+ scope: "global",
168
+ });
187
169
  }
188
170
  /**
189
171
  * Value must be between sibling field values
190
172
  * @category Validation Rule
191
173
  */
192
174
  betweenSibling(minField, maxField, errorMessage) {
193
- const rule = this.addRule(numberRules.betweenNumbersRule, errorMessage);
194
- rule.context.options.min = minField;
195
- rule.context.options.max = maxField;
196
- rule.context.options.scope = "sibling";
197
- return this;
198
- }
199
- // Enum and value checking methods from ScalarValidator
200
- enum = scalarValidator.ScalarValidator.prototype.enum;
201
- in = scalarValidator.ScalarValidator.prototype.in;
202
- oneOf = scalarValidator.ScalarValidator.prototype.in;
203
- allowsOnly = scalarValidator.ScalarValidator.prototype.allowsOnly;
204
- forbids = scalarValidator.ScalarValidator.prototype.forbids;
205
- notIn = scalarValidator.ScalarValidator.prototype.forbids;
206
- // Length methods from StringValidator
207
- length = stringValidator.StringValidator.prototype.length;
208
- minLength = stringValidator.StringValidator.prototype.minLength;
209
- maxLength = stringValidator.StringValidator.prototype.maxLength;
175
+ return this.addRule(numberRules.betweenNumbersRule, errorMessage, {
176
+ min: minField,
177
+ max: maxField,
178
+ scope: "sibling",
179
+ });
180
+ }
181
+ // Enum and value membership methods are inherited from PrimitiveValidator.
182
+ /**
183
+ * Value (as a string) must be exactly this many characters.
184
+ * Useful for fixed-format numeric codes (e.g. 4-digit PIN).
185
+ */
186
+ length(length, errorMessage) {
187
+ return this.addRule(lengthRules.lengthRule, errorMessage, { length });
188
+ }
189
+ /** Value (as string representation) length must be ≥ min */
190
+ minLength(length, errorMessage) {
191
+ return this.addRule(lengthRules.minLengthRule, errorMessage, { minLength: length });
192
+ }
193
+ /** Value (as string representation) length must be ≤ max */
194
+ maxLength(length, errorMessage) {
195
+ return this.addRule(lengthRules.maxLengthRule, errorMessage, { maxLength: length });
196
+ }
210
197
  // Mutators
211
198
  /**
212
199
  * Convert value to its absolute value
213
200
  */
214
201
  abs() {
215
- this.addMutator(numberMutators.absMutator);
216
- return this;
202
+ return this.addMutator(numberMutators.absMutator);
217
203
  }
218
204
  /**
219
205
  * Round value up to the nearest integer
220
206
  */
221
207
  ceil() {
222
- this.addMutator(numberMutators.ceilMutator);
223
- return this;
208
+ return this.addMutator(numberMutators.ceilMutator);
224
209
  }
225
210
  /**
226
211
  * Round value down to the nearest integer
227
212
  */
228
213
  floor() {
229
- this.addMutator(numberMutators.floorMutator);
230
- return this;
214
+ return this.addMutator(numberMutators.floorMutator);
231
215
  }
232
216
  /**
233
217
  * Round value to the nearest integer or specified decimals
234
218
  */
235
219
  round(decimals = 0) {
236
- this.addMutator(numberMutators.roundMutator, { decimals });
237
- return this;
220
+ return this.addMutator(numberMutators.roundMutator, { decimals });
238
221
  }
239
222
  /**
240
223
  * Format number using fixed-point notation
241
224
  */
242
225
  toFixed(decimals = 2) {
243
- this.addMutator(numberMutators.toFixedMutator, { decimals });
244
- return this;
226
+ return this.addMutator(numberMutators.toFixedMutator, { decimals });
245
227
  }
246
228
  }exports.NumberValidator=NumberValidator;//# sourceMappingURL=number-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"number-validator.js","sources":["../../src/validators/number-validator.ts"],"sourcesContent":[null],"names":["BaseValidator","numberRule","minRule","maxRule","greaterThanRule","lessThanRule","moduloRule","positiveRule","negativeRule","oddRule","evenRule","betweenNumbersRule","ScalarValidator","StringValidator","absMutator","ceilMutator","floorMutator","roundMutator","toFixedMutator"],"mappings":"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"}
1
+ {"version":3,"file":"number-validator.js","sources":["../../src/validators/number-validator.ts"],"sourcesContent":[null],"names":["PrimitiveValidator","numberRule","minRule","maxRule","greaterThanRule","lessThanRule","moduloRule","positiveRule","negativeRule","oddRule","evenRule","betweenNumbersRule","lengthRule","minLengthRule","maxLengthRule","absMutator","ceilMutator","floorMutator","roundMutator","toFixedMutator"],"mappings":"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"}
@@ -7,7 +7,7 @@ class NumericValidator extends numberValidator.NumberValidator {
7
7
  */
8
8
  constructor(errorMessage) {
9
9
  super(errorMessage);
10
- this.addMutator(numberMutators.numericMutator);
10
+ this.addMutableMutator(numberMutators.numericMutator);
11
11
  }
12
12
  /**
13
13
  * Check if value is a numeric type
@@ -1 +1 @@
1
- {"version":3,"file":"numeric-validator.js","sources":["../../src/validators/numeric-validator.ts"],"sourcesContent":[null],"names":["NumberValidator","numericMutator","isNumeric"],"mappings":"yKAIA;;AAEG;AACG,MAAO,gBAAiB,SAAQA,+BAAe,CAAA;AACnD;;AAEG;AACH,IAAA,WAAA,CAAmB,YAAqB,EAAA;QACtC,KAAK,CAAC,YAAY,CAAC,CAAC;AACpB,QAAA,IAAI,CAAC,UAAU,CAACC,6BAAc,CAAC,CAAC;KACjC;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;AAC3B,QAAA,OAAOC,sBAAS,CAAC,KAAK,CAAC,CAAC;KACzB;AACF"}
1
+ {"version":3,"file":"numeric-validator.js","sources":["../../src/validators/numeric-validator.ts"],"sourcesContent":[null],"names":["NumberValidator","numericMutator","isNumeric"],"mappings":"yKAIA;;AAEG;AACG,MAAO,gBAAiB,SAAQA,+BAAe,CAAA;AACnD;;AAEG;AACH,IAAA,WAAA,CAAmB,YAAqB,EAAA;QACtC,KAAK,CAAC,YAAY,CAAC,CAAC;AACpB,QAAA,IAAI,CAAC,iBAAiB,CAACC,6BAAc,CAAC,CAAC;KACxC;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;AAC3B,QAAA,OAAOC,sBAAS,CAAC,KAAK,CAAC,CAAC;KACzB;AACF"}
@@ -7,6 +7,7 @@ export declare class ObjectValidator<TSchema extends Schema = Schema> extends Ba
7
7
  schema: TSchema;
8
8
  protected shouldAllowUnknown: boolean;
9
9
  protected allowedKeys: string[];
10
+ protected hasUnknownKeyRule: boolean;
10
11
  constructor(schema: TSchema, errorMessage?: string);
11
12
  /**
12
13
  * Check if value is an object type (plain object, not array or date)
@@ -1 +1 @@
1
- {"version":3,"file":"object-validator.d.ts","sourceRoot":"","sources":["../../src/validators/object-validator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;;GAEG;AACH,qBAAa,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IAKxE,MAAM,EAAE,OAAO;IAJxB,SAAS,CAAC,kBAAkB,UAAS;IACrC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAM;gBAG5B,MAAM,EAAE,OAAO,EACtB,YAAY,CAAC,EAAE,MAAM;IAMvB;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAIvC,uCAAuC;IAChC,YAAY;IAWnB,uFAAuF;IAChF,KAAK,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAK9B,2CAA2C;IACpC,IAAI,CAAC,SAAS,UAAO;IAK5B;;OAEG;IACI,YAAY,CAAC,KAAK,UAAO;IAKhC;;;;;;;;;;;;OAYG;IACa,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAoB5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACI,MAAM,CAAC,UAAU,SAAS,MAAM,EACrC,iBAAiB,EAAE,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,GAC1D,eAAe,CAAC,OAAO,GAAG,UAAU,CAAC;IAgBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACI,KAAK,CAAC,MAAM,SAAS,MAAM,EAChC,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,GACjC,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC;IAgCpC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAiBrF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACI,OAAO,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAiBxF,sBAAsB;IACf,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa;IAK/C,wBAAwB;IACX,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA0HnF;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAW1B"}
1
+ {"version":3,"file":"object-validator.d.ts","sourceRoot":"","sources":["../../src/validators/object-validator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;;GAEG;AACH,qBAAa,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IAMxE,MAAM,EAAE,OAAO;IALxB,SAAS,CAAC,kBAAkB,UAAS;IACrC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAM;IACrC,SAAS,CAAC,iBAAiB,UAAS;gBAG3B,MAAM,EAAE,OAAO,EACtB,YAAY,CAAC,EAAE,MAAM;IAMvB;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAIvC,uCAAuC;IAChC,YAAY;IASnB,uFAAuF;IAChF,KAAK,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAM9B,2CAA2C;IACpC,IAAI,CAAC,SAAS,UAAO;IAK5B;;OAEG;IACI,YAAY,CAAC,KAAK,UAAO;IAMhC;;;;;;;;;;;;OAYG;IACa,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAuB5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACI,MAAM,CAAC,UAAU,SAAS,MAAM,EACrC,iBAAiB,EAAE,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,GAC1D,eAAe,CAAC,OAAO,GAAG,UAAU,CAAC;IAgBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACI,KAAK,CAAC,MAAM,SAAS,MAAM,EAChC,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,GACjC,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC;IAgCpC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAiBrF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACI,OAAO,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAiBxF,sBAAsB;IACf,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa;IAK/C,wBAAwB;IACX,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA4HnF;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAW1B"}
@@ -5,10 +5,11 @@ class ObjectValidator extends baseValidator.BaseValidator {
5
5
  schema;
6
6
  shouldAllowUnknown = false;
7
7
  allowedKeys = [];
8
+ hasUnknownKeyRule = false;
8
9
  constructor(schema, errorMessage) {
9
10
  super();
10
11
  this.schema = schema;
11
- this.addRule(typeRules.objectRule, errorMessage);
12
+ this.addMutableRule(typeRules.objectRule, errorMessage);
12
13
  }
13
14
  /**
14
15
  * Check if value is an object type (plain object, not array or date)
@@ -18,31 +19,31 @@ class ObjectValidator extends baseValidator.BaseValidator {
18
19
  }
19
20
  /** Strip unknown keys from the data */
20
21
  stripUnknown() {
21
- // eslint-disable-next-line @typescript-eslint/no-this-alias
22
- const validator = this;
23
- this.addMutator(objectMutators.stripUnknownMutator, {
22
+ const validator = this.instance;
23
+ return validator.addMutator(objectMutators.stripUnknownMutator, {
24
24
  get allowedKeys() {
25
25
  return validator.allowedKeys;
26
26
  },
27
27
  });
28
- return this;
29
28
  }
30
29
  /** Add list of allowed keys that could be in the data but not necessarily validated */
31
30
  allow(...keys) {
32
- this.allowedKeys.push(...keys);
33
- return this;
31
+ const validator = this.instance;
32
+ validator.allowedKeys.push(...keys);
33
+ return validator;
34
34
  }
35
35
  /** Trim values of the object properties */
36
36
  trim(recursive = true) {
37
- this.addMutator(objectMutators.objectTrimMutator, { recursive });
38
- return this;
37
+ const validator = this.instance;
38
+ return validator.addMutator(objectMutators.objectTrimMutator, { recursive });
39
39
  }
40
40
  /** Whether to allow unknown properties
41
41
  * Please note it will allow only unknown direct children keys, not nested children keys
42
42
  */
43
43
  allowUnknown(allow = true) {
44
- this.shouldAllowUnknown = allow;
45
- return this;
44
+ const validator = this.instance;
45
+ validator.shouldAllowUnknown = allow;
46
+ return validator;
46
47
  }
47
48
  /**
48
49
  * Create a copy of this object validator with the same configuration
@@ -71,6 +72,9 @@ class ObjectValidator extends baseValidator.BaseValidator {
71
72
  // Add ObjectValidator-specific properties
72
73
  cloned.shouldAllowUnknown = this.shouldAllowUnknown;
73
74
  cloned.allowedKeys = [...this.allowedKeys];
75
+ // NOTE: hasUnknownKeyRule is intentionally NOT copied.
76
+ // Each clone must add its own unknownKeyRule on first validate()
77
+ // so it holds references to its own schema/allowedKeys, not the original's.
74
78
  return cloned;
75
79
  }
76
80
  /**
@@ -276,10 +280,12 @@ class ObjectValidator extends baseValidator.BaseValidator {
276
280
  context.schema = this.schema;
277
281
  const mutatedData = await this.mutate(data, context);
278
282
  // Check for unknown properties
279
- if (this.shouldAllowUnknown === false) {
280
- const rule = this.addRule(unknownKey.unknownKeyRule);
281
- rule.context.options.allowedKeys = this.allowedKeys;
282
- rule.context.options.schema = this.schema;
283
+ if (this.shouldAllowUnknown === false && !this.hasUnknownKeyRule) {
284
+ this.hasUnknownKeyRule = true;
285
+ const rule = this.addMutableRule(unknownKey.unknownKeyRule, undefined, {
286
+ allowedKeys: this.allowedKeys,
287
+ schema: this.schema,
288
+ });
283
289
  this.setRuleAttributesList(rule);
284
290
  }
285
291
  const result = await super.validate(mutatedData, context);
@@ -1 +1 @@
1
- {"version":3,"file":"object-validator.js","sources":["../../src/validators/object-validator.ts"],"sourcesContent":[null],"names":["BaseValidator","objectRule","isPlainObject","stripUnknownMutator","objectTrimMutator","unknownKeyRule","setKeyPath","except","ComputedValidator"],"mappings":"6cASA;;AAEG;AACG,MAAO,eAAiD,SAAQA,2BAAa,CAAA;AAKxE,IAAA,MAAA,CAAA;IAJC,kBAAkB,GAAG,KAAK,CAAC;IAC3B,WAAW,GAAa,EAAE,CAAC;IAErC,WACS,CAAA,MAAe,EACtB,YAAqB,EAAA;AAErB,QAAA,KAAK,EAAE,CAAC;QAHD,IAAM,CAAA,MAAA,GAAN,MAAM,CAAS;AAItB,QAAA,IAAI,CAAC,OAAO,CAACC,oBAAU,EAAE,YAAY,CAAC,CAAC;KACxC;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;AAC3B,QAAA,OAAOC,0BAAa,CAAC,KAAK,CAAC,CAAC;KAC7B;;IAGM,YAAY,GAAA;;QAEjB,MAAM,SAAS,GAAG,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,UAAU,CAACC,kCAAmB,EAAE;AACnC,YAAA,IAAI,WAAW,GAAA;gBACb,OAAO,SAAS,CAAC,WAAW,CAAC;aAC9B;AACF,SAAA,CAAC,CAAC;AACH,QAAA,OAAO,IAAI,CAAC;KACb;;IAGM,KAAK,CAAC,GAAG,IAAc,EAAA;QAC5B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAC/B,QAAA,OAAO,IAAI,CAAC;KACb;;IAGM,IAAI,CAAC,SAAS,GAAG,IAAI,EAAA;QAC1B,IAAI,CAAC,UAAU,CAACC,gCAAiB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AAClD,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;IACI,YAAY,CAAC,KAAK,GAAG,IAAI,EAAA;AAC9B,QAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;AAChC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;;;;;;;;;;;AAYG;AACa,IAAA,KAAK,CAAC,IAAe,EAAA;;AAEnC,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;;QAG7B,MAAM,SAAS,GAAG,EAAa,CAAC;AAChC,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE;YAC7B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS;AACzC,YAAA,SAAiB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;AACpD,SAAA;AAED,QAAA,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;;AAG1B,QAAA,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACpD,MAAM,CAAC,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;AAE3C,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCG;AACI,IAAA,MAAM,CACX,iBAA2D,EAAA;;AAG3D,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAS,CAAC;;AAGrC,QAAA,MAAM,WAAW,GACf,iBAAiB,YAAY,eAAe,GAAG,iBAAiB,CAAC,MAAM,GAAG,iBAAiB,CAAC;;AAG9F,QAAA,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE;AAC7B,YAAA,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;AACjD,SAAA;AAED,QAAA,OAAO,QAAiD,CAAC;KAC1D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BG;AACI,IAAA,KAAK,CACV,SAAkC,EAAA;;AAGlC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAS,CAAC;;AAGnC,QAAA,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE;AAClC,YAAA,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;AACpD,SAAA;;AAGD,QAAA,MAAM,CAAC,kBAAkB,GAAG,SAAS,CAAC,kBAAkB,CAAC;AACzD,QAAA,MAAM,CAAC,WAAW,GAAG,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;;QAGvE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,gBAAgB,CAAC,CAAC;;QAG5D,MAAM,CAAC,cAAc,GAAG;YACtB,GAAG,MAAM,CAAC,cAAc;YACxB,GAAG,SAAS,CAAC,cAAc;SAC5B,CAAC;QAEF,MAAM,CAAC,oBAAoB,GAAG;YAC5B,GAAG,MAAM,CAAC,oBAAoB;YAC9B,GAAG,SAAS,CAAC,oBAAoB;SAClC,CAAC;AAEF,QAAA,OAAO,MAA2C,CAAC;KACpD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BG;IACI,IAAI,CAA0B,GAAG,IAAS,EAAA;;AAE/C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAS,CAAC;;QAGnC,MAAM,SAAS,GAAG,EAAsB,CAAC;AACzC,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;AACtB,YAAA,IAAI,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE;gBACvB,SAAiB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC9C,aAAA;AACF,SAAA;AAED,QAAA,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;AAE1B,QAAA,OAAO,MAA2C,CAAC;KACpD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BG;IACI,OAAO,CAA0B,GAAG,IAAS,EAAA;;AAElD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAS,CAAC;;QAGrC,MAAM,SAAS,GAAG,EAAsB,CAAC;AACzC,QAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,EAAE;AACjC,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAU,CAAC,EAAE;gBAC7B,SAAiB,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAChD,aAAA;AACF,SAAA;AAED,QAAA,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC;AAE5B,QAAA,OAAO,QAA6C,CAAC;KACtD;;IAGM,MAAM,CAAC,IAAS,EAAE,OAAsB,EAAA;AAC7C,QAAA,IAAI,CAACF,0BAAa,CAAC,IAAI,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC;QACtC,OAAO,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;KAC3C;;AAGM,IAAA,MAAM,QAAQ,CAAC,IAAS,EAAE,OAAsB,EAAA;AACrD,QAAA,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;AAGrD,QAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,KAAK,EAAE;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAACG,yBAAc,CAAC,CAAC;YAC1C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACpD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAE1C,YAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;AAClC,SAAA;QAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAE1D,QAAA,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;AAAE,YAAA,OAAO,MAAM,CAAC;QAC5C,IAAI,IAAI,KAAK,SAAS;AAAE,YAAA,OAAO,MAAM,CAAC;;;;QAKtC,MAAM,MAAM,GAA+B,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAQ,EAAE,CAAC;AAE9B,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CACnD,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACrD,CAAC;QAEF,MAAM,kBAAkB,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,GAAG,KAAI;YACzD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,KAAK,GACT,WAAW,GAAG,GAAG,CAAC,KAAK,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,eAAe,EAAE,CAAC;AAEpF,YAAA,MAAM,YAAY,GAAkB;AAClC,gBAAA,GAAG,OAAO;AACV,gBAAA,MAAM,EAAE,WAAW;gBACnB,KAAK;gBACL,GAAG;gBACH,IAAI,EAAEC,sBAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;aACpC,CAAC;YAEF,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;;YAGlE,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE;AAC5D,gBAAA,aAAa,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;AACvC,aAAA;AAED,YAAA,IAAI,WAAW,CAAC,OAAO,KAAK,KAAK,EAAE;gBACjC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,aAAA;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,MAAM,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;;AAGtC,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;gBACd,MAAM;AACN,gBAAA,IAAI,EAAE,SAAS;aAChB,CAAC;AACH,SAAA;;;;AAKD,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAEhD,QAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,OAAO,GAAG,KAAI;AACrE,YAAA,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;AAEtC,YAAA,MAAM,YAAY,GAAkB;AAClC,gBAAA,GAAG,OAAO;AACV,gBAAA,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,SAAS;aACjB,CAAC;;YAGF,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;;YAG1E,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE;AAC5D,gBAAA,aAAa,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;AACvC,aAAA;AAED,YAAA,IAAI,WAAW,CAAC,OAAO,KAAK,KAAK,EAAE;gBACjC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,aAAA;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;;AAGpC,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;gBACd,MAAM;AACN,gBAAA,IAAI,EAAE,SAAS;aAChB,CAAC;AACH,SAAA;;AAGD,QAAA,MAAM,WAAW,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAEzD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAErF,QAAA,MAAM,MAAM,GACV,IAAI,CAAC,kBAAkB,KAAK,KAAK;AAC/B,cAAE,eAAe;AACjB,cAAE;AACE,gBAAA,GAAG,eAAe;AAClB,gBAAA,GAAGC,qBAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACjD,CAAC;QAER,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,EAAE;AACV,YAAA,IAAI,EAAE,MAAM;SACb,CAAC;KACH;AAED;;;AAGG;AACK,IAAA,mBAAmB,CAAC,SAAwB,EAAA;QAClD,OAAO,SAAS,YAAYC,mCAAiB,CAAC;KAC/C;AAED;;AAEG;IACK,iBAAiB,GAAA;QACvB,MAAM,QAAQ,GAAwB,EAAE,CAAC;AAEzC,QAAA,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC1D,IAAI,SAAS,YAAYA,mCAAiB,EAAE;AAC1C,gBAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAC3B,aAAA;AACF,SAAA;AAED,QAAA,OAAO,QAAQ,CAAC;KACjB;AACF,CAAA;AAED;AACA,SAAS,qBAAqB,CAAC,GAAQ,EAAE,OAAU,GAAA,IAAI,OAAO,EAAe,EAAA;;IAE3E,IAAI,GAAG,KAAK,IAAI,EAAE;AAChB,QAAA,OAAO,GAAG,CAAC;AACZ,KAAA;;AAGD,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;AACtB,QAAA,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AAChE,KAAA;;AAGD,IAAA,IAAI,CAACN,0BAAa,CAAC,GAAG,CAAC,EAAE;AACvB,QAAA,OAAO,GAAG,CAAC;AACZ,KAAA;;AAGD,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACpB,QAAA,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACzB,KAAA;;IAGD,MAAM,MAAM,GAAQ,EAAE,CAAC;IACvB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAEzB,IAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC9C,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,MAAM,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACrD,SAAA;AACF,KAAA;AAED,IAAA,OAAO,MAAM,CAAC;AAChB"}
1
+ {"version":3,"file":"object-validator.js","sources":["../../src/validators/object-validator.ts"],"sourcesContent":[null],"names":["BaseValidator","objectRule","isPlainObject","stripUnknownMutator","objectTrimMutator","unknownKeyRule","setKeyPath","except","ComputedValidator"],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import { BaseValidator } from "./base-validator";
2
+ /**
3
+ * Abstract base validator for primitive-typed fields (string, number, boolean).
4
+ *
5
+ * Provides value-membership rules that are meaningful for any single primitive value
6
+ * but not for complex structures (object, array).
7
+ *
8
+ * Do NOT expose this on the `v` factory — it is an inheritance-only base class.
9
+ *
10
+ * Hierarchy:
11
+ * BaseValidator
12
+ * └── PrimitiveValidator ← enum, in, oneOf, allowsOnly, forbids, notIn
13
+ * ├── StringValidator
14
+ * ├── NumberValidator
15
+ * │ └── FloatValidator
16
+ * ├── BooleanValidator
17
+ * └── ScalarValidator (extends PrimitiveValidator, adds asNumber/asString/accepted/declined)
18
+ *
19
+ * @example
20
+ * class MyValidator extends PrimitiveValidator {
21
+ * // inherits: in(), forbids(), enum(), oneOf(), allowsOnly(), notIn()
22
+ * }
23
+ */
24
+ export declare abstract class PrimitiveValidator extends BaseValidator {
25
+ /**
26
+ * Value must be one of the enum's values
27
+ *
28
+ * @example
29
+ * v.string().enum(Direction) // Direction is a TS enum
30
+ */
31
+ enum(values: any, errorMessage?: string): this;
32
+ /**
33
+ * Value must be one of the given values
34
+ *
35
+ * @example
36
+ * v.string().in(["admin", "user", "guest"])
37
+ * v.number().in([1, 2, 3])
38
+ */
39
+ in(values: any[], errorMessage?: string): this;
40
+ /**
41
+ * Alias for `in()`
42
+ *
43
+ * @example
44
+ * v.string().oneOf(["active", "inactive"])
45
+ */
46
+ oneOf(values: any[], errorMessage?: string): this;
47
+ /**
48
+ * Value must be one of the allowed values (stricter variant)
49
+ *
50
+ * @example
51
+ * v.string().allowsOnly(["yes", "no"])
52
+ */
53
+ allowsOnly(values: any[], errorMessage?: string): this;
54
+ /**
55
+ * Value must NOT be one of the given values
56
+ *
57
+ * @example
58
+ * v.string().forbids(["banned", "blacklisted"])
59
+ * v.number().forbids([0, -1])
60
+ */
61
+ forbids(values: any[], errorMessage?: string): this;
62
+ /**
63
+ * Alias for `forbids()`
64
+ *
65
+ * @example
66
+ * v.string().notIn(["OK", "NOT OK"])
67
+ */
68
+ notIn(values: any[], errorMessage?: string): this;
69
+ }
70
+ //# sourceMappingURL=primitive-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitive-validator.d.ts","sourceRoot":"","sources":["../../src/validators/primitive-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,8BAAsB,kBAAmB,SAAQ,aAAa;IAC5D;;;;;OAKG;IACI,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM;IAI9C;;;;;;OAMG;IACI,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAI9C;;;;;OAKG;IACI,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAIjD;;;;;OAKG;IACI,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAItD;;;;;;OAMG;IACI,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAInD;;;;;OAKG;IACI,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;CAGlD"}