@warlock.js/seal 4.0.48 → 4.0.59

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 (733) hide show
  1. package/cjs/config.d.ts +48 -0
  2. package/cjs/config.d.ts.map +1 -0
  3. package/cjs/config.js +42 -0
  4. package/cjs/config.js.map +1 -0
  5. package/cjs/factory/index.d.ts +3 -0
  6. package/cjs/factory/index.d.ts.map +1 -0
  7. package/cjs/factory/validate.d.ts +8 -0
  8. package/cjs/factory/validate.d.ts.map +1 -0
  9. package/cjs/factory/validate.js +23 -0
  10. package/cjs/factory/validate.js.map +1 -0
  11. package/cjs/factory/validators.d.ts +41 -0
  12. package/cjs/factory/validators.d.ts.map +1 -0
  13. package/cjs/factory/validators.js +45 -0
  14. package/cjs/factory/validators.js.map +1 -0
  15. package/cjs/helpers/date-helpers.d.ts +16 -0
  16. package/cjs/helpers/date-helpers.d.ts.map +1 -0
  17. package/cjs/helpers/date-helpers.js +20 -0
  18. package/cjs/helpers/date-helpers.js.map +1 -0
  19. package/cjs/helpers/file.utils.d.ts +8 -0
  20. package/cjs/helpers/file.utils.d.ts.map +1 -0
  21. package/cjs/helpers/file.utils.js +29 -0
  22. package/cjs/helpers/file.utils.js.map +1 -0
  23. package/cjs/helpers/get-field-value.d.ts +37 -0
  24. package/cjs/helpers/get-field-value.d.ts.map +1 -0
  25. package/cjs/helpers/get-field-value.js +40 -0
  26. package/cjs/helpers/get-field-value.js.map +1 -0
  27. package/cjs/helpers/index.d.ts +6 -0
  28. package/cjs/helpers/index.d.ts.map +1 -0
  29. package/cjs/helpers/is-empty-value.d.ts +2 -0
  30. package/cjs/helpers/is-empty-value.d.ts.map +1 -0
  31. package/cjs/helpers/is-empty-value.js +3 -0
  32. package/cjs/helpers/is-empty-value.js.map +1 -0
  33. package/cjs/helpers/path-helpers.d.ts +5 -0
  34. package/cjs/helpers/path-helpers.d.ts.map +1 -0
  35. package/cjs/helpers/path-helpers.js +8 -0
  36. package/cjs/helpers/path-helpers.js.map +1 -0
  37. package/cjs/helpers/validation-helpers.d.ts +4 -0
  38. package/cjs/helpers/validation-helpers.d.ts.map +1 -0
  39. package/cjs/helpers/validation-helpers.js +48 -0
  40. package/cjs/helpers/validation-helpers.js.map +1 -0
  41. package/cjs/index.d.ts +29 -0
  42. package/cjs/index.d.ts.map +1 -0
  43. package/cjs/index.js +1 -63
  44. package/cjs/index.js.map +1 -1
  45. package/cjs/mutators/array-mutators.d.ts +12 -0
  46. package/cjs/mutators/array-mutators.d.ts.map +1 -0
  47. package/cjs/mutators/array-mutators.js +37 -0
  48. package/cjs/mutators/array-mutators.js.map +1 -0
  49. package/cjs/mutators/date-mutators.d.ts +39 -0
  50. package/cjs/mutators/date-mutators.d.ts.map +1 -0
  51. package/cjs/mutators/date-mutators.js +120 -0
  52. package/cjs/mutators/date-mutators.js.map +1 -0
  53. package/cjs/mutators/index.d.ts +7 -0
  54. package/cjs/mutators/index.d.ts.map +1 -0
  55. package/cjs/mutators/number-mutators.d.ts +9 -0
  56. package/cjs/mutators/number-mutators.d.ts.map +1 -0
  57. package/cjs/mutators/number-mutators.js +23 -0
  58. package/cjs/mutators/number-mutators.js.map +1 -0
  59. package/cjs/mutators/object-mutators.d.ts +8 -0
  60. package/cjs/mutators/object-mutators.d.ts.map +1 -0
  61. package/cjs/mutators/object-mutators.js +50 -0
  62. package/cjs/mutators/object-mutators.js.map +1 -0
  63. package/cjs/mutators/scalar-mutators.d.ts +3 -0
  64. package/cjs/mutators/scalar-mutators.d.ts.map +1 -0
  65. package/cjs/mutators/scalar-mutators.js +6 -0
  66. package/cjs/mutators/scalar-mutators.js.map +1 -0
  67. package/cjs/mutators/string-mutators.d.ts +72 -0
  68. package/cjs/mutators/string-mutators.d.ts.map +1 -0
  69. package/cjs/mutators/string-mutators.js +193 -0
  70. package/cjs/mutators/string-mutators.js.map +1 -0
  71. package/cjs/plugins/index.d.ts +7 -0
  72. package/cjs/plugins/index.d.ts.map +1 -0
  73. package/cjs/plugins/plugin-system.d.ts +71 -0
  74. package/cjs/plugins/plugin-system.d.ts.map +1 -0
  75. package/cjs/plugins/plugin-system.js +68 -0
  76. package/cjs/plugins/plugin-system.js.map +1 -0
  77. package/cjs/rules/array/array-rules.d.ts +12 -0
  78. package/cjs/rules/array/array-rules.d.ts.map +1 -0
  79. package/cjs/rules/array/array-rules.js +44 -0
  80. package/cjs/rules/array/array-rules.js.map +1 -0
  81. package/cjs/rules/array/index.d.ts +2 -0
  82. package/cjs/rules/array/index.d.ts.map +1 -0
  83. package/cjs/rules/color/color-rules.d.ts +30 -0
  84. package/cjs/rules/color/color-rules.d.ts.map +1 -0
  85. package/cjs/rules/color/color-rules.js +120 -0
  86. package/cjs/rules/color/color-rules.js.map +1 -0
  87. package/cjs/rules/color/index.d.ts +2 -0
  88. package/cjs/rules/color/index.d.ts.map +1 -0
  89. package/cjs/rules/common/enum.d.ts +26 -0
  90. package/cjs/rules/common/enum.d.ts.map +1 -0
  91. package/cjs/rules/common/enum.js +55 -0
  92. package/cjs/rules/common/enum.js.map +1 -0
  93. package/cjs/rules/common/equals-field-rules.d.ts +18 -0
  94. package/cjs/rules/common/equals-field-rules.d.ts.map +1 -0
  95. package/cjs/rules/common/equals-field-rules.js +38 -0
  96. package/cjs/rules/common/equals-field-rules.js.map +1 -0
  97. package/cjs/rules/common/index.d.ts +5 -0
  98. package/cjs/rules/common/index.d.ts.map +1 -0
  99. package/cjs/rules/common/type-rules.d.ts +34 -0
  100. package/cjs/rules/common/type-rules.d.ts.map +1 -0
  101. package/cjs/rules/common/type-rules.js +104 -0
  102. package/cjs/rules/common/type-rules.js.map +1 -0
  103. package/cjs/rules/common/unknown-key.d.ts +9 -0
  104. package/cjs/rules/common/unknown-key.d.ts.map +1 -0
  105. package/cjs/rules/common/unknown-key.js +18 -0
  106. package/cjs/rules/common/unknown-key.js.map +1 -0
  107. package/cjs/rules/conditional/forbidden-if-rules.d.ts +54 -0
  108. package/cjs/rules/conditional/forbidden-if-rules.d.ts.map +1 -0
  109. package/cjs/rules/conditional/forbidden-if-rules.js +112 -0
  110. package/cjs/rules/conditional/forbidden-if-rules.js.map +1 -0
  111. package/cjs/rules/conditional/index.d.ts +10 -0
  112. package/cjs/rules/conditional/index.d.ts.map +1 -0
  113. package/cjs/rules/conditional/present-if-rules.d.ts +45 -0
  114. package/cjs/rules/conditional/present-if-rules.d.ts.map +1 -0
  115. package/cjs/rules/conditional/present-if-rules.js +98 -0
  116. package/cjs/rules/conditional/present-if-rules.js.map +1 -0
  117. package/cjs/rules/conditional/present-unless-rules.d.ts +11 -0
  118. package/cjs/rules/conditional/present-unless-rules.d.ts.map +1 -0
  119. package/cjs/rules/conditional/present-unless-rules.js +20 -0
  120. package/cjs/rules/conditional/present-unless-rules.js.map +1 -0
  121. package/cjs/rules/conditional/present-with-rules.d.ts +26 -0
  122. package/cjs/rules/conditional/present-with-rules.d.ts.map +1 -0
  123. package/cjs/rules/conditional/present-with-rules.js +63 -0
  124. package/cjs/rules/conditional/present-with-rules.js.map +1 -0
  125. package/cjs/rules/conditional/present-without-rules.d.ts +26 -0
  126. package/cjs/rules/conditional/present-without-rules.d.ts.map +1 -0
  127. package/cjs/rules/conditional/present-without-rules.js +63 -0
  128. package/cjs/rules/conditional/present-without-rules.js.map +1 -0
  129. package/cjs/rules/conditional/required-if-rules.d.ts +45 -0
  130. package/cjs/rules/conditional/required-if-rules.d.ts.map +1 -0
  131. package/cjs/rules/conditional/required-if-rules.js +98 -0
  132. package/cjs/rules/conditional/required-if-rules.js.map +1 -0
  133. package/cjs/rules/conditional/required-unless-rules.d.ts +11 -0
  134. package/cjs/rules/conditional/required-unless-rules.d.ts.map +1 -0
  135. package/cjs/rules/conditional/required-unless-rules.js +20 -0
  136. package/cjs/rules/conditional/required-unless-rules.js.map +1 -0
  137. package/cjs/rules/conditional/required-with-rules.d.ts +26 -0
  138. package/cjs/rules/conditional/required-with-rules.d.ts.map +1 -0
  139. package/cjs/rules/conditional/required-with-rules.js +63 -0
  140. package/cjs/rules/conditional/required-with-rules.js.map +1 -0
  141. package/cjs/rules/conditional/required-without-rules.d.ts +26 -0
  142. package/cjs/rules/conditional/required-without-rules.d.ts.map +1 -0
  143. package/cjs/rules/conditional/required-without-rules.js +63 -0
  144. package/cjs/rules/conditional/required-without-rules.js.map +1 -0
  145. package/cjs/rules/core/equal.d.ts +8 -0
  146. package/cjs/rules/core/equal.d.ts.map +1 -0
  147. package/cjs/rules/core/equal.js +13 -0
  148. package/cjs/rules/core/equal.js.map +1 -0
  149. package/cjs/rules/core/forbidden.d.ts +6 -0
  150. package/cjs/rules/core/forbidden.d.ts.map +1 -0
  151. package/cjs/rules/core/forbidden.js +13 -0
  152. package/cjs/rules/core/forbidden.js.map +1 -0
  153. package/cjs/rules/core/index.d.ts +6 -0
  154. package/cjs/rules/core/index.d.ts.map +1 -0
  155. package/cjs/rules/core/required.d.ts +11 -0
  156. package/cjs/rules/core/required.d.ts.map +1 -0
  157. package/cjs/rules/core/required.js +31 -0
  158. package/cjs/rules/core/required.js.map +1 -0
  159. package/cjs/rules/core/union.d.ts +9 -0
  160. package/cjs/rules/core/union.d.ts.map +1 -0
  161. package/cjs/rules/core/union.js +40 -0
  162. package/cjs/rules/core/union.js.map +1 -0
  163. package/cjs/rules/core/when.d.ts +6 -0
  164. package/cjs/rules/core/when.d.ts.map +1 -0
  165. package/cjs/rules/core/when.js +40 -0
  166. package/cjs/rules/core/when.js.map +1 -0
  167. package/cjs/rules/date/date-comparison-rules.d.ts +25 -0
  168. package/cjs/rules/date/date-comparison-rules.d.ts.map +1 -0
  169. package/cjs/rules/date/date-comparison-rules.js +78 -0
  170. package/cjs/rules/date/date-comparison-rules.js.map +1 -0
  171. package/cjs/rules/date/date-day-rules.d.ts +21 -0
  172. package/cjs/rules/date/date-day-rules.d.ts.map +1 -0
  173. package/cjs/rules/date/date-day-rules.js +65 -0
  174. package/cjs/rules/date/date-day-rules.js.map +1 -0
  175. package/cjs/rules/date/date-field-comparison-rules.d.ts +28 -0
  176. package/cjs/rules/date/date-field-comparison-rules.d.ts.map +1 -0
  177. package/cjs/rules/date/date-field-comparison-rules.js +90 -0
  178. package/cjs/rules/date/date-field-comparison-rules.js.map +1 -0
  179. package/cjs/rules/date/date-period-rules.d.ts +108 -0
  180. package/cjs/rules/date/date-period-rules.d.ts.map +1 -0
  181. package/cjs/rules/date/date-period-rules.js +566 -0
  182. package/cjs/rules/date/date-period-rules.js.map +1 -0
  183. package/cjs/rules/date/date-relative-rules.d.ts +20 -0
  184. package/cjs/rules/date/date-relative-rules.d.ts.map +1 -0
  185. package/cjs/rules/date/date-relative-rules.js +57 -0
  186. package/cjs/rules/date/date-relative-rules.js.map +1 -0
  187. package/cjs/rules/date/date-special-rules.d.ts +20 -0
  188. package/cjs/rules/date/date-special-rules.d.ts.map +1 -0
  189. package/cjs/rules/date/date-special-rules.js +72 -0
  190. package/cjs/rules/date/date-special-rules.js.map +1 -0
  191. package/cjs/rules/date/date.d.ts +93 -0
  192. package/cjs/rules/date/date.d.ts.map +1 -0
  193. package/cjs/rules/date/date.js +279 -0
  194. package/cjs/rules/date/date.js.map +1 -0
  195. package/cjs/rules/date/index.d.ts +8 -0
  196. package/cjs/rules/date/index.d.ts.map +1 -0
  197. package/cjs/rules/file/dimensions.d.ts +26 -0
  198. package/cjs/rules/file/dimensions.d.ts.map +1 -0
  199. package/cjs/rules/file/dimensions.js +56 -0
  200. package/cjs/rules/file/dimensions.js.map +1 -0
  201. package/cjs/rules/file/file-size.d.ts +14 -0
  202. package/cjs/rules/file/file-size.d.ts.map +1 -0
  203. package/cjs/rules/file/file-size.js +48 -0
  204. package/cjs/rules/file/file-size.js.map +1 -0
  205. package/cjs/rules/file/index.d.ts +11 -0
  206. package/cjs/rules/file/index.d.ts.map +1 -0
  207. package/cjs/rules/index.d.ts +19 -0
  208. package/cjs/rules/index.d.ts.map +1 -0
  209. package/cjs/rules/length/index.d.ts +2 -0
  210. package/cjs/rules/length/index.d.ts.map +1 -0
  211. package/cjs/rules/length/length-rules.d.ts +49 -0
  212. package/cjs/rules/length/length-rules.d.ts.map +1 -0
  213. package/cjs/rules/length/length-rules.js +116 -0
  214. package/cjs/rules/length/length-rules.js.map +1 -0
  215. package/cjs/rules/number/index.d.ts +2 -0
  216. package/cjs/rules/number/index.d.ts.map +1 -0
  217. package/cjs/rules/number/number-rules.d.ts +65 -0
  218. package/cjs/rules/number/number-rules.d.ts.map +1 -0
  219. package/cjs/rules/number/number-rules.js +234 -0
  220. package/cjs/rules/number/number-rules.js.map +1 -0
  221. package/cjs/rules/scalar/accepted-rule.d.ts +39 -0
  222. package/cjs/rules/scalar/accepted-rule.d.ts.map +1 -0
  223. package/cjs/rules/scalar/accepted-rule.js +110 -0
  224. package/cjs/rules/scalar/accepted-rule.js.map +1 -0
  225. package/cjs/rules/scalar/declined-rule.d.ts +39 -0
  226. package/cjs/rules/scalar/declined-rule.d.ts.map +1 -0
  227. package/cjs/rules/scalar/declined-rule.js +110 -0
  228. package/cjs/rules/scalar/declined-rule.js.map +1 -0
  229. package/cjs/rules/scalar/index.d.ts +3 -0
  230. package/cjs/rules/scalar/index.d.ts.map +1 -0
  231. package/cjs/rules/string/alpha.d.ts +14 -0
  232. package/cjs/rules/string/alpha.d.ts.map +1 -0
  233. package/cjs/rules/string/alpha.js +39 -0
  234. package/cjs/rules/string/alpha.js.map +1 -0
  235. package/cjs/rules/string/credit-card.d.ts +6 -0
  236. package/cjs/rules/string/credit-card.d.ts.map +1 -0
  237. package/cjs/rules/string/credit-card.js +31 -0
  238. package/cjs/rules/string/credit-card.js.map +1 -0
  239. package/cjs/rules/string/email.d.ts +6 -0
  240. package/cjs/rules/string/email.d.ts.map +1 -0
  241. package/cjs/rules/string/email.js +13 -0
  242. package/cjs/rules/string/email.js.map +1 -0
  243. package/cjs/rules/string/index.d.ts +17 -0
  244. package/cjs/rules/string/index.d.ts.map +1 -0
  245. package/cjs/rules/string/ip.d.ts +14 -0
  246. package/cjs/rules/string/ip.d.ts.map +1 -0
  247. package/cjs/rules/string/ip.js +39 -0
  248. package/cjs/rules/string/ip.js.map +1 -0
  249. package/cjs/rules/string/matches.d.ts +8 -0
  250. package/cjs/rules/string/matches.d.ts.map +1 -0
  251. package/cjs/rules/string/matches.js +14 -0
  252. package/cjs/rules/string/matches.js.map +1 -0
  253. package/cjs/rules/string/pattern.d.ts +8 -0
  254. package/cjs/rules/string/pattern.d.ts.map +1 -0
  255. package/cjs/rules/string/pattern.js +13 -0
  256. package/cjs/rules/string/pattern.js.map +1 -0
  257. package/cjs/rules/string/string-comparison.d.ts +26 -0
  258. package/cjs/rules/string/string-comparison.d.ts.map +1 -0
  259. package/cjs/rules/string/string-comparison.js +52 -0
  260. package/cjs/rules/string/string-comparison.js.map +1 -0
  261. package/cjs/rules/string/strong-password-rule.d.ts +14 -0
  262. package/cjs/rules/string/strong-password-rule.d.ts.map +1 -0
  263. package/cjs/rules/string/strong-password-rule.js +38 -0
  264. package/cjs/rules/string/strong-password-rule.js.map +1 -0
  265. package/cjs/rules/string/url.d.ts +6 -0
  266. package/cjs/rules/string/url.d.ts.map +1 -0
  267. package/cjs/rules/string/url.js +16 -0
  268. package/cjs/rules/string/url.js.map +1 -0
  269. package/cjs/rules/string/without-whitespace.d.ts +6 -0
  270. package/cjs/rules/string/without-whitespace.d.ts.map +1 -0
  271. package/cjs/rules/string/without-whitespace.js +13 -0
  272. package/cjs/rules/string/without-whitespace.js.map +1 -0
  273. package/cjs/types/conditional-types.d.ts +15 -0
  274. package/cjs/types/conditional-types.d.ts.map +1 -0
  275. package/cjs/types/context-types.d.ts +48 -0
  276. package/cjs/types/context-types.d.ts.map +1 -0
  277. package/cjs/types/data-transformer-types.d.ts +25 -0
  278. package/cjs/types/data-transformer-types.d.ts.map +1 -0
  279. package/cjs/types/date-types.d.ts +9 -0
  280. package/cjs/types/date-types.d.ts.map +1 -0
  281. package/cjs/types/date-types.js +12 -0
  282. package/cjs/types/date-types.js.map +1 -0
  283. package/cjs/types/file.types.d.ts +5 -0
  284. package/cjs/types/file.types.d.ts.map +1 -0
  285. package/cjs/types/index.d.ts +11 -0
  286. package/cjs/types/index.d.ts.map +1 -0
  287. package/cjs/types/inference-types.d.ts +27 -0
  288. package/cjs/types/inference-types.d.ts.map +1 -0
  289. package/cjs/types/mutator-types.d.ts +27 -0
  290. package/cjs/types/mutator-types.d.ts.map +1 -0
  291. package/cjs/types/result-types.d.ts +19 -0
  292. package/cjs/types/result-types.d.ts.map +1 -0
  293. package/cjs/types/rule-types.d.ts +54 -0
  294. package/cjs/types/rule-types.d.ts.map +1 -0
  295. package/cjs/types/schema-types.d.ts +6 -0
  296. package/cjs/types/schema-types.d.ts.map +1 -0
  297. package/cjs/validators/any-validator.d.ts +7 -0
  298. package/cjs/validators/any-validator.d.ts.map +1 -0
  299. package/cjs/validators/any-validator.js +5 -0
  300. package/cjs/validators/any-validator.js.map +1 -0
  301. package/cjs/validators/array-validator.d.ts +59 -0
  302. package/cjs/validators/array-validator.d.ts.map +1 -0
  303. package/cjs/validators/array-validator.js +134 -0
  304. package/cjs/validators/array-validator.js.map +1 -0
  305. package/cjs/validators/base-validator.d.ts +610 -0
  306. package/cjs/validators/base-validator.d.ts.map +1 -0
  307. package/cjs/validators/base-validator.js +1160 -0
  308. package/cjs/validators/base-validator.js.map +1 -0
  309. package/cjs/validators/boolean-validator.d.ts +47 -0
  310. package/cjs/validators/boolean-validator.d.ts.map +1 -0
  311. package/cjs/validators/boolean-validator.js +54 -0
  312. package/cjs/validators/boolean-validator.js.map +1 -0
  313. package/cjs/validators/computed-validator.d.ts +64 -0
  314. package/cjs/validators/computed-validator.d.ts.map +1 -0
  315. package/cjs/validators/computed-validator.js +109 -0
  316. package/cjs/validators/computed-validator.js.map +1 -0
  317. package/cjs/validators/date-validator.d.ts +307 -0
  318. package/cjs/validators/date-validator.d.ts.map +1 -0
  319. package/cjs/validators/date-validator.js +645 -0
  320. package/cjs/validators/date-validator.js.map +1 -0
  321. package/cjs/validators/float-validator.d.ts +8 -0
  322. package/cjs/validators/float-validator.d.ts.map +1 -0
  323. package/cjs/validators/float-validator.js +9 -0
  324. package/cjs/validators/float-validator.js.map +1 -0
  325. package/cjs/validators/index.d.ts +26 -0
  326. package/cjs/validators/index.d.ts.map +1 -0
  327. package/cjs/validators/int-validator.d.ts +8 -0
  328. package/cjs/validators/int-validator.d.ts.map +1 -0
  329. package/cjs/validators/int-validator.js +9 -0
  330. package/cjs/validators/int-validator.js.map +1 -0
  331. package/cjs/validators/managed-validator.d.ts +38 -0
  332. package/cjs/validators/managed-validator.d.ts.map +1 -0
  333. package/cjs/validators/managed-validator.js +34 -0
  334. package/cjs/validators/managed-validator.js.map +1 -0
  335. package/cjs/validators/number-validator.d.ts +113 -0
  336. package/cjs/validators/number-validator.d.ts.map +1 -0
  337. package/cjs/validators/number-validator.js +192 -0
  338. package/cjs/validators/number-validator.js.map +1 -0
  339. package/cjs/validators/numeric-validator.d.ts +15 -0
  340. package/cjs/validators/numeric-validator.d.ts.map +1 -0
  341. package/cjs/validators/numeric-validator.js +18 -0
  342. package/cjs/validators/numeric-validator.js.map +1 -0
  343. package/cjs/validators/object-validator.d.ts +187 -0
  344. package/cjs/validators/object-validator.d.ts.map +1 -0
  345. package/cjs/validators/object-validator.js +416 -0
  346. package/cjs/validators/object-validator.js.map +1 -0
  347. package/cjs/validators/record-validator.d.ts +33 -0
  348. package/cjs/validators/record-validator.d.ts.map +1 -0
  349. package/cjs/validators/record-validator.js +70 -0
  350. package/cjs/validators/record-validator.js.map +1 -0
  351. package/cjs/validators/scalar-validator.d.ts +82 -0
  352. package/cjs/validators/scalar-validator.d.ts.map +1 -0
  353. package/cjs/validators/scalar-validator.js +160 -0
  354. package/cjs/validators/scalar-validator.js.map +1 -0
  355. package/cjs/validators/string-validator.d.ts +191 -0
  356. package/cjs/validators/string-validator.d.ts.map +1 -0
  357. package/cjs/validators/string-validator.js +410 -0
  358. package/cjs/validators/string-validator.js.map +1 -0
  359. package/cjs/validators/tuple-validator.d.ts +34 -0
  360. package/cjs/validators/tuple-validator.d.ts.map +1 -0
  361. package/cjs/validators/tuple-validator.js +79 -0
  362. package/cjs/validators/tuple-validator.js.map +1 -0
  363. package/cjs/validators/union-validator.d.ts +42 -0
  364. package/cjs/validators/union-validator.d.ts.map +1 -0
  365. package/cjs/validators/union-validator.js +44 -0
  366. package/cjs/validators/union-validator.js.map +1 -0
  367. package/esm/config.d.ts +48 -0
  368. package/esm/config.d.ts.map +1 -0
  369. package/esm/config.js +42 -0
  370. package/esm/config.js.map +1 -0
  371. package/esm/factory/index.d.ts +3 -0
  372. package/esm/factory/index.d.ts.map +1 -0
  373. package/esm/factory/validate.d.ts +8 -0
  374. package/esm/factory/validate.d.ts.map +1 -0
  375. package/esm/factory/validate.js +23 -0
  376. package/esm/factory/validate.js.map +1 -0
  377. package/esm/factory/validators.d.ts +41 -0
  378. package/esm/factory/validators.d.ts.map +1 -0
  379. package/esm/factory/validators.js +45 -0
  380. package/esm/factory/validators.js.map +1 -0
  381. package/esm/helpers/date-helpers.d.ts +16 -0
  382. package/esm/helpers/date-helpers.d.ts.map +1 -0
  383. package/esm/helpers/date-helpers.js +20 -0
  384. package/esm/helpers/date-helpers.js.map +1 -0
  385. package/esm/helpers/file.utils.d.ts +8 -0
  386. package/esm/helpers/file.utils.d.ts.map +1 -0
  387. package/esm/helpers/file.utils.js +29 -0
  388. package/esm/helpers/file.utils.js.map +1 -0
  389. package/esm/helpers/get-field-value.d.ts +37 -0
  390. package/esm/helpers/get-field-value.d.ts.map +1 -0
  391. package/esm/helpers/get-field-value.js +40 -0
  392. package/esm/helpers/get-field-value.js.map +1 -0
  393. package/esm/helpers/index.d.ts +6 -0
  394. package/esm/helpers/index.d.ts.map +1 -0
  395. package/esm/helpers/is-empty-value.d.ts +2 -0
  396. package/esm/helpers/is-empty-value.d.ts.map +1 -0
  397. package/esm/helpers/is-empty-value.js +3 -0
  398. package/esm/helpers/is-empty-value.js.map +1 -0
  399. package/esm/helpers/path-helpers.d.ts +5 -0
  400. package/esm/helpers/path-helpers.d.ts.map +1 -0
  401. package/esm/helpers/path-helpers.js +8 -0
  402. package/esm/helpers/path-helpers.js.map +1 -0
  403. package/esm/helpers/validation-helpers.d.ts +4 -0
  404. package/esm/helpers/validation-helpers.d.ts.map +1 -0
  405. package/esm/helpers/validation-helpers.js +48 -0
  406. package/esm/helpers/validation-helpers.js.map +1 -0
  407. package/esm/index.d.ts +29 -0
  408. package/esm/index.d.ts.map +1 -0
  409. package/esm/index.js +1 -10
  410. package/esm/index.js.map +1 -1
  411. package/esm/mutators/array-mutators.d.ts +12 -0
  412. package/esm/mutators/array-mutators.d.ts.map +1 -0
  413. package/esm/mutators/array-mutators.js +37 -0
  414. package/esm/mutators/array-mutators.js.map +1 -0
  415. package/esm/mutators/date-mutators.d.ts +39 -0
  416. package/esm/mutators/date-mutators.d.ts.map +1 -0
  417. package/esm/mutators/date-mutators.js +120 -0
  418. package/esm/mutators/date-mutators.js.map +1 -0
  419. package/esm/mutators/index.d.ts +7 -0
  420. package/esm/mutators/index.d.ts.map +1 -0
  421. package/esm/mutators/number-mutators.d.ts +9 -0
  422. package/esm/mutators/number-mutators.d.ts.map +1 -0
  423. package/esm/mutators/number-mutators.js +23 -0
  424. package/esm/mutators/number-mutators.js.map +1 -0
  425. package/esm/mutators/object-mutators.d.ts +8 -0
  426. package/esm/mutators/object-mutators.d.ts.map +1 -0
  427. package/esm/mutators/object-mutators.js +50 -0
  428. package/esm/mutators/object-mutators.js.map +1 -0
  429. package/esm/mutators/scalar-mutators.d.ts +3 -0
  430. package/esm/mutators/scalar-mutators.d.ts.map +1 -0
  431. package/esm/mutators/scalar-mutators.js +6 -0
  432. package/esm/mutators/scalar-mutators.js.map +1 -0
  433. package/esm/mutators/string-mutators.d.ts +72 -0
  434. package/esm/mutators/string-mutators.d.ts.map +1 -0
  435. package/esm/mutators/string-mutators.js +193 -0
  436. package/esm/mutators/string-mutators.js.map +1 -0
  437. package/esm/plugins/index.d.ts +7 -0
  438. package/esm/plugins/index.d.ts.map +1 -0
  439. package/esm/plugins/plugin-system.d.ts +71 -0
  440. package/esm/plugins/plugin-system.d.ts.map +1 -0
  441. package/esm/plugins/plugin-system.js +68 -0
  442. package/esm/plugins/plugin-system.js.map +1 -0
  443. package/esm/rules/array/array-rules.d.ts +12 -0
  444. package/esm/rules/array/array-rules.d.ts.map +1 -0
  445. package/esm/rules/array/array-rules.js +44 -0
  446. package/esm/rules/array/array-rules.js.map +1 -0
  447. package/esm/rules/array/index.d.ts +2 -0
  448. package/esm/rules/array/index.d.ts.map +1 -0
  449. package/esm/rules/color/color-rules.d.ts +30 -0
  450. package/esm/rules/color/color-rules.d.ts.map +1 -0
  451. package/esm/rules/color/color-rules.js +120 -0
  452. package/esm/rules/color/color-rules.js.map +1 -0
  453. package/esm/rules/color/index.d.ts +2 -0
  454. package/esm/rules/color/index.d.ts.map +1 -0
  455. package/esm/rules/common/enum.d.ts +26 -0
  456. package/esm/rules/common/enum.d.ts.map +1 -0
  457. package/esm/rules/common/enum.js +55 -0
  458. package/esm/rules/common/enum.js.map +1 -0
  459. package/esm/rules/common/equals-field-rules.d.ts +18 -0
  460. package/esm/rules/common/equals-field-rules.d.ts.map +1 -0
  461. package/esm/rules/common/equals-field-rules.js +38 -0
  462. package/esm/rules/common/equals-field-rules.js.map +1 -0
  463. package/esm/rules/common/index.d.ts +5 -0
  464. package/esm/rules/common/index.d.ts.map +1 -0
  465. package/esm/rules/common/type-rules.d.ts +34 -0
  466. package/esm/rules/common/type-rules.d.ts.map +1 -0
  467. package/esm/rules/common/type-rules.js +104 -0
  468. package/esm/rules/common/type-rules.js.map +1 -0
  469. package/esm/rules/common/unknown-key.d.ts +9 -0
  470. package/esm/rules/common/unknown-key.d.ts.map +1 -0
  471. package/esm/rules/common/unknown-key.js +18 -0
  472. package/esm/rules/common/unknown-key.js.map +1 -0
  473. package/esm/rules/conditional/forbidden-if-rules.d.ts +54 -0
  474. package/esm/rules/conditional/forbidden-if-rules.d.ts.map +1 -0
  475. package/esm/rules/conditional/forbidden-if-rules.js +112 -0
  476. package/esm/rules/conditional/forbidden-if-rules.js.map +1 -0
  477. package/esm/rules/conditional/index.d.ts +10 -0
  478. package/esm/rules/conditional/index.d.ts.map +1 -0
  479. package/esm/rules/conditional/present-if-rules.d.ts +45 -0
  480. package/esm/rules/conditional/present-if-rules.d.ts.map +1 -0
  481. package/esm/rules/conditional/present-if-rules.js +98 -0
  482. package/esm/rules/conditional/present-if-rules.js.map +1 -0
  483. package/esm/rules/conditional/present-unless-rules.d.ts +11 -0
  484. package/esm/rules/conditional/present-unless-rules.d.ts.map +1 -0
  485. package/esm/rules/conditional/present-unless-rules.js +20 -0
  486. package/esm/rules/conditional/present-unless-rules.js.map +1 -0
  487. package/esm/rules/conditional/present-with-rules.d.ts +26 -0
  488. package/esm/rules/conditional/present-with-rules.d.ts.map +1 -0
  489. package/esm/rules/conditional/present-with-rules.js +63 -0
  490. package/esm/rules/conditional/present-with-rules.js.map +1 -0
  491. package/esm/rules/conditional/present-without-rules.d.ts +26 -0
  492. package/esm/rules/conditional/present-without-rules.d.ts.map +1 -0
  493. package/esm/rules/conditional/present-without-rules.js +63 -0
  494. package/esm/rules/conditional/present-without-rules.js.map +1 -0
  495. package/esm/rules/conditional/required-if-rules.d.ts +45 -0
  496. package/esm/rules/conditional/required-if-rules.d.ts.map +1 -0
  497. package/esm/rules/conditional/required-if-rules.js +98 -0
  498. package/esm/rules/conditional/required-if-rules.js.map +1 -0
  499. package/esm/rules/conditional/required-unless-rules.d.ts +11 -0
  500. package/esm/rules/conditional/required-unless-rules.d.ts.map +1 -0
  501. package/esm/rules/conditional/required-unless-rules.js +20 -0
  502. package/esm/rules/conditional/required-unless-rules.js.map +1 -0
  503. package/esm/rules/conditional/required-with-rules.d.ts +26 -0
  504. package/esm/rules/conditional/required-with-rules.d.ts.map +1 -0
  505. package/esm/rules/conditional/required-with-rules.js +63 -0
  506. package/esm/rules/conditional/required-with-rules.js.map +1 -0
  507. package/esm/rules/conditional/required-without-rules.d.ts +26 -0
  508. package/esm/rules/conditional/required-without-rules.d.ts.map +1 -0
  509. package/esm/rules/conditional/required-without-rules.js +63 -0
  510. package/esm/rules/conditional/required-without-rules.js.map +1 -0
  511. package/esm/rules/core/equal.d.ts +8 -0
  512. package/esm/rules/core/equal.d.ts.map +1 -0
  513. package/esm/rules/core/equal.js +13 -0
  514. package/esm/rules/core/equal.js.map +1 -0
  515. package/esm/rules/core/forbidden.d.ts +6 -0
  516. package/esm/rules/core/forbidden.d.ts.map +1 -0
  517. package/esm/rules/core/forbidden.js +13 -0
  518. package/esm/rules/core/forbidden.js.map +1 -0
  519. package/esm/rules/core/index.d.ts +6 -0
  520. package/esm/rules/core/index.d.ts.map +1 -0
  521. package/esm/rules/core/required.d.ts +11 -0
  522. package/esm/rules/core/required.d.ts.map +1 -0
  523. package/esm/rules/core/required.js +31 -0
  524. package/esm/rules/core/required.js.map +1 -0
  525. package/esm/rules/core/union.d.ts +9 -0
  526. package/esm/rules/core/union.d.ts.map +1 -0
  527. package/esm/rules/core/union.js +40 -0
  528. package/esm/rules/core/union.js.map +1 -0
  529. package/esm/rules/core/when.d.ts +6 -0
  530. package/esm/rules/core/when.d.ts.map +1 -0
  531. package/esm/rules/core/when.js +40 -0
  532. package/esm/rules/core/when.js.map +1 -0
  533. package/esm/rules/date/date-comparison-rules.d.ts +25 -0
  534. package/esm/rules/date/date-comparison-rules.d.ts.map +1 -0
  535. package/esm/rules/date/date-comparison-rules.js +78 -0
  536. package/esm/rules/date/date-comparison-rules.js.map +1 -0
  537. package/esm/rules/date/date-day-rules.d.ts +21 -0
  538. package/esm/rules/date/date-day-rules.d.ts.map +1 -0
  539. package/esm/rules/date/date-day-rules.js +65 -0
  540. package/esm/rules/date/date-day-rules.js.map +1 -0
  541. package/esm/rules/date/date-field-comparison-rules.d.ts +28 -0
  542. package/esm/rules/date/date-field-comparison-rules.d.ts.map +1 -0
  543. package/esm/rules/date/date-field-comparison-rules.js +90 -0
  544. package/esm/rules/date/date-field-comparison-rules.js.map +1 -0
  545. package/esm/rules/date/date-period-rules.d.ts +108 -0
  546. package/esm/rules/date/date-period-rules.d.ts.map +1 -0
  547. package/esm/rules/date/date-period-rules.js +566 -0
  548. package/esm/rules/date/date-period-rules.js.map +1 -0
  549. package/esm/rules/date/date-relative-rules.d.ts +20 -0
  550. package/esm/rules/date/date-relative-rules.d.ts.map +1 -0
  551. package/esm/rules/date/date-relative-rules.js +57 -0
  552. package/esm/rules/date/date-relative-rules.js.map +1 -0
  553. package/esm/rules/date/date-special-rules.d.ts +20 -0
  554. package/esm/rules/date/date-special-rules.d.ts.map +1 -0
  555. package/esm/rules/date/date-special-rules.js +72 -0
  556. package/esm/rules/date/date-special-rules.js.map +1 -0
  557. package/esm/rules/date/date.d.ts +93 -0
  558. package/esm/rules/date/date.d.ts.map +1 -0
  559. package/esm/rules/date/date.js +279 -0
  560. package/esm/rules/date/date.js.map +1 -0
  561. package/esm/rules/date/index.d.ts +8 -0
  562. package/esm/rules/date/index.d.ts.map +1 -0
  563. package/esm/rules/file/dimensions.d.ts +26 -0
  564. package/esm/rules/file/dimensions.d.ts.map +1 -0
  565. package/esm/rules/file/dimensions.js +56 -0
  566. package/esm/rules/file/dimensions.js.map +1 -0
  567. package/esm/rules/file/file-size.d.ts +14 -0
  568. package/esm/rules/file/file-size.d.ts.map +1 -0
  569. package/esm/rules/file/file-size.js +48 -0
  570. package/esm/rules/file/file-size.js.map +1 -0
  571. package/esm/rules/file/index.d.ts +11 -0
  572. package/esm/rules/file/index.d.ts.map +1 -0
  573. package/esm/rules/index.d.ts +19 -0
  574. package/esm/rules/index.d.ts.map +1 -0
  575. package/esm/rules/length/index.d.ts +2 -0
  576. package/esm/rules/length/index.d.ts.map +1 -0
  577. package/esm/rules/length/length-rules.d.ts +49 -0
  578. package/esm/rules/length/length-rules.d.ts.map +1 -0
  579. package/esm/rules/length/length-rules.js +116 -0
  580. package/esm/rules/length/length-rules.js.map +1 -0
  581. package/esm/rules/number/index.d.ts +2 -0
  582. package/esm/rules/number/index.d.ts.map +1 -0
  583. package/esm/rules/number/number-rules.d.ts +65 -0
  584. package/esm/rules/number/number-rules.d.ts.map +1 -0
  585. package/esm/rules/number/number-rules.js +234 -0
  586. package/esm/rules/number/number-rules.js.map +1 -0
  587. package/esm/rules/scalar/accepted-rule.d.ts +39 -0
  588. package/esm/rules/scalar/accepted-rule.d.ts.map +1 -0
  589. package/esm/rules/scalar/accepted-rule.js +110 -0
  590. package/esm/rules/scalar/accepted-rule.js.map +1 -0
  591. package/esm/rules/scalar/declined-rule.d.ts +39 -0
  592. package/esm/rules/scalar/declined-rule.d.ts.map +1 -0
  593. package/esm/rules/scalar/declined-rule.js +110 -0
  594. package/esm/rules/scalar/declined-rule.js.map +1 -0
  595. package/esm/rules/scalar/index.d.ts +3 -0
  596. package/esm/rules/scalar/index.d.ts.map +1 -0
  597. package/esm/rules/string/alpha.d.ts +14 -0
  598. package/esm/rules/string/alpha.d.ts.map +1 -0
  599. package/esm/rules/string/alpha.js +39 -0
  600. package/esm/rules/string/alpha.js.map +1 -0
  601. package/esm/rules/string/credit-card.d.ts +6 -0
  602. package/esm/rules/string/credit-card.d.ts.map +1 -0
  603. package/esm/rules/string/credit-card.js +31 -0
  604. package/esm/rules/string/credit-card.js.map +1 -0
  605. package/esm/rules/string/email.d.ts +6 -0
  606. package/esm/rules/string/email.d.ts.map +1 -0
  607. package/esm/rules/string/email.js +13 -0
  608. package/esm/rules/string/email.js.map +1 -0
  609. package/esm/rules/string/index.d.ts +17 -0
  610. package/esm/rules/string/index.d.ts.map +1 -0
  611. package/esm/rules/string/ip.d.ts +14 -0
  612. package/esm/rules/string/ip.d.ts.map +1 -0
  613. package/esm/rules/string/ip.js +39 -0
  614. package/esm/rules/string/ip.js.map +1 -0
  615. package/esm/rules/string/matches.d.ts +8 -0
  616. package/esm/rules/string/matches.d.ts.map +1 -0
  617. package/esm/rules/string/matches.js +14 -0
  618. package/esm/rules/string/matches.js.map +1 -0
  619. package/esm/rules/string/pattern.d.ts +8 -0
  620. package/esm/rules/string/pattern.d.ts.map +1 -0
  621. package/esm/rules/string/pattern.js +13 -0
  622. package/esm/rules/string/pattern.js.map +1 -0
  623. package/esm/rules/string/string-comparison.d.ts +26 -0
  624. package/esm/rules/string/string-comparison.d.ts.map +1 -0
  625. package/esm/rules/string/string-comparison.js +52 -0
  626. package/esm/rules/string/string-comparison.js.map +1 -0
  627. package/esm/rules/string/strong-password-rule.d.ts +14 -0
  628. package/esm/rules/string/strong-password-rule.d.ts.map +1 -0
  629. package/esm/rules/string/strong-password-rule.js +38 -0
  630. package/esm/rules/string/strong-password-rule.js.map +1 -0
  631. package/esm/rules/string/url.d.ts +6 -0
  632. package/esm/rules/string/url.d.ts.map +1 -0
  633. package/esm/rules/string/url.js +16 -0
  634. package/esm/rules/string/url.js.map +1 -0
  635. package/esm/rules/string/without-whitespace.d.ts +6 -0
  636. package/esm/rules/string/without-whitespace.d.ts.map +1 -0
  637. package/esm/rules/string/without-whitespace.js +13 -0
  638. package/esm/rules/string/without-whitespace.js.map +1 -0
  639. package/esm/types/conditional-types.d.ts +15 -0
  640. package/esm/types/conditional-types.d.ts.map +1 -0
  641. package/esm/types/context-types.d.ts +48 -0
  642. package/esm/types/context-types.d.ts.map +1 -0
  643. package/esm/types/data-transformer-types.d.ts +25 -0
  644. package/esm/types/data-transformer-types.d.ts.map +1 -0
  645. package/esm/types/date-types.d.ts +9 -0
  646. package/esm/types/date-types.d.ts.map +1 -0
  647. package/esm/types/date-types.js +12 -0
  648. package/esm/types/date-types.js.map +1 -0
  649. package/esm/types/file.types.d.ts +5 -0
  650. package/esm/types/file.types.d.ts.map +1 -0
  651. package/esm/types/index.d.ts +11 -0
  652. package/esm/types/index.d.ts.map +1 -0
  653. package/esm/types/inference-types.d.ts +27 -0
  654. package/esm/types/inference-types.d.ts.map +1 -0
  655. package/esm/types/mutator-types.d.ts +27 -0
  656. package/esm/types/mutator-types.d.ts.map +1 -0
  657. package/esm/types/result-types.d.ts +19 -0
  658. package/esm/types/result-types.d.ts.map +1 -0
  659. package/esm/types/rule-types.d.ts +54 -0
  660. package/esm/types/rule-types.d.ts.map +1 -0
  661. package/esm/types/schema-types.d.ts +6 -0
  662. package/esm/types/schema-types.d.ts.map +1 -0
  663. package/esm/validators/any-validator.d.ts +7 -0
  664. package/esm/validators/any-validator.d.ts.map +1 -0
  665. package/esm/validators/any-validator.js +5 -0
  666. package/esm/validators/any-validator.js.map +1 -0
  667. package/esm/validators/array-validator.d.ts +59 -0
  668. package/esm/validators/array-validator.d.ts.map +1 -0
  669. package/esm/validators/array-validator.js +134 -0
  670. package/esm/validators/array-validator.js.map +1 -0
  671. package/esm/validators/base-validator.d.ts +610 -0
  672. package/esm/validators/base-validator.d.ts.map +1 -0
  673. package/esm/validators/base-validator.js +1160 -0
  674. package/esm/validators/base-validator.js.map +1 -0
  675. package/esm/validators/boolean-validator.d.ts +47 -0
  676. package/esm/validators/boolean-validator.d.ts.map +1 -0
  677. package/esm/validators/boolean-validator.js +54 -0
  678. package/esm/validators/boolean-validator.js.map +1 -0
  679. package/esm/validators/computed-validator.d.ts +64 -0
  680. package/esm/validators/computed-validator.d.ts.map +1 -0
  681. package/esm/validators/computed-validator.js +109 -0
  682. package/esm/validators/computed-validator.js.map +1 -0
  683. package/esm/validators/date-validator.d.ts +307 -0
  684. package/esm/validators/date-validator.d.ts.map +1 -0
  685. package/esm/validators/date-validator.js +645 -0
  686. package/esm/validators/date-validator.js.map +1 -0
  687. package/esm/validators/float-validator.d.ts +8 -0
  688. package/esm/validators/float-validator.d.ts.map +1 -0
  689. package/esm/validators/float-validator.js +9 -0
  690. package/esm/validators/float-validator.js.map +1 -0
  691. package/esm/validators/index.d.ts +26 -0
  692. package/esm/validators/index.d.ts.map +1 -0
  693. package/esm/validators/int-validator.d.ts +8 -0
  694. package/esm/validators/int-validator.d.ts.map +1 -0
  695. package/esm/validators/int-validator.js +9 -0
  696. package/esm/validators/int-validator.js.map +1 -0
  697. package/esm/validators/managed-validator.d.ts +38 -0
  698. package/esm/validators/managed-validator.d.ts.map +1 -0
  699. package/esm/validators/managed-validator.js +34 -0
  700. package/esm/validators/managed-validator.js.map +1 -0
  701. package/esm/validators/number-validator.d.ts +113 -0
  702. package/esm/validators/number-validator.d.ts.map +1 -0
  703. package/esm/validators/number-validator.js +192 -0
  704. package/esm/validators/number-validator.js.map +1 -0
  705. package/esm/validators/numeric-validator.d.ts +15 -0
  706. package/esm/validators/numeric-validator.d.ts.map +1 -0
  707. package/esm/validators/numeric-validator.js +18 -0
  708. package/esm/validators/numeric-validator.js.map +1 -0
  709. package/esm/validators/object-validator.d.ts +187 -0
  710. package/esm/validators/object-validator.d.ts.map +1 -0
  711. package/esm/validators/object-validator.js +416 -0
  712. package/esm/validators/object-validator.js.map +1 -0
  713. package/esm/validators/record-validator.d.ts +33 -0
  714. package/esm/validators/record-validator.d.ts.map +1 -0
  715. package/esm/validators/record-validator.js +70 -0
  716. package/esm/validators/record-validator.js.map +1 -0
  717. package/esm/validators/scalar-validator.d.ts +82 -0
  718. package/esm/validators/scalar-validator.d.ts.map +1 -0
  719. package/esm/validators/scalar-validator.js +160 -0
  720. package/esm/validators/scalar-validator.js.map +1 -0
  721. package/esm/validators/string-validator.d.ts +191 -0
  722. package/esm/validators/string-validator.d.ts.map +1 -0
  723. package/esm/validators/string-validator.js +410 -0
  724. package/esm/validators/string-validator.js.map +1 -0
  725. package/esm/validators/tuple-validator.d.ts +34 -0
  726. package/esm/validators/tuple-validator.d.ts.map +1 -0
  727. package/esm/validators/tuple-validator.js +79 -0
  728. package/esm/validators/tuple-validator.js.map +1 -0
  729. package/esm/validators/union-validator.d.ts +42 -0
  730. package/esm/validators/union-validator.d.ts.map +1 -0
  731. package/esm/validators/union-validator.js +44 -0
  732. package/esm/validators/union-validator.js.map +1 -0
  733. package/package.json +47 -36
@@ -0,0 +1,98 @@
1
+ 'use strict';var getFieldValue=require('../../helpers/get-field-value.js'),validationHelpers=require('../../helpers/validation-helpers.js'),isEmptyValue=require('../../helpers/is-empty-value.js');/**
2
+ * Present if rule - field must be present if another field equals a specific value
3
+ * Supports both global and sibling scope
4
+ */
5
+ const presentIfRule = {
6
+ name: "presentIf",
7
+ description: "The field must be present if another field equals a specific value",
8
+ sortOrder: -2,
9
+ requiresValue: false,
10
+ defaultErrorMessage: "The :input field must be present",
11
+ async validate(value, context) {
12
+ const { value: expectedValue } = this.context.options;
13
+ const fieldValue = getFieldValue.getFieldValue(this, context);
14
+ // Field must be present if the other field equals the expected value
15
+ if (value === undefined && fieldValue === expectedValue) {
16
+ return validationHelpers.invalidRule(this, context);
17
+ }
18
+ return validationHelpers.VALID_RULE;
19
+ },
20
+ };
21
+ /**
22
+ * Present if empty rule - field must be present if another field is empty
23
+ * Supports both global and sibling scope
24
+ */
25
+ const presentIfEmptyRule = {
26
+ name: "presentIfEmpty",
27
+ description: "The field must be present if another field is empty",
28
+ sortOrder: -2,
29
+ requiresValue: false,
30
+ defaultErrorMessage: "The :input field must be present",
31
+ async validate(value, context) {
32
+ const fieldValue = getFieldValue.getFieldValue(this, context);
33
+ // Field must be present if the other field is empty
34
+ if (value === undefined && isEmptyValue.isEmptyValue(fieldValue)) {
35
+ return validationHelpers.invalidRule(this, context);
36
+ }
37
+ return validationHelpers.VALID_RULE;
38
+ },
39
+ };
40
+ /**
41
+ * Present if not empty rule - field must be present if another field is not empty
42
+ * Supports both global and sibling scope
43
+ */
44
+ const presentIfNotEmptyRule = {
45
+ name: "presentIfNotEmpty",
46
+ description: "The field must be present if another field is not empty",
47
+ sortOrder: -2,
48
+ requiresValue: false,
49
+ defaultErrorMessage: "The :input field must be present",
50
+ async validate(value, context) {
51
+ const fieldValue = getFieldValue.getFieldValue(this, context);
52
+ // Field must be present if the other field is not empty
53
+ if (value === undefined && !isEmptyValue.isEmptyValue(fieldValue)) {
54
+ return validationHelpers.invalidRule(this, context);
55
+ }
56
+ return validationHelpers.VALID_RULE;
57
+ },
58
+ };
59
+ /**
60
+ * Present if in rule - field must be present if another field's value is in the given array
61
+ * Supports both global and sibling scope
62
+ */
63
+ const presentIfInRule = {
64
+ name: "presentIfIn",
65
+ description: "The field must be present if another field's value is in the given array",
66
+ sortOrder: -2,
67
+ requiresValue: false,
68
+ defaultErrorMessage: "The :input field must be present",
69
+ async validate(value, context) {
70
+ const { values } = this.context.options;
71
+ const fieldValue = getFieldValue.getFieldValue(this, context);
72
+ // Field must be present if the other field's value is in the array
73
+ if (value === undefined && values.includes(fieldValue)) {
74
+ return validationHelpers.invalidRule(this, context);
75
+ }
76
+ return validationHelpers.VALID_RULE;
77
+ },
78
+ };
79
+ /**
80
+ * Present if not in rule - field must be present if another field's value is NOT in the given array
81
+ * Supports both global and sibling scope
82
+ */
83
+ const presentIfNotInRule = {
84
+ name: "presentIfNotIn",
85
+ description: "The field must be present if another field's value is NOT in the given array",
86
+ sortOrder: -2,
87
+ requiresValue: false,
88
+ defaultErrorMessage: "The :input field must be present",
89
+ async validate(value, context) {
90
+ const { values } = this.context.options;
91
+ const fieldValue = getFieldValue.getFieldValue(this, context);
92
+ // Field must be present if the other field's value is NOT in the array
93
+ if (value === undefined && !values.includes(fieldValue)) {
94
+ return validationHelpers.invalidRule(this, context);
95
+ }
96
+ return validationHelpers.VALID_RULE;
97
+ },
98
+ };exports.presentIfEmptyRule=presentIfEmptyRule;exports.presentIfInRule=presentIfInRule;exports.presentIfNotEmptyRule=presentIfNotEmptyRule;exports.presentIfNotInRule=presentIfNotInRule;exports.presentIfRule=presentIfRule;//# sourceMappingURL=present-if-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-if-rules.js","sources":["../../../src/rules/conditional/present-if-rules.ts"],"sourcesContent":[null],"names":["getFieldValue","invalidRule","VALID_RULE","isEmptyValue"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { SchemaRule } from "../../types";
2
+ /**
3
+ * Present unless rule - field must be present unless another field equals a specific value
4
+ * Supports both global and sibling scope
5
+ */
6
+ export declare const presentUnlessRule: SchemaRule<{
7
+ field: string;
8
+ value: any;
9
+ scope?: "global" | "sibling";
10
+ }>;
11
+ //# sourceMappingURL=present-unless-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-unless-rules.d.ts","sourceRoot":"","sources":["../../../src/rules/conditional/present-unless-rules.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAAU,CAAC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAkBA,CAAC"}
@@ -0,0 +1,20 @@
1
+ 'use strict';var getFieldValue=require('../../helpers/get-field-value.js'),validationHelpers=require('../../helpers/validation-helpers.js');/**
2
+ * Present unless rule - field must be present unless another field equals a specific value
3
+ * Supports both global and sibling scope
4
+ */
5
+ const presentUnlessRule = {
6
+ name: "presentUnless",
7
+ description: "The field must be present unless another field equals a specific value",
8
+ sortOrder: -2,
9
+ requiresValue: false,
10
+ defaultErrorMessage: "The :input field must be present",
11
+ async validate(value, context) {
12
+ const { value: expectedValue } = this.context.options;
13
+ const fieldValue = getFieldValue.getFieldValue(this, context);
14
+ // Field must be present unless the other field equals the expected value
15
+ if (value === undefined && fieldValue !== expectedValue) {
16
+ return validationHelpers.invalidRule(this, context);
17
+ }
18
+ return validationHelpers.VALID_RULE;
19
+ },
20
+ };exports.presentUnlessRule=presentUnlessRule;//# sourceMappingURL=present-unless-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-unless-rules.js","sources":["../../../src/rules/conditional/present-unless-rules.ts"],"sourcesContent":[null],"names":["getFieldValue","invalidRule","VALID_RULE"],"mappings":"4IAGA;;;AAGG;AACU,MAAA,iBAAiB,GAIzB;AACH,IAAA,IAAI,EAAE,eAAe;AACrB,IAAA,WAAW,EACT,wEAAwE;IAC1E,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;QAChC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACtD,MAAM,UAAU,GAAGA,2BAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;AAGhD,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,KAAK,aAAa,EAAE;AACvD,YAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;"}
@@ -0,0 +1,26 @@
1
+ import type { SchemaRule } from "../../types";
2
+ /**
3
+ * Present with rule - field must be present if another field is present
4
+ * Supports both global and sibling scope
5
+ */
6
+ export declare const presentWithRule: SchemaRule<{
7
+ field: string;
8
+ scope?: "global" | "sibling";
9
+ }>;
10
+ /**
11
+ * Present with all rule - field must be present if all specified fields are present
12
+ * Supports both global and sibling scope
13
+ */
14
+ export declare const presentWithAllRule: SchemaRule<{
15
+ fields: string[];
16
+ scope?: "global" | "sibling";
17
+ }>;
18
+ /**
19
+ * Present with any rule - field must be present if any of the specified fields is present
20
+ * Supports both global and sibling scope
21
+ */
22
+ export declare const presentWithAnyRule: SchemaRule<{
23
+ fields: string[];
24
+ scope?: "global" | "sibling";
25
+ }>;
26
+ //# sourceMappingURL=present-with-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-with-rules.d.ts","sourceRoot":"","sources":["../../../src/rules/conditional/present-with-rules.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,UAAU,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAgBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAoBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAqBA,CAAC"}
@@ -0,0 +1,63 @@
1
+ 'use strict';var reinforcements=require('@mongez/reinforcements'),getFieldValue=require('../../helpers/get-field-value.js'),validationHelpers=require('../../helpers/validation-helpers.js');/**
2
+ * Present with rule - field must be present if another field is present
3
+ * Supports both global and sibling scope
4
+ */
5
+ const presentWithRule = {
6
+ name: "presentWith",
7
+ description: "The field must be present if another field is present",
8
+ sortOrder: -2,
9
+ requiresValue: false,
10
+ defaultErrorMessage: "The :input field must be present",
11
+ async validate(value, context) {
12
+ const fieldValue = getFieldValue.getFieldValue(this, context);
13
+ // The field must be present if the other field is present
14
+ if (value === undefined && fieldValue !== undefined) {
15
+ return validationHelpers.invalidRule(this, context);
16
+ }
17
+ return validationHelpers.VALID_RULE;
18
+ },
19
+ };
20
+ /**
21
+ * Present with all rule - field must be present if all specified fields are present
22
+ * Supports both global and sibling scope
23
+ */
24
+ const presentWithAllRule = {
25
+ name: "presentWithAll",
26
+ description: "The field must be present if all specified fields are present",
27
+ sortOrder: -2,
28
+ requiresValue: false,
29
+ defaultErrorMessage: "The :input field must be present",
30
+ async validate(value, context) {
31
+ const { fields, scope = "global" } = this.context.options;
32
+ const source = scope === "sibling" ? context.parent : context.allValues;
33
+ // Check if all fields are present
34
+ const allPresent = fields.every(field => reinforcements.get(source, field) !== undefined);
35
+ // Field must be present if all other fields are present
36
+ if (value === undefined && allPresent) {
37
+ return validationHelpers.invalidRule(this, context);
38
+ }
39
+ return validationHelpers.VALID_RULE;
40
+ },
41
+ };
42
+ /**
43
+ * Present with any rule - field must be present if any of the specified fields is present
44
+ * Supports both global and sibling scope
45
+ */
46
+ const presentWithAnyRule = {
47
+ name: "presentWithAny",
48
+ description: "The field must be present if any of the specified fields is present",
49
+ sortOrder: -2,
50
+ requiresValue: false,
51
+ defaultErrorMessage: "The :input field must be present",
52
+ async validate(value, context) {
53
+ const { fields, scope = "global" } = this.context.options;
54
+ const source = scope === "sibling" ? context.parent : context.allValues;
55
+ // Check if any field is present
56
+ const anyPresent = fields.some(field => reinforcements.get(source, field) !== undefined);
57
+ // Field must be present if any other field is present
58
+ if (value === undefined && anyPresent) {
59
+ return validationHelpers.invalidRule(this, context);
60
+ }
61
+ return validationHelpers.VALID_RULE;
62
+ },
63
+ };exports.presentWithAllRule=presentWithAllRule;exports.presentWithAnyRule=presentWithAnyRule;exports.presentWithRule=presentWithRule;//# sourceMappingURL=present-with-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-with-rules.js","sources":["../../../src/rules/conditional/present-with-rules.ts"],"sourcesContent":[null],"names":["getFieldValue","invalidRule","VALID_RULE","get"],"mappings":"6LAIA;;;AAGG;AACU,MAAA,eAAe,GAGvB;AACH,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,WAAW,EAAE,uDAAuD;IACpE,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;QAChC,MAAM,UAAU,GAAGA,2BAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;AAGhD,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE;AACnD,YAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;EACD;AAEF;;;AAGG;AACU,MAAA,kBAAkB,GAG1B;AACH,IAAA,IAAI,EAAE,gBAAgB;AACtB,IAAA,WAAW,EAAE,+DAA+D;IAC5E,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAC1D,QAAA,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;;AAGxE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,IAAIC,kBAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC;;AAG3E,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,EAAE;AACrC,YAAA,OAAOF,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;EACD;AAEF;;;AAGG;AACU,MAAA,kBAAkB,GAG1B;AACH,IAAA,IAAI,EAAE,gBAAgB;AACtB,IAAA,WAAW,EACT,qEAAqE;IACvE,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAC1D,QAAA,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;;AAGxE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAIC,kBAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC;;AAG1E,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,EAAE;AACrC,YAAA,OAAOF,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;"}
@@ -0,0 +1,26 @@
1
+ import type { SchemaRule } from "../../types";
2
+ /**
3
+ * Present without rule - field must be present if another field is missing
4
+ * Supports both global and sibling scope
5
+ */
6
+ export declare const presentWithoutRule: SchemaRule<{
7
+ field: string;
8
+ scope?: "global" | "sibling";
9
+ }>;
10
+ /**
11
+ * Present without all rule - field must be present if all specified fields are missing
12
+ * Supports both global and sibling scope
13
+ */
14
+ export declare const presentWithoutAllRule: SchemaRule<{
15
+ fields: string[];
16
+ scope?: "global" | "sibling";
17
+ }>;
18
+ /**
19
+ * Present without any rule - field must be present if any of the specified fields is missing
20
+ * Supports both global and sibling scope
21
+ */
22
+ export declare const presentWithoutAnyRule: SchemaRule<{
23
+ fields: string[];
24
+ scope?: "global" | "sibling";
25
+ }>;
26
+ //# sourceMappingURL=present-without-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-without-rules.d.ts","sourceRoot":"","sources":["../../../src/rules/conditional/present-without-rules.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAgBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,UAAU,CAAC;IAC7C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAoBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,UAAU,CAAC;IAC7C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAqBA,CAAC"}
@@ -0,0 +1,63 @@
1
+ 'use strict';var reinforcements=require('@mongez/reinforcements'),getFieldValue=require('../../helpers/get-field-value.js'),validationHelpers=require('../../helpers/validation-helpers.js');/**
2
+ * Present without rule - field must be present if another field is missing
3
+ * Supports both global and sibling scope
4
+ */
5
+ const presentWithoutRule = {
6
+ name: "presentWithout",
7
+ description: "The field must be present if another field is missing",
8
+ sortOrder: -2,
9
+ requiresValue: false,
10
+ defaultErrorMessage: "The :input field must be present",
11
+ async validate(value, context) {
12
+ const fieldValue = getFieldValue.getFieldValue(this, context);
13
+ // Field must be present if the other field is missing
14
+ if (value === undefined && fieldValue === undefined) {
15
+ return validationHelpers.invalidRule(this, context);
16
+ }
17
+ return validationHelpers.VALID_RULE;
18
+ },
19
+ };
20
+ /**
21
+ * Present without all rule - field must be present if all specified fields are missing
22
+ * Supports both global and sibling scope
23
+ */
24
+ const presentWithoutAllRule = {
25
+ name: "presentWithoutAll",
26
+ description: "The field must be present if all specified fields are missing",
27
+ sortOrder: -2,
28
+ requiresValue: false,
29
+ defaultErrorMessage: "The :input field must be present",
30
+ async validate(value, context) {
31
+ const { fields, scope = "global" } = this.context.options;
32
+ const source = scope === "sibling" ? context.parent : context.allValues;
33
+ // Check if all fields are missing
34
+ const allMissing = fields.every(field => reinforcements.get(source, field) === undefined);
35
+ // Field must be present if all other fields are missing
36
+ if (value === undefined && allMissing) {
37
+ return validationHelpers.invalidRule(this, context);
38
+ }
39
+ return validationHelpers.VALID_RULE;
40
+ },
41
+ };
42
+ /**
43
+ * Present without any rule - field must be present if any of the specified fields is missing
44
+ * Supports both global and sibling scope
45
+ */
46
+ const presentWithoutAnyRule = {
47
+ name: "presentWithoutAny",
48
+ description: "The field must be present if any of the specified fields is missing",
49
+ sortOrder: -2,
50
+ requiresValue: false,
51
+ defaultErrorMessage: "The :input field must be present",
52
+ async validate(value, context) {
53
+ const { fields, scope = "global" } = this.context.options;
54
+ const source = scope === "sibling" ? context.parent : context.allValues;
55
+ // Check if any field is missing
56
+ const anyMissing = fields.some(field => reinforcements.get(source, field) === undefined);
57
+ // Field must be present if any other field is missing
58
+ if (value === undefined && anyMissing) {
59
+ return validationHelpers.invalidRule(this, context);
60
+ }
61
+ return validationHelpers.VALID_RULE;
62
+ },
63
+ };exports.presentWithoutAllRule=presentWithoutAllRule;exports.presentWithoutAnyRule=presentWithoutAnyRule;exports.presentWithoutRule=presentWithoutRule;//# sourceMappingURL=present-without-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present-without-rules.js","sources":["../../../src/rules/conditional/present-without-rules.ts"],"sourcesContent":[null],"names":["getFieldValue","invalidRule","VALID_RULE","get"],"mappings":"6LAIA;;;AAGG;AACU,MAAA,kBAAkB,GAG1B;AACH,IAAA,IAAI,EAAE,gBAAgB;AACtB,IAAA,WAAW,EAAE,uDAAuD;IACpE,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;QAChC,MAAM,UAAU,GAAGA,2BAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;AAGhD,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE;AACnD,YAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;EACD;AAEF;;;AAGG;AACU,MAAA,qBAAqB,GAG7B;AACH,IAAA,IAAI,EAAE,mBAAmB;AACzB,IAAA,WAAW,EAAE,+DAA+D;IAC5E,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAC1D,QAAA,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;;AAGxE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,IAAIC,kBAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC;;AAG3E,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,EAAE;AACrC,YAAA,OAAOF,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;EACD;AAEF;;;AAGG;AACU,MAAA,qBAAqB,GAG7B;AACH,IAAA,IAAI,EAAE,mBAAmB;AACzB,IAAA,WAAW,EACT,qEAAqE;IACvE,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,kCAAkC;AACvD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAC1D,QAAA,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;;AAGxE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAIC,kBAAG,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC;;AAG1E,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,UAAU,EAAE;AACrC,YAAA,OAAOF,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;"}
@@ -0,0 +1,45 @@
1
+ import type { SchemaRule } from "../../types";
2
+ /**
3
+ * Required if rule - field is required if another field equals a specific value
4
+ * Supports both global and sibling scope
5
+ */
6
+ export declare const requiredIfRule: SchemaRule<{
7
+ field: string;
8
+ value: any;
9
+ scope?: "global" | "sibling";
10
+ }>;
11
+ /**
12
+ * Required if empty rule - field is required if another field is empty
13
+ * Supports both global and sibling scope
14
+ */
15
+ export declare const requiredIfEmptyRule: SchemaRule<{
16
+ field: string;
17
+ scope?: "global" | "sibling";
18
+ }>;
19
+ /**
20
+ * Required if not empty rule - field is required if another field is not empty
21
+ * Supports both global and sibling scope
22
+ */
23
+ export declare const requiredIfNotEmptyRule: SchemaRule<{
24
+ field: string;
25
+ scope?: "global" | "sibling";
26
+ }>;
27
+ /**
28
+ * Required if in rule - field is required if another field's value is in the given array
29
+ * Supports both global and sibling scope
30
+ */
31
+ export declare const requiredIfInRule: SchemaRule<{
32
+ field: string;
33
+ values: any[];
34
+ scope?: "global" | "sibling";
35
+ }>;
36
+ /**
37
+ * Required if not in rule - field is required if another field's value is NOT in the given array
38
+ * Supports both global and sibling scope
39
+ */
40
+ export declare const requiredIfNotInRule: SchemaRule<{
41
+ field: string;
42
+ values: any[];
43
+ scope?: "global" | "sibling";
44
+ }>;
45
+ //# sourceMappingURL=required-if-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required-if-rules.d.ts","sourceRoot":"","sources":["../../../src/rules/conditional/required-if-rules.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,UAAU,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAiBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAAU,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAgBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,UAAU,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAgBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,UAAU,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAiBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAAU,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAiBA,CAAC"}
@@ -0,0 +1,98 @@
1
+ 'use strict';var getFieldValue=require('../../helpers/get-field-value.js'),validationHelpers=require('../../helpers/validation-helpers.js'),isEmptyValue=require('../../helpers/is-empty-value.js');/**
2
+ * Required if rule - field is required if another field equals a specific value
3
+ * Supports both global and sibling scope
4
+ */
5
+ const requiredIfRule = {
6
+ name: "requiredIf",
7
+ description: "The field is required if another field equals a specific value",
8
+ sortOrder: -2,
9
+ requiresValue: false,
10
+ defaultErrorMessage: "The :input is required",
11
+ async validate(value, context) {
12
+ const { value: expectedValue } = this.context.options;
13
+ const fieldValue = getFieldValue.getFieldValue(this, context);
14
+ // Field is required if the other field equals the expected value
15
+ if (isEmptyValue.isEmptyValue(value) && fieldValue === expectedValue) {
16
+ return validationHelpers.invalidRule(this, context);
17
+ }
18
+ return validationHelpers.VALID_RULE;
19
+ },
20
+ };
21
+ /**
22
+ * Required if empty rule - field is required if another field is empty
23
+ * Supports both global and sibling scope
24
+ */
25
+ const requiredIfEmptyRule = {
26
+ name: "requiredIfEmpty",
27
+ description: "The field is required if another field is empty",
28
+ sortOrder: -2,
29
+ requiresValue: false,
30
+ defaultErrorMessage: "The :input is required",
31
+ async validate(value, context) {
32
+ const fieldValue = getFieldValue.getFieldValue(this, context);
33
+ // Field is required if the other field is empty
34
+ if (isEmptyValue.isEmptyValue(value) && isEmptyValue.isEmptyValue(fieldValue)) {
35
+ return validationHelpers.invalidRule(this, context);
36
+ }
37
+ return validationHelpers.VALID_RULE;
38
+ },
39
+ };
40
+ /**
41
+ * Required if not empty rule - field is required if another field is not empty
42
+ * Supports both global and sibling scope
43
+ */
44
+ const requiredIfNotEmptyRule = {
45
+ name: "requiredIfNotEmpty",
46
+ description: "The field is required if another field is not empty",
47
+ sortOrder: -2,
48
+ requiresValue: false,
49
+ defaultErrorMessage: "The :input is required",
50
+ async validate(value, context) {
51
+ const fieldValue = getFieldValue.getFieldValue(this, context);
52
+ // Field is required if the other field is not empty
53
+ if (isEmptyValue.isEmptyValue(value) && !isEmptyValue.isEmptyValue(fieldValue)) {
54
+ return validationHelpers.invalidRule(this, context);
55
+ }
56
+ return validationHelpers.VALID_RULE;
57
+ },
58
+ };
59
+ /**
60
+ * Required if in rule - field is required if another field's value is in the given array
61
+ * Supports both global and sibling scope
62
+ */
63
+ const requiredIfInRule = {
64
+ name: "requiredIfIn",
65
+ description: "The field is required if another field's value is in the given array",
66
+ sortOrder: -2,
67
+ requiresValue: false,
68
+ defaultErrorMessage: "The :input is required",
69
+ async validate(value, context) {
70
+ const { values } = this.context.options;
71
+ const fieldValue = getFieldValue.getFieldValue(this, context);
72
+ // Field is required if the other field's value is in the array
73
+ if (isEmptyValue.isEmptyValue(value) && values.includes(fieldValue)) {
74
+ return validationHelpers.invalidRule(this, context);
75
+ }
76
+ return validationHelpers.VALID_RULE;
77
+ },
78
+ };
79
+ /**
80
+ * Required if not in rule - field is required if another field's value is NOT in the given array
81
+ * Supports both global and sibling scope
82
+ */
83
+ const requiredIfNotInRule = {
84
+ name: "requiredIfNotIn",
85
+ description: "The field is required if another field's value is NOT in the given array",
86
+ sortOrder: -2,
87
+ requiresValue: false,
88
+ defaultErrorMessage: "The :input is required",
89
+ async validate(value, context) {
90
+ const { values } = this.context.options;
91
+ const fieldValue = getFieldValue.getFieldValue(this, context);
92
+ // Field is required if the other field's value is NOT in the array
93
+ if (isEmptyValue.isEmptyValue(value) && !values.includes(fieldValue)) {
94
+ return validationHelpers.invalidRule(this, context);
95
+ }
96
+ return validationHelpers.VALID_RULE;
97
+ },
98
+ };exports.requiredIfEmptyRule=requiredIfEmptyRule;exports.requiredIfInRule=requiredIfInRule;exports.requiredIfNotEmptyRule=requiredIfNotEmptyRule;exports.requiredIfNotInRule=requiredIfNotInRule;exports.requiredIfRule=requiredIfRule;//# sourceMappingURL=required-if-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required-if-rules.js","sources":["../../../src/rules/conditional/required-if-rules.ts"],"sourcesContent":[null],"names":["getFieldValue","isEmptyValue","invalidRule","VALID_RULE"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { SchemaRule } from "../../types";
2
+ /**
3
+ * Required unless rule - field is required unless another field equals a specific value
4
+ * Supports both global and sibling scope
5
+ */
6
+ export declare const requiredUnlessRule: SchemaRule<{
7
+ field: string;
8
+ value: any;
9
+ scope?: "global" | "sibling";
10
+ }>;
11
+ //# sourceMappingURL=required-unless-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required-unless-rules.d.ts","sourceRoot":"","sources":["../../../src/rules/conditional/required-unless-rules.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAiBA,CAAC"}
@@ -0,0 +1,20 @@
1
+ 'use strict';var getFieldValue=require('../../helpers/get-field-value.js'),validationHelpers=require('../../helpers/validation-helpers.js'),isEmptyValue=require('../../helpers/is-empty-value.js');/**
2
+ * Required unless rule - field is required unless another field equals a specific value
3
+ * Supports both global and sibling scope
4
+ */
5
+ const requiredUnlessRule = {
6
+ name: "requiredUnless",
7
+ description: "The field is required unless another field equals a specific value",
8
+ sortOrder: -2,
9
+ requiresValue: false,
10
+ defaultErrorMessage: "The :input is required",
11
+ async validate(value, context) {
12
+ const { value: expectedValue } = this.context.options;
13
+ const fieldValue = getFieldValue.getFieldValue(this, context);
14
+ // Field is required unless the other field equals the expected value
15
+ if (isEmptyValue.isEmptyValue(value) && fieldValue !== expectedValue) {
16
+ return validationHelpers.invalidRule(this, context);
17
+ }
18
+ return validationHelpers.VALID_RULE;
19
+ },
20
+ };exports.requiredUnlessRule=requiredUnlessRule;//# sourceMappingURL=required-unless-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required-unless-rules.js","sources":["../../../src/rules/conditional/required-unless-rules.ts"],"sourcesContent":[null],"names":["getFieldValue","isEmptyValue","invalidRule","VALID_RULE"],"mappings":"oMAIA;;;AAGG;AACU,MAAA,kBAAkB,GAI1B;AACH,IAAA,IAAI,EAAE,gBAAgB;AACtB,IAAA,WAAW,EAAE,oEAAoE;IACjF,SAAS,EAAE,CAAC,CAAC;AACb,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,mBAAmB,EAAE,wBAAwB;AAC7C,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;QAChC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACtD,MAAM,UAAU,GAAGA,2BAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;QAGhD,IAAIC,yBAAY,CAAC,KAAK,CAAC,IAAI,UAAU,KAAK,aAAa,EAAE;AACvD,YAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;"}
@@ -0,0 +1,26 @@
1
+ import type { SchemaRule } from "../../types";
2
+ /**
3
+ * Required with rule - field is required if another field is present
4
+ * Supports both global and sibling scope
5
+ */
6
+ export declare const requiredWithRule: SchemaRule<{
7
+ field: string;
8
+ scope?: "global" | "sibling";
9
+ }>;
10
+ /**
11
+ * Required with all rule - field is required if all specified fields are present
12
+ * Supports both global and sibling scope
13
+ */
14
+ export declare const requiredWithAllRule: SchemaRule<{
15
+ fields: string[];
16
+ scope?: "global" | "sibling";
17
+ }>;
18
+ /**
19
+ * Required with any rule - field is required if any of the specified fields is present
20
+ * Supports both global and sibling scope
21
+ */
22
+ export declare const requiredWithAnyRule: SchemaRule<{
23
+ fields: string[];
24
+ scope?: "global" | "sibling";
25
+ }>;
26
+ //# sourceMappingURL=required-with-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required-with-rules.d.ts","sourceRoot":"","sources":["../../../src/rules/conditional/required-with-rules.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,UAAU,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAgBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAAU,CAAC;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAoBA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAAU,CAAC;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAoBA,CAAC"}