@adviser/cement 0.5.16 → 0.5.18

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 (56) hide show
  1. package/cjs/test-fetch-pair.cjs +2 -2
  2. package/cjs/test-fetch-pair.cjs.map +1 -1
  3. package/cjs/test-fetch-pair.d.ts +1 -1
  4. package/cjs/test-fetch-pair.d.ts.map +1 -1
  5. package/cjs/test-fetch-pair.test.cjs +11 -0
  6. package/cjs/test-fetch-pair.test.cjs.map +1 -1
  7. package/cjs/test-ws-pair.cjs +20 -11
  8. package/cjs/test-ws-pair.cjs.map +1 -1
  9. package/cjs/test-ws-pair.d.ts +15 -19
  10. package/cjs/test-ws-pair.d.ts.map +1 -1
  11. package/cjs/test-ws-pair.test.cjs +27 -5
  12. package/cjs/test-ws-pair.test.cjs.map +1 -1
  13. package/cjs/version.cjs +1 -1
  14. package/deno.json +1 -1
  15. package/esm/test-fetch-pair.d.ts +1 -1
  16. package/esm/test-fetch-pair.d.ts.map +1 -1
  17. package/esm/test-fetch-pair.js +2 -2
  18. package/esm/test-fetch-pair.js.map +1 -1
  19. package/esm/test-fetch-pair.test.js +11 -0
  20. package/esm/test-fetch-pair.test.js.map +1 -1
  21. package/esm/test-ws-pair.d.ts +15 -19
  22. package/esm/test-ws-pair.d.ts.map +1 -1
  23. package/esm/test-ws-pair.js +19 -11
  24. package/esm/test-ws-pair.js.map +1 -1
  25. package/esm/test-ws-pair.test.js +28 -6
  26. package/esm/test-ws-pair.test.js.map +1 -1
  27. package/esm/version.js +1 -1
  28. package/package.json +3 -1
  29. package/src/test-fetch-pair.ts +2 -2
  30. package/src/test-ws-pair.ts +28 -23
  31. package/ts/cjs/test-fetch-pair.d.ts +1 -1
  32. package/ts/cjs/test-fetch-pair.d.ts.map +1 -1
  33. package/ts/cjs/test-fetch-pair.js +2 -2
  34. package/ts/cjs/test-fetch-pair.js.map +1 -1
  35. package/ts/cjs/test-fetch-pair.test.js +11 -0
  36. package/ts/cjs/test-fetch-pair.test.js.map +1 -1
  37. package/ts/cjs/test-ws-pair.d.ts +15 -19
  38. package/ts/cjs/test-ws-pair.d.ts.map +1 -1
  39. package/ts/cjs/test-ws-pair.js +20 -11
  40. package/ts/cjs/test-ws-pair.js.map +1 -1
  41. package/ts/cjs/test-ws-pair.test.js +27 -5
  42. package/ts/cjs/test-ws-pair.test.js.map +1 -1
  43. package/ts/cjs/version.js +1 -1
  44. package/ts/esm/test-fetch-pair.d.ts +1 -1
  45. package/ts/esm/test-fetch-pair.d.ts.map +1 -1
  46. package/ts/esm/test-fetch-pair.js +2 -2
  47. package/ts/esm/test-fetch-pair.js.map +1 -1
  48. package/ts/esm/test-fetch-pair.test.js +11 -0
  49. package/ts/esm/test-fetch-pair.test.js.map +1 -1
  50. package/ts/esm/test-ws-pair.d.ts +15 -19
  51. package/ts/esm/test-ws-pair.d.ts.map +1 -1
  52. package/ts/esm/test-ws-pair.js +19 -11
  53. package/ts/esm/test-ws-pair.js.map +1 -1
  54. package/ts/esm/test-ws-pair.test.js +28 -6
  55. package/ts/esm/test-ws-pair.test.js.map +1 -1
  56. package/ts/esm/version.js +1 -1
@@ -7,13 +7,13 @@ class ClientFetch {
7
7
  this.#server = server;
8
8
  }
9
9
  calls = [];
10
- async fetch(url, options) {
10
+ fetch = async (url, options) => {
11
11
  const req = new Request(url, options);
12
12
  const callsReq = req.clone();
13
13
  const res = await this.#server.serve(req);
14
14
  this.calls.push({ request: callsReq, response: res.clone() });
15
15
  return res;
16
- }
16
+ };
17
17
  }
18
18
  exports.ClientFetch = ClientFetch;
19
19
  class ServerFetch {
@@ -1 +1 @@
1
- {"version":3,"file":"test-fetch-pair.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":";;;AAAA;IACE,OAAO,CAAe;IACtB,OAAO,CAAC,MAAmB,EAAQ;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAAA,CACvB;IACQ,KAAK,GAGR,EAAE,CAAC;IACT,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,OAAqB,EAAqB;QACjE,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC;IAAA,CACZ;CACF;;AAED;IACE,KAAK,CAA2C;IAEhD,OAAO,CAAC,KAA8C,EAAQ;QAC5D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAAA,CACpB;CACF;;AAED;IACkB,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IACxC,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IAExD,MAAM,CAAC,MAAM,GAAkB;QAC7B,MAAM,GAAG,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC;IAAA,CACZ;IAED,cAAsB;IAAC,CAEtB;CACF"}
1
+ {"version":3,"file":"test-fetch-pair.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":";;;AAAA;IACE,OAAO,CAAe;IACtB,OAAO,CAAC,MAAmB,EAAQ;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAAA,CACvB;IACQ,KAAK,GAGR,EAAE,CAAC;IACT,KAAK,GAA8D,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;QACzF,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC;IAAA,CACZ,CAAC;CACH;;AAED;IACE,KAAK,CAA2C;IAEhD,OAAO,CAAC,KAA8C,EAAQ;QAC5D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAAA,CACpB;CACF;;AAED;IACkB,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IACxC,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IAExD,MAAM,CAAC,MAAM,GAAkB;QAC7B,MAAM,GAAG,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC;IAAA,CACZ;IAED,cAAsB;IAAC,CAEtB;CACF"}
@@ -5,7 +5,7 @@ export declare class ClientFetch {
5
5
  request: Request;
6
6
  response: Response;
7
7
  }[];
8
- fetch(url: string, options?: RequestInit): Promise<Response>;
8
+ fetch: (url: string, options?: RequestInit) => Promise<Response>;
9
9
  }
10
10
  export declare class ServerFetch {
11
11
  serve: (request: Request) => Promise<Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"test-fetch-pair.d.ts","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;;IAEtB,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAEjC;IACD,QAAQ,CAAC,KAAK,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,QAAQ,CAAC;KACpB,EAAE,CAAM;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAMjE;CACF;AAED,qBAAa,WAAW;IACtB,KAAK,EAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAE5D;CACF;AAED,qBAAa,aAAa;IACxB,SAAgB,MAAM,EAAE,WAAW,CAAqB;IACxD,SAAgB,MAAM,EAAE,WAAW,CAAqB;IAExD,MAAM,CAAC,MAAM,IAAI,aAAa,CAI7B;IAED,OAAO,eAEN;CACF"}
1
+ {"version":3,"file":"test-fetch-pair.d.ts","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;;IAEtB,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAEjC;IACD,QAAQ,CAAC,KAAK,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,QAAQ,CAAC;KACpB,EAAE,CAAM;IACT,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAM9D;CACH;AAED,qBAAa,WAAW;IACtB,KAAK,EAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAE5D;CACF;AAED,qBAAa,aAAa;IACxB,SAAgB,MAAM,EAAE,WAAW,CAAqB;IACxD,SAAgB,MAAM,EAAE,WAAW,CAAqB;IAExD,MAAM,CAAC,MAAM,IAAI,aAAa,CAI7B;IAED,OAAO,eAEN;CACF"}
@@ -37,4 +37,15 @@ const vitest_1 = require("vitest");
37
37
  const tfp = test_fetch_pair_js_1.TestFetchPair.create();
38
38
  (0, vitest_1.expect)(tfp.client.calls).toEqual([]);
39
39
  });
40
+ (0, vitest_1.it)("should work when fetch method is passed without bind", async () => {
41
+ const tfp = test_fetch_pair_js_1.TestFetchPair.create();
42
+ tfp.server.onServe((req) => {
43
+ return Promise.resolve(new Response(`Response for ${req.url}`, { status: 200 }));
44
+ });
45
+ const unboundFetch = tfp.client.fetch;
46
+ await unboundFetch("http://example.com/unbound");
47
+ (0, vitest_1.expect)(tfp.client.calls).toHaveLength(1);
48
+ (0, vitest_1.expect)(tfp.client.calls[0].request.url).toBe("http://example.com/unbound");
49
+ (0, vitest_1.expect)(await tfp.client.calls[0].response.text()).toBe("Response for http://example.com/unbound");
50
+ });
40
51
  //# sourceMappingURL=test-fetch-pair.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-fetch-pair.test.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-fetch-pair.test.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.test.ts"],"names":[],"mappings":"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"}
@@ -1,35 +1,44 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TestWSPair = void 0;
3
+ exports.TestWSPair = exports.TestWSConnection = void 0;
4
4
  const index_js_1 = require("./index.cjs");
5
5
  class TestWSConnection {
6
6
  #other;
7
7
  side;
8
- onMessage = (_e) => {
8
+ #onopen;
9
+ get onopen() {
10
+ return this.#onopen;
11
+ }
12
+ set onopen(fn) {
13
+ this.#onopen = fn;
14
+ fn();
15
+ }
16
+ onmessage = (_e) => {
9
17
  throw new Error("OnMessage Method not implemented.");
10
18
  };
11
- onError = (_e) => {
19
+ onerror = (_e) => {
12
20
  throw new Error("OnError Method not implemented.");
13
21
  };
14
- onClose = (_e) => {
22
+ onclose = (_e) => {
15
23
  throw new Error("OnClose Method not implemented.");
16
24
  };
17
- calls;
18
- constructor(side, calls) {
25
+ transfers;
26
+ constructor(side, transfers) {
19
27
  this.side = side;
20
- this.calls = calls;
28
+ this.transfers = transfers;
21
29
  }
22
30
  connect(other) {
23
31
  this.#other = other;
24
32
  }
25
- send(data) {
33
+ send = (data) => {
26
34
  const uint8 = (0, index_js_1.to_uint8)(data);
27
- this.calls.push({ from: this.side, data: uint8 });
28
- this.#other.onMessage({
35
+ this.transfers?.push({ from: this.side, data: uint8 });
36
+ this.#other.onmessage({
29
37
  data: uint8,
30
38
  });
31
- }
39
+ };
32
40
  }
41
+ exports.TestWSConnection = TestWSConnection;
33
42
  class TestWSPair {
34
43
  msgs = [];
35
44
  p1 = new TestWSConnection("p1", this.msgs);
@@ -1 +1 @@
1
- {"version":3,"file":"test-ws-pair.js","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":";;;AAAA,yCAAyD;AAazD,MAAM,gBAAgB;IACpB,MAAM,CAAoB;IACjB,IAAI,CAAS;IACtB,SAAS,GAAgB,CAAI,EAAmB,EAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAAA,CACtD,CAAC;IACF,OAAO,GAAc,CAAC,EAAc,EAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IACF,OAAO,GAAc,CAAC,EAAc,EAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IAEO,KAAK,CAAuC;IAErD,YAAY,IAAY,EAAE,KAA2C,EAAE;QACrE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAAA,CACpB;IACD,OAAO,CAAC,KAAuB,EAAQ;QACrC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IAAA,CACrB;IAED,IAAI,CAAC,IAAuB,EAAQ;QAClC,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACpB,IAAI,EAAE,KAAK;SAC2B,CAAC,CAAC;IAAA,CAC3C;CACF;AAED;IACW,IAAI,GAAyC,EAAE,CAAC;IACzC,EAAE,GAAqB,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,EAAE,GAAqB,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7E,MAAM,CAAC,MAAM,GAAe;QAC1B,MAAM,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IAAA,CACb;IAED,cAAsB;IAAC,CAEtB;CACF"}
1
+ {"version":3,"file":"test-ws-pair.js","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":";;;AAAA,yCAAyD;AAQzD;IACE,MAAM,CAAwB;IACrB,IAAI,CAAS;IAEtB,OAAO,CAAc;IAErB,IAAI,MAAM,GAAe;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC;IAAA,CACrB;IACD,IAAI,MAAM,CAAC,EAAc,EAAE;QACzB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,EAAE,EAAE,CAAC;IAAA,CACN;IACD,SAAS,GAAgB,CAAI,EAAmB,EAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAAA,CACtD,CAAC;IACF,OAAO,GAAc,CAAC,EAAS,EAAQ,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IACF,OAAO,GAAc,CAAC,EAAc,EAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IAEO,SAAS,CAAwC;IAE1D,YAAY,IAAY,EAAE,SAAgD,EAAE;QAC1E,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAAA,CAC5B;IACD,OAAO,CAAC,KAA2B,EAAQ;QACzC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IAAA,CACrB;IAED,IAAI,GAAG,CAAC,IAAuB,EAAQ,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACpB,IAAI,EAAE,KAAK;SAC2B,CAAC,CAAC;IAAA,CAC3C,CAAC;CACH;;AAED;IACW,IAAI,GAAyC,EAAE,CAAC;IACzC,EAAE,GAAyB,IAAI,gBAAgB,CAAK,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACrE,EAAE,GAAyB,IAAI,gBAAgB,CAAK,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAErF,MAAM,CAAC,MAAM,GAAe;QAC1B,MAAM,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IAAA,CACb;IAED,cAAsB;IAAC,CAEtB;CACF"}
@@ -1,39 +1,35 @@
1
1
  import { CoerceBinaryInput } from "./index.js";
2
- export interface WSConnectionWrapper {
3
- onError(e: ErrorEvent): void;
4
- onMessage<T>(e: MessageEvent<T>): void;
5
- onClose(e: CloseEvent): void;
6
- send(data: CoerceBinaryInput): void;
7
- }
8
- export type OnErrorFn = (e: ErrorEvent) => void;
2
+ export type WebSocketSimple = Pick<WebSocket, "onerror" | "onmessage" | "onclose" | "send" | "onopen">;
3
+ export type OnErrorFn = (e: Event) => void;
9
4
  export type OnMessageFn = <T = unknown>(e: MessageEvent<T>) => void;
10
5
  export type OnCloseFn = (e: CloseEvent) => void;
11
- declare class TestWSConnection implements WSConnectionWrapper {
6
+ export declare class TestWSConnection<WS extends WebSocketSimple = WebSocket> implements WebSocketSimple {
12
7
  #private;
13
8
  readonly side: string;
14
- onMessage: OnMessageFn;
15
- onError: OnErrorFn;
16
- onClose: OnCloseFn;
17
- readonly calls: {
9
+ get onopen(): () => void;
10
+ set onopen(fn: () => void);
11
+ onmessage: OnMessageFn;
12
+ onerror: OnErrorFn;
13
+ onclose: OnCloseFn;
14
+ readonly transfers?: {
18
15
  from: string;
19
16
  data: Uint8Array;
20
17
  }[];
21
- constructor(side: string, calls: {
18
+ constructor(side: string, transfers?: {
22
19
  from: string;
23
20
  data: Uint8Array;
24
21
  }[]);
25
- connect(other: TestWSConnection): void;
26
- send(data: CoerceBinaryInput): void;
22
+ connect(other: TestWSConnection<WS>): void;
23
+ send: (data: CoerceBinaryInput) => void;
27
24
  }
28
- export declare class TestWSPair {
25
+ export declare class TestWSPair<WS extends WebSocketSimple = WebSocket> {
29
26
  readonly msgs: {
30
27
  from: string;
31
28
  data: Uint8Array;
32
29
  }[];
33
- readonly p1: TestWSConnection;
34
- readonly p2: TestWSConnection;
30
+ readonly p1: TestWSConnection<WS>;
31
+ readonly p2: TestWSConnection<WS>;
35
32
  static create(): TestWSPair;
36
33
  private constructor();
37
34
  }
38
- export {};
39
35
  //# sourceMappingURL=test-ws-pair.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-ws-pair.d.ts","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAY,MAAM,YAAY,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;AAEhD,cAAM,gBAAiB,YAAW,mBAAmB;;IAEnD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,WAAW,CAEpB;IACF,OAAO,EAAE,SAAS,CAEhB;IACF,OAAO,EAAE,SAAS,CAEhB;IAEF,QAAQ,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAC;IAErD,YAAY,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,EAGpE;IACD,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAErC;IAED,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAMlC;CACF;AAED,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAM;IACzD,SAAgB,EAAE,EAAE,gBAAgB,CAAyC;IAC7E,SAAgB,EAAE,EAAE,gBAAgB,CAAyC;IAE7E,MAAM,CAAC,MAAM,IAAI,UAAU,CAK1B;IAED,OAAO,eAEN;CACF"}
1
+ {"version":3,"file":"test-ws-pair.d.ts","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAY,MAAM,YAAY,CAAC;AAEzD,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC;AAEvG,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;AAC3C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;AAEhD,qBAAa,gBAAgB,CAAC,EAAE,SAAS,eAAe,GAAG,SAAS,CAAE,YAAW,eAAe;;IAE9F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAItB,IAAI,MAAM,IAAI,MAAM,IAAI,CAEvB;IACD,IAAI,MAAM,CAAC,EAAE,EAAE,MAAM,IAAI,EAGxB;IACD,SAAS,EAAE,WAAW,CAEpB;IACF,OAAO,EAAE,SAAS,CAEhB;IACF,OAAO,EAAE,SAAS,CAEhB;IAEF,QAAQ,CAAC,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAC;IAE1D,YAAY,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,EAGzE;IACD,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI,CAEzC;IAED,IAAI,oCAMF;CACH;AAED,qBAAa,UAAU,CAAC,EAAE,SAAS,eAAe,GAAG,SAAS;IAC5D,QAAQ,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAM;IACzD,SAAgB,EAAE,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAA6C;IACrF,SAAgB,EAAE,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAA6C;IAErF,MAAM,CAAC,MAAM,IAAI,UAAU,CAK1B;IAED,OAAO,eAEN;CACF"}
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const test_ws_pair_js_1 = require("./test-ws-pair.cjs");
4
3
  const vitest_1 = require("vitest");
4
+ const test_ws_pair_js_1 = require("./test-ws-pair.cjs");
5
5
  (0, vitest_1.it)("should record messages from both sides in the msgs array", () => {
6
6
  const pair = test_ws_pair_js_1.TestWSPair.create();
7
7
  const receivedByP1 = [];
8
8
  const receivedByP2 = [];
9
- pair.p1.onMessage = (e) => {
9
+ pair.p1.onmessage = (e) => {
10
10
  receivedByP1.push(e.data);
11
11
  };
12
- pair.p2.onMessage = (e) => {
12
+ pair.p2.onmessage = (e) => {
13
13
  receivedByP2.push(e.data);
14
14
  };
15
15
  pair.p1.send(new Uint8Array([1, 2, 3]));
@@ -28,11 +28,17 @@ const vitest_1 = require("vitest");
28
28
  (0, vitest_1.expect)(receivedByP1).toHaveLength(1);
29
29
  (0, vitest_1.expect)(receivedByP1[0]).toEqual(new Uint8Array([4, 5, 6]));
30
30
  });
31
+ (0, vitest_1.it)("should emit onopen events upon setting the handler", () => {
32
+ const pair = new test_ws_pair_js_1.TestWSConnection("p1", []);
33
+ pair.onopen = vitest_1.vi.fn(() => {
34
+ });
35
+ (0, vitest_1.expect)(pair.onopen).toHaveBeenCalledTimes(1);
36
+ });
31
37
  (0, vitest_1.it)("should handle string data via CoerceBinaryInput", () => {
32
38
  const pair = test_ws_pair_js_1.TestWSPair.create();
33
- pair.p1.onMessage = (_e) => {
39
+ pair.p1.onmessage = (_e) => {
34
40
  };
35
- pair.p2.onMessage = (_e) => {
41
+ pair.p2.onmessage = (_e) => {
36
42
  };
37
43
  pair.p1.send("hello");
38
44
  pair.p2.send("world");
@@ -46,4 +52,20 @@ const vitest_1 = require("vitest");
46
52
  const pair = test_ws_pair_js_1.TestWSPair.create();
47
53
  (0, vitest_1.expect)(pair.msgs).toEqual([]);
48
54
  });
55
+ (0, vitest_1.it)("should work when send method is passed without bind", () => {
56
+ const pair = test_ws_pair_js_1.TestWSPair.create();
57
+ const receivedByP2 = [];
58
+ pair.p1.onmessage = (_e) => {
59
+ };
60
+ pair.p2.onmessage = (e) => {
61
+ receivedByP2.push(e.data);
62
+ };
63
+ const unboundSend = pair.p1.send;
64
+ unboundSend(new Uint8Array([10, 20, 30]));
65
+ (0, vitest_1.expect)(pair.msgs).toHaveLength(1);
66
+ (0, vitest_1.expect)(pair.msgs[0].from).toBe("p1");
67
+ (0, vitest_1.expect)(pair.msgs[0].data).toEqual(new Uint8Array([10, 20, 30]));
68
+ (0, vitest_1.expect)(receivedByP2).toHaveLength(1);
69
+ (0, vitest_1.expect)(receivedByP2[0]).toEqual(new Uint8Array([10, 20, 30]));
70
+ });
49
71
  //# sourceMappingURL=test-ws-pair.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-ws-pair.test.js","sourceRoot":"","sources":["../../../src/test-ws-pair.test.ts"],"names":[],"mappings":";;AAAA,uDAA+C;AAC/C,mCAAoC;AAEpC,IAAA,WAAE,EAAC,0DAA0D,EAAE,GAAG,EAAE,CAAC;IACnE,MAAM,IAAI,GAAG,4BAAU,CAAC,MAAM,EAAE,CAAC;IAEjC,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,MAAM,YAAY,GAAiB,EAAE,CAAC;IAEtC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,EAAQ,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAkB,CAAC,CAAC;IAAA,CACzC,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,EAAQ,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAkB,CAAC,CAAC;IAAA,CACzC,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAExC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAElC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,IAAA,eAAM,EAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAA,eAAM,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3D,IAAA,eAAM,EAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAAA,CAC5D,CAAC,CAAC;AAEH,IAAA,WAAE,EAAC,iDAAiD,EAAE,GAAG,EAAE,CAAC;IAC1D,MAAM,IAAI,GAAG,4BAAU,CAAC,MAAM,EAAE,CAAC;IAEjC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,EAAQ,EAAE,CAAC;IAAC,CAElC,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,EAAQ,EAAE,CAAC;IAAC,CAElC,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClE,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAA,eAAM,EAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAAA,CACnE,CAAC,CAAC;AAEH,IAAA,WAAE,EAAC,oCAAoC,EAAE,GAAG,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,4BAAU,CAAC,MAAM,EAAE,CAAC;IACjC,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAAA,CAC/B,CAAC,CAAC"}
1
+ {"version":3,"file":"test-ws-pair.test.js","sourceRoot":"","sources":["../../../src/test-ws-pair.test.ts"],"names":[],"mappings":"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"}
package/cjs/version.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = "0.5.16";
4
+ exports.VERSION = "0.5.18";
5
5
  //# sourceMappingURL=version.js.map
package/deno.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adviser/cement",
3
- "version": "0.5.16",
3
+ "version": "0.5.18",
4
4
  "license": "AFL-2.0",
5
5
  "exports": {
6
6
  ".": "./src/index.ts",
@@ -5,7 +5,7 @@ export declare class ClientFetch {
5
5
  request: Request;
6
6
  response: Response;
7
7
  }[];
8
- fetch(url: string, options?: RequestInit): Promise<Response>;
8
+ fetch: (url: string, options?: RequestInit) => Promise<Response>;
9
9
  }
10
10
  export declare class ServerFetch {
11
11
  serve: (request: Request) => Promise<Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"test-fetch-pair.d.ts","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;;IAEtB,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAEjC;IACD,QAAQ,CAAC,KAAK,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,QAAQ,CAAC;KACpB,EAAE,CAAM;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAMjE;CACF;AAED,qBAAa,WAAW;IACtB,KAAK,EAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAE5D;CACF;AAED,qBAAa,aAAa;IACxB,SAAgB,MAAM,EAAE,WAAW,CAAqB;IACxD,SAAgB,MAAM,EAAE,WAAW,CAAqB;IAExD,MAAM,CAAC,MAAM,IAAI,aAAa,CAI7B;IAED,OAAO,eAEN;CACF"}
1
+ {"version":3,"file":"test-fetch-pair.d.ts","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;;IAEtB,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAEjC;IACD,QAAQ,CAAC,KAAK,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,QAAQ,CAAC;KACpB,EAAE,CAAM;IACT,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAM9D;CACH;AAED,qBAAa,WAAW;IACtB,KAAK,EAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAE5D;CACF;AAED,qBAAa,aAAa;IACxB,SAAgB,MAAM,EAAE,WAAW,CAAqB;IACxD,SAAgB,MAAM,EAAE,WAAW,CAAqB;IAExD,MAAM,CAAC,MAAM,IAAI,aAAa,CAI7B;IAED,OAAO,eAEN;CACF"}
@@ -4,13 +4,13 @@ export class ClientFetch {
4
4
  this.#server = server;
5
5
  }
6
6
  calls = [];
7
- async fetch(url, options) {
7
+ fetch = async (url, options) => {
8
8
  const req = new Request(url, options);
9
9
  const callsReq = req.clone();
10
10
  const res = await this.#server.serve(req);
11
11
  this.calls.push({ request: callsReq, response: res.clone() });
12
12
  return res;
13
- }
13
+ };
14
14
  }
15
15
  export class ServerFetch {
16
16
  serve;
@@ -1 +1 @@
1
- {"version":3,"file":"test-fetch-pair.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAW;IACtB,OAAO,CAAe;IACtB,OAAO,CAAC,MAAmB,EAAQ;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAAA,CACvB;IACQ,KAAK,GAGR,EAAE,CAAC;IACT,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,OAAqB,EAAqB;QACjE,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC;IAAA,CACZ;CACF;AAED,MAAM,OAAO,WAAW;IACtB,KAAK,CAA2C;IAEhD,OAAO,CAAC,KAA8C,EAAQ;QAC5D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAAA,CACpB;CACF;AAED,MAAM,OAAO,aAAa;IACR,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IACxC,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IAExD,MAAM,CAAC,MAAM,GAAkB;QAC7B,MAAM,GAAG,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC;IAAA,CACZ;IAED,cAAsB;IAAC,CAEtB;CACF"}
1
+ {"version":3,"file":"test-fetch-pair.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAW;IACtB,OAAO,CAAe;IACtB,OAAO,CAAC,MAAmB,EAAQ;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAAA,CACvB;IACQ,KAAK,GAGR,EAAE,CAAC;IACT,KAAK,GAA8D,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;QACzF,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,GAAG,CAAC;IAAA,CACZ,CAAC;CACH;AAED,MAAM,OAAO,WAAW;IACtB,KAAK,CAA2C;IAEhD,OAAO,CAAC,KAA8C,EAAQ;QAC5D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAAA,CACpB;CACF;AAED,MAAM,OAAO,aAAa;IACR,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IACxC,MAAM,GAAgB,IAAI,WAAW,EAAE,CAAC;IAExD,MAAM,CAAC,MAAM,GAAkB;QAC7B,MAAM,GAAG,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,CAAC;IAAA,CACZ;IAED,cAAsB;IAAC,CAEtB;CACF"}
@@ -35,4 +35,15 @@ it("should start with empty calls array", () => {
35
35
  const tfp = TestFetchPair.create();
36
36
  expect(tfp.client.calls).toEqual([]);
37
37
  });
38
+ it("should work when fetch method is passed without bind", async () => {
39
+ const tfp = TestFetchPair.create();
40
+ tfp.server.onServe((req) => {
41
+ return Promise.resolve(new Response(`Response for ${req.url}`, { status: 200 }));
42
+ });
43
+ const unboundFetch = tfp.client.fetch;
44
+ await unboundFetch("http://example.com/unbound");
45
+ expect(tfp.client.calls).toHaveLength(1);
46
+ expect(tfp.client.calls[0].request.url).toBe("http://example.com/unbound");
47
+ expect(await tfp.client.calls[0].response.text()).toBe("Response for http://example.com/unbound");
48
+ });
38
49
  //# sourceMappingURL=test-fetch-pair.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-fetch-pair.test.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-fetch-pair.test.js","sourceRoot":"","sources":["../../../src/test-fetch-pair.test.ts"],"names":[],"mappings":"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"}
@@ -1,39 +1,35 @@
1
1
  import { CoerceBinaryInput } from "./index.js";
2
- export interface WSConnectionWrapper {
3
- onError(e: ErrorEvent): void;
4
- onMessage<T>(e: MessageEvent<T>): void;
5
- onClose(e: CloseEvent): void;
6
- send(data: CoerceBinaryInput): void;
7
- }
8
- export type OnErrorFn = (e: ErrorEvent) => void;
2
+ export type WebSocketSimple = Pick<WebSocket, "onerror" | "onmessage" | "onclose" | "send" | "onopen">;
3
+ export type OnErrorFn = (e: Event) => void;
9
4
  export type OnMessageFn = <T = unknown>(e: MessageEvent<T>) => void;
10
5
  export type OnCloseFn = (e: CloseEvent) => void;
11
- declare class TestWSConnection implements WSConnectionWrapper {
6
+ export declare class TestWSConnection<WS extends WebSocketSimple = WebSocket> implements WebSocketSimple {
12
7
  #private;
13
8
  readonly side: string;
14
- onMessage: OnMessageFn;
15
- onError: OnErrorFn;
16
- onClose: OnCloseFn;
17
- readonly calls: {
9
+ get onopen(): () => void;
10
+ set onopen(fn: () => void);
11
+ onmessage: OnMessageFn;
12
+ onerror: OnErrorFn;
13
+ onclose: OnCloseFn;
14
+ readonly transfers?: {
18
15
  from: string;
19
16
  data: Uint8Array;
20
17
  }[];
21
- constructor(side: string, calls: {
18
+ constructor(side: string, transfers?: {
22
19
  from: string;
23
20
  data: Uint8Array;
24
21
  }[]);
25
- connect(other: TestWSConnection): void;
26
- send(data: CoerceBinaryInput): void;
22
+ connect(other: TestWSConnection<WS>): void;
23
+ send: (data: CoerceBinaryInput) => void;
27
24
  }
28
- export declare class TestWSPair {
25
+ export declare class TestWSPair<WS extends WebSocketSimple = WebSocket> {
29
26
  readonly msgs: {
30
27
  from: string;
31
28
  data: Uint8Array;
32
29
  }[];
33
- readonly p1: TestWSConnection;
34
- readonly p2: TestWSConnection;
30
+ readonly p1: TestWSConnection<WS>;
31
+ readonly p2: TestWSConnection<WS>;
35
32
  static create(): TestWSPair;
36
33
  private constructor();
37
34
  }
38
- export {};
39
35
  //# sourceMappingURL=test-ws-pair.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-ws-pair.d.ts","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAY,MAAM,YAAY,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;AAEhD,cAAM,gBAAiB,YAAW,mBAAmB;;IAEnD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,WAAW,CAEpB;IACF,OAAO,EAAE,SAAS,CAEhB;IACF,OAAO,EAAE,SAAS,CAEhB;IAEF,QAAQ,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAC;IAErD,YAAY,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,EAGpE;IACD,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAErC;IAED,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAMlC;CACF;AAED,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAM;IACzD,SAAgB,EAAE,EAAE,gBAAgB,CAAyC;IAC7E,SAAgB,EAAE,EAAE,gBAAgB,CAAyC;IAE7E,MAAM,CAAC,MAAM,IAAI,UAAU,CAK1B;IAED,OAAO,eAEN;CACF"}
1
+ {"version":3,"file":"test-ws-pair.d.ts","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAY,MAAM,YAAY,CAAC;AAEzD,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC;AAEvG,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;AAC3C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;AAEhD,qBAAa,gBAAgB,CAAC,EAAE,SAAS,eAAe,GAAG,SAAS,CAAE,YAAW,eAAe;;IAE9F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAItB,IAAI,MAAM,IAAI,MAAM,IAAI,CAEvB;IACD,IAAI,MAAM,CAAC,EAAE,EAAE,MAAM,IAAI,EAGxB;IACD,SAAS,EAAE,WAAW,CAEpB;IACF,OAAO,EAAE,SAAS,CAEhB;IACF,OAAO,EAAE,SAAS,CAEhB;IAEF,QAAQ,CAAC,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAC;IAE1D,YAAY,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,EAGzE;IACD,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI,CAEzC;IAED,IAAI,oCAMF;CACH;AAED,qBAAa,UAAU,CAAC,EAAE,SAAS,eAAe,GAAG,SAAS;IAC5D,QAAQ,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,EAAE,CAAM;IACzD,SAAgB,EAAE,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAA6C;IACrF,SAAgB,EAAE,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAA6C;IAErF,MAAM,CAAC,MAAM,IAAI,UAAU,CAK1B;IAED,OAAO,eAEN;CACF"}
@@ -1,31 +1,39 @@
1
1
  import { to_uint8 } from "./index.js";
2
- class TestWSConnection {
2
+ export class TestWSConnection {
3
3
  #other;
4
4
  side;
5
- onMessage = (_e) => {
5
+ #onopen;
6
+ get onopen() {
7
+ return this.#onopen;
8
+ }
9
+ set onopen(fn) {
10
+ this.#onopen = fn;
11
+ fn();
12
+ }
13
+ onmessage = (_e) => {
6
14
  throw new Error("OnMessage Method not implemented.");
7
15
  };
8
- onError = (_e) => {
16
+ onerror = (_e) => {
9
17
  throw new Error("OnError Method not implemented.");
10
18
  };
11
- onClose = (_e) => {
19
+ onclose = (_e) => {
12
20
  throw new Error("OnClose Method not implemented.");
13
21
  };
14
- calls;
15
- constructor(side, calls) {
22
+ transfers;
23
+ constructor(side, transfers) {
16
24
  this.side = side;
17
- this.calls = calls;
25
+ this.transfers = transfers;
18
26
  }
19
27
  connect(other) {
20
28
  this.#other = other;
21
29
  }
22
- send(data) {
30
+ send = (data) => {
23
31
  const uint8 = to_uint8(data);
24
- this.calls.push({ from: this.side, data: uint8 });
25
- this.#other.onMessage({
32
+ this.transfers?.push({ from: this.side, data: uint8 });
33
+ this.#other.onmessage({
26
34
  data: uint8,
27
35
  });
28
- }
36
+ };
29
37
  }
30
38
  export class TestWSPair {
31
39
  msgs = [];
@@ -1 +1 @@
1
- {"version":3,"file":"test-ws-pair.js","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAE,MAAM,YAAY,CAAC;AAazD,MAAM,gBAAgB;IACpB,MAAM,CAAoB;IACjB,IAAI,CAAS;IACtB,SAAS,GAAgB,CAAI,EAAmB,EAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAAA,CACtD,CAAC;IACF,OAAO,GAAc,CAAC,EAAc,EAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IACF,OAAO,GAAc,CAAC,EAAc,EAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IAEO,KAAK,CAAuC;IAErD,YAAY,IAAY,EAAE,KAA2C,EAAE;QACrE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAAA,CACpB;IACD,OAAO,CAAC,KAAuB,EAAQ;QACrC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IAAA,CACrB;IAED,IAAI,CAAC,IAAuB,EAAQ;QAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACpB,IAAI,EAAE,KAAK;SAC2B,CAAC,CAAC;IAAA,CAC3C;CACF;AAED,MAAM,OAAO,UAAU;IACZ,IAAI,GAAyC,EAAE,CAAC;IACzC,EAAE,GAAqB,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,EAAE,GAAqB,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7E,MAAM,CAAC,MAAM,GAAe;QAC1B,MAAM,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IAAA,CACb;IAED,cAAsB;IAAC,CAEtB;CACF"}
1
+ {"version":3,"file":"test-ws-pair.js","sourceRoot":"","sources":["../../../src/test-ws-pair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQzD,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAwB;IACrB,IAAI,CAAS;IAEtB,OAAO,CAAc;IAErB,IAAI,MAAM,GAAe;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC;IAAA,CACrB;IACD,IAAI,MAAM,CAAC,EAAc,EAAE;QACzB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,EAAE,EAAE,CAAC;IAAA,CACN;IACD,SAAS,GAAgB,CAAI,EAAmB,EAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAAA,CACtD,CAAC;IACF,OAAO,GAAc,CAAC,EAAS,EAAQ,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IACF,OAAO,GAAc,CAAC,EAAc,EAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAAA,CACpD,CAAC;IAEO,SAAS,CAAwC;IAE1D,YAAY,IAAY,EAAE,SAAgD,EAAE;QAC1E,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAAA,CAC5B;IACD,OAAO,CAAC,KAA2B,EAAQ;QACzC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IAAA,CACrB;IAED,IAAI,GAAG,CAAC,IAAuB,EAAQ,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACpB,IAAI,EAAE,KAAK;SAC2B,CAAC,CAAC;IAAA,CAC3C,CAAC;CACH;AAED,MAAM,OAAO,UAAU;IACZ,IAAI,GAAyC,EAAE,CAAC;IACzC,EAAE,GAAyB,IAAI,gBAAgB,CAAK,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACrE,EAAE,GAAyB,IAAI,gBAAgB,CAAK,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAErF,MAAM,CAAC,MAAM,GAAe;QAC1B,MAAM,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IAAA,CACb;IAED,cAAsB;IAAC,CAEtB;CACF"}
@@ -1,13 +1,13 @@
1
- import { TestWSPair } from "./test-ws-pair.js";
2
- import { it, expect } from "vitest";
1
+ import { it, expect, vi } from "vitest";
2
+ import { TestWSConnection, TestWSPair } from "./test-ws-pair.js";
3
3
  it("should record messages from both sides in the msgs array", () => {
4
4
  const pair = TestWSPair.create();
5
5
  const receivedByP1 = [];
6
6
  const receivedByP2 = [];
7
- pair.p1.onMessage = (e) => {
7
+ pair.p1.onmessage = (e) => {
8
8
  receivedByP1.push(e.data);
9
9
  };
10
- pair.p2.onMessage = (e) => {
10
+ pair.p2.onmessage = (e) => {
11
11
  receivedByP2.push(e.data);
12
12
  };
13
13
  pair.p1.send(new Uint8Array([1, 2, 3]));
@@ -26,11 +26,17 @@ it("should record messages from both sides in the msgs array", () => {
26
26
  expect(receivedByP1).toHaveLength(1);
27
27
  expect(receivedByP1[0]).toEqual(new Uint8Array([4, 5, 6]));
28
28
  });
29
+ it("should emit onopen events upon setting the handler", () => {
30
+ const pair = new TestWSConnection("p1", []);
31
+ pair.onopen = vi.fn(() => {
32
+ });
33
+ expect(pair.onopen).toHaveBeenCalledTimes(1);
34
+ });
29
35
  it("should handle string data via CoerceBinaryInput", () => {
30
36
  const pair = TestWSPair.create();
31
- pair.p1.onMessage = (_e) => {
37
+ pair.p1.onmessage = (_e) => {
32
38
  };
33
- pair.p2.onMessage = (_e) => {
39
+ pair.p2.onmessage = (_e) => {
34
40
  };
35
41
  pair.p1.send("hello");
36
42
  pair.p2.send("world");
@@ -44,4 +50,20 @@ it("should start with empty msgs array", () => {
44
50
  const pair = TestWSPair.create();
45
51
  expect(pair.msgs).toEqual([]);
46
52
  });
53
+ it("should work when send method is passed without bind", () => {
54
+ const pair = TestWSPair.create();
55
+ const receivedByP2 = [];
56
+ pair.p1.onmessage = (_e) => {
57
+ };
58
+ pair.p2.onmessage = (e) => {
59
+ receivedByP2.push(e.data);
60
+ };
61
+ const unboundSend = pair.p1.send;
62
+ unboundSend(new Uint8Array([10, 20, 30]));
63
+ expect(pair.msgs).toHaveLength(1);
64
+ expect(pair.msgs[0].from).toBe("p1");
65
+ expect(pair.msgs[0].data).toEqual(new Uint8Array([10, 20, 30]));
66
+ expect(receivedByP2).toHaveLength(1);
67
+ expect(receivedByP2[0]).toEqual(new Uint8Array([10, 20, 30]));
68
+ });
47
69
  //# sourceMappingURL=test-ws-pair.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-ws-pair.test.js","sourceRoot":"","sources":["../../../src/test-ws-pair.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-ws-pair.test.js","sourceRoot":"","sources":["../../../src/test-ws-pair.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAejE,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE,CAAC;IACnE,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;IAEjC,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,MAAM,YAAY,GAAiB,EAAE,CAAC;IAEtC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,EAAQ,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAkB,CAAC,CAAC;IAAA,CACzC,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,EAAQ,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAkB,CAAC,CAAC;IAAA,CACzC,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAExC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAElC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3D,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAAA,CAC5D,CAAC,CAAC;AAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;IAAC,CAE1B,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAAA,CAC9C,CAAC,CAAC;AAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE,CAAC;IAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;IAEjC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,EAAQ,EAAE,CAAC;IAAC,CAElC,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,EAAQ,EAAE,CAAC;IAAC,CAElC,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAAA,CACnE,CAAC,CAAC;AAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;IACjC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAAA,CAC/B,CAAC,CAAC;AAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE,CAAC;IAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;IAEjC,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,EAAQ,EAAE,CAAC;IAAC,CAElC,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,EAAQ,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAkB,CAAC,CAAC;IAAA,CACzC,CAAC;IAEF,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;IAEjC,WAAW,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAE1C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhE,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAAA,CAC/D,CAAC,CAAC"}
package/esm/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = "0.5.16";
1
+ export const VERSION = "0.5.18";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adviser/cement",
3
- "version": "0.5.16",
3
+ "version": "0.5.18",
4
4
  "description": "better try/catch/finally handling",
5
5
  "main": "./cjs/index.js",
6
6
  "type": "module",
@@ -73,11 +73,13 @@
73
73
  },
74
74
  "devDependencies": {
75
75
  "@cloudflare/vitest-pool-workers": "^0.12.1",
76
+ "@cloudflare/workers-types": "^4.20260123.0",
76
77
  "@eslint/js": "^9.39.1",
77
78
  "@types/deno": "^2.3.0",
78
79
  "@types/fs-extra": "^11.0.4",
79
80
  "@types/node": "^25.0.2",
80
81
  "@types/semver": "^7.7.1",
82
+ "@types/ws": "^8.18.1",
81
83
  "@typescript-eslint/eslint-plugin": "^8.46.3",
82
84
  "@typescript-eslint/parser": "^8.46.3",
83
85
  "@typescript/native-preview": "7.0.0-dev.20260119.1",