UNPKG

@aimee-blue/ab-service-kit

Version:
1 lines 1.45 kB
{"version":3,"sources":["../../src/setup/spy.ts"],"names":["setupSpy","config","deps","spy","create","defaultPlugins","global","rxSpy","logger","log","teardown","noop"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAEO,eAAeA,QAAf,CACLC,MADK,EAELC,IAFK,EAGqB;AAC1B,MAAID,MAAM,CAACE,GAAX,EAAgB;AACd,UAAM;AAAEC,MAAAA;AAAF,QAAa,mEAAa,UAAb,GAAnB;AAEA,UAAMD,GAAG,GAAGC,MAAM,CAAC;AACjBC,MAAAA,cAAc,EAAE;AADC,KAAD,CAAlB;AAIEC,IAAAA,MAAF,CAAoDC,KAApD,GAA4DJ,GAA5D;AAEA,UAAMF,MAAM,CAACE,GAAP,CAAWA,GAAX,EAAgBD,IAAhB,CAAN;AAEAA,IAAAA,IAAI,CAACM,MAAL,CAAYC,GAAZ,CACE,0BADF,EAEE,4BAAe,eAAf,GAAiC,gBAFnC;AAKA,WAAO,YAAY;AACjBN,MAAAA,GAAG,CAACO,QAAJ;AACD,KAFD;AAGD,GAnBD,MAmBO;AACL,WAAOC,cAAP;AACD;AACF","sourcesContent":["import { IServiceConfig, isDevBuild, ServiceDeps } from '../shared';\nimport { TeardownHandler, noop } from '../shared/teardown';\n\nexport async function setupSpy<D>(\n config: IServiceConfig<D>,\n deps: ServiceDeps<D>\n): Promise<TeardownHandler> {\n if (config.spy) {\n const { create } = await import('rxjs-spy');\n\n const spy = create({\n defaultPlugins: isDevBuild(),\n });\n\n ((global as unknown) as { [key: string]: unknown }).rxSpy = spy;\n\n await config.spy(spy, deps);\n\n deps.logger.log(\n '👀 RxJs Spy initialized',\n isDevBuild() ? '[all plugins]' : '[only logging]'\n );\n\n return async () => {\n spy.teardown();\n };\n } else {\n return noop;\n }\n}\n"],"file":"spy.js"}