bupkis 0.18.0 → 0.18.2

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 (377) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -4
  3. package/src/assertion/assertion-types.ts +4 -4
  4. package/src/assertion/impl/async-parametric.ts +4 -21
  5. package/src/assertion/impl/sync-parametric.ts +5 -17
  6. package/src/expect.ts +0 -4
  7. package/src/guards.ts +24 -24
  8. package/src/internal-schema.ts +16 -32
  9. package/src/value-to-schema.ts +1 -1
  10. package/dist/assertion/assertion-async.cjs +0 -268
  11. package/dist/assertion/assertion-async.cjs.map +0 -1
  12. package/dist/assertion/assertion-async.d.cts +0 -40
  13. package/dist/assertion/assertion-async.d.cts.map +0 -1
  14. package/dist/assertion/assertion-async.d.ts +0 -40
  15. package/dist/assertion/assertion-async.d.ts.map +0 -1
  16. package/dist/assertion/assertion-async.js +0 -259
  17. package/dist/assertion/assertion-async.js.map +0 -1
  18. package/dist/assertion/assertion-standard-schema-async.cjs +0 -132
  19. package/dist/assertion/assertion-standard-schema-async.cjs.map +0 -1
  20. package/dist/assertion/assertion-standard-schema-async.d.cts +0 -52
  21. package/dist/assertion/assertion-standard-schema-async.d.cts.map +0 -1
  22. package/dist/assertion/assertion-standard-schema-async.d.ts +0 -52
  23. package/dist/assertion/assertion-standard-schema-async.d.ts.map +0 -1
  24. package/dist/assertion/assertion-standard-schema-async.js +0 -128
  25. package/dist/assertion/assertion-standard-schema-async.js.map +0 -1
  26. package/dist/assertion/assertion-standard-schema-sync.cjs +0 -141
  27. package/dist/assertion/assertion-standard-schema-sync.cjs.map +0 -1
  28. package/dist/assertion/assertion-standard-schema-sync.d.cts +0 -52
  29. package/dist/assertion/assertion-standard-schema-sync.d.cts.map +0 -1
  30. package/dist/assertion/assertion-standard-schema-sync.d.ts +0 -52
  31. package/dist/assertion/assertion-standard-schema-sync.d.ts.map +0 -1
  32. package/dist/assertion/assertion-standard-schema-sync.js +0 -137
  33. package/dist/assertion/assertion-standard-schema-sync.js.map +0 -1
  34. package/dist/assertion/assertion-sync.cjs +0 -284
  35. package/dist/assertion/assertion-sync.cjs.map +0 -1
  36. package/dist/assertion/assertion-sync.d.cts +0 -60
  37. package/dist/assertion/assertion-sync.d.cts.map +0 -1
  38. package/dist/assertion/assertion-sync.d.ts +0 -60
  39. package/dist/assertion/assertion-sync.d.ts.map +0 -1
  40. package/dist/assertion/assertion-sync.js +0 -275
  41. package/dist/assertion/assertion-sync.js.map +0 -1
  42. package/dist/assertion/assertion-types.cjs +0 -20
  43. package/dist/assertion/assertion-types.cjs.map +0 -1
  44. package/dist/assertion/assertion-types.d.cts +0 -1086
  45. package/dist/assertion/assertion-types.d.cts.map +0 -1
  46. package/dist/assertion/assertion-types.d.ts +0 -1086
  47. package/dist/assertion/assertion-types.d.ts.map +0 -1
  48. package/dist/assertion/assertion-types.js +0 -19
  49. package/dist/assertion/assertion-types.js.map +0 -1
  50. package/dist/assertion/assertion.cjs +0 -382
  51. package/dist/assertion/assertion.cjs.map +0 -1
  52. package/dist/assertion/assertion.d.cts +0 -109
  53. package/dist/assertion/assertion.d.cts.map +0 -1
  54. package/dist/assertion/assertion.d.ts +0 -109
  55. package/dist/assertion/assertion.d.ts.map +0 -1
  56. package/dist/assertion/assertion.js +0 -375
  57. package/dist/assertion/assertion.js.map +0 -1
  58. package/dist/assertion/create.cjs +0 -148
  59. package/dist/assertion/create.cjs.map +0 -1
  60. package/dist/assertion/create.d.cts +0 -85
  61. package/dist/assertion/create.d.cts.map +0 -1
  62. package/dist/assertion/create.d.ts +0 -85
  63. package/dist/assertion/create.d.ts.map +0 -1
  64. package/dist/assertion/create.js +0 -143
  65. package/dist/assertion/create.js.map +0 -1
  66. package/dist/assertion/format-assertion-failure.cjs +0 -63
  67. package/dist/assertion/format-assertion-failure.cjs.map +0 -1
  68. package/dist/assertion/format-assertion-failure.d.cts +0 -21
  69. package/dist/assertion/format-assertion-failure.d.cts.map +0 -1
  70. package/dist/assertion/format-assertion-failure.d.ts +0 -21
  71. package/dist/assertion/format-assertion-failure.d.ts.map +0 -1
  72. package/dist/assertion/format-assertion-failure.js +0 -59
  73. package/dist/assertion/format-assertion-failure.js.map +0 -1
  74. package/dist/assertion/impl/assertion-util.cjs +0 -68
  75. package/dist/assertion/impl/assertion-util.cjs.map +0 -1
  76. package/dist/assertion/impl/assertion-util.d.cts +0 -36
  77. package/dist/assertion/impl/assertion-util.d.cts.map +0 -1
  78. package/dist/assertion/impl/assertion-util.d.ts +0 -36
  79. package/dist/assertion/impl/assertion-util.d.ts.map +0 -1
  80. package/dist/assertion/impl/assertion-util.js +0 -62
  81. package/dist/assertion/impl/assertion-util.js.map +0 -1
  82. package/dist/assertion/impl/async-iterable.cjs +0 -627
  83. package/dist/assertion/impl/async-iterable.cjs.map +0 -1
  84. package/dist/assertion/impl/async-iterable.d.cts +0 -406
  85. package/dist/assertion/impl/async-iterable.d.cts.map +0 -1
  86. package/dist/assertion/impl/async-iterable.d.ts +0 -406
  87. package/dist/assertion/impl/async-iterable.d.ts.map +0 -1
  88. package/dist/assertion/impl/async-iterable.js +0 -624
  89. package/dist/assertion/impl/async-iterable.js.map +0 -1
  90. package/dist/assertion/impl/async-parametric.cjs +0 -423
  91. package/dist/assertion/impl/async-parametric.cjs.map +0 -1
  92. package/dist/assertion/impl/async-parametric.d.cts +0 -278
  93. package/dist/assertion/impl/async-parametric.d.cts.map +0 -1
  94. package/dist/assertion/impl/async-parametric.d.ts +0 -278
  95. package/dist/assertion/impl/async-parametric.d.ts.map +0 -1
  96. package/dist/assertion/impl/async-parametric.js +0 -420
  97. package/dist/assertion/impl/async-parametric.js.map +0 -1
  98. package/dist/assertion/impl/async.cjs +0 -56
  99. package/dist/assertion/impl/async.cjs.map +0 -1
  100. package/dist/assertion/impl/async.d.cts +0 -179
  101. package/dist/assertion/impl/async.d.cts.map +0 -1
  102. package/dist/assertion/impl/async.d.ts +0 -179
  103. package/dist/assertion/impl/async.d.ts.map +0 -1
  104. package/dist/assertion/impl/async.js +0 -39
  105. package/dist/assertion/impl/async.js.map +0 -1
  106. package/dist/assertion/impl/index.cjs +0 -37
  107. package/dist/assertion/impl/index.cjs.map +0 -1
  108. package/dist/assertion/impl/index.d.cts +0 -21
  109. package/dist/assertion/impl/index.d.cts.map +0 -1
  110. package/dist/assertion/impl/index.d.ts +0 -21
  111. package/dist/assertion/impl/index.d.ts.map +0 -1
  112. package/dist/assertion/impl/index.js +0 -21
  113. package/dist/assertion/impl/index.js.map +0 -1
  114. package/dist/assertion/impl/iteration-util.cjs +0 -297
  115. package/dist/assertion/impl/iteration-util.cjs.map +0 -1
  116. package/dist/assertion/impl/iteration-util.d.cts +0 -12
  117. package/dist/assertion/impl/iteration-util.d.cts.map +0 -1
  118. package/dist/assertion/impl/iteration-util.d.ts +0 -12
  119. package/dist/assertion/impl/iteration-util.d.ts.map +0 -1
  120. package/dist/assertion/impl/iteration-util.js +0 -282
  121. package/dist/assertion/impl/iteration-util.js.map +0 -1
  122. package/dist/assertion/impl/snapshot.cjs +0 -276
  123. package/dist/assertion/impl/snapshot.cjs.map +0 -1
  124. package/dist/assertion/impl/snapshot.d.cts +0 -278
  125. package/dist/assertion/impl/snapshot.d.cts.map +0 -1
  126. package/dist/assertion/impl/snapshot.d.ts +0 -278
  127. package/dist/assertion/impl/snapshot.d.ts.map +0 -1
  128. package/dist/assertion/impl/snapshot.js +0 -273
  129. package/dist/assertion/impl/snapshot.js.map +0 -1
  130. package/dist/assertion/impl/sync-basic.cjs +0 -553
  131. package/dist/assertion/impl/sync-basic.cjs.map +0 -1
  132. package/dist/assertion/impl/sync-basic.d.cts +0 -528
  133. package/dist/assertion/impl/sync-basic.d.cts.map +0 -1
  134. package/dist/assertion/impl/sync-basic.d.ts +0 -528
  135. package/dist/assertion/impl/sync-basic.d.ts.map +0 -1
  136. package/dist/assertion/impl/sync-basic.js +0 -550
  137. package/dist/assertion/impl/sync-basic.js.map +0 -1
  138. package/dist/assertion/impl/sync-collection.cjs +0 -856
  139. package/dist/assertion/impl/sync-collection.cjs.map +0 -1
  140. package/dist/assertion/impl/sync-collection.d.cts +0 -607
  141. package/dist/assertion/impl/sync-collection.d.cts.map +0 -1
  142. package/dist/assertion/impl/sync-collection.d.ts +0 -607
  143. package/dist/assertion/impl/sync-collection.d.ts.map +0 -1
  144. package/dist/assertion/impl/sync-collection.js +0 -850
  145. package/dist/assertion/impl/sync-collection.js.map +0 -1
  146. package/dist/assertion/impl/sync-date.cjs +0 -341
  147. package/dist/assertion/impl/sync-date.cjs.map +0 -1
  148. package/dist/assertion/impl/sync-date.d.cts +0 -209
  149. package/dist/assertion/impl/sync-date.d.cts.map +0 -1
  150. package/dist/assertion/impl/sync-date.d.ts +0 -209
  151. package/dist/assertion/impl/sync-date.d.ts.map +0 -1
  152. package/dist/assertion/impl/sync-date.js +0 -338
  153. package/dist/assertion/impl/sync-date.js.map +0 -1
  154. package/dist/assertion/impl/sync-esoteric.cjs +0 -214
  155. package/dist/assertion/impl/sync-esoteric.cjs.map +0 -1
  156. package/dist/assertion/impl/sync-esoteric.d.cts +0 -191
  157. package/dist/assertion/impl/sync-esoteric.d.cts.map +0 -1
  158. package/dist/assertion/impl/sync-esoteric.d.ts +0 -191
  159. package/dist/assertion/impl/sync-esoteric.d.ts.map +0 -1
  160. package/dist/assertion/impl/sync-esoteric.js +0 -211
  161. package/dist/assertion/impl/sync-esoteric.js.map +0 -1
  162. package/dist/assertion/impl/sync-iterable.cjs +0 -512
  163. package/dist/assertion/impl/sync-iterable.cjs.map +0 -1
  164. package/dist/assertion/impl/sync-iterable.d.cts +0 -334
  165. package/dist/assertion/impl/sync-iterable.d.cts.map +0 -1
  166. package/dist/assertion/impl/sync-iterable.d.ts +0 -334
  167. package/dist/assertion/impl/sync-iterable.d.ts.map +0 -1
  168. package/dist/assertion/impl/sync-iterable.js +0 -509
  169. package/dist/assertion/impl/sync-iterable.js.map +0 -1
  170. package/dist/assertion/impl/sync-parametric.cjs +0 -812
  171. package/dist/assertion/impl/sync-parametric.cjs.map +0 -1
  172. package/dist/assertion/impl/sync-parametric.d.cts +0 -560
  173. package/dist/assertion/impl/sync-parametric.d.cts.map +0 -1
  174. package/dist/assertion/impl/sync-parametric.d.ts +0 -560
  175. package/dist/assertion/impl/sync-parametric.d.ts.map +0 -1
  176. package/dist/assertion/impl/sync-parametric.js +0 -809
  177. package/dist/assertion/impl/sync-parametric.js.map +0 -1
  178. package/dist/assertion/impl/sync.cjs +0 -214
  179. package/dist/assertion/impl/sync.cjs.map +0 -1
  180. package/dist/assertion/impl/sync.d.cts +0 -512
  181. package/dist/assertion/impl/sync.d.cts.map +0 -1
  182. package/dist/assertion/impl/sync.d.ts +0 -512
  183. package/dist/assertion/impl/sync.d.ts.map +0 -1
  184. package/dist/assertion/impl/sync.js +0 -197
  185. package/dist/assertion/impl/sync.js.map +0 -1
  186. package/dist/assertion/index.cjs +0 -38
  187. package/dist/assertion/index.cjs.map +0 -1
  188. package/dist/assertion/index.d.cts +0 -18
  189. package/dist/assertion/index.d.cts.map +0 -1
  190. package/dist/assertion/index.d.ts +0 -18
  191. package/dist/assertion/index.d.ts.map +0 -1
  192. package/dist/assertion/index.js +0 -17
  193. package/dist/assertion/index.js.map +0 -1
  194. package/dist/assertion/slotify.cjs +0 -165
  195. package/dist/assertion/slotify.cjs.map +0 -1
  196. package/dist/assertion/slotify.d.cts +0 -11
  197. package/dist/assertion/slotify.d.cts.map +0 -1
  198. package/dist/assertion/slotify.d.ts +0 -11
  199. package/dist/assertion/slotify.d.ts.map +0 -1
  200. package/dist/assertion/slotify.js +0 -161
  201. package/dist/assertion/slotify.js.map +0 -1
  202. package/dist/bootstrap.cjs +0 -43
  203. package/dist/bootstrap.cjs.map +0 -1
  204. package/dist/bootstrap.d.cts +0 -27
  205. package/dist/bootstrap.d.cts.map +0 -1
  206. package/dist/bootstrap.d.ts +0 -27
  207. package/dist/bootstrap.d.ts.map +0 -1
  208. package/dist/bootstrap.js +0 -40
  209. package/dist/bootstrap.js.map +0 -1
  210. package/dist/constant.cjs +0 -82
  211. package/dist/constant.cjs.map +0 -1
  212. package/dist/constant.d.cts +0 -69
  213. package/dist/constant.d.cts.map +0 -1
  214. package/dist/constant.d.ts +0 -69
  215. package/dist/constant.d.ts.map +0 -1
  216. package/dist/constant.js +0 -79
  217. package/dist/constant.js.map +0 -1
  218. package/dist/diff.cjs +0 -340
  219. package/dist/diff.cjs.map +0 -1
  220. package/dist/diff.d.cts +0 -51
  221. package/dist/diff.d.cts.map +0 -1
  222. package/dist/diff.d.ts +0 -51
  223. package/dist/diff.d.ts.map +0 -1
  224. package/dist/diff.js +0 -334
  225. package/dist/diff.js.map +0 -1
  226. package/dist/error.cjs +0 -204
  227. package/dist/error.cjs.map +0 -1
  228. package/dist/error.d.cts +0 -212
  229. package/dist/error.d.cts.map +0 -1
  230. package/dist/error.d.ts +0 -212
  231. package/dist/error.d.ts.map +0 -1
  232. package/dist/error.js +0 -191
  233. package/dist/error.js.map +0 -1
  234. package/dist/expect.cjs +0 -590
  235. package/dist/expect.cjs.map +0 -1
  236. package/dist/expect.d.cts +0 -138
  237. package/dist/expect.d.cts.map +0 -1
  238. package/dist/expect.d.ts +0 -138
  239. package/dist/expect.d.ts.map +0 -1
  240. package/dist/expect.js +0 -582
  241. package/dist/expect.js.map +0 -1
  242. package/dist/guards.cjs +0 -297
  243. package/dist/guards.cjs.map +0 -1
  244. package/dist/guards.d.cts +0 -231
  245. package/dist/guards.d.cts.map +0 -1
  246. package/dist/guards.d.ts +0 -231
  247. package/dist/guards.d.ts.map +0 -1
  248. package/dist/guards.js +0 -277
  249. package/dist/guards.js.map +0 -1
  250. package/dist/index.cjs +0 -111
  251. package/dist/index.cjs.map +0 -1
  252. package/dist/index.d.cts +0 -448
  253. package/dist/index.d.cts.map +0 -1
  254. package/dist/index.d.ts +0 -448
  255. package/dist/index.d.ts.map +0 -1
  256. package/dist/index.js +0 -71
  257. package/dist/index.js.map +0 -1
  258. package/dist/internal-schema.cjs +0 -253
  259. package/dist/internal-schema.cjs.map +0 -1
  260. package/dist/internal-schema.d.cts +0 -8
  261. package/dist/internal-schema.d.cts.map +0 -1
  262. package/dist/internal-schema.d.ts +0 -8
  263. package/dist/internal-schema.d.ts.map +0 -1
  264. package/dist/internal-schema.js +0 -248
  265. package/dist/internal-schema.js.map +0 -1
  266. package/dist/metadata.cjs +0 -57
  267. package/dist/metadata.cjs.map +0 -1
  268. package/dist/metadata.d.cts +0 -27
  269. package/dist/metadata.d.cts.map +0 -1
  270. package/dist/metadata.d.ts +0 -27
  271. package/dist/metadata.d.ts.map +0 -1
  272. package/dist/metadata.js +0 -54
  273. package/dist/metadata.js.map +0 -1
  274. package/dist/schema.cjs +0 -1522
  275. package/dist/schema.cjs.map +0 -1
  276. package/dist/schema.d.cts +0 -1196
  277. package/dist/schema.d.cts.map +0 -1
  278. package/dist/schema.d.ts +0 -1196
  279. package/dist/schema.d.ts.map +0 -1
  280. package/dist/schema.js +0 -1516
  281. package/dist/schema.js.map +0 -1
  282. package/dist/snapshot/adapter.cjs +0 -31
  283. package/dist/snapshot/adapter.cjs.map +0 -1
  284. package/dist/snapshot/adapter.d.cts +0 -258
  285. package/dist/snapshot/adapter.d.cts.map +0 -1
  286. package/dist/snapshot/adapter.d.ts +0 -258
  287. package/dist/snapshot/adapter.d.ts.map +0 -1
  288. package/dist/snapshot/adapter.js +0 -27
  289. package/dist/snapshot/adapter.js.map +0 -1
  290. package/dist/snapshot/adapters/fallback.cjs +0 -453
  291. package/dist/snapshot/adapters/fallback.cjs.map +0 -1
  292. package/dist/snapshot/adapters/fallback.d.cts +0 -185
  293. package/dist/snapshot/adapters/fallback.d.cts.map +0 -1
  294. package/dist/snapshot/adapters/fallback.d.ts +0 -185
  295. package/dist/snapshot/adapters/fallback.d.ts.map +0 -1
  296. package/dist/snapshot/adapters/fallback.js +0 -446
  297. package/dist/snapshot/adapters/fallback.js.map +0 -1
  298. package/dist/snapshot/adapters/node-test.cjs +0 -301
  299. package/dist/snapshot/adapters/node-test.cjs.map +0 -1
  300. package/dist/snapshot/adapters/node-test.d.cts +0 -131
  301. package/dist/snapshot/adapters/node-test.d.cts.map +0 -1
  302. package/dist/snapshot/adapters/node-test.d.ts +0 -131
  303. package/dist/snapshot/adapters/node-test.d.ts.map +0 -1
  304. package/dist/snapshot/adapters/node-test.js +0 -297
  305. package/dist/snapshot/adapters/node-test.js.map +0 -1
  306. package/dist/snapshot/index.cjs +0 -61
  307. package/dist/snapshot/index.cjs.map +0 -1
  308. package/dist/snapshot/index.d.cts +0 -40
  309. package/dist/snapshot/index.d.cts.map +0 -1
  310. package/dist/snapshot/index.d.ts +0 -40
  311. package/dist/snapshot/index.d.ts.map +0 -1
  312. package/dist/snapshot/index.js +0 -44
  313. package/dist/snapshot/index.js.map +0 -1
  314. package/dist/snapshot/node-version.cjs +0 -49
  315. package/dist/snapshot/node-version.cjs.map +0 -1
  316. package/dist/snapshot/node-version.d.cts +0 -34
  317. package/dist/snapshot/node-version.d.cts.map +0 -1
  318. package/dist/snapshot/node-version.d.ts +0 -34
  319. package/dist/snapshot/node-version.d.ts.map +0 -1
  320. package/dist/snapshot/node-version.js +0 -44
  321. package/dist/snapshot/node-version.js.map +0 -1
  322. package/dist/snapshot/select-adapter.cjs +0 -170
  323. package/dist/snapshot/select-adapter.cjs.map +0 -1
  324. package/dist/snapshot/select-adapter.d.cts +0 -128
  325. package/dist/snapshot/select-adapter.d.cts.map +0 -1
  326. package/dist/snapshot/select-adapter.d.ts +0 -128
  327. package/dist/snapshot/select-adapter.d.ts.map +0 -1
  328. package/dist/snapshot/select-adapter.js +0 -164
  329. package/dist/snapshot/select-adapter.js.map +0 -1
  330. package/dist/snapshot/serializer.cjs +0 -246
  331. package/dist/snapshot/serializer.cjs.map +0 -1
  332. package/dist/snapshot/serializer.d.cts +0 -126
  333. package/dist/snapshot/serializer.d.cts.map +0 -1
  334. package/dist/snapshot/serializer.d.ts +0 -126
  335. package/dist/snapshot/serializer.d.ts.map +0 -1
  336. package/dist/snapshot/serializer.js +0 -238
  337. package/dist/snapshot/serializer.js.map +0 -1
  338. package/dist/standard-schema.cjs +0 -13
  339. package/dist/standard-schema.cjs.map +0 -1
  340. package/dist/standard-schema.d.cts +0 -192
  341. package/dist/standard-schema.d.cts.map +0 -1
  342. package/dist/standard-schema.d.ts +0 -192
  343. package/dist/standard-schema.d.ts.map +0 -1
  344. package/dist/standard-schema.js +0 -12
  345. package/dist/standard-schema.js.map +0 -1
  346. package/dist/types.cjs +0 -22
  347. package/dist/types.cjs.map +0 -1
  348. package/dist/types.d.cts +0 -905
  349. package/dist/types.d.cts.map +0 -1
  350. package/dist/types.d.ts +0 -905
  351. package/dist/types.d.ts.map +0 -1
  352. package/dist/types.js +0 -21
  353. package/dist/types.js.map +0 -1
  354. package/dist/use.cjs +0 -240
  355. package/dist/use.cjs.map +0 -1
  356. package/dist/use.d.cts +0 -8
  357. package/dist/use.d.cts.map +0 -1
  358. package/dist/use.d.ts +0 -8
  359. package/dist/use.d.ts.map +0 -1
  360. package/dist/use.js +0 -236
  361. package/dist/use.js.map +0 -1
  362. package/dist/util.cjs +0 -255
  363. package/dist/util.cjs.map +0 -1
  364. package/dist/util.d.cts +0 -141
  365. package/dist/util.d.cts.map +0 -1
  366. package/dist/util.d.ts +0 -141
  367. package/dist/util.d.ts.map +0 -1
  368. package/dist/util.js +0 -234
  369. package/dist/util.js.map +0 -1
  370. package/dist/value-to-schema.cjs +0 -537
  371. package/dist/value-to-schema.cjs.map +0 -1
  372. package/dist/value-to-schema.d.cts +0 -144
  373. package/dist/value-to-schema.d.cts.map +0 -1
  374. package/dist/value-to-schema.d.ts +0 -144
  375. package/dist/value-to-schema.d.ts.map +0 -1
  376. package/dist/value-to-schema.js +0 -533
  377. package/dist/value-to-schema.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"assertion-types.d.ts","sourceRoot":"","sources":["../../src/assertion/assertion-types.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- /**
2
- * Core type definitions for the assertion system.
3
- *
4
- * This module defines all the fundamental types used throughout the assertion
5
- * framework, including assertion parts, implementation functions, parsed
6
- * values, and type inference utilities. These types enable type-safe assertion
7
- * creation and execution.
8
- *
9
- * @packageDocumentation
10
- *
11
- * @groupDescription Assertion Types
12
- * Types related to the implementation of assertions.
13
- * @groupDescription Internal Assertion Interfaces
14
- * Interfaces which define the structure of assertions and their components.
15
- * @groupDescription Assertion Implementation
16
- * Types related to the implementation of an assertion.
17
- */
18
- export {};
19
- //# sourceMappingURL=assertion-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assertion-types.js","sourceRoot":"","sources":["../../src/assertion/assertion-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
@@ -1,382 +0,0 @@
1
- "use strict";
2
- /**
3
- * Core assertion class and parsing engine.
4
- *
5
- * This module implements the main `Assertion` class which handles parsing,
6
- * validation, and execution of assertions. It provides the foundational
7
- * infrastructure for converting assertion parts into executable validation
8
- * logic with comprehensive error handling and type safety.
9
- *
10
- * @packageDocumentation
11
- */
12
- var __importDefault = (this && this.__importDefault) || function (mod) {
13
- return (mod && mod.__esModule) ? mod : { "default": mod };
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.BupkisAssertion = void 0;
17
- const debug_1 = __importDefault(require("debug"));
18
- const slug_1 = __importDefault(require("slug"));
19
- const util_1 = require("util");
20
- const zod_1 = require("zod");
21
- const constant_js_1 = require("../constant.cjs");
22
- const diff_js_1 = require("../diff.cjs");
23
- const error_js_1 = require("../error.cjs");
24
- const guards_js_1 = require("../guards.cjs");
25
- const metadata_js_1 = require("../metadata.cjs");
26
- const debug = (0, debug_1.default)('bupkis:assertion');
27
- const { entries, hasOwn, keys } = Object;
28
- const { isArray } = Array;
29
- const { min } = Math;
30
- /**
31
- * Modified charmap for {@link slug} to use underscores to replace hyphens (`-`;
32
- * and for hyphens to replace everything else that needs replacing) and `<` with
33
- * `_` (to distinguish type args)
34
- *
35
- * @see {@link BupkisAssertion.generateUniqueId} for usage
36
- */
37
- const SLUG_CHARMAP = { ...slug_1.default.charmap, '-': '_', '<': '_', '>': '' };
38
- /**
39
- * Base abstract class for ALL assertions.
40
- */
41
- class BupkisAssertion {
42
- parts;
43
- slots;
44
- impl;
45
- id;
46
- constructor(parts, slots, impl) {
47
- this.parts = parts;
48
- this.slots = slots;
49
- this.impl = impl;
50
- this.id = this.generateAssertionId();
51
- debug('ℹ Created assertion %s', this);
52
- }
53
- /**
54
- * Extracts phrase literals from this assertion for use in dispatch indexing.
55
- *
56
- * Returns phrases from the first phrase literal slot found (typically slot 1
57
- * for subject-first assertions, or slot 0 for phrase-first assertions).
58
- * Handles both single phrase literals and phrase literal choices.
59
- *
60
- * **Limitation:** Only checks slots at positions 0 and 1. Assertions with
61
- * phrase literals at position 2 or higher will not be indexed, falling back
62
- * to O(n) full scan during dispatch. This covers the vast majority of
63
- * assertion patterns (subject-phrase-... or phrase-subject-...).
64
- *
65
- * @returns Array of phrase strings for indexing, or empty array if none found
66
- */
67
- getIndexPhrases() {
68
- // Look for phrase literal at slot 0 or 1 (most common positions)
69
- for (let i = 0; i < min(2, this.slots.length); i++) {
70
- const slot = this.slots[i];
71
- if (!slot) {
72
- continue;
73
- }
74
- const meta = metadata_js_1.BupkisRegistry.get(slot) ?? {};
75
- if (constant_js_1.kStringLiteral in meta) {
76
- if ('value' in meta && typeof meta.value === 'string') {
77
- return [meta.value];
78
- }
79
- if ('values' in meta && isArray(meta.values)) {
80
- return meta.values;
81
- }
82
- }
83
- }
84
- return [];
85
- }
86
- /**
87
- * @returns String representation
88
- */
89
- toString() {
90
- /**
91
- * Expands a Zod type into a human-readable string representation.
92
- *
93
- * @function
94
- * @param zodType The Zod type (or internal ZodType) to expand
95
- * @param wrapCurlies Whether to wrap the result in curly braces
96
- * @returns String representation of the Zod type
97
- */
98
- /* c8 ignore start */
99
- const expand = (zodType, wrapCurlies = false) => {
100
- /**
101
- * Finds a `ZodTypeDef` within a Zod type or internal Zod type
102
- *
103
- * @function
104
- */
105
- const getDef = (zodType) => ('def' in zodType
106
- ? zodType.def
107
- : zodType._zod.def);
108
- let repr = '';
109
- const meta = metadata_js_1.BupkisRegistry.get(zodType);
110
- if (meta?.name) {
111
- // our name
112
- repr = meta.name;
113
- }
114
- else {
115
- // overrides for certain Zod types which have internal structure
116
- if ((0, guards_js_1.isZodType)(zodType, 'custom')) {
117
- // handles z.instanceof
118
- repr = zodType._zod.bag.Class?.name ?? 'custom';
119
- }
120
- else if ((0, guards_js_1.isZodType)(zodType, 'date')) {
121
- repr = 'Date';
122
- }
123
- else if ((0, guards_js_1.isZodType)(zodType, 'array')) {
124
- repr = `${expand(getDef(zodType).element)}[]`;
125
- }
126
- else if ((0, guards_js_1.isZodType)(zodType, 'default')) {
127
- repr = `{${expand(zodType.unwrap())}}`;
128
- }
129
- else if ((0, guards_js_1.isZodType)(zodType, 'enum')) {
130
- repr = `${keys(getDef(zodType).entries).join(' / ')}`;
131
- }
132
- else if ((0, guards_js_1.isZodType)(zodType, 'function')) {
133
- const def = getDef(zodType);
134
- const { input, output } = def;
135
- const params = input
136
- ? (0, guards_js_1.isZodType)(input, 'tuple')
137
- ? `[${getDef(input)
138
- .items.map((p) => expand(p))
139
- .join(', ')}]`
140
- : expand(input)
141
- : '()';
142
- const returns = output ? expand(output) : 'void';
143
- repr = `(${params}) => ${returns}`;
144
- }
145
- else if ((0, guards_js_1.isZodType)(zodType, 'intersection')) {
146
- const def = getDef(zodType);
147
- repr = `${expand(def.left)} & ${expand(def.right)}`;
148
- }
149
- else if ((0, guards_js_1.isZodType)(zodType, 'literal')) {
150
- repr = getDef(zodType)
151
- .values.map((value) => `'${value}'`)
152
- .join(' / ');
153
- }
154
- else if ((0, guards_js_1.isZodType)(zodType, 'map')) {
155
- repr = `Map<${expand(getDef(zodType).keyType)}, ${expand(getDef(zodType).valueType)}>`;
156
- }
157
- else if ((0, guards_js_1.isZodType)(zodType, 'nonoptional')) {
158
- repr = `${expand(getDef(zodType).innerType)}!`;
159
- }
160
- else if ((0, guards_js_1.isZodType)(zodType, 'nullable')) {
161
- repr = `${expand(getDef(zodType).innerType)}? | null`;
162
- }
163
- else if ((0, guards_js_1.isZodType)(zodType, 'optional')) {
164
- repr = `${expand(getDef(zodType).innerType)}?`;
165
- }
166
- else if ((0, guards_js_1.isZodType)(zodType, 'promise')) {
167
- repr = `Promise<${expand(zodType.unwrap())}>`;
168
- }
169
- else if ((0, guards_js_1.isZodType)(zodType, 'never')) {
170
- repr = 'NEVER';
171
- }
172
- else if ((0, guards_js_1.isZodType)(zodType, 'record')) {
173
- repr = `Record<${expand(getDef(zodType).keyType)}, ${expand(getDef(zodType).valueType)}>`;
174
- }
175
- else if ((0, guards_js_1.isZodType)(zodType, 'set')) {
176
- repr = `Set<${expand(getDef(zodType).valueType)}>`;
177
- }
178
- else if ((0, guards_js_1.isZodType)(zodType, 'symbol')) {
179
- repr = 'Symbol';
180
- }
181
- else if ((0, guards_js_1.isZodType)(zodType, 'tuple')) {
182
- repr = `[${getDef(zodType)
183
- .items.map((value) => expand(value))
184
- .join(', ')}]`;
185
- }
186
- else if ((0, guards_js_1.isZodType)(zodType, 'union')) {
187
- repr = getDef(zodType)
188
- .options.map((value) => expand(value))
189
- .join(' | ');
190
- }
191
- else if ((0, guards_js_1.isZodType)(zodType, 'object')) {
192
- const objEntries = entries(zodType.shape);
193
- if (objEntries.length) {
194
- const pairs = objEntries.map(([key, zodTypeValue]) => `${key}: ${expand(zodTypeValue)}`);
195
- repr = `{ ${pairs.join('; ')} }`;
196
- }
197
- else {
198
- repr = 'object';
199
- }
200
- }
201
- else {
202
- repr = getDef(zodType).type;
203
- }
204
- }
205
- return wrapCurlies ? `{${repr}}` : repr;
206
- };
207
- /* c8 ignore stop */
208
- return `"${this.slots
209
- .map((slot) => hasOwn(metadata_js_1.BupkisRegistry.get(slot) ?? {}, constant_js_1.kStringLiteral)
210
- ? expand(slot)
211
- : expand(slot, true))
212
- .join(' ')}"`;
213
- }
214
- /**
215
- * Translates Standard Schema issues into an {@link AssertionError} with a
216
- * human-friendly message.
217
- *
218
- * @param issues The Standard Schema issues from validation failure
219
- * @param stackStartFn The function to start the stack trace from
220
- * @param values Values which caused the error
221
- * @returns New `AssertionError`
222
- */
223
- fromStandardSchemaIssues(issues, stackStartFn, values) {
224
- const subject = isArray(values) ? values[0] : values;
225
- const issueMessages = issues
226
- .map((issue) => {
227
- const pathStr = issue.path
228
- ? `at ${issue.path
229
- .map((segment) => typeof segment === 'object' && 'key' in segment
230
- ? segment.key
231
- : segment)
232
- .join('.')}: `
233
- : '';
234
- return ` ${pathStr}${issue.message}`;
235
- })
236
- .join('\n');
237
- return new error_js_1.AssertionError({
238
- actual: subject,
239
- id: this.id,
240
- message: `Assertion ${this} failed:\n${issueMessages}`,
241
- stackStartFn,
242
- });
243
- }
244
- /**
245
- * Translates a `ZodError` into an {@link AssertionError} with a human-friendly
246
- * message.
247
- *
248
- * @remarks
249
- * This does not handle parameterized assertions with more than one parameter
250
- * too cleanly; it's unclear how a test runner would display the expected
251
- * values. This will probably need a fix in the future.
252
- * @param stackStartFn The function to start the stack trace from
253
- * @param zodError The original `ZodError`
254
- * @param values Values which caused the error
255
- * @returns New `AssertionError`
256
- */
257
- fromZodError(zodError, stackStartFn, values) {
258
- const subject = isArray(values) ? values[0] : values;
259
- const { actual, expected } = (0, diff_js_1.extractDiffValues)(zodError, subject);
260
- // Only use custom message if we could extract diff values
261
- if ((0, diff_js_1.shouldGenerateDiff)(actual, expected)) {
262
- // Use jest-diff to generate rich, colored diff output
263
- const diffOutput = (0, diff_js_1.generateDiff)(expected, actual, {
264
- aAnnotation: 'expected',
265
- bAnnotation: 'actual',
266
- expand: false,
267
- includeChangeCounts: true,
268
- });
269
- const message = diffOutput
270
- ? `Assertion ${this} failed:\n${diffOutput}`
271
- : `Assertion ${this} failed: values are not equal`;
272
- return new error_js_1.AssertionError({
273
- actual,
274
- expected,
275
- id: this.id,
276
- message,
277
- stackStartFn,
278
- });
279
- }
280
- else {
281
- // Fall back to Zod's prettified error message
282
- const pretty = zod_1.z.prettifyError(zodError).slice(2);
283
- return new error_js_1.AssertionError({
284
- actual: subject,
285
- id: this.id,
286
- message: `Assertion ${this} failed:\n${pretty}`,
287
- stackStartFn,
288
- });
289
- }
290
- }
291
- /**
292
- * Checks if this is a "simple schema assertion" - one where subject
293
- * validation can be optimized by validating against the impl schema
294
- * directly.
295
- *
296
- * Simple assertions have:
297
- *
298
- * - A first slot that accepts any/unknown type (subject slot)
299
- * - All remaining slots are string literals (the assertion phrase)
300
- *
301
- * @returns True if this is a simple schema assertion
302
- */
303
- isSimpleSchemaAssertion() {
304
- const hasSubjectSlot = this.slots.length > 0 &&
305
- (this.slots[0]?.def.type === 'unknown' ||
306
- this.slots[0]?.def.type === 'any');
307
- const allOtherSlotsAreLiterals = this.slots.slice(1).every((slot) => {
308
- const meta = metadata_js_1.BupkisRegistry.get(slot) ?? {};
309
- return constant_js_1.kStringLiteral in meta;
310
- });
311
- return hasSubjectSlot && allOtherSlotsAreLiterals;
312
- }
313
- maybeParseValuesArgMismatch(args) {
314
- if (this.slots.length !== args.length) {
315
- return {
316
- success: false,
317
- };
318
- }
319
- }
320
- /**
321
- * TODO: Fix the return types here. This is all sorts of confusing.
322
- *
323
- * @param slot Slot to check
324
- * @param slotIndex Index of slot
325
- * @param rawArg Raw argument
326
- * @returns
327
- */
328
- parseSlotForLiteral(slot, slotIndex, rawArg) {
329
- const meta = metadata_js_1.BupkisRegistry.get(slot) ?? {};
330
- // our branded literal slots are also tagged in meta for runtime
331
- if (constant_js_1.kStringLiteral in meta) {
332
- if ('value' in meta) {
333
- if (rawArg !== meta.value) {
334
- return {
335
- success: false,
336
- };
337
- }
338
- }
339
- else if ('values' in meta) {
340
- const allowed = meta.values;
341
- if (!allowed.includes(`${rawArg}`)) {
342
- return {
343
- success: false,
344
- };
345
- }
346
- }
347
- else {
348
- /* c8 ignore next */
349
- throw new error_js_1.InvalidMetadataError(`Invalid metadata for slot ${slotIndex} with value ${(0, util_1.inspect)(rawArg)}`, { metadata: meta });
350
- }
351
- return true;
352
- }
353
- return false;
354
- }
355
- /**
356
- * Generates a unique¹ ID for this assertion by combining content, structure,
357
- * and type information.
358
- *
359
- * - `s` is slot count
360
- * - `p` is part count
361
- *
362
- * Slugifies the string representation of the assertion. Does not collapse
363
- * adjacent hyphens, as hyphens are significant in phrase literals.
364
- *
365
- * @remarks
366
- * ¹: "Unique" here means "unique enough" for practical purposes. This is not
367
- * cryptographically unique, nor does it need to be. The goal is to avoid
368
- * collisions in common scenarios while keeping the ID human-readable.
369
- * @returns A human-readable unique identifier
370
- */
371
- generateAssertionId() {
372
- const baseSlug = (0, slug_1.default)(`${this}`, {
373
- charmap: SLUG_CHARMAP,
374
- });
375
- // Add structural signature for additional uniqueness
376
- // Use simple slot count and parts count as differentiators
377
- const signature = `${this.slots.length}s${this.parts.length}p`;
378
- return `${baseSlug}-${signature}`;
379
- }
380
- }
381
- exports.BupkisAssertion = BupkisAssertion;
382
- //# sourceMappingURL=assertion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assertion.js","sourceRoot":"","sources":["../../src/assertion/assertion.ts"],"names":[],"mappings":"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"}
@@ -1,109 +0,0 @@
1
- /**
2
- * Core assertion class and parsing engine.
3
- *
4
- * This module implements the main `Assertion` class which handles parsing,
5
- * validation, and execution of assertions. It provides the foundational
6
- * infrastructure for converting assertion parts into executable validation
7
- * logic with comprehensive error handling and type safety.
8
- *
9
- * @packageDocumentation
10
- */
11
- import { type ArrayValues } from 'type-fest';
12
- import { z } from 'zod';
13
- import { AssertionError } from "../error.cjs";
14
- import { type StandardSchemaV1 } from "../standard-schema.cjs";
15
- import { type Assertion, type AssertionImpl, type AssertionParts, type AssertionSlots, type ParsedResult } from "./assertion-types.cjs";
16
- /**
17
- * Base abstract class for ALL assertions.
18
- */
19
- export declare abstract class BupkisAssertion<Parts extends AssertionParts, Impl extends AssertionImpl<Parts>, Slots extends AssertionSlots<Parts>> implements Assertion<Parts, Impl, Slots> {
20
- readonly parts: Parts;
21
- readonly slots: Slots;
22
- readonly impl: Impl;
23
- readonly id: string;
24
- constructor(parts: Parts, slots: Slots, impl: Impl);
25
- /**
26
- * Extracts phrase literals from this assertion for use in dispatch indexing.
27
- *
28
- * Returns phrases from the first phrase literal slot found (typically slot 1
29
- * for subject-first assertions, or slot 0 for phrase-first assertions).
30
- * Handles both single phrase literals and phrase literal choices.
31
- *
32
- * **Limitation:** Only checks slots at positions 0 and 1. Assertions with
33
- * phrase literals at position 2 or higher will not be indexed, falling back
34
- * to O(n) full scan during dispatch. This covers the vast majority of
35
- * assertion patterns (subject-phrase-... or phrase-subject-...).
36
- *
37
- * @returns Array of phrase strings for indexing, or empty array if none found
38
- */
39
- getIndexPhrases(): readonly string[];
40
- /**
41
- * @returns String representation
42
- */
43
- toString(): string;
44
- /**
45
- * Translates Standard Schema issues into an {@link AssertionError} with a
46
- * human-friendly message.
47
- *
48
- * @param issues The Standard Schema issues from validation failure
49
- * @param stackStartFn The function to start the stack trace from
50
- * @param values Values which caused the error
51
- * @returns New `AssertionError`
52
- */
53
- protected fromStandardSchemaIssues<Values>(issues: ReadonlyArray<StandardSchemaV1.Issue>, stackStartFn: (...args: any[]) => any, values: Values): AssertionError;
54
- /**
55
- * Translates a `ZodError` into an {@link AssertionError} with a human-friendly
56
- * message.
57
- *
58
- * @remarks
59
- * This does not handle parameterized assertions with more than one parameter
60
- * too cleanly; it's unclear how a test runner would display the expected
61
- * values. This will probably need a fix in the future.
62
- * @param stackStartFn The function to start the stack trace from
63
- * @param zodError The original `ZodError`
64
- * @param values Values which caused the error
65
- * @returns New `AssertionError`
66
- */
67
- protected fromZodError<Values>(zodError: z.ZodError, stackStartFn: (...args: any[]) => any, values: Values): AssertionError;
68
- /**
69
- * Checks if this is a "simple schema assertion" - one where subject
70
- * validation can be optimized by validating against the impl schema
71
- * directly.
72
- *
73
- * Simple assertions have:
74
- *
75
- * - A first slot that accepts any/unknown type (subject slot)
76
- * - All remaining slots are string literals (the assertion phrase)
77
- *
78
- * @returns True if this is a simple schema assertion
79
- */
80
- protected isSimpleSchemaAssertion(): boolean;
81
- protected maybeParseValuesArgMismatch<Args extends readonly unknown[]>(args: Args): ParsedResult<Parts> | undefined;
82
- /**
83
- * TODO: Fix the return types here. This is all sorts of confusing.
84
- *
85
- * @param slot Slot to check
86
- * @param slotIndex Index of slot
87
- * @param rawArg Raw argument
88
- * @returns
89
- */
90
- protected parseSlotForLiteral<Slot extends ArrayValues<Slots>>(slot: Slot, slotIndex: number, rawArg: unknown): boolean | ParsedResult<Parts>;
91
- /**
92
- * Generates a unique¹ ID for this assertion by combining content, structure,
93
- * and type information.
94
- *
95
- * - `s` is slot count
96
- * - `p` is part count
97
- *
98
- * Slugifies the string representation of the assertion. Does not collapse
99
- * adjacent hyphens, as hyphens are significant in phrase literals.
100
- *
101
- * @remarks
102
- * ¹: "Unique" here means "unique enough" for practical purposes. This is not
103
- * cryptographically unique, nor does it need to be. The goal is to avoid
104
- * collisions in common scenarios while keeping the ID human-readable.
105
- * @returns A human-readable unique identifier
106
- */
107
- private generateAssertionId;
108
- }
109
- //# sourceMappingURL=assertion.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assertion.d.ts","sourceRoot":"","sources":["../../src/assertion/assertion.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,OAAO,EAAE,cAAc,EAAwB,qBAAoB;AAGnE,OAAO,EAAE,KAAK,gBAAgB,EAAE,+BAA8B;AAE9D,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,8BAA6B;AAe9B;;GAEG;AACH,8BAAsB,eAAe,CACnC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,aAAa,CAAC,KAAK,CAAC,EACjC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CACnC,YAAW,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAItC,QAAQ,CAAC,KAAK,EAAE,KAAK;IACrB,QAAQ,CAAC,KAAK,EAAE,KAAK;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI;IALrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAGT,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI;IAMrB;;;;;;;;;;;;;OAaG;IACI,eAAe,IAAI,SAAS,MAAM,EAAE;IAqB3C;;OAEG;IACI,QAAQ,IAAI,MAAM;IAiHzB;;;;;;;;OAQG;IACH,SAAS,CAAC,wBAAwB,CAAC,MAAM,EACvC,MAAM,EAAE,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAC7C,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,MAAM,EAAE,MAAM,GACb,cAAc;IA0BjB;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,YAAY,CAAC,MAAM,EAC3B,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,MAAM,EAAE,MAAM,GACb,cAAc;IAsCjB;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,uBAAuB,IAAI,OAAO;IAc5C,SAAS,CAAC,2BAA2B,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACnE,IAAI,EAAE,IAAI,GACT,YAAY,CAAC,KAAK,CAAC,GAAG,SAAS;IAQlC;;;;;;;OAOG;IACH,SAAS,CAAC,mBAAmB,CAAC,IAAI,SAAS,WAAW,CAAC,KAAK,CAAC,EAC3D,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,GACd,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC;IA6BhC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,mBAAmB;CAW5B"}