msw 2.13.4 → 2.13.6

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 (101) hide show
  1. package/lib/browser/index.js.map +1 -1
  2. package/lib/browser/index.mjs.map +1 -1
  3. package/lib/core/{HttpResponse-BF4NGRsf.d.mts → HttpResponse-BMMzfpjG.d.mts} +14 -1
  4. package/lib/core/{HttpResponse-yukpQS4a.d.ts → HttpResponse-DPDqE4Pb.d.ts} +14 -1
  5. package/lib/core/HttpResponse.d.mts +1 -1
  6. package/lib/core/HttpResponse.d.ts +1 -1
  7. package/lib/core/experimental/compat.d.mts +1 -1
  8. package/lib/core/experimental/compat.d.ts +1 -1
  9. package/lib/core/experimental/define-network.d.mts +1 -1
  10. package/lib/core/experimental/define-network.d.ts +1 -1
  11. package/lib/core/experimental/define-network.js +1 -5
  12. package/lib/core/experimental/define-network.js.map +1 -1
  13. package/lib/core/experimental/define-network.mjs +1 -5
  14. package/lib/core/experimental/define-network.mjs.map +1 -1
  15. package/lib/core/experimental/frames/http-frame.d.mts +1 -1
  16. package/lib/core/experimental/frames/http-frame.d.ts +1 -1
  17. package/lib/core/experimental/frames/network-frame.d.mts +1 -1
  18. package/lib/core/experimental/frames/network-frame.d.ts +1 -1
  19. package/lib/core/experimental/frames/websocket-frame.d.mts +1 -1
  20. package/lib/core/experimental/frames/websocket-frame.d.ts +1 -1
  21. package/lib/core/experimental/handlers-controller.d.mts +2 -1
  22. package/lib/core/experimental/handlers-controller.d.ts +2 -1
  23. package/lib/core/experimental/handlers-controller.js +12 -0
  24. package/lib/core/experimental/handlers-controller.js.map +1 -1
  25. package/lib/core/experimental/handlers-controller.mjs +12 -0
  26. package/lib/core/experimental/handlers-controller.mjs.map +1 -1
  27. package/lib/core/experimental/index.d.mts +1 -1
  28. package/lib/core/experimental/index.d.ts +1 -1
  29. package/lib/core/experimental/on-unhandled-frame.d.mts +1 -1
  30. package/lib/core/experimental/on-unhandled-frame.d.ts +1 -1
  31. package/lib/core/experimental/setup-api.d.mts +1 -1
  32. package/lib/core/experimental/setup-api.d.ts +1 -1
  33. package/lib/core/experimental/setup-api.js +1 -5
  34. package/lib/core/experimental/setup-api.js.map +1 -1
  35. package/lib/core/experimental/setup-api.mjs +1 -5
  36. package/lib/core/experimental/setup-api.mjs.map +1 -1
  37. package/lib/core/experimental/sources/interceptor-source.d.mts +1 -1
  38. package/lib/core/experimental/sources/interceptor-source.d.ts +1 -1
  39. package/lib/core/experimental/sources/network-source.d.mts +1 -1
  40. package/lib/core/experimental/sources/network-source.d.ts +1 -1
  41. package/lib/core/getResponse.d.mts +1 -1
  42. package/lib/core/getResponse.d.ts +1 -1
  43. package/lib/core/graphql.d.mts +1 -1
  44. package/lib/core/graphql.d.ts +1 -1
  45. package/lib/core/handlers/GraphQLHandler.d.mts +1 -1
  46. package/lib/core/handlers/GraphQLHandler.d.ts +1 -1
  47. package/lib/core/handlers/HttpHandler.d.mts +1 -1
  48. package/lib/core/handlers/HttpHandler.d.ts +1 -1
  49. package/lib/core/handlers/RequestHandler.d.mts +1 -1
  50. package/lib/core/handlers/RequestHandler.d.ts +1 -1
  51. package/lib/core/handlers/RequestHandler.js +25 -0
  52. package/lib/core/handlers/RequestHandler.js.map +1 -1
  53. package/lib/core/handlers/RequestHandler.mjs +25 -0
  54. package/lib/core/handlers/RequestHandler.mjs.map +1 -1
  55. package/lib/core/handlers/WebSocketHandler.d.mts +5 -2
  56. package/lib/core/handlers/WebSocketHandler.d.ts +5 -2
  57. package/lib/core/handlers/WebSocketHandler.js +22 -5
  58. package/lib/core/handlers/WebSocketHandler.js.map +1 -1
  59. package/lib/core/handlers/WebSocketHandler.mjs +22 -5
  60. package/lib/core/handlers/WebSocketHandler.mjs.map +1 -1
  61. package/lib/core/http.d.mts +1 -1
  62. package/lib/core/http.d.ts +1 -1
  63. package/lib/core/index.d.mts +1 -1
  64. package/lib/core/index.d.ts +1 -1
  65. package/lib/core/passthrough.d.mts +1 -1
  66. package/lib/core/passthrough.d.ts +1 -1
  67. package/lib/core/sse.d.mts +1 -1
  68. package/lib/core/sse.d.ts +1 -1
  69. package/lib/core/utils/HttpResponse/decorators.d.mts +1 -1
  70. package/lib/core/utils/HttpResponse/decorators.d.ts +1 -1
  71. package/lib/core/utils/executeHandlers.d.mts +1 -1
  72. package/lib/core/utils/executeHandlers.d.ts +1 -1
  73. package/lib/core/utils/handleRequest.d.mts +1 -1
  74. package/lib/core/utils/handleRequest.d.ts +1 -1
  75. package/lib/core/utils/internal/isHandlerKind.d.mts +1 -1
  76. package/lib/core/utils/internal/isHandlerKind.d.ts +1 -1
  77. package/lib/core/utils/internal/parseGraphQLRequest.d.mts +1 -1
  78. package/lib/core/utils/internal/parseGraphQLRequest.d.ts +1 -1
  79. package/lib/core/utils/internal/parseMultipartData.d.mts +1 -1
  80. package/lib/core/utils/internal/parseMultipartData.d.ts +1 -1
  81. package/lib/core/ws/handleWebSocketEvent.d.mts +1 -1
  82. package/lib/core/ws/handleWebSocketEvent.d.ts +1 -1
  83. package/lib/iife/index.js +61 -15
  84. package/lib/iife/index.js.map +1 -1
  85. package/lib/mockServiceWorker.js +1 -1
  86. package/package.json +2 -2
  87. package/src/browser/utils/deserializeRequest.ts +2 -1
  88. package/src/browser/utils/pruneGetRequestBody.ts +3 -3
  89. package/src/core/experimental/define-network.ts +4 -7
  90. package/src/core/experimental/handlers-controller.ts +14 -0
  91. package/src/core/experimental/setup-api.ts +1 -5
  92. package/src/core/handlers/RequestHandler.ts +28 -0
  93. package/src/core/handlers/WebSocketHandler.test.ts +58 -0
  94. package/src/core/handlers/WebSocketHandler.ts +36 -7
  95. package/lib/core/utils/internal/requestHandlerUtils.d.mts +0 -12
  96. package/lib/core/utils/internal/requestHandlerUtils.d.ts +0 -12
  97. package/lib/core/utils/internal/requestHandlerUtils.js +0 -37
  98. package/lib/core/utils/internal/requestHandlerUtils.js.map +0 -1
  99. package/lib/core/utils/internal/requestHandlerUtils.mjs +0 -17
  100. package/lib/core/utils/internal/requestHandlerUtils.mjs.map +0 -1
  101. package/src/core/utils/internal/requestHandlerUtils.ts +0 -21
@@ -7,7 +7,7 @@
7
7
  * - Please do NOT modify this file.
8
8
  */
9
9
 
10
- const PACKAGE_VERSION = '2.13.4'
10
+ const PACKAGE_VERSION = '2.13.6'
11
11
  const INTEGRITY_CHECKSUM = '4db4a41e972cec1b64cc569c66952d82'
12
12
  const IS_MOCKED_RESPONSE = Symbol('isMockedResponse')
13
13
  const activeClientIds = new Set()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "msw",
3
- "version": "2.13.4",
3
+ "version": "2.13.6",
4
4
  "description": "Seamless REST/GraphQL API mocking library for browser and Node.js.",
5
5
  "type": "commonjs",
6
6
  "main": "./lib/core/index.js",
@@ -286,7 +286,7 @@
286
286
  "vitest-environment-miniflare": "^2.14.4",
287
287
  "webpack": "^5.106.2",
288
288
  "webpack-http-server": "^0.5.0",
289
- "msw": "^2.13.4"
289
+ "msw": "^2.13.6"
290
290
  },
291
291
  "peerDependencies": {
292
292
  "typescript": ">= 4.8.x"
@@ -1,11 +1,12 @@
1
1
  import { pruneGetRequestBody } from './pruneGetRequestBody'
2
+ import type { IncomingWorkerRequest } from './workerChannel'
2
3
 
3
4
  /**
4
5
  * Converts a given request received from the Service Worker
5
6
  * into a Fetch `Request` instance.
6
7
  */
7
8
  export function deserializeRequest(
8
- serializedRequest: ServiceWorkerIncomingRequest,
9
+ serializedRequest: IncomingWorkerRequest,
9
10
  ): Request {
10
11
  return new Request(serializedRequest.url, {
11
12
  ...serializedRequest,
@@ -1,13 +1,13 @@
1
- import type { ServiceWorkerIncomingRequest } from '../glossary'
1
+ import type { IncomingWorkerRequest } from './workerChannel'
2
2
 
3
- type Input = Pick<ServiceWorkerIncomingRequest, 'method' | 'body'>
3
+ type Input = Pick<IncomingWorkerRequest, 'method' | 'body'>
4
4
 
5
5
  /**
6
6
  * Ensures that an empty GET request body is always represented as `undefined`.
7
7
  */
8
8
  export function pruneGetRequestBody(
9
9
  request: Input,
10
- ): ServiceWorkerIncomingRequest['body'] {
10
+ ): IncomingWorkerRequest['body'] | undefined {
11
11
  // Force HEAD/GET request body to always be empty.
12
12
  // The worker reads any request's body as ArrayBuffer,
13
13
  // and you cannot re-construct a GET/HEAD Request
@@ -47,8 +47,9 @@ export interface DefineNetworkOptions<
47
47
  onUnhandledFrame?: UnhandledFrameHandle
48
48
  }
49
49
 
50
- export interface NetworkApi<Sources extends Array<NetworkSource<any>>>
51
- extends NetworkHandlersApi {
50
+ export interface NetworkApi<
51
+ Sources extends Array<NetworkSource<any>>,
52
+ > extends NetworkHandlersApi {
52
53
  readyState: NetworkReadyState
53
54
  /**
54
55
  * Enable the network interception and handling.
@@ -210,11 +211,7 @@ export function defineNetwork<Sources extends Array<NetworkSource<any>>>(
210
211
  handlersController.reset(handlers)
211
212
  },
212
213
  restoreHandlers() {
213
- for (const handler of handlersController.currentHandlers()) {
214
- if ('isUsed' in handler) {
215
- handler.isUsed = false
216
- }
217
- }
214
+ handlersController.restore()
218
215
  },
219
216
  listHandlers() {
220
217
  return toReadonlyArray(handlersController.currentHandlers())
@@ -90,6 +90,12 @@ export abstract class HandlersController {
90
90
  ),
91
91
  )
92
92
 
93
+ for (const handler of this.currentHandlers()) {
94
+ if ('reset' in handler) {
95
+ handler['reset']()
96
+ }
97
+ }
98
+
93
99
  const { initialHandlers } = this.getState()
94
100
 
95
101
  if (nextHandlers.length === 0) {
@@ -108,6 +114,14 @@ export abstract class HandlersController {
108
114
  })
109
115
  }
110
116
 
117
+ public restore(): void {
118
+ for (const handler of this.currentHandlers()) {
119
+ if ('restore' in handler) {
120
+ handler['restore']()
121
+ }
122
+ }
123
+ }
124
+
111
125
  #validateHandlers(handlers: Array<AnyHandler>): boolean {
112
126
  return handlers.every((handler) => !Array.isArray(handler))
113
127
  }
@@ -42,11 +42,7 @@ export abstract class SetupApi<
42
42
  }
43
43
 
44
44
  public restoreHandlers(): void {
45
- this.handlersController.currentHandlers().forEach((handler) => {
46
- if ('isUsed' in handler) {
47
- handler.isUsed = false
48
- }
49
- })
45
+ this.handlersController.restore()
50
46
  }
51
47
 
52
48
  public resetHandlers(...nextHandlers: Array<AnyHandler>): void {
@@ -171,6 +171,34 @@ export abstract class RequestHandler<
171
171
  this.isUsed = false
172
172
  }
173
173
 
174
+ /**
175
+ * Reset the runtime state accumulated during response resolution,
176
+ * such as generator iterator progress. Called when this handler is
177
+ * removed from the active handlers list so re-adding it later starts
178
+ * from a clean state.
179
+ */
180
+ protected reset(): void {
181
+ const iterator = this.resolverIterator
182
+ this.resolverIterator = undefined
183
+ this.resolverIteratorResult = undefined
184
+
185
+ if (typeof iterator?.return === 'function') {
186
+ void Promise.resolve(iterator.return())
187
+ }
188
+ }
189
+
190
+ /**
191
+ * Restore this handler so it can match requests again after being
192
+ * exhausted (e.g. via `{ once: true }`). Also clears any accumulated
193
+ * resolution state.
194
+ */
195
+ protected restore(): void {
196
+ if (this.options?.once) {
197
+ this.reset()
198
+ this.isUsed = false
199
+ }
200
+ }
201
+
174
202
  /**
175
203
  * Determine if the intercepted request should be mocked.
176
204
  */
@@ -125,3 +125,61 @@ describe('parse', () => {
125
125
  })
126
126
  })
127
127
  })
128
+
129
+ describe('test', () => {
130
+ it('returns true for a matching string', () => {
131
+ expect(
132
+ new WebSocketHandler('ws://localhost/ws').test('ws://localhost/ws'),
133
+ ).toBe(true)
134
+ })
135
+
136
+ it('returns false for a non-matching string', () => {
137
+ expect(
138
+ new WebSocketHandler('ws://localhost/ws').test('ws://localhost/other'),
139
+ ).toBe(false)
140
+ })
141
+
142
+ it('returns true for a relative matching string', () => {
143
+ expect(
144
+ new WebSocketHandler('ws://localhost/ws').test('/ws', {
145
+ baseUrl: 'ws://localhost',
146
+ }),
147
+ ).toBe(true)
148
+ })
149
+
150
+ it('returns false for a relative non-matching string', () => {
151
+ expect(
152
+ new WebSocketHandler('ws://localhost/ws').test('/other', {
153
+ baseUrl: 'ws://localhost',
154
+ }),
155
+ ).toBe(false)
156
+ })
157
+
158
+ it('returns true for a matching URL', () => {
159
+ expect(
160
+ new WebSocketHandler('ws://localhost/ws').test(
161
+ new URL('ws://localhost/ws'),
162
+ ),
163
+ ).toBe(true)
164
+ })
165
+
166
+ it('returns false for a non-matching URL', () => {
167
+ expect(
168
+ new WebSocketHandler('ws://localhost/ws').test(
169
+ new URL('ws://localhost/other'),
170
+ ),
171
+ ).toBe(false)
172
+ })
173
+
174
+ it('returns true for a matching HTTP url string', () => {
175
+ expect(
176
+ new WebSocketHandler('ws://localhost/ws').test('http://localhost/ws'),
177
+ ).toBe(true)
178
+ })
179
+
180
+ it('returns false for a non-matching HTTP url string', () => {
181
+ expect(
182
+ new WebSocketHandler('ws://localhost/ws').test('http://localhost/other'),
183
+ ).toBe(false)
184
+ })
185
+ })
@@ -57,7 +57,7 @@ export class WebSocketHandler {
57
57
  }
58
58
 
59
59
  public parse(args: {
60
- url: URL
60
+ url: string | URL
61
61
  resolutionContext?: WebSocketResolutionContext
62
62
  }): WebSocketHandlerParsedResult {
63
63
  const clientUrl = new URL(args.url)
@@ -90,22 +90,26 @@ export class WebSocketHandler {
90
90
  }
91
91
 
92
92
  public predicate(args: {
93
- url: URL
93
+ url: string | URL
94
94
  parsedResult: WebSocketHandlerParsedResult
95
95
  }): boolean {
96
96
  return args.parsedResult.match.matches
97
97
  }
98
98
 
99
+ public test(
100
+ url: string | URL,
101
+ resolutionContext?: WebSocketResolutionContext & { strict?: boolean },
102
+ ): boolean {
103
+ return this.#match(url, resolutionContext) != null
104
+ }
105
+
99
106
  public async run(
100
107
  connection: WebSocketConnectionData,
101
108
  resolutionContext?: WebSocketResolutionContext,
102
109
  ): Promise<WebSocketHandlerConnection | null> {
103
- const parsedResult = this.parse({
104
- url: connection.client.url,
105
- resolutionContext,
106
- })
110
+ const parsedResult = this.#match(connection.client.url, resolutionContext)
107
111
 
108
- if (!this.predicate({ url: connection.client.url, parsedResult })) {
112
+ if (parsedResult == null) {
109
113
  return null
110
114
  }
111
115
 
@@ -125,6 +129,31 @@ export class WebSocketHandler {
125
129
  return resolvedConnection
126
130
  }
127
131
 
132
+ #match(
133
+ url: string | URL,
134
+ resolutionContext?: WebSocketResolutionContext & { strict?: boolean },
135
+ ): WebSocketHandlerParsedResult | null {
136
+ const resolvedUrl = this.#resolveWebSocketUrl(
137
+ url.toString(),
138
+ resolutionContext?.baseUrl,
139
+ )
140
+ const parsedResult = this.parse({
141
+ url: resolvedUrl,
142
+ resolutionContext,
143
+ })
144
+
145
+ if (
146
+ this.predicate({
147
+ url,
148
+ parsedResult,
149
+ })
150
+ ) {
151
+ return parsedResult
152
+ }
153
+
154
+ return null
155
+ }
156
+
128
157
  protected [kConnect](connection: WebSocketHandlerConnection): boolean {
129
158
  // Support `event.stopPropagation()` for various client/server events.
130
159
  connection.client.addEventListener(
@@ -1,12 +0,0 @@
1
- import { R as RequestHandler, s as RequestHandlerDefaultInfo, c as RequestHandlerOptions } from '../../HttpResponse-BF4NGRsf.mjs';
2
- import '@mswjs/interceptors';
3
- import './isIterable.mjs';
4
- import '../../typeUtils.mjs';
5
- import 'graphql';
6
- import '../matching/matchRequestUrl.mjs';
7
-
8
- declare function use(currentHandlers: Array<RequestHandler>, ...handlers: Array<RequestHandler>): void;
9
- declare function restoreHandlers(handlers: Array<RequestHandler>): void;
10
- declare function resetHandlers(initialHandlers: Array<RequestHandler>, ...nextHandlers: Array<RequestHandler>): RequestHandler<RequestHandlerDefaultInfo, any, any, RequestHandlerOptions>[];
11
-
12
- export { resetHandlers, restoreHandlers, use };
@@ -1,12 +0,0 @@
1
- import { R as RequestHandler, s as RequestHandlerDefaultInfo, c as RequestHandlerOptions } from '../../HttpResponse-yukpQS4a.js';
2
- import '@mswjs/interceptors';
3
- import './isIterable.js';
4
- import '../../typeUtils.js';
5
- import 'graphql';
6
- import '../matching/matchRequestUrl.js';
7
-
8
- declare function use(currentHandlers: Array<RequestHandler>, ...handlers: Array<RequestHandler>): void;
9
- declare function restoreHandlers(handlers: Array<RequestHandler>): void;
10
- declare function resetHandlers(initialHandlers: Array<RequestHandler>, ...nextHandlers: Array<RequestHandler>): RequestHandler<RequestHandlerDefaultInfo, any, any, RequestHandlerOptions>[];
11
-
12
- export { resetHandlers, restoreHandlers, use };
@@ -1,37 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var requestHandlerUtils_exports = {};
20
- __export(requestHandlerUtils_exports, {
21
- resetHandlers: () => resetHandlers,
22
- restoreHandlers: () => restoreHandlers,
23
- use: () => use
24
- });
25
- module.exports = __toCommonJS(requestHandlerUtils_exports);
26
- function use(currentHandlers, ...handlers) {
27
- currentHandlers.unshift(...handlers);
28
- }
29
- function restoreHandlers(handlers) {
30
- handlers.forEach((handler) => {
31
- handler.isUsed = false;
32
- });
33
- }
34
- function resetHandlers(initialHandlers, ...nextHandlers) {
35
- return nextHandlers.length > 0 ? [...nextHandlers] : [...initialHandlers];
36
- }
37
- //# sourceMappingURL=requestHandlerUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/core/utils/internal/requestHandlerUtils.ts"],"sourcesContent":["import type { RequestHandler } from '../../handlers/RequestHandler'\n\nexport function use(\n currentHandlers: Array<RequestHandler>,\n ...handlers: Array<RequestHandler>\n): void {\n currentHandlers.unshift(...handlers)\n}\n\nexport function restoreHandlers(handlers: Array<RequestHandler>): void {\n handlers.forEach((handler) => {\n handler.isUsed = false\n })\n}\n\nexport function resetHandlers(\n initialHandlers: Array<RequestHandler>,\n ...nextHandlers: Array<RequestHandler>\n) {\n return nextHandlers.length > 0 ? [...nextHandlers] : [...initialHandlers]\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,SAAS,IACd,oBACG,UACG;AACN,kBAAgB,QAAQ,GAAG,QAAQ;AACrC;AAEO,SAAS,gBAAgB,UAAuC;AACrE,WAAS,QAAQ,CAAC,YAAY;AAC5B,YAAQ,SAAS;AAAA,EACnB,CAAC;AACH;AAEO,SAAS,cACd,oBACG,cACH;AACA,SAAO,aAAa,SAAS,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,GAAG,eAAe;AAC1E;","names":[]}
@@ -1,17 +0,0 @@
1
- function use(currentHandlers, ...handlers) {
2
- currentHandlers.unshift(...handlers);
3
- }
4
- function restoreHandlers(handlers) {
5
- handlers.forEach((handler) => {
6
- handler.isUsed = false;
7
- });
8
- }
9
- function resetHandlers(initialHandlers, ...nextHandlers) {
10
- return nextHandlers.length > 0 ? [...nextHandlers] : [...initialHandlers];
11
- }
12
- export {
13
- resetHandlers,
14
- restoreHandlers,
15
- use
16
- };
17
- //# sourceMappingURL=requestHandlerUtils.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/core/utils/internal/requestHandlerUtils.ts"],"sourcesContent":["import type { RequestHandler } from '../../handlers/RequestHandler'\n\nexport function use(\n currentHandlers: Array<RequestHandler>,\n ...handlers: Array<RequestHandler>\n): void {\n currentHandlers.unshift(...handlers)\n}\n\nexport function restoreHandlers(handlers: Array<RequestHandler>): void {\n handlers.forEach((handler) => {\n handler.isUsed = false\n })\n}\n\nexport function resetHandlers(\n initialHandlers: Array<RequestHandler>,\n ...nextHandlers: Array<RequestHandler>\n) {\n return nextHandlers.length > 0 ? [...nextHandlers] : [...initialHandlers]\n}\n"],"mappings":"AAEO,SAAS,IACd,oBACG,UACG;AACN,kBAAgB,QAAQ,GAAG,QAAQ;AACrC;AAEO,SAAS,gBAAgB,UAAuC;AACrE,WAAS,QAAQ,CAAC,YAAY;AAC5B,YAAQ,SAAS;AAAA,EACnB,CAAC;AACH;AAEO,SAAS,cACd,oBACG,cACH;AACA,SAAO,aAAa,SAAS,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,GAAG,eAAe;AAC1E;","names":[]}
@@ -1,21 +0,0 @@
1
- import type { RequestHandler } from '../../handlers/RequestHandler'
2
-
3
- export function use(
4
- currentHandlers: Array<RequestHandler>,
5
- ...handlers: Array<RequestHandler>
6
- ): void {
7
- currentHandlers.unshift(...handlers)
8
- }
9
-
10
- export function restoreHandlers(handlers: Array<RequestHandler>): void {
11
- handlers.forEach((handler) => {
12
- handler.isUsed = false
13
- })
14
- }
15
-
16
- export function resetHandlers(
17
- initialHandlers: Array<RequestHandler>,
18
- ...nextHandlers: Array<RequestHandler>
19
- ) {
20
- return nextHandlers.length > 0 ? [...nextHandlers] : [...initialHandlers]
21
- }