@squide/msw 4.0.17 → 4.0.19

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/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @squide/msw
2
2
 
3
+ ## 4.0.19
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`f26a67f`](https://github.com/workleap/wl-squide/commit/f26a67f80984c50aaf9b3b550a8e1f25edcbb43e)]:
8
+ - @squide/core@7.0.0
9
+
10
+ ## 4.0.18
11
+
12
+ ### Patch Changes
13
+
14
+ - [#575](https://github.com/workleap/wl-squide/pull/575) [`9c91bd4`](https://github.com/workleap/wl-squide/commit/9c91bd47c5357a2b15b1fb0e984f81687a3b8b53) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Bump dependencies
15
+
16
+ - Updated dependencies [[`9c91bd4`](https://github.com/workleap/wl-squide/commit/9c91bd47c5357a2b15b1fb0e984f81687a3b8b53)]:
17
+ - @squide/core@6.1.15
18
+
3
19
  ## 4.0.17
4
20
 
5
21
  ### Patch Changes
package/dist/MswPlugin.js CHANGED
@@ -2,13 +2,9 @@ import { Plugin } from "@squide/core";
2
2
  import { MswState } from "./MswState.js";
3
3
  import { RequestHandlerRegistry } from "./RequestHandlerRegistry.js";
4
4
 
5
- ;// CONCATENATED MODULE: external "@squide/core"
6
5
 
7
- ;// CONCATENATED MODULE: external "./MswState.js"
8
6
 
9
- ;// CONCATENATED MODULE: external "./RequestHandlerRegistry.js"
10
7
 
11
- ;// CONCATENATED MODULE: ./src/MswPlugin.ts
12
8
 
13
9
 
14
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"MswPlugin.js","sources":["../src/MswPlugin.ts"],"sourcesContent":["import { Plugin, type Runtime } from \"@squide/core\";\nimport type { Logger } from \"@workleap/logging\";\nimport type { RequestHandler } from \"msw\";\nimport { MswState } from \"./MswState.ts\";\nimport { RequestHandlerRegistry } from \"./RequestHandlerRegistry.ts\";\n\nexport const MswPluginName = \"msw-plugin\";\n\nexport interface MswPluginOptions {\n state?: MswState;\n}\n\nexport interface MswPluginRegisterRequestHandlersOptions {\n logger?: Logger;\n}\n\nexport class MswPlugin extends Plugin {\n readonly #mswState: MswState;\n readonly #requestHandlerRegistry: RequestHandlerRegistry;\n\n constructor(runtime: Runtime, options: MswPluginOptions = {}) {\n const {\n state = new MswState()\n } = options;\n\n super(MswPluginName, runtime);\n\n this.#mswState = state;\n this.#requestHandlerRegistry = new RequestHandlerRegistry(this.#mswState);\n }\n\n get mswState() {\n return this.#mswState;\n }\n\n registerRequestHandlers(handlers: RequestHandler[], options: MswPluginRegisterRequestHandlersOptions = {}) {\n const {\n logger\n } = options;\n\n this.#requestHandlerRegistry.add(handlers);\n\n (logger ? logger : this._runtime.logger)\n .withText(\"[squide] The following MSW request handlers has been registered:\")\n .withObject(handlers)\n .debug();\n }\n\n get requestHandlers(): RequestHandler[] {\n return this.#requestHandlerRegistry.handlers;\n }\n}\n\nexport function getMswPlugin(runtime: Runtime) {\n const plugin = runtime.getPlugin(MswPluginName, {\n throwOnNotFound: false\n }) as MswPlugin;\n\n if (!plugin) {\n throw new Error(\"[squide] The getMswPlugin function is called but no MswPlugin instance has been registered with the runtime. Did you provide a MswPlugin instance to the runtime instance or set the useMsw option of the initializeFirefly function to true?\");\n }\n\n return plugin;\n}\n"],"names":["Plugin","MswState","RequestHandlerRegistry","MswPluginName","MswPlugin","runtime","options","state","handlers","logger","getMswPlugin","plugin","Error"],"mappings":";;;;;;;;;;;AAAoD;AAGX;AAC4B;AAE9D,MAAMG,gBAAgB,aAAa;AAUnC,MAAMC,kBAAkBJ,MAAMA;IACxB,SAAS,CAAW;IACpB,uBAAuB,CAAyB;IAEzD,YAAYK,OAAgB,EAAEC,UAA4B,CAAC,CAAC,CAAE;QAC1D,MAAM,EACFC,QAAQ,IAAIN,QAAQA,EAAE,EACzB,GAAGK;QAEJ,KAAK,CAACH,eAAeE;QAErB,IAAI,CAAC,SAAS,GAAGE;QACjB,IAAI,CAAC,uBAAuB,GAAG,IAAIL,sBAAsBA,CAAC,IAAI,CAAC,SAAS;IAC5E;IAEA,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,SAAS;IACzB;IAEA,wBAAwBM,QAA0B,EAAEF,UAAmD,CAAC,CAAC,EAAE;QACvG,MAAM,EACFG,MAAM,EACT,GAAGH;QAEJ,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAACE;QAEhCC,CAAAA,SAASA,SAAS,IAAI,CAAC,QAAQ,CAAC,MAAK,EACjC,QAAQ,CAAC,oEACT,UAAU,CAACD,UACX,KAAK;IACd;IAEA,IAAI,kBAAoC;QACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC,QAAQ;IAChD;AACJ;AAEO,SAASE,aAAaL,OAAgB;IACzC,MAAMM,SAASN,QAAQ,SAAS,CAACF,eAAe;QAC5C,iBAAiB;IACrB;IAEA,IAAI,CAACQ,QAAQ;QACT,MAAM,IAAIC,MAAM;IACpB;IAEA,OAAOD;AACX"}
1
+ {"version":3,"file":"MswPlugin.js","sources":["../src/MswPlugin.ts"],"sourcesContent":["import { Plugin, type Runtime } from \"@squide/core\";\nimport type { Logger } from \"@workleap/logging\";\nimport type { RequestHandler } from \"msw\";\nimport { MswState } from \"./MswState.ts\";\nimport { RequestHandlerRegistry } from \"./RequestHandlerRegistry.ts\";\n\nexport const MswPluginName = \"msw-plugin\";\n\nexport interface MswPluginOptions {\n state?: MswState;\n}\n\nexport interface MswPluginRegisterRequestHandlersOptions {\n logger?: Logger;\n}\n\nexport class MswPlugin extends Plugin {\n readonly #mswState: MswState;\n readonly #requestHandlerRegistry: RequestHandlerRegistry;\n\n constructor(runtime: Runtime, options: MswPluginOptions = {}) {\n const {\n state = new MswState()\n } = options;\n\n super(MswPluginName, runtime);\n\n this.#mswState = state;\n this.#requestHandlerRegistry = new RequestHandlerRegistry(this.#mswState);\n }\n\n get mswState() {\n return this.#mswState;\n }\n\n registerRequestHandlers(handlers: RequestHandler[], options: MswPluginRegisterRequestHandlersOptions = {}) {\n const {\n logger\n } = options;\n\n this.#requestHandlerRegistry.add(handlers);\n\n (logger ? logger : this._runtime.logger)\n .withText(\"[squide] The following MSW request handlers has been registered:\")\n .withObject(handlers)\n .debug();\n }\n\n get requestHandlers(): RequestHandler[] {\n return this.#requestHandlerRegistry.handlers;\n }\n}\n\nexport function getMswPlugin(runtime: Runtime) {\n const plugin = runtime.getPlugin(MswPluginName, {\n throwOnNotFound: false\n }) as MswPlugin;\n\n if (!plugin) {\n throw new Error(\"[squide] The getMswPlugin function is called but no MswPlugin instance has been registered with the runtime. Did you provide a MswPlugin instance to the runtime instance or set the useMsw option of the initializeFirefly function to true?\");\n }\n\n return plugin;\n}\n"],"names":["Plugin","MswState","RequestHandlerRegistry","MswPluginName","MswPlugin","runtime","options","state","handlers","logger","getMswPlugin","plugin","Error"],"mappings":";;;;;;;AAAoD;AAGX;AAC4B;AAE9D,MAAMG,aAAaA,GAAG,aAAa;AAUnC,MAAMC,SAASA,SAASJ,MAAMA;IACxB,SAAS,CAAW;IACpB,uBAAuB,CAAyB;IAEzD,YAAYK,OAAgB,EAAEC,UAA4B,CAAC,CAAC,CAAE;QAC1D,MAAM,EACFC,QAAQ,IAAIN,QAAQA,EAAE,EACzB,GAAGK;QAEJ,KAAK,CAACH,aAAaA,EAAEE;QAErB,IAAI,CAAC,SAAS,GAAGE;QACjB,IAAI,CAAC,uBAAuB,GAAG,IAAIL,sBAAsBA,CAAC,IAAI,CAAC,SAAS;IAC5E;IAEA,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,SAAS;IACzB;IAEA,wBAAwBM,QAA0B,EAAEF,UAAmD,CAAC,CAAC,EAAE;QACvG,MAAM,EACFG,MAAM,EACT,GAAGH;QAEJ,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAACE;QAEhCC,CAAAA,SAASA,SAAS,IAAI,CAAC,QAAQ,CAAC,MAAK,EACjC,QAAQ,CAAC,oEACT,UAAU,CAACD,UACX,KAAK;IACd;IAEA,IAAI,kBAAoC;QACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC,QAAQ;IAChD;AACJ;AAEO,SAASE,YAAYA,CAACL,OAAgB;IACzC,MAAMM,SAASN,QAAQ,SAAS,CAACF,aAAaA,EAAE;QAC5C,iBAAiB;IACrB;IAEA,IAAI,CAACQ,QAAQ;QACT,MAAM,IAAIC,MAAM;IACpB;IAEA,OAAOD;AACX"}
@@ -8,5 +8,6 @@ export declare class MswState {
8
8
  addMswReadyListener(callback: MswReadyListener): void;
9
9
  removeMswReadyListener(callback: MswReadyListener): void;
10
10
  setAsReady(): void;
11
+ get listenersCount(): number;
11
12
  get isReady(): boolean;
12
13
  }
package/dist/MswState.js CHANGED
@@ -1,5 +1,3 @@
1
-
2
- ;// CONCATENATED MODULE: ./src/MswState.ts
3
1
  class MswState {
4
2
  #mswReadyListeners = new Set();
5
3
  #isReady;
@@ -21,6 +19,9 @@ class MswState {
21
19
  });
22
20
  }
23
21
  }
22
+ get listenersCount() {
23
+ return this.#mswReadyListeners.size;
24
+ }
24
25
  get isReady() {
25
26
  return this.#isReady;
26
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MswState.js","sources":["../src/MswState.ts"],"sourcesContent":["export type MswReadyListener = () => void;\n\nexport interface MswStateOptions {\n isReady?: boolean;\n}\n\nexport class MswState {\n readonly #mswReadyListeners = new Set<MswReadyListener>();\n #isReady: boolean;\n\n constructor(options: MswStateOptions = {}) {\n const {\n isReady = false\n } = options;\n\n this.#isReady = isReady;\n }\n\n addMswReadyListener(callback: MswReadyListener) {\n this.#mswReadyListeners.add(callback);\n }\n\n removeMswReadyListener(callback: MswReadyListener) {\n this.#mswReadyListeners.delete(callback);\n }\n\n setAsReady() {\n if (!this.#isReady) {\n this.#isReady = true;\n\n this.#mswReadyListeners.forEach(x => {\n x();\n });\n }\n }\n\n get isReady() {\n return this.#isReady;\n }\n}\n"],"names":["MswState","Set","options","isReady","callback","x"],"mappings":";;AAMO,MAAMA;IACA,kBAAkB,GAAG,IAAIC,MAAwB;IAC1D,QAAQ,CAAU;IAElB,YAAYC,UAA2B,CAAC,CAAC,CAAE;QACvC,MAAM,EACFC,UAAU,KAAK,EAClB,GAAGD;QAEJ,IAAI,CAAC,QAAQ,GAAGC;IACpB;IAEA,oBAAoBC,QAA0B,EAAE;QAC5C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAACA;IAChC;IAEA,uBAAuBA,QAA0B,EAAE;QAC/C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAACA;IACnC;IAEA,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG;YAEhB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAACC,CAAAA;gBAC5BA;YACJ;QACJ;IACJ;IAEA,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ;IACxB;AACJ"}
1
+ {"version":3,"file":"MswState.js","sources":["../src/MswState.ts"],"sourcesContent":["export type MswReadyListener = () => void;\n\nexport interface MswStateOptions {\n isReady?: boolean;\n}\n\nexport class MswState {\n readonly #mswReadyListeners = new Set<MswReadyListener>();\n #isReady: boolean;\n\n constructor(options: MswStateOptions = {}) {\n const {\n isReady = false\n } = options;\n\n this.#isReady = isReady;\n }\n\n addMswReadyListener(callback: MswReadyListener) {\n this.#mswReadyListeners.add(callback);\n }\n\n removeMswReadyListener(callback: MswReadyListener) {\n this.#mswReadyListeners.delete(callback);\n }\n\n setAsReady() {\n if (!this.#isReady) {\n this.#isReady = true;\n\n this.#mswReadyListeners.forEach(x => {\n x();\n });\n }\n }\n\n get listenersCount() {\n return this.#mswReadyListeners.size;\n }\n\n get isReady() {\n return this.#isReady;\n }\n}\n"],"names":["MswState","Set","options","isReady","callback","x"],"mappings":"AAMO,MAAMA,QAAQA;IACR,kBAAkB,GAAG,IAAIC,MAAwB;IAC1D,QAAQ,CAAU;IAElB,YAAYC,UAA2B,CAAC,CAAC,CAAE;QACvC,MAAM,EACFC,UAAU,KAAK,EAClB,GAAGD;QAEJ,IAAI,CAAC,QAAQ,GAAGC;IACpB;IAEA,oBAAoBC,QAA0B,EAAE;QAC5C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAACA;IAChC;IAEA,uBAAuBA,QAA0B,EAAE;QAC/C,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAACA;IACnC;IAEA,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG;YAEhB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAACC,CAAAA;gBAC5BA;YACJ;QACJ;IACJ;IAEA,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI;IACvC;IAEA,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ;IACxB;AACJ"}
@@ -1,5 +1,3 @@
1
-
2
- ;// CONCATENATED MODULE: ./src/RequestHandlerRegistry.ts
3
1
  class RequestHandlerRegistry {
4
2
  #mswState;
5
3
  #handlers = [];
@@ -1 +1 @@
1
- {"version":3,"file":"RequestHandlerRegistry.js","sources":["../src/RequestHandlerRegistry.ts"],"sourcesContent":["import type { RequestHandler } from \"msw\";\nimport { MswState } from \"./MswState.ts\";\n\nexport class RequestHandlerRegistry {\n readonly #mswState: MswState;\n readonly #handlers: RequestHandler[] = [];\n\n constructor(mswState: MswState) {\n this.#mswState = mswState;\n }\n\n add(handlers: RequestHandler[]) {\n if (this.#mswState.isReady) {\n throw new Error(\"[squide] MSW request handlers cannot be registered once MSW is started. Did you defer the registration of a MSW request handler?\");\n }\n\n this.#handlers.push(...handlers);\n }\n\n // Must specify the return type, otherwise we get a TS2742: The inferred type cannot be named without a reference to X. This is likely not portable.\n // A type annotation is necessary.\n get handlers(): RequestHandler[] {\n return this.#handlers;\n }\n}\n\n"],"names":["RequestHandlerRegistry","mswState","handlers","Error"],"mappings":";;AAGO,MAAMA;IACA,SAAS,CAAW;IACpB,SAAS,GAAqB,EAAE,CAAC;IAE1C,YAAYC,QAAkB,CAAE;QAC5B,IAAI,CAAC,SAAS,GAAGA;IACrB;IAEA,IAAIC,QAA0B,EAAE;QAC5B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;YACxB,MAAM,IAAIC,MAAM;QACpB;QAEA,IAAI,CAAC,SAAS,CAAC,IAAI,IAAID;IAC3B;IAEA,oJAAoJ;IACpJ,kCAAkC;IAClC,IAAI,WAA6B;QAC7B,OAAO,IAAI,CAAC,SAAS;IACzB;AACJ"}
1
+ {"version":3,"file":"RequestHandlerRegistry.js","sources":["../src/RequestHandlerRegistry.ts"],"sourcesContent":["import type { RequestHandler } from \"msw\";\nimport { MswState } from \"./MswState.ts\";\n\nexport class RequestHandlerRegistry {\n readonly #mswState: MswState;\n readonly #handlers: RequestHandler[] = [];\n\n constructor(mswState: MswState) {\n this.#mswState = mswState;\n }\n\n add(handlers: RequestHandler[]) {\n if (this.#mswState.isReady) {\n throw new Error(\"[squide] MSW request handlers cannot be registered once MSW is started. Did you defer the registration of a MSW request handler?\");\n }\n\n this.#handlers.push(...handlers);\n }\n\n // Must specify the return type, otherwise we get a TS2742: The inferred type cannot be named without a reference to X. This is likely not portable.\n // A type annotation is necessary.\n get handlers(): RequestHandler[] {\n return this.#handlers;\n }\n}\n\n"],"names":["RequestHandlerRegistry","mswState","handlers","Error"],"mappings":"AAGO,MAAMA,sBAAsBA;IACtB,SAAS,CAAW;IACpB,SAAS,GAAqB,EAAE,CAAC;IAE1C,YAAYC,QAAkB,CAAE;QAC5B,IAAI,CAAC,SAAS,GAAGA;IACrB;IAEA,IAAIC,QAA0B,EAAE;QAC5B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;YACxB,MAAM,IAAIC,MAAM;QACpB;QAEA,IAAI,CAAC,SAAS,CAAC,IAAI,IAAID;IAC3B;IAEA,oJAAoJ;IACpJ,kCAAkC;IAClC,IAAI,WAA6B;QAC7B,OAAO,IAAI,CAAC,SAAS;IACzB;AACJ"}
package/dist/index.js CHANGED
@@ -1,14 +1,9 @@
1
- import { MswPlugin, MswPluginName, getMswPlugin } from "./MswPlugin.js";
2
- import { MswState } from "./MswState.js";
3
1
 
4
- ;// CONCATENATED MODULE: external "./MswPlugin.js"
5
2
 
6
- ;// CONCATENATED MODULE: external "./MswState.js"
7
3
 
8
- ;// CONCATENATED MODULE: ./src/index.ts
9
4
 
10
5
 
11
-
12
- export { MswPlugin, MswPluginName, MswState, getMswPlugin };
6
+ export { MswPlugin, MswPluginName, getMswPlugin } from "./MswPlugin.js";
7
+ export { MswState } from "./MswState.js";
13
8
 
14
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["export { getMswPlugin, MswPlugin, MswPluginName, type MswPluginOptions, type MswPluginRegisterRequestHandlersOptions } from \"./MswPlugin.ts\";\nexport { MswState, type MswReadyListener, type MswStateOptions } from \"./MswState.ts\";\n\n"],"names":["getMswPlugin","MswPlugin","MswPluginName","MswState"],"mappings":";;;;;;;;AAA6I;AACvD"}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["export { getMswPlugin, MswPlugin, MswPluginName, type MswPluginOptions, type MswPluginRegisterRequestHandlersOptions } from \"./MswPlugin.ts\";\nexport { MswState, type MswReadyListener, type MswStateOptions } from \"./MswState.ts\";\n\n"],"names":["getMswPlugin","MswPlugin","MswPluginName","MswState"],"mappings":";;AAA6I;AACvD"}
package/dist/internal.js CHANGED
@@ -1,10 +1,6 @@
1
- import { MswState } from "./MswState.js";
2
1
 
3
- ;// CONCATENATED MODULE: external "./MswState.js"
4
2
 
5
- ;// CONCATENATED MODULE: ./src/internal.ts
6
3
 
7
-
8
- export { MswState };
4
+ export { MswState } from "./MswState.js";
9
5
 
10
6
  //# sourceMappingURL=internal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sources":["../src/internal.ts"],"sourcesContent":["export { MswState } from \"./MswState.ts\";\n\n"],"names":["MswState"],"mappings":";;;;;AAAyC"}
1
+ {"version":3,"file":"internal.js","sources":["../src/internal.ts"],"sourcesContent":["export { MswState } from \"./MswState.ts\";\n\n"],"names":["MswState"],"mappings":";AAAyC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@squide/msw",
3
3
  "author": "Workleap",
4
- "version": "4.0.17",
4
+ "version": "4.0.19",
5
5
  "description": "Add support for MSW to @squide application shell.",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
@@ -32,27 +32,28 @@
32
32
  "CHANGELOG.md"
33
33
  ],
34
34
  "peerDependencies": {
35
- "msw": "^2.12.10"
35
+ "msw": "^2.12.14"
36
36
  },
37
37
  "dependencies": {
38
- "@workleap/logging": "^1.3.6",
39
- "@squide/core": "^6.1.14"
38
+ "@workleap/logging": "^1.3.7",
39
+ "@squide/core": "^7.0.0"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@eslint/js": "9.39.2",
43
- "@rsbuild/core": "1.7.3",
44
- "@rslib/core": "0.19.6",
45
- "@typescript-eslint/parser": "8.56.1",
46
- "@typescript/native-preview": "7.0.0-dev.20260224.1",
47
- "@vitejs/plugin-react": "5.1.4",
48
- "@workleap/eslint-configs": "1.1.13",
49
- "@workleap/rslib-configs": "1.1.7",
50
- "@workleap/typescript-configs": "3.0.7",
43
+ "@rsbuild/core": "1.7.5",
44
+ "@rslib/core": "0.20.2",
45
+ "@types/node": "25.5.0",
46
+ "@typescript-eslint/parser": "8.58.0",
47
+ "@typescript/native-preview": "7.0.0-dev.20260331.1",
48
+ "@vitejs/plugin-react": "6.0.1",
49
+ "@workleap/eslint-configs": "2.0.1",
50
+ "@workleap/rslib-configs": "1.1.11",
51
+ "@workleap/typescript-configs": "4.0.0",
51
52
  "eslint": "9.39.2",
52
- "happy-dom": "20.7.0",
53
- "typescript": "5.9.3",
53
+ "happy-dom": "20.8.9",
54
+ "typescript": "6.0.2",
54
55
  "typescript-eslint": "8.54.0",
55
- "vitest": "4.0.18"
56
+ "vitest": "4.1.2"
56
57
  },
57
58
  "sideEffects": false,
58
59
  "scripts": {
package/src/MswState.ts CHANGED
@@ -34,6 +34,10 @@ export class MswState {
34
34
  }
35
35
  }
36
36
 
37
+ get listenersCount() {
38
+ return this.#mswReadyListeners.size;
39
+ }
40
+
37
41
  get isReady() {
38
42
  return this.#isReady;
39
43
  }