msw 0.47.3 → 0.48.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.
- package/lib/{glossary-dc3fd077.d.ts → SetupApi-75fbec12.d.ts} +20 -41
- package/lib/SetupServerApi-49722346.d.ts +20 -0
- package/lib/glossary-a22f5c13.d.ts +45 -0
- package/lib/iife/index.js +2684 -2641
- package/lib/iife/index.js.map +1 -1
- package/lib/index.d.ts +19 -8
- package/lib/index.js +163 -146
- package/lib/index.js.map +1 -1
- package/lib/mockServiceWorker.js +3 -3
- package/lib/native/index.d.ts +10 -5
- package/lib/native/index.js +340 -332
- package/lib/native/index.mjs +353 -331
- package/lib/node/index.d.ts +8 -6
- package/lib/node/index.js +341 -335
- package/lib/node/index.js.map +1 -1
- package/lib/node/index.mjs +369 -349
- package/lib/node/index.mjs.map +1 -1
- package/package.json +7 -4
package/lib/index.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { R as ResponseTransformer, s as status, a as set, d as delay, f as fetch, b as RequestHandler, S as
|
|
2
|
-
export { A as AsyncResponseResolverReturnType,
|
|
1
|
+
import { R as ResponseTransformer, s as status, a as set, d as delay, f as fetch, b as RequestHandler, S as SetupApi, W as WorkerLifecycleEventsMap, c as StartOptions, e as StartReturnType, D as DefaultContext, g as DefaultBodyType, M as MockedRequest, h as ResponseResolver, i as ResponseResolutionContext, j as SerializedResponse, k as RequestHandlerDefaultInfo, l as MockedResponse, m as ResponseLookupResult, n as SharedOptions } from './SetupApi-75fbec12.js';
|
|
2
|
+
export { A as AsyncResponseResolverReturnType, g as DefaultBodyType, v as DefaultRequestMultipartBody, z as DelayMode, M as MockedRequest, I as MockedRequestInit, l as MockedResponse, B as RequestCache, F as RequestDestination, b as RequestHandler, C as RequestMode, G as RequestPriority, E as RequestRedirect, H as RequestReferrerPolicy, w as ResponseComposition, x as ResponseCompositionOptions, y as ResponseFunction, h as ResponseResolver, u as ResponseResolverReturnType, R as ResponseTransformer, S as SetupApi, t as SetupWorkerApi, n as SharedOptions, c as StartOptions, p as createResponseComposition, q as defaultContext, o as defaultResponse, r as response } from './SetupApi-75fbec12.js';
|
|
3
3
|
import * as cookieUtils from 'cookie';
|
|
4
4
|
import { GraphQLError, OperationTypeNode, DocumentNode } from 'graphql';
|
|
5
5
|
import { StrictEventEmitter } from 'strict-event-emitter';
|
|
6
|
-
import '
|
|
7
|
-
import '@mswjs/interceptors';
|
|
6
|
+
import { S as ServerLifecycleEventsMap } from './glossary-a22f5c13.js';
|
|
8
7
|
import 'headers-polyfill';
|
|
8
|
+
import '@mswjs/interceptors';
|
|
9
|
+
import 'type-fest';
|
|
9
10
|
|
|
10
11
|
declare type Path = string | RegExp;
|
|
11
12
|
declare type PathParams<KeyType extends keyof any = string> = {
|
|
@@ -122,13 +123,23 @@ declare namespace index {
|
|
|
122
123
|
};
|
|
123
124
|
}
|
|
124
125
|
|
|
126
|
+
declare class SetupWorkerApi extends SetupApi<WorkerLifecycleEventsMap> {
|
|
127
|
+
private context;
|
|
128
|
+
private startHandler;
|
|
129
|
+
private stopHandler;
|
|
130
|
+
private listeners;
|
|
131
|
+
constructor(handlers: Array<RequestHandler>);
|
|
132
|
+
private createWorkerContext;
|
|
133
|
+
start(options?: StartOptions): StartReturnType;
|
|
134
|
+
printHandlers(): void;
|
|
135
|
+
stop(): void;
|
|
136
|
+
}
|
|
125
137
|
/**
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
* @param {RequestHandler[]} requestHandlers List of request handlers
|
|
138
|
+
* Sets up a requests interception in the browser with the given request handlers.
|
|
139
|
+
* @param {RequestHandler[]} handlers List of request handlers.
|
|
129
140
|
* @see {@link https://mswjs.io/docs/api/setup-worker `setupWorker`}
|
|
130
141
|
*/
|
|
131
|
-
declare function setupWorker(...
|
|
142
|
+
declare function setupWorker(...handlers: Array<RequestHandler>): SetupWorkerApi;
|
|
132
143
|
|
|
133
144
|
declare type RestHandlerMethod = string | RegExp;
|
|
134
145
|
interface RestHandlerInfo extends RequestHandlerDefaultInfo {
|
package/lib/index.js
CHANGED
|
@@ -56,6 +56,7 @@ __export(src_exports, {
|
|
|
56
56
|
RESTMethods: () => RESTMethods,
|
|
57
57
|
RequestHandler: () => RequestHandler,
|
|
58
58
|
RestHandler: () => RestHandler,
|
|
59
|
+
SetupApi: () => SetupApi,
|
|
59
60
|
cleanUrl: () => cleanUrl,
|
|
60
61
|
compose: () => compose,
|
|
61
62
|
context: () => context_exports,
|
|
@@ -253,7 +254,7 @@ var errors = (errorsList) => {
|
|
|
253
254
|
// src/context/fetch.ts
|
|
254
255
|
var import_is_node_process2 = require("is-node-process");
|
|
255
256
|
var import_headers_polyfill2 = require("headers-polyfill");
|
|
256
|
-
var useFetch = (0, import_is_node_process2.isNodeProcess)() ? require("node-fetch") : window.fetch;
|
|
257
|
+
var useFetch = (0, import_is_node_process2.isNodeProcess)() ? (input, init) => Promise.resolve().then(() => __toESM(require("node-fetch"))).then(({ default: nodeFetch }) => nodeFetch(input, init)) : window.fetch;
|
|
257
258
|
var augmentRequestInit = (requestInit) => {
|
|
258
259
|
const headers = new import_headers_polyfill2.Headers(requestInit.headers);
|
|
259
260
|
headers.set("x-msw-bypass", "true");
|
|
@@ -304,8 +305,8 @@ var xml = (body2) => {
|
|
|
304
305
|
};
|
|
305
306
|
|
|
306
307
|
// src/setupWorker/setupWorker.ts
|
|
308
|
+
var import_outvariant4 = require("outvariant");
|
|
307
309
|
var import_is_node_process3 = require("is-node-process");
|
|
308
|
-
var import_strict_event_emitter = require("strict-event-emitter");
|
|
309
310
|
|
|
310
311
|
// src/setupWorker/start/createStartHandler.ts
|
|
311
312
|
var import_until4 = require("@open-draft/until");
|
|
@@ -814,7 +815,7 @@ function prepareResponse(res) {
|
|
|
814
815
|
|
|
815
816
|
// src/utils/matching/matchRequestUrl.ts
|
|
816
817
|
var import_path_to_regexp = require("path-to-regexp");
|
|
817
|
-
var import_getCleanUrl = require("@mswjs/interceptors/lib/utils/getCleanUrl");
|
|
818
|
+
var import_getCleanUrl = require("@mswjs/interceptors/lib/utils/getCleanUrl.js");
|
|
818
819
|
|
|
819
820
|
// src/utils/url/cleanUrl.ts
|
|
820
821
|
var REDUNDANT_CHARACTERS_EXP = /[\?|#].*$/g;
|
|
@@ -921,7 +922,7 @@ var response = Object.assign(createResponseComposition(), {
|
|
|
921
922
|
});
|
|
922
923
|
|
|
923
924
|
// src/utils/internal/getCallFrame.ts
|
|
924
|
-
var SOURCE_FRAME =
|
|
925
|
+
var SOURCE_FRAME = /[\/\\]msw[\/\\]src[\/\\](.+)/;
|
|
925
926
|
var BUILD_FRAME = /(node_modules)?[\/\\]lib[\/\\](umd|esm|iief|cjs)[\/\\]|^[^\/\\]*$/;
|
|
926
927
|
function getCallFrame(error2) {
|
|
927
928
|
const stack = error2.stack;
|
|
@@ -1383,6 +1384,7 @@ function serializeResponse(source) {
|
|
|
1383
1384
|
// src/setupWorker/start/createRequestListener.ts
|
|
1384
1385
|
var createRequestListener = (context, options) => {
|
|
1385
1386
|
return async (event, message) => {
|
|
1387
|
+
var _a;
|
|
1386
1388
|
const messageChannel = new WorkerChannel(event.ports[0]);
|
|
1387
1389
|
const request = parseWorkerRequest(message.payload);
|
|
1388
1390
|
try {
|
|
@@ -1421,7 +1423,7 @@ var createRequestListener = (context, options) => {
|
|
|
1421
1423
|
|
|
1422
1424
|
%s
|
|
1423
1425
|
|
|
1424
|
-
This exception has been gracefully handled as a 500 response, however, it's strongly recommended to resolve this error, as it indicates a mistake in your code. If you wish to mock an error response, please see this guide: https://mswjs.io/docs/recipes/mocking-error-responses`, request.method, request.url, error2);
|
|
1426
|
+
This exception has been gracefully handled as a 500 response, however, it's strongly recommended to resolve this error, as it indicates a mistake in your code. If you wish to mock an error response, please see this guide: https://mswjs.io/docs/recipes/mocking-error-responses`, request.method, request.url, (_a = error2.stack) != null ? _a : error2);
|
|
1425
1427
|
messageChannel.postMessage("MOCK_RESPONSE", {
|
|
1426
1428
|
status: 500,
|
|
1427
1429
|
statusText: "Request Handler Error",
|
|
@@ -1452,8 +1454,8 @@ function transformResponse(response2) {
|
|
|
1452
1454
|
async function requestIntegrityCheck(context, serviceWorker) {
|
|
1453
1455
|
context.workerChannel.send("INTEGRITY_CHECK_REQUEST");
|
|
1454
1456
|
const { payload: actualChecksum } = await context.events.once("INTEGRITY_CHECK_RESPONSE");
|
|
1455
|
-
if (actualChecksum !== "
|
|
1456
|
-
throw new Error(`Currently active Service Worker (${actualChecksum}) is behind the latest published one (${"
|
|
1457
|
+
if (actualChecksum !== "3d6b9f06410d179a7f7404d4bf4c3c70") {
|
|
1458
|
+
throw new Error(`Currently active Service Worker (${actualChecksum}) is behind the latest published one (${"3d6b9f06410d179a7f7404d4bf4c3c70"}).`);
|
|
1457
1459
|
}
|
|
1458
1460
|
return serviceWorker;
|
|
1459
1461
|
}
|
|
@@ -1594,19 +1596,6 @@ var createStop = (context) => {
|
|
|
1594
1596
|
};
|
|
1595
1597
|
};
|
|
1596
1598
|
|
|
1597
|
-
// src/utils/internal/requestHandlerUtils.ts
|
|
1598
|
-
function use(currentHandlers, ...handlers) {
|
|
1599
|
-
currentHandlers.unshift(...handlers);
|
|
1600
|
-
}
|
|
1601
|
-
function restoreHandlers(handlers) {
|
|
1602
|
-
handlers.forEach((handler) => {
|
|
1603
|
-
handler.markAsSkipped(false);
|
|
1604
|
-
});
|
|
1605
|
-
}
|
|
1606
|
-
function resetHandlers(initialHandlers, ...nextHandlers) {
|
|
1607
|
-
return nextHandlers.length > 0 ? [...nextHandlers] : [...initialHandlers];
|
|
1608
|
-
}
|
|
1609
|
-
|
|
1610
1599
|
// src/setupWorker/start/utils/prepareStartHandler.ts
|
|
1611
1600
|
var DEFAULT_START_OPTIONS = {
|
|
1612
1601
|
serviceWorker: {
|
|
@@ -1620,15 +1609,6 @@ var DEFAULT_START_OPTIONS = {
|
|
|
1620
1609
|
return scriptURL === mockServiceWorkerUrl;
|
|
1621
1610
|
}
|
|
1622
1611
|
};
|
|
1623
|
-
function resolveStartOptions(initialOptions) {
|
|
1624
|
-
return mergeRight(DEFAULT_START_OPTIONS, initialOptions || {});
|
|
1625
|
-
}
|
|
1626
|
-
function prepareStartHandler(handler, context) {
|
|
1627
|
-
return (initialOptions) => {
|
|
1628
|
-
context.startOptions = resolveStartOptions(initialOptions);
|
|
1629
|
-
return handler(context.startOptions, initialOptions || {});
|
|
1630
|
-
};
|
|
1631
|
-
}
|
|
1632
1612
|
|
|
1633
1613
|
// src/setupWorker/start/createFallbackRequestListener.ts
|
|
1634
1614
|
var import_interceptors4 = require("@mswjs/interceptors");
|
|
@@ -1734,6 +1714,10 @@ function createFallbackStop(context) {
|
|
|
1734
1714
|
};
|
|
1735
1715
|
}
|
|
1736
1716
|
|
|
1717
|
+
// src/SetupApi.ts
|
|
1718
|
+
var import_outvariant3 = require("outvariant");
|
|
1719
|
+
var import_strict_event_emitter = require("strict-event-emitter");
|
|
1720
|
+
|
|
1737
1721
|
// src/utils/internal/pipeEvents.ts
|
|
1738
1722
|
function pipeEvents(source, destination) {
|
|
1739
1723
|
const rawEmit = source.emit;
|
|
@@ -1754,131 +1738,163 @@ function toReadonlyArray(source) {
|
|
|
1754
1738
|
return clone;
|
|
1755
1739
|
}
|
|
1756
1740
|
|
|
1757
|
-
// src/
|
|
1758
|
-
var
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1741
|
+
// src/SetupApi.ts
|
|
1742
|
+
var SetupApi = class {
|
|
1743
|
+
constructor(initialHandlers) {
|
|
1744
|
+
this.validateHandlers(initialHandlers);
|
|
1745
|
+
this.initialHandlers = toReadonlyArray(initialHandlers);
|
|
1746
|
+
this.currentHandlers = [...initialHandlers];
|
|
1747
|
+
this.emitter = new import_strict_event_emitter.StrictEventEmitter();
|
|
1748
|
+
this.publicEmitter = new import_strict_event_emitter.StrictEventEmitter();
|
|
1749
|
+
pipeEvents(this.emitter, this.publicEmitter);
|
|
1750
|
+
this.events = this.createLifeCycleEvents();
|
|
1751
|
+
}
|
|
1752
|
+
validateHandlers(handlers) {
|
|
1753
|
+
for (const handler of handlers) {
|
|
1754
|
+
(0, import_outvariant3.invariant)(!Array.isArray(handler), devUtils.formatMessage('Failed to construct "%s" given an Array of request handlers. Make sure you spread the request handlers when calling the respective setup function.'), this.constructor.name);
|
|
1755
|
+
}
|
|
1756
|
+
}
|
|
1757
|
+
dispose() {
|
|
1758
|
+
this.emitter.removeAllListeners();
|
|
1759
|
+
this.publicEmitter.removeAllListeners();
|
|
1760
|
+
}
|
|
1761
|
+
use(...runtimeHandlers) {
|
|
1762
|
+
this.currentHandlers.unshift(...runtimeHandlers);
|
|
1763
|
+
}
|
|
1764
|
+
restoreHandlers() {
|
|
1765
|
+
this.currentHandlers.forEach((handler) => {
|
|
1766
|
+
handler.markAsSkipped(false);
|
|
1767
|
+
});
|
|
1768
|
+
}
|
|
1769
|
+
resetHandlers(...nextHandlers) {
|
|
1770
|
+
this.currentHandlers = nextHandlers.length > 0 ? [...nextHandlers] : [...this.initialHandlers];
|
|
1771
|
+
}
|
|
1772
|
+
listHandlers() {
|
|
1773
|
+
return toReadonlyArray(this.currentHandlers);
|
|
1774
|
+
}
|
|
1775
|
+
createLifeCycleEvents() {
|
|
1776
|
+
return {
|
|
1777
|
+
on: (...args) => {
|
|
1778
|
+
return this.publicEmitter.on(...args);
|
|
1791
1779
|
},
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
(_a = context.worker) == null ? void 0 : _a.postMessage(type);
|
|
1795
|
-
}
|
|
1796
|
-
},
|
|
1797
|
-
events: {
|
|
1798
|
-
addListener(target, eventType, callback) {
|
|
1799
|
-
target.addEventListener(eventType, callback);
|
|
1800
|
-
listeners.push({ eventType, target, callback });
|
|
1801
|
-
return () => {
|
|
1802
|
-
target.removeEventListener(eventType, callback);
|
|
1803
|
-
};
|
|
1780
|
+
removeListener: (...args) => {
|
|
1781
|
+
return this.publicEmitter.removeListener(...args);
|
|
1804
1782
|
},
|
|
1805
|
-
removeAllListeners() {
|
|
1806
|
-
|
|
1807
|
-
|
|
1783
|
+
removeAllListeners: (...args) => {
|
|
1784
|
+
return this.publicEmitter.removeAllListeners(...args);
|
|
1785
|
+
}
|
|
1786
|
+
};
|
|
1787
|
+
}
|
|
1788
|
+
};
|
|
1789
|
+
|
|
1790
|
+
// src/setupWorker/setupWorker.ts
|
|
1791
|
+
var SetupWorkerApi = class extends SetupApi {
|
|
1792
|
+
constructor(handlers) {
|
|
1793
|
+
super(handlers);
|
|
1794
|
+
this.startHandler = null;
|
|
1795
|
+
this.stopHandler = null;
|
|
1796
|
+
(0, import_outvariant4.invariant)(!(0, import_is_node_process3.isNodeProcess)(), devUtils.formatMessage("Failed to execute `setupWorker` in a non-browser environment. Consider using `setupServer` for Node.js environment instead."));
|
|
1797
|
+
this.listeners = [];
|
|
1798
|
+
this.context = this.createWorkerContext();
|
|
1799
|
+
}
|
|
1800
|
+
createWorkerContext() {
|
|
1801
|
+
const context = {
|
|
1802
|
+
isMockingEnabled: false,
|
|
1803
|
+
startOptions: null,
|
|
1804
|
+
worker: null,
|
|
1805
|
+
registration: null,
|
|
1806
|
+
requestHandlers: this.currentHandlers,
|
|
1807
|
+
emitter: this.emitter,
|
|
1808
|
+
workerChannel: {
|
|
1809
|
+
on: (eventType, callback) => {
|
|
1810
|
+
this.context.events.addListener(navigator.serviceWorker, "message", (event) => {
|
|
1811
|
+
if (event.source !== this.context.worker) {
|
|
1812
|
+
return;
|
|
1813
|
+
}
|
|
1814
|
+
const message = event.data;
|
|
1815
|
+
if (!message) {
|
|
1816
|
+
return;
|
|
1817
|
+
}
|
|
1818
|
+
if (message.type === eventType) {
|
|
1819
|
+
callback(event, message);
|
|
1820
|
+
}
|
|
1821
|
+
});
|
|
1822
|
+
},
|
|
1823
|
+
send: (type) => {
|
|
1824
|
+
var _a;
|
|
1825
|
+
(_a = this.context.worker) == null ? void 0 : _a.postMessage(type);
|
|
1808
1826
|
}
|
|
1809
|
-
listeners = [];
|
|
1810
1827
|
},
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
if (message.type === eventType) {
|
|
1818
|
-
resolve(message);
|
|
1819
|
-
}
|
|
1820
|
-
} catch (error2) {
|
|
1821
|
-
reject(error2);
|
|
1822
|
-
}
|
|
1828
|
+
events: {
|
|
1829
|
+
addListener: (target, eventType, callback) => {
|
|
1830
|
+
target.addEventListener(eventType, callback);
|
|
1831
|
+
this.listeners.push({ eventType, target, callback });
|
|
1832
|
+
return () => {
|
|
1833
|
+
target.removeEventListener(eventType, callback);
|
|
1823
1834
|
};
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
resetHandlers(...nextHandlers) {
|
|
1849
|
-
context.requestHandlers = resetHandlers(requestHandlers, ...nextHandlers);
|
|
1850
|
-
},
|
|
1851
|
-
listHandlers() {
|
|
1852
|
-
return toReadonlyArray(context.requestHandlers);
|
|
1853
|
-
},
|
|
1854
|
-
printHandlers() {
|
|
1855
|
-
const handlers = this.listHandlers();
|
|
1856
|
-
handlers.forEach((handler) => {
|
|
1857
|
-
const { header, callFrame } = handler.info;
|
|
1858
|
-
const pragma = handler.info.hasOwnProperty("operationType") ? "[graphql]" : "[rest]";
|
|
1859
|
-
console.groupCollapsed(`${pragma} ${header}`);
|
|
1860
|
-
if (callFrame) {
|
|
1861
|
-
console.log(`Declaration: ${callFrame}`);
|
|
1862
|
-
}
|
|
1863
|
-
console.log("Handler:", handler);
|
|
1864
|
-
if (handler instanceof RestHandler) {
|
|
1865
|
-
console.log("Match:", `https://mswjs.io/repl?path=${handler.info.path}`);
|
|
1835
|
+
},
|
|
1836
|
+
removeAllListeners: () => {
|
|
1837
|
+
for (const { target, eventType, callback } of this.listeners) {
|
|
1838
|
+
target.removeEventListener(eventType, callback);
|
|
1839
|
+
}
|
|
1840
|
+
this.listeners = [];
|
|
1841
|
+
},
|
|
1842
|
+
once: (eventType) => {
|
|
1843
|
+
const bindings = [];
|
|
1844
|
+
return new Promise((resolve, reject) => {
|
|
1845
|
+
const handleIncomingMessage = (event) => {
|
|
1846
|
+
try {
|
|
1847
|
+
const message = event.data;
|
|
1848
|
+
if (message.type === eventType) {
|
|
1849
|
+
resolve(message);
|
|
1850
|
+
}
|
|
1851
|
+
} catch (error2) {
|
|
1852
|
+
reject(error2);
|
|
1853
|
+
}
|
|
1854
|
+
};
|
|
1855
|
+
bindings.push(this.context.events.addListener(navigator.serviceWorker, "message", handleIncomingMessage), this.context.events.addListener(navigator.serviceWorker, "messageerror", reject));
|
|
1856
|
+
}).finally(() => {
|
|
1857
|
+
bindings.forEach((unbind) => unbind());
|
|
1858
|
+
});
|
|
1866
1859
|
}
|
|
1867
|
-
console.groupEnd();
|
|
1868
|
-
});
|
|
1869
|
-
},
|
|
1870
|
-
events: {
|
|
1871
|
-
on(...args) {
|
|
1872
|
-
return publicEmitter.on(...args);
|
|
1873
|
-
},
|
|
1874
|
-
removeListener(...args) {
|
|
1875
|
-
return publicEmitter.removeListener(...args);
|
|
1876
1860
|
},
|
|
1877
|
-
|
|
1878
|
-
|
|
1861
|
+
useFallbackMode: !("serviceWorker" in navigator) || location.protocol === "file:"
|
|
1862
|
+
};
|
|
1863
|
+
Object.defineProperties(context, {
|
|
1864
|
+
requestHandlers: {
|
|
1865
|
+
get: () => this.currentHandlers
|
|
1879
1866
|
}
|
|
1880
|
-
}
|
|
1881
|
-
|
|
1867
|
+
});
|
|
1868
|
+
this.startHandler = context.useFallbackMode ? createFallbackStart(context) : createStartHandler(context);
|
|
1869
|
+
this.stopHandler = context.useFallbackMode ? createFallbackStop(context) : createStop(context);
|
|
1870
|
+
return context;
|
|
1871
|
+
}
|
|
1872
|
+
async start(options = {}) {
|
|
1873
|
+
this.context.startOptions = mergeRight(DEFAULT_START_OPTIONS, options);
|
|
1874
|
+
return await this.startHandler(this.context.startOptions, options);
|
|
1875
|
+
}
|
|
1876
|
+
printHandlers() {
|
|
1877
|
+
const handlers = this.listHandlers();
|
|
1878
|
+
handlers.forEach((handler) => {
|
|
1879
|
+
const { header, callFrame } = handler.info;
|
|
1880
|
+
const pragma = handler.info.hasOwnProperty("operationType") ? "[graphql]" : "[rest]";
|
|
1881
|
+
console.groupCollapsed(`${pragma} ${header}`);
|
|
1882
|
+
if (callFrame) {
|
|
1883
|
+
console.log(`Declaration: ${callFrame}`);
|
|
1884
|
+
}
|
|
1885
|
+
console.log("Handler:", handler);
|
|
1886
|
+
console.groupEnd();
|
|
1887
|
+
});
|
|
1888
|
+
}
|
|
1889
|
+
stop() {
|
|
1890
|
+
super.dispose();
|
|
1891
|
+
this.context.events.removeAllListeners();
|
|
1892
|
+
this.context.emitter.removeAllListeners();
|
|
1893
|
+
this.stopHandler();
|
|
1894
|
+
}
|
|
1895
|
+
};
|
|
1896
|
+
function setupWorker(...handlers) {
|
|
1897
|
+
return new SetupWorkerApi(handlers);
|
|
1882
1898
|
}
|
|
1883
1899
|
|
|
1884
1900
|
// src/rest.ts
|
|
@@ -1931,6 +1947,7 @@ var graphql = __spreadProps(__spreadValues({}, standardGraphQLHandlers), {
|
|
|
1931
1947
|
RESTMethods,
|
|
1932
1948
|
RequestHandler,
|
|
1933
1949
|
RestHandler,
|
|
1950
|
+
SetupApi,
|
|
1934
1951
|
cleanUrl,
|
|
1935
1952
|
compose,
|
|
1936
1953
|
context,
|