UNPKG

msw

Version:

Seamless REST/GraphQL API mocking library for browser and Node.js.

1 lines 2.43 kB
{"version":3,"sources":["../../../src/core/experimental/setup-api.ts"],"sourcesContent":["import { type DefaultEventMap, Emitter } from 'rettime'\nimport { type LifeCycleEventEmitter } from '../sharedOptions'\nimport type { HandlersController } from './handlers-controller'\nimport {\n InMemoryHandlersController,\n type AnyHandler,\n} from './handlers-controller'\nimport { Disposable } from '../utils/internal/Disposable'\nimport { toReadonlyArray } from '../utils/internal/toReadonlyArray'\n\n/**\n * Generic class for the mock API setup.\n * Preserved only for backward compatibility.\n * @deprecated\n */\nexport abstract class SetupApi<\n EventMap extends DefaultEventMap,\n> extends Disposable {\n protected handlersController: HandlersController\n protected emitter: Emitter<EventMap>\n protected publicEmitter: Emitter<EventMap>\n\n public readonly events: LifeCycleEventEmitter<EventMap>\n\n constructor(...initialHandlers: Array<AnyHandler>) {\n super()\n\n this.handlersController = new InMemoryHandlersController(initialHandlers)\n\n this.emitter = new Emitter()\n this.publicEmitter = new Emitter()\n this.events = this.emitter\n\n this.subscriptions.push(() => {\n this.emitter.removeAllListeners()\n this.publicEmitter.removeAllListeners()\n })\n }\n\n public use(...runtimeHandlers: Array<AnyHandler>): void {\n this.handlersController.use(runtimeHandlers)\n }\n\n public restoreHandlers(): void {\n this.handlersController.restore()\n }\n\n public resetHandlers(...nextHandlers: Array<AnyHandler>): void {\n this.handlersController.reset(nextHandlers)\n }\n\n public listHandlers(): ReadonlyArray<AnyHandler> {\n return toReadonlyArray(this.handlersController.currentHandlers())\n }\n}\n"],"mappings":"AAAA,SAA+B,eAAe;AAC9C,eAA2C;AAE3C;AAAA,EACE;AAAA,OAEK;AACP,SAAS,kBAAkB;AAC3B,SAAS,uBAAuB;AAOzB,MAAe,iBAEZ,WAAW;AAAA,EACT;AAAA,EACA;AAAA,EACA;AAAA,EAEM;AAAA,EAEhB,eAAe,iBAAoC;AACjD,UAAM;AAEN,SAAK,qBAAqB,IAAI,2BAA2B,eAAe;AAExE,SAAK,UAAU,IAAI,QAAQ;AAC3B,SAAK,gBAAgB,IAAI,QAAQ;AACjC,SAAK,SAAS,KAAK;AAEnB,SAAK,cAAc,KAAK,MAAM;AAC5B,WAAK,QAAQ,mBAAmB;AAChC,WAAK,cAAc,mBAAmB;AAAA,IACxC,CAAC;AAAA,EACH;AAAA,EAEO,OAAO,iBAA0C;AACtD,SAAK,mBAAmB,IAAI,eAAe;AAAA,EAC7C;AAAA,EAEO,kBAAwB;AAC7B,SAAK,mBAAmB,QAAQ;AAAA,EAClC;AAAA,EAEO,iBAAiB,cAAuC;AAC7D,SAAK,mBAAmB,MAAM,YAAY;AAAA,EAC5C;AAAA,EAEO,eAA0C;AAC/C,WAAO,gBAAgB,KAAK,mBAAmB,gBAAgB,CAAC;AAAA,EAClE;AACF;","names":[]}