msw 2.14.7 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (759) hide show
  1. package/README.md +8 -0
  2. package/cli/init.js +12 -9
  3. package/cli/invariant.js +2 -2
  4. package/lib/_chunks/attach-sibling-handlers.js +360 -0
  5. package/lib/_chunks/attach-sibling-handlers.js.map +1 -0
  6. package/lib/_chunks/colors.js +18 -0
  7. package/lib/_chunks/colors.js.map +1 -0
  8. package/lib/_chunks/cookie-store.js +348 -0
  9. package/lib/_chunks/cookie-store.js.map +1 -0
  10. package/lib/_chunks/execute-handlers.js +29 -0
  11. package/lib/_chunks/execute-handlers.js.map +1 -0
  12. package/lib/_chunks/handlers-controller.d.ts +262 -0
  13. package/lib/_chunks/has-ref-counted.js +9 -0
  14. package/lib/_chunks/has-ref-counted.js.map +1 -0
  15. package/lib/_chunks/http-handler.d.ts +72 -0
  16. package/lib/_chunks/http-handler.js +182 -0
  17. package/lib/_chunks/http-handler.js.map +1 -0
  18. package/lib/_chunks/http-response.js +137 -0
  19. package/lib/_chunks/http-response.js.map +1 -0
  20. package/lib/{core → _chunks}/http.d.ts +15 -18
  21. package/lib/_chunks/http.js +30 -0
  22. package/lib/_chunks/http.js.map +1 -0
  23. package/lib/_chunks/interceptor-source.d.ts +163 -0
  24. package/lib/_chunks/interceptor-source.js +756 -0
  25. package/lib/_chunks/interceptor-source.js.map +1 -0
  26. package/lib/_chunks/is-object.js +11 -0
  27. package/lib/_chunks/is-object.js.map +1 -0
  28. package/lib/_chunks/match-request-url.d.ts +14 -0
  29. package/lib/_chunks/request-handler.d.ts +295 -0
  30. package/lib/_chunks/request-handler.js +369 -0
  31. package/lib/_chunks/request-handler.js.map +1 -0
  32. package/lib/_chunks/shared-options.d.ts +20 -0
  33. package/lib/_chunks/sse.d.ts +95 -0
  34. package/lib/_chunks/sse.js +599 -0
  35. package/lib/_chunks/sse.js.map +1 -0
  36. package/lib/_chunks/symbols.js +22 -0
  37. package/lib/_chunks/symbols.js.map +1 -0
  38. package/lib/_chunks/websocket-upgrade.js +46 -0
  39. package/lib/_chunks/websocket-upgrade.js.map +1 -0
  40. package/lib/_chunks/ws.d.ts +133 -0
  41. package/lib/_chunks/ws.js +293 -0
  42. package/lib/_chunks/ws.js.map +1 -0
  43. package/lib/browser/index.d.ts +225 -96
  44. package/lib/browser/index.js +555 -3694
  45. package/lib/browser/index.js.map +1 -1
  46. package/lib/core/experimental/index.d.ts +3 -17
  47. package/lib/core/experimental/index.js +2 -38
  48. package/lib/core/index.d.ts +15 -27
  49. package/lib/core/index.js +15 -64
  50. package/lib/graphql/index.d.ts +550 -0
  51. package/lib/graphql/index.js +1244 -0
  52. package/lib/graphql/index.js.map +1 -0
  53. package/lib/http/index.d.ts +4 -0
  54. package/lib/http/index.js +4 -0
  55. package/lib/iife/index.js +35857 -28289
  56. package/lib/iife/index.js.map +1 -1
  57. package/lib/mockServiceWorker.js +204 -93
  58. package/lib/node/index.d.ts +79 -104
  59. package/lib/node/index.js +103 -201
  60. package/lib/node/index.js.map +1 -1
  61. package/lib/sse/index.d.ts +2 -0
  62. package/lib/sse/index.js +2 -0
  63. package/lib/{core → utils}/bypass.d.ts +5 -4
  64. package/lib/utils/bypass.js +41 -0
  65. package/lib/utils/bypass.js.map +1 -0
  66. package/lib/utils/delay.d.ts +15 -0
  67. package/lib/utils/delay.js +45 -0
  68. package/lib/utils/delay.js.map +1 -0
  69. package/lib/utils/get-clean-url-string.d.ts +9 -0
  70. package/lib/utils/get-clean-url-string.js +15 -0
  71. package/lib/utils/get-clean-url-string.js.map +1 -0
  72. package/lib/utils/get-response.d.ts +13 -0
  73. package/lib/utils/get-response.js +23 -0
  74. package/lib/utils/get-response.js.map +1 -0
  75. package/lib/utils/is-common-asset-request.d.ts +22 -0
  76. package/lib/utils/is-common-asset-request.js +31 -0
  77. package/lib/utils/is-common-asset-request.js.map +1 -0
  78. package/lib/utils/passthrough.d.ts +31 -0
  79. package/lib/utils/passthrough.js +41 -0
  80. package/lib/utils/passthrough.js.map +1 -0
  81. package/lib/vite/index.d.ts +44 -0
  82. package/lib/vite/index.js +90 -0
  83. package/lib/vite/index.js.map +1 -0
  84. package/lib/vite/runtime.d.ts +6 -0
  85. package/lib/vite/runtime.js +77 -0
  86. package/lib/vite/runtime.js.map +1 -0
  87. package/lib/ws/index.d.ts +4 -0
  88. package/lib/ws/index.js +4 -0
  89. package/package.json +93 -201
  90. package/src/browser/default-network-options.ts +31 -0
  91. package/src/browser/glossary.ts +11 -23
  92. package/src/browser/index.ts +5 -1
  93. package/src/browser/setup-worker.ts +15 -68
  94. package/src/browser/sources/fallback-http-source.ts +1 -1
  95. package/src/browser/sources/service-worker-source.ts +76 -69
  96. package/src/browser/tsconfig.browser.json +4 -2
  97. package/src/browser/utils/{deserializeRequest.ts → deserialize-request.ts} +3 -4
  98. package/src/browser/utils/{getAbsoluteWorkerUrl.test.ts → get-absolute-worker-url.test.ts} +3 -3
  99. package/src/browser/utils/get-worker-instance.ts +2 -2
  100. package/src/browser/utils/should-invalidate-worker.test.ts +11 -11
  101. package/src/browser/utils/should-invalidate-worker.ts +1 -1
  102. package/src/browser/utils/validate-worker-scope.ts +1 -1
  103. package/src/browser/utils/{workerChannel.ts → worker-channel.ts} +42 -20
  104. package/src/core/experimental/define-network.test.ts +43 -8
  105. package/src/core/experimental/define-network.ts +32 -13
  106. package/src/core/experimental/frames/http-frame.test.ts +15 -13
  107. package/src/core/experimental/frames/http-frame.ts +10 -9
  108. package/src/core/experimental/frames/websocket-frame.test.ts +129 -15
  109. package/src/core/experimental/frames/websocket-frame.ts +71 -20
  110. package/src/core/experimental/handlers-controller.test.ts +141 -34
  111. package/src/core/experimental/handlers-controller.ts +107 -30
  112. package/src/core/experimental/index.ts +1 -0
  113. package/src/core/experimental/on-unhandled-frame.test.ts +19 -19
  114. package/src/core/experimental/on-unhandled-frame.ts +7 -12
  115. package/src/core/experimental/request-utils.test.ts +4 -29
  116. package/src/core/experimental/request-utils.ts +0 -14
  117. package/src/core/experimental/sources/interceptor-source.ts +44 -29
  118. package/src/core/experimental/sources/network-source.test.ts +3 -3
  119. package/src/core/experimental/sources/network-source.ts +3 -3
  120. package/src/core/handlers/handler.ts +42 -0
  121. package/src/core/handlers/{RequestHandler.ts → request-handler.ts} +168 -73
  122. package/src/core/index.ts +35 -58
  123. package/src/core/shared-options.ts +21 -0
  124. package/src/core/type-utils.ts +18 -0
  125. package/src/core/utils/{cookieStore.ts → cookie-store.ts} +14 -9
  126. package/src/core/utils/{executeHandlers.ts → execute-handlers.ts} +2 -2
  127. package/src/core/utils/http-status-messages.ts +69 -0
  128. package/src/core/utils/internal/{attachSiblingHandlers.ts → attach-sibling-handlers.ts} +20 -0
  129. package/src/core/utils/internal/{devUtils.test.ts → dev-utils.test.ts} +3 -3
  130. package/src/core/utils/internal/{Disposable.ts → disposable.ts} +1 -1
  131. package/src/core/utils/internal/{getCallFrame.test.ts → get-call-frame.test.ts} +1 -1
  132. package/src/core/utils/internal/{getCallFrame.ts → get-call-frame.ts} +1 -1
  133. package/src/core/utils/internal/{hasRefCounted.test.ts → has-ref-counted.test.ts} +4 -4
  134. package/src/core/utils/internal/{hasRefCounted.ts → has-ref-counted.ts} +1 -1
  135. package/src/core/utils/internal/{isIterable.test.ts → is-iterable.test.ts} +1 -1
  136. package/src/core/utils/internal/is-iterable.ts +16 -0
  137. package/src/core/utils/internal/{isObject.test.ts → is-object.test.ts} +1 -1
  138. package/src/core/utils/internal/{isStringEqual.test.ts → is-string-equal.test.ts} +7 -7
  139. package/src/core/utils/internal/{jsonParse.test.ts → json-parse.test.ts} +1 -1
  140. package/src/core/utils/internal/observe-response-body-stream.test.ts +64 -0
  141. package/src/core/utils/internal/observe-response-body-stream.ts +76 -0
  142. package/src/core/utils/internal/{parseMultipartData.test.ts → parse-multipart-data.test.ts} +1 -1
  143. package/src/core/utils/internal/{parseMultipartData.ts → parse-multipart-data.ts} +1 -1
  144. package/src/core/utils/internal/{toReadonlyArray.test.ts → to-readonly-array.test.ts} +4 -4
  145. package/src/core/utils/logging/colors.ts +13 -0
  146. package/src/core/utils/logging/{getStatusCodeColor.test.ts → get-status-code-color.test.ts} +1 -1
  147. package/src/core/utils/logging/{getTimestamp.test.ts → get-timestamp.test.ts} +1 -1
  148. package/src/core/utils/logging/{serializeRequest.test.ts → serialize-request.test.ts} +1 -1
  149. package/src/core/utils/logging/{serializeResponse.test.ts → serialize-response.test.ts} +8 -10
  150. package/src/core/utils/logging/{serializeResponse.ts → serialize-response.ts} +2 -4
  151. package/src/core/utils/matching/match-request-url.test.ts +90 -0
  152. package/src/core/utils/matching/match-request-url.ts +45 -0
  153. package/src/core/utils/matching/{normalizePath.node.test.ts → normalize-path.node.test.ts} +2 -4
  154. package/src/core/utils/matching/{normalizePath.test.ts → normalize-path.test.ts} +2 -4
  155. package/src/core/utils/matching/{normalizePath.ts → normalize-path.ts} +8 -5
  156. package/src/core/utils/request/{getAllAcceptedMimeTypes.test.ts → get-all-accepted-mime-types.test.ts} +14 -14
  157. package/src/core/utils/request/get-request-cookies.ts +76 -0
  158. package/src/core/utils/request/store-response-cookies.ts +15 -0
  159. package/src/core/utils/request/{toPublicUrl.node.test.ts → to-public-url.node.test.ts} +1 -1
  160. package/src/core/utils/request/{toPublicUrl.test.ts → to-public-url.test.ts} +2 -2
  161. package/src/core/utils/{HttpResponse/decorators.ts → response-decorators.ts} +28 -9
  162. package/src/core/utils/url/{getAbsoluteUrl.node.test.ts → get-absolute-url.node.test.ts} +5 -7
  163. package/src/core/utils/url/{getAbsoluteUrl.test.ts → get-absolute-url.test.ts} +7 -7
  164. package/src/core/utils/url/{getAbsoluteUrl.ts → get-absolute-url.ts} +1 -1
  165. package/src/core/utils/url/is-absolute-url.test.ts +30 -0
  166. package/src/{core/handlers/GraphQLHandler.test.ts → graphql/graphql-handler.test.ts} +37 -36
  167. package/src/{core/handlers/GraphQLHandler.ts → graphql/graphql-handler.ts} +54 -41
  168. package/src/graphql/graphql-subscription-event.ts +39 -0
  169. package/src/graphql/graphql-subscription.test.ts +208 -0
  170. package/src/graphql/graphql-subscription.ts +1487 -0
  171. package/src/graphql/graphql.test.ts +14 -0
  172. package/src/graphql/graphql.ts +179 -0
  173. package/src/graphql/index.ts +34 -0
  174. package/src/{core/utils/internal/parseGraphQLRequest.test.ts → graphql/parse-graphql-request.test.ts} +47 -6
  175. package/src/{core/utils/internal/parseGraphQLRequest.ts → graphql/parse-graphql-request.ts} +59 -32
  176. package/src/{core/handlers/HttpHandler.test.ts → http/http-handler.test.ts} +107 -18
  177. package/src/{core/handlers/HttpHandler.ts → http/http-handler.ts} +16 -18
  178. package/src/{core/HttpResponse.test.ts → http/http-response.test.ts} +25 -27
  179. package/src/{core/HttpResponse.ts → http/http-response.ts} +15 -17
  180. package/src/{core → http}/http.ts +7 -7
  181. package/src/http/index.test.ts +19 -0
  182. package/src/http/index.ts +22 -0
  183. package/src/http/symbols.ts +19 -0
  184. package/src/iife/index.ts +2 -0
  185. package/src/mockServiceWorker.js +202 -91
  186. package/src/node/async-handlers-controller.test.ts +4 -4
  187. package/src/node/glossary.ts +8 -4
  188. package/src/node/index.ts +1 -6
  189. package/src/node/setup-server-common.ts +16 -73
  190. package/src/node/setup-server.ts +9 -40
  191. package/src/sse/index.test.ts +14 -0
  192. package/src/sse/index.ts +7 -0
  193. package/src/{core → sse}/sse.ts +105 -69
  194. package/src/tsconfig.core.build.json +5 -1
  195. package/src/tsconfig.core.json +8 -1
  196. package/src/tsconfig.node.json +1 -1
  197. package/src/tsconfig.src.json +1 -1
  198. package/src/{core → utils}/bypass.test.ts +22 -5
  199. package/src/{core → utils}/bypass.ts +11 -0
  200. package/src/{core → utils}/delay.ts +5 -5
  201. package/src/utils/get-clean-url-string.test.ts +24 -0
  202. package/src/utils/get-clean-url-string.ts +16 -0
  203. package/src/{core/getResponse.test.ts → utils/get-response.test.ts} +9 -9
  204. package/src/{core/getResponse.ts → utils/get-response.ts} +2 -2
  205. package/src/{core/isCommonAssetRequest.ts → utils/is-common-asset-request.ts} +4 -3
  206. package/src/utils/passthrough.test.ts +41 -0
  207. package/src/utils/passthrough.ts +46 -0
  208. package/src/vite/client.d.ts +16 -0
  209. package/src/vite/index.ts +4 -0
  210. package/src/vite/options.d.ts +5 -0
  211. package/src/vite/plugin.test.ts +918 -0
  212. package/src/vite/plugin.ts +133 -0
  213. package/src/vite/runtime.ts +117 -0
  214. package/src/vite/tsconfig.build.json +7 -0
  215. package/src/ws/index.ts +23 -0
  216. package/src/{core/ws/utils/attachWebSocketLogger.ts → ws/utils/attach-websocket-logger.ts} +45 -23
  217. package/src/{core/ws/utils/getMessageLength.test.ts → ws/utils/get-message-length.test.ts} +4 -4
  218. package/src/{core/ws/utils/getMessageLength.ts → ws/utils/get-message-length.ts} +1 -1
  219. package/src/{core/ws/utils/getPublicData.test.ts → ws/utils/get-public-data.test.ts} +7 -7
  220. package/src/ws/utils/get-public-data.ts +23 -0
  221. package/src/{core/ws/utils/truncateMessage.test.ts → ws/utils/truncate-message.test.ts} +3 -3
  222. package/src/{core/ws/WebSocketClientManager.test.ts → ws/websocket-client-manager.test.ts} +8 -9
  223. package/src/{core/ws/WebSocketClientManager.ts → ws/websocket-client-manager.ts} +24 -28
  224. package/src/{core/ws/WebSocketClientStore.ts → ws/websocket-client-store.ts} +2 -2
  225. package/src/{core/handlers/WebSocketHandler.test.ts → ws/websocket-handler.test.ts} +15 -15
  226. package/src/{core/handlers/WebSocketHandler.ts → ws/websocket-handler.ts} +144 -32
  227. package/src/{core/ws/WebSocketIndexedDBClientStore.ts → ws/websocket-indexeddb-client-store.ts} +12 -13
  228. package/src/{core/ws/WebSocketMemoryClientStore.ts → ws/websocket-memory-client-store.ts} +4 -4
  229. package/src/ws/websocket-upgrade.ts +83 -0
  230. package/src/{core → ws}/ws.test.ts +3 -4
  231. package/src/{core → ws}/ws.ts +106 -53
  232. package/browser/package.json +0 -31
  233. package/cli/package.json +0 -3
  234. package/config/package.json +0 -3
  235. package/config/scripts/postinstall.js +0 -36
  236. package/lib/browser/index.d.mts +0 -112
  237. package/lib/browser/index.mjs +0 -3706
  238. package/lib/browser/index.mjs.map +0 -1
  239. package/lib/core/HttpResponse-BTyqrRB6.d.mts +0 -371
  240. package/lib/core/HttpResponse-BXyXQFMJ.d.ts +0 -371
  241. package/lib/core/HttpResponse.d.mts +0 -6
  242. package/lib/core/HttpResponse.d.ts +0 -6
  243. package/lib/core/HttpResponse.js +0 -176
  244. package/lib/core/HttpResponse.js.map +0 -1
  245. package/lib/core/HttpResponse.mjs +0 -159
  246. package/lib/core/HttpResponse.mjs.map +0 -1
  247. package/lib/core/bypass.d.mts +0 -16
  248. package/lib/core/bypass.js +0 -42
  249. package/lib/core/bypass.js.map +0 -1
  250. package/lib/core/bypass.mjs +0 -22
  251. package/lib/core/bypass.mjs.map +0 -1
  252. package/lib/core/delay.d.mts +0 -18
  253. package/lib/core/delay.d.ts +0 -18
  254. package/lib/core/delay.js +0 -77
  255. package/lib/core/delay.js.map +0 -1
  256. package/lib/core/delay.mjs +0 -57
  257. package/lib/core/delay.mjs.map +0 -1
  258. package/lib/core/experimental/compat.d.mts +0 -17
  259. package/lib/core/experimental/compat.d.ts +0 -17
  260. package/lib/core/experimental/compat.js +0 -55
  261. package/lib/core/experimental/compat.js.map +0 -1
  262. package/lib/core/experimental/compat.mjs +0 -37
  263. package/lib/core/experimental/compat.mjs.map +0 -1
  264. package/lib/core/experimental/define-network.d.mts +0 -75
  265. package/lib/core/experimental/define-network.d.ts +0 -75
  266. package/lib/core/experimental/define-network.js +0 -134
  267. package/lib/core/experimental/define-network.js.map +0 -1
  268. package/lib/core/experimental/define-network.mjs +0 -119
  269. package/lib/core/experimental/define-network.mjs.map +0 -1
  270. package/lib/core/experimental/frames/http-frame.d.mts +0 -77
  271. package/lib/core/experimental/frames/http-frame.d.ts +0 -77
  272. package/lib/core/experimental/frames/http-frame.js +0 -197
  273. package/lib/core/experimental/frames/http-frame.js.map +0 -1
  274. package/lib/core/experimental/frames/http-frame.mjs +0 -181
  275. package/lib/core/experimental/frames/http-frame.mjs.map +0 -1
  276. package/lib/core/experimental/frames/network-frame.d.mts +0 -12
  277. package/lib/core/experimental/frames/network-frame.d.ts +0 -12
  278. package/lib/core/experimental/frames/network-frame.js +0 -35
  279. package/lib/core/experimental/frames/network-frame.js.map +0 -1
  280. package/lib/core/experimental/frames/network-frame.mjs +0 -15
  281. package/lib/core/experimental/frames/network-frame.mjs.map +0 -1
  282. package/lib/core/experimental/frames/websocket-frame.d.mts +0 -55
  283. package/lib/core/experimental/frames/websocket-frame.d.ts +0 -55
  284. package/lib/core/experimental/frames/websocket-frame.js +0 -131
  285. package/lib/core/experimental/frames/websocket-frame.js.map +0 -1
  286. package/lib/core/experimental/frames/websocket-frame.mjs +0 -118
  287. package/lib/core/experimental/frames/websocket-frame.mjs.map +0 -1
  288. package/lib/core/experimental/handlers-controller.d.mts +0 -36
  289. package/lib/core/experimental/handlers-controller.d.ts +0 -36
  290. package/lib/core/experimental/handlers-controller.js +0 -146
  291. package/lib/core/experimental/handlers-controller.js.map +0 -1
  292. package/lib/core/experimental/handlers-controller.mjs +0 -126
  293. package/lib/core/experimental/handlers-controller.mjs.map +0 -1
  294. package/lib/core/experimental/index.d.mts +0 -17
  295. package/lib/core/experimental/index.js.map +0 -1
  296. package/lib/core/experimental/index.mjs +0 -27
  297. package/lib/core/experimental/index.mjs.map +0 -1
  298. package/lib/core/experimental/on-unhandled-frame.d.mts +0 -12
  299. package/lib/core/experimental/on-unhandled-frame.d.ts +0 -12
  300. package/lib/core/experimental/on-unhandled-frame.js +0 -91
  301. package/lib/core/experimental/on-unhandled-frame.js.map +0 -1
  302. package/lib/core/experimental/on-unhandled-frame.mjs +0 -71
  303. package/lib/core/experimental/on-unhandled-frame.mjs.map +0 -1
  304. package/lib/core/experimental/request-utils.d.mts +0 -12
  305. package/lib/core/experimental/request-utils.d.ts +0 -12
  306. package/lib/core/experimental/request-utils.js +0 -50
  307. package/lib/core/experimental/request-utils.js.map +0 -1
  308. package/lib/core/experimental/request-utils.mjs +0 -30
  309. package/lib/core/experimental/request-utils.mjs.map +0 -1
  310. package/lib/core/experimental/setup-api.d.mts +0 -33
  311. package/lib/core/experimental/setup-api.d.ts +0 -33
  312. package/lib/core/experimental/setup-api.js +0 -58
  313. package/lib/core/experimental/setup-api.js.map +0 -1
  314. package/lib/core/experimental/setup-api.mjs +0 -40
  315. package/lib/core/experimental/setup-api.mjs.map +0 -1
  316. package/lib/core/experimental/sources/interceptor-source.d.mts +0 -28
  317. package/lib/core/experimental/sources/interceptor-source.d.ts +0 -28
  318. package/lib/core/experimental/sources/interceptor-source.js +0 -155
  319. package/lib/core/experimental/sources/interceptor-source.js.map +0 -1
  320. package/lib/core/experimental/sources/interceptor-source.mjs +0 -135
  321. package/lib/core/experimental/sources/interceptor-source.mjs.map +0 -1
  322. package/lib/core/experimental/sources/network-source.d.mts +0 -31
  323. package/lib/core/experimental/sources/network-source.d.ts +0 -31
  324. package/lib/core/experimental/sources/network-source.js +0 -51
  325. package/lib/core/experimental/sources/network-source.js.map +0 -1
  326. package/lib/core/experimental/sources/network-source.mjs +0 -32
  327. package/lib/core/experimental/sources/network-source.mjs.map +0 -1
  328. package/lib/core/getResponse.d.mts +0 -18
  329. package/lib/core/getResponse.d.ts +0 -18
  330. package/lib/core/getResponse.js +0 -35
  331. package/lib/core/getResponse.js.map +0 -1
  332. package/lib/core/getResponse.mjs +0 -17
  333. package/lib/core/getResponse.mjs.map +0 -1
  334. package/lib/core/graphql.d.mts +0 -76
  335. package/lib/core/graphql.d.ts +0 -76
  336. package/lib/core/graphql.js +0 -91
  337. package/lib/core/graphql.js.map +0 -1
  338. package/lib/core/graphql.mjs +0 -74
  339. package/lib/core/graphql.mjs.map +0 -1
  340. package/lib/core/handlers/GraphQLHandler.d.mts +0 -6
  341. package/lib/core/handlers/GraphQLHandler.d.ts +0 -6
  342. package/lib/core/handlers/GraphQLHandler.js +0 -232
  343. package/lib/core/handlers/GraphQLHandler.js.map +0 -1
  344. package/lib/core/handlers/GraphQLHandler.mjs +0 -221
  345. package/lib/core/handlers/GraphQLHandler.mjs.map +0 -1
  346. package/lib/core/handlers/HttpHandler.d.mts +0 -75
  347. package/lib/core/handlers/HttpHandler.d.ts +0 -75
  348. package/lib/core/handlers/HttpHandler.js +0 -129
  349. package/lib/core/handlers/HttpHandler.js.map +0 -1
  350. package/lib/core/handlers/HttpHandler.mjs +0 -113
  351. package/lib/core/handlers/HttpHandler.mjs.map +0 -1
  352. package/lib/core/handlers/RequestHandler.d.mts +0 -6
  353. package/lib/core/handlers/RequestHandler.d.ts +0 -6
  354. package/lib/core/handlers/RequestHandler.js +0 -300
  355. package/lib/core/handlers/RequestHandler.js.map +0 -1
  356. package/lib/core/handlers/RequestHandler.mjs +0 -283
  357. package/lib/core/handlers/RequestHandler.mjs.map +0 -1
  358. package/lib/core/handlers/WebSocketHandler.d.mts +0 -49
  359. package/lib/core/handlers/WebSocketHandler.d.ts +0 -49
  360. package/lib/core/handlers/WebSocketHandler.js +0 -178
  361. package/lib/core/handlers/WebSocketHandler.js.map +0 -1
  362. package/lib/core/handlers/WebSocketHandler.mjs +0 -160
  363. package/lib/core/handlers/WebSocketHandler.mjs.map +0 -1
  364. package/lib/core/http.d.mts +0 -31
  365. package/lib/core/http.js +0 -41
  366. package/lib/core/http.js.map +0 -1
  367. package/lib/core/http.mjs +0 -25
  368. package/lib/core/http.mjs.map +0 -1
  369. package/lib/core/index.d.mts +0 -27
  370. package/lib/core/index.js.map +0 -1
  371. package/lib/core/index.mjs +0 -52
  372. package/lib/core/index.mjs.map +0 -1
  373. package/lib/core/isCommonAssetRequest.d.mts +0 -20
  374. package/lib/core/isCommonAssetRequest.d.ts +0 -20
  375. package/lib/core/isCommonAssetRequest.js +0 -42
  376. package/lib/core/isCommonAssetRequest.js.map +0 -1
  377. package/lib/core/isCommonAssetRequest.mjs +0 -22
  378. package/lib/core/isCommonAssetRequest.mjs.map +0 -1
  379. package/lib/core/on-unhandled-frame-0KmwUmeV.d.ts +0 -56
  380. package/lib/core/on-unhandled-frame-gkokW4Rr.d.mts +0 -56
  381. package/lib/core/passthrough.d.mts +0 -24
  382. package/lib/core/passthrough.d.ts +0 -24
  383. package/lib/core/passthrough.js +0 -33
  384. package/lib/core/passthrough.js.map +0 -1
  385. package/lib/core/passthrough.mjs +0 -13
  386. package/lib/core/passthrough.mjs.map +0 -1
  387. package/lib/core/sharedOptions.d.mts +0 -68
  388. package/lib/core/sharedOptions.d.ts +0 -68
  389. package/lib/core/sharedOptions.js +0 -17
  390. package/lib/core/sharedOptions.js.map +0 -1
  391. package/lib/core/sharedOptions.mjs +0 -1
  392. package/lib/core/sharedOptions.mjs.map +0 -1
  393. package/lib/core/sse.d.mts +0 -102
  394. package/lib/core/sse.d.ts +0 -102
  395. package/lib/core/sse.js +0 -672
  396. package/lib/core/sse.js.map +0 -1
  397. package/lib/core/sse.mjs +0 -654
  398. package/lib/core/sse.mjs.map +0 -1
  399. package/lib/core/typeUtils.d.mts +0 -12
  400. package/lib/core/typeUtils.d.ts +0 -12
  401. package/lib/core/typeUtils.js +0 -17
  402. package/lib/core/typeUtils.js.map +0 -1
  403. package/lib/core/typeUtils.mjs +0 -1
  404. package/lib/core/typeUtils.mjs.map +0 -1
  405. package/lib/core/utils/HttpResponse/decorators.d.mts +0 -17
  406. package/lib/core/utils/HttpResponse/decorators.d.ts +0 -17
  407. package/lib/core/utils/HttpResponse/decorators.js +0 -71
  408. package/lib/core/utils/HttpResponse/decorators.js.map +0 -1
  409. package/lib/core/utils/HttpResponse/decorators.mjs +0 -41
  410. package/lib/core/utils/HttpResponse/decorators.mjs.map +0 -1
  411. package/lib/core/utils/cookieStore.d.mts +0 -13
  412. package/lib/core/utils/cookieStore.d.ts +0 -13
  413. package/lib/core/utils/cookieStore.js +0 -90
  414. package/lib/core/utils/cookieStore.js.map +0 -1
  415. package/lib/core/utils/cookieStore.mjs +0 -74
  416. package/lib/core/utils/cookieStore.mjs.map +0 -1
  417. package/lib/core/utils/executeHandlers.d.mts +0 -6
  418. package/lib/core/utils/executeHandlers.d.ts +0 -6
  419. package/lib/core/utils/executeHandlers.js +0 -51
  420. package/lib/core/utils/executeHandlers.js.map +0 -1
  421. package/lib/core/utils/executeHandlers.mjs +0 -31
  422. package/lib/core/utils/executeHandlers.mjs.map +0 -1
  423. package/lib/core/utils/handleRequest.d.mts +0 -30
  424. package/lib/core/utils/handleRequest.d.ts +0 -30
  425. package/lib/core/utils/handleRequest.js +0 -76
  426. package/lib/core/utils/handleRequest.js.map +0 -1
  427. package/lib/core/utils/handleRequest.mjs +0 -58
  428. package/lib/core/utils/handleRequest.mjs.map +0 -1
  429. package/lib/core/utils/internal/Disposable.d.mts +0 -7
  430. package/lib/core/utils/internal/Disposable.d.ts +0 -7
  431. package/lib/core/utils/internal/Disposable.js +0 -51
  432. package/lib/core/utils/internal/Disposable.js.map +0 -1
  433. package/lib/core/utils/internal/Disposable.mjs +0 -31
  434. package/lib/core/utils/internal/Disposable.mjs.map +0 -1
  435. package/lib/core/utils/internal/attachSiblingHandlers.d.mts +0 -15
  436. package/lib/core/utils/internal/attachSiblingHandlers.d.ts +0 -15
  437. package/lib/core/utils/internal/attachSiblingHandlers.js +0 -44
  438. package/lib/core/utils/internal/attachSiblingHandlers.js.map +0 -1
  439. package/lib/core/utils/internal/attachSiblingHandlers.mjs +0 -24
  440. package/lib/core/utils/internal/attachSiblingHandlers.mjs.map +0 -1
  441. package/lib/core/utils/internal/checkGlobals.d.mts +0 -3
  442. package/lib/core/utils/internal/checkGlobals.d.ts +0 -3
  443. package/lib/core/utils/internal/checkGlobals.js +0 -34
  444. package/lib/core/utils/internal/checkGlobals.js.map +0 -1
  445. package/lib/core/utils/internal/checkGlobals.mjs +0 -14
  446. package/lib/core/utils/internal/checkGlobals.mjs.map +0 -1
  447. package/lib/core/utils/internal/devUtils.d.mts +0 -28
  448. package/lib/core/utils/internal/devUtils.d.ts +0 -28
  449. package/lib/core/utils/internal/devUtils.js +0 -48
  450. package/lib/core/utils/internal/devUtils.js.map +0 -1
  451. package/lib/core/utils/internal/devUtils.mjs +0 -28
  452. package/lib/core/utils/internal/devUtils.mjs.map +0 -1
  453. package/lib/core/utils/internal/getCallFrame.d.mts +0 -6
  454. package/lib/core/utils/internal/getCallFrame.d.ts +0 -6
  455. package/lib/core/utils/internal/getCallFrame.js +0 -41
  456. package/lib/core/utils/internal/getCallFrame.js.map +0 -1
  457. package/lib/core/utils/internal/getCallFrame.mjs +0 -21
  458. package/lib/core/utils/internal/getCallFrame.mjs.map +0 -1
  459. package/lib/core/utils/internal/hasRefCounted.d.mts +0 -3
  460. package/lib/core/utils/internal/hasRefCounted.d.ts +0 -3
  461. package/lib/core/utils/internal/hasRefCounted.js +0 -34
  462. package/lib/core/utils/internal/hasRefCounted.js.map +0 -1
  463. package/lib/core/utils/internal/hasRefCounted.mjs +0 -14
  464. package/lib/core/utils/internal/hasRefCounted.mjs.map +0 -1
  465. package/lib/core/utils/internal/isHandlerKind.d.mts +0 -19
  466. package/lib/core/utils/internal/isHandlerKind.d.ts +0 -19
  467. package/lib/core/utils/internal/isHandlerKind.js +0 -30
  468. package/lib/core/utils/internal/isHandlerKind.js.map +0 -1
  469. package/lib/core/utils/internal/isHandlerKind.mjs +0 -10
  470. package/lib/core/utils/internal/isHandlerKind.mjs.map +0 -1
  471. package/lib/core/utils/internal/isIterable.d.mts +0 -20
  472. package/lib/core/utils/internal/isIterable.d.ts +0 -20
  473. package/lib/core/utils/internal/isIterable.js +0 -30
  474. package/lib/core/utils/internal/isIterable.js.map +0 -1
  475. package/lib/core/utils/internal/isIterable.mjs +0 -10
  476. package/lib/core/utils/internal/isIterable.mjs.map +0 -1
  477. package/lib/core/utils/internal/isObject.d.mts +0 -6
  478. package/lib/core/utils/internal/isObject.d.ts +0 -6
  479. package/lib/core/utils/internal/isObject.js +0 -27
  480. package/lib/core/utils/internal/isObject.js.map +0 -1
  481. package/lib/core/utils/internal/isObject.mjs +0 -7
  482. package/lib/core/utils/internal/isObject.mjs.map +0 -1
  483. package/lib/core/utils/internal/isStringEqual.d.mts +0 -6
  484. package/lib/core/utils/internal/isStringEqual.d.ts +0 -6
  485. package/lib/core/utils/internal/isStringEqual.js +0 -27
  486. package/lib/core/utils/internal/isStringEqual.js.map +0 -1
  487. package/lib/core/utils/internal/isStringEqual.mjs +0 -7
  488. package/lib/core/utils/internal/isStringEqual.mjs.map +0 -1
  489. package/lib/core/utils/internal/jsonParse.d.mts +0 -7
  490. package/lib/core/utils/internal/jsonParse.d.ts +0 -7
  491. package/lib/core/utils/internal/jsonParse.js +0 -31
  492. package/lib/core/utils/internal/jsonParse.js.map +0 -1
  493. package/lib/core/utils/internal/jsonParse.mjs +0 -11
  494. package/lib/core/utils/internal/jsonParse.mjs.map +0 -1
  495. package/lib/core/utils/internal/mergeRight.d.mts +0 -7
  496. package/lib/core/utils/internal/mergeRight.d.ts +0 -7
  497. package/lib/core/utils/internal/mergeRight.js +0 -43
  498. package/lib/core/utils/internal/mergeRight.js.map +0 -1
  499. package/lib/core/utils/internal/mergeRight.mjs +0 -23
  500. package/lib/core/utils/internal/mergeRight.mjs.map +0 -1
  501. package/lib/core/utils/internal/parseGraphQLRequest.d.mts +0 -6
  502. package/lib/core/utils/internal/parseGraphQLRequest.d.ts +0 -6
  503. package/lib/core/utils/internal/parseGraphQLRequest.js +0 -146
  504. package/lib/core/utils/internal/parseGraphQLRequest.js.map +0 -1
  505. package/lib/core/utils/internal/parseGraphQLRequest.mjs +0 -129
  506. package/lib/core/utils/internal/parseGraphQLRequest.mjs.map +0 -1
  507. package/lib/core/utils/internal/parseMultipartData.d.mts +0 -14
  508. package/lib/core/utils/internal/parseMultipartData.d.ts +0 -14
  509. package/lib/core/utils/internal/parseMultipartData.js +0 -84
  510. package/lib/core/utils/internal/parseMultipartData.js.map +0 -1
  511. package/lib/core/utils/internal/parseMultipartData.mjs +0 -64
  512. package/lib/core/utils/internal/parseMultipartData.mjs.map +0 -1
  513. package/lib/core/utils/internal/pipeEvents.d.mts +0 -8
  514. package/lib/core/utils/internal/pipeEvents.d.ts +0 -8
  515. package/lib/core/utils/internal/pipeEvents.js +0 -37
  516. package/lib/core/utils/internal/pipeEvents.js.map +0 -1
  517. package/lib/core/utils/internal/pipeEvents.mjs +0 -17
  518. package/lib/core/utils/internal/pipeEvents.mjs.map +0 -1
  519. package/lib/core/utils/internal/toReadonlyArray.d.mts +0 -6
  520. package/lib/core/utils/internal/toReadonlyArray.d.ts +0 -6
  521. package/lib/core/utils/internal/toReadonlyArray.js +0 -29
  522. package/lib/core/utils/internal/toReadonlyArray.js.map +0 -1
  523. package/lib/core/utils/internal/toReadonlyArray.mjs +0 -9
  524. package/lib/core/utils/internal/toReadonlyArray.mjs.map +0 -1
  525. package/lib/core/utils/internal/tryCatch.d.mts +0 -3
  526. package/lib/core/utils/internal/tryCatch.d.ts +0 -3
  527. package/lib/core/utils/internal/tryCatch.js +0 -32
  528. package/lib/core/utils/internal/tryCatch.js.map +0 -1
  529. package/lib/core/utils/internal/tryCatch.mjs +0 -12
  530. package/lib/core/utils/internal/tryCatch.mjs.map +0 -1
  531. package/lib/core/utils/logging/getStatusCodeColor.d.mts +0 -11
  532. package/lib/core/utils/logging/getStatusCodeColor.d.ts +0 -11
  533. package/lib/core/utils/logging/getStatusCodeColor.js +0 -40
  534. package/lib/core/utils/logging/getStatusCodeColor.js.map +0 -1
  535. package/lib/core/utils/logging/getStatusCodeColor.mjs +0 -20
  536. package/lib/core/utils/logging/getStatusCodeColor.mjs.map +0 -1
  537. package/lib/core/utils/logging/getTimestamp.d.mts +0 -9
  538. package/lib/core/utils/logging/getTimestamp.d.ts +0 -9
  539. package/lib/core/utils/logging/getTimestamp.js +0 -32
  540. package/lib/core/utils/logging/getTimestamp.js.map +0 -1
  541. package/lib/core/utils/logging/getTimestamp.mjs +0 -12
  542. package/lib/core/utils/logging/getTimestamp.mjs.map +0 -1
  543. package/lib/core/utils/logging/serializeRequest.d.mts +0 -12
  544. package/lib/core/utils/logging/serializeRequest.d.ts +0 -12
  545. package/lib/core/utils/logging/serializeRequest.js +0 -34
  546. package/lib/core/utils/logging/serializeRequest.js.map +0 -1
  547. package/lib/core/utils/logging/serializeRequest.mjs +0 -14
  548. package/lib/core/utils/logging/serializeRequest.mjs.map +0 -1
  549. package/lib/core/utils/logging/serializeResponse.d.mts +0 -9
  550. package/lib/core/utils/logging/serializeResponse.d.ts +0 -9
  551. package/lib/core/utils/logging/serializeResponse.js +0 -48
  552. package/lib/core/utils/logging/serializeResponse.js.map +0 -1
  553. package/lib/core/utils/logging/serializeResponse.mjs +0 -18
  554. package/lib/core/utils/logging/serializeResponse.mjs.map +0 -1
  555. package/lib/core/utils/matching/matchRequestUrl.d.mts +0 -20
  556. package/lib/core/utils/matching/matchRequestUrl.d.ts +0 -20
  557. package/lib/core/utils/matching/matchRequestUrl.js +0 -55
  558. package/lib/core/utils/matching/matchRequestUrl.js.map +0 -1
  559. package/lib/core/utils/matching/matchRequestUrl.mjs +0 -35
  560. package/lib/core/utils/matching/matchRequestUrl.mjs.map +0 -1
  561. package/lib/core/utils/matching/normalizePath.d.mts +0 -13
  562. package/lib/core/utils/matching/normalizePath.d.ts +0 -13
  563. package/lib/core/utils/matching/normalizePath.js +0 -33
  564. package/lib/core/utils/matching/normalizePath.js.map +0 -1
  565. package/lib/core/utils/matching/normalizePath.mjs +0 -13
  566. package/lib/core/utils/matching/normalizePath.mjs.map +0 -1
  567. package/lib/core/utils/request/getAllAcceptedMimeTypes.d.mts +0 -14
  568. package/lib/core/utils/request/getAllAcceptedMimeTypes.d.ts +0 -14
  569. package/lib/core/utils/request/getAllAcceptedMimeTypes.js +0 -61
  570. package/lib/core/utils/request/getAllAcceptedMimeTypes.js.map +0 -1
  571. package/lib/core/utils/request/getAllAcceptedMimeTypes.mjs +0 -41
  572. package/lib/core/utils/request/getAllAcceptedMimeTypes.mjs.map +0 -1
  573. package/lib/core/utils/request/getRequestCookies.d.mts +0 -3
  574. package/lib/core/utils/request/getRequestCookies.d.ts +0 -3
  575. package/lib/core/utils/request/getRequestCookies.js +0 -79
  576. package/lib/core/utils/request/getRequestCookies.js.map +0 -1
  577. package/lib/core/utils/request/getRequestCookies.mjs +0 -62
  578. package/lib/core/utils/request/getRequestCookies.mjs.map +0 -1
  579. package/lib/core/utils/request/onUnhandledRequest.d.mts +0 -9
  580. package/lib/core/utils/request/onUnhandledRequest.d.ts +0 -9
  581. package/lib/core/utils/request/onUnhandledRequest.js +0 -76
  582. package/lib/core/utils/request/onUnhandledRequest.js.map +0 -1
  583. package/lib/core/utils/request/onUnhandledRequest.mjs +0 -56
  584. package/lib/core/utils/request/onUnhandledRequest.mjs.map +0 -1
  585. package/lib/core/utils/request/storeResponseCookies.d.mts +0 -3
  586. package/lib/core/utils/request/storeResponseCookies.d.ts +0 -3
  587. package/lib/core/utils/request/storeResponseCookies.js +0 -32
  588. package/lib/core/utils/request/storeResponseCookies.js.map +0 -1
  589. package/lib/core/utils/request/storeResponseCookies.mjs +0 -12
  590. package/lib/core/utils/request/storeResponseCookies.mjs.map +0 -1
  591. package/lib/core/utils/request/toPublicUrl.d.mts +0 -7
  592. package/lib/core/utils/request/toPublicUrl.d.ts +0 -7
  593. package/lib/core/utils/request/toPublicUrl.js +0 -31
  594. package/lib/core/utils/request/toPublicUrl.js.map +0 -1
  595. package/lib/core/utils/request/toPublicUrl.mjs +0 -11
  596. package/lib/core/utils/request/toPublicUrl.mjs.map +0 -1
  597. package/lib/core/utils/toResponseInit.d.mts +0 -3
  598. package/lib/core/utils/toResponseInit.d.ts +0 -3
  599. package/lib/core/utils/toResponseInit.js +0 -31
  600. package/lib/core/utils/toResponseInit.js.map +0 -1
  601. package/lib/core/utils/toResponseInit.mjs +0 -11
  602. package/lib/core/utils/toResponseInit.mjs.map +0 -1
  603. package/lib/core/utils/url/cleanUrl.d.mts +0 -7
  604. package/lib/core/utils/url/cleanUrl.d.ts +0 -7
  605. package/lib/core/utils/url/cleanUrl.js +0 -31
  606. package/lib/core/utils/url/cleanUrl.js.map +0 -1
  607. package/lib/core/utils/url/cleanUrl.mjs +0 -11
  608. package/lib/core/utils/url/cleanUrl.mjs.map +0 -1
  609. package/lib/core/utils/url/getAbsoluteUrl.d.mts +0 -6
  610. package/lib/core/utils/url/getAbsoluteUrl.d.ts +0 -6
  611. package/lib/core/utils/url/getAbsoluteUrl.js +0 -38
  612. package/lib/core/utils/url/getAbsoluteUrl.js.map +0 -1
  613. package/lib/core/utils/url/getAbsoluteUrl.mjs +0 -18
  614. package/lib/core/utils/url/getAbsoluteUrl.mjs.map +0 -1
  615. package/lib/core/utils/url/isAbsoluteUrl.d.mts +0 -6
  616. package/lib/core/utils/url/isAbsoluteUrl.d.ts +0 -6
  617. package/lib/core/utils/url/isAbsoluteUrl.js +0 -27
  618. package/lib/core/utils/url/isAbsoluteUrl.js.map +0 -1
  619. package/lib/core/utils/url/isAbsoluteUrl.mjs +0 -7
  620. package/lib/core/utils/url/isAbsoluteUrl.mjs.map +0 -1
  621. package/lib/core/ws/WebSocketClientManager.d.mts +0 -65
  622. package/lib/core/ws/WebSocketClientManager.d.ts +0 -65
  623. package/lib/core/ws/WebSocketClientManager.js +0 -163
  624. package/lib/core/ws/WebSocketClientManager.js.map +0 -1
  625. package/lib/core/ws/WebSocketClientManager.mjs +0 -143
  626. package/lib/core/ws/WebSocketClientManager.mjs.map +0 -1
  627. package/lib/core/ws/WebSocketClientStore.d.mts +0 -13
  628. package/lib/core/ws/WebSocketClientStore.d.ts +0 -13
  629. package/lib/core/ws/WebSocketClientStore.js +0 -26
  630. package/lib/core/ws/WebSocketClientStore.js.map +0 -1
  631. package/lib/core/ws/WebSocketClientStore.mjs +0 -6
  632. package/lib/core/ws/WebSocketClientStore.mjs.map +0 -1
  633. package/lib/core/ws/WebSocketIndexedDBClientStore.d.mts +0 -14
  634. package/lib/core/ws/WebSocketIndexedDBClientStore.d.ts +0 -14
  635. package/lib/core/ws/WebSocketIndexedDBClientStore.js +0 -131
  636. package/lib/core/ws/WebSocketIndexedDBClientStore.js.map +0 -1
  637. package/lib/core/ws/WebSocketIndexedDBClientStore.mjs +0 -111
  638. package/lib/core/ws/WebSocketIndexedDBClientStore.mjs.map +0 -1
  639. package/lib/core/ws/WebSocketMemoryClientStore.d.mts +0 -12
  640. package/lib/core/ws/WebSocketMemoryClientStore.d.ts +0 -12
  641. package/lib/core/ws/WebSocketMemoryClientStore.js +0 -42
  642. package/lib/core/ws/WebSocketMemoryClientStore.js.map +0 -1
  643. package/lib/core/ws/WebSocketMemoryClientStore.mjs +0 -22
  644. package/lib/core/ws/WebSocketMemoryClientStore.mjs.map +0 -1
  645. package/lib/core/ws/handleWebSocketEvent.d.mts +0 -20
  646. package/lib/core/ws/handleWebSocketEvent.d.ts +0 -20
  647. package/lib/core/ws/handleWebSocketEvent.js +0 -61
  648. package/lib/core/ws/handleWebSocketEvent.js.map +0 -1
  649. package/lib/core/ws/handleWebSocketEvent.mjs +0 -43
  650. package/lib/core/ws/handleWebSocketEvent.mjs.map +0 -1
  651. package/lib/core/ws/utils/attachWebSocketLogger.d.mts +0 -18
  652. package/lib/core/ws/utils/attachWebSocketLogger.d.ts +0 -18
  653. package/lib/core/ws/utils/attachWebSocketLogger.js +0 -228
  654. package/lib/core/ws/utils/attachWebSocketLogger.js.map +0 -1
  655. package/lib/core/ws/utils/attachWebSocketLogger.mjs +0 -208
  656. package/lib/core/ws/utils/attachWebSocketLogger.mjs.map +0 -1
  657. package/lib/core/ws/utils/getMessageLength.d.mts +0 -11
  658. package/lib/core/ws/utils/getMessageLength.d.ts +0 -11
  659. package/lib/core/ws/utils/getMessageLength.js +0 -34
  660. package/lib/core/ws/utils/getMessageLength.js.map +0 -1
  661. package/lib/core/ws/utils/getMessageLength.mjs +0 -14
  662. package/lib/core/ws/utils/getMessageLength.mjs.map +0 -1
  663. package/lib/core/ws/utils/getPublicData.d.mts +0 -5
  664. package/lib/core/ws/utils/getPublicData.d.ts +0 -5
  665. package/lib/core/ws/utils/getPublicData.js +0 -37
  666. package/lib/core/ws/utils/getPublicData.js.map +0 -1
  667. package/lib/core/ws/utils/getPublicData.mjs +0 -17
  668. package/lib/core/ws/utils/getPublicData.mjs.map +0 -1
  669. package/lib/core/ws/utils/truncateMessage.d.mts +0 -3
  670. package/lib/core/ws/utils/truncateMessage.d.ts +0 -3
  671. package/lib/core/ws/utils/truncateMessage.js +0 -31
  672. package/lib/core/ws/utils/truncateMessage.js.map +0 -1
  673. package/lib/core/ws/utils/truncateMessage.mjs +0 -11
  674. package/lib/core/ws/utils/truncateMessage.mjs.map +0 -1
  675. package/lib/core/ws/webSocketInterceptor.d.mts +0 -5
  676. package/lib/core/ws/webSocketInterceptor.d.ts +0 -5
  677. package/lib/core/ws/webSocketInterceptor.js +0 -26
  678. package/lib/core/ws/webSocketInterceptor.js.map +0 -1
  679. package/lib/core/ws/webSocketInterceptor.mjs +0 -6
  680. package/lib/core/ws/webSocketInterceptor.mjs.map +0 -1
  681. package/lib/core/ws.d.mts +0 -88
  682. package/lib/core/ws.d.ts +0 -88
  683. package/lib/core/ws.js +0 -94
  684. package/lib/core/ws.js.map +0 -1
  685. package/lib/core/ws.mjs +0 -80
  686. package/lib/core/ws.mjs.map +0 -1
  687. package/lib/native/index.d.mts +0 -66
  688. package/lib/native/index.d.ts +0 -66
  689. package/lib/native/index.js +0 -88
  690. package/lib/native/index.js.map +0 -1
  691. package/lib/native/index.mjs +0 -67
  692. package/lib/native/index.mjs.map +0 -1
  693. package/lib/node/index.d.mts +0 -113
  694. package/lib/node/index.mjs +0 -185
  695. package/lib/node/index.mjs.map +0 -1
  696. package/lib/shims/cookie.d.mts +0 -7
  697. package/lib/shims/cookie.d.ts +0 -7
  698. package/lib/shims/cookie.js +0 -294
  699. package/lib/shims/cookie.mjs +0 -286
  700. package/lib/shims/statuses.d.mts +0 -6
  701. package/lib/shims/statuses.d.ts +0 -6
  702. package/lib/shims/statuses.js +0 -195
  703. package/lib/shims/statuses.mjs +0 -187
  704. package/native/package.json +0 -30
  705. package/node/package.json +0 -33
  706. package/src/browser/utils/pruneGetRequestBody.test.ts +0 -51
  707. package/src/browser/utils/pruneGetRequestBody.ts +0 -21
  708. package/src/core/experimental/compat.ts +0 -50
  709. package/src/core/experimental/setup-api.ts +0 -55
  710. package/src/core/graphql.test.ts +0 -11
  711. package/src/core/graphql.ts +0 -136
  712. package/src/core/passthrough.test.ts +0 -11
  713. package/src/core/passthrough.ts +0 -25
  714. package/src/core/sharedOptions.ts +0 -71
  715. package/src/core/typeUtils.ts +0 -26
  716. package/src/core/utils/handleRequest.test.ts +0 -574
  717. package/src/core/utils/handleRequest.ts +0 -117
  718. package/src/core/utils/internal/checkGlobals.ts +0 -17
  719. package/src/core/utils/internal/isHandlerKind.test.ts +0 -62
  720. package/src/core/utils/internal/isHandlerKind.ts +0 -17
  721. package/src/core/utils/internal/isIterable.ts +0 -32
  722. package/src/core/utils/internal/mergeRight.test.ts +0 -43
  723. package/src/core/utils/internal/mergeRight.ts +0 -30
  724. package/src/core/utils/internal/pipeEvents.test.ts +0 -14
  725. package/src/core/utils/internal/pipeEvents.ts +0 -26
  726. package/src/core/utils/internal/tryCatch.test.ts +0 -29
  727. package/src/core/utils/internal/tryCatch.ts +0 -11
  728. package/src/core/utils/matching/matchRequestUrl.test.ts +0 -267
  729. package/src/core/utils/matching/matchRequestUrl.ts +0 -77
  730. package/src/core/utils/request/getRequestCookies.ts +0 -88
  731. package/src/core/utils/request/onUnhandledRequest.node.test.ts +0 -62
  732. package/src/core/utils/request/onUnhandledRequest.test.ts +0 -226
  733. package/src/core/utils/request/onUnhandledRequest.ts +0 -81
  734. package/src/core/utils/request/storeResponseCookies.ts +0 -15
  735. package/src/core/utils/url/cleanUrl.test.ts +0 -22
  736. package/src/core/utils/url/cleanUrl.ts +0 -16
  737. package/src/core/utils/url/isAbsoluteUrl.test.ts +0 -32
  738. package/src/core/ws/handleWebSocketEvent.ts +0 -68
  739. package/src/core/ws/utils/getPublicData.ts +0 -18
  740. package/src/core/ws/webSocketInterceptor.ts +0 -3
  741. package/src/native/index.ts +0 -44
  742. package/src/package.json +0 -3
  743. package/src/shims/cookie.ts +0 -7
  744. package/src/shims/statuses.ts +0 -6
  745. /package/src/browser/utils/{getAbsoluteWorkerUrl.ts → get-absolute-worker-url.ts} +0 -0
  746. /package/src/core/utils/internal/{devUtils.ts → dev-utils.ts} +0 -0
  747. /package/src/core/utils/internal/{isObject.ts → is-object.ts} +0 -0
  748. /package/src/core/utils/internal/{isStringEqual.ts → is-string-equal.ts} +0 -0
  749. /package/src/core/utils/internal/{jsonParse.ts → json-parse.ts} +0 -0
  750. /package/src/core/utils/internal/{toReadonlyArray.ts → to-readonly-array.ts} +0 -0
  751. /package/src/core/utils/logging/{getStatusCodeColor.ts → get-status-code-color.ts} +0 -0
  752. /package/src/core/utils/logging/{getTimestamp.ts → get-timestamp.ts} +0 -0
  753. /package/src/core/utils/logging/{serializeRequest.ts → serialize-request.ts} +0 -0
  754. /package/src/core/utils/request/{getAllAcceptedMimeTypes.ts → get-all-accepted-mime-types.ts} +0 -0
  755. /package/src/core/utils/request/{toPublicUrl.ts → to-public-url.ts} +0 -0
  756. /package/src/core/utils/{toResponseInit.ts → to-response-init.ts} +0 -0
  757. /package/src/core/utils/url/{isAbsoluteUrl.ts → is-absolute-url.ts} +0 -0
  758. /package/src/{core → http}/http.test.ts +0 -0
  759. /package/src/{core/ws/utils/truncateMessage.ts → ws/utils/truncate-message.ts} +0 -0
@@ -1,13 +1,14 @@
1
1
  // @vitest-environment jsdom
2
2
  import { createRequestId, encodeBuffer } from '@mswjs/interceptors'
3
3
  import { OperationTypeNode, parse } from 'graphql'
4
- import type {
5
- GraphQLRequestBody,
6
- GraphQLResolverExtras,
7
- } from './GraphQLHandler'
8
- import { GraphQLHandler, isDocumentNode } from './GraphQLHandler'
9
- import { HttpResponse } from '../HttpResponse'
10
- import type { ResponseResolver } from './RequestHandler'
4
+ import {
5
+ isDocumentNode,
6
+ GraphQLHandler,
7
+ type GraphQLRequestBody,
8
+ type GraphQLResolverExtras,
9
+ } from './graphql-handler'
10
+ import { HttpResponse } from '#http/http-response'
11
+ import type { ResponseResolver } from '../core/handlers/request-handler'
11
12
 
12
13
  const resolver: ResponseResolver<GraphQLResolverExtras<{ userId: string }>> = ({
13
14
  variables,
@@ -59,7 +60,7 @@ const LOGIN = `
59
60
  `
60
61
 
61
62
  describe('info', () => {
62
- it('exposes request handler information for query', () => {
63
+ test('exposes request handler information for query', () => {
63
64
  const handler = new GraphQLHandler(
64
65
  OperationTypeNode.QUERY,
65
66
  'GetUser',
@@ -72,7 +73,7 @@ describe('info', () => {
72
73
  expect(handler.info.operationName).toEqual('GetUser')
73
74
  })
74
75
 
75
- it('exposes request handler information for mutation', () => {
76
+ test('exposes request handler information for mutation', () => {
76
77
  const handler = new GraphQLHandler(
77
78
  OperationTypeNode.MUTATION,
78
79
  'Login',
@@ -85,7 +86,7 @@ describe('info', () => {
85
86
  expect(handler.info.operationName).toEqual('Login')
86
87
  })
87
88
 
88
- it('parses a query operation name from a given DocumentNode', () => {
89
+ test('parses a query operation name from a given DocumentNode', () => {
89
90
  const node = parse(`
90
91
  query GetUser {
91
92
  user {
@@ -106,7 +107,7 @@ describe('info', () => {
106
107
  expect(handler.info).toHaveProperty('operationName', 'GetUser')
107
108
  })
108
109
 
109
- it('parses a mutation operation name from a given DocumentNode', () => {
110
+ test('parses a mutation operation name from a given DocumentNode', () => {
110
111
  const node = parse(`
111
112
  mutation Login {
112
113
  user {
@@ -126,7 +127,7 @@ describe('info', () => {
126
127
  expect(handler.info).toHaveProperty('operationName', 'Login')
127
128
  })
128
129
 
129
- it('throws an exception given a DocumentNode with a mismatched operation type', () => {
130
+ test('throws an exception given a DocumentNode with a mismatched operation type', () => {
130
131
  const node = parse(`
131
132
  mutation CreateUser {
132
133
  user {
@@ -145,7 +146,7 @@ describe('info', () => {
145
146
 
146
147
  describe('parse', () => {
147
148
  describe('query', () => {
148
- it('parses a query without variables (GET)', async () => {
149
+ test('parses a query without variables (GET)', async () => {
149
150
  const handler = new GraphQLHandler(
150
151
  OperationTypeNode.QUERY,
151
152
  'GetUser',
@@ -171,7 +172,7 @@ describe('parse', () => {
171
172
  })
172
173
  })
173
174
 
174
- it('parses a query with variables (GET)', async () => {
175
+ test('parses a query with variables (GET)', async () => {
175
176
  const handler = new GraphQLHandler(
176
177
  OperationTypeNode.QUERY,
177
178
  'GetUser',
@@ -202,7 +203,7 @@ describe('parse', () => {
202
203
  })
203
204
  })
204
205
 
205
- it('parses a query without variables (POST)', async () => {
206
+ test('parses a query without variables (POST)', async () => {
206
207
  const handler = new GraphQLHandler(
207
208
  OperationTypeNode.QUERY,
208
209
  'GetUser',
@@ -228,7 +229,7 @@ describe('parse', () => {
228
229
  })
229
230
  })
230
231
 
231
- it('parses a query with variables (POST)', async () => {
232
+ test('parses a query with variables (POST)', async () => {
232
233
  const handler = new GraphQLHandler(
233
234
  OperationTypeNode.QUERY,
234
235
  'GetUser',
@@ -261,7 +262,7 @@ describe('parse', () => {
261
262
  })
262
263
 
263
264
  describe('mutation', () => {
264
- it('parses a mutation without variables (GET)', async () => {
265
+ test('parses a mutation without variables (GET)', async () => {
265
266
  const handler = new GraphQLHandler(
266
267
  OperationTypeNode.MUTATION,
267
268
  'GetUser',
@@ -287,7 +288,7 @@ describe('parse', () => {
287
288
  })
288
289
  })
289
290
 
290
- it('parses a mutation with variables (GET)', async () => {
291
+ test('parses a mutation with variables (GET)', async () => {
291
292
  const handler = new GraphQLHandler(
292
293
  OperationTypeNode.MUTATION,
293
294
  'GetUser',
@@ -318,7 +319,7 @@ describe('parse', () => {
318
319
  })
319
320
  })
320
321
 
321
- it('parses a mutation without variables (POST)', async () => {
322
+ test('parses a mutation without variables (POST)', async () => {
322
323
  const handler = new GraphQLHandler(
323
324
  OperationTypeNode.MUTATION,
324
325
  'GetUser',
@@ -344,7 +345,7 @@ describe('parse', () => {
344
345
  })
345
346
  })
346
347
 
347
- it('parses a mutation with variables (POST)', async () => {
348
+ test('parses a mutation with variables (POST)', async () => {
348
349
  const handler = new GraphQLHandler(
349
350
  OperationTypeNode.MUTATION,
350
351
  'GetUser',
@@ -377,7 +378,7 @@ describe('parse', () => {
377
378
  })
378
379
 
379
380
  describe('with endpoint configuration', () => {
380
- it('parses the request and parses grapqhl properties from it when the graphql.link endpoint matches', async () => {
381
+ test('parses the request and parses grapqhl properties from it when the graphql.link endpoint matches', async () => {
381
382
  const handler = new GraphQLHandler(
382
383
  OperationTypeNode.QUERY,
383
384
  'GetUser',
@@ -438,7 +439,7 @@ describe('parse', () => {
438
439
  })
439
440
  })
440
441
 
441
- it('parses a request but does not parse graphql properties from it graphql.link hostname does not match', async () => {
442
+ test('parses a request but does not parse graphql properties from it graphql.link hostname does not match', async () => {
442
443
  const handler = new GraphQLHandler(
443
444
  OperationTypeNode.QUERY,
444
445
  'GetUser',
@@ -487,7 +488,7 @@ describe('parse', () => {
487
488
  })
488
489
  })
489
490
 
490
- it('parses a request but does not parse graphql properties from it graphql.link pathname does not match', async () => {
491
+ test('parses a request but does not parse graphql properties from it graphql.link pathname does not match', async () => {
491
492
  const handler = new GraphQLHandler(
492
493
  OperationTypeNode.QUERY,
493
494
  'GetUser',
@@ -539,7 +540,7 @@ describe('parse', () => {
539
540
  })
540
541
 
541
542
  describe('predicate', () => {
542
- it('respects operation type', async () => {
543
+ test('respects operation type', async () => {
543
544
  const handler = new GraphQLHandler(
544
545
  OperationTypeNode.QUERY,
545
546
  'GetUser',
@@ -567,7 +568,7 @@ describe('predicate', () => {
567
568
  ).toBe(false)
568
569
  })
569
570
 
570
- it('respects operation name', async () => {
571
+ test('respects operation name', async () => {
571
572
  const handler = new GraphQLHandler(
572
573
  OperationTypeNode.QUERY,
573
574
  'GetUser',
@@ -601,7 +602,7 @@ describe('predicate', () => {
601
602
  ).resolves.toBe(false)
602
603
  })
603
604
 
604
- it('allows anonymous GraphQL operations when using "all" expected operation type', async () => {
605
+ test('allows anonymous GraphQL operations when using "all" expected operation type', async () => {
605
606
  const handler = new GraphQLHandler('all', new RegExp('.*'), '*', resolver)
606
607
  const request = createPostGraphQLRequest({
607
608
  query: `
@@ -622,7 +623,7 @@ describe('predicate', () => {
622
623
  ).resolves.toBe(true)
623
624
  })
624
625
 
625
- it('respects custom endpoint', async () => {
626
+ test('respects custom endpoint', async () => {
626
627
  const handler = new GraphQLHandler(
627
628
  OperationTypeNode.QUERY,
628
629
  'GetUser',
@@ -653,7 +654,7 @@ describe('predicate', () => {
653
654
  ).resolves.toBe(false)
654
655
  })
655
656
 
656
- it('supports custom predicate function', async () => {
657
+ test('supports custom predicate function', async () => {
657
658
  const handler = new GraphQLHandler(
658
659
  OperationTypeNode.QUERY,
659
660
  ({ query }) => {
@@ -692,7 +693,7 @@ describe('predicate', () => {
692
693
  })
693
694
 
694
695
  describe('test', () => {
695
- it('respects operation type', async () => {
696
+ test('respects operation type', async () => {
696
697
  const handler = new GraphQLHandler(
697
698
  OperationTypeNode.QUERY,
698
699
  'GetUser',
@@ -710,7 +711,7 @@ describe('test', () => {
710
711
  expect(await handler.test({ request: alienRequest })).toBe(false)
711
712
  })
712
713
 
713
- it('respects operation name', async () => {
714
+ test('respects operation name', async () => {
714
715
  const handler = new GraphQLHandler(
715
716
  OperationTypeNode.QUERY,
716
717
  'GetUser',
@@ -734,7 +735,7 @@ describe('test', () => {
734
735
  await expect(handler.test({ request: alienRequest })).resolves.toBe(false)
735
736
  })
736
737
 
737
- it('respects custom endpoint', async () => {
738
+ test('respects custom endpoint', async () => {
738
739
  const handler = new GraphQLHandler(
739
740
  OperationTypeNode.QUERY,
740
741
  'GetUser',
@@ -757,7 +758,7 @@ describe('test', () => {
757
758
  })
758
759
 
759
760
  describe('run', () => {
760
- it('returns a mocked response given a matching query', async () => {
761
+ test('returns a mocked response given a matching query', async () => {
761
762
  const handler = new GraphQLHandler(
762
763
  OperationTypeNode.QUERY,
763
764
  'GetUser',
@@ -802,7 +803,7 @@ describe('run', () => {
802
803
  })
803
804
  })
804
805
 
805
- it('returns null given a non-matching query', async () => {
806
+ test('returns null given a non-matching query', async () => {
806
807
  const handler = new GraphQLHandler(
807
808
  OperationTypeNode.QUERY,
808
809
  'GetUser',
@@ -820,7 +821,7 @@ describe('run', () => {
820
821
  })
821
822
 
822
823
  describe('isDocumentNode', () => {
823
- it('returns true given a valid DocumentNode', () => {
824
+ test('returns true given a valid DocumentNode', () => {
824
825
  const node = parse(`
825
826
  query GetUser {
826
827
  user {
@@ -832,7 +833,7 @@ describe('isDocumentNode', () => {
832
833
  expect(isDocumentNode(node)).toEqual(true)
833
834
  })
834
835
 
835
- it('returns false given an arbitrary input', () => {
836
+ test('returns false given an arbitrary input', () => {
836
837
  expect(isDocumentNode(null)).toEqual(false)
837
838
  expect(isDocumentNode(undefined)).toEqual(false)
838
839
  expect(isDocumentNode('')).toEqual(false)
@@ -842,7 +843,7 @@ describe('isDocumentNode', () => {
842
843
  })
843
844
 
844
845
  describe('request', () => {
845
- it('has parsed operationName', async () => {
846
+ test('has parsed operationName', async () => {
846
847
  const matchAllResolver = vi.fn()
847
848
  const handler = new GraphQLHandler(
848
849
  OperationTypeNode.QUERY,
@@ -12,29 +12,30 @@ import {
12
12
  type RequestHandlerExecutionResult,
13
13
  type RequestHandlerOptions,
14
14
  type ResponseResolver,
15
- } from './RequestHandler'
16
- import { getTimestamp } from '../utils/logging/getTimestamp'
17
- import { getStatusCodeColor } from '../utils/logging/getStatusCodeColor'
18
- import { serializeRequest } from '../utils/logging/serializeRequest'
19
- import { serializeResponse } from '../utils/logging/serializeResponse'
15
+ } from '#core/handlers/request-handler'
16
+ import { getTimestamp } from '#core/utils/logging/get-timestamp'
17
+ import { getStatusCodeColor } from '#core/utils/logging/get-status-code-color'
18
+ import { serializeRequest } from '#core/utils/logging/serialize-request'
19
+ import { serializeResponse } from '#core/utils/logging/serialize-response'
20
20
  import {
21
- type Match,
22
21
  matchRequestUrl,
22
+ type Match,
23
23
  type Path,
24
- } from '../utils/matching/matchRequestUrl'
24
+ } from '#core/utils/matching/match-request-url'
25
25
  import {
26
- type ParsedGraphQLRequest,
27
- type GraphQLMultipartRequestBody,
28
26
  parseGraphQLRequest,
29
27
  parseDocumentNode,
28
+ type ParsedGraphQLRequest,
29
+ type GraphQLMultipartRequestBody,
30
30
  type ParsedGraphQLQuery,
31
- } from '../utils/internal/parseGraphQLRequest'
32
- import { toPublicUrl } from '../utils/request/toPublicUrl'
33
- import { devUtils } from '../utils/internal/devUtils'
34
- import { getAllRequestCookies } from '../utils/request/getRequestCookies'
35
- import { type ResponseResolutionContext } from '../utils/executeHandlers'
36
- import { kDefaultContentType, type StrictRequest } from '../HttpResponse'
37
- import { getAllAcceptedMimeTypes } from '../utils/request/getAllAcceptedMimeTypes'
31
+ } from './parse-graphql-request'
32
+ import { toPublicUrl } from '#core/utils/request/to-public-url'
33
+ import { devUtils } from '#core/utils/internal/dev-utils'
34
+ import { getAllRequestCookies } from '#core/utils/request/get-request-cookies'
35
+ import { kDefaultContentType } from '#http/symbols'
36
+ import type { StrictRequest } from '#http/http-response'
37
+ import { getAllAcceptedMimeTypes } from '#core/utils/request/get-all-accepted-mime-types'
38
+ import type { ResponseResolutionContext } from '#core/utils/execute-handlers'
38
39
 
39
40
  export interface DocumentTypeDecoration<
40
41
  Result = { [key: string]: any },
@@ -110,7 +111,7 @@ export type GraphQLCustomPredicate = (args: {
110
111
  cookies: Record<string, string>
111
112
  }) => GraphQLCustomPredicateResult | Promise<GraphQLCustomPredicateResult>
112
113
 
113
- export type GraphQLCustomPredicateResult = boolean | { matches: boolean }
114
+ type GraphQLCustomPredicateResult = boolean | { matches: boolean }
114
115
 
115
116
  export type GraphQLPredicate<Query = any, Variables = any> =
116
117
  | GraphQLHandlerNameSelector
@@ -184,35 +185,49 @@ export class GraphQLHandler extends RequestHandler<
184
185
  return predicate
185
186
  }
186
187
 
187
- constructor(
188
- operationType: GraphQLOperationType,
189
- predicate: GraphQLPredicate,
190
- endpoint: Path,
191
- resolver: ResponseResolver<GraphQLResolverExtras<any>, any, any>,
192
- options?: RequestHandlerOptions,
193
- ) {
188
+ /**
189
+ * Creates a GraphQL handler information object from the given
190
+ * operation predicate. Normalizes `DocumentNode` and typed document
191
+ * string predicates to plain operation names.
192
+ */
193
+ static parseGraphQLRequestInfo(args: {
194
+ operationType: GraphQLOperationType
195
+ predicate: GraphQLPredicate
196
+ url: Path
197
+ }): GraphQLHandlerInfo {
194
198
  const operationName = GraphQLHandler.#parseOperationName(
195
- predicate,
196
- operationType,
199
+ args.predicate,
200
+ args.operationType,
197
201
  )
198
202
 
199
203
  const displayOperationName =
200
204
  typeof operationName === 'function' ? '[custom predicate]' : operationName
201
205
 
202
206
  const header =
203
- operationType === 'all'
204
- ? `${operationType} (origin: ${endpoint.toString()})`
205
- : `${operationType}${displayOperationName ? ` ${displayOperationName}` : ''} (origin: ${endpoint.toString()})`
207
+ args.operationType === 'all'
208
+ ? `${args.operationType} (origin: ${args.url.toString()})`
209
+ : `${args.operationType}${displayOperationName ? ` ${displayOperationName}` : ''} (origin: ${args.url.toString()})`
206
210
 
211
+ return {
212
+ header,
213
+ operationType: args.operationType,
214
+ operationName,
215
+ }
216
+ }
217
+
218
+ constructor(
219
+ operationType: GraphQLOperationType,
220
+ predicate: GraphQLPredicate,
221
+ endpoint: Path,
222
+ resolver: ResponseResolver<GraphQLResolverExtras<any>, any, any>,
223
+ options?: RequestHandlerOptions,
224
+ ) {
207
225
  super({
208
- info: {
209
- header,
226
+ info: GraphQLHandler.parseGraphQLRequestInfo({
210
227
  operationType,
211
- operationName: GraphQLHandler.#parseOperationName(
212
- predicate,
213
- operationType,
214
- ),
215
- },
228
+ predicate,
229
+ url: endpoint,
230
+ }),
216
231
  resolver,
217
232
  options,
218
233
  })
@@ -242,10 +257,8 @@ export class GraphQLHandler extends RequestHandler<
242
257
  }
243
258
 
244
259
  async parse(args: { request: Request }): Promise<GraphQLRequestParsedResult> {
245
- /**
246
- * If the request doesn't match a specified endpoint, there's no
247
- * need to parse it since there's no case where we would handle this
248
- */
260
+ // If the request doesn't match a specified endpoint, there's no
261
+ // need to parse it since there's no case where we would handle this
249
262
  const match = matchRequestUrl(new URL(args.request.url), this.endpoint)
250
263
  const cookies = getAllRequestCookies(args.request)
251
264
 
@@ -291,7 +304,7 @@ export class GraphQLHandler extends RequestHandler<
291
304
  devUtils.warn(`\
292
305
  Failed to intercept a GraphQL request at "${args.request.method} ${publicUrl}": anonymous GraphQL operations are not supported.
293
306
 
294
- Consider naming this operation or using "graphql.operation()" request handler to intercept GraphQL requests regardless of their operation name/type. Read more: https://mswjs.io/docs/api/graphql/#graphqloperationresolver`)
307
+ Consider naming this operation or using the "operation()" request handler of "graphql.link()" to intercept GraphQL requests regardless of their operation name/type. Read more: https://mswjs.io/docs/api/graphql/#graphqloperationresolver`)
295
308
  return false
296
309
  }
297
310
 
@@ -0,0 +1,39 @@
1
+ import { TypedEvent } from 'rettime'
2
+
3
+ export interface GraphQLSubscriptionEventInit {
4
+ operationName: string
5
+ query: string
6
+ variables: Record<string, unknown>
7
+ request: Request
8
+ }
9
+
10
+ /**
11
+ * Emitted when a GraphQL subscription is established over an
12
+ * intercepted WebSocket connection (i.e. matched by a subscription
13
+ * handler and resolved).
14
+ *
15
+ * @note The event is referenced by the WebSocket frame event map so
16
+ * the life-cycle event emitters derived from it (e.g. `server.events`)
17
+ * are typed correctly. It lives in its own module so the emitting
18
+ * `msw/graphql` module doesn't pull the entire frame graph, and the
19
+ * core stays free of the `graphql` dependency (the event carries
20
+ * plain data only).
21
+ */
22
+ export class GraphQLSubscriptionEvent extends TypedEvent<
23
+ void,
24
+ void,
25
+ 'graphql:subscription'
26
+ > {
27
+ public readonly operationName: string
28
+ public readonly query: string
29
+ public readonly variables: Record<string, unknown>
30
+ public readonly request: Request
31
+
32
+ constructor(init: GraphQLSubscriptionEventInit) {
33
+ super('graphql:subscription')
34
+ this.operationName = init.operationName
35
+ this.query = init.query
36
+ this.variables = init.variables
37
+ this.request = init.request
38
+ }
39
+ }
@@ -0,0 +1,208 @@
1
+ // @vitest-environment node
2
+ import { invariant } from 'outvariant'
3
+ import { OperationTypeNode, parse } from 'graphql'
4
+ import { getSiblingHandlers } from '#core/utils/internal/attach-sibling-handlers'
5
+ import { HttpHandler } from '#http/http-handler'
6
+ import { WebSocketHandler } from '#ws/websocket-handler'
7
+ import { WebSocketNetworkFrame } from '#core/experimental/frames/websocket-frame'
8
+ import { InMemoryHandlersController } from '#core/experimental/handlers-controller'
9
+ import { createTestWebSocketConnection } from '../../test/support/ws-test-utils'
10
+ import type { GraphQLHandlerInfo } from './graphql-handler'
11
+ import { graphql } from './graphql'
12
+ import {
13
+ createGraphQLSubscriptionHandler,
14
+ GraphQLSubscriptionTransportHandler,
15
+ } from './graphql-subscription'
16
+
17
+ const subscription = createGraphQLSubscriptionHandler(
18
+ 'http://localhost:4000/graphql',
19
+ )
20
+
21
+ describe('info', () => {
22
+ test('resolves handler info for a string operation name', () => {
23
+ expect(
24
+ subscription('OnCommentAdded', () => {}).info,
25
+ ).toEqual<GraphQLHandlerInfo>({
26
+ header:
27
+ 'subscription OnCommentAdded (origin: ws://localhost:4000/graphql)',
28
+ operationName: 'OnCommentAdded',
29
+ operationType: OperationTypeNode.SUBSCRIPTION,
30
+ })
31
+ })
32
+
33
+ test('resolves handler info for a RegExp operation name', () => {
34
+ expect(subscription(/Comment/, () => {}).info).toEqual<GraphQLHandlerInfo>({
35
+ header: 'subscription /Comment/ (origin: ws://localhost:4000/graphql)',
36
+ operationName: /Comment/,
37
+ operationType: OperationTypeNode.SUBSCRIPTION,
38
+ })
39
+ })
40
+
41
+ test('resolves handler info for a DocumentNode operation name', () => {
42
+ const node = parse(`
43
+ subscription OnCommentAdded {
44
+ comment {
45
+ id
46
+ }
47
+ }
48
+ `)
49
+
50
+ expect(subscription(node, () => {}).info).toEqual<GraphQLHandlerInfo>({
51
+ header:
52
+ 'subscription OnCommentAdded (origin: ws://localhost:4000/graphql)',
53
+ operationName: 'OnCommentAdded',
54
+ operationType: OperationTypeNode.SUBSCRIPTION,
55
+ })
56
+ })
57
+ })
58
+
59
+ describe('predicate', () => {
60
+ test('returns true for a matching WebSocket connection url', () => {
61
+ const handler = subscription('OnCommentAdded', () => {})
62
+ const url = 'ws://localhost:4000/graphql'
63
+ const parsedResult = handler.parse({ url })
64
+
65
+ expect(handler.predicate({ url, parsedResult })).toBe(true)
66
+ })
67
+
68
+ test('returns false for a non-matching WebSocket connection url', () => {
69
+ const handler = subscription('OnCommentAdded', () => {})
70
+ const url = 'ws://example.com/chat'
71
+ const parsedResult = handler.parse({ url })
72
+
73
+ expect(handler.predicate({ url, parsedResult })).toBe(false)
74
+ })
75
+ })
76
+
77
+ describe('protocol discrimination', () => {
78
+ class TestWebSocketFrame extends WebSocketNetworkFrame {
79
+ public passthrough = vi.fn()
80
+ public errorWith = vi.fn()
81
+ }
82
+
83
+ function getWebSocketHandlers(
84
+ controller: InMemoryHandlersController,
85
+ ): Array<WebSocketHandler> {
86
+ return controller
87
+ .getHandlersByKind('websocket')
88
+ .filter((handler) => handler instanceof WebSocketHandler)
89
+ }
90
+
91
+ test('does not claim connections that lack the "graphql-transport-ws" protocol', async () => {
92
+ const api = graphql.link('*')
93
+ const controller = new InMemoryHandlersController([
94
+ api.subscription('OnCommentAdded', vi.fn()),
95
+ api.operation(vi.fn()),
96
+ ])
97
+
98
+ // A non-GraphQL WebSocket connection (e.g. HMR, chat) that happens
99
+ // to match the wildcard endpoint. It must stay unhandled so it
100
+ // performs the connection as-is.
101
+ const connection = createTestWebSocketConnection('ws://localhost/socket')
102
+ const frame = new TestWebSocketFrame({ connection })
103
+ const unhandledFrameCallback = vi.fn()
104
+
105
+ const matches = await frame.resolve(
106
+ getWebSocketHandlers(controller),
107
+ unhandledFrameCallback,
108
+ { quiet: true },
109
+ )
110
+
111
+ expect.soft(matches).toBe(false)
112
+ expect.soft(frame.passthrough).toHaveBeenCalledOnce()
113
+ expect.soft(frame.errorWith).not.toHaveBeenCalled()
114
+ expect
115
+ .soft(unhandledFrameCallback)
116
+ .toHaveBeenCalledExactlyOnceWith(expect.objectContaining({ frame }))
117
+ })
118
+
119
+ test('claims connections that request the "graphql-transport-ws" protocol', async () => {
120
+ const api = graphql.link('*')
121
+ const controller = new InMemoryHandlersController([
122
+ api.subscription('OnCommentAdded', vi.fn()),
123
+ ])
124
+
125
+ const connection = createTestWebSocketConnection('ws://localhost/graphql', {
126
+ protocols: ['graphql-transport-ws'],
127
+ })
128
+ const frame = new TestWebSocketFrame({ connection })
129
+ const unhandledFrameCallback = vi.fn()
130
+
131
+ const matches = await frame.resolve(
132
+ getWebSocketHandlers(controller),
133
+ unhandledFrameCallback,
134
+ { quiet: true },
135
+ )
136
+
137
+ expect.soft(matches).toBe(true)
138
+ expect.soft(frame.passthrough).not.toHaveBeenCalled()
139
+ expect.soft(frame.errorWith).not.toHaveBeenCalled()
140
+ expect.soft(unhandledFrameCallback).not.toHaveBeenCalled()
141
+ })
142
+
143
+ test('ignores upgrade requests that lack the "graphql-transport-ws" protocol', async () => {
144
+ const handler = subscription('OnCommentAdded', () => {})
145
+ const [, upgradeHandler] = getSiblingHandlers(handler)
146
+
147
+ invariant(
148
+ upgradeHandler instanceof HttpHandler,
149
+ 'Expected the second sibling to be the upgrade request handler',
150
+ )
151
+
152
+ await expect(
153
+ upgradeHandler.run({
154
+ request: new Request('http://localhost:4000/graphql', {
155
+ headers: {
156
+ upgrade: 'websocket',
157
+ 'sec-websocket-key': 'dGhlIHNhbXBsZSBub25jZQ==',
158
+ },
159
+ }),
160
+ requestId: 'upgrade-plain',
161
+ }),
162
+ ).resolves.toBeNull()
163
+ })
164
+
165
+ test('confirms the protocol for matching upgrade requests', async () => {
166
+ const handler = subscription('OnCommentAdded', () => {})
167
+ const [, upgradeHandler] = getSiblingHandlers(handler)
168
+
169
+ invariant(
170
+ upgradeHandler instanceof HttpHandler,
171
+ 'Expected the second sibling to be the upgrade request handler',
172
+ )
173
+
174
+ const result = await upgradeHandler.run({
175
+ request: new Request('http://localhost:4000/graphql', {
176
+ headers: {
177
+ upgrade: 'websocket',
178
+ 'sec-websocket-key': 'dGhlIHNhbXBsZSBub25jZQ==',
179
+ 'sec-websocket-protocol': 'graphql-transport-ws',
180
+ },
181
+ }),
182
+ requestId: 'upgrade-graphql',
183
+ })
184
+
185
+ expect(result?.response?.status).toBe(101)
186
+ expect(result?.response?.headers.get('sec-websocket-protocol')).toBe(
187
+ 'graphql-transport-ws',
188
+ )
189
+ })
190
+ })
191
+
192
+ describe('sibling handlers', () => {
193
+ test('shares the transport and upgrade handlers between subscription handlers', () => {
194
+ const firstHandler = subscription('OnCommentAdded', () => {})
195
+ const secondHandler = subscription('OnPostAdded', () => {})
196
+
197
+ const firstSiblings = getSiblingHandlers(firstHandler)
198
+ const secondSiblings = getSiblingHandlers(secondHandler)
199
+
200
+ expect(firstSiblings).toHaveLength(2)
201
+ expect(firstSiblings[0]).toBeInstanceOf(GraphQLSubscriptionTransportHandler)
202
+
203
+ // The transport and the upgrade handlers must be shared by reference
204
+ // so the handlers controller dedupes them across subscription handlers.
205
+ expect(secondSiblings[0]).toBe(firstSiblings[0])
206
+ expect(secondSiblings[1]).toBe(firstSiblings[1])
207
+ })
208
+ })