@n1k1t/mock-server 0.1.1 → 0.1.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 (350) hide show
  1. package/lib/package.json +3 -2
  2. package/lib/src/client/helpers/expectations.d.ts +91 -0
  3. package/lib/src/client/helpers/expectations.d.ts.map +1 -0
  4. package/lib/src/client/helpers/expectations.js +66 -0
  5. package/lib/src/client/helpers/expectations.js.map +1 -0
  6. package/lib/src/client/helpers/index.d.ts +2 -0
  7. package/lib/src/client/helpers/index.d.ts.map +1 -0
  8. package/lib/src/client/helpers/index.js +18 -0
  9. package/lib/src/client/helpers/index.js.map +1 -0
  10. package/lib/src/client/index.d.ts +1 -0
  11. package/lib/src/client/index.d.ts.map +1 -1
  12. package/lib/src/client/index.js +1 -0
  13. package/lib/src/client/index.js.map +1 -1
  14. package/lib/src/client/methods/expectations.create.method.d.ts +1 -3
  15. package/lib/src/client/methods/expectations.create.method.d.ts.map +1 -1
  16. package/lib/src/client/methods/expectations.create.method.js +2 -2
  17. package/lib/src/client/methods/expectations.create.method.js.map +1 -1
  18. package/lib/src/client/methods/expectations.update.method.d.ts +2 -2
  19. package/lib/src/client/methods/expectations.update.method.js +5 -5
  20. package/lib/src/client/methods/expectations.update.method.js.map +1 -1
  21. package/lib/src/client/methods/ping.method.d.ts +1 -1
  22. package/lib/src/client/methods/ping.method.js.map +1 -1
  23. package/lib/src/client/models/client.d.ts +40 -0
  24. package/lib/src/client/models/client.d.ts.map +1 -0
  25. package/lib/src/client/models/client.js +33 -0
  26. package/lib/src/client/models/client.js.map +1 -0
  27. package/lib/src/client/models/client.spec.d.ts +2 -0
  28. package/lib/src/client/models/client.spec.d.ts.map +1 -0
  29. package/lib/src/client/models/client.spec.js +219 -0
  30. package/lib/src/client/models/client.spec.js.map +1 -0
  31. package/lib/src/client/models/index.d.ts +1 -0
  32. package/lib/src/client/models/index.d.ts.map +1 -1
  33. package/lib/src/client/models/index.js +1 -0
  34. package/lib/src/client/models/index.js.map +1 -1
  35. package/lib/src/client/models/method.d.ts +4 -4
  36. package/lib/src/client/models/method.d.ts.map +1 -1
  37. package/lib/src/client/models/method.js.map +1 -1
  38. package/lib/src/client/onsite.d.ts +4 -3
  39. package/lib/src/client/onsite.d.ts.map +1 -1
  40. package/lib/src/client/onsite.js +8 -6
  41. package/lib/src/client/onsite.js.map +1 -1
  42. package/lib/src/client/remote.d.ts +4 -4
  43. package/lib/src/client/remote.d.ts.map +1 -1
  44. package/lib/src/client/remote.js +11 -10
  45. package/lib/src/client/remote.js.map +1 -1
  46. package/lib/src/client/types.d.ts +2 -0
  47. package/lib/src/client/types.d.ts.map +1 -1
  48. package/lib/src/client/utils.d.ts +2 -2
  49. package/lib/src/client/utils.d.ts.map +1 -1
  50. package/lib/src/client/utils.js +25 -12
  51. package/lib/src/client/utils.js.map +1 -1
  52. package/lib/src/expectations/__utils__/index.d.ts +2 -2
  53. package/lib/src/expectations/__utils__/index.d.ts.map +1 -1
  54. package/lib/src/expectations/__utils__/index.js +31 -23
  55. package/lib/src/expectations/__utils__/index.js.map +1 -1
  56. package/lib/src/expectations/index.d.ts +1 -2
  57. package/lib/src/expectations/index.d.ts.map +1 -1
  58. package/lib/src/expectations/index.js +1 -2
  59. package/lib/src/expectations/index.js.map +1 -1
  60. package/lib/src/expectations/models/expectation.d.ts +35 -0
  61. package/lib/src/expectations/models/expectation.d.ts.map +1 -0
  62. package/lib/src/expectations/models/expectation.js +113 -0
  63. package/lib/src/expectations/models/expectation.js.map +1 -0
  64. package/lib/src/expectations/models/index.d.ts +4 -0
  65. package/lib/src/expectations/models/index.d.ts.map +1 -0
  66. package/lib/src/expectations/models/index.js +20 -0
  67. package/lib/src/expectations/models/index.js.map +1 -0
  68. package/lib/src/expectations/models/operator.d.ts +20 -0
  69. package/lib/src/expectations/models/operator.d.ts.map +1 -0
  70. package/lib/src/expectations/models/operator.js +41 -0
  71. package/lib/src/expectations/models/operator.js.map +1 -0
  72. package/lib/src/expectations/models/storage.d.ts +15 -0
  73. package/lib/src/expectations/models/storage.d.ts.map +1 -0
  74. package/lib/src/expectations/{storage.js → models/storage.js} +4 -14
  75. package/lib/src/expectations/models/storage.js.map +1 -0
  76. package/lib/src/expectations/models/storage.spec.d.ts +2 -0
  77. package/lib/src/expectations/models/storage.spec.d.ts.map +1 -0
  78. package/lib/src/expectations/models/storage.spec.js +111 -0
  79. package/lib/src/expectations/models/storage.spec.js.map +1 -0
  80. package/lib/src/expectations/operators/and.operator.d.ts +7 -2
  81. package/lib/src/expectations/operators/and.operator.d.ts.map +1 -1
  82. package/lib/src/expectations/operators/and.operator.js +21 -2
  83. package/lib/src/expectations/operators/and.operator.js.map +1 -1
  84. package/lib/src/expectations/operators/and.operator.spec.js +57 -39
  85. package/lib/src/expectations/operators/and.operator.spec.js.map +1 -1
  86. package/lib/src/expectations/operators/exec.operator.d.ts +7 -2
  87. package/lib/src/expectations/operators/exec.operator.d.ts.map +1 -1
  88. package/lib/src/expectations/operators/exec.operator.js +13 -18
  89. package/lib/src/expectations/operators/exec.operator.js.map +1 -1
  90. package/lib/src/expectations/operators/exec.operator.spec.js +49 -18
  91. package/lib/src/expectations/operators/exec.operator.spec.js.map +1 -1
  92. package/lib/src/expectations/operators/has.operator.d.ts +27 -2
  93. package/lib/src/expectations/operators/has.operator.d.ts.map +1 -1
  94. package/lib/src/expectations/operators/has.operator.js +106 -70
  95. package/lib/src/expectations/operators/has.operator.js.map +1 -1
  96. package/lib/src/expectations/operators/has.operator.spec.js +422 -161
  97. package/lib/src/expectations/operators/has.operator.spec.js.map +1 -1
  98. package/lib/src/expectations/operators/if.operator.d.ts +15 -2
  99. package/lib/src/expectations/operators/if.operator.d.ts.map +1 -1
  100. package/lib/src/expectations/operators/if.operator.js +44 -10
  101. package/lib/src/expectations/operators/if.operator.js.map +1 -1
  102. package/lib/src/expectations/operators/if.operator.spec.js +89 -65
  103. package/lib/src/expectations/operators/if.operator.spec.js.map +1 -1
  104. package/lib/src/expectations/operators/index.d.ts +2 -0
  105. package/lib/src/expectations/operators/index.d.ts.map +1 -1
  106. package/lib/src/expectations/operators/index.js +5 -1
  107. package/lib/src/expectations/operators/index.js.map +1 -1
  108. package/lib/src/expectations/operators/merge.operator.d.ts +13 -2
  109. package/lib/src/expectations/operators/merge.operator.d.ts.map +1 -1
  110. package/lib/src/expectations/operators/merge.operator.js +23 -19
  111. package/lib/src/expectations/operators/merge.operator.js.map +1 -1
  112. package/lib/src/expectations/operators/merge.operator.spec.js +43 -33
  113. package/lib/src/expectations/operators/merge.operator.spec.js.map +1 -1
  114. package/lib/src/expectations/operators/not.operator.d.ts +7 -2
  115. package/lib/src/expectations/operators/not.operator.d.ts.map +1 -1
  116. package/lib/src/expectations/operators/not.operator.js +21 -2
  117. package/lib/src/expectations/operators/not.operator.js.map +1 -1
  118. package/lib/src/expectations/operators/not.operator.spec.js +28 -9
  119. package/lib/src/expectations/operators/not.operator.spec.js.map +1 -1
  120. package/lib/src/expectations/operators/or.operator.d.ts +7 -2
  121. package/lib/src/expectations/operators/or.operator.d.ts.map +1 -1
  122. package/lib/src/expectations/operators/or.operator.js +21 -6
  123. package/lib/src/expectations/operators/or.operator.js.map +1 -1
  124. package/lib/src/expectations/operators/or.operator.spec.js +58 -39
  125. package/lib/src/expectations/operators/or.operator.spec.js.map +1 -1
  126. package/lib/src/expectations/operators/remove.operator.d.ts +12 -2
  127. package/lib/src/expectations/operators/remove.operator.d.ts.map +1 -1
  128. package/lib/src/expectations/operators/remove.operator.js +22 -17
  129. package/lib/src/expectations/operators/remove.operator.js.map +1 -1
  130. package/lib/src/expectations/operators/remove.operator.spec.js +40 -28
  131. package/lib/src/expectations/operators/remove.operator.spec.js.map +1 -1
  132. package/lib/src/expectations/operators/root.operator.d.ts +8 -0
  133. package/lib/src/expectations/operators/root.operator.d.ts.map +1 -0
  134. package/lib/src/expectations/operators/root.operator.js +36 -0
  135. package/lib/src/expectations/operators/root.operator.js.map +1 -0
  136. package/lib/src/expectations/operators/set.operator.d.ts +20 -2
  137. package/lib/src/expectations/operators/set.operator.d.ts.map +1 -1
  138. package/lib/src/expectations/operators/set.operator.js +40 -23
  139. package/lib/src/expectations/operators/set.operator.js.map +1 -1
  140. package/lib/src/expectations/operators/set.operator.spec.js +87 -43
  141. package/lib/src/expectations/operators/set.operator.spec.js.map +1 -1
  142. package/lib/src/expectations/operators/switch.operator.d.ts +25 -0
  143. package/lib/src/expectations/operators/switch.operator.d.ts.map +1 -0
  144. package/lib/src/expectations/operators/switch.operator.js +68 -0
  145. package/lib/src/expectations/operators/switch.operator.js.map +1 -0
  146. package/lib/src/expectations/operators/switch.operator.spec.d.ts +2 -0
  147. package/lib/src/expectations/operators/switch.operator.spec.d.ts.map +1 -0
  148. package/lib/src/expectations/operators/switch.operator.spec.js +129 -0
  149. package/lib/src/expectations/operators/switch.operator.spec.js.map +1 -0
  150. package/lib/src/expectations/types.d.ts +55 -56
  151. package/lib/src/expectations/types.d.ts.map +1 -1
  152. package/lib/src/expectations/types.js +13 -2
  153. package/lib/src/expectations/types.js.map +1 -1
  154. package/lib/src/expectations/utils.d.ts +19 -7
  155. package/lib/src/expectations/utils.d.ts.map +1 -1
  156. package/lib/src/expectations/utils.js +77 -50
  157. package/lib/src/expectations/utils.js.map +1 -1
  158. package/lib/src/server/endpoints/config.get.endpoint.d.ts +8 -3
  159. package/lib/src/server/endpoints/config.get.endpoint.d.ts.map +1 -1
  160. package/lib/src/server/endpoints/config.get.endpoint.js +2 -4
  161. package/lib/src/server/endpoints/config.get.endpoint.js.map +1 -1
  162. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts +9 -11
  163. package/lib/src/server/endpoints/expectations.create.endpoint.d.ts.map +1 -1
  164. package/lib/src/server/endpoints/expectations.create.endpoint.js +2 -3
  165. package/lib/src/server/endpoints/expectations.create.endpoint.js.map +1 -1
  166. package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts +8 -5
  167. package/lib/src/server/endpoints/expectations.delete.endpoint.d.ts.map +1 -1
  168. package/lib/src/server/endpoints/expectations.delete.endpoint.js +2 -2
  169. package/lib/src/server/endpoints/expectations.delete.endpoint.js.map +1 -1
  170. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts +8 -3
  171. package/lib/src/server/endpoints/expectations.get-list.endpoint.d.ts.map +1 -1
  172. package/lib/src/server/endpoints/expectations.get-list.endpoint.js +2 -2
  173. package/lib/src/server/endpoints/expectations.get-list.endpoint.js.map +1 -1
  174. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts +13 -11
  175. package/lib/src/server/endpoints/expectations.update.endpoint.d.ts.map +1 -1
  176. package/lib/src/server/endpoints/expectations.update.endpoint.js +4 -6
  177. package/lib/src/server/endpoints/expectations.update.endpoint.js.map +1 -1
  178. package/lib/src/server/endpoints/history.get-list.endpoint.d.ts +27 -0
  179. package/lib/src/server/endpoints/history.get-list.endpoint.d.ts.map +1 -0
  180. package/lib/src/server/endpoints/history.get-list.endpoint.js +11 -0
  181. package/lib/src/server/endpoints/history.get-list.endpoint.js.map +1 -0
  182. package/lib/src/server/endpoints/index.d.ts +1 -1
  183. package/lib/src/server/endpoints/index.d.ts.map +1 -1
  184. package/lib/src/server/endpoints/index.js +3 -3
  185. package/lib/src/server/endpoints/index.js.map +1 -1
  186. package/lib/src/server/endpoints/ping.endpoint.d.ts +8 -3
  187. package/lib/src/server/endpoints/ping.endpoint.d.ts.map +1 -1
  188. package/lib/src/server/endpoints/ping.endpoint.js +1 -1
  189. package/lib/src/server/endpoints/ping.endpoint.js.map +1 -1
  190. package/lib/src/server/history/model.d.ts +16 -16
  191. package/lib/src/server/history/model.d.ts.map +1 -1
  192. package/lib/src/server/history/model.js +21 -6
  193. package/lib/src/server/history/model.js.map +1 -1
  194. package/lib/src/server/history/storage.d.ts +3 -4
  195. package/lib/src/server/history/storage.d.ts.map +1 -1
  196. package/lib/src/server/history/storage.js +2 -2
  197. package/lib/src/server/history/storage.js.map +1 -1
  198. package/lib/src/server/index.d.ts +10 -6
  199. package/lib/src/server/index.d.ts.map +1 -1
  200. package/lib/src/server/index.js +9 -18
  201. package/lib/src/server/index.js.map +1 -1
  202. package/lib/src/server/middlewares/add-history.middleware.d.ts +14 -4
  203. package/lib/src/server/middlewares/add-history.middleware.d.ts.map +1 -1
  204. package/lib/src/server/middlewares/add-history.middleware.js +5 -6
  205. package/lib/src/server/middlewares/add-history.middleware.js.map +1 -1
  206. package/lib/src/server/middlewares/destroy-request.midleware.d.ts +14 -4
  207. package/lib/src/server/middlewares/destroy-request.midleware.d.ts.map +1 -1
  208. package/lib/src/server/middlewares/destroy-request.midleware.js +4 -5
  209. package/lib/src/server/middlewares/destroy-request.midleware.js.map +1 -1
  210. package/lib/src/server/middlewares/handle-expectation-delay.middleware.d.ts +14 -4
  211. package/lib/src/server/middlewares/handle-expectation-delay.middleware.d.ts.map +1 -1
  212. package/lib/src/server/middlewares/handle-expectation-delay.middleware.js +1 -2
  213. package/lib/src/server/middlewares/handle-expectation-delay.middleware.js.map +1 -1
  214. package/lib/src/server/middlewares/handle-expectation-forward.middleware.d.ts +14 -4
  215. package/lib/src/server/middlewares/handle-expectation-forward.middleware.d.ts.map +1 -1
  216. package/lib/src/server/middlewares/handle-expectation-forward.middleware.js +31 -45
  217. package/lib/src/server/middlewares/handle-expectation-forward.middleware.js.map +1 -1
  218. package/lib/src/server/middlewares/index.d.ts +4 -4
  219. package/lib/src/server/middlewares/index.d.ts.map +1 -1
  220. package/lib/src/server/middlewares/index.js +9 -9
  221. package/lib/src/server/middlewares/index.js.map +1 -1
  222. package/lib/src/server/middlewares/internal-route.middleware.d.ts +14 -2
  223. package/lib/src/server/middlewares/internal-route.middleware.d.ts.map +1 -1
  224. package/lib/src/server/middlewares/internal-route.middleware.js +4 -3
  225. package/lib/src/server/middlewares/internal-route.middleware.js.map +1 -1
  226. package/lib/src/server/middlewares/match-expectation.middleware.d.ts +18 -0
  227. package/lib/src/server/middlewares/match-expectation.middleware.d.ts.map +1 -0
  228. package/lib/src/server/middlewares/match-expectation.middleware.js +20 -0
  229. package/lib/src/server/middlewares/match-expectation.middleware.js.map +1 -0
  230. package/lib/src/server/middlewares/reply.middleware.d.ts +15 -5
  231. package/lib/src/server/middlewares/reply.middleware.d.ts.map +1 -1
  232. package/lib/src/server/middlewares/reply.middleware.js +34 -25
  233. package/lib/src/server/middlewares/reply.middleware.js.map +1 -1
  234. package/lib/src/server/middlewares/resolve-public.middleware.d.ts +14 -2
  235. package/lib/src/server/middlewares/resolve-public.middleware.d.ts.map +1 -1
  236. package/lib/src/server/middlewares/resolve-public.middleware.js +11 -11
  237. package/lib/src/server/middlewares/resolve-public.middleware.js.map +1 -1
  238. package/lib/src/server/models/endpoint.d.ts +19 -13
  239. package/lib/src/server/models/endpoint.d.ts.map +1 -1
  240. package/lib/src/server/models/endpoint.js +2 -2
  241. package/lib/src/server/models/endpoint.js.map +1 -1
  242. package/lib/src/server/models/middleware.d.ts +18 -20
  243. package/lib/src/server/models/middleware.d.ts.map +1 -1
  244. package/lib/src/server/models/middleware.js +6 -10
  245. package/lib/src/server/models/middleware.js.map +1 -1
  246. package/lib/src/server/models/reply-service/index.d.ts +6 -6
  247. package/lib/src/server/models/reply-service/index.d.ts.map +1 -1
  248. package/lib/src/server/models/reply-service/index.js +24 -24
  249. package/lib/src/server/models/reply-service/index.js.map +1 -1
  250. package/lib/src/server/models/request-context/http.d.ts +42 -0
  251. package/lib/src/server/models/request-context/http.d.ts.map +1 -0
  252. package/lib/src/server/models/request-context/http.js +51 -0
  253. package/lib/src/server/models/request-context/http.js.map +1 -0
  254. package/lib/src/server/models/request-context/index.d.ts +4 -57
  255. package/lib/src/server/models/request-context/index.d.ts.map +1 -1
  256. package/lib/src/server/models/request-context/index.js +4 -57
  257. package/lib/src/server/models/request-context/index.js.map +1 -1
  258. package/lib/src/server/models/request-context/model.d.ts +13 -0
  259. package/lib/src/server/models/request-context/model.d.ts.map +1 -0
  260. package/lib/src/server/models/request-context/model.js +14 -0
  261. package/lib/src/server/models/request-context/model.js.map +1 -0
  262. package/lib/src/server/models/request-context/types.d.ts +14 -18
  263. package/lib/src/server/models/request-context/types.d.ts.map +1 -1
  264. package/lib/src/server/models/request-context/utils.d.ts +7 -3
  265. package/lib/src/server/models/request-context/utils.d.ts.map +1 -1
  266. package/lib/src/server/models/request-context/utils.js +48 -25
  267. package/lib/src/server/models/request-context/utils.js.map +1 -1
  268. package/lib/src/server/models/request-context/ws.d.ts +21 -0
  269. package/lib/src/server/models/request-context/ws.d.ts.map +1 -0
  270. package/lib/src/server/models/request-context/ws.js +22 -0
  271. package/lib/src/server/models/request-context/ws.js.map +1 -0
  272. package/lib/src/server/models/server-context.d.ts +4 -4
  273. package/lib/src/server/models/server-context.d.ts.map +1 -1
  274. package/lib/src/server/models/server-context.js +5 -5
  275. package/lib/src/server/models/server-context.js.map +1 -1
  276. package/lib/src/server/router.d.ts +4 -7
  277. package/lib/src/server/router.d.ts.map +1 -1
  278. package/lib/src/server/router.js +5 -12
  279. package/lib/src/server/router.js.map +1 -1
  280. package/lib/src/server/ws-exchange/index.d.ts +5 -0
  281. package/lib/src/server/ws-exchange/index.d.ts.map +1 -0
  282. package/lib/src/server/{web-socket-exchange → ws-exchange}/index.js +3 -3
  283. package/lib/src/server/ws-exchange/index.js.map +1 -0
  284. package/lib/src/server/ws-exchange/types.d.ts +12 -0
  285. package/lib/src/server/ws-exchange/types.d.ts.map +1 -0
  286. package/lib/src/server/ws-exchange/types.js.map +1 -0
  287. package/lib/src/types.d.ts +0 -1
  288. package/lib/src/types.d.ts.map +1 -1
  289. package/lib/src/utils/index.d.ts +1 -0
  290. package/lib/src/utils/index.d.ts.map +1 -1
  291. package/lib/src/utils/index.js +1 -0
  292. package/lib/src/utils/index.js.map +1 -1
  293. package/lib/src/utils/json.d.ts +1 -1
  294. package/lib/src/utils/json.d.ts.map +1 -1
  295. package/lib/src/utils/json.js +3 -3
  296. package/lib/src/utils/json.js.map +1 -1
  297. package/lib/src/utils/regexp.d.ts +2 -0
  298. package/lib/src/utils/regexp.d.ts.map +1 -0
  299. package/lib/src/utils/regexp.js +9 -0
  300. package/lib/src/utils/regexp.js.map +1 -0
  301. package/lib/test/index.js +105 -137
  302. package/lib/test/index.js.map +1 -1
  303. package/lib/tsconfig.tsbuildinfo +1 -1
  304. package/lib/types/common.global.d.ts +13 -6
  305. package/lib/types/common.global.d.ts.map +1 -1
  306. package/lib/types/lib.d.ts +1 -0
  307. package/lib/types/lib.d.ts.map +1 -1
  308. package/lib/types/lib.js +1 -0
  309. package/lib/types/lib.js.map +1 -1
  310. package/package.json +3 -2
  311. package/types/common.global.ts +21 -2
  312. package/types/lib.ts +1 -0
  313. package/lib/src/expectations/model.d.ts +0 -39
  314. package/lib/src/expectations/model.d.ts.map +0 -1
  315. package/lib/src/expectations/model.js +0 -90
  316. package/lib/src/expectations/model.js.map +0 -1
  317. package/lib/src/expectations/operators/utils.d.ts +0 -20
  318. package/lib/src/expectations/operators/utils.d.ts.map +0 -1
  319. package/lib/src/expectations/operators/utils.js +0 -67
  320. package/lib/src/expectations/operators/utils.js.map +0 -1
  321. package/lib/src/expectations/storage.d.ts +0 -19
  322. package/lib/src/expectations/storage.d.ts.map +0 -1
  323. package/lib/src/expectations/storage.js.map +0 -1
  324. package/lib/src/expectations/utils.spec.d.ts +0 -2
  325. package/lib/src/expectations/utils.spec.d.ts.map +0 -1
  326. package/lib/src/expectations/utils.spec.js +0 -59
  327. package/lib/src/expectations/utils.spec.js.map +0 -1
  328. package/lib/src/expectations/validation-schemas.d.ts +0 -14
  329. package/lib/src/expectations/validation-schemas.d.ts.map +0 -1
  330. package/lib/src/expectations/validation-schemas.js +0 -36
  331. package/lib/src/expectations/validation-schemas.js.map +0 -1
  332. package/lib/src/server/endpoints/history-records.get-list.endpoint.d.ts +0 -16
  333. package/lib/src/server/endpoints/history-records.get-list.endpoint.d.ts.map +0 -1
  334. package/lib/src/server/endpoints/history-records.get-list.endpoint.js +0 -9
  335. package/lib/src/server/endpoints/history-records.get-list.endpoint.js.map +0 -1
  336. package/lib/src/server/middlewares/validate-expectation-request.middleware.d.ts +0 -6
  337. package/lib/src/server/middlewares/validate-expectation-request.middleware.d.ts.map +0 -1
  338. package/lib/src/server/middlewares/validate-expectation-request.middleware.js +0 -20
  339. package/lib/src/server/middlewares/validate-expectation-request.middleware.js.map +0 -1
  340. package/lib/src/server/types.d.ts +0 -6
  341. package/lib/src/server/types.d.ts.map +0 -1
  342. package/lib/src/server/types.js.map +0 -1
  343. package/lib/src/server/web-socket-exchange/index.d.ts +0 -5
  344. package/lib/src/server/web-socket-exchange/index.d.ts.map +0 -1
  345. package/lib/src/server/web-socket-exchange/index.js.map +0 -1
  346. package/lib/src/server/web-socket-exchange/types.d.ts +0 -12
  347. package/lib/src/server/web-socket-exchange/types.d.ts.map +0 -1
  348. package/lib/src/server/web-socket-exchange/types.js +0 -3
  349. package/lib/src/server/web-socket-exchange/types.js.map +0 -1
  350. /package/lib/src/server/{types.js → ws-exchange/types.js} +0 -0
@@ -1,8 +1,18 @@
1
1
  import { Middleware } from '../models';
2
- declare const _default: Middleware & {
3
- required: "expectation"[];
4
- } & {
5
- handler: import("../models").TMiddlewareHandler<"expectation">;
2
+ declare const _default: Middleware<"expectation", import("../models").HttpRequestContext<unknown> & {
3
+ shared: SetRequiredKeys<{
4
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
5
+ history?: import("../history").History;
6
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
7
+ }, "expectation">;
8
+ }> & {
9
+ handler: TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
10
+ shared: SetRequiredKeys<{
11
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
12
+ history?: import("../history").History;
13
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
14
+ }, "expectation">;
15
+ }, (shared?: Partial<import("../models").HttpRequestContext["shared"]>) => unknown]>;
6
16
  };
7
17
  export default _default;
8
18
  //# sourceMappingURL=handle-expectation-delay.middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle-expectation-delay.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-delay.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;AAGvC,wBASK"}
1
+ {"version":3,"file":"handle-expectation-delay.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-delay.middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;AAGvC,wBAQK"}
@@ -7,8 +7,7 @@ const lodash_1 = __importDefault(require("lodash"));
7
7
  const models_1 = require("../models");
8
8
  const utils_1 = require("../../utils");
9
9
  exports.default = models_1.Middleware
10
- .build(__filename)
11
- .requires(['expectation'])
10
+ .build(__filename, ['expectation'])
12
11
  .assignHandler(async (context, next) => {
13
12
  if (context.shared.expectation.delay) {
14
13
  await (0, utils_1.wait)(lodash_1.default.flatten([context.shared.expectation.delay])[0].ms);
@@ -1 +1 @@
1
- {"version":3,"file":"handle-expectation-delay.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-delay.middleware.ts"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AAEvB,sCAAuC;AACvC,uCAAmC;AAEnC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC;KACzB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACrC,MAAM,IAAA,YAAI,EAAC,gBAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,EAAE,CAAC;AACT,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"handle-expectation-delay.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-delay.middleware.ts"],"names":[],"mappings":";;;;;AAAA,oDAAuB;AAEvB,sCAAuC;AACvC,uCAAmC;AAEnC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;KAClC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACrC,MAAM,IAAA,YAAI,EAAC,gBAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,EAAE,CAAC;AACT,CAAC,CAAC,CAAC"}
@@ -1,8 +1,18 @@
1
1
  import { Middleware } from '../models';
2
- declare const _default: Middleware & {
3
- required: ("expectation" | "historyRecord")[];
4
- } & {
5
- handler: import("../models").TMiddlewareHandler<"expectation" | "historyRecord">;
2
+ declare const _default: Middleware<"expectation" | "history", import("../models").HttpRequestContext<unknown> & {
3
+ shared: SetRequiredKeys<{
4
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
5
+ history?: import("../history").History;
6
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
7
+ }, "expectation" | "history">;
8
+ }> & {
9
+ handler: TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
10
+ shared: SetRequiredKeys<{
11
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
12
+ history?: import("../history").History;
13
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
14
+ }, "expectation" | "history">;
15
+ }, (shared?: Partial<import("../models").HttpRequestContext["shared"]>) => unknown]>;
6
16
  };
7
17
  export default _default;
8
18
  //# sourceMappingURL=handle-expectation-forward.middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle-expectation-forward.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-forward.middleware.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;AAEvC,wBA+FK"}
1
+ {"version":3,"file":"handle-expectation-forward.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-forward.middleware.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,UAAU,EAAkC,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;AAE3F,wBAmFK"}
@@ -6,40 +6,40 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const axios_1 = __importDefault(require("axios"));
7
7
  const https_proxy_agent_1 = __importDefault(require("https-proxy-agent"));
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const utils_1 = require("../../utils");
10
9
  const models_1 = require("../models");
11
10
  exports.default = models_1.Middleware
12
- .build(__filename)
13
- .requires(['expectation', 'historyRecord'])
11
+ .build(__filename, ['expectation', 'history'])
14
12
  .assignHandler(async (context, next) => {
15
13
  if (!context.shared.expectation.forward) {
16
14
  return next();
17
15
  }
18
- const { protocol, host, port, timeout, proxy } = context.shared.expectation.forward;
19
- const manipulatedContext = context.shared.expectation
20
- .manipulateContext('request', context.toPlain(), { clone: true });
21
- const body = manipulatedContext.body === undefined ? manipulatedContext.bodyRaw : manipulatedContext.body;
22
- const bodyRaw = Buffer.from(typeof body === 'object' ? JSON.stringify(body) : String(body));
23
- Object.assign(manipulatedContext, {
24
- bodyRaw,
16
+ const { url, baseUrl, timeout, proxy } = context.shared.expectation.forward;
17
+ const forwarded = context.toPlain({ locations: ['incoming'], clone: true });
18
+ context.shared.expectation.request?.manipulate(forwarded);
19
+ const incomingType = (0, models_1.extractPayloadType)(forwarded.incoming.headers);
20
+ const body = forwarded.incoming.body === undefined ? forwarded.incoming.bodyRaw : forwarded.incoming.body;
21
+ const bodyRaw = Buffer.from(typeof body === 'object' ? (0, models_1.serializePayload)(incomingType, body) : String(body));
22
+ Object.assign(forwarded.incoming, {
23
+ type: incomingType,
24
+ bodyRaw: bodyRaw.toString(),
25
25
  headers: {
26
26
  'connection': 'close',
27
- ...manipulatedContext.headers,
28
- ...((!manipulatedContext.headers?.['transfer-encoding'] && bodyRaw?.length) && {
27
+ ...forwarded.incoming.headers,
28
+ ...((!forwarded.incoming.headers?.['transfer-encoding'] && bodyRaw?.length) && {
29
29
  'content-length': String(bodyRaw.length),
30
30
  }),
31
31
  },
32
32
  });
33
- const historyRecord = context.shared.historyRecord.assign({ forwaded: { request: manipulatedContext } });
34
- context.exchange.ws.publish('history:updated', historyRecord);
33
+ const history = context.shared.history.extendForwarded(forwarded);
34
+ context.server.exchange.ws.publish('history:updated', history);
35
35
  const response = await (0, axios_1.default)({
36
36
  timeout: timeout ?? 1000 * 30,
37
- method: manipulatedContext.method,
38
- headers: manipulatedContext.headers,
39
- url: manipulatedContext.path,
40
- baseURL: `${protocol.toLocaleLowerCase()}://${host}:${port}`,
37
+ method: forwarded.incoming.method,
38
+ headers: forwarded.incoming.headers,
39
+ ...(url && { url }),
40
+ ...(baseUrl && { baseURL: baseUrl, url: forwarded.incoming.path }),
41
41
  data: bodyRaw,
42
- params: context.query,
42
+ params: context.incoming.query,
43
43
  responseType: 'arraybuffer',
44
44
  ...(proxy && {
45
45
  proxy,
@@ -47,40 +47,26 @@ exports.default = models_1.Middleware
47
47
  }),
48
48
  }).catch((error) => {
49
49
  if (!error.response) {
50
- historyRecord
50
+ history
51
51
  .assign({ error: lodash_1.default.pick(error, ['message', 'code']) })
52
52
  .changeState('finished');
53
- context.exchange.ws.publish('history:updated', historyRecord);
53
+ context.server.exchange.ws.publish('history:updated', history);
54
54
  context.reply.internalError(error.message);
55
55
  throw error;
56
56
  }
57
57
  return error.response;
58
58
  });
59
- const contentTypeKey = Object
60
- .keys(response.headers)
61
- .find((key) => key.toLowerCase() === 'content-type');
62
- const isJsonData = lodash_1.default.flatten([lodash_1.default.get(response.headers, contentTypeKey ?? '', '')])
63
- .join(',')
64
- .toLowerCase()
65
- .includes('application/json');
66
- const parsingResponseDataResult = isJsonData ? (0, utils_1.parseJsonSafe)(response.data) : null;
67
- const responseContext = {
68
- payloadType: isJsonData ? 'json' : 'plain',
69
- statusCode: response.status,
59
+ const outgoingType = (0, models_1.extractPayloadType)(response.headers);
60
+ const dataRaw = response.data?.toString() ?? '';
61
+ forwarded.outgoing = {
62
+ type: outgoingType,
63
+ status: response.status,
70
64
  headers: response.headers,
71
- dataRaw: response.data?.toString() ?? '',
72
- ...(parsingResponseDataResult?.status === 'OK' && { data: parsingResponseDataResult.result }),
65
+ dataRaw,
66
+ data: (0, models_1.parsePayload)(outgoingType, dataRaw),
73
67
  };
74
- historyRecord.extendForwarded({
75
- response: responseContext,
76
- curl: lodash_1.default.get(response.config, 'curlCommand'),
77
- });
78
- context.exchange.ws.publish('history:updated', historyRecord);
79
- return next({
80
- forwarded: {
81
- request: manipulatedContext,
82
- response: responseContext,
83
- },
84
- });
68
+ history.extendForwarded(forwarded);
69
+ context.server.exchange.ws.publish('history:updated', history.toPlain());
70
+ return next({ forwarded });
85
71
  });
86
72
  //# sourceMappingURL=handle-expectation-forward.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle-expectation-forward.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-forward.middleware.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0C;AAC1C,0EAAgD;AAChD,oDAAuB;AAGvB,uCAA4C;AAC5C,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,QAAQ,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;KAC1C,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACxC,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IACpF,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW;SAClD,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpE,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC;IAC1G,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5F,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QAChC,OAAO;QACP,OAAO,EAAE;YACP,YAAY,EAAE,OAAO;YAErB,GAAG,kBAAkB,CAAC,OAAO;YAC7B,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,mBAAmB,CAAC,IAAI,OAAO,EAAE,MAAM,CAAC,IAAI;gBAC7E,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aACzC,CAAC;SACH;KACF,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;IACzG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;IAE9D,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAK,EAAC;QAC3B,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,EAAE;QAE7B,MAAM,EAAE,kBAAkB,CAAC,MAAM;QACjC,OAAO,EAAE,kBAAkB,CAAC,OAAO;QAEnC,GAAG,EAAE,kBAAkB,CAAC,IAAI;QAC5B,OAAO,EAAE,GAAG,QAAQ,CAAC,iBAAiB,EAAE,MAAM,IAAI,IAAI,IAAI,EAAE;QAE5D,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,YAAY,EAAE,aAAa;QAE3B,GAAG,CAAC,KAAK,IAAI;YACX,KAAK;YACL,UAAU,EAAE,IAAA,2BAAe,EAAC,KAAK,CAAC,IAAI,CAAC;SACxC,CAAC;KACH,CAAC,CAAC,KAAK,CAAC,CAAC,KAAiB,EAAE,EAAE;QAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,aAAa;iBACV,MAAM,CAAC,EAAE,KAAK,EAAE,gBAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;iBACrD,WAAW,CAAC,UAAU,CAAC,CAAC;YAE3B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;YAC9D,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE3C,MAAM,KAAK,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC,QAAQ,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,MAAM;SAC1B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;SACtB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,gBAAC,CAAC,OAAO,CAAC,CAAC,gBAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;SAC9E,IAAI,CAAC,GAAG,CAAC;SACT,WAAW,EAAE;SACb,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAEhC,MAAM,yBAAyB,GAAG,UAAU,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnF,MAAM,eAAe,GAA0B;QAC7C,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QAE1C,UAAU,EAAE,QAAQ,CAAC,MAAM;QAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;QAEzB,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxC,GAAG,CAAC,yBAAyB,EAAE,MAAM,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,yBAAyB,CAAC,MAAM,EAAE,CAAC;KAC9F,CAAC;IAEF,aAAa,CAAC,eAAe,CAAC;QAC5B,QAAQ,EAAE,eAAe;QACzB,IAAI,EAAE,gBAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;KAC5C,CAAC,CAAC;IAEH,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;IAE9D,OAAO,IAAI,CAAC;QACV,SAAS,EAAE;YACT,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,eAAe;SAC1B;KACF,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"handle-expectation-forward.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/handle-expectation-forward.middleware.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0C;AAC1C,0EAAgD;AAChD,oDAAuB;AAEvB,sCAA2F;AAE3F,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;KAC7C,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACxC,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IAC5E,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5E,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAE1D,MAAM,YAAY,GAAG,IAAA,2BAAkB,EAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEpE,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC1G,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,yBAAgB,EAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5G,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE;QAChC,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;QAE3B,OAAO,EAAE;YACP,YAAY,EAAE,OAAO;YAErB,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO;YAC7B,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,mBAAmB,CAAC,IAAI,OAAO,EAAE,MAAM,CAAC,IAAI;gBAC7E,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aACzC,CAAC;SACH;KACF,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAE/D,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAK,EAAC;QAC3B,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,EAAE;QAE7B,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM;QACjC,OAAO,EAA0B,SAAS,CAAC,QAAQ,CAAC,OAAO;QAE3D,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;QACnB,GAAG,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAElE,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK;QAC9B,YAAY,EAAE,aAAa;QAE3B,GAAG,CAAC,KAAK,IAAI;YACX,KAAK;YACL,UAAU,EAAE,IAAA,2BAAe,EAAC,KAAK,CAAC,IAAI,CAAC;SACxC,CAAC;KACH,CAAC,CAAC,KAAK,CAAC,CAAC,KAAiB,EAAE,EAAE;QAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO;iBACJ,MAAM,CAAC,EAAE,KAAK,EAAE,gBAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;iBACrD,WAAW,CAAC,UAAU,CAAC,CAAC;YAE3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YAC/D,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE3C,MAAM,KAAK,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC,QAAQ,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,IAAA,2BAAkB,EAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEhD,SAAS,CAAC,QAAQ,GAAG;QACnB,IAAI,EAAE,YAAY;QAElB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;QAEzB,OAAO;QACP,IAAI,EAAE,IAAA,qBAAY,EAAC,YAAY,EAAE,OAAO,CAAC;KAC1C,CAAC;IAEF,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACnC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEzE,OAAO,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
@@ -1,9 +1,9 @@
1
- export { default as handleInternalMiddleware } from './internal-route.middleware';
2
- export { default as resolvePublicMiddleware } from './resolve-public.middleware';
3
- export { default as validateExpectationRequestMiddleware } from './validate-expectation-request.middleware';
4
1
  export { default as handleExpectationForwardMiddleware } from './handle-expectation-forward.middleware';
5
2
  export { default as handleExpectationDelayMiddleware } from './handle-expectation-delay.middleware';
3
+ export { default as buildDestroyRequestMiddleware } from './destroy-request.midleware';
4
+ export { default as matchExpectationMiddleware } from './match-expectation.middleware';
5
+ export { default as handleInternalMiddleware } from './internal-route.middleware';
6
+ export { default as resolvePublicMiddleware } from './resolve-public.middleware';
6
7
  export { default as addHistoryMiddleware } from './add-history.middleware';
7
8
  export { default as replyMiddleware } from './reply.middleware';
8
- export { default as buildDestroyRequestMiddleware } from './destroy-request.midleware';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,oCAAoC,EAAE,MAAM,2CAA2C,CAAC;AAC5G,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AACxG,OAAO,EAAE,OAAO,IAAI,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AACpG,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AACxG,OAAO,EAAE,OAAO,IAAI,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AACpG,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC"}
@@ -3,21 +3,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.buildDestroyRequestMiddleware = exports.replyMiddleware = exports.addHistoryMiddleware = exports.handleExpectationDelayMiddleware = exports.handleExpectationForwardMiddleware = exports.validateExpectationRequestMiddleware = exports.resolvePublicMiddleware = exports.handleInternalMiddleware = void 0;
7
- var internal_route_middleware_1 = require("./internal-route.middleware");
8
- Object.defineProperty(exports, "handleInternalMiddleware", { enumerable: true, get: function () { return __importDefault(internal_route_middleware_1).default; } });
9
- var resolve_public_middleware_1 = require("./resolve-public.middleware");
10
- Object.defineProperty(exports, "resolvePublicMiddleware", { enumerable: true, get: function () { return __importDefault(resolve_public_middleware_1).default; } });
11
- var validate_expectation_request_middleware_1 = require("./validate-expectation-request.middleware");
12
- Object.defineProperty(exports, "validateExpectationRequestMiddleware", { enumerable: true, get: function () { return __importDefault(validate_expectation_request_middleware_1).default; } });
6
+ exports.replyMiddleware = exports.addHistoryMiddleware = exports.resolvePublicMiddleware = exports.handleInternalMiddleware = exports.matchExpectationMiddleware = exports.buildDestroyRequestMiddleware = exports.handleExpectationDelayMiddleware = exports.handleExpectationForwardMiddleware = void 0;
13
7
  var handle_expectation_forward_middleware_1 = require("./handle-expectation-forward.middleware");
14
8
  Object.defineProperty(exports, "handleExpectationForwardMiddleware", { enumerable: true, get: function () { return __importDefault(handle_expectation_forward_middleware_1).default; } });
15
9
  var handle_expectation_delay_middleware_1 = require("./handle-expectation-delay.middleware");
16
10
  Object.defineProperty(exports, "handleExpectationDelayMiddleware", { enumerable: true, get: function () { return __importDefault(handle_expectation_delay_middleware_1).default; } });
11
+ var destroy_request_midleware_1 = require("./destroy-request.midleware");
12
+ Object.defineProperty(exports, "buildDestroyRequestMiddleware", { enumerable: true, get: function () { return __importDefault(destroy_request_midleware_1).default; } });
13
+ var match_expectation_middleware_1 = require("./match-expectation.middleware");
14
+ Object.defineProperty(exports, "matchExpectationMiddleware", { enumerable: true, get: function () { return __importDefault(match_expectation_middleware_1).default; } });
15
+ var internal_route_middleware_1 = require("./internal-route.middleware");
16
+ Object.defineProperty(exports, "handleInternalMiddleware", { enumerable: true, get: function () { return __importDefault(internal_route_middleware_1).default; } });
17
+ var resolve_public_middleware_1 = require("./resolve-public.middleware");
18
+ Object.defineProperty(exports, "resolvePublicMiddleware", { enumerable: true, get: function () { return __importDefault(resolve_public_middleware_1).default; } });
17
19
  var add_history_middleware_1 = require("./add-history.middleware");
18
20
  Object.defineProperty(exports, "addHistoryMiddleware", { enumerable: true, get: function () { return __importDefault(add_history_middleware_1).default; } });
19
21
  var reply_middleware_1 = require("./reply.middleware");
20
22
  Object.defineProperty(exports, "replyMiddleware", { enumerable: true, get: function () { return __importDefault(reply_middleware_1).default; } });
21
- var destroy_request_midleware_1 = require("./destroy-request.midleware");
22
- Object.defineProperty(exports, "buildDestroyRequestMiddleware", { enumerable: true, get: function () { return __importDefault(destroy_request_midleware_1).default; } });
23
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/middlewares/index.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAkF;AAAzE,sJAAA,OAAO,OAA4B;AAC5C,yEAAiF;AAAxE,qJAAA,OAAO,OAA2B;AAC3C,qGAA4G;AAAnG,gLAAA,OAAO,OAAwC;AACxD,iGAAwG;AAA/F,4KAAA,OAAO,OAAsC;AACtD,6FAAoG;AAA3F,wKAAA,OAAO,OAAoC;AACpD,mEAA2E;AAAlE,+IAAA,OAAO,OAAwB;AACxC,uDAAgE;AAAvD,oIAAA,OAAO,OAAmB;AACnC,yEAAuF;AAA9E,2JAAA,OAAO,OAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/middlewares/index.ts"],"names":[],"mappings":";;;;;;AAAA,iGAAwG;AAA/F,4KAAA,OAAO,OAAsC;AACtD,6FAAoG;AAA3F,wKAAA,OAAO,OAAoC;AACpD,yEAAuF;AAA9E,2JAAA,OAAO,OAAiC;AACjD,+EAAuF;AAA9E,2JAAA,OAAO,OAA8B;AAC9C,yEAAkF;AAAzE,sJAAA,OAAO,OAA4B;AAC5C,yEAAiF;AAAxE,qJAAA,OAAO,OAA2B;AAC3C,mEAA2E;AAAlE,+IAAA,OAAO,OAAwB;AACxC,uDAAgE;AAAvD,oIAAA,OAAO,OAAmB"}
@@ -1,6 +1,18 @@
1
1
  import { Middleware } from '../models';
2
- declare const _default: Middleware & {
3
- handler: import("../models").TMiddlewareHandler<never>;
2
+ declare const _default: Middleware<never, import("../models").HttpRequestContext<unknown> & {
3
+ shared: SetRequiredKeys<{
4
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
5
+ history?: import("../history").History;
6
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
7
+ }, never>;
8
+ }> & {
9
+ handler: TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
10
+ shared: SetRequiredKeys<{
11
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
12
+ history?: import("../history").History;
13
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
14
+ }, never>;
15
+ }, (shared?: Partial<import("../models").HttpRequestContext["shared"]>) => unknown]>;
4
16
  };
5
17
  export default _default;
6
18
  //# sourceMappingURL=internal-route.middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal-route.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/internal-route.middleware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;AAEvC,wBAKK"}
1
+ {"version":3,"file":"internal-route.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/internal-route.middleware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;AAEvC,wBAOK"}
@@ -4,8 +4,9 @@ const router_1 = require("../router");
4
4
  const models_1 = require("../models");
5
5
  exports.default = models_1.Middleware
6
6
  .build(__filename)
7
- .assignHandler((content, next) => {
8
- const endpoint = (0, router_1.resolveInternalEndpoint)(content);
9
- return endpoint ? endpoint.handle() : next();
7
+ .assignHandler((context, next) => {
8
+ const key = [context.incoming.method, context.incoming.path].join(':');
9
+ const endpoint = router_1.routes[context.type][key];
10
+ return endpoint?.handler ? endpoint.handler(context) : next();
10
11
  });
11
12
  //# sourceMappingURL=internal-route.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal-route.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/internal-route.middleware.ts"],"names":[],"mappings":";;AAEA,sCAAoD;AACpD,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;IAC/B,MAAM,QAAQ,GAAG,IAAA,gCAAuB,EAAC,OAAO,CAAC,CAAC;IAClD,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC/C,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"internal-route.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/internal-route.middleware.ts"],"names":[],"mappings":";;AAEA,sCAAmC;AACnC,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;IAC/B,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,eAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAE3C,OAAO,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAChE,CAAC,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { Middleware } from '../models';
2
+ declare const _default: Middleware<never, import("../models").HttpRequestContext<unknown> & {
3
+ shared: SetRequiredKeys<{
4
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
5
+ history?: import("../history").History;
6
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
7
+ }, never>;
8
+ }> & {
9
+ handler: TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
10
+ shared: SetRequiredKeys<{
11
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
12
+ history?: import("../history").History;
13
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
14
+ }, never>;
15
+ }, (shared?: Partial<import("../models").HttpRequestContext["shared"]>) => unknown]>;
16
+ };
17
+ export default _default;
18
+ //# sourceMappingURL=match-expectation.middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"match-expectation.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/match-expectation.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;AAEvC,wBAmBK"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const models_1 = require("../models");
4
+ exports.default = models_1.Middleware
5
+ .build(__filename)
6
+ .assignHandler((context, next) => {
7
+ const plain = context.toPlain();
8
+ const expectation = context.server.storage.expectations.match('request', plain);
9
+ if (!expectation) {
10
+ const historyRecord = context.server.storage.history
11
+ .register(plain)
12
+ .changeState('finished');
13
+ context.server.exchange.ws.publish('history:added', historyRecord);
14
+ return context.reply.notFound();
15
+ }
16
+ expectation.increaseExecutionsCounter();
17
+ context.server.exchange.ws.publish('expectation:updated', expectation);
18
+ return next({ expectation });
19
+ });
20
+ //# sourceMappingURL=match-expectation.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"match-expectation.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/match-expectation.middleware.ts"],"names":[],"mappings":";;AACA,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAM,SAAS,EAAE,KAAK,CAAC,CAAC;IAErF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO;aACjD,QAAQ,CAAC,KAAK,CAAC;aACf,WAAW,CAAC,UAAU,CAAC,CAAC;QAE3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QACnE,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAClC,CAAC;IAED,WAAW,CAAC,yBAAyB,EAAE,CAAC;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC;IAEvE,OAAO,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC"}
@@ -1,8 +1,18 @@
1
- import { Middleware } from '../models';
2
- declare const _default: Middleware & {
3
- required: ("expectation" | "historyRecord")[];
4
- } & {
5
- handler: import("../models").TMiddlewareHandler<"expectation" | "historyRecord">;
1
+ import { HttpRequestContext, Middleware } from '../models';
2
+ declare const _default: Middleware<"expectation" | "history", HttpRequestContext<unknown> & {
3
+ shared: SetRequiredKeys<{
4
+ expectation?: import("../../expectations").Expectation<Pick<HttpRequestContext, "incoming" | "outgoing">>;
5
+ history?: import("../history").History;
6
+ forwarded?: Pick<HttpRequestContext, "incoming" | "outgoing">;
7
+ }, "expectation" | "history">;
8
+ }> & {
9
+ handler: TFunction<unknown, [HttpRequestContext<unknown> & {
10
+ shared: SetRequiredKeys<{
11
+ expectation?: import("../../expectations").Expectation<Pick<HttpRequestContext, "incoming" | "outgoing">>;
12
+ history?: import("../history").History;
13
+ forwarded?: Pick<HttpRequestContext, "incoming" | "outgoing">;
14
+ }, "expectation" | "history">;
15
+ }, (shared?: Partial<HttpRequestContext["shared"]>) => unknown]>;
6
16
  };
7
17
  export default _default;
8
18
  //# sourceMappingURL=reply.middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reply.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;AAEvC,wBA2CK"}
1
+ {"version":3,"file":"reply.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,kBAAkB,EAAoD,UAAU,EAAoB,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;AAkBnJ,wBAiCK"}
@@ -1,35 +1,44 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const models_1 = require("../models");
4
+ const buildEmptyOutgoing = (incoming) => ({
5
+ type: incoming.type,
6
+ status: 200,
7
+ data: incoming.type === 'plain' ? '' : {},
8
+ dataRaw: '',
9
+ headers: {
10
+ 'content-type': incoming.type === 'json'
11
+ ? 'application/json'
12
+ : incoming.type === 'xml'
13
+ ? 'application/xml'
14
+ : incoming.headers['content-type'] ?? 'text/plain',
15
+ },
16
+ });
4
17
  exports.default = models_1.Middleware
5
- .build(__dirname)
6
- .requires(['historyRecord', 'expectation'])
18
+ .build(__dirname, ['history', 'expectation'])
7
19
  .assignHandler((context) => {
8
- const responseContext = context.shared.expectation.manipulateContext('response', Object.assign(context.toPlain(), context.shared.forwarded?.response ?? {
9
- statusCode: 200,
10
- headers: {},
11
- data: {},
12
- dataRaw: '',
13
- }), { clone: true });
14
- const dataRaw = Buffer.from(Object.keys(responseContext?.data ?? {}).length
15
- ? JSON.stringify(responseContext.data)
16
- : (responseContext.dataRaw ?? ''));
17
- Object.assign(responseContext, {
18
- dataRaw: dataRaw.toString(),
19
- headers: {
20
- ...(responseContext.payloadType === 'json' && { 'content-type': 'application/json' }),
21
- ...responseContext.headers,
22
- ...((!responseContext.headers?.['transfer-encoding'] && !context.http.request.headers['transfer-encoding']) && {
20
+ const { incoming, forwarded } = context.toPlain({ locations: ['incoming', 'forwarded.outgoing'], clone: true });
21
+ const manipulated = context.shared.expectation.response?.manipulate({
22
+ incoming,
23
+ outgoing: forwarded?.outgoing ?? buildEmptyOutgoing(context.incoming),
24
+ });
25
+ const outgoing = manipulated?.outgoing ?? forwarded?.outgoing ?? buildEmptyOutgoing(context.incoming);
26
+ const type = (0, models_1.extractPayloadType)(outgoing.headers);
27
+ const data = outgoing.data === undefined ? outgoing.dataRaw : outgoing.data;
28
+ const dataRaw = Buffer.from(typeof data === 'object' ? (0, models_1.serializePayload)(type, data) : String(data));
29
+ Object.assign(outgoing, {
30
+ type,
31
+ dataRaw,
32
+ headers: Object.assign(outgoing.headers, {
33
+ ...((!outgoing.headers?.['transfer-encoding'] && !context.request.headers['transfer-encoding']) && {
23
34
  'content-length': String(dataRaw.length),
24
35
  }),
25
- }
36
+ })
26
37
  });
27
- context.http.response.writeHead(responseContext.statusCode ?? 200, responseContext.headers);
28
- context.http.response.write(responseContext.dataRaw);
29
- context.http.response.end();
30
- context.shared.historyRecord
31
- .assign({ response: responseContext })
32
- .changeState('finished');
33
- context.exchange.ws.publish('history:updated', context.shared.historyRecord);
38
+ context.response.writeHead(outgoing.status ?? 200, outgoing.headers);
39
+ context.response.write(outgoing.dataRaw);
40
+ context.response.end();
41
+ context.shared.history.assignOutgoing(outgoing).changeState('finished');
42
+ context.server.exchange.ws.publish('history:updated', context.shared.history.toPlain());
34
43
  });
35
44
  //# sourceMappingURL=reply.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reply.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":";;AACA,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,SAAS,CAAC;KAChB,QAAQ,CAAC,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;KAC1C,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAClE,UAAU,EACV,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,IAAI;QACrE,UAAU,EAAE,GAAG;QACf,OAAO,EAAE,EAAE;QAEX,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;KACZ,CAAC,EACF,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CACzB,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM;QAC7C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;QACtC,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,IAAI,EAAE,CAAC,CACpC,CAAC;IAEF,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE;QAC7B,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;QAC3B,OAAO,EAAE;YACP,GAAG,CAAC,eAAe,CAAC,WAAW,KAAK,MAAM,IAAI,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;YACrF,GAAG,eAAe,CAAC,OAAO;YAE1B,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,IAAI;gBAC7G,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aACzC,CAAC;SACH;KACF,CAAC,CAAA;IAEF,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,IAAI,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5F,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAE5B,OAAO,CAAC,MAAM,CAAC,aAAa;SACzB,MAAM,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;SACrC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"reply.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/reply.middleware.ts"],"names":[],"mappings":";;AACA,sCAAmJ;AAEnJ,MAAM,kBAAkB,GAAG,CAAC,QAAiC,EAA2B,EAAE,CAAC,CAAC;IAC1F,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,MAAM,EAAE,GAAG;IAEX,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;IACzC,OAAO,EAAE,EAAE;IAEX,OAAO,EAAE;QACP,cAAc,EAAE,QAAQ,CAAC,IAAI,KAAK,MAAM;YACtC,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK;gBACzB,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,YAAY;KACrD;CACF,CAAC,CAAC;AAEH,kBAAe,mBAAU;KACtB,KAAK,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;KAC5C,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE;IACzB,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhH,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC;QAClE,QAAQ;QACR,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC;KACtE,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,WAAW,EAAE,QAAQ,IAAI,SAAS,EAAE,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtG,MAAM,IAAI,GAAG,IAAA,2BAAkB,EAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAElD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5E,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,yBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;QACtB,IAAI;QACJ,OAAO;QAEP,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;YACvC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,IAAI;gBACjG,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aACzC,CAAC;SACH,CAAC;KACH,CAAC,CAAC;IAEH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAEvB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACxE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AAC1F,CAAC,CAAC,CAAC"}
@@ -1,6 +1,18 @@
1
1
  import { Middleware } from '../models';
2
- declare const _default: Middleware & {
3
- handler: import("../models").TMiddlewareHandler<never>;
2
+ declare const _default: Middleware<never, import("../models").HttpRequestContext<unknown> & {
3
+ shared: SetRequiredKeys<{
4
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
5
+ history?: import("../history").History;
6
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
7
+ }, never>;
8
+ }> & {
9
+ handler: TFunction<unknown, [import("../models").HttpRequestContext<unknown> & {
10
+ shared: SetRequiredKeys<{
11
+ expectation?: import("../../expectations").Expectation<Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">>;
12
+ history?: import("../history").History;
13
+ forwarded?: Pick<import("../models").HttpRequestContext, "incoming" | "outgoing">;
14
+ }, never>;
15
+ }, (shared?: Partial<import("../models").HttpRequestContext["shared"]>) => unknown]>;
4
16
  };
5
17
  export default _default;
6
18
  //# sourceMappingURL=resolve-public.middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-public.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/resolve-public.middleware.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;AAEvC,wBAgCK"}
1
+ {"version":3,"file":"resolve-public.middleware.d.ts","sourceRoot":"","sources":["../../../../src/server/middlewares/resolve-public.middleware.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;;;;;;;;;;;;;;;;AAEvC,wBAgCK"}
@@ -10,28 +10,28 @@ const models_1 = require("../models");
10
10
  exports.default = models_1.Middleware
11
11
  .build(__filename)
12
12
  .assignHandler(async (context, next) => {
13
- if (!context.path.includes(context.config.client.publicRoute)) {
13
+ if (!context.incoming.path.includes(context.server.config.client.publicRoute)) {
14
14
  return next();
15
15
  }
16
- const requestPath = context.path.replace(context.config.client.publicRoute, '');
16
+ const requestPath = context.incoming.path.replace(context.server.config.client.publicRoute, '');
17
17
  const requestPathDetails = path_1.default.parse(requestPath);
18
18
  if (!requestPath) {
19
- return context.http.response
20
- .writeHead(301, 'Moved', { Location: path_1.default.join(context.config.client.publicRoute, '/') })
19
+ return context.response
20
+ .writeHead(301, 'Moved', { Location: path_1.default.join(context.server.config.client.publicRoute, '/') })
21
21
  .end();
22
22
  }
23
23
  if (requestPathDetails.dir === '/' && !requestPathDetails.ext) {
24
- context.http.response.writeHead(200, 'Ok', { 'Content-type': 'text/html;charset=utf-8' });
25
- return (0, fs_1.createReadStream)(path_1.default.join(context.config.client.publicDirPath, '/index.html'))
26
- .pipe(context.http.response);
24
+ context.response.writeHead(200, 'Ok', { 'Content-type': 'text/html;charset=utf-8' });
25
+ return (0, fs_1.createReadStream)(path_1.default.join(context.server.config.client.publicDirPath, '/index.html'))
26
+ .pipe(context.response);
27
27
  }
28
- const fileStat = await promises_1.default.stat(path_1.default.join(context.config.client.publicDirPath, requestPath)).catch(() => null);
28
+ const fileStat = await promises_1.default.stat(path_1.default.join(context.server.config.client.publicDirPath, requestPath)).catch(() => null);
29
29
  if (fileStat === null) {
30
- return context.http.response
30
+ return context.response
31
31
  .writeHead(404, 'Not found')
32
32
  .end();
33
33
  }
34
- return (0, fs_1.createReadStream)(path_1.default.join(context.config.client.publicDirPath, requestPath))
35
- .pipe(context.http.response);
34
+ return (0, fs_1.createReadStream)(path_1.default.join(context.server.config.client.publicDirPath, requestPath))
35
+ .pipe(context.response);
36
36
  });
37
37
  //# sourceMappingURL=resolve-public.middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-public.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/resolve-public.middleware.ts"],"names":[],"mappings":";;;;;AAAA,2BAAsC;AACtC,2DAA6B;AAC7B,gDAAwB;AAGxB,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9D,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAChF,MAAM,kBAAkB,GAAG,cAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ;aACzB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC;aACxF,GAAG,EAAE,CAAC;IACX,CAAC;IAED,IAAI,kBAAkB,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,yBAAyB,EAAE,CAAC,CAAC;QAE1F,OAAO,IAAA,qBAAgB,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;aACnF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC9G,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ;aACzB,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC;aAC3B,GAAG,EAAE,CAAC;IACX,CAAC;IAED,OAAO,IAAA,qBAAgB,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACjF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"resolve-public.middleware.js","sourceRoot":"","sources":["../../../../src/server/middlewares/resolve-public.middleware.ts"],"names":[],"mappings":";;;;;AAAA,2BAAsC;AACtC,2DAA6B;AAC7B,gDAAwB;AAGxB,sCAAuC;AAEvC,kBAAe,mBAAU;KACtB,KAAK,CAAC,UAAU,CAAC;KACjB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9E,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAChG,MAAM,kBAAkB,GAAG,cAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,OAAO,CAAC,QAAQ;aACpB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC;aAC/F,GAAG,EAAE,CAAC;IACX,CAAC;IAED,IAAI,kBAAkB,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,yBAAyB,EAAE,CAAC,CAAC;QAErF,OAAO,IAAA,qBAAgB,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;aAC1F,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrH,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,QAAQ;aACpB,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC;aAC3B,GAAG,EAAE,CAAC;IACX,CAAC;IAED,OAAO,IAAA,qBAAgB,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACxF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC"}