@nmtjs/ws-transport 0.15.0-beta.9 → 0.15.1

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/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export * from "./injectables.js";
2
- export * from "./server.js";
3
- export * from "./types.js";
4
- export * from "./utils.js";
1
+ export * from './injectables.js';
2
+ export * from './server.js';
3
+ export * from './types.js';
4
+ export * from './utils.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -3,4 +3,4 @@ import type { ConnectionType } from '@nmtjs/protocol';
3
3
  import { ProxyableTransportType } from '@nmtjs/gateway';
4
4
  import type { WsTransportOptions } from '../types.ts';
5
5
  import * as injectables from '../injectables.ts';
6
- export declare const WsTransport: Transport<ConnectionType.Bidirectional, WsTransportOptions<'bun'>, typeof injectables, ProxyableTransportType.WebSocket>;
6
+ export declare const WsTransport: Transport<ConnectionType.Bidirectional, WsTransportOptions<'bun'>, typeof injectables, ProxyableTransportType.WS>;
@@ -1,8 +1,8 @@
1
1
  import { ProxyableTransportType } from '@nmtjs/gateway';
2
2
  import createAdapter from 'crossws/adapters/bun';
3
- import * as injectables from "../injectables.js";
4
- import { createWSTransportWorker } from "../server.js";
5
- import { InternalServerErrorHttpResponse, NotFoundHttpResponse, StatusResponse, } from "../utils.js";
3
+ import * as injectables from '../injectables.js';
4
+ import { createWSTransportWorker } from '../server.js';
5
+ import { InternalServerErrorHttpResponse, NotFoundHttpResponse, StatusResponse, } from '../utils.js';
6
6
  function adapterFactory(params) {
7
7
  const adapter = createAdapter({ hooks: params.wsHooks });
8
8
  let server = null;
@@ -52,7 +52,7 @@ function adapterFactory(params) {
52
52
  };
53
53
  }
54
54
  export const WsTransport = {
55
- proxyable: ProxyableTransportType.WebSocket,
55
+ proxyable: ProxyableTransportType.WS,
56
56
  injectables,
57
57
  factory(options) {
58
58
  return createWSTransportWorker(adapterFactory, options);
@@ -1 +1 @@
1
- {"version":3,"file":"bun.js","sourceRoot":"","sources":["../../src/runtimes/bun.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,aAAa,MAAM,sBAAsB,CAAA;AAOhD,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EACL,+BAA+B,EAC/B,oBAAoB,EACpB,cAAc,GACf,MAAM,aAAa,CAAA;AAEpB,SAAS,cAAc,CAAC,MAA8B;IACpD,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;IAExD,IAAI,MAAM,GAA2B,IAAI,CAAA;IAEzC,SAAS,YAAY;QACnB,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK;QACzB,yBAAyB;QACzB;YACE,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM;YACzB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ;YAChC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,GAAG,EAAE,MAAM,CAAC,GAAG;gBACb,CAAC,CAAC;oBACE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;oBACrB,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;oBACnB,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;iBAClC;gBACH,CAAC,CAAC,SAAS;YACb,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE;YAC1D,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE;YACxC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM;gBACzB,IAAI,CAAC;oBACH,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,WAAW,EAAE,CAAC;wBACnD,OAAO,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;oBACrD,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAA;oBACtD,OAAO,+BAA+B,EAAE,CAAA;gBAC1C,CAAC;gBACD,OAAO,oBAAoB,EAAE,CAAA;YAC/B,CAAC;SACF,CACF,CAAA;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,MAAM,GAAG,YAAY,EAAE,CAAA;YACvB,OAAO,MAAO,CAAC,GAAG,CAAC,IAAI,CAAA;QACzB,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;gBACnB,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAKpB;IACF,SAAS,EAAE,sBAAsB,CAAC,SAAS;IAC3C,WAAW;IACX,OAAO,CAAC,OAAO;QACb,OAAO,uBAAuB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;IACzD,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"bun.js","sourceRoot":"","sources":["../../src/runtimes/bun.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,aAAa,MAAM,sBAAsB,CAAA;AAOhD,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EACL,+BAA+B,EAC/B,oBAAoB,EACpB,cAAc,GACf,MAAM,aAAa,CAAA;AAEpB,SAAS,cAAc,CAAC,MAA8B,EAAmB;IACvE,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;IAExD,IAAI,MAAM,GAA2B,IAAI,CAAA;IAEzC,SAAS,YAAY,GAAG;QACtB,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK;QACzB,yBAAyB;QACzB;YACE,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM;YACzB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ;YAChC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,GAAG,EAAE,MAAM,CAAC,GAAG;gBACb,CAAC,CAAC;oBACE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;oBACrB,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;oBACnB,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;iBAClC;gBACH,CAAC,CAAC,SAAS;YACb,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE;YAC1D,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE;YACxC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE;gBAC3B,IAAI,CAAC;oBACH,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,WAAW,EAAE,CAAC;wBACnD,OAAO,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;oBACrD,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAA;oBACtD,OAAO,+BAA+B,EAAE,CAAA;gBAC1C,CAAC;gBACD,OAAO,oBAAoB,EAAE,CAAA;YAAA,CAC9B;SACF,CACF,CAAA;IAAA,CACF;IAED,OAAO;QACL,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;YACjB,MAAM,GAAG,YAAY,EAAE,CAAA;YACvB,OAAO,MAAO,CAAC,GAAG,CAAC,IAAI,CAAA;QAAA,CACxB;QACD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;gBACnB,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QAAA,CACF;KACF,CAAA;AAAA,CACF;AAED,MAAM,CAAC,MAAM,WAAW,GAKpB;IACF,SAAS,EAAE,sBAAsB,CAAC,EAAE;IACpC,WAAW;IACX,OAAO,CAAC,OAAO,EAAE;QACf,OAAO,uBAAuB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;IAAA,CACxD;CACF,CAAA"}
@@ -3,4 +3,4 @@ import type { ConnectionType } from '@nmtjs/protocol';
3
3
  import { ProxyableTransportType } from '@nmtjs/gateway';
4
4
  import type { WsTransportOptions } from '../types.ts';
5
5
  import * as injectables from '../injectables.ts';
6
- export declare const WsTransport: Transport<ConnectionType.Bidirectional, WsTransportOptions<'deno'>, typeof injectables, ProxyableTransportType.WebSocket>;
6
+ export declare const WsTransport: Transport<ConnectionType.Bidirectional, WsTransportOptions<'deno'>, typeof injectables, ProxyableTransportType.WS>;
@@ -1,8 +1,8 @@
1
1
  import { ProxyableTransportType } from '@nmtjs/gateway';
2
2
  import createAdapter from 'crossws/adapters/deno';
3
- import * as injectables from "../injectables.js";
4
- import { createWSTransportWorker } from "../server.js";
5
- import { InternalServerErrorHttpResponse, NotFoundHttpResponse, StatusResponse, } from "../utils.js";
3
+ import * as injectables from '../injectables.js';
4
+ import { createWSTransportWorker } from '../server.js';
5
+ import { InternalServerErrorHttpResponse, NotFoundHttpResponse, StatusResponse, } from '../utils.js';
6
6
  function adapterFactory(params) {
7
7
  const adapter = createAdapter({ hooks: params.wsHooks });
8
8
  let server = null;
@@ -75,7 +75,7 @@ function adapterFactory(params) {
75
75
  };
76
76
  }
77
77
  export const WsTransport = {
78
- proxyable: ProxyableTransportType.WebSocket,
78
+ proxyable: ProxyableTransportType.WS,
79
79
  injectables,
80
80
  factory(options) {
81
81
  return createWSTransportWorker(adapterFactory, options);
@@ -1 +1 @@
1
- {"version":3,"file":"deno.js","sourceRoot":"","sources":["../../src/runtimes/deno.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deno.js","sourceRoot":"","sources":["../../src/runtimes/deno.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,4 @@ import type { ConnectionType } from '@nmtjs/protocol';
3
3
  import { ProxyableTransportType } from '@nmtjs/gateway';
4
4
  import type { WsTransportOptions } from '../types.ts';
5
5
  import * as injectables from '../injectables.ts';
6
- export declare const WsTransport: Transport<ConnectionType.Bidirectional, WsTransportOptions<'node'>, typeof injectables, ProxyableTransportType.WebSocket>;
6
+ export declare const WsTransport: Transport<ConnectionType.Bidirectional, WsTransportOptions<'node'>, typeof injectables, ProxyableTransportType.WS>;
@@ -1,8 +1,8 @@
1
1
  import { ProxyableTransportType } from '@nmtjs/gateway';
2
2
  import createAdapter from 'crossws/adapters/uws';
3
- import * as injectables from "../injectables.js";
4
- import { createWSTransportWorker } from "../server.js";
5
- import { StatusResponse } from "../utils.js";
3
+ import * as injectables from '../injectables.js';
4
+ import { createWSTransportWorker } from '../server.js';
5
+ import { StatusResponse } from '../utils.js';
6
6
  import { App, SSLApp, us_socket_local_port } from 'uWebSockets.js';
7
7
  const statusResponse = StatusResponse();
8
8
  const statusResponseBuffer = await statusResponse.arrayBuffer();
@@ -58,7 +58,7 @@ function adapterFactory(params) {
58
58
  };
59
59
  }
60
60
  export const WsTransport = {
61
- proxyable: ProxyableTransportType.WebSocket,
61
+ proxyable: ProxyableTransportType.WS,
62
62
  injectables,
63
63
  factory(options) {
64
64
  return createWSTransportWorker(adapterFactory, options);
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/runtimes/node.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,aAAa,MAAM,sBAAsB,CAAA;AAOhD,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAElE,MAAM,cAAc,GAAG,cAAc,EAAE,CAAA;AACvC,MAAM,oBAAoB,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,CAAA;AAE/D,SAAS,cAAc,CAAC,MAA+B;IACrD,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;IAExD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG;QACvB,CAAC,CAAC,MAAM,CAAC;YACL,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;YACjC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;YAC7B,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;SAChC,CAAC;QACJ,CAAC,CAAC,GAAG,EAAE,CAAA;IAET,MAAM;SACH,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;SACzD,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;QACvB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE;YACZ,GAAG;iBACA,WAAW,CAAC,GAAG,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,UAAU,EAAE,CAAC;iBACpE,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAC9B,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,OAAO;QACL,KAAK,EAAE,GAAG,EAAE,CACV,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;YAC3C,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC5B,IAAI,MAAM,EAAE,CAAC;wBACX,OAAO,CAAC,GAAG,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBAClD,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;oBACxD,CAAC;gBACH,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACxB,CAAC;iBAAM,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,WAAW,CAAA;gBACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;oBACrD,IAAI,MAAM,EAAE,CAAC;wBACX,OAAO,CAAC,GAAG,KAAK,MAAM,QAAQ,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACnE,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;oBACxD,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;YAChD,CAAC;QACH,CAAC,CAAC;QACJ,IAAI,EAAE,GAAG,EAAE;YACT,MAAM,CAAC,KAAK,EAAE,CAAA;QAChB,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAKpB;IACF,SAAS,EAAE,sBAAsB,CAAC,SAAS;IAC3C,WAAW;IACX,OAAO,CAAC,OAAO;QACb,OAAO,uBAAuB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;IACzD,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/runtimes/node.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,aAAa,MAAM,sBAAsB,CAAA;AAOhD,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAElE,MAAM,cAAc,GAAG,cAAc,EAAE,CAAA;AACvC,MAAM,oBAAoB,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,CAAA;AAE/D,SAAS,cAAc,CAAC,MAA+B,EAAmB;IACxE,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;IAExD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG;QACvB,CAAC,CAAC,MAAM,CAAC;YACL,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;YACjC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;YAC7B,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;SAChC,CAAC;QACJ,CAAC,CAAC,GAAG,EAAE,CAAA;IAET,MAAM;SACH,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;SACzD,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC;QACxB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,GAAG;iBACA,WAAW,CAAC,GAAG,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,UAAU,EAAE,CAAC;iBACpE,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAAA,CAC7B,CAAC,CAAA;IAAA,CACH,CAAC,CAAA;IAEJ,OAAO;QACL,KAAK,EAAE,GAAG,EAAE,CACV,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;YAC3C,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;oBAC7B,IAAI,MAAM,EAAE,CAAC;wBACX,OAAO,CAAC,GAAG,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBAClD,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;oBACxD,CAAC;gBAAA,CACF,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACxB,CAAC;iBAAM,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,WAAW,CAAA;gBACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;oBACtD,IAAI,MAAM,EAAE,CAAC;wBACX,OAAO,CAAC,GAAG,KAAK,MAAM,QAAQ,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACnE,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;oBACxD,CAAC;gBAAA,CACF,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;YAChD,CAAC;QAAA,CACF,CAAC;QACJ,IAAI,EAAE,GAAG,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,EAAE,CAAA;QAAA,CACf;KACF,CAAA;AAAA,CACF;AAED,MAAM,CAAC,MAAM,WAAW,GAKpB;IACF,SAAS,EAAE,sBAAsB,CAAC,EAAE;IACpC,WAAW;IACX,OAAO,CAAC,OAAO,EAAE;QACf,OAAO,uBAAuB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;IAAA,CACxD;CACF,CAAA"}
package/dist/server.d.ts CHANGED
@@ -13,6 +13,10 @@ export declare class WsTransportServer implements TransportWorker<ConnectionType
13
13
  start(hooks: TransportWorkerParams<ConnectionType.Bidirectional>): Promise<string>;
14
14
  stop(): Promise<void>;
15
15
  send(connectionId: string, buffer: ArrayBufferView): boolean;
16
+ close(connectionId: string, options?: {
17
+ code?: number;
18
+ reason?: string;
19
+ }): void;
16
20
  private createWsHooks;
17
21
  private createServer;
18
22
  }
package/dist/server.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ConnectionType, ProtocolVersion } from '@nmtjs/protocol';
2
2
  import { defineHooks } from 'crossws';
3
- import { InternalServerErrorHttpResponse, NotFoundHttpResponse, } from "./utils.js";
3
+ import { InternalServerErrorHttpResponse, NotFoundHttpResponse, } from './utils.js';
4
4
  export function createWSTransportWorker(adapterFactory, options) {
5
5
  return new WsTransportServer(adapterFactory, options);
6
6
  }
@@ -49,6 +49,18 @@ export class WsTransportServer {
49
49
  return false;
50
50
  }
51
51
  }
52
+ close(connectionId, options = {}) {
53
+ const peer = this.clients.get(connectionId);
54
+ if (!peer)
55
+ return;
56
+ this.clients.delete(connectionId);
57
+ try {
58
+ peer.close(options.code ?? 1001, options.reason ?? 'Closed');
59
+ }
60
+ catch (error) {
61
+ console.error(`Failed to close WebSocket connection ${connectionId}`, error);
62
+ }
63
+ }
52
64
  createWsHooks() {
53
65
  return defineHooks({
54
66
  upgrade: async (req) => {
@@ -84,7 +96,7 @@ export class WsTransportServer {
84
96
  this.clients.set(connectionId, peer);
85
97
  },
86
98
  message: async (peer, message) => {
87
- const data = message.arrayBuffer();
99
+ const data = message.arrayBuffer().slice();
88
100
  try {
89
101
  await this.params.onMessage({
90
102
  connectionId: peer.context.connectionId,
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Async, OneOf } from '@nmtjs/common';
1
+ import type { MaybePromise, OneOf } from '@nmtjs/common';
2
2
  import type { Hooks } from 'crossws';
3
3
  export type WsTransportServerRequest = {
4
4
  url: URL;
@@ -75,7 +75,7 @@ export type WsAdapterParams<R extends keyof WsTransportRuntimes = keyof WsTransp
75
75
  runtime?: WsTransportRuntimes[R];
76
76
  };
77
77
  export interface WsAdapterServer {
78
- stop: () => Async<any>;
79
- start: () => Async<string>;
78
+ stop: () => MaybePromise<any>;
79
+ start: () => MaybePromise<string>;
80
80
  }
81
81
  export type WsAdapterServerFactory<R extends keyof WsTransportRuntimes = keyof WsTransportRuntimes> = (params: WsAdapterParams<R>) => WsAdapterServer;
package/package.json CHANGED
@@ -1,31 +1,48 @@
1
1
  {
2
2
  "name": "@nmtjs/ws-transport",
3
+ "description": "WebSocket server transport for Neemata runtimes.",
3
4
  "type": "module",
4
5
  "exports": {
5
- ".": "./dist/index.js",
6
- "./bun": "./dist/runtimes/bun.js",
7
- "./deno": "./dist/runtimes/deno.js",
8
- "./node": "./dist/runtimes/node.js"
6
+ ".": {
7
+ "types": "./dist/index.d.ts",
8
+ "import": "./dist/index.js",
9
+ "module-sync": "./dist/index.js"
10
+ },
11
+ "./bun": {
12
+ "types": "./dist/runtimes/bun.d.ts",
13
+ "import": "./dist/runtimes/bun.js",
14
+ "module-sync": "./dist/runtimes/bun.js"
15
+ },
16
+ "./deno": {
17
+ "types": "./dist/runtimes/deno.d.ts",
18
+ "import": "./dist/runtimes/deno.js",
19
+ "module-sync": "./dist/runtimes/deno.js"
20
+ },
21
+ "./node": {
22
+ "types": "./dist/runtimes/node.d.ts",
23
+ "import": "./dist/runtimes/node.js",
24
+ "module-sync": "./dist/runtimes/node.js"
25
+ }
9
26
  },
10
27
  "dependencies": {
11
- "crossws": "0.4.1"
28
+ "crossws": "0.4.4"
12
29
  },
13
30
  "devDependencies": {
14
- "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.56.0",
15
- "@nmtjs/client": "0.15.0-beta.9",
16
- "@nmtjs/common": "0.15.0-beta.9",
17
- "@nmtjs/gateway": "0.15.0-beta.9",
18
- "@nmtjs/protocol": "0.15.0-beta.9"
31
+ "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.57.0",
32
+ "@nmtjs/common": "0.15.1",
33
+ "@nmtjs/gateway": "0.15.1",
34
+ "@nmtjs/client": "0.15.1",
35
+ "@nmtjs/protocol": "0.15.1"
19
36
  },
20
37
  "peerDependencies": {
21
38
  "@types/bun": "^1.3.0",
22
39
  "@types/deno": "^2.3.0",
23
40
  "@types/node": "^24",
24
- "uWebSockets.js": "^20.56.0",
25
- "@nmtjs/common": "0.15.0-beta.9",
26
- "@nmtjs/gateway": "0.15.0-beta.9",
27
- "@nmtjs/protocol": "0.15.0-beta.9",
28
- "@nmtjs/core": "0.15.0-beta.9"
41
+ "uWebSockets.js": "^20.57.0",
42
+ "@nmtjs/core": "0.15.1",
43
+ "@nmtjs/common": "0.15.1",
44
+ "@nmtjs/gateway": "0.15.1",
45
+ "@nmtjs/protocol": "0.15.1"
29
46
  },
30
47
  "peerDependenciesMeta": {
31
48
  "@types/bun": {
@@ -52,11 +69,8 @@
52
69
  "LICENSE.md",
53
70
  "README.md"
54
71
  ],
55
- "version": "0.15.0-beta.9",
72
+ "version": "0.15.1",
56
73
  "scripts": {
57
- "clean-build": "rm -rf ./dist",
58
- "build": "tsc --declaration --sourcemap",
59
- "dev": "tsc --watch",
60
- "type-check": "tsc --noEmit"
74
+ "clean-build": "rm -rf ./dist"
61
75
  }
62
76
  }
@@ -72,9 +72,9 @@ export const WsTransport: Transport<
72
72
  ConnectionType.Bidirectional,
73
73
  WsTransportOptions<'bun'>,
74
74
  typeof injectables,
75
- ProxyableTransportType.WebSocket
75
+ ProxyableTransportType.WS
76
76
  > = {
77
- proxyable: ProxyableTransportType.WebSocket,
77
+ proxyable: ProxyableTransportType.WS,
78
78
  injectables,
79
79
  factory(options) {
80
80
  return createWSTransportWorker(adapterFactory, options)
@@ -115,9 +115,9 @@ export const WsTransport: Transport<
115
115
  ConnectionType.Bidirectional,
116
116
  WsTransportOptions<'deno'>,
117
117
  typeof injectables,
118
- ProxyableTransportType.WebSocket
118
+ ProxyableTransportType.WS
119
119
  > = {
120
- proxyable: ProxyableTransportType.WebSocket,
120
+ proxyable: ProxyableTransportType.WS,
121
121
  injectables,
122
122
  factory(options) {
123
123
  return createWSTransportWorker(adapterFactory, options)
@@ -73,9 +73,9 @@ export const WsTransport: Transport<
73
73
  ConnectionType.Bidirectional,
74
74
  WsTransportOptions<'node'>,
75
75
  typeof injectables,
76
- ProxyableTransportType.WebSocket
76
+ ProxyableTransportType.WS
77
77
  > = {
78
- proxyable: ProxyableTransportType.WebSocket,
78
+ proxyable: ProxyableTransportType.WS,
79
79
  injectables,
80
80
  factory(options) {
81
81
  return createWSTransportWorker(adapterFactory, options)
package/src/server.ts CHANGED
@@ -77,6 +77,23 @@ export class WsTransportServer
77
77
  }
78
78
  }
79
79
 
80
+ close(
81
+ connectionId: string,
82
+ options: { code?: number; reason?: string } = {},
83
+ ) {
84
+ const peer = this.clients.get(connectionId)
85
+ if (!peer) return
86
+ this.clients.delete(connectionId)
87
+ try {
88
+ peer.close(options.code ?? 1001, options.reason ?? 'Closed')
89
+ } catch (error) {
90
+ console.error(
91
+ `Failed to close WebSocket connection ${connectionId}`,
92
+ error,
93
+ )
94
+ }
95
+ }
96
+
80
97
  private createWsHooks(): Hooks {
81
98
  return defineHooks({
82
99
  upgrade: async (req) => {
@@ -118,7 +135,7 @@ export class WsTransportServer
118
135
  this.clients.set(connectionId, peer)
119
136
  },
120
137
  message: async (peer, message) => {
121
- const data = message.arrayBuffer() as ArrayBuffer
138
+ const data = message.arrayBuffer().slice() as ArrayBuffer
122
139
  try {
123
140
  await this.params.onMessage({
124
141
  connectionId: peer.context.connectionId,
package/src/types.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Async, OneOf } from '@nmtjs/common'
1
+ import type { MaybePromise, OneOf } from '@nmtjs/common'
2
2
  import type { Hooks } from 'crossws'
3
3
 
4
4
  export type WsTransportServerRequest = {
@@ -114,8 +114,8 @@ export type WsAdapterParams<
114
114
  }
115
115
 
116
116
  export interface WsAdapterServer {
117
- stop: () => Async<any>
118
- start: () => Async<string>
117
+ stop: () => MaybePromise<any>
118
+ start: () => MaybePromise<string>
119
119
  }
120
120
 
121
121
  export type WsAdapterServerFactory<