bupkis 0.11.1 → 0.12.1

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 (417) hide show
  1. package/CHANGELOG.md +74 -90
  2. package/README.md +2 -2
  3. package/dist/{commonjs/assertion/assertion-async.js → assertion/assertion-async.cjs} +38 -15
  4. package/dist/assertion/assertion-async.cjs.map +1 -0
  5. package/dist/{esm/assertion/assertion-async.d.ts → assertion/assertion-async.d.cts} +2 -2
  6. package/dist/assertion/assertion-async.d.cts.map +1 -0
  7. package/dist/{commonjs/assertion → assertion}/assertion-async.d.ts +2 -2
  8. package/dist/assertion/assertion-async.d.ts.map +1 -0
  9. package/dist/{esm/assertion → assertion}/assertion-async.js +38 -15
  10. package/dist/assertion/assertion-async.js.map +1 -0
  11. package/dist/assertion/assertion-standard-schema-async.cjs +155 -0
  12. package/dist/assertion/assertion-standard-schema-async.cjs.map +1 -0
  13. package/dist/assertion/assertion-standard-schema-async.d.cts +64 -0
  14. package/dist/assertion/assertion-standard-schema-async.d.cts.map +1 -0
  15. package/dist/assertion/assertion-standard-schema-async.d.ts +64 -0
  16. package/dist/assertion/assertion-standard-schema-async.d.ts.map +1 -0
  17. package/dist/assertion/assertion-standard-schema-async.js +151 -0
  18. package/dist/assertion/assertion-standard-schema-async.js.map +1 -0
  19. package/dist/assertion/assertion-standard-schema-sync.cjs +164 -0
  20. package/dist/assertion/assertion-standard-schema-sync.cjs.map +1 -0
  21. package/dist/assertion/assertion-standard-schema-sync.d.cts +64 -0
  22. package/dist/assertion/assertion-standard-schema-sync.d.cts.map +1 -0
  23. package/dist/assertion/assertion-standard-schema-sync.d.ts +64 -0
  24. package/dist/assertion/assertion-standard-schema-sync.d.ts.map +1 -0
  25. package/dist/assertion/assertion-standard-schema-sync.js +160 -0
  26. package/dist/assertion/assertion-standard-schema-sync.js.map +1 -0
  27. package/dist/{commonjs/assertion/assertion-sync.js → assertion/assertion-sync.cjs} +44 -11
  28. package/dist/assertion/assertion-sync.cjs.map +1 -0
  29. package/dist/{esm/assertion/assertion-sync.d.ts → assertion/assertion-sync.d.cts} +2 -2
  30. package/dist/assertion/assertion-sync.d.cts.map +1 -0
  31. package/dist/{commonjs/assertion → assertion}/assertion-sync.d.ts +2 -2
  32. package/dist/assertion/assertion-sync.d.ts.map +1 -0
  33. package/dist/{esm/assertion → assertion}/assertion-sync.js +44 -11
  34. package/dist/assertion/assertion-sync.js.map +1 -0
  35. package/dist/assertion/assertion-types.cjs.map +1 -0
  36. package/dist/{esm/assertion/assertion-types.d.ts → assertion/assertion-types.d.cts} +98 -16
  37. package/dist/assertion/assertion-types.d.cts.map +1 -0
  38. package/dist/{commonjs/assertion → assertion}/assertion-types.d.ts +98 -16
  39. package/dist/assertion/assertion-types.d.ts.map +1 -0
  40. package/dist/assertion/assertion-types.js.map +1 -0
  41. package/dist/{commonjs/assertion/assertion.js → assertion/assertion.cjs} +35 -5
  42. package/dist/assertion/assertion.cjs.map +1 -0
  43. package/dist/{commonjs/assertion/assertion.d.ts → assertion/assertion.d.cts} +13 -2
  44. package/dist/assertion/assertion.d.cts.map +1 -0
  45. package/dist/{esm/assertion → assertion}/assertion.d.ts +13 -2
  46. package/dist/assertion/assertion.d.ts.map +1 -0
  47. package/dist/{esm/assertion → assertion}/assertion.js +35 -5
  48. package/dist/assertion/assertion.js.map +1 -0
  49. package/dist/{commonjs/assertion/create.js → assertion/create.cjs} +16 -8
  50. package/dist/assertion/create.cjs.map +1 -0
  51. package/dist/{commonjs/assertion/create.d.ts → assertion/create.d.cts} +1 -1
  52. package/dist/assertion/create.d.cts.map +1 -0
  53. package/dist/{esm/assertion → assertion}/create.d.ts +1 -1
  54. package/dist/assertion/create.d.ts.map +1 -0
  55. package/dist/{esm/assertion → assertion}/create.js +16 -8
  56. package/dist/assertion/create.js.map +1 -0
  57. package/dist/assertion/impl/assertion-util.cjs.map +1 -0
  58. package/dist/assertion/impl/assertion-util.d.cts.map +1 -0
  59. package/dist/assertion/impl/assertion-util.d.ts.map +1 -0
  60. package/dist/assertion/impl/assertion-util.js.map +1 -0
  61. package/dist/{commonjs/assertion/impl/async-parametric.js → assertion/impl/async-parametric.cjs} +6 -6
  62. package/dist/assertion/impl/async-parametric.cjs.map +1 -0
  63. package/dist/assertion/impl/async-parametric.d.cts.map +1 -0
  64. package/dist/assertion/impl/async-parametric.d.ts.map +1 -0
  65. package/dist/{esm/assertion → assertion}/impl/async-parametric.js +6 -6
  66. package/dist/assertion/impl/async-parametric.js.map +1 -0
  67. package/dist/{commonjs/assertion/impl/async.js → assertion/impl/async.cjs} +2 -2
  68. package/dist/assertion/impl/async.cjs.map +1 -0
  69. package/dist/{commonjs/assertion/impl/async.d.ts → assertion/impl/async.d.cts} +1 -1
  70. package/dist/assertion/impl/async.d.cts.map +1 -0
  71. package/dist/{esm/assertion → assertion}/impl/async.d.ts +1 -1
  72. package/dist/assertion/impl/async.d.ts.map +1 -0
  73. package/dist/{esm/assertion → assertion}/impl/async.js +2 -2
  74. package/dist/assertion/impl/async.js.map +1 -0
  75. package/dist/{commonjs/assertion/impl/index.js → assertion/impl/index.cjs} +8 -8
  76. package/dist/assertion/impl/index.cjs.map +1 -0
  77. package/dist/{commonjs/assertion/impl/index.d.ts → assertion/impl/index.d.cts} +8 -8
  78. package/dist/assertion/impl/index.d.cts.map +1 -0
  79. package/dist/{esm/assertion → assertion}/impl/index.d.ts +8 -8
  80. package/dist/assertion/impl/index.d.ts.map +1 -0
  81. package/dist/{esm/assertion → assertion}/impl/index.js +8 -8
  82. package/dist/assertion/impl/index.js.map +1 -0
  83. package/dist/{commonjs/assertion/impl/sync-basic.js → assertion/impl/sync-basic.cjs} +3 -3
  84. package/dist/assertion/impl/sync-basic.cjs.map +1 -0
  85. package/dist/{commonjs/assertion/impl/sync-basic.d.ts → assertion/impl/sync-basic.d.cts} +37 -37
  86. package/dist/assertion/impl/sync-basic.d.cts.map +1 -0
  87. package/dist/{esm/assertion → assertion}/impl/sync-basic.d.ts +37 -37
  88. package/dist/assertion/impl/sync-basic.d.ts.map +1 -0
  89. package/dist/{esm/assertion → assertion}/impl/sync-basic.js +3 -3
  90. package/dist/assertion/impl/sync-basic.js.map +1 -0
  91. package/dist/{commonjs/assertion/impl/sync-collection.js → assertion/impl/sync-collection.cjs} +7 -4
  92. package/dist/assertion/impl/sync-collection.cjs.map +1 -0
  93. package/dist/{esm/assertion/impl/sync-collection.d.ts → assertion/impl/sync-collection.d.cts} +3 -3
  94. package/dist/assertion/impl/sync-collection.d.cts.map +1 -0
  95. package/dist/{commonjs/assertion → assertion}/impl/sync-collection.d.ts +3 -3
  96. package/dist/assertion/impl/sync-collection.d.ts.map +1 -0
  97. package/dist/{esm/assertion → assertion}/impl/sync-collection.js +7 -4
  98. package/dist/{esm/assertion → assertion}/impl/sync-collection.js.map +1 -1
  99. package/dist/{commonjs/assertion/impl/sync-date.js → assertion/impl/sync-date.cjs} +3 -3
  100. package/dist/assertion/impl/sync-date.cjs.map +1 -0
  101. package/dist/{commonjs/assertion/impl/sync-date.d.ts → assertion/impl/sync-date.d.cts} +1 -1
  102. package/dist/assertion/impl/sync-date.d.cts.map +1 -0
  103. package/dist/{esm/assertion → assertion}/impl/sync-date.d.ts +1 -1
  104. package/dist/assertion/impl/sync-date.d.ts.map +1 -0
  105. package/dist/{esm/assertion → assertion}/impl/sync-date.js +3 -3
  106. package/dist/assertion/impl/sync-date.js.map +1 -0
  107. package/dist/{commonjs/assertion/impl/sync-esoteric.js → assertion/impl/sync-esoteric.cjs} +3 -3
  108. package/dist/assertion/impl/sync-esoteric.cjs.map +1 -0
  109. package/dist/{commonjs/assertion/impl/sync-esoteric.d.ts → assertion/impl/sync-esoteric.d.cts} +3 -3
  110. package/dist/assertion/impl/sync-esoteric.d.cts.map +1 -0
  111. package/dist/{esm/assertion → assertion}/impl/sync-esoteric.d.ts +3 -3
  112. package/dist/assertion/impl/sync-esoteric.d.ts.map +1 -0
  113. package/dist/{esm/assertion → assertion}/impl/sync-esoteric.js +3 -3
  114. package/dist/assertion/impl/sync-esoteric.js.map +1 -0
  115. package/dist/{commonjs/assertion/impl/sync-parametric.js → assertion/impl/sync-parametric.cjs} +6 -6
  116. package/dist/assertion/impl/sync-parametric.cjs.map +1 -0
  117. package/dist/{esm/assertion/impl/sync-parametric.d.ts → assertion/impl/sync-parametric.d.cts} +2 -2
  118. package/dist/assertion/impl/sync-parametric.d.cts.map +1 -0
  119. package/dist/{commonjs/assertion → assertion}/impl/sync-parametric.d.ts +2 -2
  120. package/dist/assertion/impl/sync-parametric.d.ts.map +1 -0
  121. package/dist/{esm/assertion → assertion}/impl/sync-parametric.js +6 -6
  122. package/dist/assertion/impl/sync-parametric.js.map +1 -0
  123. package/dist/{commonjs/assertion/impl/sync.js → assertion/impl/sync.cjs} +10 -10
  124. package/dist/assertion/impl/sync.cjs.map +1 -0
  125. package/dist/{esm/assertion/impl/sync.d.ts → assertion/impl/sync.d.cts} +23 -23
  126. package/dist/assertion/impl/sync.d.cts.map +1 -0
  127. package/dist/{commonjs/assertion → assertion}/impl/sync.d.ts +23 -23
  128. package/dist/assertion/impl/sync.d.ts.map +1 -0
  129. package/dist/{esm/assertion → assertion}/impl/sync.js +10 -10
  130. package/dist/assertion/impl/sync.js.map +1 -0
  131. package/dist/{commonjs/assertion/index.js → assertion/index.cjs} +5 -5
  132. package/dist/assertion/index.cjs.map +1 -0
  133. package/dist/assertion/index.d.cts +18 -0
  134. package/dist/assertion/index.d.cts.map +1 -0
  135. package/dist/assertion/index.d.ts +18 -0
  136. package/dist/assertion/index.d.ts.map +1 -0
  137. package/dist/{esm/assertion → assertion}/index.js +5 -5
  138. package/dist/assertion/index.js.map +1 -0
  139. package/dist/{commonjs/assertion/slotify.js → assertion/slotify.cjs} +29 -11
  140. package/dist/assertion/slotify.cjs.map +1 -0
  141. package/dist/assertion/slotify.d.cts.map +1 -0
  142. package/dist/assertion/slotify.d.ts.map +1 -0
  143. package/dist/{esm/assertion → assertion}/slotify.js +29 -11
  144. package/dist/assertion/slotify.js.map +1 -0
  145. package/dist/{commonjs/bootstrap.js → bootstrap.cjs} +2 -2
  146. package/dist/bootstrap.cjs.map +1 -0
  147. package/dist/{commonjs/bootstrap.d.ts → bootstrap.d.cts} +10 -10
  148. package/dist/bootstrap.d.cts.map +1 -0
  149. package/dist/{esm/bootstrap.d.ts → bootstrap.d.ts} +10 -10
  150. package/dist/bootstrap.d.ts.map +1 -0
  151. package/dist/{esm/bootstrap.js → bootstrap.js} +2 -2
  152. package/dist/bootstrap.js.map +1 -0
  153. package/dist/constant.cjs.map +1 -0
  154. package/dist/constant.d.cts.map +1 -0
  155. package/dist/constant.d.ts.map +1 -0
  156. package/dist/constant.js.map +1 -0
  157. package/dist/{commonjs/diff.js → diff.cjs} +14 -21
  158. package/dist/diff.cjs.map +1 -0
  159. package/dist/diff.d.cts.map +1 -0
  160. package/dist/diff.d.ts.map +1 -0
  161. package/dist/{esm/diff.js → diff.js} +14 -21
  162. package/dist/diff.js.map +1 -0
  163. package/dist/{commonjs/error.js → error.cjs} +2 -2
  164. package/dist/error.cjs.map +1 -0
  165. package/dist/{commonjs/error.d.ts → error.d.cts} +1 -1
  166. package/dist/error.d.cts.map +1 -0
  167. package/dist/{esm/error.d.ts → error.d.ts} +1 -1
  168. package/dist/error.d.ts.map +1 -0
  169. package/dist/{esm/error.js → error.js} +2 -2
  170. package/dist/error.js.map +1 -0
  171. package/dist/{commonjs/expect.js → expect.cjs} +4 -4
  172. package/dist/expect.cjs.map +1 -0
  173. package/dist/{esm/expect.d.ts → expect.d.cts} +2 -2
  174. package/dist/expect.d.cts.map +1 -0
  175. package/dist/{commonjs/expect.d.ts → expect.d.ts} +2 -2
  176. package/dist/expect.d.ts.map +1 -0
  177. package/dist/{esm/expect.js → expect.js} +4 -4
  178. package/dist/expect.js.map +1 -0
  179. package/dist/{commonjs/guards.js → guards.cjs} +28 -2
  180. package/dist/guards.cjs.map +1 -0
  181. package/dist/{commonjs/guards.d.ts → guards.d.cts} +18 -2
  182. package/dist/guards.d.cts.map +1 -0
  183. package/dist/{esm/guards.d.ts → guards.d.ts} +18 -2
  184. package/dist/guards.d.ts.map +1 -0
  185. package/dist/{esm/guards.js → guards.js} +26 -1
  186. package/dist/guards.js.map +1 -0
  187. package/dist/{commonjs/index.js → index.cjs} +5 -5
  188. package/dist/index.cjs.map +1 -0
  189. package/dist/{esm/index.d.ts → index.d.cts} +27 -20
  190. package/dist/index.d.cts.map +1 -0
  191. package/dist/{commonjs/index.d.ts → index.d.ts} +27 -20
  192. package/dist/index.d.ts.map +1 -0
  193. package/dist/{esm/index.js → index.js} +5 -5
  194. package/dist/index.js.map +1 -0
  195. package/dist/{commonjs/internal-schema.js → internal-schema.cjs} +31 -13
  196. package/dist/internal-schema.cjs.map +1 -0
  197. package/dist/{commonjs/internal-schema.d.ts → internal-schema.d.cts} +1 -1
  198. package/dist/internal-schema.d.cts.map +1 -0
  199. package/dist/{esm/internal-schema.d.ts → internal-schema.d.ts} +1 -1
  200. package/dist/internal-schema.d.ts.map +1 -0
  201. package/dist/{esm/internal-schema.js → internal-schema.js} +31 -13
  202. package/dist/internal-schema.js.map +1 -0
  203. package/dist/{commonjs/metadata.js → metadata.cjs} +1 -1
  204. package/dist/metadata.cjs.map +1 -0
  205. package/dist/{commonjs/metadata.d.ts → metadata.d.cts} +1 -1
  206. package/dist/metadata.d.cts.map +1 -0
  207. package/dist/{esm/metadata.d.ts → metadata.d.ts} +1 -1
  208. package/dist/metadata.d.ts.map +1 -0
  209. package/dist/{esm/metadata.js → metadata.js} +1 -1
  210. package/dist/metadata.js.map +1 -0
  211. package/dist/{commonjs/schema.js → schema.cjs} +3 -3
  212. package/dist/schema.cjs.map +1 -0
  213. package/dist/{esm/schema.d.ts → schema.d.cts} +1 -1
  214. package/dist/schema.d.cts.map +1 -0
  215. package/dist/{commonjs/schema.d.ts → schema.d.ts} +1 -1
  216. package/dist/schema.d.ts.map +1 -0
  217. package/dist/{esm/schema.js → schema.js} +3 -3
  218. package/dist/schema.js.map +1 -0
  219. package/dist/standard-schema.cjs +13 -0
  220. package/dist/standard-schema.cjs.map +1 -0
  221. package/dist/standard-schema.d.cts +192 -0
  222. package/dist/standard-schema.d.cts.map +1 -0
  223. package/dist/standard-schema.d.ts +192 -0
  224. package/dist/standard-schema.d.ts.map +1 -0
  225. package/dist/standard-schema.js +12 -0
  226. package/dist/standard-schema.js.map +1 -0
  227. package/dist/types.cjs.map +1 -0
  228. package/dist/{esm/types.d.ts → types.d.cts} +167 -15
  229. package/dist/types.d.cts.map +1 -0
  230. package/dist/{commonjs/types.d.ts → types.d.ts} +167 -15
  231. package/dist/types.d.ts.map +1 -0
  232. package/dist/types.js.map +1 -0
  233. package/dist/{commonjs/use.js → use.cjs} +4 -4
  234. package/dist/use.cjs.map +1 -0
  235. package/dist/use.d.cts.map +1 -0
  236. package/dist/use.d.ts.map +1 -0
  237. package/dist/{esm/use.js → use.js} +4 -4
  238. package/dist/use.js.map +1 -0
  239. package/dist/{commonjs/util.js → util.cjs} +1 -1
  240. package/dist/util.cjs.map +1 -0
  241. package/dist/{esm/util.d.ts → util.d.cts} +2 -2
  242. package/dist/util.d.cts.map +1 -0
  243. package/dist/{commonjs/util.d.ts → util.d.ts} +2 -2
  244. package/dist/util.d.ts.map +1 -0
  245. package/dist/{esm/util.js → util.js} +1 -1
  246. package/dist/util.js.map +1 -0
  247. package/dist/{commonjs/value-to-schema.js → value-to-schema.cjs} +3 -3
  248. package/dist/value-to-schema.cjs.map +1 -0
  249. package/dist/value-to-schema.d.cts.map +1 -0
  250. package/dist/value-to-schema.d.ts.map +1 -0
  251. package/dist/{esm/value-to-schema.js → value-to-schema.js} +3 -3
  252. package/dist/value-to-schema.js.map +1 -0
  253. package/package.json +64 -89
  254. package/src/assertion/assertion-async.ts +54 -14
  255. package/src/assertion/assertion-standard-schema-async.ts +202 -0
  256. package/src/assertion/assertion-standard-schema-sync.ts +214 -0
  257. package/src/assertion/assertion-sync.ts +65 -10
  258. package/src/assertion/assertion-types.ts +135 -15
  259. package/src/assertion/assertion.ts +40 -0
  260. package/src/assertion/create.ts +11 -5
  261. package/src/assertion/impl/sync-collection.ts +3 -0
  262. package/src/assertion/slotify.ts +29 -7
  263. package/src/diff.ts +14 -29
  264. package/src/guards.ts +29 -0
  265. package/src/index.ts +16 -6
  266. package/src/internal-schema.ts +36 -16
  267. package/src/standard-schema.ts +214 -0
  268. package/src/types.ts +176 -14
  269. package/dist/commonjs/assertion/assertion-async.d.ts.map +0 -1
  270. package/dist/commonjs/assertion/assertion-async.js.map +0 -1
  271. package/dist/commonjs/assertion/assertion-sync.d.ts.map +0 -1
  272. package/dist/commonjs/assertion/assertion-sync.js.map +0 -1
  273. package/dist/commonjs/assertion/assertion-types.d.ts.map +0 -1
  274. package/dist/commonjs/assertion/assertion-types.js.map +0 -1
  275. package/dist/commonjs/assertion/assertion.d.ts.map +0 -1
  276. package/dist/commonjs/assertion/assertion.js.map +0 -1
  277. package/dist/commonjs/assertion/create.d.ts.map +0 -1
  278. package/dist/commonjs/assertion/create.js.map +0 -1
  279. package/dist/commonjs/assertion/impl/assertion-util.d.ts.map +0 -1
  280. package/dist/commonjs/assertion/impl/assertion-util.js.map +0 -1
  281. package/dist/commonjs/assertion/impl/async-parametric.d.ts.map +0 -1
  282. package/dist/commonjs/assertion/impl/async-parametric.js.map +0 -1
  283. package/dist/commonjs/assertion/impl/async.d.ts.map +0 -1
  284. package/dist/commonjs/assertion/impl/async.js.map +0 -1
  285. package/dist/commonjs/assertion/impl/index.d.ts.map +0 -1
  286. package/dist/commonjs/assertion/impl/index.js.map +0 -1
  287. package/dist/commonjs/assertion/impl/sync-basic.d.ts.map +0 -1
  288. package/dist/commonjs/assertion/impl/sync-basic.js.map +0 -1
  289. package/dist/commonjs/assertion/impl/sync-collection.d.ts.map +0 -1
  290. package/dist/commonjs/assertion/impl/sync-collection.js.map +0 -1
  291. package/dist/commonjs/assertion/impl/sync-date.d.ts.map +0 -1
  292. package/dist/commonjs/assertion/impl/sync-date.js.map +0 -1
  293. package/dist/commonjs/assertion/impl/sync-esoteric.d.ts.map +0 -1
  294. package/dist/commonjs/assertion/impl/sync-esoteric.js.map +0 -1
  295. package/dist/commonjs/assertion/impl/sync-parametric.d.ts.map +0 -1
  296. package/dist/commonjs/assertion/impl/sync-parametric.js.map +0 -1
  297. package/dist/commonjs/assertion/impl/sync.d.ts.map +0 -1
  298. package/dist/commonjs/assertion/impl/sync.js.map +0 -1
  299. package/dist/commonjs/assertion/index.d.ts +0 -18
  300. package/dist/commonjs/assertion/index.d.ts.map +0 -1
  301. package/dist/commonjs/assertion/index.js.map +0 -1
  302. package/dist/commonjs/assertion/slotify.d.ts.map +0 -1
  303. package/dist/commonjs/assertion/slotify.js.map +0 -1
  304. package/dist/commonjs/bootstrap.d.ts.map +0 -1
  305. package/dist/commonjs/bootstrap.js.map +0 -1
  306. package/dist/commonjs/constant.d.ts.map +0 -1
  307. package/dist/commonjs/constant.js.map +0 -1
  308. package/dist/commonjs/diff.d.ts.map +0 -1
  309. package/dist/commonjs/diff.js.map +0 -1
  310. package/dist/commonjs/error.d.ts.map +0 -1
  311. package/dist/commonjs/error.js.map +0 -1
  312. package/dist/commonjs/expect.d.ts.map +0 -1
  313. package/dist/commonjs/expect.js.map +0 -1
  314. package/dist/commonjs/guards.d.ts.map +0 -1
  315. package/dist/commonjs/guards.js.map +0 -1
  316. package/dist/commonjs/index.d.ts.map +0 -1
  317. package/dist/commonjs/index.js.map +0 -1
  318. package/dist/commonjs/internal-schema.d.ts.map +0 -1
  319. package/dist/commonjs/internal-schema.js.map +0 -1
  320. package/dist/commonjs/metadata.d.ts.map +0 -1
  321. package/dist/commonjs/metadata.js.map +0 -1
  322. package/dist/commonjs/package.json +0 -3
  323. package/dist/commonjs/schema.d.ts.map +0 -1
  324. package/dist/commonjs/schema.js.map +0 -1
  325. package/dist/commonjs/types.d.ts.map +0 -1
  326. package/dist/commonjs/types.js.map +0 -1
  327. package/dist/commonjs/use.d.ts.map +0 -1
  328. package/dist/commonjs/use.js.map +0 -1
  329. package/dist/commonjs/util.d.ts.map +0 -1
  330. package/dist/commonjs/util.js.map +0 -1
  331. package/dist/commonjs/value-to-schema.d.ts.map +0 -1
  332. package/dist/commonjs/value-to-schema.js.map +0 -1
  333. package/dist/esm/assertion/assertion-async.d.ts.map +0 -1
  334. package/dist/esm/assertion/assertion-async.js.map +0 -1
  335. package/dist/esm/assertion/assertion-sync.d.ts.map +0 -1
  336. package/dist/esm/assertion/assertion-sync.js.map +0 -1
  337. package/dist/esm/assertion/assertion-types.d.ts.map +0 -1
  338. package/dist/esm/assertion/assertion-types.js.map +0 -1
  339. package/dist/esm/assertion/assertion.d.ts.map +0 -1
  340. package/dist/esm/assertion/assertion.js.map +0 -1
  341. package/dist/esm/assertion/create.d.ts.map +0 -1
  342. package/dist/esm/assertion/create.js.map +0 -1
  343. package/dist/esm/assertion/impl/assertion-util.d.ts.map +0 -1
  344. package/dist/esm/assertion/impl/assertion-util.js.map +0 -1
  345. package/dist/esm/assertion/impl/async-parametric.d.ts.map +0 -1
  346. package/dist/esm/assertion/impl/async-parametric.js.map +0 -1
  347. package/dist/esm/assertion/impl/async.d.ts.map +0 -1
  348. package/dist/esm/assertion/impl/async.js.map +0 -1
  349. package/dist/esm/assertion/impl/index.d.ts.map +0 -1
  350. package/dist/esm/assertion/impl/index.js.map +0 -1
  351. package/dist/esm/assertion/impl/sync-basic.d.ts.map +0 -1
  352. package/dist/esm/assertion/impl/sync-basic.js.map +0 -1
  353. package/dist/esm/assertion/impl/sync-collection.d.ts.map +0 -1
  354. package/dist/esm/assertion/impl/sync-date.d.ts.map +0 -1
  355. package/dist/esm/assertion/impl/sync-date.js.map +0 -1
  356. package/dist/esm/assertion/impl/sync-esoteric.d.ts.map +0 -1
  357. package/dist/esm/assertion/impl/sync-esoteric.js.map +0 -1
  358. package/dist/esm/assertion/impl/sync-parametric.d.ts.map +0 -1
  359. package/dist/esm/assertion/impl/sync-parametric.js.map +0 -1
  360. package/dist/esm/assertion/impl/sync.d.ts.map +0 -1
  361. package/dist/esm/assertion/impl/sync.js.map +0 -1
  362. package/dist/esm/assertion/index.d.ts +0 -18
  363. package/dist/esm/assertion/index.d.ts.map +0 -1
  364. package/dist/esm/assertion/index.js.map +0 -1
  365. package/dist/esm/assertion/slotify.d.ts.map +0 -1
  366. package/dist/esm/assertion/slotify.js.map +0 -1
  367. package/dist/esm/bootstrap.d.ts.map +0 -1
  368. package/dist/esm/bootstrap.js.map +0 -1
  369. package/dist/esm/constant.d.ts.map +0 -1
  370. package/dist/esm/constant.js.map +0 -1
  371. package/dist/esm/diff.d.ts.map +0 -1
  372. package/dist/esm/diff.js.map +0 -1
  373. package/dist/esm/error.d.ts.map +0 -1
  374. package/dist/esm/error.js.map +0 -1
  375. package/dist/esm/expect.d.ts.map +0 -1
  376. package/dist/esm/expect.js.map +0 -1
  377. package/dist/esm/guards.d.ts.map +0 -1
  378. package/dist/esm/guards.js.map +0 -1
  379. package/dist/esm/index.d.ts.map +0 -1
  380. package/dist/esm/index.js.map +0 -1
  381. package/dist/esm/internal-schema.d.ts.map +0 -1
  382. package/dist/esm/internal-schema.js.map +0 -1
  383. package/dist/esm/metadata.d.ts.map +0 -1
  384. package/dist/esm/metadata.js.map +0 -1
  385. package/dist/esm/package.json +0 -3
  386. package/dist/esm/schema.d.ts.map +0 -1
  387. package/dist/esm/schema.js.map +0 -1
  388. package/dist/esm/types.d.ts.map +0 -1
  389. package/dist/esm/types.js.map +0 -1
  390. package/dist/esm/use.d.ts.map +0 -1
  391. package/dist/esm/use.js.map +0 -1
  392. package/dist/esm/util.d.ts.map +0 -1
  393. package/dist/esm/util.js.map +0 -1
  394. package/dist/esm/value-to-schema.d.ts.map +0 -1
  395. package/dist/esm/value-to-schema.js.map +0 -1
  396. /package/dist/{commonjs/assertion/assertion-types.js → assertion/assertion-types.cjs} +0 -0
  397. /package/dist/{esm/assertion → assertion}/assertion-types.js +0 -0
  398. /package/dist/{commonjs/assertion/impl/assertion-util.js → assertion/impl/assertion-util.cjs} +0 -0
  399. /package/dist/{commonjs/assertion/impl/assertion-util.d.ts → assertion/impl/assertion-util.d.cts} +0 -0
  400. /package/dist/{esm/assertion → assertion}/impl/assertion-util.d.ts +0 -0
  401. /package/dist/{esm/assertion → assertion}/impl/assertion-util.js +0 -0
  402. /package/dist/{commonjs/assertion/impl/async-parametric.d.ts → assertion/impl/async-parametric.d.cts} +0 -0
  403. /package/dist/{esm/assertion → assertion}/impl/async-parametric.d.ts +0 -0
  404. /package/dist/{commonjs/assertion/slotify.d.ts → assertion/slotify.d.cts} +0 -0
  405. /package/dist/{esm/assertion → assertion}/slotify.d.ts +0 -0
  406. /package/dist/{commonjs/constant.js → constant.cjs} +0 -0
  407. /package/dist/{commonjs/constant.d.ts → constant.d.cts} +0 -0
  408. /package/dist/{esm/constant.d.ts → constant.d.ts} +0 -0
  409. /package/dist/{esm/constant.js → constant.js} +0 -0
  410. /package/dist/{commonjs/diff.d.ts → diff.d.cts} +0 -0
  411. /package/dist/{esm/diff.d.ts → diff.d.ts} +0 -0
  412. /package/dist/{commonjs/types.js → types.cjs} +0 -0
  413. /package/dist/{esm/types.js → types.js} +0 -0
  414. /package/dist/{commonjs/use.d.ts → use.d.cts} +0 -0
  415. /package/dist/{esm/use.d.ts → use.d.ts} +0 -0
  416. /package/dist/{commonjs/value-to-schema.d.ts → value-to-schema.d.cts} +0 -0
  417. /package/dist/{esm/value-to-schema.d.ts → value-to-schema.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,252 +1,236 @@
1
1
  # Changelog
2
2
 
3
- ## [0.11.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.11.0...bupkis-v0.11.1) (2025-10-10)
3
+ ## [0.12.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.12.0...bupkis-v0.12.1) (2025-10-26)
4
4
 
5
5
 
6
6
  ### Bug Fixes
7
7
 
8
- * **assertions:** remove non-deterministic date assertions ([e1569c3](https://github.com/boneskull/bupkis/commit/e1569c3c85572782e2bfe0bb9ecac89b9f2b4f49)), closes [#146](https://github.com/boneskull/bupkis/issues/146)
8
+ * **assertions:** function bodies of std. schema assertions now correctly infer arg types ([97a239e](https://github.com/boneskull/bupkis/commit/97a239e692a5dce73ae7282c5b68a911541223fe))
9
9
 
10
- ## [0.11.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.6...bupkis-v0.11.0) (2025-10-06)
10
+ ## [0.12.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.11.1...bupkis-v0.12.0) (2025-10-24)
11
11
 
12
12
 
13
13
  ### Features
14
14
 
15
- * **assertions:** add some more aliases; cleanup ([a751cdb](https://github.com/boneskull/bupkis/commit/a751cdb1462ec77a8e17fc52c4d5434ca3197535))
16
- * **schema:** add more schemas ([0b0c292](https://github.com/boneskull/bupkis/commit/0b0c2928a29c4615433e537d34637bdb1cd44af9))
15
+ * add Standard Schema V1 support for validation library interoperability ([d537cf2](https://github.com/boneskull/bupkis/commit/d537cf299e46aa53203bd6890bafbdbdb98cb825))
17
16
 
18
17
 
19
18
  ### Bug Fixes
20
19
 
21
- * **deps:** unpin type-fest ([e621d19](https://github.com/boneskull/bupkis/commit/e621d1982c371581206d49ec979b45eefddec125))
20
+ * **diff:** fix diff output for incomparable types ([7ccc041](https://github.com/boneskull/bupkis/commit/7ccc0412a4e5c30a922fddd4b9a20368c3a8f077))
21
+ * **test:** update snapshots ([b5005c1](https://github.com/boneskull/bupkis/commit/b5005c13358dd5ae91fd0b6d09a99b842dfdbc79))
22
22
 
23
- ## [0.10.6](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.5...bupkis-v0.10.6) (2025-10-06)
23
+ ## [0.11.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.11.0...bupkis-v0.11.1) (2025-10-10)
24
+
25
+ ### Bug Fixes
24
26
 
27
+ - **assertions:** remove non-deterministic date assertions ([e1569c3](https://github.com/boneskull/bupkis/commit/e1569c3c85572782e2bfe0bb9ecac89b9f2b4f49)), closes [#146](https://github.com/boneskull/bupkis/issues/146)
28
+
29
+ ## [0.11.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.6...bupkis-v0.11.0) (2025-10-06)
30
+
31
+ ### Features
32
+
33
+ - **assertions:** add some more aliases; cleanup ([a751cdb](https://github.com/boneskull/bupkis/commit/a751cdb1462ec77a8e17fc52c4d5434ca3197535))
34
+ - **schema:** add more schemas ([0b0c292](https://github.com/boneskull/bupkis/commit/0b0c2928a29c4615433e537d34637bdb1cd44af9))
25
35
 
26
36
  ### Bug Fixes
27
37
 
28
- * **deps:** move type-fest to dependencies ([7db2b81](https://github.com/boneskull/bupkis/commit/7db2b81fa14d2cefdcc57835706e694fa0794830))
38
+ - **deps:** unpin type-fest ([e621d19](https://github.com/boneskull/bupkis/commit/e621d1982c371581206d49ec979b45eefddec125))
29
39
 
30
- ## [0.10.5](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.4...bupkis-v0.10.5) (2025-10-05)
40
+ ## [0.10.6](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.5...bupkis-v0.10.6) (2025-10-06)
41
+
42
+ ### Bug Fixes
31
43
 
44
+ - **deps:** move type-fest to dependencies ([7db2b81](https://github.com/boneskull/bupkis/commit/7db2b81fa14d2cefdcc57835706e694fa0794830))
45
+
46
+ ## [0.10.5](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.4...bupkis-v0.10.5) (2025-10-05)
32
47
 
33
48
  ### Bug Fixes
34
49
 
35
- * **assertions:** better assertion error messages for regexes ([956c985](https://github.com/boneskull/bupkis/commit/956c9858b4a7c3c004fbe665cff2f1be1492b9c8))
50
+ - **assertions:** better assertion error messages for regexes ([956c985](https://github.com/boneskull/bupkis/commit/956c9858b4a7c3c004fbe665cff2f1be1492b9c8))
36
51
 
37
52
  ## [0.10.4](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.3...bupkis-v0.10.4) (2025-10-05)
38
53
 
39
-
40
54
  ### Bug Fixes
41
55
 
42
- * **ci:** re-enable token-based publishing ([f2183ee](https://github.com/boneskull/bupkis/commit/f2183eeb71068929e6794add5a763625d62a8717))
56
+ - **ci:** re-enable token-based publishing ([f2183ee](https://github.com/boneskull/bupkis/commit/f2183eeb71068929e6794add5a763625d62a8717))
43
57
 
44
58
  ## [0.10.3](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.2...bupkis-v0.10.3) (2025-10-05)
45
59
 
46
-
47
60
  ### Bug Fixes
48
61
 
49
- * **assertion:** remove metadata parameter from createAssertion/createAsyncAssertion ([3fb6681](https://github.com/boneskull/bupkis/commit/3fb6681cccc3e9af17e2f6f4071fb0b608ed85a2))
50
- * **assertions:** error-reporting fixes for date assertions ([a9bcb4d](https://github.com/boneskull/bupkis/commit/a9bcb4d36abafa3a4dec4b5e9a1ba45c64bd7f4c))
51
- * **assertions:** update weekend/weekday assertions to use UTC ([7e18155](https://github.com/boneskull/bupkis/commit/7e18155b08ffe4319081822ee6f6d9b9dd038443))
52
- * **schema:** expose datetime-related schemas ([a9bcb4d](https://github.com/boneskull/bupkis/commit/a9bcb4d36abafa3a4dec4b5e9a1ba45c64bd7f4c))
62
+ - **assertion:** remove metadata parameter from createAssertion/createAsyncAssertion ([3fb6681](https://github.com/boneskull/bupkis/commit/3fb6681cccc3e9af17e2f6f4071fb0b608ed85a2))
63
+ - **assertions:** error-reporting fixes for date assertions ([a9bcb4d](https://github.com/boneskull/bupkis/commit/a9bcb4d36abafa3a4dec4b5e9a1ba45c64bd7f4c))
64
+ - **assertions:** update weekend/weekday assertions to use UTC ([7e18155](https://github.com/boneskull/bupkis/commit/7e18155b08ffe4319081822ee6f6d9b9dd038443))
65
+ - **schema:** expose datetime-related schemas ([a9bcb4d](https://github.com/boneskull/bupkis/commit/a9bcb4d36abafa3a4dec4b5e9a1ba45c64bd7f4c))
53
66
 
54
67
  ## [0.10.2](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.1...bupkis-v0.10.2) (2025-10-04)
55
68
 
56
-
57
69
  ### Bug Fixes
58
70
 
59
- * force release ([775efb1](https://github.com/boneskull/bupkis/commit/775efb1e539def520a8a22140f88d0098a426265))
71
+ - force release ([775efb1](https://github.com/boneskull/bupkis/commit/775efb1e539def520a8a22140f88d0098a426265))
60
72
 
61
73
  ## [0.10.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.10.0...bupkis-v0.10.1) (2025-10-04)
62
74
 
63
-
64
75
  ### Bug Fixes
65
76
 
66
- * **assertions:** another fix for handling of conjuncted assertions w/ bare "and" phrases ([fb79b8b](https://github.com/boneskull/bupkis/commit/fb79b8bd0969f3ab71d93fe6ddfcc9b3fab93ff0))
77
+ - **assertions:** another fix for handling of conjuncted assertions w/ bare "and" phrases ([fb79b8b](https://github.com/boneskull/bupkis/commit/fb79b8bd0969f3ab71d93fe6ddfcc9b3fab93ff0))
67
78
 
68
79
  ## [0.10.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.9.0...bupkis-v0.10.0) (2025-10-03)
69
80
 
70
-
71
81
  ### Features
72
82
 
73
- * **assertions:** add more date assertions ([ab8365c](https://github.com/boneskull/bupkis/commit/ab8365cbcf09c9c56fb88d174880c5e72d608f03))
74
-
83
+ - **assertions:** add more date assertions ([ab8365c](https://github.com/boneskull/bupkis/commit/ab8365cbcf09c9c56fb88d174880c5e72d608f03))
75
84
 
76
85
  ### Bug Fixes
77
86
 
78
- * **assertions:** more accurate string representations of assertions ([b78c36a](https://github.com/boneskull/bupkis/commit/b78c36a103f07bb3a06b327231186ef5f34fed82))
79
- * **deps:** update dependency jest-diff to v30.2.0 ([#103](https://github.com/boneskull/bupkis/issues/103)) ([dba6f6f](https://github.com/boneskull/bupkis/commit/dba6f6ff3858c5e5d4351bcaaef7c991145a5252))
80
- * **error:** AssertionErrorOptions fix for @types/node ([7aef073](https://github.com/boneskull/bupkis/commit/7aef0737ac5e2960d63aeacb3e2f7851e23c79ff))
81
- * **expect:** proper handling of assertions containing bare "and" phrases ([0ad9eee](https://github.com/boneskull/bupkis/commit/0ad9eeeac73173cb3fc5c05173a22b8baed51efe))
87
+ - **assertions:** more accurate string representations of assertions ([b78c36a](https://github.com/boneskull/bupkis/commit/b78c36a103f07bb3a06b327231186ef5f34fed82))
88
+ - **deps:** update dependency jest-diff to v30.2.0 ([#103](https://github.com/boneskull/bupkis/issues/103)) ([dba6f6f](https://github.com/boneskull/bupkis/commit/dba6f6ff3858c5e5d4351bcaaef7c991145a5252))
89
+ - **error:** AssertionErrorOptions fix for @types/node ([7aef073](https://github.com/boneskull/bupkis/commit/7aef0737ac5e2960d63aeacb3e2f7851e23c79ff))
90
+ - **expect:** proper handling of assertions containing bare "and" phrases ([0ad9eee](https://github.com/boneskull/bupkis/commit/0ad9eeeac73173cb3fc5c05173a22b8baed51efe))
82
91
 
83
92
  ## [0.9.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.8.0...bupkis-v0.9.0) (2025-09-29)
84
93
 
85
-
86
94
  ### Features
87
95
 
88
- * **assertion:** allow chaining assertions with "and" ([e76e772](https://github.com/boneskull/bupkis/commit/e76e772395afeb613b0936b2ac0fb3ed9792aa0e))
89
- * **assertions:** assertions can return Assertion Parse Request objects ([43fa2d1](https://github.com/boneskull/bupkis/commit/43fa2d14aed32caff7f665845b7471b014a6c266))
96
+ - **assertion:** allow chaining assertions with "and" ([e76e772](https://github.com/boneskull/bupkis/commit/e76e772395afeb613b0936b2ac0fb3ed9792aa0e))
97
+ - **assertions:** assertions can return Assertion Parse Request objects ([43fa2d1](https://github.com/boneskull/bupkis/commit/43fa2d14aed32caff7f665845b7471b014a6c266))
90
98
 
91
99
  ## [0.8.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.7.2...bupkis-v0.8.0) (2025-09-25)
92
100
 
93
-
94
101
  ### Features
95
102
 
96
- * proper diffs ([ef29531](https://github.com/boneskull/bupkis/commit/ef295313cf5e8b5b0b0357098f4f7ee22414403d))
103
+ - proper diffs ([ef29531](https://github.com/boneskull/bupkis/commit/ef295313cf5e8b5b0b0357098f4f7ee22414403d))
97
104
 
98
105
  ## [0.7.2](https://github.com/boneskull/bupkis/compare/bupkis-v0.7.1...bupkis-v0.7.2) (2025-09-22)
99
106
 
100
-
101
107
  ### Bug Fixes
102
108
 
103
- * **release:** revert change to publish action ([5342626](https://github.com/boneskull/bupkis/commit/5342626daa65b75994bd9681f356f24fef7a25ba))
109
+ - **release:** revert change to publish action ([5342626](https://github.com/boneskull/bupkis/commit/5342626daa65b75994bd9681f356f24fef7a25ba))
104
110
 
105
111
  ## [0.7.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.7.0...bupkis-v0.7.1) (2025-09-22)
106
112
 
107
-
108
113
  ### Bug Fixes
109
114
 
110
- * **release:** release 0.7.0 ([488f0dc](https://github.com/boneskull/bupkis/commit/488f0dc6f74a8c83fd97ec6ea1bd937bf2df0032))
111
- * **release:** release 0.7.1 ([7505fb8](https://github.com/boneskull/bupkis/commit/7505fb810a22d0f433af6403c9ff3fa492279884))
115
+ - **release:** release 0.7.0 ([488f0dc](https://github.com/boneskull/bupkis/commit/488f0dc6f74a8c83fd97ec6ea1bd937bf2df0032))
116
+ - **release:** release 0.7.1 ([7505fb8](https://github.com/boneskull/bupkis/commit/7505fb810a22d0f433af6403c9ff3fa492279884))
112
117
 
113
118
  ## [0.7.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.7.0...bupkis-v0.7.0) (2025-09-22)
114
119
 
115
-
116
120
  ### Bug Fixes
117
121
 
118
- * **release:** release 0.7.0 ([488f0dc](https://github.com/boneskull/bupkis/commit/488f0dc6f74a8c83fd97ec6ea1bd937bf2df0032))
122
+ - **release:** release 0.7.0 ([488f0dc](https://github.com/boneskull/bupkis/commit/488f0dc6f74a8c83fd97ec6ea1bd937bf2df0032))
119
123
 
120
124
  ## [0.7.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.6.0...bupkis-v0.7.0) (2025-09-22)
121
125
 
122
-
123
126
  ### Features
124
127
 
125
- * add proper errors, codes ([1f3b149](https://github.com/boneskull/bupkis/commit/1f3b149e1aa42f90469b96244224fe6736175c25))
126
-
128
+ - add proper errors, codes ([1f3b149](https://github.com/boneskull/bupkis/commit/1f3b149e1aa42f90469b96244224fe6736175c25))
127
129
 
128
130
  ### Bug Fixes
129
131
 
130
- * **guards:** thenable.then must have at least one parameter ([41a987e](https://github.com/boneskull/bupkis/commit/41a987e5ec131b780124bf6459b900bf15643987))
131
- * re-export schema namespace ([497bad7](https://github.com/boneskull/bupkis/commit/497bad7104b6ee5195f5c4d566837e8e34a1d744))
132
+ - **guards:** thenable.then must have at least one parameter ([41a987e](https://github.com/boneskull/bupkis/commit/41a987e5ec131b780124bf6459b900bf15643987))
133
+ - re-export schema namespace ([497bad7](https://github.com/boneskull/bupkis/commit/497bad7104b6ee5195f5c4d566837e8e34a1d744))
132
134
 
133
135
  ## [0.6.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.5.1...bupkis-v0.6.0) (2025-09-22)
134
136
 
135
-
136
137
  ### Features
137
138
 
138
- * **assertions:** create expectAsync.it ([fb4db5a](https://github.com/boneskull/bupkis/commit/fb4db5afc4d2ab6e0affc073ab03c670264a3bbd))
139
-
139
+ - **assertions:** create expectAsync.it ([fb4db5a](https://github.com/boneskull/bupkis/commit/fb4db5afc4d2ab6e0affc073ab03c670264a3bbd))
140
140
 
141
141
  ### Bug Fixes
142
142
 
143
- * **assertions:** "map/set to have size greater than" now expects nonnegative int size ([2355ba0](https://github.com/boneskull/bupkis/commit/2355ba0494baeb5050024e6fadd8a28a900f5dcc))
144
- * **assertions:** narrow some schemas ([fc0b708](https://github.com/boneskull/bupkis/commit/fc0b7086ba898a43f3c9558aff6ede30723e38c6))
143
+ - **assertions:** "map/set to have size greater than" now expects nonnegative int size ([2355ba0](https://github.com/boneskull/bupkis/commit/2355ba0494baeb5050024e6fadd8a28a900f5dcc))
144
+ - **assertions:** narrow some schemas ([fc0b708](https://github.com/boneskull/bupkis/commit/fc0b7086ba898a43f3c9558aff6ede30723e38c6))
145
145
 
146
146
  ## [0.5.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.5.0...bupkis-v0.5.1) (2025-09-18)
147
147
 
148
-
149
148
  ### Bug Fixes
150
149
 
151
- * **errors:** fix AssertionError output ([8fae815](https://github.com/boneskull/bupkis/commit/8fae81585121026b9869489f39ba8c5dfb834834))
150
+ - **errors:** fix AssertionError output ([8fae815](https://github.com/boneskull/bupkis/commit/8fae81585121026b9869489f39ba8c5dfb834834))
152
151
 
153
152
  ## [0.5.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.4.0...bupkis-v0.5.0) (2025-09-18)
154
153
 
155
-
156
154
  ### Features
157
155
 
158
- * **assertions:** implement "to have key" and "to have exact key" ([8bb53cc](https://github.com/boneskull/bupkis/commit/8bb53cc6c6457b52f16f9057b1287005bc9a80df))
159
- * more set/map assertions ([ec9e0f4](https://github.com/boneskull/bupkis/commit/ec9e0f46cd2ec0d0d097b54b3d0d9400fbb79c9d)), closes [#27](https://github.com/boneskull/bupkis/issues/27)
160
- * **util:** implement `get` and `has` functions (like lodash's) supporting keypaths ([8bb53cc](https://github.com/boneskull/bupkis/commit/8bb53cc6c6457b52f16f9057b1287005bc9a80df))
161
-
156
+ - **assertions:** implement "to have key" and "to have exact key" ([8bb53cc](https://github.com/boneskull/bupkis/commit/8bb53cc6c6457b52f16f9057b1287005bc9a80df))
157
+ - more set/map assertions ([ec9e0f4](https://github.com/boneskull/bupkis/commit/ec9e0f46cd2ec0d0d097b54b3d0d9400fbb79c9d)), closes [#27](https://github.com/boneskull/bupkis/issues/27)
158
+ - **util:** implement `get` and `has` functions (like lodash's) supporting keypaths ([8bb53cc](https://github.com/boneskull/bupkis/commit/8bb53cc6c6457b52f16f9057b1287005bc9a80df))
162
159
 
163
160
  ### Bug Fixes
164
161
 
165
- * "to satisfy" now accepts any value for comparison ([ec9e0f4](https://github.com/boneskull/bupkis/commit/ec9e0f46cd2ec0d0d097b54b3d0d9400fbb79c9d))
166
- * **assertions:** widen allowed subjects for "to have keys" assertion ([8bb53cc](https://github.com/boneskull/bupkis/commit/8bb53cc6c6457b52f16f9057b1287005bc9a80df))
167
- * many edge cases ([ec9e0f4](https://github.com/boneskull/bupkis/commit/ec9e0f46cd2ec0d0d097b54b3d0d9400fbb79c9d))
162
+ - "to satisfy" now accepts any value for comparison ([ec9e0f4](https://github.com/boneskull/bupkis/commit/ec9e0f46cd2ec0d0d097b54b3d0d9400fbb79c9d))
163
+ - **assertions:** widen allowed subjects for "to have keys" assertion ([8bb53cc](https://github.com/boneskull/bupkis/commit/8bb53cc6c6457b52f16f9057b1287005bc9a80df))
164
+ - many edge cases ([ec9e0f4](https://github.com/boneskull/bupkis/commit/ec9e0f46cd2ec0d0d097b54b3d0d9400fbb79c9d))
168
165
 
169
166
  ## [0.4.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.3.0...bupkis-v0.4.0) (2025-09-15)
170
167
 
171
-
172
168
  ### Features
173
169
 
174
- * implement embeddable assertions ([3050d1c](https://github.com/boneskull/bupkis/commit/3050d1c0d57048a840449935fd0dfead370b0f11)), closes [#46](https://github.com/boneskull/bupkis/issues/46)
175
-
170
+ - implement embeddable assertions ([3050d1c](https://github.com/boneskull/bupkis/commit/3050d1c0d57048a840449935fd0dfead370b0f11)), closes [#46](https://github.com/boneskull/bupkis/issues/46)
176
171
 
177
172
  ### Bug Fixes
178
173
 
179
- * **schema:** rename ClassSchema to ConstructibleSchema ([#47](https://github.com/boneskull/bupkis/issues/47)) ([c497a24](https://github.com/boneskull/bupkis/commit/c497a249ad6428a8a2082aadfd7796c1e7f8b82f))
174
+ - **schema:** rename ClassSchema to ConstructibleSchema ([#47](https://github.com/boneskull/bupkis/issues/47)) ([c497a24](https://github.com/boneskull/bupkis/commit/c497a249ad6428a8a2082aadfd7796c1e7f8b82f))
180
175
 
181
176
  ## [0.3.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.2.0...bupkis-v0.3.0) (2025-09-14)
182
177
 
183
-
184
178
  ### Features
185
179
 
186
- * **assertions:** add callback assertions ([a879213](https://github.com/boneskull/bupkis/commit/a87921398e63583fe75e8085ea20bb4406d0dbdb))
187
- * **createAssertion:** allow ZodError return types from assertion implementation functions ([0dbd940](https://github.com/boneskull/bupkis/commit/0dbd94028da4761f6c4842fd6411782b20925b82))
188
-
180
+ - **assertions:** add callback assertions ([a879213](https://github.com/boneskull/bupkis/commit/a87921398e63583fe75e8085ea20bb4406d0dbdb))
181
+ - **createAssertion:** allow ZodError return types from assertion implementation functions ([0dbd940](https://github.com/boneskull/bupkis/commit/0dbd94028da4761f6c4842fd6411782b20925b82))
189
182
 
190
183
  ### Bug Fixes
191
184
 
192
- * **assertions:** fix all manner of issues w/r/t "to satisfies" and deep equality ([c0800a3](https://github.com/boneskull/bupkis/commit/c0800a3523876ac6b1b3083325f2bb3dafed8bdc))
193
- * **assertions:** fix edge-cases in "to satisfy" and "deep equal" assertions ([a879213](https://github.com/boneskull/bupkis/commit/a87921398e63583fe75e8085ea20bb4406d0dbdb))
194
- * restore caching for async schema assertions ([8b62d74](https://github.com/boneskull/bupkis/commit/8b62d74db596155a1cf10e2da55dfe251b082589))
185
+ - **assertions:** fix all manner of issues w/r/t "to satisfies" and deep equality ([c0800a3](https://github.com/boneskull/bupkis/commit/c0800a3523876ac6b1b3083325f2bb3dafed8bdc))
186
+ - **assertions:** fix edge-cases in "to satisfy" and "deep equal" assertions ([a879213](https://github.com/boneskull/bupkis/commit/a87921398e63583fe75e8085ea20bb4406d0dbdb))
187
+ - restore caching for async schema assertions ([8b62d74](https://github.com/boneskull/bupkis/commit/8b62d74db596155a1cf10e2da55dfe251b082589))
195
188
 
196
189
  ## [0.2.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.1.2...bupkis-v0.2.0) (2025-09-10)
197
190
 
198
-
199
191
  ### Features
200
192
 
201
- * add "assertions" subpath export ([692421b](https://github.com/boneskull/bupkis/commit/692421b5831a440fce0d0e9fe191a4aeba61a808))
202
- * **assertion:** add alias "to be between" for "to be within" ([6e20646](https://github.com/boneskull/bupkis/commit/6e2064671b0b8e4ca35db55fd8ec90211956f303))
203
-
193
+ - add "assertions" subpath export ([692421b](https://github.com/boneskull/bupkis/commit/692421b5831a440fce0d0e9fe191a4aeba61a808))
194
+ - **assertion:** add alias "to be between" for "to be within" ([6e20646](https://github.com/boneskull/bupkis/commit/6e2064671b0b8e4ca35db55fd8ec90211956f303))
204
195
 
205
196
  ### Bug Fixes
206
197
 
207
- * rename "to resolve to value satisfying" async assertions to "resolve with value satisfying" ([3a39a3e](https://github.com/boneskull/bupkis/commit/3a39a3e18ea2899f8c8ec8cbabdff9475dfbe41d))
198
+ - rename "to resolve to value satisfying" async assertions to "resolve with value satisfying" ([3a39a3e](https://github.com/boneskull/bupkis/commit/3a39a3e18ea2899f8c8ec8cbabdff9475dfbe41d))
208
199
 
209
200
  ## [0.1.2](https://github.com/boneskull/bupkis/compare/bupkis-v0.1.1...bupkis-v0.1.2) (2025-09-09)
210
201
 
211
-
212
202
  ### Bug Fixes
213
203
 
214
- * **util:** isConstructable handles Symbol and BigInt properly ([c13747a](https://github.com/boneskull/bupkis/commit/c13747aa57b5806c38389c1d8347a2966cb17f22))
204
+ - **util:** isConstructable handles Symbol and BigInt properly ([c13747a](https://github.com/boneskull/bupkis/commit/c13747aa57b5806c38389c1d8347a2966cb17f22))
215
205
 
216
206
  ## [0.1.1](https://github.com/boneskull/bupkis/compare/bupkis-v0.1.0...bupkis-v0.1.1) (2025-09-09)
217
207
 
218
-
219
208
  ### Bug Fixes
220
209
 
221
- * actually build before publish ([996c28e](https://github.com/boneskull/bupkis/commit/996c28e223ce488d07ea0b7633829ff25d510be3))
210
+ - actually build before publish ([996c28e](https://github.com/boneskull/bupkis/commit/996c28e223ce488d07ea0b7633829ff25d510be3))
222
211
 
223
212
  ## [0.1.0](https://github.com/boneskull/bupkis/compare/bupkis-v0.0.2...bupkis-v0.1.0) (2025-09-08)
224
213
 
225
-
226
214
  ### Features
227
215
 
228
- * **use:** use() returns an object with a use() in it ([fb383d6](https://github.com/boneskull/bupkis/commit/fb383d6fb2f541085d2300664fe73b25c6249e42))
229
-
216
+ - **use:** use() returns an object with a use() in it ([fb383d6](https://github.com/boneskull/bupkis/commit/fb383d6fb2f541085d2300664fe73b25c6249e42))
230
217
 
231
218
  ### Bug Fixes
232
219
 
233
- * **package:** add description and homepage ([2ff82ea](https://github.com/boneskull/bupkis/commit/2ff82ea715280098f59612ba32da808308aced0e))
220
+ - **package:** add description and homepage ([2ff82ea](https://github.com/boneskull/bupkis/commit/2ff82ea715280098f59612ba32da808308aced0e))
234
221
 
235
222
  ## [0.0.2](https://github.com/boneskull/bupkis/compare/bupkis-v0.0.1...bupkis-v0.0.2) (2025-09-07)
236
223
 
237
-
238
224
  ### Bug Fixes
239
225
 
240
- * add repository to package.json ([4d687a5](https://github.com/boneskull/bupkis/commit/4d687a54c4fb34331508011df14fcfd966bf7ad3))
226
+ - add repository to package.json ([4d687a5](https://github.com/boneskull/bupkis/commit/4d687a54c4fb34331508011df14fcfd966bf7ad3))
241
227
 
242
228
  ## 0.0.1 (2025-09-07)
243
229
 
244
-
245
230
  ### Features
246
231
 
247
- * "initial commit" ([04f234c](https://github.com/boneskull/bupkis/commit/04f234c8f8cea4cef5bae0dc7ccb692eb91d8748))
248
-
232
+ - "initial commit" ([04f234c](https://github.com/boneskull/bupkis/commit/04f234c8f8cea4cef5bae0dc7ccb692eb91d8748))
249
233
 
250
234
  ### Bug Fixes
251
235
 
252
- * remove ref to distfile ([5de9a6b](https://github.com/boneskull/bupkis/commit/5de9a6b6f7bebe3f8898eecc3ae2212e183c3a16))
236
+ - remove ref to distfile ([5de9a6b](https://github.com/boneskull/bupkis/commit/5de9a6b6f7bebe3f8898eecc3ae2212e183c3a16))
package/README.md CHANGED
@@ -242,7 +242,7 @@ npm install bupkis -D
242
242
  - [Unexpected][] is the main inspiration for <strong><span class="bupkis">BUPKIS</span></strong>. However, creating types for this library was exceedingly difficult (and was in fact the first thing we tried). Despite that drawback, we found it exquisitely usable.
243
243
  - [Zod][] is a popular object validation library upon which <strong><span class="bupkis">BUPKIS</span></strong> builds many of its own assertions.
244
244
  - [fast-check][]: Thanks to Nicholas Dubien for this library. There is **no better library** for an assertion library to use to test itself! Well, besides itself, we mean. How about _in addition to_ itself? Yes. Thank you!
245
- - [tshy][] from Isaac Schlueter. Thanks for making dual ESM/CJS packages easy and not too fancy.
245
+ - [zshy][] from Colin McDonnell. Thanks for making dual ESM/CJS packages easy and not too fancy.
246
246
  - [TypeDoc][] it really documents the hell out of TypeScript projects.
247
247
  - [@cjihrig](https://github.com/cjihrig) and other Node.js contributors for the thoughtfulness put into [`node:test`](https://nodejs.org/api/test.html) that make it my current test-runner-of-choice.
248
248
 
@@ -263,7 +263,7 @@ Copyright © 2025 Christopher Hiller. Licensed under [BlueOak-1.0.0](https://blu
263
263
  [custom-assertion-function]: https://bupkis.zip/custom-assertions#static-assertions-function-style
264
264
  [create-a-custom-assertion]: https://bupkis.zip/custom-assertions
265
265
  [assertion-reference]: https://bupkis.zip/assertions
266
- [tshy]: https://github.com/isaacs/tshy
266
+ [zshy]: https://github.com/colinhacks/zshy
267
267
  [typedoc]: https://typedoc.org
268
268
  [embeddable assertions]: https://bupkis.zip/documents/Basic_Usage#embeddable-assertions
269
269
  [unexpected-to-satisfy]: https://unexpected.js.org/assertions/any/to-satisfy/
@@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.BupkisAssertionSchemaAsync = exports.BupkisAssertionFunctionAsync = exports.BupkisAssertionAsync = void 0;
7
7
  const util_1 = require("util");
8
8
  const v4_1 = __importDefault(require("zod/v4"));
9
- const constant_js_1 = require("../constant.js");
10
- const error_js_1 = require("../error.js");
11
- const guards_js_1 = require("../guards.js");
12
- const internal_schema_js_1 = require("../internal-schema.js");
13
- const metadata_js_1 = require("../metadata.js");
14
- const assertion_js_1 = require("./assertion.js");
9
+ const constant_js_1 = require("../constant.cjs");
10
+ const error_js_1 = require("../error.cjs");
11
+ const guards_js_1 = require("../guards.cjs");
12
+ const internal_schema_js_1 = require("../internal-schema.cjs");
13
+ const metadata_js_1 = require("../metadata.cjs");
14
+ const assertion_js_1 = require("./assertion.cjs");
15
15
  class BupkisAssertionAsync extends assertion_js_1.BupkisAssertion {
16
16
  async parseValuesAsync(args) {
17
17
  const { slots } = this;
@@ -97,6 +97,15 @@ class BupkisAssertionFunctionAsync extends BupkisAssertionAsync {
97
97
  throw error;
98
98
  }
99
99
  }
100
+ else if ((0, guards_js_1.isStandardSchema)(result)) {
101
+ const validationResult = result['~standard'].validate(parsedValues[0]);
102
+ const finalResult = validationResult instanceof Promise
103
+ ? await validationResult
104
+ : validationResult;
105
+ if (finalResult.issues) {
106
+ throw this.fromStandardSchemaIssues(finalResult.issues, stackStartFn, parsedValues);
107
+ }
108
+ }
100
109
  else if ((0, guards_js_1.isBoolean)(result)) {
101
110
  if (!result) {
102
111
  throw new error_js_1.AssertionError({
@@ -110,15 +119,27 @@ class BupkisAssertionFunctionAsync extends BupkisAssertionAsync {
110
119
  }
111
120
  else if ((0, internal_schema_js_1.isAssertionParseRequest)(result)) {
112
121
  const { asyncSchema, schema, subject } = result;
113
- let zodResult;
114
- if (schema) {
115
- zodResult = schema.safeParse(subject);
116
- }
117
- else {
118
- zodResult = asyncSchema.safeParse(subject);
122
+ const schemaToUse = schema ?? asyncSchema;
123
+ if ((0, guards_js_1.isZodType)(schemaToUse)) {
124
+ let zodResult;
125
+ if (schema) {
126
+ zodResult = schemaToUse.safeParse(subject);
127
+ }
128
+ else {
129
+ zodResult = await schemaToUse.safeParseAsync(subject);
130
+ }
131
+ if (!zodResult.success) {
132
+ throw this.fromZodError(zodResult.error, stackStartFn, subject);
133
+ }
119
134
  }
120
- if (!zodResult.success) {
121
- throw this.fromZodError(zodResult.error, stackStartFn, subject);
135
+ else if ((0, guards_js_1.isStandardSchema)(schemaToUse)) {
136
+ const validationResult = schemaToUse['~standard'].validate(subject);
137
+ const finalResult = validationResult instanceof Promise
138
+ ? await validationResult
139
+ : validationResult;
140
+ if (finalResult.issues) {
141
+ throw this.fromStandardSchemaIssues(finalResult.issues, stackStartFn, subject);
142
+ }
122
143
  }
123
144
  }
124
145
  else if ((0, internal_schema_js_1.isAssertionFailure)(result)) {
@@ -156,7 +177,9 @@ class BupkisAssertionSchemaAsync extends BupkisAssertionAsync {
156
177
  : undefined;
157
178
  if (cachedValidation && !cachedValidation.success) {
158
179
  // Subject validation failed during parseValuesAsync, throw the cached error
159
- throw this.fromZodError(cachedValidation.error, stackStartFn, parsedValues);
180
+ if ('error' in cachedValidation) {
181
+ throw this.fromZodError(cachedValidation.error, stackStartFn, parsedValues);
182
+ }
160
183
  }
161
184
  // Fall back to standard validation if no cached result
162
185
  const [subject] = parsedValues;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion-async.js","sourceRoot":"","sources":["../../src/assertion/assertion-async.ts"],"names":[],"mappings":";;;;;;AAAA,+BAA+B;AAC/B,gDAAuB;AAEvB,iDAAgD;AAChD,2CAA2E;AAC3E,6CAMsB;AACtB,+DAG+B;AAC/B,iDAAgD;AAehD,kDAAiD;AAEjD,MAAsB,oBAKpB,SAAQ,8BAAmC;IAU3C,KAAK,CAAC,gBAAgB,CACpB,IAAU;QAEV,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,YAAY,GAAU,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAEpB,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACnE,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;gBACjC,SAAS;YACX,CAAC;iBAAM,IAAI,mBAAmB,KAAK,KAAK,EAAE,CAAC;gBACzC,OAAO,mBAAmB,CAAC;YAC7B,CAAC;YAED,8BAA8B;YAC9B,mEAAmE;YACnE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC3D,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvB,UAAU,GAAG,KAAK,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE,KAAK;iBACf,CAAC;YACJ,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QACD,OAAO;YACL,UAAU;YACV,YAAY,EAAE,YAA8C;YAC5D,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF;AA1DD,oDA0DC;AACD;;;;GAIG;AACH;;;;;;;;GAQG;AAEH,MAAa,4BAKX,SAAQ,oBAAwC;IAGvC,KAAK,CAAC,YAAY,CACzB,YAAiC,EACjC,IAAe,EACf,YAAqC,EACrC,YAAkC;QAElC,IAAI,MAAwC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,GAAG,MAAO,IAAI,CAAC,IAAoC,CAAC,IAAI,CAC5D,IAAI;YACJ,iEAAiE;YACjE,GAAI,YAAoB,CACzB,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,yBAAc,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,IAAA,mBAAO,EAAC,GAAG,CAAC,IAAI,GAAG,YAAY,YAAC,CAAC,QAAQ,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC3D,CAAC;YACD,MAAM,IAAI,uCAA4B,CACpC,0CAA0C,IAAI,KAAK,GAAG,EAAE,EACxD,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;QACJ,CAAC;QACD,IAAI,IAAA,qBAAS,EAAC,MAAM,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,IAAA,eAAG,EAAC,KAAK,EAAE,YAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;gBAC7D,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;aAAM,IAAI,IAAA,4BAAgB,EAAC,MAAM,CAAC,EAAE,CAAC;YACpC,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACvE,MAAM,WAAW,GACf,gBAAgB,YAAY,OAAO;gBACjC,CAAC,CAAC,MAAM,gBAAgB;gBACxB,CAAC,CAAC,gBAAgB,CAAC;YAEvB,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,wBAAwB,CACjC,WAAW,CAAC,MAAM,EAClB,YAAY,EACZ,YAAY,CACb,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,IAAA,qBAAS,EAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,yBAAc,CAAC;oBACvB,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,OAAO,EAAE,aAAa,IAAI,0BAA0B,IAAA,cAAO,EAAC,IAAI,CAAC,EAAE;iBACpE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAA,mBAAO,EAAC,MAAM,CAAC,IAAI,MAAM,YAAY,YAAC,CAAC,QAAQ,EAAE,CAAC;YAC3D,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QAC9D,CAAC;aAAM,IAAI,IAAA,4CAAuB,EAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAChD,MAAM,WAAW,GAAG,MAAM,IAAI,WAAW,CAAC;YAE1C,IAAI,IAAA,qBAAS,EAAC,WAAW,CAAC,EAAE,CAAC;gBAC3B,IAAI,SAAwC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACN,SAAS,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACxD,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;iBAAM,IAAI,IAAA,4BAAgB,EAAC,WAAW,CAAC,EAAE,CAAC;gBACzC,MAAM,gBAAgB,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACpE,MAAM,WAAW,GACf,gBAAgB,YAAY,OAAO;oBACjC,CAAC,CAAC,MAAM,gBAAgB;oBACxB,CAAC,CAAC,gBAAgB,CAAC;gBAEvB,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,wBAAwB,CACjC,WAAW,CAAC,MAAM,EAClB,YAAY,EACZ,OAAO,CACR,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,IAAA,uCAAkB,EAAC,MAAM,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,yBAAc,CAAC;gBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,OAAO,EACL,MAAM,CAAC,OAAO;oBACd,aAAa,IAAI,0BAA0B,IAAA,cAAO,EAAC,IAAI,CAAC,EAAE;aAC7D,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,MAAiB,EAAE,CAAC;YAC7B,MAAM,IAAI,uCAA4B,CACpC,sCAAsC,IAAI,kDAAkD,EAC5F,EAAE,MAAM,EAAE,CACX,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA9GD,oEA8GC;AAED;;;;;;;;;;;GAWG;AAEH,MAAa,0BAKX,SAAQ,oBAAwC;IAGvC,KAAK,CAAC,YAAY,CACzB,YAAiC,EACjC,KAAgB,EAChB,YAAqC,EACrC,WAAiC;QAEjC,kEAAkE;QAClE,MAAM,gBAAgB,GAAG,WAAW,EAAE,OAAO;YAC3C,CAAC,CAAC,WAAW,CAAC,uBAAuB;YACrC,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAClD,4EAA4E;YAC5E,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAC;gBAChC,MAAM,IAAI,CAAC,YAAY,CACrB,gBAAgB,CAAC,KAAK,EACtB,YAAY,EACZ,YAAY,CACb,CAAC;YACJ,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,MAAM,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAA,eAAG,EAAC,KAAK,EAAE,YAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YACD,oBAAoB;YACpB,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,gBAAgB,CAC7B,IAAU;QAEV,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,YAAY,GAAU,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,uBAA8E,CAAC;QAEnF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACnE,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;gBACjC,SAAS;YACX,CAAC;iBAAM,IAAI,mBAAmB,KAAK,KAAK,EAAE,CAAC;gBACzC,OAAO,mBAAmB,CAAC;YAC7B,CAAC;YAED,kFAAkF;YAClF,IACE,CAAC,KAAK,CAAC;gBACP,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC;gBACxD,IAAI,CAAC,uBAAuB,EAAE,EAC9B,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC/C,uBAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBAC1D,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB;gBAClD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,IAAA,eAAG,EAAC,KAAK,EAAE,YAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC3B,uBAAuB,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;wBACpD,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,oCAAoC;oBAC9D,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC,CAAC,0BAA0B;oBACzC,CAAC;gBACH,CAAC;gBACD,UAAU,GAAG,KAAK,CAAC,CAAC,mDAAmD;gBACvE,SAAS;YACX,CAAC;YAED,mDAAmD;YACnD,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC3D,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvB,UAAU,GAAG,KAAK,CAAC;gBACnB,SAAS;YACX,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE,KAAK;iBACf,CAAC;YACJ,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAA+B;YACzC,UAAU;YACV,YAAY,EAAE,YAA8C;YAC5D,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,4DAA4D;QAC5D,IAAI,uBAAuB,EAAE,CAAC;YAC5B,MAAM,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QAC3D,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,uBAAuB;QAC7B,2EAA2E;QAC3E,qCAAqC;QACrC,MAAM,cAAc,GAClB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS;gBACpC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;QAEvC,MAAM,wBAAwB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;YAClE,MAAM,IAAI,GAAG,4BAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5C,OAAO,4BAAc,IAAI,IAAI,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,OAAO,cAAc,IAAI,wBAAwB,CAAC;IACpD,CAAC;CACF;AA1ID,gEA0IC"}
@@ -1,5 +1,5 @@
1
- import { type AssertionAsync, type AssertionFunctionAsync, type AssertionImplAsync, type AssertionImplFnAsync, type AssertionImplSchemaAsync, type AssertionParts, type AssertionSchemaAsync, type AssertionSlots, type ParsedResult, type ParsedValues } from './assertion-types.js';
2
- import { BupkisAssertion } from './assertion.js';
1
+ import { type AssertionAsync, type AssertionFunctionAsync, type AssertionImplAsync, type AssertionImplFnAsync, type AssertionImplSchemaAsync, type AssertionParts, type AssertionSchemaAsync, type AssertionSlots, type ParsedResult, type ParsedValues } from "./assertion-types.cjs";
2
+ import { BupkisAssertion } from "./assertion.cjs";
3
3
  export declare abstract class BupkisAssertionAsync<Parts extends AssertionParts, Impl extends AssertionImplAsync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertion<Parts, Impl, Slots> implements AssertionAsync<Parts, Impl, Slots> {
4
4
  abstract executeAsync(parsedValues: ParsedValues<Parts>, args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): Promise<void>;
5
5
  parseValuesAsync<Args extends readonly unknown[]>(args: Args): Promise<ParsedResult<Parts>>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion-async.d.ts","sourceRoot":"","sources":["../../src/assertion/assertion-async.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAEzB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EAClB,8BAA6B;AAC9B,OAAO,EAAE,eAAe,EAAE,wBAAuB;AAEjD,8BAAsB,oBAAoB,CACtC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,kBAAkB,CAAC,KAAK,CAAC,EACtC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC1C,YAAW,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE7C,QAAQ,CAAC,YAAY,CACnB,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IAEV,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACpD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;CAyChC;AACD;;;;GAIG;AACH;;;;;;;;GAQG;AAEH,qBAAa,4BAA4B,CACrC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,oBAAoB,CAAC,KAAK,CAAC,EACxC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC/C,YAAW,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEtC,YAAY,CACzB,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC;CAiGjB;AAED;;;;;;;;;;;GAWG;AAEH,qBAAa,0BAA0B,CACnC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,wBAAwB,CAAC,KAAK,CAAC,EAC5C,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC/C,YAAW,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEpC,YAAY,CACzB,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,KAAK,EAAE,OAAO,EAAE,EAChB,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IA8BD,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EAC7D,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAyE/B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAehC"}
@@ -1,5 +1,5 @@
1
- import { type AssertionAsync, type AssertionFunctionAsync, type AssertionImplAsync, type AssertionImplFnAsync, type AssertionImplSchemaAsync, type AssertionParts, type AssertionSchemaAsync, type AssertionSlots, type ParsedResult, type ParsedValues } from './assertion-types.js';
2
- import { BupkisAssertion } from './assertion.js';
1
+ import { type AssertionAsync, type AssertionFunctionAsync, type AssertionImplAsync, type AssertionImplFnAsync, type AssertionImplSchemaAsync, type AssertionParts, type AssertionSchemaAsync, type AssertionSlots, type ParsedResult, type ParsedValues } from "./assertion-types.js";
2
+ import { BupkisAssertion } from "./assertion.js";
3
3
  export declare abstract class BupkisAssertionAsync<Parts extends AssertionParts, Impl extends AssertionImplAsync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertion<Parts, Impl, Slots> implements AssertionAsync<Parts, Impl, Slots> {
4
4
  abstract executeAsync(parsedValues: ParsedValues<Parts>, args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): Promise<void>;
5
5
  parseValuesAsync<Args extends readonly unknown[]>(args: Args): Promise<ParsedResult<Parts>>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion-async.d.ts","sourceRoot":"","sources":["../../src/assertion/assertion-async.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAEzB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EAClB,6BAA6B;AAC9B,OAAO,EAAE,eAAe,EAAE,uBAAuB;AAEjD,8BAAsB,oBAAoB,CACtC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,kBAAkB,CAAC,KAAK,CAAC,EACtC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC1C,YAAW,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE7C,QAAQ,CAAC,YAAY,CACnB,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IAEV,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACpD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;CAyChC;AACD;;;;GAIG;AACH;;;;;;;;GAQG;AAEH,qBAAa,4BAA4B,CACrC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,oBAAoB,CAAC,KAAK,CAAC,EACxC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC/C,YAAW,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEtC,YAAY,CACzB,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC;CAiGjB;AAED;;;;;;;;;;;GAWG;AAEH,qBAAa,0BAA0B,CACnC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,wBAAwB,CAAC,KAAK,CAAC,EAC5C,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC/C,YAAW,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEpC,YAAY,CACzB,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,KAAK,EAAE,OAAO,EAAE,EAChB,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IA8BD,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EAC7D,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAyE/B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAehC"}
@@ -1,11 +1,11 @@
1
1
  import { inspect } from 'util';
2
2
  import z from 'zod/v4';
3
- import { kStringLiteral } from '../constant.js';
4
- import { AssertionError, AssertionImplementationError } from '../error.js';
5
- import { isA, isBoolean, isError, isZodType } from '../guards.js';
6
- import { isAssertionFailure, isAssertionParseRequest, } from '../internal-schema.js';
7
- import { BupkisRegistry } from '../metadata.js';
8
- import { BupkisAssertion } from './assertion.js';
3
+ import { kStringLiteral } from "../constant.js";
4
+ import { AssertionError, AssertionImplementationError } from "../error.js";
5
+ import { isA, isBoolean, isError, isStandardSchema, isZodType, } from "../guards.js";
6
+ import { isAssertionFailure, isAssertionParseRequest, } from "../internal-schema.js";
7
+ import { BupkisRegistry } from "../metadata.js";
8
+ import { BupkisAssertion } from "./assertion.js";
9
9
  export class BupkisAssertionAsync extends BupkisAssertion {
10
10
  async parseValuesAsync(args) {
11
11
  const { slots } = this;
@@ -90,6 +90,15 @@ export class BupkisAssertionFunctionAsync extends BupkisAssertionAsync {
90
90
  throw error;
91
91
  }
92
92
  }
93
+ else if (isStandardSchema(result)) {
94
+ const validationResult = result['~standard'].validate(parsedValues[0]);
95
+ const finalResult = validationResult instanceof Promise
96
+ ? await validationResult
97
+ : validationResult;
98
+ if (finalResult.issues) {
99
+ throw this.fromStandardSchemaIssues(finalResult.issues, stackStartFn, parsedValues);
100
+ }
101
+ }
93
102
  else if (isBoolean(result)) {
94
103
  if (!result) {
95
104
  throw new AssertionError({
@@ -103,15 +112,27 @@ export class BupkisAssertionFunctionAsync extends BupkisAssertionAsync {
103
112
  }
104
113
  else if (isAssertionParseRequest(result)) {
105
114
  const { asyncSchema, schema, subject } = result;
106
- let zodResult;
107
- if (schema) {
108
- zodResult = schema.safeParse(subject);
109
- }
110
- else {
111
- zodResult = asyncSchema.safeParse(subject);
115
+ const schemaToUse = schema ?? asyncSchema;
116
+ if (isZodType(schemaToUse)) {
117
+ let zodResult;
118
+ if (schema) {
119
+ zodResult = schemaToUse.safeParse(subject);
120
+ }
121
+ else {
122
+ zodResult = await schemaToUse.safeParseAsync(subject);
123
+ }
124
+ if (!zodResult.success) {
125
+ throw this.fromZodError(zodResult.error, stackStartFn, subject);
126
+ }
112
127
  }
113
- if (!zodResult.success) {
114
- throw this.fromZodError(zodResult.error, stackStartFn, subject);
128
+ else if (isStandardSchema(schemaToUse)) {
129
+ const validationResult = schemaToUse['~standard'].validate(subject);
130
+ const finalResult = validationResult instanceof Promise
131
+ ? await validationResult
132
+ : validationResult;
133
+ if (finalResult.issues) {
134
+ throw this.fromStandardSchemaIssues(finalResult.issues, stackStartFn, subject);
135
+ }
115
136
  }
116
137
  }
117
138
  else if (isAssertionFailure(result)) {
@@ -148,7 +169,9 @@ export class BupkisAssertionSchemaAsync extends BupkisAssertionAsync {
148
169
  : undefined;
149
170
  if (cachedValidation && !cachedValidation.success) {
150
171
  // Subject validation failed during parseValuesAsync, throw the cached error
151
- throw this.fromZodError(cachedValidation.error, stackStartFn, parsedValues);
172
+ if ('error' in cachedValidation) {
173
+ throw this.fromZodError(cachedValidation.error, stackStartFn, parsedValues);
174
+ }
152
175
  }
153
176
  // Fall back to standard validation if no cached result
154
177
  const [subject] = parsedValues;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertion-async.js","sourceRoot":"","sources":["../../src/assertion/assertion-async.ts"],"names":[],"mappings":"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"}