bguard 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (685) hide show
  1. package/README.md +571 -5
  2. package/lib/InferType.d.mts +37 -3
  3. package/lib/InferType.d.ts +37 -3
  4. package/lib/asserts/array/index.d.mts +1 -0
  5. package/lib/asserts/array/index.d.ts +1 -0
  6. package/lib/asserts/array/index.js +6 -6
  7. package/lib/asserts/array/index.mjs +5 -5
  8. package/lib/asserts/array/maxArrayLength.d.mts +2 -1
  9. package/lib/asserts/array/maxArrayLength.d.ts +2 -1
  10. package/lib/asserts/array/maxArrayLength.js +5 -4
  11. package/lib/asserts/array/maxArrayLength.js.map +1 -1
  12. package/lib/asserts/array/maxArrayLength.mjs +4 -3
  13. package/lib/asserts/array/minArrayLength.d.mts +2 -1
  14. package/lib/asserts/array/minArrayLength.d.ts +2 -1
  15. package/lib/asserts/array/minArrayLength.js +5 -4
  16. package/lib/asserts/array/minArrayLength.js.map +1 -1
  17. package/lib/asserts/array/minArrayLength.mjs +4 -3
  18. package/lib/asserts/bigint/bigintMax.d.mts +2 -1
  19. package/lib/asserts/bigint/bigintMax.d.ts +2 -1
  20. package/lib/asserts/bigint/bigintMax.js +4 -4
  21. package/lib/asserts/bigint/bigintMax.mjs +3 -3
  22. package/lib/asserts/bigint/bigintMaxExcluded.d.mts +2 -1
  23. package/lib/asserts/bigint/bigintMaxExcluded.d.ts +2 -1
  24. package/lib/asserts/bigint/bigintMaxExcluded.js +4 -4
  25. package/lib/asserts/bigint/bigintMaxExcluded.mjs +3 -3
  26. package/lib/asserts/bigint/bigintMin.d.mts +2 -1
  27. package/lib/asserts/bigint/bigintMin.d.ts +2 -1
  28. package/lib/asserts/bigint/bigintMin.js +4 -4
  29. package/lib/asserts/bigint/bigintMin.mjs +3 -3
  30. package/lib/asserts/bigint/bigintMinExcluded.d.mts +2 -1
  31. package/lib/asserts/bigint/bigintMinExcluded.d.ts +2 -1
  32. package/lib/asserts/bigint/bigintMinExcluded.js +4 -4
  33. package/lib/asserts/bigint/bigintMinExcluded.mjs +3 -3
  34. package/lib/asserts/bigint/index.d.mts +8 -3
  35. package/lib/asserts/bigint/index.d.ts +8 -3
  36. package/lib/asserts/bigint/index.js +9 -9
  37. package/lib/asserts/bigint/index.mjs +8 -8
  38. package/lib/asserts/boolean/index.d.mts +9 -2
  39. package/lib/asserts/boolean/index.d.ts +9 -2
  40. package/lib/asserts/boolean/index.js +7 -7
  41. package/lib/asserts/boolean/index.mjs +6 -6
  42. package/lib/asserts/coerce/index.d.mts +52 -0
  43. package/lib/asserts/coerce/index.d.ts +52 -0
  44. package/lib/asserts/coerce/index.js +21 -0
  45. package/lib/asserts/coerce/index.js.map +1 -0
  46. package/lib/asserts/coerce/index.mjs +21 -0
  47. package/lib/asserts/coerce/index.mjs.map +1 -0
  48. package/lib/asserts/date/dateMax.d.mts +2 -1
  49. package/lib/asserts/date/dateMax.d.ts +2 -1
  50. package/lib/asserts/date/dateMax.js +4 -4
  51. package/lib/asserts/date/dateMax.mjs +3 -3
  52. package/lib/asserts/date/dateMin.d.mts +2 -1
  53. package/lib/asserts/date/dateMin.d.ts +2 -1
  54. package/lib/asserts/date/dateMin.js +4 -4
  55. package/lib/asserts/date/dateMin.mjs +3 -3
  56. package/lib/asserts/date/index.d.mts +1 -0
  57. package/lib/asserts/date/index.d.ts +1 -0
  58. package/lib/asserts/date/index.js +6 -6
  59. package/lib/asserts/date/index.mjs +5 -5
  60. package/lib/asserts/intersection/index.d.mts +36 -0
  61. package/lib/asserts/intersection/index.d.ts +36 -0
  62. package/lib/asserts/intersection/index.js +13 -0
  63. package/lib/asserts/intersection/index.js.map +1 -0
  64. package/lib/asserts/intersection/index.mjs +13 -0
  65. package/lib/asserts/intersection/index.mjs.map +1 -0
  66. package/lib/asserts/lazy/index.d.mts +42 -0
  67. package/lib/asserts/lazy/index.d.ts +42 -0
  68. package/lib/asserts/lazy/index.js +12 -0
  69. package/lib/asserts/lazy/index.js.map +1 -0
  70. package/lib/asserts/lazy/index.mjs +12 -0
  71. package/lib/asserts/lazy/index.mjs.map +1 -0
  72. package/lib/asserts/mix/equalTo.d.mts +2 -1
  73. package/lib/asserts/mix/equalTo.d.ts +2 -1
  74. package/lib/asserts/mix/equalTo.js +4 -4
  75. package/lib/asserts/mix/equalTo.mjs +3 -3
  76. package/lib/asserts/mix/index.d.mts +10 -3
  77. package/lib/asserts/mix/index.d.ts +10 -3
  78. package/lib/asserts/mix/index.js +6 -6
  79. package/lib/asserts/mix/index.mjs +5 -5
  80. package/lib/asserts/mix/oneOfValues.d.mts +2 -1
  81. package/lib/asserts/mix/oneOfValues.d.ts +2 -1
  82. package/lib/asserts/mix/oneOfValues.js +4 -4
  83. package/lib/asserts/mix/oneOfValues.mjs +3 -3
  84. package/lib/asserts/number/index.d.mts +3 -2
  85. package/lib/asserts/number/index.d.ts +3 -2
  86. package/lib/asserts/number/index.js +9 -9
  87. package/lib/asserts/number/index.mjs +8 -8
  88. package/lib/asserts/number/max.d.mts +2 -1
  89. package/lib/asserts/number/max.d.ts +2 -1
  90. package/lib/asserts/number/max.js +5 -4
  91. package/lib/asserts/number/max.js.map +1 -1
  92. package/lib/asserts/number/max.mjs +4 -3
  93. package/lib/asserts/number/maxExcluded.d.mts +2 -1
  94. package/lib/asserts/number/maxExcluded.d.ts +2 -1
  95. package/lib/asserts/number/maxExcluded.js +5 -4
  96. package/lib/asserts/number/maxExcluded.js.map +1 -1
  97. package/lib/asserts/number/maxExcluded.mjs +4 -3
  98. package/lib/asserts/number/min.d.mts +2 -1
  99. package/lib/asserts/number/min.d.ts +2 -1
  100. package/lib/asserts/number/min.js +5 -4
  101. package/lib/asserts/number/min.js.map +1 -1
  102. package/lib/asserts/number/min.mjs +4 -3
  103. package/lib/asserts/number/minExcluded.d.mts +2 -1
  104. package/lib/asserts/number/minExcluded.d.ts +2 -1
  105. package/lib/asserts/number/minExcluded.js +5 -4
  106. package/lib/asserts/number/minExcluded.js.map +1 -1
  107. package/lib/asserts/number/minExcluded.mjs +4 -3
  108. package/lib/asserts/number/negative.d.mts +2 -1
  109. package/lib/asserts/number/negative.d.ts +2 -1
  110. package/lib/asserts/number/negative.js +5 -4
  111. package/lib/asserts/number/negative.js.map +1 -1
  112. package/lib/asserts/number/negative.mjs +4 -3
  113. package/lib/asserts/number/positive.d.mts +2 -1
  114. package/lib/asserts/number/positive.d.ts +2 -1
  115. package/lib/asserts/number/positive.js +5 -4
  116. package/lib/asserts/number/positive.js.map +1 -1
  117. package/lib/asserts/number/positive.mjs +4 -3
  118. package/lib/asserts/object/extend.d.mts +29 -0
  119. package/lib/asserts/object/extend.d.ts +29 -0
  120. package/lib/asserts/object/extend.js +14 -0
  121. package/lib/asserts/object/extend.js.map +1 -0
  122. package/lib/asserts/object/extend.mjs +14 -0
  123. package/lib/asserts/object/extend.mjs.map +1 -0
  124. package/lib/asserts/object/index.d.mts +3 -2
  125. package/lib/asserts/object/index.d.ts +3 -2
  126. package/lib/asserts/object/index.js +8 -6
  127. package/lib/asserts/object/index.js.map +1 -1
  128. package/lib/asserts/object/index.mjs +7 -5
  129. package/lib/asserts/object/maxKeys.d.mts +2 -1
  130. package/lib/asserts/object/maxKeys.d.ts +2 -1
  131. package/lib/asserts/object/maxKeys.js +5 -4
  132. package/lib/asserts/object/maxKeys.js.map +1 -1
  133. package/lib/asserts/object/maxKeys.mjs +4 -3
  134. package/lib/asserts/object/omit.d.mts +27 -0
  135. package/lib/asserts/object/omit.d.ts +27 -0
  136. package/lib/asserts/object/omit.js +14 -0
  137. package/lib/asserts/object/omit.js.map +1 -0
  138. package/lib/asserts/object/omit.mjs +14 -0
  139. package/lib/asserts/object/omit.mjs.map +1 -0
  140. package/lib/asserts/object/partial.d.mts +34 -0
  141. package/lib/asserts/object/partial.d.ts +34 -0
  142. package/lib/asserts/object/partial.js +14 -0
  143. package/lib/asserts/object/partial.js.map +1 -0
  144. package/lib/asserts/object/partial.mjs +14 -0
  145. package/lib/asserts/object/partial.mjs.map +1 -0
  146. package/lib/asserts/object/pick.d.mts +32 -0
  147. package/lib/asserts/object/pick.d.ts +32 -0
  148. package/lib/asserts/object/pick.js +17 -0
  149. package/lib/asserts/object/pick.js.map +1 -0
  150. package/lib/asserts/object/pick.mjs +17 -0
  151. package/lib/asserts/object/pick.mjs.map +1 -0
  152. package/lib/asserts/object/required.d.mts +39 -0
  153. package/lib/asserts/object/required.d.ts +39 -0
  154. package/lib/asserts/object/required.js +14 -0
  155. package/lib/asserts/object/required.js.map +1 -0
  156. package/lib/asserts/object/required.mjs +14 -0
  157. package/lib/asserts/object/required.mjs.map +1 -0
  158. package/lib/asserts/record/index.d.mts +28 -0
  159. package/lib/asserts/record/index.d.ts +28 -0
  160. package/lib/asserts/record/index.js +12 -0
  161. package/lib/asserts/record/index.js.map +1 -0
  162. package/lib/asserts/record/index.mjs +12 -0
  163. package/lib/asserts/record/index.mjs.map +1 -0
  164. package/lib/asserts/string/atLeastOneDigit.d.mts +2 -1
  165. package/lib/asserts/string/atLeastOneDigit.d.ts +2 -1
  166. package/lib/asserts/string/atLeastOneDigit.js +4 -4
  167. package/lib/asserts/string/atLeastOneDigit.mjs +3 -3
  168. package/lib/asserts/string/atLeastOneLowerChar.d.mts +2 -1
  169. package/lib/asserts/string/atLeastOneLowerChar.d.ts +2 -1
  170. package/lib/asserts/string/atLeastOneLowerChar.js +4 -4
  171. package/lib/asserts/string/atLeastOneLowerChar.mjs +3 -3
  172. package/lib/asserts/string/atLeastOneSpecialChar.d.mts +2 -1
  173. package/lib/asserts/string/atLeastOneSpecialChar.d.ts +2 -1
  174. package/lib/asserts/string/atLeastOneSpecialChar.js +4 -4
  175. package/lib/asserts/string/atLeastOneSpecialChar.mjs +3 -3
  176. package/lib/asserts/string/atLeastOneUpperChar.d.mts +2 -1
  177. package/lib/asserts/string/atLeastOneUpperChar.d.ts +2 -1
  178. package/lib/asserts/string/atLeastOneUpperChar.js +4 -4
  179. package/lib/asserts/string/atLeastOneUpperChar.mjs +3 -3
  180. package/lib/asserts/string/contains.d.mts +2 -1
  181. package/lib/asserts/string/contains.d.ts +2 -1
  182. package/lib/asserts/string/contains.js +4 -4
  183. package/lib/asserts/string/contains.mjs +3 -3
  184. package/lib/asserts/string/email.d.mts +2 -1
  185. package/lib/asserts/string/email.d.ts +2 -1
  186. package/lib/asserts/string/email.js +5 -4
  187. package/lib/asserts/string/email.js.map +1 -1
  188. package/lib/asserts/string/email.mjs +4 -3
  189. package/lib/asserts/string/endsWith.d.mts +2 -1
  190. package/lib/asserts/string/endsWith.d.ts +2 -1
  191. package/lib/asserts/string/endsWith.js +4 -4
  192. package/lib/asserts/string/endsWith.mjs +3 -3
  193. package/lib/asserts/string/index.d.mts +8 -3
  194. package/lib/asserts/string/index.d.ts +8 -3
  195. package/lib/asserts/string/index.js +10 -9
  196. package/lib/asserts/string/index.js.map +1 -1
  197. package/lib/asserts/string/index.mjs +9 -8
  198. package/lib/asserts/string/isValidDate.d.mts +2 -1
  199. package/lib/asserts/string/isValidDate.d.ts +2 -1
  200. package/lib/asserts/string/isValidDate.js +5 -4
  201. package/lib/asserts/string/isValidDate.js.map +1 -1
  202. package/lib/asserts/string/isValidDate.mjs +4 -3
  203. package/lib/asserts/string/isValidDateTime.d.mts +2 -1
  204. package/lib/asserts/string/isValidDateTime.d.ts +2 -1
  205. package/lib/asserts/string/isValidDateTime.js +5 -4
  206. package/lib/asserts/string/isValidDateTime.js.map +1 -1
  207. package/lib/asserts/string/isValidDateTime.mjs +4 -3
  208. package/lib/asserts/string/isValidTime.d.mts +2 -1
  209. package/lib/asserts/string/isValidTime.d.ts +2 -1
  210. package/lib/asserts/string/isValidTime.js +5 -4
  211. package/lib/asserts/string/isValidTime.js.map +1 -1
  212. package/lib/asserts/string/isValidTime.mjs +4 -3
  213. package/lib/asserts/string/lowerCase.d.mts +2 -1
  214. package/lib/asserts/string/lowerCase.d.ts +2 -1
  215. package/lib/asserts/string/lowerCase.js +4 -4
  216. package/lib/asserts/string/lowerCase.mjs +3 -3
  217. package/lib/asserts/string/maxLength.d.mts +2 -1
  218. package/lib/asserts/string/maxLength.d.ts +2 -1
  219. package/lib/asserts/string/maxLength.js +5 -4
  220. package/lib/asserts/string/maxLength.js.map +1 -1
  221. package/lib/asserts/string/maxLength.mjs +4 -3
  222. package/lib/asserts/string/minLength.d.mts +2 -1
  223. package/lib/asserts/string/minLength.d.ts +2 -1
  224. package/lib/asserts/string/minLength.js +5 -4
  225. package/lib/asserts/string/minLength.js.map +1 -1
  226. package/lib/asserts/string/minLength.mjs +4 -3
  227. package/lib/asserts/string/regExp.d.mts +2 -1
  228. package/lib/asserts/string/regExp.d.ts +2 -1
  229. package/lib/asserts/string/regExp.js +5 -4
  230. package/lib/asserts/string/regExp.js.map +1 -1
  231. package/lib/asserts/string/regExp.mjs +4 -3
  232. package/lib/asserts/string/startsWith.d.mts +2 -1
  233. package/lib/asserts/string/startsWith.d.ts +2 -1
  234. package/lib/asserts/string/startsWith.js +4 -4
  235. package/lib/asserts/string/startsWith.mjs +3 -3
  236. package/lib/asserts/string/upperCase.d.mts +2 -1
  237. package/lib/asserts/string/upperCase.d.ts +2 -1
  238. package/lib/asserts/string/upperCase.js +4 -4
  239. package/lib/asserts/string/upperCase.mjs +3 -3
  240. package/lib/asserts/string/uuid.d.mts +2 -1
  241. package/lib/asserts/string/uuid.d.ts +2 -1
  242. package/lib/asserts/string/uuid.js +5 -4
  243. package/lib/asserts/string/uuid.js.map +1 -1
  244. package/lib/asserts/string/uuid.mjs +4 -3
  245. package/lib/asserts/string/uuidV1.d.mts +2 -1
  246. package/lib/asserts/string/uuidV1.d.ts +2 -1
  247. package/lib/asserts/string/uuidV1.js +4 -4
  248. package/lib/asserts/string/uuidV1.mjs +3 -3
  249. package/lib/asserts/string/uuidV2.d.mts +2 -1
  250. package/lib/asserts/string/uuidV2.d.ts +2 -1
  251. package/lib/asserts/string/uuidV2.js +4 -4
  252. package/lib/asserts/string/uuidV2.mjs +3 -3
  253. package/lib/asserts/string/uuidV3.d.mts +2 -1
  254. package/lib/asserts/string/uuidV3.d.ts +2 -1
  255. package/lib/asserts/string/uuidV3.js +4 -4
  256. package/lib/asserts/string/uuidV3.mjs +3 -3
  257. package/lib/asserts/string/uuidV4.d.mts +2 -1
  258. package/lib/asserts/string/uuidV4.d.ts +2 -1
  259. package/lib/asserts/string/uuidV4.js +4 -4
  260. package/lib/asserts/string/uuidV4.mjs +3 -3
  261. package/lib/asserts/string/uuidV5.d.mts +2 -1
  262. package/lib/asserts/string/uuidV5.d.ts +2 -1
  263. package/lib/asserts/string/uuidV5.js +4 -4
  264. package/lib/asserts/string/uuidV5.mjs +3 -3
  265. package/lib/asserts/string/validUrl.d.mts +2 -1
  266. package/lib/asserts/string/validUrl.d.ts +2 -1
  267. package/lib/asserts/string/validUrl.js +5 -4
  268. package/lib/asserts/string/validUrl.js.map +1 -1
  269. package/lib/asserts/string/validUrl.mjs +4 -3
  270. package/lib/asserts/tuple/index.d.mts +28 -0
  271. package/lib/asserts/tuple/index.d.ts +28 -0
  272. package/lib/asserts/tuple/index.js +12 -0
  273. package/lib/asserts/tuple/index.js.map +1 -0
  274. package/lib/asserts/tuple/index.mjs +12 -0
  275. package/lib/asserts/tuple/index.mjs.map +1 -0
  276. package/lib/asserts/union/index.d.mts +29 -0
  277. package/lib/asserts/union/index.d.ts +29 -0
  278. package/lib/asserts/union/index.js +12 -0
  279. package/lib/asserts/union/index.js.map +1 -0
  280. package/lib/asserts/union/index.mjs +12 -0
  281. package/lib/asserts/union/index.mjs.map +1 -0
  282. package/lib/{chunk-Y5MNJGFX.js → chunk-2AYQ7GRP.js} +9 -6
  283. package/lib/chunk-2AYQ7GRP.js.map +1 -0
  284. package/lib/{chunk-OMSHZITC.js → chunk-2KLV3CHA.js} +3 -3
  285. package/lib/{chunk-OMSHZITC.js.map → chunk-2KLV3CHA.js.map} +1 -1
  286. package/lib/{chunk-MHWPSQB3.js → chunk-2X6V3ODY.js} +3 -3
  287. package/lib/{chunk-MHWPSQB3.js.map → chunk-2X6V3ODY.js.map} +1 -1
  288. package/lib/{chunk-QIFA6S5U.mjs → chunk-346TIMNH.mjs} +2 -2
  289. package/lib/{chunk-QIFA6S5U.mjs.map → chunk-346TIMNH.mjs.map} +1 -1
  290. package/lib/{chunk-PAV4SQQL.js → chunk-3D6TPN7F.js} +3 -3
  291. package/lib/{chunk-PAV4SQQL.js.map → chunk-3D6TPN7F.js.map} +1 -1
  292. package/lib/{chunk-4UPXP4I3.js → chunk-3OAUE5VW.js} +8 -5
  293. package/lib/chunk-3OAUE5VW.js.map +1 -0
  294. package/lib/chunk-3PTVMZY7.js +22 -0
  295. package/lib/chunk-3PTVMZY7.js.map +1 -0
  296. package/lib/{chunk-QEG24G7E.mjs → chunk-3T5QKF7X.mjs} +2 -2
  297. package/lib/{chunk-QEG24G7E.mjs.map → chunk-3T5QKF7X.mjs.map} +1 -1
  298. package/lib/{chunk-FI737YZJ.js → chunk-45K4AUO3.js} +9 -6
  299. package/lib/chunk-45K4AUO3.js.map +1 -0
  300. package/lib/{chunk-PNSDUVRE.mjs → chunk-4AZOGLHD.mjs} +2 -2
  301. package/lib/{chunk-PNSDUVRE.mjs.map → chunk-4AZOGLHD.mjs.map} +1 -1
  302. package/lib/{chunk-HWVM4SYU.mjs → chunk-54F462SS.mjs} +7 -4
  303. package/lib/chunk-54F462SS.mjs.map +1 -0
  304. package/lib/{chunk-S4FWDTEW.mjs → chunk-55P4YTMX.mjs} +2 -2
  305. package/lib/{chunk-S4FWDTEW.mjs.map → chunk-55P4YTMX.mjs.map} +1 -1
  306. package/lib/chunk-5PIGAEGL.mjs +22 -0
  307. package/lib/chunk-5PIGAEGL.mjs.map +1 -0
  308. package/lib/{chunk-ZGUF5ZDP.mjs → chunk-5U5CYDRB.mjs} +2 -2
  309. package/lib/{chunk-ZGUF5ZDP.mjs.map → chunk-5U5CYDRB.mjs.map} +1 -1
  310. package/lib/chunk-5VZDHJKM.mjs +68 -0
  311. package/lib/chunk-5VZDHJKM.mjs.map +1 -0
  312. package/lib/{chunk-V7C77FML.mjs → chunk-5WLWZKC6.mjs} +7 -4
  313. package/lib/chunk-5WLWZKC6.mjs.map +1 -0
  314. package/lib/{chunk-GFWZQ4XW.mjs → chunk-5WV7FMW7.mjs} +8 -5
  315. package/lib/chunk-5WV7FMW7.mjs.map +1 -0
  316. package/lib/{chunk-OE3L7EKN.mjs → chunk-65X7NTUS.mjs} +18 -9
  317. package/lib/chunk-65X7NTUS.mjs.map +1 -0
  318. package/lib/chunk-6LUSV3SS.js +595 -0
  319. package/lib/chunk-6LUSV3SS.js.map +1 -0
  320. package/lib/{chunk-BRFUFNU4.js → chunk-7A4RN5UD.js} +9 -6
  321. package/lib/chunk-7A4RN5UD.js.map +1 -0
  322. package/lib/{chunk-ENZ5WDUQ.js → chunk-7CNZKYPM.js} +8 -5
  323. package/lib/chunk-7CNZKYPM.js.map +1 -0
  324. package/lib/{chunk-NS4GXUCA.mjs → chunk-7F4P72SG.mjs} +2 -2
  325. package/lib/{chunk-NS4GXUCA.mjs.map → chunk-7F4P72SG.mjs.map} +1 -1
  326. package/lib/chunk-A36G62K5.mjs +49 -0
  327. package/lib/chunk-A36G62K5.mjs.map +1 -0
  328. package/lib/{chunk-24LO7MNY.js → chunk-A5OEVSSV.js} +8 -5
  329. package/lib/chunk-A5OEVSSV.js.map +1 -0
  330. package/lib/{chunk-KRCOKWAB.mjs → chunk-ABSZMCDX.mjs} +8 -5
  331. package/lib/chunk-ABSZMCDX.mjs.map +1 -0
  332. package/lib/{chunk-PVQALO2H.js → chunk-ALXDH7GS.js} +3 -3
  333. package/lib/{chunk-PVQALO2H.js.map → chunk-ALXDH7GS.js.map} +1 -1
  334. package/lib/chunk-AO6DKPJZ.js +49 -0
  335. package/lib/chunk-AO6DKPJZ.js.map +1 -0
  336. package/lib/{chunk-TQDMUHTA.mjs → chunk-AYJCGPXI.mjs} +2 -2
  337. package/lib/{chunk-TQDMUHTA.mjs.map → chunk-AYJCGPXI.mjs.map} +1 -1
  338. package/lib/{chunk-OSFIPFQ3.mjs → chunk-AYSJLD4S.mjs} +5 -5
  339. package/lib/{chunk-OSFIPFQ3.mjs.map → chunk-AYSJLD4S.mjs.map} +1 -1
  340. package/lib/{chunk-6WKSLMJG.mjs → chunk-B2R5S6OH.mjs} +6 -6
  341. package/lib/chunk-B3IWQRZF.mjs +22 -0
  342. package/lib/chunk-B3IWQRZF.mjs.map +1 -0
  343. package/lib/{chunk-DCPRPCZ3.js → chunk-B4WB3UB7.js} +3 -3
  344. package/lib/{chunk-DCPRPCZ3.js.map → chunk-B4WB3UB7.js.map} +1 -1
  345. package/lib/chunk-BZ6R6RWE.mjs +19 -0
  346. package/lib/chunk-BZ6R6RWE.mjs.map +1 -0
  347. package/lib/{chunk-MCQHWS3E.mjs → chunk-C6ICGQEX.mjs} +7 -4
  348. package/lib/chunk-C6ICGQEX.mjs.map +1 -0
  349. package/lib/{chunk-2ANPCB4O.mjs → chunk-C76DLZFD.mjs} +2 -2
  350. package/lib/{chunk-2ANPCB4O.mjs.map → chunk-C76DLZFD.mjs.map} +1 -1
  351. package/lib/{chunk-OZ3BTSSQ.mjs → chunk-CJCIOMS7.mjs} +19 -17
  352. package/lib/chunk-CJCIOMS7.mjs.map +1 -0
  353. package/lib/chunk-CLRHVTVY.js +50 -0
  354. package/lib/chunk-CLRHVTVY.js.map +1 -0
  355. package/lib/{chunk-QMIH3A4D.js → chunk-CWYS6MUA.js} +3 -3
  356. package/lib/{chunk-QMIH3A4D.js.map → chunk-CWYS6MUA.js.map} +1 -1
  357. package/lib/{chunk-W3U7RYLP.mjs → chunk-D42AL6CN.mjs} +2 -2
  358. package/lib/{chunk-W3U7RYLP.mjs.map → chunk-D42AL6CN.mjs.map} +1 -1
  359. package/lib/{chunk-YDTQASAY.mjs → chunk-D4YY45O2.mjs} +8 -5
  360. package/lib/chunk-D4YY45O2.mjs.map +1 -0
  361. package/lib/{chunk-WLPDAJB3.js → chunk-DKGRAVID.js} +29 -11
  362. package/lib/chunk-DKGRAVID.js.map +1 -0
  363. package/lib/{chunk-TZBAW5OO.mjs → chunk-DLEDKNPD.mjs} +2 -2
  364. package/lib/{chunk-TZBAW5OO.mjs.map → chunk-DLEDKNPD.mjs.map} +1 -1
  365. package/lib/{chunk-NBR3QGKW.js → chunk-DPXTSNEX.js} +5 -5
  366. package/lib/{chunk-NBR3QGKW.js.map → chunk-DPXTSNEX.js.map} +1 -1
  367. package/lib/{chunk-6JPYR2TS.js → chunk-ECLNZ233.js} +9 -6
  368. package/lib/chunk-ECLNZ233.js.map +1 -0
  369. package/lib/chunk-EEKYR5IA.js +19 -0
  370. package/lib/chunk-EEKYR5IA.js.map +1 -0
  371. package/lib/{chunk-TCDQA2NU.js → chunk-EJCCIGXH.js} +8 -8
  372. package/lib/{chunk-TCDQA2NU.js.map → chunk-EJCCIGXH.js.map} +1 -1
  373. package/lib/{chunk-6LPQRAFN.js → chunk-EN745GWN.js} +10 -7
  374. package/lib/chunk-EN745GWN.js.map +1 -0
  375. package/lib/{chunk-OFZMO7PB.mjs → chunk-ETBJ4NF4.mjs} +7 -4
  376. package/lib/chunk-ETBJ4NF4.mjs.map +1 -0
  377. package/lib/chunk-EVM26M2C.js +66 -0
  378. package/lib/chunk-EVM26M2C.js.map +1 -0
  379. package/lib/{chunk-23QTSXPQ.js → chunk-FJEBPEGR.js} +8 -5
  380. package/lib/chunk-FJEBPEGR.js.map +1 -0
  381. package/lib/chunk-FTHEF6SB.js +14 -0
  382. package/lib/{chunk-XDVSL5B6.js.map → chunk-FTHEF6SB.js.map} +1 -1
  383. package/lib/chunk-G2VC3SQB.js +22 -0
  384. package/lib/chunk-G2VC3SQB.js.map +1 -0
  385. package/lib/{chunk-NOJB5GBZ.mjs → chunk-G6YZVGWC.mjs} +8 -5
  386. package/lib/chunk-G6YZVGWC.mjs.map +1 -0
  387. package/lib/{chunk-Z2HZXSDA.js → chunk-GSLVYDXO.js} +3 -3
  388. package/lib/{chunk-Z2HZXSDA.js.map → chunk-GSLVYDXO.js.map} +1 -1
  389. package/lib/{chunk-H4OW6OUF.js → chunk-GTGXSQKC.js} +3 -3
  390. package/lib/{chunk-H4OW6OUF.js.map → chunk-GTGXSQKC.js.map} +1 -1
  391. package/lib/chunk-GYLCPX6O.js +68 -0
  392. package/lib/chunk-GYLCPX6O.js.map +1 -0
  393. package/lib/{chunk-Z3NPFUIA.mjs → chunk-H3FXZTYS.mjs} +2 -2
  394. package/lib/{chunk-Z3NPFUIA.mjs.map → chunk-H3FXZTYS.mjs.map} +1 -1
  395. package/lib/{chunk-T2A3XXQZ.mjs → chunk-HKDDJSN2.mjs} +8 -5
  396. package/lib/chunk-HKDDJSN2.mjs.map +1 -0
  397. package/lib/{chunk-THU5VBSO.mjs → chunk-IIL6D2UL.mjs} +2 -2
  398. package/lib/{chunk-AJHBPMZT.mjs → chunk-IWNVHB2K.mjs} +8 -5
  399. package/lib/chunk-IWNVHB2K.mjs.map +1 -0
  400. package/lib/{chunk-2ESDKTV4.js → chunk-JF7KZZ7R.js} +9 -6
  401. package/lib/chunk-JF7KZZ7R.js.map +1 -0
  402. package/lib/chunk-JHONMWCE.js +27 -0
  403. package/lib/chunk-JHONMWCE.js.map +1 -0
  404. package/lib/{chunk-DED5KDLM.js → chunk-JLEQOYDW.js} +15 -13
  405. package/lib/chunk-JLEQOYDW.js.map +1 -0
  406. package/lib/{chunk-HD37VXPZ.mjs → chunk-JND3VAPR.mjs} +2 -2
  407. package/lib/{chunk-HD37VXPZ.mjs.map → chunk-JND3VAPR.mjs.map} +1 -1
  408. package/lib/chunk-K4YXIN2V.mjs +33 -0
  409. package/lib/chunk-K4YXIN2V.mjs.map +1 -0
  410. package/lib/{chunk-NY2TPU6O.mjs → chunk-K6QYFFMX.mjs} +8 -5
  411. package/lib/chunk-K6QYFFMX.mjs.map +1 -0
  412. package/lib/{chunk-M3HYPZLE.mjs → chunk-KAFZGQ2W.mjs} +10 -8
  413. package/lib/chunk-KAFZGQ2W.mjs.map +1 -0
  414. package/lib/{chunk-DFYP4GKE.js → chunk-KDPYWGMJ.js} +8 -5
  415. package/lib/chunk-KDPYWGMJ.js.map +1 -0
  416. package/lib/chunk-KGNT5T35.mjs +70 -0
  417. package/lib/chunk-KGNT5T35.mjs.map +1 -0
  418. package/lib/{chunk-R25HSJPH.js → chunk-KIVIWBIY.js} +3 -3
  419. package/lib/{chunk-R25HSJPH.js.map → chunk-KIVIWBIY.js.map} +1 -1
  420. package/lib/{chunk-ZNQHNLKW.js → chunk-KZBW5WCK.js} +8 -5
  421. package/lib/chunk-KZBW5WCK.js.map +1 -0
  422. package/lib/{chunk-VVXKATDH.js → chunk-L36PQXUB.js} +8 -5
  423. package/lib/chunk-L36PQXUB.js.map +1 -0
  424. package/lib/chunk-L7YFDMZU.js +78 -0
  425. package/lib/chunk-L7YFDMZU.js.map +1 -0
  426. package/lib/chunk-LDZFOOWN.mjs +595 -0
  427. package/lib/chunk-LDZFOOWN.mjs.map +1 -0
  428. package/lib/{chunk-AXKX5BGH.js → chunk-LHEU4XAC.js} +2 -2
  429. package/lib/chunk-LHEU4XAC.js.map +1 -0
  430. package/lib/chunk-LNBZ7SJR.js +26 -0
  431. package/lib/chunk-LNBZ7SJR.js.map +1 -0
  432. package/lib/{chunk-AQCV7PB4.mjs → chunk-M7EMQU7U.mjs} +5 -5
  433. package/lib/{chunk-AQCV7PB4.mjs.map → chunk-M7EMQU7U.mjs.map} +1 -1
  434. package/lib/{chunk-GGWJJFXY.mjs → chunk-MOHROZTD.mjs} +2 -2
  435. package/lib/{chunk-GGWJJFXY.mjs.map → chunk-MOHROZTD.mjs.map} +1 -1
  436. package/lib/{chunk-SBO6OQIX.mjs → chunk-MQGE7GIK.mjs} +8 -5
  437. package/lib/chunk-MQGE7GIK.mjs.map +1 -0
  438. package/lib/{chunk-H2M4FCRZ.mjs → chunk-NC7E2FQR.mjs} +2 -2
  439. package/lib/{chunk-H2M4FCRZ.mjs.map → chunk-NC7E2FQR.mjs.map} +1 -1
  440. package/lib/chunk-NM3VRT77.mjs +120 -0
  441. package/lib/chunk-NM3VRT77.mjs.map +1 -0
  442. package/lib/{chunk-OHUOBIHX.mjs → chunk-NM4TCTZM.mjs} +28 -10
  443. package/lib/chunk-NM4TCTZM.mjs.map +1 -0
  444. package/lib/chunk-NXS5ULAJ.mjs +22 -0
  445. package/lib/chunk-NXS5ULAJ.mjs.map +1 -0
  446. package/lib/{chunk-2D3HCTJV.js → chunk-NZOANK7A.js} +3 -3
  447. package/lib/{chunk-2D3HCTJV.js.map → chunk-NZOANK7A.js.map} +1 -1
  448. package/lib/{chunk-ZTCXXAKD.mjs → chunk-O2WD4JBG.mjs} +8 -2
  449. package/lib/chunk-O2WD4JBG.mjs.map +1 -0
  450. package/lib/chunk-O4FVL7CA.js +33 -0
  451. package/lib/chunk-O4FVL7CA.js.map +1 -0
  452. package/lib/{chunk-WYM2TIVW.mjs → chunk-O646PJXY.mjs} +3 -3
  453. package/lib/{chunk-ARIYSQMH.js → chunk-OHJ2EB4T.js} +3 -3
  454. package/lib/{chunk-ARIYSQMH.js.map → chunk-OHJ2EB4T.js.map} +1 -1
  455. package/lib/{chunk-TLPVFRWR.js → chunk-OPA6AXSH.js} +3 -3
  456. package/lib/{chunk-TLPVFRWR.js.map → chunk-OPA6AXSH.js.map} +1 -1
  457. package/lib/chunk-OQB5UGWG.mjs +24 -0
  458. package/lib/chunk-OQB5UGWG.mjs.map +1 -0
  459. package/lib/{chunk-3W2COCXV.js → chunk-ORQBVFHY.js} +3 -3
  460. package/lib/{chunk-3W2COCXV.js.map → chunk-ORQBVFHY.js.map} +1 -1
  461. package/lib/{chunk-C44KAKMR.js → chunk-OW7RK5YW.js} +3 -3
  462. package/lib/{chunk-C44KAKMR.js.map → chunk-OW7RK5YW.js.map} +1 -1
  463. package/lib/{chunk-22254THF.mjs → chunk-OY5DJBRV.mjs} +2 -2
  464. package/lib/{chunk-22254THF.mjs.map → chunk-OY5DJBRV.mjs.map} +1 -1
  465. package/lib/chunk-P2SQQBVB.js +22 -0
  466. package/lib/chunk-P2SQQBVB.js.map +1 -0
  467. package/lib/chunk-P6CI5ITJ.js +22 -0
  468. package/lib/chunk-P6CI5ITJ.js.map +1 -0
  469. package/lib/{chunk-2IPGGARK.mjs → chunk-P6M6QZU5.mjs} +7 -4
  470. package/lib/chunk-P6M6QZU5.mjs.map +1 -0
  471. package/lib/{chunk-Y54K6TQO.js → chunk-PFADKWMO.js} +3 -3
  472. package/lib/{chunk-Y54K6TQO.js.map → chunk-PFADKWMO.js.map} +1 -1
  473. package/lib/chunk-POPLWPM4.mjs +19 -0
  474. package/lib/chunk-POPLWPM4.mjs.map +1 -0
  475. package/lib/{chunk-VOFKYSJD.js → chunk-POQZCV3D.js} +3 -3
  476. package/lib/{chunk-VOFKYSJD.js.map → chunk-POQZCV3D.js.map} +1 -1
  477. package/lib/{chunk-M2GOQ7TZ.mjs → chunk-QM4MJTTD.mjs} +7 -4
  478. package/lib/chunk-QM4MJTTD.mjs.map +1 -0
  479. package/lib/{chunk-WJGXVKZY.js → chunk-QNA4O6AU.js} +3 -3
  480. package/lib/{chunk-WJGXVKZY.js.map → chunk-QNA4O6AU.js.map} +1 -1
  481. package/lib/{chunk-ZDXO3TGZ.mjs → chunk-RCD6EO4Q.mjs} +7 -4
  482. package/lib/chunk-RCD6EO4Q.mjs.map +1 -0
  483. package/lib/{chunk-ZEGRYDE5.mjs → chunk-RDJK3X4J.mjs} +8 -5
  484. package/lib/chunk-RDJK3X4J.mjs.map +1 -0
  485. package/lib/{chunk-4N5J426R.mjs → chunk-RXU74KSN.mjs} +2 -2
  486. package/lib/{chunk-4N5J426R.mjs.map → chunk-RXU74KSN.mjs.map} +1 -1
  487. package/lib/{chunk-S5D5AFDF.js → chunk-S6N4N4FT.js} +9 -6
  488. package/lib/chunk-S6N4N4FT.js.map +1 -0
  489. package/lib/{chunk-SFIX77W5.js → chunk-SGWF66HS.js} +3 -3
  490. package/lib/{chunk-SFIX77W5.js.map → chunk-SGWF66HS.js.map} +1 -1
  491. package/lib/{chunk-OU5BTUDV.mjs → chunk-SKMDZ4S6.mjs} +2 -2
  492. package/lib/{chunk-OU5BTUDV.mjs.map → chunk-SKMDZ4S6.mjs.map} +1 -1
  493. package/lib/chunk-SVRCKC65.js +120 -0
  494. package/lib/chunk-SVRCKC65.js.map +1 -0
  495. package/lib/{chunk-OQYS7JVF.js → chunk-SY2V2V54.js} +6 -6
  496. package/lib/{chunk-OQYS7JVF.js.map → chunk-SY2V2V54.js.map} +1 -1
  497. package/lib/{chunk-YMPRYKNY.js → chunk-SZO4SUUG.js} +9 -6
  498. package/lib/chunk-SZO4SUUG.js.map +1 -0
  499. package/lib/chunk-TCHVA6VG.js +24 -0
  500. package/lib/chunk-TCHVA6VG.js.map +1 -0
  501. package/lib/{chunk-C2VSTWID.js → chunk-TJ7IQSHU.js} +9 -6
  502. package/lib/chunk-TJ7IQSHU.js.map +1 -0
  503. package/lib/chunk-TLLR2DXI.js +70 -0
  504. package/lib/chunk-TLLR2DXI.js.map +1 -0
  505. package/lib/{chunk-7JL66G7G.mjs → chunk-TPSWNY5K.mjs} +2 -2
  506. package/lib/{chunk-7JL66G7G.mjs.map → chunk-TPSWNY5K.mjs.map} +1 -1
  507. package/lib/chunk-UCHEFFWR.js +79 -0
  508. package/lib/chunk-UCHEFFWR.js.map +1 -0
  509. package/lib/{chunk-HPIF2CMT.js → chunk-UIJIIIOA.js} +9 -6
  510. package/lib/chunk-UIJIIIOA.js.map +1 -0
  511. package/lib/chunk-UMS4M7FU.mjs +22 -0
  512. package/lib/chunk-UMS4M7FU.mjs.map +1 -0
  513. package/lib/{chunk-N3EHGKZV.mjs → chunk-UN5S46LE.mjs} +7 -4
  514. package/lib/chunk-UN5S46LE.mjs.map +1 -0
  515. package/lib/{chunk-NFD7D5GZ.mjs → chunk-UWONIZJZ.mjs} +26 -19
  516. package/lib/chunk-UWONIZJZ.mjs.map +1 -0
  517. package/lib/chunk-UYAF7QRD.mjs +22 -0
  518. package/lib/chunk-UYAF7QRD.mjs.map +1 -0
  519. package/lib/chunk-VERUOTB3.mjs +10 -0
  520. package/lib/chunk-VERUOTB3.mjs.map +1 -0
  521. package/lib/{chunk-62EKGBXF.js → chunk-VGOAXY26.js} +8 -5
  522. package/lib/chunk-VGOAXY26.js.map +1 -0
  523. package/lib/chunk-VKSBOWCE.mjs +50 -0
  524. package/lib/chunk-VKSBOWCE.mjs.map +1 -0
  525. package/lib/chunk-VT2JBMWQ.mjs +27 -0
  526. package/lib/chunk-VT2JBMWQ.mjs.map +1 -0
  527. package/lib/{chunk-LXZTBF7F.js → chunk-VWHKNZLG.js} +3 -3
  528. package/lib/{chunk-LXZTBF7F.js.map → chunk-VWHKNZLG.js.map} +1 -1
  529. package/lib/{chunk-TLRVQWCI.mjs → chunk-WL7BV4XV.mjs} +9 -6
  530. package/lib/chunk-WL7BV4XV.mjs.map +1 -0
  531. package/lib/chunk-WOPNDC4R.js +10 -0
  532. package/lib/chunk-WOPNDC4R.js.map +1 -0
  533. package/lib/chunk-X6SI76NQ.js +22 -0
  534. package/lib/chunk-X6SI76NQ.js.map +1 -0
  535. package/lib/{chunk-UHMICS34.mjs → chunk-YETYTLAD.mjs} +2 -2
  536. package/lib/{chunk-UHMICS34.mjs.map → chunk-YETYTLAD.mjs.map} +1 -1
  537. package/lib/chunk-YJUYGFG2.mjs +26 -0
  538. package/lib/chunk-YJUYGFG2.mjs.map +1 -0
  539. package/lib/{chunk-UYQFYQQG.mjs → chunk-YJZXJKM4.mjs} +30 -20
  540. package/lib/chunk-YJZXJKM4.mjs.map +1 -0
  541. package/lib/chunk-YOF36UOS.js +19 -0
  542. package/lib/chunk-YOF36UOS.js.map +1 -0
  543. package/lib/{chunk-4ZKU4RJL.mjs → chunk-YQP44G45.mjs} +2 -2
  544. package/lib/{chunk-4ZKU4RJL.mjs.map → chunk-YQP44G45.mjs.map} +1 -1
  545. package/lib/{chunk-22VHHJSS.js → chunk-Z7LBOQRQ.js} +6 -6
  546. package/lib/{chunk-22VHHJSS.js.map → chunk-Z7LBOQRQ.js.map} +1 -1
  547. package/lib/{chunk-IDDU6B6T.js → chunk-ZIBHO6FI.js} +3 -3
  548. package/lib/{chunk-IDDU6B6T.js.map → chunk-ZIBHO6FI.js.map} +1 -1
  549. package/lib/{chunk-TJQ5NVL4.js → chunk-ZJGY6EOE.js} +19 -10
  550. package/lib/chunk-ZJGY6EOE.js.map +1 -0
  551. package/lib/{chunk-V2J4TQR5.mjs → chunk-ZQKVVWD5.mjs} +2 -2
  552. package/lib/{chunk-V2J4TQR5.mjs.map → chunk-ZQKVVWD5.mjs.map} +1 -1
  553. package/lib/{chunk-FIDPCCCW.js → chunk-ZWFSAKQK.js} +8 -2
  554. package/lib/chunk-ZWFSAKQK.js.map +1 -0
  555. package/lib/codeGen.d.mts +1 -0
  556. package/lib/codeGen.d.ts +1 -0
  557. package/lib/codeGen.js +3 -3
  558. package/lib/codeGen.mjs +2 -2
  559. package/lib/commonTypes.d.mts +34 -1
  560. package/lib/commonTypes.d.ts +34 -1
  561. package/lib/core.d.mts +153 -23
  562. package/lib/core.d.ts +153 -23
  563. package/lib/core.js +9 -5
  564. package/lib/core.js.map +1 -1
  565. package/lib/core.mjs +10 -6
  566. package/lib/exceptions.d.mts +5 -1
  567. package/lib/exceptions.d.ts +5 -1
  568. package/lib/exceptions.js +2 -2
  569. package/lib/exceptions.mjs +1 -1
  570. package/lib/formatErrors.d.mts +40 -0
  571. package/lib/formatErrors.d.ts +40 -0
  572. package/lib/formatErrors.js +9 -0
  573. package/lib/formatErrors.js.map +1 -0
  574. package/lib/formatErrors.mjs +9 -0
  575. package/lib/formatErrors.mjs.map +1 -0
  576. package/lib/helpers/constants.js +2 -2
  577. package/lib/helpers/constants.mjs +1 -1
  578. package/lib/helpers/jsonSchemaConstraint.d.mts +18 -0
  579. package/lib/helpers/jsonSchemaConstraint.d.ts +18 -0
  580. package/lib/helpers/jsonSchemaConstraint.js +7 -0
  581. package/lib/helpers/jsonSchemaConstraint.js.map +1 -0
  582. package/lib/helpers/jsonSchemaConstraint.mjs +7 -0
  583. package/lib/helpers/jsonSchemaConstraint.mjs.map +1 -0
  584. package/lib/helpers/quoteStringLiteral.d.mts +3 -0
  585. package/lib/helpers/quoteStringLiteral.d.ts +3 -0
  586. package/lib/helpers/quoteStringLiteral.js +7 -0
  587. package/lib/helpers/quoteStringLiteral.js.map +1 -0
  588. package/lib/helpers/quoteStringLiteral.mjs +7 -0
  589. package/lib/helpers/quoteStringLiteral.mjs.map +1 -0
  590. package/lib/helpers/setStrictType.d.mts +1 -0
  591. package/lib/helpers/setStrictType.d.ts +1 -0
  592. package/lib/helpers/setStrictType.js +3 -3
  593. package/lib/helpers/setStrictType.mjs +2 -2
  594. package/lib/index.d.mts +16 -2
  595. package/lib/index.d.ts +16 -2
  596. package/lib/index.js +115 -55
  597. package/lib/index.js.map +1 -1
  598. package/lib/index.mjs +135 -75
  599. package/lib/standardSchema.d.mts +44 -0
  600. package/lib/standardSchema.d.ts +44 -0
  601. package/lib/standardSchema.js +1 -0
  602. package/lib/standardSchema.js.map +1 -0
  603. package/lib/standardSchema.mjs +1 -0
  604. package/lib/standardSchema.mjs.map +1 -0
  605. package/lib/toJSONSchema.d.mts +44 -0
  606. package/lib/toJSONSchema.d.ts +44 -0
  607. package/lib/toJSONSchema.js +12 -0
  608. package/lib/toJSONSchema.js.map +1 -0
  609. package/lib/toJSONSchema.mjs +12 -0
  610. package/lib/toJSONSchema.mjs.map +1 -0
  611. package/lib/translationMap.d.mts +7 -0
  612. package/lib/translationMap.d.ts +7 -0
  613. package/lib/translationMap.js +3 -3
  614. package/lib/translationMap.mjs +2 -2
  615. package/package.json +183 -46
  616. package/lib/chunk-23QTSXPQ.js.map +0 -1
  617. package/lib/chunk-24LO7MNY.js.map +0 -1
  618. package/lib/chunk-2ESDKTV4.js.map +0 -1
  619. package/lib/chunk-2HGS4STD.js +0 -48
  620. package/lib/chunk-2HGS4STD.js.map +0 -1
  621. package/lib/chunk-2IPGGARK.mjs.map +0 -1
  622. package/lib/chunk-4UPXP4I3.js.map +0 -1
  623. package/lib/chunk-5NYVRFG3.mjs +0 -48
  624. package/lib/chunk-5NYVRFG3.mjs.map +0 -1
  625. package/lib/chunk-62EKGBXF.js.map +0 -1
  626. package/lib/chunk-6JPYR2TS.js.map +0 -1
  627. package/lib/chunk-6LPQRAFN.js.map +0 -1
  628. package/lib/chunk-AJHBPMZT.mjs.map +0 -1
  629. package/lib/chunk-AXKX5BGH.js.map +0 -1
  630. package/lib/chunk-BRFUFNU4.js.map +0 -1
  631. package/lib/chunk-C2VSTWID.js.map +0 -1
  632. package/lib/chunk-D6G32F2K.js +0 -69
  633. package/lib/chunk-D6G32F2K.js.map +0 -1
  634. package/lib/chunk-DED5KDLM.js.map +0 -1
  635. package/lib/chunk-DFYP4GKE.js.map +0 -1
  636. package/lib/chunk-ENZ5WDUQ.js.map +0 -1
  637. package/lib/chunk-FI737YZJ.js.map +0 -1
  638. package/lib/chunk-FIDPCCCW.js.map +0 -1
  639. package/lib/chunk-GFWZQ4XW.mjs.map +0 -1
  640. package/lib/chunk-HPIF2CMT.js.map +0 -1
  641. package/lib/chunk-HUWO5UKU.js +0 -64
  642. package/lib/chunk-HUWO5UKU.js.map +0 -1
  643. package/lib/chunk-HWVM4SYU.mjs.map +0 -1
  644. package/lib/chunk-KRCOKWAB.mjs.map +0 -1
  645. package/lib/chunk-M2GOQ7TZ.mjs.map +0 -1
  646. package/lib/chunk-M3HYPZLE.mjs.map +0 -1
  647. package/lib/chunk-MCQHWS3E.mjs.map +0 -1
  648. package/lib/chunk-N3EHGKZV.mjs.map +0 -1
  649. package/lib/chunk-NFD7D5GZ.mjs.map +0 -1
  650. package/lib/chunk-NOJB5GBZ.mjs.map +0 -1
  651. package/lib/chunk-NY2TPU6O.mjs.map +0 -1
  652. package/lib/chunk-OE3L7EKN.mjs.map +0 -1
  653. package/lib/chunk-OFZMO7PB.mjs.map +0 -1
  654. package/lib/chunk-OHUOBIHX.mjs.map +0 -1
  655. package/lib/chunk-OZ3BTSSQ.mjs.map +0 -1
  656. package/lib/chunk-QIPGUTIG.mjs +0 -302
  657. package/lib/chunk-QIPGUTIG.mjs.map +0 -1
  658. package/lib/chunk-S5D5AFDF.js.map +0 -1
  659. package/lib/chunk-SBO6OQIX.mjs.map +0 -1
  660. package/lib/chunk-T2A3XXQZ.mjs.map +0 -1
  661. package/lib/chunk-TJQ5NVL4.js.map +0 -1
  662. package/lib/chunk-TLRVQWCI.mjs.map +0 -1
  663. package/lib/chunk-UYQFYQQG.mjs.map +0 -1
  664. package/lib/chunk-V7C77FML.mjs.map +0 -1
  665. package/lib/chunk-VN4GLOEN.js +0 -302
  666. package/lib/chunk-VN4GLOEN.js.map +0 -1
  667. package/lib/chunk-VVXKATDH.js.map +0 -1
  668. package/lib/chunk-WLPDAJB3.js.map +0 -1
  669. package/lib/chunk-XBE75VFX.js +0 -13
  670. package/lib/chunk-XBE75VFX.js.map +0 -1
  671. package/lib/chunk-XDVSL5B6.js +0 -14
  672. package/lib/chunk-XIOV4SHZ.mjs +0 -13
  673. package/lib/chunk-XIOV4SHZ.mjs.map +0 -1
  674. package/lib/chunk-Y5MNJGFX.js.map +0 -1
  675. package/lib/chunk-YDTQASAY.mjs.map +0 -1
  676. package/lib/chunk-YMPRYKNY.js.map +0 -1
  677. package/lib/chunk-Z4XOKGU3.js +0 -71
  678. package/lib/chunk-Z4XOKGU3.js.map +0 -1
  679. package/lib/chunk-ZDXO3TGZ.mjs.map +0 -1
  680. package/lib/chunk-ZEGRYDE5.mjs.map +0 -1
  681. package/lib/chunk-ZNQHNLKW.js.map +0 -1
  682. package/lib/chunk-ZTCXXAKD.mjs.map +0 -1
  683. /package/lib/{chunk-6WKSLMJG.mjs.map → chunk-B2R5S6OH.mjs.map} +0 -0
  684. /package/lib/{chunk-THU5VBSO.mjs.map → chunk-IIL6D2UL.mjs.map} +0 -0
  685. /package/lib/{chunk-WYM2TIVW.mjs.map → chunk-O646PJXY.mjs.map} +0 -0
@@ -0,0 +1,79 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _class;
2
+
3
+ var _chunk3D6TPN7Fjs = require('./chunk-3D6TPN7F.js');
4
+
5
+
6
+ var _chunkOPA6AXSHjs = require('./chunk-OPA6AXSH.js');
7
+
8
+
9
+ var _chunkEEKYR5IAjs = require('./chunk-EEKYR5IA.js');
10
+
11
+
12
+ var _chunkFTHEF6SBjs = require('./chunk-FTHEF6SB.js');
13
+
14
+
15
+ var _chunk6LUSV3SSjs = require('./chunk-6LUSV3SS.js');
16
+
17
+
18
+ var _chunkLHEU4XACjs = require('./chunk-LHEU4XAC.js');
19
+
20
+
21
+ var _chunkZWFSAKQKjs = require('./chunk-ZWFSAKQK.js');
22
+
23
+ // src/asserts/string/index.ts
24
+ function string() {
25
+ return new StringSchema({ type: ["string"], requiredValidations: [] });
26
+ }
27
+ var StringSchema = (_class = class extends _chunk6LUSV3SSjs.CommonSchema {constructor(...args) { super(...args); _class.prototype.__init.call(this); }
28
+ __init() {this._string = 1}
29
+
30
+ /**
31
+ * @method equalTo
32
+ * @description Restricts the schema to exactly match the specified value and infers the literal value as the TypeScript type.
33
+ * @param expectedValue - The value that the schema must exactly match.
34
+ * @returns A new schema restricted to the specified value, with the literal value inferred as the TypeScript type
35
+ * @example
36
+ * string().equalTo('hello'); // Infers the type 'hello'
37
+ *
38
+ * @public
39
+ */
40
+ equalTo(expectedValue) {
41
+ this.limitGuard();
42
+ const next = this.custom(_chunkOPA6AXSHjs.equalTo.call(void 0, expectedValue));
43
+ next.limit = true;
44
+ _chunkFTHEF6SBjs._setStrictType.call(void 0, next, _chunkEEKYR5IAjs._quoteStringLiteral.call(void 0, expectedValue));
45
+ return next;
46
+ }
47
+ /**
48
+ * @method oneOfValues
49
+ * @description Restricts the schema to match one of the specified values and infers the union of those values as the TypeScript type.
50
+ * @param expectedValues - An array of values that the schema can match.
51
+ * @returns A new schema restricted to one of the specified values, with the union of those values inferred as the TypeScript type.
52
+ * @example
53
+ * string().oneOfValues(['foo', 'bar']); // Infers the type 'foo' | 'bar'
54
+ *
55
+ * @public
56
+ */
57
+ oneOfValues(expectedValue) {
58
+ this.limitGuard();
59
+ const next = this.custom(_chunk3D6TPN7Fjs.oneOfValues.call(void 0, expectedValue));
60
+ next.limit = true;
61
+ _chunkFTHEF6SBjs._setStrictType.call(void 0,
62
+ next,
63
+ expectedValue.map((el) => _chunkEEKYR5IAjs._quoteStringLiteral.call(void 0, el))
64
+ );
65
+ return next;
66
+ }
67
+ /**
68
+ * Reads the once-only flag without setting it. The flag belongs on the schema that `custom`
69
+ * returns, not on the one it was derived from.
70
+ */
71
+ limitGuard() {
72
+ if (this.limit) throw new (0, _chunkZWFSAKQKjs.BuildSchemaError)(_chunkLHEU4XACjs.ONLY_ONCE);
73
+ }
74
+ }, _class);
75
+
76
+
77
+
78
+ exports.string = string;
79
+ //# sourceMappingURL=chunk-UCHEFFWR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-UCHEFFWR.js","../src/asserts/string/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACHO,SAAS,MAAA,CAAA,EAA+C;AAC7D,EAAA,OAAO,IAAI,YAAA,CAAa,EAAE,IAAA,EAAM,CAAC,QAAQ,CAAA,EAAG,mBAAA,EAAqB,CAAC,EAAE,CAAC,CAAA;AACvE;AAEA,IAAM,aAAA,YAAN,MAAA,QAA2B,8BAAa;AAAA,iBAC5B,QAAA,EAAU,EAAA;AAAA,EACZ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYD,OAAA,CAA0B,aAAA,EAA2C;AAC1E,IAAA,IAAA,CAAK,UAAA,CAAW,CAAA;AAGhB,IAAA,MAAM,KAAA,EAAO,IAAA,CAAK,MAAA,CAAO,sCAAA,aAAqB,CAAC,CAAA;AAC/C,IAAA,IAAA,CAAK,MAAA,EAAQ,IAAA;AACb,IAAA,6CAAA,IAAe,EAAM,kDAAA,aAAiC,CAAC,CAAA;AACvD,IAAA,OAAO,IAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYO,WAAA,CAA8B,aAAA,EAA6C;AAChF,IAAA,IAAA,CAAK,UAAA,CAAW,CAAA;AAChB,IAAA,MAAM,KAAA,EAAO,IAAA,CAAK,MAAA,CAAO,0CAAA,aAAyB,CAAC,CAAA;AACnD,IAAA,IAAA,CAAK,MAAA,EAAQ,IAAA;AACb,IAAA,6CAAA;AAAA,MACE,IAAA;AAAA,MACA,aAAA,CAAc,GAAA,CAAI,CAAC,EAAA,EAAA,GAAO,kDAAA,EAAsB,CAAC;AAAA,IACnD,CAAA;AACA,IAAA,OAAO,IAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMQ,UAAA,CAAA,EAAa;AACnB,IAAA,GAAA,CAAI,IAAA,CAAK,KAAA,EAAO,MAAM,IAAI,sCAAA,CAAiB,0BAAS,CAAA;AAAA,EACtD;AACF,UAAA;ADDA;AACA;AACE;AACF,wBAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-UCHEFFWR.js","sourcesContent":[null,"import { WithBGuardType } from '../../commonTypes';\nimport { BuildSchemaError } from '../../exceptions';\nimport { ONLY_ONCE } from '../../helpers/constants';\nimport { CommonSchema } from '../../core';\nimport { _setStrictType } from '../../helpers/setStrictType';\nimport { _quoteStringLiteral } from '../../helpers/quoteStringLiteral';\nimport { equalTo } from '../mix/equalTo';\nimport { oneOfValues } from '../mix/oneOfValues';\n\n/**\n * @description Creates a new schema for validating string values.\n * @returns {WithBGuardType<StringSchema, string>} A new instance of `StringSchema` for validating strings.\n * @example\n * const schema = string();\n * parseOrFail(schema, 'hello'); // Validates successfully\n * parseOrFail(schema, 123); // Throws a validation error\n *\n * @instance Of StringSchema\n */\nexport function string(): WithBGuardType<StringSchema, string> {\n return new StringSchema({ type: ['string'], requiredValidations: [] }) as WithBGuardType<StringSchema, string>;\n}\n\nclass StringSchema extends CommonSchema {\n protected _string = 1;\n private limit: boolean | undefined;\n\n /**\n * @method equalTo\n * @description Restricts the schema to exactly match the specified value and infers the literal value as the TypeScript type.\n * @param expectedValue - The value that the schema must exactly match.\n * @returns A new schema restricted to the specified value, with the literal value inferred as the TypeScript type\n * @example\n * string().equalTo('hello'); // Infers the type 'hello'\n *\n * @public\n */\n public equalTo<Y extends string>(expectedValue: Y): WithBGuardType<this, Y> {\n this.limitGuard();\n // custom() returns the copy, so the strict type and the once-only flag are set on it. Setting\n // them on `this` first would refine the schema this one was derived from.\n const next = this.custom(equalTo(expectedValue));\n next.limit = true;\n _setStrictType(next, _quoteStringLiteral(expectedValue));\n return next as WithBGuardType<this, Y>;\n }\n\n /**\n * @method oneOfValues\n * @description Restricts the schema to match one of the specified values and infers the union of those values as the TypeScript type.\n * @param expectedValues - An array of values that the schema can match.\n * @returns A new schema restricted to one of the specified values, with the union of those values inferred as the TypeScript type.\n * @example\n * string().oneOfValues(['foo', 'bar']); // Infers the type 'foo' | 'bar'\n *\n * @public\n */\n public oneOfValues<Y extends string>(expectedValue: Y[]): WithBGuardType<this, Y> {\n this.limitGuard();\n const next = this.custom(oneOfValues(expectedValue));\n next.limit = true;\n _setStrictType(\n next,\n expectedValue.map((el) => _quoteStringLiteral(el)),\n );\n return next as WithBGuardType<this, Y>;\n }\n\n /**\n * Reads the once-only flag without setting it. The flag belongs on the schema that `custom`\n * returns, not on the one it was derived from.\n */\n private limitGuard() {\n if (this.limit) throw new BuildSchemaError(ONLY_ONCE);\n }\n}\n"]}
@@ -1,18 +1,21 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkTJQ5NVL4js = require('./chunk-TJQ5NVL4.js');
3
+ var _chunkWOPNDC4Rjs = require('./chunk-WOPNDC4R.js');
4
+
5
+
6
+ var _chunkZJGY6EOEjs = require('./chunk-ZJGY6EOE.js');
4
7
 
5
8
  // src/asserts/string/maxLength.ts
6
9
  var maxLengthErrorMessage = "The received value length is greater than expected";
7
10
  var maxLengthErrorKey = "s:maxLength";
8
- var maxLength = (expected) => (received, ctx) => {
9
- if (received.length > expected) ctx.addIssue(expected, received, maxLengthErrorMessage);
10
- };
11
+ var maxLength = (expected) => _chunkWOPNDC4Rjs._constrain.call(void 0, { maxLength: expected }, (received, ctx) => {
12
+ if (received.length > expected) ctx.addIssue(expected, received, maxLengthErrorKey);
13
+ });
11
14
  maxLength.key = maxLengthErrorKey;
12
15
  maxLength.message = maxLengthErrorMessage;
13
- _chunkTJQ5NVL4js.setToDefaultLocale.call(void 0, maxLength);
16
+ _chunkZJGY6EOEjs.setToDefaultLocale.call(void 0, maxLength);
14
17
 
15
18
 
16
19
 
17
20
  exports.maxLength = maxLength;
18
- //# sourceMappingURL=chunk-HPIF2CMT.js.map
21
+ //# sourceMappingURL=chunk-UIJIIIOA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-UIJIIIOA.js","../src/asserts/string/maxLength.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACHA,IAAM,sBAAA,EAAwB,oDAAA;AAC9B,IAAM,kBAAA,EAAoB,aAAA;AAcnB,IAAM,UAAA,EAAY,CAAC,QAAA,EAAA,GACxB,yCAAA,EAAa,SAAA,EAAW,SAAS,CAAA,EAAG,CAAC,QAAA,EAAkB,GAAA,EAAA,GAA0B;AAC/E,EAAA,GAAA,CAAI,QAAA,CAAS,OAAA,EAAS,QAAA,EAAU,GAAA,CAAI,QAAA,CAAS,QAAA,EAAU,QAAA,EAAU,iBAAiB,CAAA;AACpF,CAAC,CAAA;AAEH,SAAA,CAAU,IAAA,EAAM,iBAAA;AAChB,SAAA,CAAU,QAAA,EAAU,qBAAA;AACpB,iDAAA,SAA4B,CAAA;ADV5B;AACA;AACE;AACF,8BAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-UIJIIIOA.js","sourcesContent":[null,"import type { ExceptionContext, RequiredValidation } from '../../core';\nimport { _constrain } from '../../helpers/jsonSchemaConstraint';\nimport { setToDefaultLocale } from '../../translationMap';\n\nconst maxLengthErrorMessage = 'The received value length is greater than expected';\nconst maxLengthErrorKey = 's:maxLength';\n\n/**\n * @description Asserts that the length of a string value is not greater than a specified maximum length.\n * @param {number} expected The maximum allowed length for the string.\n * @returns {RequiredValidation} A validation function that takes a received string and an exception context.\n * @throws {ValidationError} if the length of the received value is greater than the expected length.\n * @example\n * const schema = string().custom(maxLength(10));\n * parseOrFail(schema, 'short'); // Valid\n * parseOrFail(schema, 'this is a very long string'); // Throws an error: 'The received value length is greater than expected'\n *\n * @translation Error Translation Key = 's:maxLength'\n */\nexport const maxLength = (expected: number): RequiredValidation<string> =>\n _constrain({ maxLength: expected }, (received: string, ctx: ExceptionContext) => {\n if (received.length > expected) ctx.addIssue(expected, received, maxLengthErrorKey);\n });\n\nmaxLength.key = maxLengthErrorKey;\nmaxLength.message = maxLengthErrorMessage;\nsetToDefaultLocale(maxLength);\n"]}
@@ -0,0 +1,22 @@
1
+ import {
2
+ CommonSchema
3
+ } from "./chunk-LDZFOOWN.mjs";
4
+ import {
5
+ BuildSchemaError
6
+ } from "./chunk-O2WD4JBG.mjs";
7
+
8
+ // src/asserts/mix/index.ts
9
+ function oneOfTypes(valueTypes) {
10
+ if (!valueTypes.length) throw new BuildSchemaError("Missing value types in oneOfTypes method");
11
+ return new CommonSchema({
12
+ type: valueTypes,
13
+ requiredValidations: [],
14
+ // Without this the inferred type said `| undefined` while validation rejected it as missing.
15
+ isOptional: valueTypes.includes("undefined") || void 0
16
+ });
17
+ }
18
+
19
+ export {
20
+ oneOfTypes
21
+ };
22
+ //# sourceMappingURL=chunk-UMS4M7FU.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/mix/index.ts"],"sourcesContent":["import { BaseType, MapMixTypes, WithBGuardType, WithUndefined } from '../../commonTypes';\nimport { CommonSchema } from '../../core';\nimport { BuildSchemaError } from '../../exceptions';\n\n/**\n * Listing `'undefined'` infers `| undefined`, so the schema has to accept a missing value as well,\n * and an object property holding it has to be optional. Both follow from the `WithUndefined` brand\n * plus `isOptional` on the context.\n */\ntype OneOfTypesSchema<T extends BaseType[]> = 'undefined' extends T[number]\n ? WithUndefined<WithBGuardType<CommonSchema, MapMixTypes<T>>>\n : WithBGuardType<CommonSchema, MapMixTypes<T>>;\n\n/**\n * @description Creates a new schema for validating values that can match any one of the specified primitive types.\n * @template T\n * @param {T} valueTypes - An array of primitive types that the value can match.\n * @returns A new schema for validating values that can match any of the specified types.\n * @example\n * const schema = oneOfTypes(['string', 'number']);\n * parseOrFail(schema, 'hello'); // Validates successfully\n * parseOrFail(schema, 42); // Validates successfully\n * parseOrFail(schema, true); // Throws a validation error\n *\n * @instance Of CommonSchema\n */\nexport function oneOfTypes<T extends BaseType[]>(valueTypes: T): OneOfTypesSchema<T> {\n // An empty list left the type check with nothing to compare against, so the schema accepted any\n // value at all and code-generated to an empty type annotation.\n if (!valueTypes.length) throw new BuildSchemaError('Missing value types in oneOfTypes method');\n\n return new CommonSchema({\n type: valueTypes,\n requiredValidations: [],\n // Without this the inferred type said `| undefined` while validation rejected it as missing.\n isOptional: valueTypes.includes('undefined') || undefined,\n }) as OneOfTypesSchema<T>;\n}\n"],"mappings":";;;;;;;;AA0BO,SAAS,WAAiC,YAAoC;AAGnF,MAAI,CAAC,WAAW,OAAQ,OAAM,IAAI,iBAAiB,0CAA0C;AAE7F,SAAO,IAAI,aAAa;AAAA,IACtB,MAAM;AAAA,IACN,qBAAqB,CAAC;AAAA;AAAA,IAEtB,YAAY,WAAW,SAAS,WAAW,KAAK;AAAA,EAClD,CAAC;AACH;","names":[]}
@@ -1,12 +1,15 @@
1
+ import {
2
+ _constrain
3
+ } from "./chunk-VERUOTB3.mjs";
1
4
  import {
2
5
  setToDefaultLocale
3
- } from "./chunk-OE3L7EKN.mjs";
6
+ } from "./chunk-65X7NTUS.mjs";
4
7
 
5
8
  // src/asserts/string/validUrl.ts
6
9
  var validUrlErrorMessage = "The received value is not a valid URL";
7
10
  var validUrlErrorKey = "s:validUrl";
8
11
  var urlRegex = /^(http:\/\/|https:\/\/)([a-zA-Z0-9\-.]+)(:\d+)?(\/[^\s]*)?$/;
9
- var validUrl = (protocol) => (received, ctx) => {
12
+ var validUrl = (protocol) => _constrain({ format: "uri" }, (received, ctx) => {
10
13
  let regex = urlRegex;
11
14
  if (protocol) {
12
15
  regex = new RegExp(`^${protocol}:\\/\\/([a-zA-Z0-9\\-\\.]+)(:[0-9]+)?(\\/[^\\s]*)?$`);
@@ -14,7 +17,7 @@ var validUrl = (protocol) => (received, ctx) => {
14
17
  if (!regex.test(received)) {
15
18
  ctx.addIssue("Invalid URL", received, validUrlErrorKey);
16
19
  }
17
- };
20
+ });
18
21
  validUrl.key = validUrlErrorKey;
19
22
  validUrl.message = validUrlErrorMessage;
20
23
  setToDefaultLocale(validUrl);
@@ -22,4 +25,4 @@ setToDefaultLocale(validUrl);
22
25
  export {
23
26
  validUrl
24
27
  };
25
- //# sourceMappingURL=chunk-N3EHGKZV.mjs.map
28
+ //# sourceMappingURL=chunk-UN5S46LE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/string/validUrl.ts"],"sourcesContent":["import type { ExceptionContext, RequiredValidation } from '../../core';\nimport { _constrain } from '../../helpers/jsonSchemaConstraint';\nimport { setToDefaultLocale } from '../../translationMap';\n\nconst validUrlErrorMessage = 'The received value is not a valid URL';\nconst validUrlErrorKey = 's:validUrl';\n\nconst urlRegex = /^(http:\\/\\/|https:\\/\\/)([a-zA-Z0-9\\-.]+)(:\\d+)?(\\/[^\\s]*)?$/;\n\n/**\n * @description Asserts that the string value is a valid URL with optional protocol validation.\n * @param {string} [protocol] The protocol that the URL must start with (e.g., 'http'). If not provided, any URL starting with 'http://' or 'https://' is considered valid.\n * @returns {RequiredValidation} A validation function that takes a received string and an exception context.\n * @throws {ValidationError} if the received value does not match the expected URL pattern.\n * @example\n * const schema = string().custom(validUrl()); // Validates any URL starting with 'http://' or 'https://'\n * parseOrFail(schema, 'http://example.com'); // Valid\n * parseOrFail(schema, 'https://example.com'); // Valid\n * parseOrFail(schema, 'ftp://example.com'); // Throws an error\n * parseOrFail(schema, 'http:example.com'); // Throws an error\n *\n * @translation Error Translation Key = 's:url'\n */\nexport const validUrl = (protocol?: string): RequiredValidation<string> =>\n _constrain({ format: 'uri' }, (received: string, ctx: ExceptionContext) => {\n let regex = urlRegex;\n if (protocol) {\n regex = new RegExp(`^${protocol}:\\\\/\\\\/([a-zA-Z0-9\\\\-\\\\.]+)(:[0-9]+)?(\\\\/[^\\\\s]*)?$`);\n }\n\n if (!regex.test(received)) {\n ctx.addIssue('Invalid URL', received, validUrlErrorKey);\n }\n });\n\nvalidUrl.key = validUrlErrorKey;\nvalidUrl.message = validUrlErrorMessage;\nsetToDefaultLocale(validUrl);\n"],"mappings":";;;;;;;;AAIA,IAAM,uBAAuB;AAC7B,IAAM,mBAAmB;AAEzB,IAAM,WAAW;AAgBV,IAAM,WAAW,CAAC,aACvB,WAAW,EAAE,QAAQ,MAAM,GAAG,CAAC,UAAkB,QAA0B;AACzE,MAAI,QAAQ;AACZ,MAAI,UAAU;AACZ,YAAQ,IAAI,OAAO,IAAI,QAAQ,qDAAqD;AAAA,EACtF;AAEA,MAAI,CAAC,MAAM,KAAK,QAAQ,GAAG;AACzB,QAAI,SAAS,eAAe,UAAU,gBAAgB;AAAA,EACxD;AACF,CAAC;AAEH,SAAS,MAAM;AACf,SAAS,UAAU;AACnB,mBAAmB,QAAQ;","names":[]}
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  oneOfValues
3
- } from "./chunk-W3U7RYLP.mjs";
3
+ } from "./chunk-D42AL6CN.mjs";
4
4
  import {
5
5
  equalTo
6
- } from "./chunk-4ZKU4RJL.mjs";
6
+ } from "./chunk-YQP44G45.mjs";
7
7
  import {
8
8
  _setStrictType
9
- } from "./chunk-THU5VBSO.mjs";
9
+ } from "./chunk-IIL6D2UL.mjs";
10
10
  import {
11
11
  CommonSchema
12
- } from "./chunk-QIPGUTIG.mjs";
13
- import {
14
- BuildSchemaError
15
- } from "./chunk-ZTCXXAKD.mjs";
12
+ } from "./chunk-LDZFOOWN.mjs";
16
13
  import {
17
14
  ONLY_ONCE
18
- } from "./chunk-2ANPCB4O.mjs";
15
+ } from "./chunk-C76DLZFD.mjs";
16
+ import {
17
+ BuildSchemaError
18
+ } from "./chunk-O2WD4JBG.mjs";
19
19
 
20
20
  // src/asserts/bigint/index.ts
21
21
  function bigint() {
@@ -28,7 +28,7 @@ var BigIntSchema = class extends CommonSchema {
28
28
  * @method equalTo
29
29
  * @description Restricts the schema to exactly match the specified value and infers the literal value as the TypeScript type.
30
30
  * @param expectedValue - The value that the schema must exactly match.
31
- * @returns The schema instance restricted to the specified value, with the literal value inferred as the TypeScript type
31
+ * @returns A new schema restricted to the specified value, with the literal value inferred as the TypeScript type
32
32
  * @example
33
33
  * bigint().equalTo(42n); // Infers the type 42n
34
34
  *
@@ -36,15 +36,17 @@ var BigIntSchema = class extends CommonSchema {
36
36
  */
37
37
  equalTo(expectedValue) {
38
38
  this.defaultValueCheck();
39
- this.limitCheck();
40
- _setStrictType(this, `${expectedValue}n`);
41
- return this.custom(equalTo(expectedValue));
39
+ this.limitGuard();
40
+ const next = this.custom(equalTo(expectedValue));
41
+ next.limit = true;
42
+ _setStrictType(next, `${expectedValue}n`);
43
+ return next;
42
44
  }
43
45
  /**
44
46
  * @method oneOfValues
45
47
  * @description Restricts the schema to match one of the specified values and infers the union of those values as the TypeScript type.
46
48
  * @param expectedValues - An array of values that the schema can match.
47
- * @returns The schema instance restricted to one of the specified values, with the union of those values inferred as the TypeScript type.
49
+ * @returns A new schema restricted to one of the specified values, with the union of those values inferred as the TypeScript type.
48
50
  * @example
49
51
  * bigint().oneOfValues([5n, 7n]); // Infers the type 5n | 7n
50
52
  *
@@ -52,20 +54,25 @@ var BigIntSchema = class extends CommonSchema {
52
54
  */
53
55
  oneOfValues(expectedValue) {
54
56
  this.defaultValueCheck();
55
- this.limitCheck();
57
+ this.limitGuard();
58
+ const next = this.custom(oneOfValues(expectedValue));
59
+ next.limit = true;
56
60
  _setStrictType(
57
- this,
61
+ next,
58
62
  expectedValue.map((el) => `${el}n`)
59
63
  );
60
- return this.custom(oneOfValues(expectedValue));
64
+ return next;
61
65
  }
62
- limitCheck() {
66
+ /**
67
+ * Reads the once-only flag without setting it. The flag belongs on the schema that `custom`
68
+ * returns, not on the one it was derived from.
69
+ */
70
+ limitGuard() {
63
71
  if (this.limit) throw new BuildSchemaError(ONLY_ONCE);
64
- this.limit = true;
65
72
  }
66
73
  };
67
74
 
68
75
  export {
69
76
  bigint
70
77
  };
71
- //# sourceMappingURL=chunk-NFD7D5GZ.mjs.map
78
+ //# sourceMappingURL=chunk-UWONIZJZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/bigint/index.ts"],"sourcesContent":["import { WithBGuardType } from '../../commonTypes';\nimport { BuildSchemaError } from '../../exceptions';\nimport { ONLY_ONCE } from '../../helpers/constants';\nimport { CommonSchema } from '../../core';\nimport { _setStrictType } from '../../helpers/setStrictType';\nimport { equalTo } from '../mix/equalTo';\nimport { oneOfValues } from '../mix/oneOfValues';\n\n/**\n * @description - Creates a new schema for validating bigint values.\n * @returns {WithBGuardType<BigIntSchema, bigint>} A new instance of `BigIntSchema` for validating bigints.\n * @example\n * const schema = bigint();\n * parseOrFail(schema, 42n); // Validates successfully\n * parseOrFail(schema, 42); // Throws a validation error\n * parseOrFail(schema, '42'); // Throws a validation error\n *\n * @instance Of BigIntSchema\n */\nexport function bigint(): WithBGuardType<BigIntSchema, bigint> {\n return new BigIntSchema({ type: ['bigint'], requiredValidations: [] }) as WithBGuardType<BigIntSchema, bigint>;\n}\n\nclass BigIntSchema extends CommonSchema {\n protected _bigint = 1;\n private limit: boolean | undefined;\n\n /**\n * @method equalTo\n * @description Restricts the schema to exactly match the specified value and infers the literal value as the TypeScript type.\n * @param expectedValue - The value that the schema must exactly match.\n * @returns A new schema restricted to the specified value, with the literal value inferred as the TypeScript type\n * @example\n * bigint().equalTo(42n); // Infers the type 42n\n *\n * @public\n */\n public equalTo<Y extends bigint>(expectedValue: Y): WithBGuardType<this, Y> {\n this.defaultValueCheck();\n this.limitGuard();\n const next = this.custom(equalTo(expectedValue));\n next.limit = true;\n _setStrictType(next, `${expectedValue}n`);\n return next as WithBGuardType<this, Y>;\n }\n\n /**\n * @method oneOfValues\n * @description Restricts the schema to match one of the specified values and infers the union of those values as the TypeScript type.\n * @param expectedValues - An array of values that the schema can match.\n * @returns A new schema restricted to one of the specified values, with the union of those values inferred as the TypeScript type.\n * @example\n * bigint().oneOfValues([5n, 7n]); // Infers the type 5n | 7n\n *\n * @public\n */\n public oneOfValues<Y extends bigint>(expectedValue: Y[]): WithBGuardType<this, Y> {\n this.defaultValueCheck();\n this.limitGuard();\n const next = this.custom(oneOfValues(expectedValue));\n next.limit = true;\n _setStrictType(\n next,\n expectedValue.map((el) => `${el}n`),\n );\n return next as WithBGuardType<this, Y>;\n }\n\n /**\n * Reads the once-only flag without setting it. The flag belongs on the schema that `custom`\n * returns, not on the one it was derived from.\n */\n private limitGuard() {\n if (this.limit) throw new BuildSchemaError(ONLY_ONCE);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAmBO,SAAS,SAA+C;AAC7D,SAAO,IAAI,aAAa,EAAE,MAAM,CAAC,QAAQ,GAAG,qBAAqB,CAAC,EAAE,CAAC;AACvE;AAEA,IAAM,eAAN,cAA2B,aAAa;AAAA,EAC5B,UAAU;AAAA,EACZ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYD,QAA0B,eAA2C;AAC1E,SAAK,kBAAkB;AACvB,SAAK,WAAW;AAChB,UAAM,OAAO,KAAK,OAAO,QAAQ,aAAa,CAAC;AAC/C,SAAK,QAAQ;AACb,mBAAe,MAAM,GAAG,aAAa,GAAG;AACxC,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYO,YAA8B,eAA6C;AAChF,SAAK,kBAAkB;AACvB,SAAK,WAAW;AAChB,UAAM,OAAO,KAAK,OAAO,YAAY,aAAa,CAAC;AACnD,SAAK,QAAQ;AACb;AAAA,MACE;AAAA,MACA,cAAc,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG;AAAA,IACpC;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMQ,aAAa;AACnB,QAAI,KAAK,MAAO,OAAM,IAAI,iBAAiB,SAAS;AAAA,EACtD;AACF;","names":[]}
@@ -0,0 +1,22 @@
1
+ import {
2
+ CommonSchema
3
+ } from "./chunk-LDZFOOWN.mjs";
4
+ import {
5
+ BuildSchemaError
6
+ } from "./chunk-O2WD4JBG.mjs";
7
+
8
+ // src/asserts/union/index.ts
9
+ function union(unionSchemas) {
10
+ if (!Array.isArray(unionSchemas) || !unionSchemas.length)
11
+ throw new BuildSchemaError("Missing schemas in union method");
12
+ unionSchemas.forEach((unionSchema, index) => {
13
+ if (!(unionSchema instanceof CommonSchema))
14
+ throw new BuildSchemaError(`Invalid schema in union method at index '${index}'`);
15
+ });
16
+ return new CommonSchema({ type: [], requiredValidations: [], union: [...unionSchemas] });
17
+ }
18
+
19
+ export {
20
+ union
21
+ };
22
+ //# sourceMappingURL=chunk-UYAF7QRD.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/union/index.ts"],"sourcesContent":["import { WithUnion } from '../../commonTypes';\nimport { CommonSchema } from '../../core';\nimport { BuildSchemaError } from '../../exceptions';\n\n/**\n * @description Creates a new schema that accepts a value matching any one of the given schemas.\n *\n * Members are tried in order and the first one that validates cleanly wins, so its parsed value is\n * the result. Order matters when members overlap: put the more specific member first.\n *\n * Unlike `oneOfTypes`, which only compares `typeof`, each member is a full schema, so members can\n * carry their own assertions and structure.\n *\n * @template T\n * @param {T} unionSchemas - The schemas the value may match.\n * @returns A new schema inferring the union of its members' types.\n * @example\n * const schema = union([string().custom(email()), number().custom(min(0))]);\n * parseOrFail(schema, 'a@b.com'); // Validates successfully\n * parseOrFail(schema, 42); // Validates successfully\n * parseOrFail(schema, true); // Throws a validation error\n *\n * @instance Of CommonSchema\n */\nexport function union<T extends [CommonSchema, ...CommonSchema[]]>(unionSchemas: T): WithUnion<CommonSchema, T> {\n if (!Array.isArray(unionSchemas) || !unionSchemas.length)\n throw new BuildSchemaError('Missing schemas in union method');\n\n unionSchemas.forEach((unionSchema, index) => {\n if (!(unionSchema instanceof CommonSchema))\n throw new BuildSchemaError(`Invalid schema in union method at index '${index}'`);\n });\n\n return new CommonSchema({ type: [], requiredValidations: [], union: [...unionSchemas] }) as WithUnion<\n CommonSchema,\n T\n >;\n}\n"],"mappings":";;;;;;;;AAwBO,SAAS,MAAmD,cAA6C;AAC9G,MAAI,CAAC,MAAM,QAAQ,YAAY,KAAK,CAAC,aAAa;AAChD,UAAM,IAAI,iBAAiB,iCAAiC;AAE9D,eAAa,QAAQ,CAAC,aAAa,UAAU;AAC3C,QAAI,EAAE,uBAAuB;AAC3B,YAAM,IAAI,iBAAiB,4CAA4C,KAAK,GAAG;AAAA,EACnF,CAAC;AAED,SAAO,IAAI,aAAa,EAAE,MAAM,CAAC,GAAG,qBAAqB,CAAC,GAAG,OAAO,CAAC,GAAG,YAAY,EAAE,CAAC;AAIzF;","names":[]}
@@ -0,0 +1,10 @@
1
+ // src/helpers/jsonSchemaConstraint.ts
2
+ function _constrain(constraint, validation) {
3
+ validation.jsonSchema = constraint;
4
+ return validation;
5
+ }
6
+
7
+ export {
8
+ _constrain
9
+ };
10
+ //# sourceMappingURL=chunk-VERUOTB3.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/helpers/jsonSchemaConstraint.ts"],"sourcesContent":["import type { JSONSchema } from '../toJSONSchema';\n\n/**\n * Records the JSON Schema keywords an assertion stands for, on the validation itself.\n *\n * The generator only ever sees the closure a factory returned, not the factory or the arguments it was\n * given, so an assertion that wants to appear in the output has to carry its own translation. Those\n * with no JSON Schema equivalent simply do not call this, and are absent from the output rather than\n * approximated.\n */\nexport function _constrain<T extends (...args: never[]) => void>(constraint: JSONSchema, validation: T): T {\n (validation as T & { jsonSchema?: JSONSchema }).jsonSchema = constraint;\n return validation;\n}\n"],"mappings":";AAUO,SAAS,WAAiD,YAAwB,YAAkB;AACzG,EAAC,WAA+C,aAAa;AAC7D,SAAO;AACT;","names":[]}
@@ -1,21 +1,24 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkTJQ5NVL4js = require('./chunk-TJQ5NVL4.js');
3
+ var _chunkWOPNDC4Rjs = require('./chunk-WOPNDC4R.js');
4
+
5
+
6
+ var _chunkZJGY6EOEjs = require('./chunk-ZJGY6EOE.js');
4
7
 
5
8
  // src/asserts/string/uuid.ts
6
9
  var uuidErrorMessage = "The received value is not a valid UUID";
7
10
  var uuidErrorKey = "s:uuid";
8
11
  var uuidPattern = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
9
- var uuid = () => (received, ctx) => {
12
+ var uuid = () => _chunkWOPNDC4Rjs._constrain.call(void 0, { format: "uuid" }, (received, ctx) => {
10
13
  if (!uuidPattern.test(received)) {
11
14
  ctx.addIssue("uuid", received, uuidErrorKey);
12
15
  }
13
- };
16
+ });
14
17
  uuid.key = uuidErrorKey;
15
18
  uuid.message = uuidErrorMessage;
16
- _chunkTJQ5NVL4js.setToDefaultLocale.call(void 0, uuid);
19
+ _chunkZJGY6EOEjs.setToDefaultLocale.call(void 0, uuid);
17
20
 
18
21
 
19
22
 
20
23
  exports.uuid = uuid;
21
- //# sourceMappingURL=chunk-62EKGBXF.js.map
24
+ //# sourceMappingURL=chunk-VGOAXY26.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-VGOAXY26.js","../src/asserts/string/uuid.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACHA,IAAM,iBAAA,EAAmB,wCAAA;AACzB,IAAM,aAAA,EAAe,QAAA;AAErB,IAAM,YAAA,EAAc,iEAAA;AAab,IAAM,KAAA,EAAO,CAAA,EAAA,GAClB,yCAAA,EAAa,MAAA,EAAQ,OAAO,CAAA,EAAG,CAAC,QAAA,EAAkB,GAAA,EAAA,GAA0B;AAC1E,EAAA,GAAA,CAAI,CAAC,WAAA,CAAY,IAAA,CAAK,QAAQ,CAAA,EAAG;AAC/B,IAAA,GAAA,CAAI,QAAA,CAAS,MAAA,EAAQ,QAAA,EAAU,YAAY,CAAA;AAAA,EAC7C;AACF,CAAC,CAAA;AAEH,IAAA,CAAK,IAAA,EAAM,YAAA;AACX,IAAA,CAAK,QAAA,EAAU,gBAAA;AACf,iDAAA,IAAuB,CAAA;ADVvB;AACA;AACE;AACF,oBAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-VGOAXY26.js","sourcesContent":[null,"import type { ExceptionContext, RequiredValidation } from '../../core';\nimport { _constrain } from '../../helpers/jsonSchemaConstraint';\nimport { setToDefaultLocale } from '../../translationMap';\n\nconst uuidErrorMessage = 'The received value is not a valid UUID';\nconst uuidErrorKey = 's:uuid';\n\nconst uuidPattern = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;\n\n/**\n * @description Asserts that a string value matches the UUID format.\n * @returns {RequiredValidation} A validation function that takes a received string and an exception context.\n * @throws {ValidationError} if the received value is not a valid UUID.\n * @example\n * const schema = string().custom(uuid());\n * parseOrFail(schema, '123e4567-e89b-12d3-a456-426614174000'); // Valid\n * parseOrFail(schema, 'invalid-uuid'); // Throws an error: 'The received value is not a valid UUID'\n *\n * @translation Error Translation Key = 's:uuid'\n */\nexport const uuid = (): RequiredValidation<string> =>\n _constrain({ format: 'uuid' }, (received: string, ctx: ExceptionContext) => {\n if (!uuidPattern.test(received)) {\n ctx.addIssue('uuid', received, uuidErrorKey);\n }\n });\n\nuuid.key = uuidErrorKey;\nuuid.message = uuidErrorMessage;\nsetToDefaultLocale(uuid);\n"]}
@@ -0,0 +1,50 @@
1
+ import {
2
+ ObjectSchema
3
+ } from "./chunk-KAFZGQ2W.mjs";
4
+ import {
5
+ CommonSchema
6
+ } from "./chunk-LDZFOOWN.mjs";
7
+ import {
8
+ ctxSymbol
9
+ } from "./chunk-C76DLZFD.mjs";
10
+ import {
11
+ BuildSchemaError
12
+ } from "./chunk-O2WD4JBG.mjs";
13
+
14
+ // src/asserts/intersection/index.ts
15
+ function intersection(intersectionSchemas) {
16
+ if (!Array.isArray(intersectionSchemas) || !intersectionSchemas.length)
17
+ throw new BuildSchemaError("Missing schemas in intersection method");
18
+ const mergedShape = {};
19
+ const mergedValidations = [];
20
+ let allowUnrecognized = false;
21
+ intersectionSchemas.forEach((intersectionSchema, index) => {
22
+ if (!(intersectionSchema instanceof CommonSchema))
23
+ throw new BuildSchemaError(`Invalid schema in intersection method at index '${index}'`);
24
+ const memberData = intersectionSchema[ctxSymbol];
25
+ if (!memberData.object)
26
+ throw new BuildSchemaError(`Schema in intersection method at index '${index}' is not an object schema`);
27
+ if (memberData.isNullable || memberData.isOptional)
28
+ throw new BuildSchemaError(`Schema in intersection method at index '${index}' cannot be nullable or optional`);
29
+ for (const [key, valueSchema] of Object.entries(memberData.object)) {
30
+ if (Object.prototype.hasOwnProperty.call(mergedShape, key))
31
+ throw new BuildSchemaError(`Duplicate property '${key}' in intersection method`);
32
+ mergedShape[key] = valueSchema;
33
+ }
34
+ mergedValidations.push(...memberData.requiredValidations);
35
+ allowUnrecognized = allowUnrecognized || Boolean(memberData.allowUnrecognizedObjectProps);
36
+ });
37
+ return new ObjectSchema(
38
+ {
39
+ type: [],
40
+ requiredValidations: mergedValidations,
41
+ allowUnrecognizedObjectProps: allowUnrecognized || void 0
42
+ },
43
+ mergedShape
44
+ );
45
+ }
46
+
47
+ export {
48
+ intersection
49
+ };
50
+ //# sourceMappingURL=chunk-VKSBOWCE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/intersection/index.ts"],"sourcesContent":["import { IntersectShapes, WithObject } from '../../commonTypes';\nimport { CommonSchema, ObjectShapeSchemaType, RequiredValidation } from '../../core';\nimport { ObjectSchema } from '../object/index';\nimport { BuildSchemaError } from '../../exceptions';\nimport { ctxSymbol } from '../../helpers/constants';\n\ntype ObjectSchemaLike = WithObject<CommonSchema, ObjectShapeSchemaType>;\n\n/**\n * @description Combines several object schemas into one that requires all of them.\n *\n * The shapes are merged when the schema is built, so the result is an ordinary object schema: a key\n * declared by any member is recognised, and validation, inference and code generation all follow from\n * the merged shape. That is what makes `intersection([object({ a }), object({ b })])` accept\n * `{ a, b }` — validating against each member separately would have the first reject `b` as an\n * unrecognised property.\n *\n * Members must be object schemas, and a key may not be declared twice. Two members declaring the same\n * key would give `A & B` for that property in the type while only one schema could run at validation\n * time, so it is rejected rather than silently resolved one way.\n *\n * @template T\n * @param {T} intersectionSchemas - The object schemas to combine.\n * @returns A new object schema inferring the intersection of its members' types.\n * @example\n * const withId = object({ id: string() });\n * const withName = object({ name: string() });\n * const schema = intersection([withId, withName]);\n * parseOrFail(schema, { id: '1', name: 'a' }); // Validates successfully\n * parseOrFail(schema, { id: '1' }); // Throws a validation error\n *\n * @instance Of CommonSchema\n */\nexport function intersection<T extends [ObjectSchemaLike, ...ObjectSchemaLike[]]>(\n intersectionSchemas: T,\n): WithObject<ObjectSchema, IntersectShapes<T>> {\n if (!Array.isArray(intersectionSchemas) || !intersectionSchemas.length)\n throw new BuildSchemaError('Missing schemas in intersection method');\n\n const mergedShape: ObjectShapeSchemaType = {};\n const mergedValidations: RequiredValidation[] = [];\n let allowUnrecognized = false;\n\n intersectionSchemas.forEach((intersectionSchema, index) => {\n if (!(intersectionSchema instanceof CommonSchema))\n throw new BuildSchemaError(`Invalid schema in intersection method at index '${index}'`);\n\n const memberData = intersectionSchema[ctxSymbol];\n if (!memberData.object)\n throw new BuildSchemaError(`Schema in intersection method at index '${index}' is not an object schema`);\n\n // A nullable or optional member would mean `({ a } | null) & { b }`, which the merged shape\n // cannot express. Rejected rather than quietly dropped.\n if (memberData.isNullable || memberData.isOptional)\n throw new BuildSchemaError(`Schema in intersection method at index '${index}' cannot be nullable or optional`);\n\n for (const [key, valueSchema] of Object.entries(memberData.object)) {\n if (Object.prototype.hasOwnProperty.call(mergedShape, key))\n throw new BuildSchemaError(`Duplicate property '${key}' in intersection method`);\n\n mergedShape[key] = valueSchema;\n }\n\n mergedValidations.push(...memberData.requiredValidations);\n allowUnrecognized = allowUnrecognized || Boolean(memberData.allowUnrecognizedObjectProps);\n });\n\n // A real ObjectSchema, not a bare CommonSchema: the result is an object schema in every respect,\n // including the methods that only that class defines, such as allowUnrecognized.\n return new ObjectSchema(\n {\n type: [],\n requiredValidations: mergedValidations,\n allowUnrecognizedObjectProps: allowUnrecognized || undefined,\n },\n mergedShape,\n ) as WithObject<ObjectSchema, IntersectShapes<T>>;\n}\n"],"mappings":";;;;;;;;;;;;;;AAiCO,SAAS,aACd,qBAC8C;AAC9C,MAAI,CAAC,MAAM,QAAQ,mBAAmB,KAAK,CAAC,oBAAoB;AAC9D,UAAM,IAAI,iBAAiB,wCAAwC;AAErE,QAAM,cAAqC,CAAC;AAC5C,QAAM,oBAA0C,CAAC;AACjD,MAAI,oBAAoB;AAExB,sBAAoB,QAAQ,CAAC,oBAAoB,UAAU;AACzD,QAAI,EAAE,8BAA8B;AAClC,YAAM,IAAI,iBAAiB,mDAAmD,KAAK,GAAG;AAExF,UAAM,aAAa,mBAAmB,SAAS;AAC/C,QAAI,CAAC,WAAW;AACd,YAAM,IAAI,iBAAiB,2CAA2C,KAAK,2BAA2B;AAIxG,QAAI,WAAW,cAAc,WAAW;AACtC,YAAM,IAAI,iBAAiB,2CAA2C,KAAK,kCAAkC;AAE/G,eAAW,CAAC,KAAK,WAAW,KAAK,OAAO,QAAQ,WAAW,MAAM,GAAG;AAClE,UAAI,OAAO,UAAU,eAAe,KAAK,aAAa,GAAG;AACvD,cAAM,IAAI,iBAAiB,uBAAuB,GAAG,0BAA0B;AAEjF,kBAAY,GAAG,IAAI;AAAA,IACrB;AAEA,sBAAkB,KAAK,GAAG,WAAW,mBAAmB;AACxD,wBAAoB,qBAAqB,QAAQ,WAAW,4BAA4B;AAAA,EAC1F,CAAC;AAID,SAAO,IAAI;AAAA,IACT;AAAA,MACE,MAAM,CAAC;AAAA,MACP,qBAAqB;AAAA,MACrB,8BAA8B,qBAAqB;AAAA,IACrD;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1,27 @@
1
+ import {
2
+ _objectFrom,
3
+ _shapeOf
4
+ } from "./chunk-A36G62K5.mjs";
5
+ import {
6
+ BuildSchemaError
7
+ } from "./chunk-O2WD4JBG.mjs";
8
+
9
+ // src/asserts/object/omit.ts
10
+ function omit(schema, keys) {
11
+ const shape = _shapeOf(schema, "omit");
12
+ const dropped = new Set(keys);
13
+ for (const key of keys) {
14
+ if (!Object.prototype.hasOwnProperty.call(shape, key))
15
+ throw new BuildSchemaError(`Unknown property '${key}' in omit method`);
16
+ }
17
+ const kept = {};
18
+ for (const [key, valueSchema] of Object.entries(shape)) {
19
+ if (!dropped.has(key)) kept[key] = valueSchema;
20
+ }
21
+ return _objectFrom(schema, kept);
22
+ }
23
+
24
+ export {
25
+ omit
26
+ };
27
+ //# sourceMappingURL=chunk-VT2JBMWQ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/object/omit.ts"],"sourcesContent":["import { WithObject } from '../../commonTypes';\nimport { CommonSchema, ObjectShapeSchemaType } from '../../core';\nimport { BuildSchemaError } from '../../exceptions';\nimport { ObjectSchema } from './index';\nimport { _objectFrom, _shapeOf } from './pick';\n\n/**\n * @description Creates a new object schema without the named properties.\n *\n * The original is untouched.\n *\n * @template T\n * @template K\n * @param {WithObject<CommonSchema, T>} schema - The object schema to narrow.\n * @param {readonly K[]} keys - The properties to drop.\n * @returns A new object schema without those properties.\n * @example\n * const userSchema = object({ id: string(), name: string(), secret: string() });\n * const publicSchema = omit(userSchema, ['secret']);\n * parseOrFail(publicSchema, { id: '1', name: 'a' }); // Validates successfully\n *\n * @instance Of CommonSchema\n */\nexport function omit<T extends ObjectShapeSchemaType, K extends keyof T & string>(\n schema: WithObject<CommonSchema, T>,\n keys: readonly K[],\n): WithObject<ObjectSchema, Omit<T, K>> {\n const shape = _shapeOf(schema, 'omit');\n const dropped = new Set<string>(keys);\n\n for (const key of keys) {\n if (!Object.prototype.hasOwnProperty.call(shape, key))\n throw new BuildSchemaError(`Unknown property '${key}' in omit method`);\n }\n\n const kept: ObjectShapeSchemaType = {};\n for (const [key, valueSchema] of Object.entries(shape)) {\n if (!dropped.has(key)) kept[key] = valueSchema;\n }\n\n return _objectFrom(schema, kept) as unknown as WithObject<ObjectSchema, Omit<T, K>>;\n}\n"],"mappings":";;;;;;;;;AAuBO,SAAS,KACd,QACA,MACsC;AACtC,QAAM,QAAQ,SAAS,QAAQ,MAAM;AACrC,QAAM,UAAU,IAAI,IAAY,IAAI;AAEpC,aAAW,OAAO,MAAM;AACtB,QAAI,CAAC,OAAO,UAAU,eAAe,KAAK,OAAO,GAAG;AAClD,YAAM,IAAI,iBAAiB,qBAAqB,GAAG,kBAAkB;AAAA,EACzE;AAEA,QAAM,OAA8B,CAAC;AACrC,aAAW,CAAC,KAAK,WAAW,KAAK,OAAO,QAAQ,KAAK,GAAG;AACtD,QAAI,CAAC,QAAQ,IAAI,GAAG,EAAG,MAAK,GAAG,IAAI;AAAA,EACrC;AAEA,SAAO,YAAY,QAAQ,IAAI;AACjC;","names":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkTJQ5NVL4js = require('./chunk-TJQ5NVL4.js');
3
+ var _chunkZJGY6EOEjs = require('./chunk-ZJGY6EOE.js');
4
4
 
5
5
  // src/asserts/bigint/bigintMax.ts
6
6
  var bigintMaxErrorMessage = "The received value is greater than expected";
@@ -10,9 +10,9 @@ var bigintMax = (expected) => (received, ctx) => {
10
10
  };
11
11
  bigintMax.key = bigintMaxErrorKey;
12
12
  bigintMax.message = bigintMaxErrorMessage;
13
- _chunkTJQ5NVL4js.setToDefaultLocale.call(void 0, bigintMax);
13
+ _chunkZJGY6EOEjs.setToDefaultLocale.call(void 0, bigintMax);
14
14
 
15
15
 
16
16
 
17
17
  exports.bigintMax = bigintMax;
18
- //# sourceMappingURL=chunk-LXZTBF7F.js.map
18
+ //# sourceMappingURL=chunk-VWHKNZLG.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-LXZTBF7F.js","../src/asserts/bigint/bigintMax.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACA;ACDA,IAAM,sBAAA,EAAwB,6CAAA;AAC9B,IAAM,kBAAA,EAAoB,QAAA;AAenB,IAAM,UAAA,EACX,CAAC,QAAA,EAAA,GACD,CAAC,QAAA,EAAkB,GAAA,EAAA,GAA0B;AAC3C,EAAA,GAAA,CAAI,SAAA,EAAW,QAAA,EAAU,GAAA,CAAI,QAAA,CAAS,QAAA,EAAU,QAAA,EAAU,iBAAiB,CAAA;AAC7E,CAAA;AAEF,SAAA,CAAU,IAAA,EAAM,iBAAA;AAChB,SAAA,CAAU,QAAA,EAAU,qBAAA;AACpB,iDAAA,SAA4B,CAAA;ADd5B;AACA;AACE;AACF,8BAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-LXZTBF7F.js","sourcesContent":[null,"import type { ExceptionContext, RequiredValidation } from '../../core';\nimport { setToDefaultLocale } from '../../translationMap';\n\nconst bigintMaxErrorMessage = 'The received value is greater than expected';\nconst bigintMaxErrorKey = 'bi:max';\n\n/**\n * @description Asserts that a bigint value does not exceed a specified maximum value.\n * @param {bigint} expected The maximum allowable value.\n * @returns {RequiredValidation} A validation function that takes a received bigint and an exception context.\n * @throws {ValidationError} if the received value exceeds the expected maximum value.\n * @example\n * const schema = bigint().custom(bigintMax(100n));\n * parseOrFail(schema, 99n); // Valid\n * parseOrFail(schema, 100n); // Valid\n * parseOrFail(schema, 101n); // Throws an error: 'The received value is greater than expected'\n *\n * @translation Error Translation Key = 'bi:max'\n */\nexport const bigintMax =\n (expected: bigint): RequiredValidation =>\n (received: bigint, ctx: ExceptionContext) => {\n if (expected < received) ctx.addIssue(expected, received, bigintMaxErrorKey);\n };\n\nbigintMax.key = bigintMaxErrorKey;\nbigintMax.message = bigintMaxErrorMessage;\nsetToDefaultLocale(bigintMax);\n"]}
1
+ {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-VWHKNZLG.js","../src/asserts/bigint/bigintMax.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACA;ACDA,IAAM,sBAAA,EAAwB,6CAAA;AAC9B,IAAM,kBAAA,EAAoB,QAAA;AAenB,IAAM,UAAA,EACX,CAAC,QAAA,EAAA,GACD,CAAC,QAAA,EAAkB,GAAA,EAAA,GAA0B;AAC3C,EAAA,GAAA,CAAI,SAAA,EAAW,QAAA,EAAU,GAAA,CAAI,QAAA,CAAS,QAAA,EAAU,QAAA,EAAU,iBAAiB,CAAA;AAC7E,CAAA;AAEF,SAAA,CAAU,IAAA,EAAM,iBAAA;AAChB,SAAA,CAAU,QAAA,EAAU,qBAAA;AACpB,iDAAA,SAA4B,CAAA;ADd5B;AACA;AACE;AACF,8BAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-VWHKNZLG.js","sourcesContent":[null,"import type { ExceptionContext, RequiredValidation } from '../../core';\nimport { setToDefaultLocale } from '../../translationMap';\n\nconst bigintMaxErrorMessage = 'The received value is greater than expected';\nconst bigintMaxErrorKey = 'bi:max';\n\n/**\n * @description Asserts that a bigint value does not exceed a specified maximum value.\n * @param {bigint} expected The maximum allowable value.\n * @returns {RequiredValidation} A validation function that takes a received bigint and an exception context.\n * @throws {ValidationError} if the received value exceeds the expected maximum value.\n * @example\n * const schema = bigint().custom(bigintMax(100n));\n * parseOrFail(schema, 99n); // Valid\n * parseOrFail(schema, 100n); // Valid\n * parseOrFail(schema, 101n); // Throws an error: 'The received value is greater than expected'\n *\n * @translation Error Translation Key = 'bi:max'\n */\nexport const bigintMax =\n (expected: bigint): RequiredValidation<bigint> =>\n (received: bigint, ctx: ExceptionContext) => {\n if (expected < received) ctx.addIssue(expected, received, bigintMaxErrorKey);\n };\n\nbigintMax.key = bigintMaxErrorKey;\nbigintMax.message = bigintMaxErrorMessage;\nsetToDefaultLocale(bigintMax);\n"]}
@@ -1,24 +1,27 @@
1
+ import {
2
+ _constrain
3
+ } from "./chunk-VERUOTB3.mjs";
1
4
  import {
2
5
  setToDefaultLocale
3
- } from "./chunk-OE3L7EKN.mjs";
6
+ } from "./chunk-65X7NTUS.mjs";
4
7
 
5
8
  // src/asserts/string/isValidTime.ts
6
9
  var timeErrorMessage = "The received value is not a valid time";
7
10
  var timeErrorKey = "s:isValidTime";
8
11
  var isValidTime = (options = {}) => {
9
- return (received, ctx) => {
12
+ return _constrain({ format: "time" }, (received, ctx) => {
10
13
  const { precision } = options;
11
14
  let timeRegex = /^([01]\d|2[0-3]):([0-5]\d):([0-5]\d)(\.\d+)?$/;
12
15
  if (precision !== void 0) {
13
16
  timeRegex = new RegExp(`^([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)(\\.\\d{${precision}})?$`);
14
17
  }
15
18
  if (!timeRegex.test(received)) {
16
- ctx.addIssue(received, timeErrorMessage, timeErrorKey);
19
+ ctx.addIssue("valid time", received, timeErrorKey);
17
20
  }
18
21
  if (precision !== void 0 && !received.includes(".")) {
19
- ctx.addIssue(received, timeErrorMessage, timeErrorKey);
22
+ ctx.addIssue("valid time", received, timeErrorKey);
20
23
  }
21
- };
24
+ });
22
25
  };
23
26
  isValidTime.key = timeErrorKey;
24
27
  isValidTime.message = timeErrorMessage;
@@ -27,4 +30,4 @@ setToDefaultLocale(isValidTime);
27
30
  export {
28
31
  isValidTime
29
32
  };
30
- //# sourceMappingURL=chunk-TLRVQWCI.mjs.map
33
+ //# sourceMappingURL=chunk-WL7BV4XV.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/asserts/string/isValidTime.ts"],"sourcesContent":["import { _constrain } from '../../helpers/jsonSchemaConstraint';\nimport { setToDefaultLocale } from '../../translationMap';\nimport type { ExceptionContext, RequiredValidation } from '../../core';\n\nconst timeErrorMessage = 'The received value is not a valid time';\nconst timeErrorKey = 's:isValidTime';\n\ninterface IsValidTimeOptions {\n precision?: number;\n}\n\n/**\n * @description Asserts that a string is a valid time in the format HH:mm:ss, with optional fractional seconds.\n * @param {IsValidTimeOptions} options Optional settings to configure the validation.\n * @returns {RequiredValidation} A validation function that takes a received string and an exception context.\n * @throws {ValidationError} if the received string is not a valid time.\n * @example\n * const schema = string().custom(isValidTime());\n * parseOrFail(schema, \"00:00:00\"); // Valid\n * parseOrFail(schema, \"23:59:59.9999999\"); // Valid\n * parseOrFail(schema, \"00:00:00.256Z\"); // Throws an error: 'The received value is not a valid time'\n *\n * const schemaWithPrecision = string().custom(isValidTime({ precision: 3 }));\n * parseOrFail(schemaWithPrecision, \"00:00:00.256\"); // Valid\n * parseOrFail(schemaWithPrecision, \"00:00:00\"); // Throws an error: 'The received value is not a valid time'\n *\n * @translation Error Translation Key = 's:isValidTime'\n */\nexport const isValidTime = (options: IsValidTimeOptions = {}): RequiredValidation<string> => {\n return _constrain({ format: 'time' }, (received: string, ctx: ExceptionContext) => {\n const { precision } = options;\n\n // Base regex for HH:mm:ss format\n let timeRegex = /^([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)(\\.\\d+)?$/;\n\n // If precision is specified, enforce exact number of digits in fractional seconds\n if (precision !== undefined) {\n timeRegex = new RegExp(`^([01]\\\\d|2[0-3]):([0-5]\\\\d):([0-5]\\\\d)(\\\\.\\\\d{${precision}})?$`);\n }\n\n // Check if the string is a valid time\n if (!timeRegex.test(received)) {\n ctx.addIssue('valid time', received, timeErrorKey);\n }\n\n // Additional check for precision if it's specified and the time does not have fractional seconds\n if (precision !== undefined && !received.includes('.')) {\n ctx.addIssue('valid time', received, timeErrorKey);\n }\n });\n};\n\nisValidTime.key = timeErrorKey;\nisValidTime.message = timeErrorMessage;\nsetToDefaultLocale(isValidTime);\n"],"mappings":";;;;;;;;AAIA,IAAM,mBAAmB;AACzB,IAAM,eAAe;AAuBd,IAAM,cAAc,CAAC,UAA8B,CAAC,MAAkC;AAC3F,SAAO,WAAW,EAAE,QAAQ,OAAO,GAAG,CAAC,UAAkB,QAA0B;AACjF,UAAM,EAAE,UAAU,IAAI;AAGtB,QAAI,YAAY;AAGhB,QAAI,cAAc,QAAW;AAC3B,kBAAY,IAAI,OAAO,kDAAkD,SAAS,MAAM;AAAA,IAC1F;AAGA,QAAI,CAAC,UAAU,KAAK,QAAQ,GAAG;AAC7B,UAAI,SAAS,cAAc,UAAU,YAAY;AAAA,IACnD;AAGA,QAAI,cAAc,UAAa,CAAC,SAAS,SAAS,GAAG,GAAG;AACtD,UAAI,SAAS,cAAc,UAAU,YAAY;AAAA,IACnD;AAAA,EACF,CAAC;AACH;AAEA,YAAY,MAAM;AAClB,YAAY,UAAU;AACtB,mBAAmB,WAAW;","names":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/helpers/jsonSchemaConstraint.ts
2
+ function _constrain(constraint, validation) {
3
+ validation.jsonSchema = constraint;
4
+ return validation;
5
+ }
6
+
7
+
8
+
9
+ exports._constrain = _constrain;
10
+ //# sourceMappingURL=chunk-WOPNDC4R.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-WOPNDC4R.js","../src/helpers/jsonSchemaConstraint.ts"],"names":[],"mappings":"AAAA;ACUO,SAAS,UAAA,CAAiD,UAAA,EAAwB,UAAA,EAAkB;AACzG,EAAC,UAAA,CAA+C,WAAA,EAAa,UAAA;AAC7D,EAAA,OAAO,UAAA;AACT;ADRA;AACA;AACE;AACF,gCAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-WOPNDC4R.js","sourcesContent":[null,"import type { JSONSchema } from '../toJSONSchema';\n\n/**\n * Records the JSON Schema keywords an assertion stands for, on the validation itself.\n *\n * The generator only ever sees the closure a factory returned, not the factory or the arguments it was\n * given, so an assertion that wants to appear in the output has to carry its own translation. Those\n * with no JSON Schema equivalent simply do not call this, and are absent from the output rather than\n * approximated.\n */\nexport function _constrain<T extends (...args: never[]) => void>(constraint: JSONSchema, validation: T): T {\n (validation as T & { jsonSchema?: JSONSchema }).jsonSchema = constraint;\n return validation;\n}\n"]}
@@ -0,0 +1,22 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunk6LUSV3SSjs = require('./chunk-6LUSV3SS.js');
4
+
5
+
6
+ var _chunkZWFSAKQKjs = require('./chunk-ZWFSAKQK.js');
7
+
8
+ // src/asserts/tuple/index.ts
9
+ function tuple(tupleSchemas) {
10
+ if (!Array.isArray(tupleSchemas) || !tupleSchemas.length)
11
+ throw new (0, _chunkZWFSAKQKjs.BuildSchemaError)("Missing schemas in tuple method");
12
+ tupleSchemas.forEach((tupleSchema, index) => {
13
+ if (!(tupleSchema instanceof _chunk6LUSV3SSjs.CommonSchema))
14
+ throw new (0, _chunkZWFSAKQKjs.BuildSchemaError)(`Invalid schema in tuple method at index '${index}'`);
15
+ });
16
+ return new (0, _chunk6LUSV3SSjs.CommonSchema)({ type: [], requiredValidations: [], tuple: [...tupleSchemas] });
17
+ }
18
+
19
+
20
+
21
+ exports.tuple = tuple;
22
+ //# sourceMappingURL=chunk-X6SI76NQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/bguard/bguard/lib/chunk-X6SI76NQ.js","../src/asserts/tuple/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;ACgBO,SAAS,KAAA,CAAmD,YAAA,EAA6C;AAC9G,EAAA,GAAA,CAAI,CAAC,KAAA,CAAM,OAAA,CAAQ,YAAY,EAAA,GAAK,CAAC,YAAA,CAAa,MAAA;AAChD,IAAA,MAAM,IAAI,sCAAA,CAAiB,iCAAiC,CAAA;AAE9D,EAAA,YAAA,CAAa,OAAA,CAAQ,CAAC,WAAA,EAAa,KAAA,EAAA,GAAU;AAC3C,IAAA,GAAA,CAAI,CAAA,CAAE,YAAA,WAAuB,6BAAA,CAAA;AAC3B,MAAA,MAAM,IAAI,sCAAA,CAAiB,CAAA,yCAAA,EAA4C,KAAK,CAAA,CAAA,CAAG,CAAA;AAAA,EACnF,CAAC,CAAA;AAED,EAAA,OAAO,IAAI,kCAAA,CAAa,EAAE,IAAA,EAAM,CAAC,CAAA,EAAG,mBAAA,EAAqB,CAAC,CAAA,EAAG,KAAA,EAAO,CAAC,GAAG,YAAY,EAAE,CAAC,CAAA;AAIzF;ADnBA;AACA;AACE;AACF,sBAAC","file":"/home/runner/work/bguard/bguard/lib/chunk-X6SI76NQ.js","sourcesContent":[null,"import { WithTuple } from '../../commonTypes';\nimport { CommonSchema } from '../../core';\nimport { BuildSchemaError } from '../../exceptions';\n\n/**\n * @description Creates a new schema for an array of a fixed length, where each position has its own\n * schema.\n *\n * The received value must be an array of exactly that many entries. Unlike `array`, which applies one\n * schema to every element, each position here is validated against the schema declared for it, and\n * the inferred type keeps the positions distinct.\n *\n * @template T\n * @param {T} tupleSchemas - The schema for each position, in order.\n * @returns A new schema inferring a tuple of its positions' types.\n * @example\n * const schema = tuple([string(), number()]);\n * parseOrFail(schema, ['a', 1]); // Validates successfully\n * parseOrFail(schema, [1, 'a']); // Throws a validation error\n * parseOrFail(schema, ['a']); // Throws a validation error, wrong length\n *\n * @instance Of CommonSchema\n */\nexport function tuple<T extends [CommonSchema, ...CommonSchema[]]>(tupleSchemas: T): WithTuple<CommonSchema, T> {\n if (!Array.isArray(tupleSchemas) || !tupleSchemas.length)\n throw new BuildSchemaError('Missing schemas in tuple method');\n\n tupleSchemas.forEach((tupleSchema, index) => {\n if (!(tupleSchema instanceof CommonSchema))\n throw new BuildSchemaError(`Invalid schema in tuple method at index '${index}'`);\n });\n\n return new CommonSchema({ type: [], requiredValidations: [], tuple: [...tupleSchemas] }) as WithTuple<\n CommonSchema,\n T\n >;\n}\n"]}