@warlock.js/seal 4.0.31 → 4.0.39

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 (697) hide show
  1. package/cjs/index.js +2 -1
  2. package/cjs/index.js.map +1 -1
  3. package/esm/index.js +2 -1
  4. package/esm/index.js.map +1 -1
  5. package/package.json +36 -48
  6. package/cjs/config.d.ts +0 -48
  7. package/cjs/config.d.ts.map +0 -1
  8. package/cjs/config.js +0 -42
  9. package/cjs/config.js.map +0 -1
  10. package/cjs/factory/index.d.ts +0 -3
  11. package/cjs/factory/index.d.ts.map +0 -1
  12. package/cjs/factory/validate.d.ts +0 -8
  13. package/cjs/factory/validate.d.ts.map +0 -1
  14. package/cjs/factory/validate.js +0 -21
  15. package/cjs/factory/validate.js.map +0 -1
  16. package/cjs/factory/validators.d.ts +0 -36
  17. package/cjs/factory/validators.d.ts.map +0 -1
  18. package/cjs/factory/validators.js +0 -39
  19. package/cjs/factory/validators.js.map +0 -1
  20. package/cjs/helpers/date-helpers.d.ts +0 -16
  21. package/cjs/helpers/date-helpers.d.ts.map +0 -1
  22. package/cjs/helpers/date-helpers.js +0 -20
  23. package/cjs/helpers/date-helpers.js.map +0 -1
  24. package/cjs/helpers/get-field-value.d.ts +0 -37
  25. package/cjs/helpers/get-field-value.d.ts.map +0 -1
  26. package/cjs/helpers/get-field-value.js +0 -40
  27. package/cjs/helpers/get-field-value.js.map +0 -1
  28. package/cjs/helpers/index.d.ts +0 -5
  29. package/cjs/helpers/index.d.ts.map +0 -1
  30. package/cjs/helpers/path-helpers.d.ts +0 -5
  31. package/cjs/helpers/path-helpers.d.ts.map +0 -1
  32. package/cjs/helpers/path-helpers.js +0 -8
  33. package/cjs/helpers/path-helpers.js.map +0 -1
  34. package/cjs/helpers/validation-helpers.d.ts +0 -4
  35. package/cjs/helpers/validation-helpers.d.ts.map +0 -1
  36. package/cjs/helpers/validation-helpers.js +0 -48
  37. package/cjs/helpers/validation-helpers.js.map +0 -1
  38. package/cjs/index.d.ts +0 -29
  39. package/cjs/index.d.ts.map +0 -1
  40. package/cjs/mutators/array-mutators.d.ts +0 -12
  41. package/cjs/mutators/array-mutators.d.ts.map +0 -1
  42. package/cjs/mutators/array-mutators.js +0 -37
  43. package/cjs/mutators/array-mutators.js.map +0 -1
  44. package/cjs/mutators/date-mutators.d.ts +0 -39
  45. package/cjs/mutators/date-mutators.d.ts.map +0 -1
  46. package/cjs/mutators/date-mutators.js +0 -120
  47. package/cjs/mutators/date-mutators.js.map +0 -1
  48. package/cjs/mutators/index.d.ts +0 -7
  49. package/cjs/mutators/index.d.ts.map +0 -1
  50. package/cjs/mutators/number-mutators.d.ts +0 -9
  51. package/cjs/mutators/number-mutators.d.ts.map +0 -1
  52. package/cjs/mutators/number-mutators.js +0 -23
  53. package/cjs/mutators/number-mutators.js.map +0 -1
  54. package/cjs/mutators/object-mutators.d.ts +0 -8
  55. package/cjs/mutators/object-mutators.d.ts.map +0 -1
  56. package/cjs/mutators/object-mutators.js +0 -50
  57. package/cjs/mutators/object-mutators.js.map +0 -1
  58. package/cjs/mutators/scalar-mutators.d.ts +0 -3
  59. package/cjs/mutators/scalar-mutators.d.ts.map +0 -1
  60. package/cjs/mutators/scalar-mutators.js +0 -6
  61. package/cjs/mutators/scalar-mutators.js.map +0 -1
  62. package/cjs/mutators/string-mutators.d.ts +0 -72
  63. package/cjs/mutators/string-mutators.d.ts.map +0 -1
  64. package/cjs/mutators/string-mutators.js +0 -193
  65. package/cjs/mutators/string-mutators.js.map +0 -1
  66. package/cjs/plugins/index.d.ts +0 -7
  67. package/cjs/plugins/index.d.ts.map +0 -1
  68. package/cjs/plugins/plugin-system.d.ts +0 -71
  69. package/cjs/plugins/plugin-system.d.ts.map +0 -1
  70. package/cjs/plugins/plugin-system.js +0 -68
  71. package/cjs/plugins/plugin-system.js.map +0 -1
  72. package/cjs/rules/array/array-rules.d.ts +0 -12
  73. package/cjs/rules/array/array-rules.d.ts.map +0 -1
  74. package/cjs/rules/array/array-rules.js +0 -44
  75. package/cjs/rules/array/array-rules.js.map +0 -1
  76. package/cjs/rules/array/index.d.ts +0 -2
  77. package/cjs/rules/array/index.d.ts.map +0 -1
  78. package/cjs/rules/color/color-rules.d.ts +0 -30
  79. package/cjs/rules/color/color-rules.d.ts.map +0 -1
  80. package/cjs/rules/color/color-rules.js +0 -120
  81. package/cjs/rules/color/color-rules.js.map +0 -1
  82. package/cjs/rules/color/index.d.ts +0 -2
  83. package/cjs/rules/color/index.d.ts.map +0 -1
  84. package/cjs/rules/common/enum.d.ts +0 -26
  85. package/cjs/rules/common/enum.d.ts.map +0 -1
  86. package/cjs/rules/common/enum.js +0 -55
  87. package/cjs/rules/common/enum.js.map +0 -1
  88. package/cjs/rules/common/equals-field-rules.d.ts +0 -18
  89. package/cjs/rules/common/equals-field-rules.d.ts.map +0 -1
  90. package/cjs/rules/common/equals-field-rules.js +0 -38
  91. package/cjs/rules/common/equals-field-rules.js.map +0 -1
  92. package/cjs/rules/common/index.d.ts +0 -5
  93. package/cjs/rules/common/index.d.ts.map +0 -1
  94. package/cjs/rules/common/type-rules.d.ts +0 -34
  95. package/cjs/rules/common/type-rules.d.ts.map +0 -1
  96. package/cjs/rules/common/type-rules.js +0 -104
  97. package/cjs/rules/common/type-rules.js.map +0 -1
  98. package/cjs/rules/common/unknown-key.d.ts +0 -9
  99. package/cjs/rules/common/unknown-key.d.ts.map +0 -1
  100. package/cjs/rules/common/unknown-key.js +0 -20
  101. package/cjs/rules/common/unknown-key.js.map +0 -1
  102. package/cjs/rules/conditional/forbidden-if-rules.d.ts +0 -54
  103. package/cjs/rules/conditional/forbidden-if-rules.d.ts.map +0 -1
  104. package/cjs/rules/conditional/forbidden-if-rules.js +0 -112
  105. package/cjs/rules/conditional/forbidden-if-rules.js.map +0 -1
  106. package/cjs/rules/conditional/index.d.ts +0 -10
  107. package/cjs/rules/conditional/index.d.ts.map +0 -1
  108. package/cjs/rules/conditional/present-if-rules.d.ts +0 -45
  109. package/cjs/rules/conditional/present-if-rules.d.ts.map +0 -1
  110. package/cjs/rules/conditional/present-if-rules.js +0 -98
  111. package/cjs/rules/conditional/present-if-rules.js.map +0 -1
  112. package/cjs/rules/conditional/present-unless-rules.d.ts +0 -11
  113. package/cjs/rules/conditional/present-unless-rules.d.ts.map +0 -1
  114. package/cjs/rules/conditional/present-unless-rules.js +0 -20
  115. package/cjs/rules/conditional/present-unless-rules.js.map +0 -1
  116. package/cjs/rules/conditional/present-with-rules.d.ts +0 -26
  117. package/cjs/rules/conditional/present-with-rules.d.ts.map +0 -1
  118. package/cjs/rules/conditional/present-with-rules.js +0 -63
  119. package/cjs/rules/conditional/present-with-rules.js.map +0 -1
  120. package/cjs/rules/conditional/present-without-rules.d.ts +0 -26
  121. package/cjs/rules/conditional/present-without-rules.d.ts.map +0 -1
  122. package/cjs/rules/conditional/present-without-rules.js +0 -63
  123. package/cjs/rules/conditional/present-without-rules.js.map +0 -1
  124. package/cjs/rules/conditional/required-if-rules.d.ts +0 -45
  125. package/cjs/rules/conditional/required-if-rules.d.ts.map +0 -1
  126. package/cjs/rules/conditional/required-if-rules.js +0 -98
  127. package/cjs/rules/conditional/required-if-rules.js.map +0 -1
  128. package/cjs/rules/conditional/required-unless-rules.d.ts +0 -11
  129. package/cjs/rules/conditional/required-unless-rules.d.ts.map +0 -1
  130. package/cjs/rules/conditional/required-unless-rules.js +0 -20
  131. package/cjs/rules/conditional/required-unless-rules.js.map +0 -1
  132. package/cjs/rules/conditional/required-with-rules.d.ts +0 -26
  133. package/cjs/rules/conditional/required-with-rules.d.ts.map +0 -1
  134. package/cjs/rules/conditional/required-with-rules.js +0 -63
  135. package/cjs/rules/conditional/required-with-rules.js.map +0 -1
  136. package/cjs/rules/conditional/required-without-rules.d.ts +0 -26
  137. package/cjs/rules/conditional/required-without-rules.d.ts.map +0 -1
  138. package/cjs/rules/conditional/required-without-rules.js +0 -63
  139. package/cjs/rules/conditional/required-without-rules.js.map +0 -1
  140. package/cjs/rules/core/equal.d.ts +0 -8
  141. package/cjs/rules/core/equal.d.ts.map +0 -1
  142. package/cjs/rules/core/equal.js +0 -13
  143. package/cjs/rules/core/equal.js.map +0 -1
  144. package/cjs/rules/core/forbidden.d.ts +0 -6
  145. package/cjs/rules/core/forbidden.d.ts.map +0 -1
  146. package/cjs/rules/core/forbidden.js +0 -13
  147. package/cjs/rules/core/forbidden.js.map +0 -1
  148. package/cjs/rules/core/index.d.ts +0 -6
  149. package/cjs/rules/core/index.d.ts.map +0 -1
  150. package/cjs/rules/core/required.d.ts +0 -11
  151. package/cjs/rules/core/required.d.ts.map +0 -1
  152. package/cjs/rules/core/required.js +0 -31
  153. package/cjs/rules/core/required.js.map +0 -1
  154. package/cjs/rules/core/union.d.ts +0 -9
  155. package/cjs/rules/core/union.d.ts.map +0 -1
  156. package/cjs/rules/core/union.js +0 -40
  157. package/cjs/rules/core/union.js.map +0 -1
  158. package/cjs/rules/core/when.d.ts +0 -6
  159. package/cjs/rules/core/when.d.ts.map +0 -1
  160. package/cjs/rules/core/when.js +0 -40
  161. package/cjs/rules/core/when.js.map +0 -1
  162. package/cjs/rules/date/date-comparison-rules.d.ts +0 -25
  163. package/cjs/rules/date/date-comparison-rules.d.ts.map +0 -1
  164. package/cjs/rules/date/date-comparison-rules.js +0 -78
  165. package/cjs/rules/date/date-comparison-rules.js.map +0 -1
  166. package/cjs/rules/date/date-day-rules.d.ts +0 -21
  167. package/cjs/rules/date/date-day-rules.d.ts.map +0 -1
  168. package/cjs/rules/date/date-day-rules.js +0 -65
  169. package/cjs/rules/date/date-day-rules.js.map +0 -1
  170. package/cjs/rules/date/date-field-comparison-rules.d.ts +0 -28
  171. package/cjs/rules/date/date-field-comparison-rules.d.ts.map +0 -1
  172. package/cjs/rules/date/date-field-comparison-rules.js +0 -90
  173. package/cjs/rules/date/date-field-comparison-rules.js.map +0 -1
  174. package/cjs/rules/date/date-period-rules.d.ts +0 -108
  175. package/cjs/rules/date/date-period-rules.d.ts.map +0 -1
  176. package/cjs/rules/date/date-period-rules.js +0 -566
  177. package/cjs/rules/date/date-period-rules.js.map +0 -1
  178. package/cjs/rules/date/date-relative-rules.d.ts +0 -20
  179. package/cjs/rules/date/date-relative-rules.d.ts.map +0 -1
  180. package/cjs/rules/date/date-relative-rules.js +0 -57
  181. package/cjs/rules/date/date-relative-rules.js.map +0 -1
  182. package/cjs/rules/date/date-special-rules.d.ts +0 -20
  183. package/cjs/rules/date/date-special-rules.d.ts.map +0 -1
  184. package/cjs/rules/date/date-special-rules.js +0 -72
  185. package/cjs/rules/date/date-special-rules.js.map +0 -1
  186. package/cjs/rules/date/date.d.ts +0 -93
  187. package/cjs/rules/date/date.d.ts.map +0 -1
  188. package/cjs/rules/date/date.js +0 -279
  189. package/cjs/rules/date/date.js.map +0 -1
  190. package/cjs/rules/date/index.d.ts +0 -8
  191. package/cjs/rules/date/index.d.ts.map +0 -1
  192. package/cjs/rules/file/dimensions.d.ts +0 -26
  193. package/cjs/rules/file/dimensions.d.ts.map +0 -1
  194. package/cjs/rules/file/dimensions.js +0 -56
  195. package/cjs/rules/file/dimensions.js.map +0 -1
  196. package/cjs/rules/file/file-size.d.ts +0 -14
  197. package/cjs/rules/file/file-size.d.ts.map +0 -1
  198. package/cjs/rules/file/file-size.js +0 -26
  199. package/cjs/rules/file/file-size.js.map +0 -1
  200. package/cjs/rules/file/index.d.ts +0 -11
  201. package/cjs/rules/file/index.d.ts.map +0 -1
  202. package/cjs/rules/index.d.ts +0 -19
  203. package/cjs/rules/index.d.ts.map +0 -1
  204. package/cjs/rules/length/index.d.ts +0 -2
  205. package/cjs/rules/length/index.d.ts.map +0 -1
  206. package/cjs/rules/length/length-rules.d.ts +0 -49
  207. package/cjs/rules/length/length-rules.d.ts.map +0 -1
  208. package/cjs/rules/length/length-rules.js +0 -116
  209. package/cjs/rules/length/length-rules.js.map +0 -1
  210. package/cjs/rules/number/index.d.ts +0 -2
  211. package/cjs/rules/number/index.d.ts.map +0 -1
  212. package/cjs/rules/number/number-rules.d.ts +0 -65
  213. package/cjs/rules/number/number-rules.d.ts.map +0 -1
  214. package/cjs/rules/number/number-rules.js +0 -234
  215. package/cjs/rules/number/number-rules.js.map +0 -1
  216. package/cjs/rules/scalar/accepted-rule.d.ts +0 -39
  217. package/cjs/rules/scalar/accepted-rule.d.ts.map +0 -1
  218. package/cjs/rules/scalar/accepted-rule.js +0 -110
  219. package/cjs/rules/scalar/accepted-rule.js.map +0 -1
  220. package/cjs/rules/scalar/declined-rule.d.ts +0 -39
  221. package/cjs/rules/scalar/declined-rule.d.ts.map +0 -1
  222. package/cjs/rules/scalar/declined-rule.js +0 -110
  223. package/cjs/rules/scalar/declined-rule.js.map +0 -1
  224. package/cjs/rules/scalar/index.d.ts +0 -3
  225. package/cjs/rules/scalar/index.d.ts.map +0 -1
  226. package/cjs/rules/string/alpha.d.ts +0 -14
  227. package/cjs/rules/string/alpha.d.ts.map +0 -1
  228. package/cjs/rules/string/alpha.js +0 -39
  229. package/cjs/rules/string/alpha.js.map +0 -1
  230. package/cjs/rules/string/credit-card.d.ts +0 -6
  231. package/cjs/rules/string/credit-card.d.ts.map +0 -1
  232. package/cjs/rules/string/credit-card.js +0 -31
  233. package/cjs/rules/string/credit-card.js.map +0 -1
  234. package/cjs/rules/string/email.d.ts +0 -6
  235. package/cjs/rules/string/email.d.ts.map +0 -1
  236. package/cjs/rules/string/email.js +0 -13
  237. package/cjs/rules/string/email.js.map +0 -1
  238. package/cjs/rules/string/index.d.ts +0 -17
  239. package/cjs/rules/string/index.d.ts.map +0 -1
  240. package/cjs/rules/string/ip.d.ts +0 -14
  241. package/cjs/rules/string/ip.d.ts.map +0 -1
  242. package/cjs/rules/string/ip.js +0 -39
  243. package/cjs/rules/string/ip.js.map +0 -1
  244. package/cjs/rules/string/matches.d.ts +0 -8
  245. package/cjs/rules/string/matches.d.ts.map +0 -1
  246. package/cjs/rules/string/matches.js +0 -14
  247. package/cjs/rules/string/matches.js.map +0 -1
  248. package/cjs/rules/string/pattern.d.ts +0 -8
  249. package/cjs/rules/string/pattern.d.ts.map +0 -1
  250. package/cjs/rules/string/pattern.js +0 -13
  251. package/cjs/rules/string/pattern.js.map +0 -1
  252. package/cjs/rules/string/string-comparison.d.ts +0 -26
  253. package/cjs/rules/string/string-comparison.d.ts.map +0 -1
  254. package/cjs/rules/string/string-comparison.js +0 -52
  255. package/cjs/rules/string/string-comparison.js.map +0 -1
  256. package/cjs/rules/string/strong-password-rule.d.ts +0 -14
  257. package/cjs/rules/string/strong-password-rule.d.ts.map +0 -1
  258. package/cjs/rules/string/strong-password-rule.js +0 -38
  259. package/cjs/rules/string/strong-password-rule.js.map +0 -1
  260. package/cjs/rules/string/url.d.ts +0 -6
  261. package/cjs/rules/string/url.d.ts.map +0 -1
  262. package/cjs/rules/string/url.js +0 -16
  263. package/cjs/rules/string/url.js.map +0 -1
  264. package/cjs/rules/string/without-whitespace.d.ts +0 -6
  265. package/cjs/rules/string/without-whitespace.d.ts.map +0 -1
  266. package/cjs/rules/string/without-whitespace.js +0 -13
  267. package/cjs/rules/string/without-whitespace.js.map +0 -1
  268. package/cjs/types/conditional-types.d.ts +0 -15
  269. package/cjs/types/conditional-types.d.ts.map +0 -1
  270. package/cjs/types/context-types.d.ts +0 -44
  271. package/cjs/types/context-types.d.ts.map +0 -1
  272. package/cjs/types/data-transformer-types.d.ts +0 -25
  273. package/cjs/types/data-transformer-types.d.ts.map +0 -1
  274. package/cjs/types/date-types.d.ts +0 -9
  275. package/cjs/types/date-types.d.ts.map +0 -1
  276. package/cjs/types/date-types.js +0 -12
  277. package/cjs/types/date-types.js.map +0 -1
  278. package/cjs/types/index.d.ts +0 -10
  279. package/cjs/types/index.d.ts.map +0 -1
  280. package/cjs/types/inference-types.d.ts +0 -29
  281. package/cjs/types/inference-types.d.ts.map +0 -1
  282. package/cjs/types/mutator-types.d.ts +0 -27
  283. package/cjs/types/mutator-types.d.ts.map +0 -1
  284. package/cjs/types/result-types.d.ts +0 -19
  285. package/cjs/types/result-types.d.ts.map +0 -1
  286. package/cjs/types/rule-types.d.ts +0 -54
  287. package/cjs/types/rule-types.d.ts.map +0 -1
  288. package/cjs/types/schema-types.d.ts +0 -6
  289. package/cjs/types/schema-types.d.ts.map +0 -1
  290. package/cjs/validators/any-validator.d.ts +0 -7
  291. package/cjs/validators/any-validator.d.ts.map +0 -1
  292. package/cjs/validators/any-validator.js +0 -5
  293. package/cjs/validators/any-validator.js.map +0 -1
  294. package/cjs/validators/array-validator.d.ts +0 -59
  295. package/cjs/validators/array-validator.d.ts.map +0 -1
  296. package/cjs/validators/array-validator.js +0 -134
  297. package/cjs/validators/array-validator.js.map +0 -1
  298. package/cjs/validators/base-validator.d.ts +0 -609
  299. package/cjs/validators/base-validator.d.ts.map +0 -1
  300. package/cjs/validators/base-validator.js +0 -1154
  301. package/cjs/validators/base-validator.js.map +0 -1
  302. package/cjs/validators/boolean-validator.d.ts +0 -47
  303. package/cjs/validators/boolean-validator.d.ts.map +0 -1
  304. package/cjs/validators/boolean-validator.js +0 -54
  305. package/cjs/validators/boolean-validator.js.map +0 -1
  306. package/cjs/validators/date-validator.d.ts +0 -307
  307. package/cjs/validators/date-validator.d.ts.map +0 -1
  308. package/cjs/validators/date-validator.js +0 -645
  309. package/cjs/validators/date-validator.js.map +0 -1
  310. package/cjs/validators/float-validator.d.ts +0 -8
  311. package/cjs/validators/float-validator.d.ts.map +0 -1
  312. package/cjs/validators/float-validator.js +0 -9
  313. package/cjs/validators/float-validator.js.map +0 -1
  314. package/cjs/validators/index.d.ts +0 -24
  315. package/cjs/validators/index.d.ts.map +0 -1
  316. package/cjs/validators/int-validator.d.ts +0 -8
  317. package/cjs/validators/int-validator.d.ts.map +0 -1
  318. package/cjs/validators/int-validator.js +0 -9
  319. package/cjs/validators/int-validator.js.map +0 -1
  320. package/cjs/validators/number-validator.d.ts +0 -113
  321. package/cjs/validators/number-validator.d.ts.map +0 -1
  322. package/cjs/validators/number-validator.js +0 -192
  323. package/cjs/validators/number-validator.js.map +0 -1
  324. package/cjs/validators/numeric-validator.d.ts +0 -15
  325. package/cjs/validators/numeric-validator.d.ts.map +0 -1
  326. package/cjs/validators/numeric-validator.js +0 -18
  327. package/cjs/validators/numeric-validator.js.map +0 -1
  328. package/cjs/validators/object-validator.d.ts +0 -178
  329. package/cjs/validators/object-validator.d.ts.map +0 -1
  330. package/cjs/validators/object-validator.js +0 -356
  331. package/cjs/validators/object-validator.js.map +0 -1
  332. package/cjs/validators/record-validator.d.ts +0 -33
  333. package/cjs/validators/record-validator.d.ts.map +0 -1
  334. package/cjs/validators/record-validator.js +0 -70
  335. package/cjs/validators/record-validator.js.map +0 -1
  336. package/cjs/validators/scalar-validator.d.ts +0 -82
  337. package/cjs/validators/scalar-validator.d.ts.map +0 -1
  338. package/cjs/validators/scalar-validator.js +0 -160
  339. package/cjs/validators/scalar-validator.js.map +0 -1
  340. package/cjs/validators/string-validator.d.ts +0 -191
  341. package/cjs/validators/string-validator.d.ts.map +0 -1
  342. package/cjs/validators/string-validator.js +0 -410
  343. package/cjs/validators/string-validator.js.map +0 -1
  344. package/cjs/validators/tuple-validator.d.ts +0 -34
  345. package/cjs/validators/tuple-validator.d.ts.map +0 -1
  346. package/cjs/validators/tuple-validator.js +0 -79
  347. package/cjs/validators/tuple-validator.js.map +0 -1
  348. package/cjs/validators/union-validator.d.ts +0 -42
  349. package/cjs/validators/union-validator.d.ts.map +0 -1
  350. package/cjs/validators/union-validator.js +0 -44
  351. package/cjs/validators/union-validator.js.map +0 -1
  352. package/esm/config.d.ts +0 -48
  353. package/esm/config.d.ts.map +0 -1
  354. package/esm/config.js +0 -42
  355. package/esm/config.js.map +0 -1
  356. package/esm/factory/index.d.ts +0 -3
  357. package/esm/factory/index.d.ts.map +0 -1
  358. package/esm/factory/validate.d.ts +0 -8
  359. package/esm/factory/validate.d.ts.map +0 -1
  360. package/esm/factory/validate.js +0 -21
  361. package/esm/factory/validate.js.map +0 -1
  362. package/esm/factory/validators.d.ts +0 -36
  363. package/esm/factory/validators.d.ts.map +0 -1
  364. package/esm/factory/validators.js +0 -39
  365. package/esm/factory/validators.js.map +0 -1
  366. package/esm/helpers/date-helpers.d.ts +0 -16
  367. package/esm/helpers/date-helpers.d.ts.map +0 -1
  368. package/esm/helpers/date-helpers.js +0 -20
  369. package/esm/helpers/date-helpers.js.map +0 -1
  370. package/esm/helpers/get-field-value.d.ts +0 -37
  371. package/esm/helpers/get-field-value.d.ts.map +0 -1
  372. package/esm/helpers/get-field-value.js +0 -40
  373. package/esm/helpers/get-field-value.js.map +0 -1
  374. package/esm/helpers/index.d.ts +0 -5
  375. package/esm/helpers/index.d.ts.map +0 -1
  376. package/esm/helpers/path-helpers.d.ts +0 -5
  377. package/esm/helpers/path-helpers.d.ts.map +0 -1
  378. package/esm/helpers/path-helpers.js +0 -8
  379. package/esm/helpers/path-helpers.js.map +0 -1
  380. package/esm/helpers/validation-helpers.d.ts +0 -4
  381. package/esm/helpers/validation-helpers.d.ts.map +0 -1
  382. package/esm/helpers/validation-helpers.js +0 -48
  383. package/esm/helpers/validation-helpers.js.map +0 -1
  384. package/esm/index.d.ts +0 -29
  385. package/esm/index.d.ts.map +0 -1
  386. package/esm/mutators/array-mutators.d.ts +0 -12
  387. package/esm/mutators/array-mutators.d.ts.map +0 -1
  388. package/esm/mutators/array-mutators.js +0 -37
  389. package/esm/mutators/array-mutators.js.map +0 -1
  390. package/esm/mutators/date-mutators.d.ts +0 -39
  391. package/esm/mutators/date-mutators.d.ts.map +0 -1
  392. package/esm/mutators/date-mutators.js +0 -120
  393. package/esm/mutators/date-mutators.js.map +0 -1
  394. package/esm/mutators/index.d.ts +0 -7
  395. package/esm/mutators/index.d.ts.map +0 -1
  396. package/esm/mutators/number-mutators.d.ts +0 -9
  397. package/esm/mutators/number-mutators.d.ts.map +0 -1
  398. package/esm/mutators/number-mutators.js +0 -23
  399. package/esm/mutators/number-mutators.js.map +0 -1
  400. package/esm/mutators/object-mutators.d.ts +0 -8
  401. package/esm/mutators/object-mutators.d.ts.map +0 -1
  402. package/esm/mutators/object-mutators.js +0 -50
  403. package/esm/mutators/object-mutators.js.map +0 -1
  404. package/esm/mutators/scalar-mutators.d.ts +0 -3
  405. package/esm/mutators/scalar-mutators.d.ts.map +0 -1
  406. package/esm/mutators/scalar-mutators.js +0 -6
  407. package/esm/mutators/scalar-mutators.js.map +0 -1
  408. package/esm/mutators/string-mutators.d.ts +0 -72
  409. package/esm/mutators/string-mutators.d.ts.map +0 -1
  410. package/esm/mutators/string-mutators.js +0 -193
  411. package/esm/mutators/string-mutators.js.map +0 -1
  412. package/esm/plugins/index.d.ts +0 -7
  413. package/esm/plugins/index.d.ts.map +0 -1
  414. package/esm/plugins/plugin-system.d.ts +0 -71
  415. package/esm/plugins/plugin-system.d.ts.map +0 -1
  416. package/esm/plugins/plugin-system.js +0 -68
  417. package/esm/plugins/plugin-system.js.map +0 -1
  418. package/esm/rules/array/array-rules.d.ts +0 -12
  419. package/esm/rules/array/array-rules.d.ts.map +0 -1
  420. package/esm/rules/array/array-rules.js +0 -44
  421. package/esm/rules/array/array-rules.js.map +0 -1
  422. package/esm/rules/array/index.d.ts +0 -2
  423. package/esm/rules/array/index.d.ts.map +0 -1
  424. package/esm/rules/color/color-rules.d.ts +0 -30
  425. package/esm/rules/color/color-rules.d.ts.map +0 -1
  426. package/esm/rules/color/color-rules.js +0 -120
  427. package/esm/rules/color/color-rules.js.map +0 -1
  428. package/esm/rules/color/index.d.ts +0 -2
  429. package/esm/rules/color/index.d.ts.map +0 -1
  430. package/esm/rules/common/enum.d.ts +0 -26
  431. package/esm/rules/common/enum.d.ts.map +0 -1
  432. package/esm/rules/common/enum.js +0 -55
  433. package/esm/rules/common/enum.js.map +0 -1
  434. package/esm/rules/common/equals-field-rules.d.ts +0 -18
  435. package/esm/rules/common/equals-field-rules.d.ts.map +0 -1
  436. package/esm/rules/common/equals-field-rules.js +0 -38
  437. package/esm/rules/common/equals-field-rules.js.map +0 -1
  438. package/esm/rules/common/index.d.ts +0 -5
  439. package/esm/rules/common/index.d.ts.map +0 -1
  440. package/esm/rules/common/type-rules.d.ts +0 -34
  441. package/esm/rules/common/type-rules.d.ts.map +0 -1
  442. package/esm/rules/common/type-rules.js +0 -104
  443. package/esm/rules/common/type-rules.js.map +0 -1
  444. package/esm/rules/common/unknown-key.d.ts +0 -9
  445. package/esm/rules/common/unknown-key.d.ts.map +0 -1
  446. package/esm/rules/common/unknown-key.js +0 -20
  447. package/esm/rules/common/unknown-key.js.map +0 -1
  448. package/esm/rules/conditional/forbidden-if-rules.d.ts +0 -54
  449. package/esm/rules/conditional/forbidden-if-rules.d.ts.map +0 -1
  450. package/esm/rules/conditional/forbidden-if-rules.js +0 -112
  451. package/esm/rules/conditional/forbidden-if-rules.js.map +0 -1
  452. package/esm/rules/conditional/index.d.ts +0 -10
  453. package/esm/rules/conditional/index.d.ts.map +0 -1
  454. package/esm/rules/conditional/present-if-rules.d.ts +0 -45
  455. package/esm/rules/conditional/present-if-rules.d.ts.map +0 -1
  456. package/esm/rules/conditional/present-if-rules.js +0 -98
  457. package/esm/rules/conditional/present-if-rules.js.map +0 -1
  458. package/esm/rules/conditional/present-unless-rules.d.ts +0 -11
  459. package/esm/rules/conditional/present-unless-rules.d.ts.map +0 -1
  460. package/esm/rules/conditional/present-unless-rules.js +0 -20
  461. package/esm/rules/conditional/present-unless-rules.js.map +0 -1
  462. package/esm/rules/conditional/present-with-rules.d.ts +0 -26
  463. package/esm/rules/conditional/present-with-rules.d.ts.map +0 -1
  464. package/esm/rules/conditional/present-with-rules.js +0 -63
  465. package/esm/rules/conditional/present-with-rules.js.map +0 -1
  466. package/esm/rules/conditional/present-without-rules.d.ts +0 -26
  467. package/esm/rules/conditional/present-without-rules.d.ts.map +0 -1
  468. package/esm/rules/conditional/present-without-rules.js +0 -63
  469. package/esm/rules/conditional/present-without-rules.js.map +0 -1
  470. package/esm/rules/conditional/required-if-rules.d.ts +0 -45
  471. package/esm/rules/conditional/required-if-rules.d.ts.map +0 -1
  472. package/esm/rules/conditional/required-if-rules.js +0 -98
  473. package/esm/rules/conditional/required-if-rules.js.map +0 -1
  474. package/esm/rules/conditional/required-unless-rules.d.ts +0 -11
  475. package/esm/rules/conditional/required-unless-rules.d.ts.map +0 -1
  476. package/esm/rules/conditional/required-unless-rules.js +0 -20
  477. package/esm/rules/conditional/required-unless-rules.js.map +0 -1
  478. package/esm/rules/conditional/required-with-rules.d.ts +0 -26
  479. package/esm/rules/conditional/required-with-rules.d.ts.map +0 -1
  480. package/esm/rules/conditional/required-with-rules.js +0 -63
  481. package/esm/rules/conditional/required-with-rules.js.map +0 -1
  482. package/esm/rules/conditional/required-without-rules.d.ts +0 -26
  483. package/esm/rules/conditional/required-without-rules.d.ts.map +0 -1
  484. package/esm/rules/conditional/required-without-rules.js +0 -63
  485. package/esm/rules/conditional/required-without-rules.js.map +0 -1
  486. package/esm/rules/core/equal.d.ts +0 -8
  487. package/esm/rules/core/equal.d.ts.map +0 -1
  488. package/esm/rules/core/equal.js +0 -13
  489. package/esm/rules/core/equal.js.map +0 -1
  490. package/esm/rules/core/forbidden.d.ts +0 -6
  491. package/esm/rules/core/forbidden.d.ts.map +0 -1
  492. package/esm/rules/core/forbidden.js +0 -13
  493. package/esm/rules/core/forbidden.js.map +0 -1
  494. package/esm/rules/core/index.d.ts +0 -6
  495. package/esm/rules/core/index.d.ts.map +0 -1
  496. package/esm/rules/core/required.d.ts +0 -11
  497. package/esm/rules/core/required.d.ts.map +0 -1
  498. package/esm/rules/core/required.js +0 -31
  499. package/esm/rules/core/required.js.map +0 -1
  500. package/esm/rules/core/union.d.ts +0 -9
  501. package/esm/rules/core/union.d.ts.map +0 -1
  502. package/esm/rules/core/union.js +0 -40
  503. package/esm/rules/core/union.js.map +0 -1
  504. package/esm/rules/core/when.d.ts +0 -6
  505. package/esm/rules/core/when.d.ts.map +0 -1
  506. package/esm/rules/core/when.js +0 -40
  507. package/esm/rules/core/when.js.map +0 -1
  508. package/esm/rules/date/date-comparison-rules.d.ts +0 -25
  509. package/esm/rules/date/date-comparison-rules.d.ts.map +0 -1
  510. package/esm/rules/date/date-comparison-rules.js +0 -78
  511. package/esm/rules/date/date-comparison-rules.js.map +0 -1
  512. package/esm/rules/date/date-day-rules.d.ts +0 -21
  513. package/esm/rules/date/date-day-rules.d.ts.map +0 -1
  514. package/esm/rules/date/date-day-rules.js +0 -65
  515. package/esm/rules/date/date-day-rules.js.map +0 -1
  516. package/esm/rules/date/date-field-comparison-rules.d.ts +0 -28
  517. package/esm/rules/date/date-field-comparison-rules.d.ts.map +0 -1
  518. package/esm/rules/date/date-field-comparison-rules.js +0 -90
  519. package/esm/rules/date/date-field-comparison-rules.js.map +0 -1
  520. package/esm/rules/date/date-period-rules.d.ts +0 -108
  521. package/esm/rules/date/date-period-rules.d.ts.map +0 -1
  522. package/esm/rules/date/date-period-rules.js +0 -566
  523. package/esm/rules/date/date-period-rules.js.map +0 -1
  524. package/esm/rules/date/date-relative-rules.d.ts +0 -20
  525. package/esm/rules/date/date-relative-rules.d.ts.map +0 -1
  526. package/esm/rules/date/date-relative-rules.js +0 -57
  527. package/esm/rules/date/date-relative-rules.js.map +0 -1
  528. package/esm/rules/date/date-special-rules.d.ts +0 -20
  529. package/esm/rules/date/date-special-rules.d.ts.map +0 -1
  530. package/esm/rules/date/date-special-rules.js +0 -72
  531. package/esm/rules/date/date-special-rules.js.map +0 -1
  532. package/esm/rules/date/date.d.ts +0 -93
  533. package/esm/rules/date/date.d.ts.map +0 -1
  534. package/esm/rules/date/date.js +0 -279
  535. package/esm/rules/date/date.js.map +0 -1
  536. package/esm/rules/date/index.d.ts +0 -8
  537. package/esm/rules/date/index.d.ts.map +0 -1
  538. package/esm/rules/file/dimensions.d.ts +0 -26
  539. package/esm/rules/file/dimensions.d.ts.map +0 -1
  540. package/esm/rules/file/dimensions.js +0 -56
  541. package/esm/rules/file/dimensions.js.map +0 -1
  542. package/esm/rules/file/file-size.d.ts +0 -14
  543. package/esm/rules/file/file-size.d.ts.map +0 -1
  544. package/esm/rules/file/file-size.js +0 -26
  545. package/esm/rules/file/file-size.js.map +0 -1
  546. package/esm/rules/file/index.d.ts +0 -11
  547. package/esm/rules/file/index.d.ts.map +0 -1
  548. package/esm/rules/index.d.ts +0 -19
  549. package/esm/rules/index.d.ts.map +0 -1
  550. package/esm/rules/length/index.d.ts +0 -2
  551. package/esm/rules/length/index.d.ts.map +0 -1
  552. package/esm/rules/length/length-rules.d.ts +0 -49
  553. package/esm/rules/length/length-rules.d.ts.map +0 -1
  554. package/esm/rules/length/length-rules.js +0 -116
  555. package/esm/rules/length/length-rules.js.map +0 -1
  556. package/esm/rules/number/index.d.ts +0 -2
  557. package/esm/rules/number/index.d.ts.map +0 -1
  558. package/esm/rules/number/number-rules.d.ts +0 -65
  559. package/esm/rules/number/number-rules.d.ts.map +0 -1
  560. package/esm/rules/number/number-rules.js +0 -234
  561. package/esm/rules/number/number-rules.js.map +0 -1
  562. package/esm/rules/scalar/accepted-rule.d.ts +0 -39
  563. package/esm/rules/scalar/accepted-rule.d.ts.map +0 -1
  564. package/esm/rules/scalar/accepted-rule.js +0 -110
  565. package/esm/rules/scalar/accepted-rule.js.map +0 -1
  566. package/esm/rules/scalar/declined-rule.d.ts +0 -39
  567. package/esm/rules/scalar/declined-rule.d.ts.map +0 -1
  568. package/esm/rules/scalar/declined-rule.js +0 -110
  569. package/esm/rules/scalar/declined-rule.js.map +0 -1
  570. package/esm/rules/scalar/index.d.ts +0 -3
  571. package/esm/rules/scalar/index.d.ts.map +0 -1
  572. package/esm/rules/string/alpha.d.ts +0 -14
  573. package/esm/rules/string/alpha.d.ts.map +0 -1
  574. package/esm/rules/string/alpha.js +0 -39
  575. package/esm/rules/string/alpha.js.map +0 -1
  576. package/esm/rules/string/credit-card.d.ts +0 -6
  577. package/esm/rules/string/credit-card.d.ts.map +0 -1
  578. package/esm/rules/string/credit-card.js +0 -31
  579. package/esm/rules/string/credit-card.js.map +0 -1
  580. package/esm/rules/string/email.d.ts +0 -6
  581. package/esm/rules/string/email.d.ts.map +0 -1
  582. package/esm/rules/string/email.js +0 -13
  583. package/esm/rules/string/email.js.map +0 -1
  584. package/esm/rules/string/index.d.ts +0 -17
  585. package/esm/rules/string/index.d.ts.map +0 -1
  586. package/esm/rules/string/ip.d.ts +0 -14
  587. package/esm/rules/string/ip.d.ts.map +0 -1
  588. package/esm/rules/string/ip.js +0 -39
  589. package/esm/rules/string/ip.js.map +0 -1
  590. package/esm/rules/string/matches.d.ts +0 -8
  591. package/esm/rules/string/matches.d.ts.map +0 -1
  592. package/esm/rules/string/matches.js +0 -14
  593. package/esm/rules/string/matches.js.map +0 -1
  594. package/esm/rules/string/pattern.d.ts +0 -8
  595. package/esm/rules/string/pattern.d.ts.map +0 -1
  596. package/esm/rules/string/pattern.js +0 -13
  597. package/esm/rules/string/pattern.js.map +0 -1
  598. package/esm/rules/string/string-comparison.d.ts +0 -26
  599. package/esm/rules/string/string-comparison.d.ts.map +0 -1
  600. package/esm/rules/string/string-comparison.js +0 -52
  601. package/esm/rules/string/string-comparison.js.map +0 -1
  602. package/esm/rules/string/strong-password-rule.d.ts +0 -14
  603. package/esm/rules/string/strong-password-rule.d.ts.map +0 -1
  604. package/esm/rules/string/strong-password-rule.js +0 -38
  605. package/esm/rules/string/strong-password-rule.js.map +0 -1
  606. package/esm/rules/string/url.d.ts +0 -6
  607. package/esm/rules/string/url.d.ts.map +0 -1
  608. package/esm/rules/string/url.js +0 -16
  609. package/esm/rules/string/url.js.map +0 -1
  610. package/esm/rules/string/without-whitespace.d.ts +0 -6
  611. package/esm/rules/string/without-whitespace.d.ts.map +0 -1
  612. package/esm/rules/string/without-whitespace.js +0 -13
  613. package/esm/rules/string/without-whitespace.js.map +0 -1
  614. package/esm/types/conditional-types.d.ts +0 -15
  615. package/esm/types/conditional-types.d.ts.map +0 -1
  616. package/esm/types/context-types.d.ts +0 -44
  617. package/esm/types/context-types.d.ts.map +0 -1
  618. package/esm/types/data-transformer-types.d.ts +0 -25
  619. package/esm/types/data-transformer-types.d.ts.map +0 -1
  620. package/esm/types/date-types.d.ts +0 -9
  621. package/esm/types/date-types.d.ts.map +0 -1
  622. package/esm/types/date-types.js +0 -12
  623. package/esm/types/date-types.js.map +0 -1
  624. package/esm/types/index.d.ts +0 -10
  625. package/esm/types/index.d.ts.map +0 -1
  626. package/esm/types/inference-types.d.ts +0 -29
  627. package/esm/types/inference-types.d.ts.map +0 -1
  628. package/esm/types/mutator-types.d.ts +0 -27
  629. package/esm/types/mutator-types.d.ts.map +0 -1
  630. package/esm/types/result-types.d.ts +0 -19
  631. package/esm/types/result-types.d.ts.map +0 -1
  632. package/esm/types/rule-types.d.ts +0 -54
  633. package/esm/types/rule-types.d.ts.map +0 -1
  634. package/esm/types/schema-types.d.ts +0 -6
  635. package/esm/types/schema-types.d.ts.map +0 -1
  636. package/esm/validators/any-validator.d.ts +0 -7
  637. package/esm/validators/any-validator.d.ts.map +0 -1
  638. package/esm/validators/any-validator.js +0 -5
  639. package/esm/validators/any-validator.js.map +0 -1
  640. package/esm/validators/array-validator.d.ts +0 -59
  641. package/esm/validators/array-validator.d.ts.map +0 -1
  642. package/esm/validators/array-validator.js +0 -134
  643. package/esm/validators/array-validator.js.map +0 -1
  644. package/esm/validators/base-validator.d.ts +0 -609
  645. package/esm/validators/base-validator.d.ts.map +0 -1
  646. package/esm/validators/base-validator.js +0 -1154
  647. package/esm/validators/base-validator.js.map +0 -1
  648. package/esm/validators/boolean-validator.d.ts +0 -47
  649. package/esm/validators/boolean-validator.d.ts.map +0 -1
  650. package/esm/validators/boolean-validator.js +0 -54
  651. package/esm/validators/boolean-validator.js.map +0 -1
  652. package/esm/validators/date-validator.d.ts +0 -307
  653. package/esm/validators/date-validator.d.ts.map +0 -1
  654. package/esm/validators/date-validator.js +0 -645
  655. package/esm/validators/date-validator.js.map +0 -1
  656. package/esm/validators/float-validator.d.ts +0 -8
  657. package/esm/validators/float-validator.d.ts.map +0 -1
  658. package/esm/validators/float-validator.js +0 -9
  659. package/esm/validators/float-validator.js.map +0 -1
  660. package/esm/validators/index.d.ts +0 -24
  661. package/esm/validators/index.d.ts.map +0 -1
  662. package/esm/validators/int-validator.d.ts +0 -8
  663. package/esm/validators/int-validator.d.ts.map +0 -1
  664. package/esm/validators/int-validator.js +0 -9
  665. package/esm/validators/int-validator.js.map +0 -1
  666. package/esm/validators/number-validator.d.ts +0 -113
  667. package/esm/validators/number-validator.d.ts.map +0 -1
  668. package/esm/validators/number-validator.js +0 -192
  669. package/esm/validators/number-validator.js.map +0 -1
  670. package/esm/validators/numeric-validator.d.ts +0 -15
  671. package/esm/validators/numeric-validator.d.ts.map +0 -1
  672. package/esm/validators/numeric-validator.js +0 -18
  673. package/esm/validators/numeric-validator.js.map +0 -1
  674. package/esm/validators/object-validator.d.ts +0 -178
  675. package/esm/validators/object-validator.d.ts.map +0 -1
  676. package/esm/validators/object-validator.js +0 -356
  677. package/esm/validators/object-validator.js.map +0 -1
  678. package/esm/validators/record-validator.d.ts +0 -33
  679. package/esm/validators/record-validator.d.ts.map +0 -1
  680. package/esm/validators/record-validator.js +0 -70
  681. package/esm/validators/record-validator.js.map +0 -1
  682. package/esm/validators/scalar-validator.d.ts +0 -82
  683. package/esm/validators/scalar-validator.d.ts.map +0 -1
  684. package/esm/validators/scalar-validator.js +0 -160
  685. package/esm/validators/scalar-validator.js.map +0 -1
  686. package/esm/validators/string-validator.d.ts +0 -191
  687. package/esm/validators/string-validator.d.ts.map +0 -1
  688. package/esm/validators/string-validator.js +0 -410
  689. package/esm/validators/string-validator.js.map +0 -1
  690. package/esm/validators/tuple-validator.d.ts +0 -34
  691. package/esm/validators/tuple-validator.d.ts.map +0 -1
  692. package/esm/validators/tuple-validator.js +0 -79
  693. package/esm/validators/tuple-validator.js.map +0 -1
  694. package/esm/validators/union-validator.d.ts +0 -42
  695. package/esm/validators/union-validator.d.ts.map +0 -1
  696. package/esm/validators/union-validator.js +0 -44
  697. package/esm/validators/union-validator.js.map +0 -1
@@ -1,410 +0,0 @@
1
- import'@mongez/reinforcements';import'@mongez/supportive-is';import'dayjs';import {stringifyMutator,uppercaseMutator,lowercaseMutator,capitalizeMutator,titleCaseMutator,camelCaseMutator,pascalCaseMutator,snakeCaseMutator,kebabCaseMutator,trimMutator,ltrimMutator,rtrimMutator,trimMultipleWhitespaceMutator,padStartMutator,padEndMutator,safeHtmlMutator,htmlEscapeMutator,unescapeHtmlMutator,removeSpecialCharactersMutator,alphaOnlyMutator,alphanumericOnlyMutator,removeNumbersMutator,urlDecodeMutator,urlEncodeMutator,slugMutator,base64EncodeMutator,base64DecodeMutator,replaceMutator,replaceAllMutator,appendMutator,prependMutator,reverseMutator,truncateMutator,repeatMutator,maskMutator}from'../mutators/string-mutators.js';import {alphaRule,alphaNumericRule,isNumericRule}from'../rules/string/alpha.js';import {isCreditCardRule}from'../rules/string/credit-card.js';import {emailRule}from'../rules/string/email.js';import {ipRule,ip4Rule,ip6Rule}from'../rules/string/ip.js';import {patternRule}from'../rules/string/pattern.js';import {startsWithRule,endsWithRule,containsRule,notContainsRule}from'../rules/string/string-comparison.js';import {strongPasswordRule}from'../rules/string/strong-password-rule.js';import {urlRule}from'../rules/string/url.js';import {withoutWhitespaceRule}from'../rules/string/without-whitespace.js';import {wordsRule,minWordsRule,maxWordsRule,minLengthRule,maxLengthRule,lengthRule,betweenLengthRule}from'../rules/length/length-rules.js';import {colorRule,hexColorRule,hslColorRule,rgbColorRule,rgbaColorRule,lightColorRule,darkColorRule}from'../rules/color/color-rules.js';import {stringRule}from'../rules/common/type-rules.js';import {BaseValidator}from'./base-validator.js';import {ScalarValidator}from'./scalar-validator.js';/**
2
- * String validator class
3
- */
4
- class StringValidator extends BaseValidator {
5
- constructor(errorMessage) {
6
- super();
7
- this.addRule(stringRule, errorMessage);
8
- }
9
- /**
10
- * Check if value is a string type
11
- */
12
- matchesType(value) {
13
- return typeof value === "string";
14
- }
15
- // ==================== Mutators ====================
16
- /**
17
- * Stringify the value if not a string
18
- */
19
- toString() {
20
- this.addMutator(stringifyMutator);
21
- return this;
22
- }
23
- /** Convert string to uppercase */
24
- uppercase() {
25
- this.addMutator(uppercaseMutator);
26
- return this;
27
- }
28
- /** Convert string to lowercase */
29
- lowercase() {
30
- this.addMutator(lowercaseMutator);
31
- return this;
32
- }
33
- /** Capitalize only the first letter of the string */
34
- capitalize() {
35
- this.addMutator(capitalizeMutator);
36
- return this;
37
- }
38
- /** Capitalize the first letter of each word (Title Case) */
39
- titleCase() {
40
- this.addMutator(titleCaseMutator);
41
- return this;
42
- }
43
- /** Convert to camelCase */
44
- camelCase() {
45
- this.addMutator(camelCaseMutator);
46
- return this;
47
- }
48
- /** Convert to PascalCase */
49
- pascalCase() {
50
- this.addMutator(pascalCaseMutator);
51
- return this;
52
- }
53
- /** Convert to snake_case */
54
- snakeCase() {
55
- this.addMutator(snakeCaseMutator);
56
- return this;
57
- }
58
- /** Convert to kebab-case */
59
- kebabCase() {
60
- this.addMutator(kebabCaseMutator);
61
- return this;
62
- }
63
- /**
64
- * Trim the given needle from the string
65
- * If no needle is provided, the default is a single space
66
- */
67
- trim(needle) {
68
- this.addMutator(trimMutator, { needle });
69
- return this;
70
- }
71
- /** Trim from the left/start */
72
- ltrim(needle) {
73
- this.addMutator(ltrimMutator, { needle });
74
- return this;
75
- }
76
- /** Trim from the right/end */
77
- rtrim(needle) {
78
- this.addMutator(rtrimMutator, { needle });
79
- return this;
80
- }
81
- /** Trim multiple whitespace into single space */
82
- trimMultipleWhitespace() {
83
- this.addMutator(trimMultipleWhitespaceMutator);
84
- return this;
85
- }
86
- /** Pad string from the start to reach target length */
87
- padStart(length, char = " ") {
88
- this.addMutator(padStartMutator, { length, char });
89
- return this;
90
- }
91
- /** Pad string from the end to reach target length */
92
- padEnd(length, char = " ") {
93
- this.addMutator(padEndMutator, { length, char });
94
- return this;
95
- }
96
- /** Remove HTML tags (safe HTML) */
97
- safeHtml() {
98
- this.addMutator(safeHtmlMutator);
99
- return this;
100
- }
101
- /** HTML escape special characters */
102
- htmlEscape() {
103
- return this.addMutator(htmlEscapeMutator);
104
- }
105
- /** Unescape HTML entities */
106
- unescapeHtml() {
107
- this.addMutator(unescapeHtmlMutator);
108
- return this;
109
- }
110
- /**
111
- * Remove special characters
112
- * This will remove all characters that are not alphanumeric or whitespace
113
- */
114
- removeSpecialCharacters() {
115
- this.addMutator(removeSpecialCharactersMutator);
116
- return this;
117
- }
118
- /** Convert to only alphabetic characters */
119
- toAlpha() {
120
- this.addMutator(alphaOnlyMutator);
121
- return this;
122
- }
123
- /** Convert to only alphanumeric characters */
124
- toAlphanumeric() {
125
- this.addMutator(alphanumericOnlyMutator);
126
- return this;
127
- }
128
- /** Remove all numeric characters */
129
- removeNumbers() {
130
- this.addMutator(removeNumbersMutator);
131
- return this;
132
- }
133
- /** URL decode */
134
- urlDecode() {
135
- this.addMutator(urlDecodeMutator);
136
- return this;
137
- }
138
- /** URL encode */
139
- urlEncode() {
140
- this.addMutator(urlEncodeMutator);
141
- return this;
142
- }
143
- /** Convert to URL-friendly slug */
144
- slug() {
145
- this.addMutator(slugMutator);
146
- return this;
147
- }
148
- /** Base64 encode */
149
- base64Encode() {
150
- this.addMutator(base64EncodeMutator);
151
- return this;
152
- }
153
- /** Base64 decode */
154
- base64Decode() {
155
- this.addMutator(base64DecodeMutator);
156
- return this;
157
- }
158
- /** Replace substring or pattern */
159
- replace(search, replace) {
160
- this.addMutator(replaceMutator, { search, replace });
161
- return this;
162
- }
163
- /** Replace all occurrences of substring or pattern */
164
- replaceAll(search, replace) {
165
- this.addMutator(replaceAllMutator, { search, replace });
166
- return this;
167
- }
168
- /** Append/suffix text to the end */
169
- append(suffix) {
170
- this.addMutator(appendMutator, { suffix });
171
- return this;
172
- }
173
- /** Prepend/prefix text to the beginning */
174
- prepend(prefix) {
175
- this.addMutator(prependMutator, { prefix });
176
- return this;
177
- }
178
- /** Reverse the string */
179
- reverse() {
180
- this.addMutator(reverseMutator);
181
- return this;
182
- }
183
- /** Truncate to a maximum length */
184
- truncate(maxLength, suffix = "...") {
185
- this.addMutator(truncateMutator, { maxLength, suffix });
186
- return this;
187
- }
188
- /** Repeat string N times */
189
- repeat(count) {
190
- this.addMutator(repeatMutator, { count });
191
- return this;
192
- }
193
- /** Mask part of string */
194
- mask(start, end, char = "*") {
195
- this.addMutator(maskMutator, { start, end, char });
196
- return this;
197
- }
198
- // ==================== Validation Rules ====================
199
- /** Value must be a valid email */
200
- email(errorMessage) {
201
- this.addRule(emailRule, errorMessage);
202
- return this;
203
- }
204
- /** Value must be a valid URL */
205
- url(errorMessage) {
206
- this.addRule(urlRule, errorMessage);
207
- return this;
208
- }
209
- /** Value can not have whitespace */
210
- withoutWhitespace(errorMessage) {
211
- this.addRule(withoutWhitespaceRule, errorMessage);
212
- return this;
213
- }
214
- /** Value must match the given pattern */
215
- pattern(pattern, errorMessage) {
216
- const rule = this.addRule(patternRule, errorMessage);
217
- rule.context.options.pattern = pattern;
218
- return this;
219
- }
220
- /**
221
- * Value must be a strong password
222
- * Requirements:
223
- * - At least 8 characters
224
- * - At least 1 uppercase letter
225
- * - At least 1 lowercase letter
226
- * - At least 1 number
227
- * - At least 1 special character
228
- */
229
- strongPassword(minLength, errorMessage) {
230
- const rule = this.addRule(strongPasswordRule, errorMessage);
231
- rule.context.options.minLength = minLength;
232
- return this;
233
- }
234
- /** Value must be exactly the given number of words */
235
- words(words, errorMessage) {
236
- const rule = this.addRule(wordsRule, errorMessage);
237
- rule.context.options.words = words;
238
- return this;
239
- }
240
- /** Value must be at least the given number of words */
241
- minWords(words, errorMessage) {
242
- const rule = this.addRule(minWordsRule, errorMessage);
243
- rule.context.options.minWords = words;
244
- return this;
245
- }
246
- /** Value must be at most the given number of words */
247
- maxWords(words, errorMessage) {
248
- const rule = this.addRule(maxWordsRule, errorMessage);
249
- rule.context.options.maxWords = words;
250
- return this;
251
- }
252
- /** Value length must be greater than the given length */
253
- minLength(length, errorMessage) {
254
- const rule = this.addRule(minLengthRule, errorMessage);
255
- rule.context.options.minLength = length;
256
- return this;
257
- }
258
- /** @alias minLength */
259
- min(min, errorMessage) {
260
- return this.minLength(min, errorMessage);
261
- }
262
- /** Value length must be less than the given length */
263
- maxLength(length, errorMessage) {
264
- const rule = this.addRule(maxLengthRule, errorMessage);
265
- rule.context.options.maxLength = length;
266
- return this;
267
- }
268
- /** @alias maxLength */
269
- max(max, errorMessage) {
270
- return this.maxLength(max, errorMessage);
271
- }
272
- /** Value must be of the given length */
273
- length(length, errorMessage) {
274
- const rule = this.addRule(lengthRule, errorMessage);
275
- rule.context.options.length = length;
276
- return this;
277
- }
278
- /**
279
- * String length must be between min and max (inclusive)
280
- *
281
- * @param min - Minimum length (inclusive)
282
- * @param max - Maximum length (inclusive)
283
- *
284
- * @example
285
- * ```ts
286
- * v.string().between(5, 10) // Length: 5 to 10 characters
287
- * v.string().lengthBetween(8, 20) // Same using alias
288
- * ```
289
- *
290
- * @category Validation Rule
291
- */
292
- between(min, max, errorMessage) {
293
- const rule = this.addRule(betweenLengthRule, errorMessage);
294
- rule.context.options.minLength = min;
295
- rule.context.options.maxLength = max;
296
- return this;
297
- }
298
- /**
299
- * Alias for between() - string length between min and max
300
- */
301
- lengthBetween(min, max, errorMessage) {
302
- return this.between(min, max, errorMessage);
303
- }
304
- /** Allow only alphabetic characters */
305
- alpha(errorMessage) {
306
- this.addRule(alphaRule, errorMessage);
307
- return this;
308
- }
309
- /** Allow only alphanumeric characters */
310
- alphanumeric(errorMessage) {
311
- this.addRule(alphaNumericRule, errorMessage);
312
- return this;
313
- }
314
- /** Allow only numeric characters */
315
- numeric(errorMessage) {
316
- this.addRule(isNumericRule, errorMessage);
317
- return this;
318
- }
319
- /** Value must starts with the given string */
320
- startsWith(value, errorMessage) {
321
- const rule = this.addRule(startsWithRule, errorMessage);
322
- rule.context.options.value = value;
323
- return this;
324
- }
325
- /** Value must ends with the given string */
326
- endsWith(value, errorMessage) {
327
- const rule = this.addRule(endsWithRule, errorMessage);
328
- rule.context.options.value = value;
329
- return this;
330
- }
331
- /** Value must contain the given string */
332
- contains(value, errorMessage) {
333
- const rule = this.addRule(containsRule, errorMessage);
334
- rule.context.options.value = value;
335
- return this;
336
- }
337
- /** Value must not contain the given string */
338
- notContains(value, errorMessage) {
339
- const rule = this.addRule(notContainsRule, errorMessage);
340
- rule.context.options.value = value;
341
- return this;
342
- }
343
- /** Value must be a valid IP address */
344
- ip(errorMessage) {
345
- this.addRule(ipRule, errorMessage);
346
- return this;
347
- }
348
- /** Value must be a valid IPv4 address */
349
- ip4(errorMessage) {
350
- this.addRule(ip4Rule, errorMessage);
351
- return this;
352
- }
353
- /** Value must be a valid IPv6 address */
354
- ip6(errorMessage) {
355
- this.addRule(ip6Rule, errorMessage);
356
- return this;
357
- }
358
- /** Check if the string matches a credit card number */
359
- creditCard(errorMessage) {
360
- this.addRule(isCreditCardRule, errorMessage);
361
- return this;
362
- }
363
- /** Determine if the value is a valid color */
364
- color(errorMessage) {
365
- this.addRule(colorRule, errorMessage);
366
- return this;
367
- }
368
- /** Determine if the value is a valid hex color */
369
- hexColor(errorMessage) {
370
- this.addRule(hexColorRule, errorMessage);
371
- return this;
372
- }
373
- /** Determine if the value is a valid HSL color */
374
- hslColor(errorMessage) {
375
- this.addRule(hslColorRule, errorMessage);
376
- return this;
377
- }
378
- /** Determine if the value is a valid RGB color */
379
- rgbColor(errorMessage) {
380
- this.addRule(rgbColorRule, errorMessage);
381
- return this;
382
- }
383
- /** Determine if the value is a valid RGBA color */
384
- rgbaColor(errorMessage) {
385
- this.addRule(rgbaColorRule, errorMessage);
386
- return this;
387
- }
388
- /** Determine if the value is a valid light color */
389
- lightColor(errorMessage) {
390
- this.addRule(lightColorRule, errorMessage);
391
- return this;
392
- }
393
- /** Determine if the value is a valid dark color */
394
- darkColor(errorMessage) {
395
- this.addRule(darkColorRule, errorMessage);
396
- return this;
397
- }
398
- // Enum and value checking methods from ScalarValidator
399
- enum = ScalarValidator.prototype.enum;
400
- /** Value must be in one of the given values */
401
- in = ScalarValidator.prototype.in;
402
- /** @alias in */
403
- oneOf = ScalarValidator.prototype.in;
404
- /** @alias oneOf */
405
- allowsOnly = ScalarValidator.prototype.allowsOnly;
406
- /** Forbid the value from being one of the given values */
407
- forbids = ScalarValidator.prototype.forbids;
408
- /** @alias forbids */
409
- notIn = ScalarValidator.prototype.forbids;
410
- }export{StringValidator};//# sourceMappingURL=string-validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"string-validator.js","sources":["../../src/validators/string-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- import type { SchemaContext, ValidationResult } from "../types";
2
- import { BaseValidator } from "./base-validator";
3
- /**
4
- * Tuple validator class - validates fixed-length arrays with position-specific types
5
- *
6
- * @example
7
- * ```ts
8
- * // RGB color tuple
9
- * v.tuple([v.number(), v.number(), v.number()])
10
- * // Valid: [255, 128, 0]
11
- * // Invalid: [255, 128] (too short)
12
- *
13
- * // Mixed types
14
- * v.tuple([v.string(), v.int(), v.boolean()])
15
- * // Valid: ["John", 25, true]
16
- * ```
17
- */
18
- export declare class TupleValidator extends BaseValidator {
19
- validators: BaseValidator[];
20
- constructor(validators: BaseValidator[], errorMessage?: string);
21
- /**
22
- * Check if value is an array type
23
- */
24
- matchesType(value: any): boolean;
25
- /**
26
- * Clone the validator
27
- */
28
- clone(): this;
29
- /**
30
- * Validate tuple - check length then validate each position
31
- */
32
- validate(data: any, context: SchemaContext): Promise<ValidationResult>;
33
- }
34
- //# sourceMappingURL=tuple-validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tuple-validator.d.ts","sourceRoot":"","sources":["../../src/validators/tuple-validator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAEtC,UAAU,EAAE,aAAa,EAAE;gBAA3B,UAAU,EAAE,aAAa,EAAE,EAClC,YAAY,CAAC,EAAE,MAAM;IAMvB;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAIvC;;OAEG;IACa,KAAK,IAAI,IAAI;IAM7B;;OAEG;IACU,QAAQ,CACnB,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,gBAAgB,CAAC;CAkD7B"}
@@ -1,79 +0,0 @@
1
- import'@mongez/reinforcements';import {setKeyPath}from'../helpers/path-helpers.js';import'@mongez/supportive-is';import'net';import {arrayRule}from'../rules/common/type-rules.js';import {BaseValidator}from'./base-validator.js';/**
2
- * Tuple validator class - validates fixed-length arrays with position-specific types
3
- *
4
- * @example
5
- * ```ts
6
- * // RGB color tuple
7
- * v.tuple([v.number(), v.number(), v.number()])
8
- * // Valid: [255, 128, 0]
9
- * // Invalid: [255, 128] (too short)
10
- *
11
- * // Mixed types
12
- * v.tuple([v.string(), v.int(), v.boolean()])
13
- * // Valid: ["John", 25, true]
14
- * ```
15
- */
16
- class TupleValidator extends BaseValidator {
17
- validators;
18
- constructor(validators, errorMessage) {
19
- super();
20
- this.validators = validators;
21
- this.addRule(arrayRule, errorMessage);
22
- }
23
- /**
24
- * Check if value is an array type
25
- */
26
- matchesType(value) {
27
- return Array.isArray(value);
28
- }
29
- /**
30
- * Clone the validator
31
- */
32
- clone() {
33
- const cloned = super.clone();
34
- cloned.validators = this.validators.map(v => v.clone());
35
- return cloned;
36
- }
37
- /**
38
- * Validate tuple - check length then validate each position
39
- */
40
- async validate(data, context) {
41
- const mutatedData = (await this.mutate(data, context)) || [];
42
- const result = await super.validate(data, context);
43
- if (result.isValid === false)
44
- return result;
45
- const errors = [];
46
- // Tuple-specific: length validation
47
- if (mutatedData.length !== this.validators.length) {
48
- errors.push({
49
- type: "tuple",
50
- input: context.key || "value",
51
- error: `Expected exactly ${this.validators.length} items, but got ${mutatedData.length}`,
52
- });
53
- return { isValid: false, errors, data: mutatedData };
54
- }
55
- // Validate each position with its specific validator in parallel
56
- const validationPromises = this.validators.map(async (validator, index) => {
57
- const childContext = {
58
- ...context,
59
- parent: mutatedData,
60
- value: mutatedData[index],
61
- key: index.toString(),
62
- path: setKeyPath(context.path, index.toString()),
63
- };
64
- const childResult = await validator.validate(mutatedData[index], childContext);
65
- // Update mutated data with validated result
66
- mutatedData[index] = childResult.data;
67
- // Collect errors from this element
68
- if (childResult.isValid === false) {
69
- errors.push(...childResult.errors);
70
- }
71
- });
72
- await Promise.all(validationPromises);
73
- return {
74
- isValid: errors.length === 0,
75
- errors,
76
- data: await this.startTransformationPipeline(mutatedData, context),
77
- };
78
- }
79
- }export{TupleValidator};//# sourceMappingURL=tuple-validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tuple-validator.js","sources":["../../src/validators/tuple-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- import { BaseValidator } from "./base-validator";
2
- /**
3
- * Union validator class - validates value against multiple validator types
4
- *
5
- * Tries each validator in order until one passes. If a validator's matchesType()
6
- * returns false, it's skipped for optimization. First validator that both matches
7
- * the type and passes validation wins.
8
- *
9
- * @example
10
- * ```ts
11
- * // Accept email or username
12
- * const identifier = v.union([
13
- * v.string().email(),
14
- * v.string().alphanumeric().min(3).max(20)
15
- * ]);
16
- *
17
- * // Accept different types
18
- * const customValue = v.union([
19
- * v.string().required(),
20
- * v.number().required(),
21
- * v.boolean().required(),
22
- * v.file().required()
23
- * ]);
24
- * ```
25
- */
26
- export declare class UnionValidator extends BaseValidator {
27
- /**
28
- * Set the validators to try for union validation
29
- *
30
- * @param validators - Array of validators to try
31
- * @param errorMessage - Optional custom error message if all validators fail
32
- * @returns This validator for chaining
33
- *
34
- * @example
35
- * ```ts
36
- * new UnionValidator()
37
- * .union([v.string(), v.number()], 'Must be string or number');
38
- * ```
39
- */
40
- union(validators: BaseValidator[], errorMessage?: string): this;
41
- }
42
- //# sourceMappingURL=union-validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"union-validator.d.ts","sourceRoot":"","sources":["../../src/validators/union-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAC/C;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;CAKhE"}
@@ -1,44 +0,0 @@
1
- import'@mongez/reinforcements';import'@mongez/supportive-is';import {unionRule}from'../rules/core/union.js';import'net';import {BaseValidator}from'./base-validator.js';/**
2
- * Union validator class - validates value against multiple validator types
3
- *
4
- * Tries each validator in order until one passes. If a validator's matchesType()
5
- * returns false, it's skipped for optimization. First validator that both matches
6
- * the type and passes validation wins.
7
- *
8
- * @example
9
- * ```ts
10
- * // Accept email or username
11
- * const identifier = v.union([
12
- * v.string().email(),
13
- * v.string().alphanumeric().min(3).max(20)
14
- * ]);
15
- *
16
- * // Accept different types
17
- * const customValue = v.union([
18
- * v.string().required(),
19
- * v.number().required(),
20
- * v.boolean().required(),
21
- * v.file().required()
22
- * ]);
23
- * ```
24
- */
25
- class UnionValidator extends BaseValidator {
26
- /**
27
- * Set the validators to try for union validation
28
- *
29
- * @param validators - Array of validators to try
30
- * @param errorMessage - Optional custom error message if all validators fail
31
- * @returns This validator for chaining
32
- *
33
- * @example
34
- * ```ts
35
- * new UnionValidator()
36
- * .union([v.string(), v.number()], 'Must be string or number');
37
- * ```
38
- */
39
- union(validators, errorMessage) {
40
- const rule = this.addRule(unionRule, errorMessage);
41
- rule.context.options.validators = validators;
42
- return this;
43
- }
44
- }export{UnionValidator};//# sourceMappingURL=union-validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"union-validator.js","sources":["../../src/validators/union-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"wKAGA;;;;;;;;;;;;;;;;;;;;;;;AAuBG;AACG,MAAO,cAAe,SAAQ,aAAa,CAAA;AAC/C;;;;;;;;;;;;AAYG;IACI,KAAK,CAAC,UAA2B,EAAE,YAAqB,EAAA;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;AAC7C,QAAA,OAAO,IAAI,CAAC;KACb;AACF"}