structured-outputs 0.1.0-beta.20 → 0.1.0-beta.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (371) hide show
  1. package/README.md +46 -40
  2. package/esm/ResponseFormat.d.ts +21 -0
  3. package/esm/ResponseFormat.d.ts.map +1 -0
  4. package/esm/ResponseFormat.js +43 -19
  5. package/esm/ResponseFormat.js.map +1 -1
  6. package/{types → esm}/Tool.d.ts +1 -0
  7. package/esm/Tool.d.ts.map +1 -0
  8. package/esm/Tool.js +1 -0
  9. package/esm/Tool.js.map +1 -1
  10. package/esm/oai.d.ts +5 -0
  11. package/esm/oai.d.ts.map +1 -0
  12. package/esm/oai.js +2 -0
  13. package/esm/oai.js.map +1 -0
  14. package/esm/types/Ref.d.ts.map +1 -0
  15. package/esm/types/Ref.js +6 -3
  16. package/esm/types/Ref.js.map +1 -1
  17. package/esm/types/RootTy.d.ts +8 -0
  18. package/esm/types/RootTy.d.ts.map +1 -0
  19. package/esm/types/RootTy.js +5 -7
  20. package/esm/types/RootTy.js.map +1 -1
  21. package/esm/types/Ty.d.ts +23 -0
  22. package/esm/types/Ty.d.ts.map +1 -0
  23. package/esm/types/Ty.js +5 -9
  24. package/esm/types/Ty.js.map +1 -1
  25. package/{types → esm}/types/array.d.ts +1 -1
  26. package/{types → esm}/types/array.d.ts.map +1 -1
  27. package/esm/types/array.js +1 -2
  28. package/esm/types/array.js.map +1 -1
  29. package/{types → esm}/types/constant.d.ts.map +1 -1
  30. package/esm/types/constant.js +1 -2
  31. package/esm/types/constant.js.map +1 -1
  32. package/{types → esm}/types/constantUnion.d.ts.map +1 -1
  33. package/esm/types/constantUnion.js +16 -19
  34. package/esm/types/constantUnion.js.map +1 -1
  35. package/{types → esm}/types/mod.d.ts +3 -3
  36. package/esm/types/mod.d.ts.map +1 -0
  37. package/esm/types/mod.js +3 -3
  38. package/esm/types/mod.js.map +1 -1
  39. package/{types → esm}/types/object.d.ts +2 -2
  40. package/{types → esm}/types/object.d.ts.map +1 -1
  41. package/esm/types/object.js +1 -2
  42. package/esm/types/object.js.map +1 -1
  43. package/{types/types/leaves.d.ts → esm/types/primitives.d.ts} +1 -1
  44. package/esm/types/primitives.d.ts.map +1 -0
  45. package/esm/types/primitives.js +14 -0
  46. package/esm/types/primitives.js.map +1 -0
  47. package/esm/types/std/Option.js +1 -1
  48. package/esm/types/std/Option.js.map +1 -1
  49. package/{types → esm}/types/std/Wrapper.d.ts +0 -1
  50. package/esm/types/std/Wrapper.d.ts.map +1 -0
  51. package/esm/types/std/Wrapper.js.map +1 -1
  52. package/{types → esm}/types/taggedUnion.d.ts +2 -2
  53. package/{types → esm}/types/taggedUnion.d.ts.map +1 -1
  54. package/esm/types/taggedUnion.js +1 -2
  55. package/esm/types/taggedUnion.js.map +1 -1
  56. package/package.json +6 -11
  57. package/src/ResponseFormat.ts +48 -41
  58. package/src/Tool.ts +1 -0
  59. package/src/oai.ts +5 -0
  60. package/src/types/Ref.ts +7 -4
  61. package/src/types/RootTy.ts +11 -13
  62. package/src/types/Ty.ts +23 -30
  63. package/src/types/array.ts +2 -3
  64. package/src/types/constant.ts +1 -2
  65. package/src/types/constantUnion.ts +16 -19
  66. package/src/types/mod.ts +3 -3
  67. package/src/types/object.ts +4 -6
  68. package/src/types/primitives.ts +17 -0
  69. package/src/types/std/Option.ts +1 -1
  70. package/src/types/std/Wrapper.ts +0 -2
  71. package/src/types/taggedUnion.ts +3 -4
  72. package/esm/_dnt.shims.js +0 -58
  73. package/esm/_dnt.shims.js.map +0 -1
  74. package/esm/deps/jsr.io/@std/assert/1.0.8/almost_equals.js +0 -47
  75. package/esm/deps/jsr.io/@std/assert/1.0.8/almost_equals.js.map +0 -1
  76. package/esm/deps/jsr.io/@std/assert/1.0.8/array_includes.js +0 -47
  77. package/esm/deps/jsr.io/@std/assert/1.0.8/array_includes.js.map +0 -1
  78. package/esm/deps/jsr.io/@std/assert/1.0.8/assert.js +0 -23
  79. package/esm/deps/jsr.io/@std/assert/1.0.8/assert.js.map +0 -1
  80. package/esm/deps/jsr.io/@std/assert/1.0.8/assertion_error.js +0 -31
  81. package/esm/deps/jsr.io/@std/assert/1.0.8/assertion_error.js.map +0 -1
  82. package/esm/deps/jsr.io/@std/assert/1.0.8/equal.js +0 -184
  83. package/esm/deps/jsr.io/@std/assert/1.0.8/equal.js.map +0 -1
  84. package/esm/deps/jsr.io/@std/assert/1.0.8/equals.js +0 -46
  85. package/esm/deps/jsr.io/@std/assert/1.0.8/equals.js.map +0 -1
  86. package/esm/deps/jsr.io/@std/assert/1.0.8/exists.js +0 -28
  87. package/esm/deps/jsr.io/@std/assert/1.0.8/exists.js.map +0 -1
  88. package/esm/deps/jsr.io/@std/assert/1.0.8/fail.js +0 -21
  89. package/esm/deps/jsr.io/@std/assert/1.0.8/fail.js.map +0 -1
  90. package/esm/deps/jsr.io/@std/assert/1.0.8/false.js +0 -23
  91. package/esm/deps/jsr.io/@std/assert/1.0.8/false.js.map +0 -1
  92. package/esm/deps/jsr.io/@std/assert/1.0.8/greater.js +0 -30
  93. package/esm/deps/jsr.io/@std/assert/1.0.8/greater.js.map +0 -1
  94. package/esm/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.js +0 -30
  95. package/esm/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.js.map +0 -1
  96. package/esm/deps/jsr.io/@std/assert/1.0.8/instance_of.js +0 -53
  97. package/esm/deps/jsr.io/@std/assert/1.0.8/instance_of.js.map +0 -1
  98. package/esm/deps/jsr.io/@std/assert/1.0.8/is_error.js +0 -54
  99. package/esm/deps/jsr.io/@std/assert/1.0.8/is_error.js.map +0 -1
  100. package/esm/deps/jsr.io/@std/assert/1.0.8/less.js +0 -29
  101. package/esm/deps/jsr.io/@std/assert/1.0.8/less.js.map +0 -1
  102. package/esm/deps/jsr.io/@std/assert/1.0.8/less_or_equal.js +0 -30
  103. package/esm/deps/jsr.io/@std/assert/1.0.8/less_or_equal.js.map +0 -1
  104. package/esm/deps/jsr.io/@std/assert/1.0.8/match.js +0 -27
  105. package/esm/deps/jsr.io/@std/assert/1.0.8/match.js.map +0 -1
  106. package/esm/deps/jsr.io/@std/assert/1.0.8/mod.js +0 -46
  107. package/esm/deps/jsr.io/@std/assert/1.0.8/mod.js.map +0 -1
  108. package/esm/deps/jsr.io/@std/assert/1.0.8/not_equals.js +0 -33
  109. package/esm/deps/jsr.io/@std/assert/1.0.8/not_equals.js.map +0 -1
  110. package/esm/deps/jsr.io/@std/assert/1.0.8/not_instance_of.js +0 -30
  111. package/esm/deps/jsr.io/@std/assert/1.0.8/not_instance_of.js.map +0 -1
  112. package/esm/deps/jsr.io/@std/assert/1.0.8/not_match.js +0 -27
  113. package/esm/deps/jsr.io/@std/assert/1.0.8/not_match.js.map +0 -1
  114. package/esm/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.js +0 -33
  115. package/esm/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.js.map +0 -1
  116. package/esm/deps/jsr.io/@std/assert/1.0.8/object_match.js +0 -160
  117. package/esm/deps/jsr.io/@std/assert/1.0.8/object_match.js.map +0 -1
  118. package/esm/deps/jsr.io/@std/assert/1.0.8/rejects.js +0 -54
  119. package/esm/deps/jsr.io/@std/assert/1.0.8/rejects.js.map +0 -1
  120. package/esm/deps/jsr.io/@std/assert/1.0.8/strict_equals.js +0 -58
  121. package/esm/deps/jsr.io/@std/assert/1.0.8/strict_equals.js.map +0 -1
  122. package/esm/deps/jsr.io/@std/assert/1.0.8/string_includes.js +0 -27
  123. package/esm/deps/jsr.io/@std/assert/1.0.8/string_includes.js.map +0 -1
  124. package/esm/deps/jsr.io/@std/assert/1.0.8/throws.js +0 -45
  125. package/esm/deps/jsr.io/@std/assert/1.0.8/throws.js.map +0 -1
  126. package/esm/deps/jsr.io/@std/assert/1.0.8/unimplemented.js +0 -21
  127. package/esm/deps/jsr.io/@std/assert/1.0.8/unimplemented.js.map +0 -1
  128. package/esm/deps/jsr.io/@std/assert/1.0.8/unreachable.js +0 -21
  129. package/esm/deps/jsr.io/@std/assert/1.0.8/unreachable.js.map +0 -1
  130. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.js +0 -111
  131. package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.js.map +0 -1
  132. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.js +0 -277
  133. package/esm/deps/jsr.io/@std/internal/1.0.5/diff.js.map +0 -1
  134. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.js +0 -180
  135. package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.js.map +0 -1
  136. package/esm/deps/jsr.io/@std/internal/1.0.5/format.js +0 -38
  137. package/esm/deps/jsr.io/@std/internal/1.0.5/format.js.map +0 -1
  138. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.js +0 -208
  139. package/esm/deps/jsr.io/@std/internal/1.0.5/styles.js.map +0 -1
  140. package/esm/deps/jsr.io/@std/internal/1.0.5/types.js +0 -3
  141. package/esm/deps/jsr.io/@std/internal/1.0.5/types.js.map +0 -1
  142. package/esm/types/leaves.js +0 -18
  143. package/esm/types/leaves.js.map +0 -1
  144. package/src/_dnt.shims.ts +0 -60
  145. package/src/deps/jsr.io/@std/assert/1.0.8/almost_equals.ts +0 -55
  146. package/src/deps/jsr.io/@std/assert/1.0.8/array_includes.ts +0 -57
  147. package/src/deps/jsr.io/@std/assert/1.0.8/assert.ts +0 -23
  148. package/src/deps/jsr.io/@std/assert/1.0.8/assertion_error.ts +0 -31
  149. package/src/deps/jsr.io/@std/assert/1.0.8/equal.ts +0 -210
  150. package/src/deps/jsr.io/@std/assert/1.0.8/equals.ts +0 -52
  151. package/src/deps/jsr.io/@std/assert/1.0.8/exists.ts +0 -31
  152. package/src/deps/jsr.io/@std/assert/1.0.8/fail.ts +0 -21
  153. package/src/deps/jsr.io/@std/assert/1.0.8/false.ts +0 -26
  154. package/src/deps/jsr.io/@std/assert/1.0.8/greater.ts +0 -30
  155. package/src/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.ts +0 -36
  156. package/src/deps/jsr.io/@std/assert/1.0.8/instance_of.ts +0 -64
  157. package/src/deps/jsr.io/@std/assert/1.0.8/is_error.ts +0 -65
  158. package/src/deps/jsr.io/@std/assert/1.0.8/less.ts +0 -29
  159. package/src/deps/jsr.io/@std/assert/1.0.8/less_or_equal.ts +0 -36
  160. package/src/deps/jsr.io/@std/assert/1.0.8/match.ts +0 -30
  161. package/src/deps/jsr.io/@std/assert/1.0.8/mod.ts +0 -47
  162. package/src/deps/jsr.io/@std/assert/1.0.8/not_equals.ts +0 -36
  163. package/src/deps/jsr.io/@std/assert/1.0.8/not_instance_of.ts +0 -33
  164. package/src/deps/jsr.io/@std/assert/1.0.8/not_match.ts +0 -30
  165. package/src/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.ts +0 -42
  166. package/src/deps/jsr.io/@std/assert/1.0.8/object_match.ts +0 -202
  167. package/src/deps/jsr.io/@std/assert/1.0.8/rejects.ts +0 -123
  168. package/src/deps/jsr.io/@std/assert/1.0.8/strict_equals.ts +0 -67
  169. package/src/deps/jsr.io/@std/assert/1.0.8/string_includes.ts +0 -30
  170. package/src/deps/jsr.io/@std/assert/1.0.8/throws.ts +0 -111
  171. package/src/deps/jsr.io/@std/assert/1.0.8/unimplemented.ts +0 -21
  172. package/src/deps/jsr.io/@std/assert/1.0.8/unreachable.ts +0 -21
  173. package/src/deps/jsr.io/@std/internal/1.0.5/build_message.ts +0 -134
  174. package/src/deps/jsr.io/@std/internal/1.0.5/diff.ts +0 -317
  175. package/src/deps/jsr.io/@std/internal/1.0.5/diff_str.ts +0 -204
  176. package/src/deps/jsr.io/@std/internal/1.0.5/format.ts +0 -39
  177. package/src/deps/jsr.io/@std/internal/1.0.5/styles.ts +0 -233
  178. package/src/deps/jsr.io/@std/internal/1.0.5/types.ts +0 -18
  179. package/src/types/leaves.ts +0 -21
  180. package/types/ResponseFormat.d.ts +0 -26
  181. package/types/ResponseFormat.d.ts.map +0 -1
  182. package/types/Tool.d.ts.map +0 -1
  183. package/types/_dnt.shims.d.ts +0 -2
  184. package/types/_dnt.shims.d.ts.map +0 -1
  185. package/types/deps/jsr.io/@std/assert/1.0.8/almost_equals.d.ts +0 -29
  186. package/types/deps/jsr.io/@std/assert/1.0.8/almost_equals.d.ts.map +0 -1
  187. package/types/deps/jsr.io/@std/assert/1.0.8/array_includes.d.ts +0 -24
  188. package/types/deps/jsr.io/@std/assert/1.0.8/array_includes.d.ts.map +0 -1
  189. package/types/deps/jsr.io/@std/assert/1.0.8/assert.d.ts +0 -16
  190. package/types/deps/jsr.io/@std/assert/1.0.8/assert.d.ts.map +0 -1
  191. package/types/deps/jsr.io/@std/assert/1.0.8/assertion_error.d.ts +0 -26
  192. package/types/deps/jsr.io/@std/assert/1.0.8/assertion_error.d.ts.map +0 -1
  193. package/types/deps/jsr.io/@std/assert/1.0.8/equal.d.ts +0 -17
  194. package/types/deps/jsr.io/@std/assert/1.0.8/equal.d.ts.map +0 -1
  195. package/types/deps/jsr.io/@std/assert/1.0.8/equals.d.ts +0 -22
  196. package/types/deps/jsr.io/@std/assert/1.0.8/equals.d.ts.map +0 -1
  197. package/types/deps/jsr.io/@std/assert/1.0.8/exists.d.ts +0 -18
  198. package/types/deps/jsr.io/@std/assert/1.0.8/exists.d.ts.map +0 -1
  199. package/types/deps/jsr.io/@std/assert/1.0.8/fail.d.ts +0 -15
  200. package/types/deps/jsr.io/@std/assert/1.0.8/fail.d.ts.map +0 -1
  201. package/types/deps/jsr.io/@std/assert/1.0.8/false.d.ts +0 -18
  202. package/types/deps/jsr.io/@std/assert/1.0.8/false.d.ts.map +0 -1
  203. package/types/deps/jsr.io/@std/assert/1.0.8/greater.d.ts +0 -20
  204. package/types/deps/jsr.io/@std/assert/1.0.8/greater.d.ts.map +0 -1
  205. package/types/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.d.ts +0 -20
  206. package/types/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.d.ts.map +0 -1
  207. package/types/deps/jsr.io/@std/assert/1.0.8/instance_of.d.ts +0 -23
  208. package/types/deps/jsr.io/@std/assert/1.0.8/instance_of.d.ts.map +0 -1
  209. package/types/deps/jsr.io/@std/assert/1.0.8/is_error.d.ts +0 -25
  210. package/types/deps/jsr.io/@std/assert/1.0.8/is_error.d.ts.map +0 -1
  211. package/types/deps/jsr.io/@std/assert/1.0.8/less.d.ts +0 -19
  212. package/types/deps/jsr.io/@std/assert/1.0.8/less.d.ts.map +0 -1
  213. package/types/deps/jsr.io/@std/assert/1.0.8/less_or_equal.d.ts +0 -20
  214. package/types/deps/jsr.io/@std/assert/1.0.8/less_or_equal.d.ts.map +0 -1
  215. package/types/deps/jsr.io/@std/assert/1.0.8/match.d.ts +0 -18
  216. package/types/deps/jsr.io/@std/assert/1.0.8/match.d.ts.map +0 -1
  217. package/types/deps/jsr.io/@std/assert/1.0.8/mod.d.ts +0 -44
  218. package/types/deps/jsr.io/@std/assert/1.0.8/mod.d.ts.map +0 -1
  219. package/types/deps/jsr.io/@std/assert/1.0.8/not_equals.d.ts +0 -21
  220. package/types/deps/jsr.io/@std/assert/1.0.8/not_equals.d.ts.map +0 -1
  221. package/types/deps/jsr.io/@std/assert/1.0.8/not_instance_of.d.ts +0 -20
  222. package/types/deps/jsr.io/@std/assert/1.0.8/not_instance_of.d.ts.map +0 -1
  223. package/types/deps/jsr.io/@std/assert/1.0.8/not_match.d.ts +0 -18
  224. package/types/deps/jsr.io/@std/assert/1.0.8/not_match.d.ts.map +0 -1
  225. package/types/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.d.ts +0 -23
  226. package/types/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.d.ts.map +0 -1
  227. package/types/deps/jsr.io/@std/assert/1.0.8/object_match.d.ts +0 -28
  228. package/types/deps/jsr.io/@std/assert/1.0.8/object_match.d.ts.map +0 -1
  229. package/types/deps/jsr.io/@std/assert/1.0.8/rejects.d.ts +0 -42
  230. package/types/deps/jsr.io/@std/assert/1.0.8/rejects.d.ts.map +0 -1
  231. package/types/deps/jsr.io/@std/assert/1.0.8/strict_equals.d.ts +0 -24
  232. package/types/deps/jsr.io/@std/assert/1.0.8/strict_equals.d.ts.map +0 -1
  233. package/types/deps/jsr.io/@std/assert/1.0.8/string_includes.d.ts +0 -18
  234. package/types/deps/jsr.io/@std/assert/1.0.8/string_includes.d.ts.map +0 -1
  235. package/types/deps/jsr.io/@std/assert/1.0.8/throws.d.ts +0 -45
  236. package/types/deps/jsr.io/@std/assert/1.0.8/throws.d.ts.map +0 -1
  237. package/types/deps/jsr.io/@std/assert/1.0.8/unimplemented.d.ts +0 -15
  238. package/types/deps/jsr.io/@std/assert/1.0.8/unimplemented.d.ts.map +0 -1
  239. package/types/deps/jsr.io/@std/assert/1.0.8/unreachable.d.ts +0 -15
  240. package/types/deps/jsr.io/@std/assert/1.0.8/unreachable.d.ts.map +0 -1
  241. package/types/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts +0 -82
  242. package/types/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
  243. package/types/deps/jsr.io/@std/internal/1.0.5/diff.d.ts +0 -140
  244. package/types/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
  245. package/types/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts +0 -99
  246. package/types/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
  247. package/types/deps/jsr.io/@std/internal/1.0.5/format.d.ts +0 -2
  248. package/types/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
  249. package/types/deps/jsr.io/@std/internal/1.0.5/styles.d.ts +0 -159
  250. package/types/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
  251. package/types/deps/jsr.io/@std/internal/1.0.5/types.d.ts +0 -16
  252. package/types/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
  253. package/types/types/Ref.d.ts.map +0 -1
  254. package/types/types/RootTy.d.ts +0 -8
  255. package/types/types/RootTy.d.ts.map +0 -1
  256. package/types/types/Ty.d.ts +0 -27
  257. package/types/types/Ty.d.ts.map +0 -1
  258. package/types/types/leaves.d.ts.map +0 -1
  259. package/types/types/mod.d.ts.map +0 -1
  260. package/types/types/std/Wrapper.d.ts.map +0 -1
  261. /package/{types → esm}/_dnt.polyfills.d.ts +0 -0
  262. /package/{types → esm}/_dnt.polyfills.d.ts.map +0 -0
  263. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/_utils.d.ts +0 -0
  264. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/_utils.d.ts.map +0 -0
  265. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.d.ts +0 -0
  266. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.d.ts.map +0 -0
  267. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_by.d.ts +0 -0
  268. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_by.d.ts.map +0 -0
  269. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_with.d.ts +0 -0
  270. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_with.d.ts.map +0 -0
  271. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/chunk.d.ts +0 -0
  272. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/chunk.d.ts.map +0 -0
  273. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/deep_merge.d.ts +0 -0
  274. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/deep_merge.d.ts.map +0 -0
  275. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct.d.ts +0 -0
  276. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct.d.ts.map +0 -0
  277. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct_by.d.ts +0 -0
  278. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct_by.d.ts.map +0 -0
  279. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_last_while.d.ts +0 -0
  280. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_last_while.d.ts.map +0 -0
  281. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_while.d.ts +0 -0
  282. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_while.d.ts.map +0 -0
  283. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_entries.d.ts +0 -0
  284. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_entries.d.ts.map +0 -0
  285. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_keys.d.ts +0 -0
  286. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_keys.d.ts.map +0 -0
  287. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_values.d.ts +0 -0
  288. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_values.d.ts.map +0 -0
  289. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/find_single.d.ts +0 -0
  290. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/find_single.d.ts.map +0 -0
  291. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.d.ts +0 -0
  292. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.d.ts.map +0 -0
  293. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/includes_value.d.ts +0 -0
  294. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/includes_value.d.ts.map +0 -0
  295. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/intersect.d.ts +0 -0
  296. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/intersect.d.ts.map +0 -0
  297. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert.d.ts +0 -0
  298. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert.d.ts.map +0 -0
  299. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert_by.d.ts +0 -0
  300. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert_by.d.ts.map +0 -0
  301. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/join_to_string.d.ts +0 -0
  302. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/join_to_string.d.ts.map +0 -0
  303. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_entries.d.ts +0 -0
  304. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_entries.d.ts.map +0 -0
  305. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_keys.d.ts +0 -0
  306. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_keys.d.ts.map +0 -0
  307. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.d.ts +0 -0
  308. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.d.ts.map +0 -0
  309. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_values.d.ts +0 -0
  310. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_values.d.ts.map +0 -0
  311. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_by.d.ts +0 -0
  312. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_by.d.ts.map +0 -0
  313. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_of.d.ts +0 -0
  314. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_of.d.ts.map +0 -0
  315. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_with.d.ts +0 -0
  316. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_with.d.ts.map +0 -0
  317. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_by.d.ts +0 -0
  318. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_by.d.ts.map +0 -0
  319. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_of.d.ts +0 -0
  320. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_of.d.ts.map +0 -0
  321. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_with.d.ts +0 -0
  322. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_with.d.ts.map +0 -0
  323. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/mod.d.ts +0 -0
  324. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/mod.d.ts.map +0 -0
  325. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/omit.d.ts +0 -0
  326. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/omit.d.ts.map +0 -0
  327. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition.d.ts +0 -0
  328. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition.d.ts.map +0 -0
  329. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition_entries.d.ts +0 -0
  330. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition_entries.d.ts.map +0 -0
  331. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/permutations.d.ts +0 -0
  332. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/permutations.d.ts.map +0 -0
  333. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/pick.d.ts +0 -0
  334. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/pick.d.ts.map +0 -0
  335. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/reduce_groups.d.ts +0 -0
  336. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/reduce_groups.d.ts.map +0 -0
  337. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/running_reduce.d.ts +0 -0
  338. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/running_reduce.d.ts.map +0 -0
  339. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sample.d.ts +0 -0
  340. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sample.d.ts.map +0 -0
  341. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sliding_windows.d.ts +0 -0
  342. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sliding_windows.d.ts.map +0 -0
  343. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sort_by.d.ts +0 -0
  344. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sort_by.d.ts.map +0 -0
  345. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sum_of.d.ts +0 -0
  346. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sum_of.d.ts.map +0 -0
  347. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_last_while.d.ts +0 -0
  348. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_last_while.d.ts.map +0 -0
  349. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_while.d.ts +0 -0
  350. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_while.d.ts.map +0 -0
  351. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/union.d.ts +0 -0
  352. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/union.d.ts.map +0 -0
  353. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/unzip.d.ts +0 -0
  354. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/unzip.d.ts.map +0 -0
  355. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/without_all.d.ts +0 -0
  356. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/without_all.d.ts.map +0 -0
  357. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/zip.d.ts +0 -0
  358. /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/zip.d.ts.map +0 -0
  359. /package/{types → esm}/mod.d.ts +0 -0
  360. /package/{types → esm}/mod.d.ts.map +0 -0
  361. /package/{types → esm}/types/Ref.d.ts +0 -0
  362. /package/{types → esm}/types/constant.d.ts +0 -0
  363. /package/{types → esm}/types/constantUnion.d.ts +0 -0
  364. /package/{types → esm}/types/std/Option.d.ts +0 -0
  365. /package/{types → esm}/types/std/Option.d.ts.map +0 -0
  366. /package/{types → esm}/types/std/mod.d.ts +0 -0
  367. /package/{types → esm}/types/std/mod.d.ts.map +0 -0
  368. /package/{types → esm}/util/phantoms.d.ts +0 -0
  369. /package/{types → esm}/util/phantoms.d.ts.map +0 -0
  370. /package/{types → esm}/util/recombineTaggedTemplateArgs.d.ts +0 -0
  371. /package/{types → esm}/util/recombineTaggedTemplateArgs.d.ts.map +0 -0
@@ -1,47 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
-
4
- /** A library of assertion functions.
5
- * If the assertion is false an `AssertionError` will be thrown which will
6
- * result in pretty-printed diff of failing assertion.
7
- *
8
- * This module is browser compatible, but do not rely on good formatting of
9
- * values for AssertionError messages in browsers.
10
- *
11
- * ```ts ignore
12
- * import { assert } from "@std/assert";
13
- *
14
- * assert("I am truthy"); // Doesn't throw
15
- * assert(false); // Throws `AssertionError`
16
- * ```
17
- *
18
- * @module
19
- */
20
-
21
- export * from "./almost_equals.js";
22
- export * from "./array_includes.js";
23
- export * from "./equals.js";
24
- export * from "./exists.js";
25
- export * from "./false.js";
26
- export * from "./greater_or_equal.js";
27
- export * from "./greater.js";
28
- export * from "./instance_of.js";
29
- export * from "./is_error.js";
30
- export * from "./less_or_equal.js";
31
- export * from "./less.js";
32
- export * from "./match.js";
33
- export * from "./not_equals.js";
34
- export * from "./not_instance_of.js";
35
- export * from "./not_match.js";
36
- export * from "./not_strict_equals.js";
37
- export * from "./object_match.js";
38
- export * from "./rejects.js";
39
- export * from "./strict_equals.js";
40
- export * from "./string_includes.js";
41
- export * from "./throws.js";
42
- export * from "./assert.js";
43
- export * from "./assertion_error.js";
44
- export * from "./equal.js";
45
- export * from "./fail.js";
46
- export * from "./unimplemented.js";
47
- export * from "./unreachable.js";
@@ -1,36 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
-
4
- import { equal } from "./equal.js";
5
- import { AssertionError } from "./assertion_error.js";
6
-
7
- /**
8
- * Make an assertion that `actual` and `expected` are not equal, deeply.
9
- * If not then throw.
10
- *
11
- * Type parameter can be specified to ensure values under comparison have the same type.
12
- *
13
- * @example Usage
14
- * ```ts ignore
15
- * import { assertNotEquals } from "@std/assert";
16
- *
17
- * assertNotEquals(1, 2); // Doesn't throw
18
- * assertNotEquals(1, 1); // Throws
19
- * ```
20
- *
21
- * @typeParam T The type of the values to compare.
22
- * @param actual The actual value to compare.
23
- * @param expected The expected value to compare.
24
- * @param msg The optional message to display if the assertion fails.
25
- */
26
- export function assertNotEquals<T>(actual: T, expected: T, msg?: string) {
27
- if (!equal(actual, expected)) {
28
- return;
29
- }
30
- const actualString = String(actual);
31
- const expectedString = String(expected);
32
- const msgSuffix = msg ? `: ${msg}` : ".";
33
- throw new AssertionError(
34
- `Expected actual: ${actualString} not to be: ${expectedString}${msgSuffix}`,
35
- );
36
- }
@@ -1,33 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { assertFalse } from "./false.js";
4
-
5
- /**
6
- * Make an assertion that `obj` is not an instance of `type`.
7
- * If so, then throw.
8
- *
9
- * @example Usage
10
- * ```ts ignore
11
- * import { assertNotInstanceOf } from "@std/assert";
12
- *
13
- * assertNotInstanceOf(new Date(), Number); // Doesn't throw
14
- * assertNotInstanceOf(new Date(), Date); // Throws
15
- * ```
16
- *
17
- * @typeParam A The type of the object to check.
18
- * @typeParam T The type of the class to check against.
19
- * @param actual The object to check.
20
- * @param unexpectedType The class constructor to check against.
21
- * @param msg The optional message to display if the assertion fails.
22
- */
23
- export function assertNotInstanceOf<A, T>(
24
- actual: A,
25
- // deno-lint-ignore no-explicit-any
26
- unexpectedType: abstract new (...args: any[]) => T,
27
- msg?: string,
28
- ): asserts actual is Exclude<A, T> {
29
- const msgSuffix = msg ? `: ${msg}` : ".";
30
- msg =
31
- `Expected object to not be an instance of "${typeof unexpectedType}"${msgSuffix}`;
32
- assertFalse(actual instanceof unexpectedType, msg);
33
- }
@@ -1,30 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { AssertionError } from "./assertion_error.js";
4
-
5
- /**
6
- * Make an assertion that `actual` not match RegExp `expected`. If match
7
- * then throw.
8
- *
9
- * @example Usage
10
- * ```ts ignore
11
- * import { assertNotMatch } from "@std/assert";
12
- *
13
- * assertNotMatch("Denosaurus", /Raptor/); // Doesn't throw
14
- * assertNotMatch("Raptor", /Raptor/); // Throws
15
- * ```
16
- *
17
- * @param actual The actual value to match.
18
- * @param expected The expected value to not match.
19
- * @param msg The optional message to display if the assertion fails.
20
- */
21
- export function assertNotMatch(
22
- actual: string,
23
- expected: RegExp,
24
- msg?: string,
25
- ) {
26
- if (!expected.test(actual)) return;
27
- const msgSuffix = msg ? `: ${msg}` : ".";
28
- msg = `Expected actual: "${actual}" to not match: "${expected}"${msgSuffix}`;
29
- throw new AssertionError(msg);
30
- }
@@ -1,42 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { AssertionError } from "./assertion_error.js";
4
- import { format } from "../../internal/1.0.5/format.js";
5
-
6
- /**
7
- * Make an assertion that `actual` and `expected` are not strictly equal, using
8
- * {@linkcode Object.is} for equality comparison. If the values are strictly
9
- * equal then throw.
10
- *
11
- * @example Usage
12
- * ```ts ignore
13
- * import { assertNotStrictEquals } from "@std/assert";
14
- *
15
- * assertNotStrictEquals(1, 1); // Throws
16
- * assertNotStrictEquals(1, 2); // Doesn't throw
17
- *
18
- * assertNotStrictEquals(0, 0); // Throws
19
- * assertNotStrictEquals(0, -0); // Doesn't throw
20
- * ```
21
- *
22
- * @typeParam T The type of the values to compare.
23
- * @param actual The actual value to compare.
24
- * @param expected The expected value to compare.
25
- * @param msg The optional message to display if the assertion fails.
26
- */
27
- export function assertNotStrictEquals<T>(
28
- actual: T,
29
- expected: T,
30
- msg?: string,
31
- ) {
32
- if (!Object.is(actual, expected)) {
33
- return;
34
- }
35
-
36
- const msgSuffix = msg ? `: ${msg}` : ".";
37
- throw new AssertionError(
38
- `Expected "actual" to not be strictly equal to: ${
39
- format(actual)
40
- }${msgSuffix}\n`,
41
- );
42
- }
@@ -1,202 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { assertEquals } from "./equals.js";
4
-
5
- /**
6
- * Make an assertion that `expected` object is a subset of `actual` object,
7
- * deeply. If not, then throw.
8
- *
9
- * @example Usage
10
- * ```ts ignore
11
- * import { assertObjectMatch } from "@std/assert";
12
- *
13
- * assertObjectMatch({ foo: "bar" }, { foo: "bar" }); // Doesn't throw
14
- * assertObjectMatch({ foo: "bar" }, { foo: "baz" }); // Throws
15
- * assertObjectMatch({ foo: 1, bar: 2 }, { foo: 1 }); // Doesn't throw
16
- * assertObjectMatch({ foo: 1 }, { foo: 1, bar: 2 }); // Throws
17
- * ```
18
- *
19
- * @example Usage with nested objects
20
- * ```ts ignore
21
- * import { assertObjectMatch } from "@std/assert";
22
- *
23
- * assertObjectMatch({ foo: { bar: 3, baz: 4 } }, { foo: { bar: 3 } }); // Doesn't throw
24
- * assertObjectMatch({ foo: { bar: 3 } }, { foo: { bar: 3, baz: 4 } }); // Throws
25
- * ```
26
- *
27
- * @param actual The actual value to be matched.
28
- * @param expected The expected value to match.
29
- * @param msg The optional message to display if the assertion fails.
30
- */
31
- export function assertObjectMatch(
32
- // deno-lint-ignore no-explicit-any
33
- actual: Record<PropertyKey, any>,
34
- expected: Record<PropertyKey, unknown>,
35
- msg?: string,
36
- ): void {
37
- return assertEquals(
38
- // get the intersection of "actual" and "expected"
39
- // side effect: all the instances' constructor field is "Object" now.
40
- filter(actual, expected),
41
- // set (nested) instances' constructor field to be "Object" without changing expected value.
42
- // see https://github.com/denoland/deno_std/pull/1419
43
- filter(expected, expected),
44
- msg,
45
- );
46
- }
47
-
48
- type loose = Record<PropertyKey, unknown>;
49
-
50
- function isObject(val: unknown): boolean {
51
- return typeof val === "object" && val !== null;
52
- }
53
-
54
- function filter(a: loose, b: loose): loose {
55
- const seen = new WeakMap();
56
- return filterObject(a, b);
57
-
58
- function filterObject(a: loose, b: loose): loose {
59
- // Prevent infinite loop with circular references with same filter
60
- if ((seen.has(a)) && (seen.get(a) === b)) {
61
- return a;
62
- }
63
-
64
- try {
65
- seen.set(a, b);
66
- } catch (err) {
67
- if (err instanceof TypeError) {
68
- throw new TypeError(
69
- `Cannot assertObjectMatch ${a === null ? null : `type ${typeof a}`}`,
70
- );
71
- }
72
- }
73
-
74
- // Filter keys and symbols which are present in both actual and expected
75
- const filtered = {} as loose;
76
- const keysA = Reflect.ownKeys(a);
77
- const keysB = Reflect.ownKeys(b);
78
- const entries = keysA.filter((key) => keysB.includes(key))
79
- .map((key) => [key, a[key as string]]) as Array<[string, unknown]>;
80
-
81
- if (keysA.length && keysB.length && !entries.length) {
82
- // If both objects are not empty but don't have the same keys or symbols,
83
- // returns the entries in object a.
84
- for (const key of keysA) {
85
- filtered[key] = a[key];
86
- }
87
-
88
- return filtered;
89
- }
90
-
91
- for (const [key, value] of entries) {
92
- // On regexp references, keep value as it to avoid loosing pattern and flags
93
- if (value instanceof RegExp) {
94
- filtered[key] = value;
95
- continue;
96
- }
97
-
98
- const subset = (b as loose)[key];
99
-
100
- // On array references, build a filtered array and filter nested objects inside
101
- if (Array.isArray(value) && Array.isArray(subset)) {
102
- filtered[key] = filterArray(value, subset);
103
- continue;
104
- }
105
-
106
- // On nested objects references, build a filtered object recursively
107
- if (isObject(value) && isObject(subset)) {
108
- // When both operands are maps, build a filtered map with common keys and filter nested objects inside
109
- if ((value instanceof Map) && (subset instanceof Map)) {
110
- filtered[key] = new Map(
111
- [...value].filter(([k]) => subset.has(k)).map(
112
- ([k, v]) => {
113
- const v2 = subset.get(k);
114
- if (isObject(v) && isObject(v2)) {
115
- return [k, filterObject(v as loose, v2 as loose)];
116
- }
117
-
118
- return [k, v];
119
- },
120
- ),
121
- );
122
- continue;
123
- }
124
-
125
- // When both operands are set, build a filtered set with common values
126
- if ((value instanceof Set) && (subset instanceof Set)) {
127
- filtered[key] = value.intersection(subset);
128
- continue;
129
- }
130
-
131
- filtered[key] = filterObject(value as loose, subset as loose);
132
- continue;
133
- }
134
-
135
- filtered[key] = value;
136
- }
137
-
138
- return filtered;
139
- }
140
-
141
- function filterArray(a: unknown[], b: unknown[]): unknown[] {
142
- // Prevent infinite loop with circular references with same filter
143
- if (seen.has(a) && (seen.get(a) === b)) {
144
- return a;
145
- }
146
-
147
- seen.set(a, b);
148
-
149
- const filtered: unknown[] = [];
150
- const count = Math.min(a.length, b.length);
151
-
152
- for (let i = 0; i < count; ++i) {
153
- const value = a[i];
154
- const subset = b[i];
155
-
156
- // On regexp references, keep value as it to avoid loosing pattern and flags
157
- if (value instanceof RegExp) {
158
- filtered.push(value);
159
- continue;
160
- }
161
-
162
- // On array references, build a filtered array and filter nested objects inside
163
- if (Array.isArray(value) && Array.isArray(subset)) {
164
- filtered.push(filterArray(value, subset));
165
- continue;
166
- }
167
-
168
- // On nested objects references, build a filtered object recursively
169
- if (isObject(value) && isObject(subset)) {
170
- // When both operands are maps, build a filtered map with common keys and filter nested objects inside
171
- if ((value instanceof Map) && (subset instanceof Map)) {
172
- const map = new Map(
173
- [...value].filter(([k]) => subset.has(k))
174
- .map(([k, v]) => {
175
- const v2 = subset.get(k);
176
- if (isObject(v) && isObject(v2)) {
177
- return [k, filterObject(v as loose, v2 as loose)];
178
- }
179
-
180
- return [k, v];
181
- }),
182
- );
183
- filtered.push(map);
184
- continue;
185
- }
186
-
187
- // When both operands are set, build a filtered set with common values
188
- if ((value instanceof Set) && (subset instanceof Set)) {
189
- filtered.push(value.intersection(subset));
190
- continue;
191
- }
192
-
193
- filtered.push(filterObject(value as loose, subset as loose));
194
- continue;
195
- }
196
-
197
- filtered.push(value);
198
- }
199
-
200
- return filtered;
201
- }
202
- }
@@ -1,123 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { AssertionError } from "./assertion_error.js";
4
- import { assertIsError } from "./is_error.js";
5
-
6
- /**
7
- * Executes a function which returns a promise, expecting it to reject.
8
- *
9
- * To assert that a synchronous function throws, use {@linkcode assertThrows}.
10
- *
11
- * @example Usage
12
- * ```ts ignore
13
- * import { assertRejects } from "@std/assert";
14
- *
15
- * await assertRejects(async () => Promise.reject(new Error())); // Doesn't throw
16
- * await assertRejects(async () => console.log("Hello world")); // Throws
17
- * ```
18
- *
19
- * @param fn The function to execute.
20
- * @param msg The optional message to display if the assertion fails.
21
- * @returns The promise which resolves to the thrown error.
22
- */
23
- export function assertRejects(
24
- fn: () => PromiseLike<unknown>,
25
- msg?: string,
26
- ): Promise<unknown>;
27
- /**
28
- * Executes a function which returns a promise, expecting it to reject.
29
- * If it does not, then it throws. An error class and a string that should be
30
- * included in the error message can also be asserted.
31
- *
32
- * To assert that a synchronous function throws, use {@linkcode assertThrows}.
33
- *
34
- * @example Usage
35
- * ```ts ignore
36
- * import { assertRejects } from "@std/assert";
37
- *
38
- * await assertRejects(async () => Promise.reject(new Error()), Error); // Doesn't throw
39
- * await assertRejects(async () => Promise.reject(new Error()), SyntaxError); // Throws
40
- * ```
41
- *
42
- * @typeParam E The error class to assert.
43
- * @param fn The function to execute.
44
- * @param ErrorClass The error class to assert.
45
- * @param msgIncludes The string that should be included in the error message.
46
- * @param msg The optional message to display if the assertion fails.
47
- * @returns The promise which resolves to the thrown error.
48
- */
49
- export function assertRejects<E extends Error = Error>(
50
- fn: () => PromiseLike<unknown>,
51
- // deno-lint-ignore no-explicit-any
52
- ErrorClass: abstract new (...args: any[]) => E,
53
- msgIncludes?: string,
54
- msg?: string,
55
- ): Promise<E>;
56
- export async function assertRejects<E extends Error = Error>(
57
- fn: () => PromiseLike<unknown>,
58
- errorClassOrMsg?:
59
- // deno-lint-ignore no-explicit-any
60
- | (abstract new (...args: any[]) => E)
61
- | string,
62
- msgIncludesOrMsg?: string,
63
- msg?: string,
64
- ): Promise<E | Error | unknown> {
65
- // deno-lint-ignore no-explicit-any
66
- let ErrorClass: (abstract new (...args: any[]) => E) | undefined;
67
- let msgIncludes: string | undefined;
68
- let err;
69
-
70
- if (typeof errorClassOrMsg !== "string") {
71
- if (
72
- errorClassOrMsg === undefined ||
73
- errorClassOrMsg.prototype instanceof Error ||
74
- errorClassOrMsg.prototype === Error.prototype
75
- ) {
76
- ErrorClass = errorClassOrMsg;
77
- msgIncludes = msgIncludesOrMsg;
78
- }
79
- } else {
80
- msg = errorClassOrMsg;
81
- }
82
- let doesThrow = false;
83
- let isPromiseReturned = false;
84
- const msgSuffix = msg ? `: ${msg}` : ".";
85
- try {
86
- const possiblePromise = fn();
87
- if (
88
- possiblePromise &&
89
- typeof possiblePromise === "object" &&
90
- typeof possiblePromise.then === "function"
91
- ) {
92
- isPromiseReturned = true;
93
- await possiblePromise;
94
- } else {
95
- throw new Error();
96
- }
97
- } catch (error) {
98
- if (!isPromiseReturned) {
99
- throw new AssertionError(
100
- `Function throws when expected to reject${msgSuffix}`,
101
- );
102
- }
103
- if (ErrorClass) {
104
- if (!(error instanceof Error)) {
105
- throw new AssertionError(`A non-Error object was rejected${msgSuffix}`);
106
- }
107
- assertIsError(
108
- error,
109
- ErrorClass,
110
- msgIncludes,
111
- msg,
112
- );
113
- }
114
- err = error;
115
- doesThrow = true;
116
- }
117
- if (!doesThrow) {
118
- throw new AssertionError(
119
- `Expected function to reject${msgSuffix}`,
120
- );
121
- }
122
- return err;
123
- }
@@ -1,67 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { buildMessage } from "../../internal/1.0.5/build_message.js";
4
- import { diff } from "../../internal/1.0.5/diff.js";
5
- import { diffStr } from "../../internal/1.0.5/diff_str.js";
6
- import { format } from "../../internal/1.0.5/format.js";
7
- import { red } from "../../internal/1.0.5/styles.js";
8
- import { AssertionError } from "./assertion_error.js";
9
-
10
- /**
11
- * Make an assertion that `actual` and `expected` are strictly equal, using
12
- * {@linkcode Object.is} for equality comparison. If not, then throw.
13
- *
14
- * @example Usage
15
- * ```ts ignore
16
- * import { assertStrictEquals } from "@std/assert";
17
- *
18
- * const a = {};
19
- * const b = a;
20
- * assertStrictEquals(a, b); // Doesn't throw
21
- *
22
- * const c = {};
23
- * const d = {};
24
- * assertStrictEquals(c, d); // Throws
25
- * ```
26
- *
27
- * @typeParam T The type of the expected value.
28
- * @param actual The actual value to compare.
29
- * @param expected The expected value to compare.
30
- * @param msg The optional message to display if the assertion fails.
31
- */
32
- export function assertStrictEquals<T>(
33
- actual: unknown,
34
- expected: T,
35
- msg?: string,
36
- ): asserts actual is T {
37
- if (Object.is(actual, expected)) {
38
- return;
39
- }
40
-
41
- const msgSuffix = msg ? `: ${msg}` : ".";
42
- let message: string;
43
-
44
- const actualString = format(actual);
45
- const expectedString = format(expected);
46
-
47
- if (actualString === expectedString) {
48
- const withOffset = actualString
49
- .split("\n")
50
- .map((l) => ` ${l}`)
51
- .join("\n");
52
- message =
53
- `Values have the same structure but are not reference-equal${msgSuffix}\n\n${
54
- red(withOffset)
55
- }\n`;
56
- } else {
57
- const stringDiff = (typeof actual === "string") &&
58
- (typeof expected === "string");
59
- const diffResult = stringDiff
60
- ? diffStr(actual as string, expected as string)
61
- : diff(actualString.split("\n"), expectedString.split("\n"));
62
- const diffMsg = buildMessage(diffResult, { stringDiff }).join("\n");
63
- message = `Values are not strictly equal${msgSuffix}\n${diffMsg}`;
64
- }
65
-
66
- throw new AssertionError(message);
67
- }
@@ -1,30 +0,0 @@
1
- // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2
- // This module is browser compatible.
3
- import { AssertionError } from "./assertion_error.js";
4
-
5
- /**
6
- * Make an assertion that actual includes expected. If not
7
- * then throw.
8
- *
9
- * @example Usage
10
- * ```ts ignore
11
- * import { assertStringIncludes } from "@std/assert";
12
- *
13
- * assertStringIncludes("Hello", "ello"); // Doesn't throw
14
- * assertStringIncludes("Hello", "world"); // Throws
15
- * ```
16
- *
17
- * @param actual The actual string to check for inclusion.
18
- * @param expected The expected string to check for inclusion.
19
- * @param msg The optional message to display if the assertion fails.
20
- */
21
- export function assertStringIncludes(
22
- actual: string,
23
- expected: string,
24
- msg?: string,
25
- ) {
26
- if (actual.includes(expected)) return;
27
- const msgSuffix = msg ? `: ${msg}` : ".";
28
- msg = `Expected actual: "${actual}" to contain: "${expected}"${msgSuffix}`;
29
- throw new AssertionError(msg);
30
- }