@mstuercke/api-utils 4.0.0 → 4.2.0

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 (37) hide show
  1. package/dist/rest/server/RestApi.d.ts.map +1 -1
  2. package/dist/rest/server/RestApi.js +1 -0
  3. package/dist/rest/server/RestApi.js.map +1 -1
  4. package/dist/rest/server/buildRestApiRouteHandler.d.ts.map +1 -1
  5. package/dist/ws/client/useWsApi.d.ts +9 -9
  6. package/dist/ws/client/useWsApi.d.ts.map +1 -1
  7. package/dist/ws/client/useWsApi.js +1 -1
  8. package/dist/ws/client/useWsApi.js.map +1 -1
  9. package/dist/ws/server/WsApi.d.ts +2 -3
  10. package/dist/ws/server/WsApi.d.ts.map +1 -1
  11. package/dist/ws/server/WsApi.js +14 -6
  12. package/dist/ws/server/WsApi.js.map +1 -1
  13. package/dist/ws/server/buildWsApiRouteHandler.d.ts +2 -3
  14. package/dist/ws/server/buildWsApiRouteHandler.d.ts.map +1 -1
  15. package/dist/ws/server/buildWsApiRouteHandler.js.map +1 -1
  16. package/dist/ws/server/closeConnection.d.ts.map +1 -1
  17. package/dist/ws/server/closeConnection.js +3 -2
  18. package/dist/ws/server/closeConnection.js.map +1 -1
  19. package/dist/ws/server/getApiGatewayManagementApiClient.d.ts +3 -0
  20. package/dist/ws/server/getApiGatewayManagementApiClient.d.ts.map +1 -0
  21. package/dist/ws/server/getApiGatewayManagementApiClient.js +10 -0
  22. package/dist/ws/server/getApiGatewayManagementApiClient.js.map +1 -0
  23. package/dist/ws/server/sendResponse.d.ts +1 -1
  24. package/dist/ws/server/sendResponse.d.ts.map +1 -1
  25. package/dist/ws/server/sendResponse.js +3 -2
  26. package/dist/ws/server/sendResponse.js.map +1 -1
  27. package/dist/ws/types/WsApiRequestHandler.d.ts +1 -1
  28. package/dist/ws/types/WsApiRequestHandler.d.ts.map +1 -1
  29. package/dist/ws/types/WsApiRoute.d.ts +1 -1
  30. package/dist/ws/types/WsApiRoute.d.ts.map +1 -1
  31. package/dist/ws/types/WsApiRouteHandler.d.ts +1 -1
  32. package/dist/ws/types/WsApiRouteHandler.d.ts.map +1 -1
  33. package/dist/ws/types/common/WsApiAction.d.ts +1 -1
  34. package/dist/ws/types/common/WsApiAction.d.ts.map +1 -1
  35. package/dist/ws/types/common/WsApiRequest.d.ts +4 -1
  36. package/dist/ws/types/common/WsApiRequest.d.ts.map +1 -1
  37. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"RestApi.d.ts","sourceRoot":"","sources":["../../../src/rest/server/RestApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAC;AAEvE,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAUlB,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CACpD,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,CAC5B,CAAA;AAOD,qBAAa,OAAO;IAClB,OAAO,CAAC,aAAa,CAAgC;IAErD,eAAe,CACX,UAAU,SAAS,cAAc,EACjC,WAAW,SAAS,eAAe,EACnC,cAAc,SAAS,kBAAkB,EACzC,WAAW,SAAS,eAAe,EACnC,YAAY,SAAS,gBAAgB,EACrC,qBAAqB,SAAS,yBAAyB,EACvD,YAAY,EAAE,mBAAmB,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAAC;IAK1H,aAAa,CAAC,UAAU,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAwDlI,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,kBAAkB;CAc3B"}
1
+ {"version":3,"file":"RestApi.d.ts","sourceRoot":"","sources":["../../../src/rest/server/RestApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAC;AAGvE,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAUlB,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CACpD,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,CAC5B,CAAA;AAOD,qBAAa,OAAO;IAClB,OAAO,CAAC,aAAa,CAAgC;IAErD,eAAe,CACX,UAAU,SAAS,cAAc,EACjC,WAAW,SAAS,eAAe,EACnC,cAAc,SAAS,kBAAkB,EACzC,WAAW,SAAS,eAAe,EACnC,YAAY,SAAS,gBAAgB,EACrC,qBAAqB,SAAS,yBAAyB,EACvD,YAAY,EAAE,mBAAmB,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAAC;IAK1H,aAAa,CAAC,UAAU,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAwDlI,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,kBAAkB;CAc3B"}
@@ -1,3 +1,4 @@
1
+ import { URL } from 'node:url';
1
2
  import { match } from 'path-to-regexp';
2
3
  const DEFAULT_RESPONSE_HEADERS = {
3
4
  'Content-Type': 'application/json; charset=utf-8',
@@ -1 +1 @@
1
- {"version":3,"file":"RestApi.js","sourceRoot":"","sources":["../../../src/rest/server/RestApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RestApi.js","sourceRoot":"","sources":["../../../src/rest/server/RestApi.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildRestApiRouteHandler.d.ts","sourceRoot":"","sources":["../../../src/rest/server/buildRestApiRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EAMnB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,wBAAwB,smBAanC,CAAC"}
1
+ {"version":3,"file":"buildRestApiRouteHandler.d.ts","sourceRoot":"","sources":["../../../src/rest/server/buildRestApiRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EAMnB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,wBAAwB,0QAQ1B,aAAa,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAAC,kBAC9F,sBAAsB,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAAC,KACjI,oBAAoB,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAG9G,CAAC"}
@@ -1,18 +1,18 @@
1
- import { WsApiRequest, WsApiResponse, WsApiRoute } from '../types';
2
- type WsApiConnection<Request extends WsApiRequest> = {
1
+ import { WsApiAction, WsApiRequest, WsApiResponse, WsApiRoute } from '../types';
2
+ type WsApiConnection<Action extends WsApiAction, Request extends WsApiRequest<Action>> = {
3
3
  disconnect: () => void;
4
4
  sendRequest: (request: Request) => void;
5
5
  };
6
- export type WsApiOptions<Request extends WsApiRequest, Response extends WsApiResponse> = {
7
- onConnected?: (connection: WsApiConnection<Request>) => void;
8
- onResponse?: (response: Response, connection: WsApiConnection<Request>) => void;
9
- onError?: (error: unknown, connection: WsApiConnection<Request>) => void;
6
+ export type WsApiOptions<Action extends WsApiAction, Request extends WsApiRequest<Action>, Response extends WsApiResponse> = {
7
+ onConnected?: (connection: WsApiConnection<Action, Request>) => void;
8
+ onResponse?: (response: Response, connection: WsApiConnection<Action, Request>) => void;
9
+ onError?: (error: unknown, connection: WsApiConnection<Action, Request>) => void;
10
10
  onDisconnected?: () => void;
11
11
  };
12
- export declare const useWsApi: <Action extends string, Request_1 extends object, Response_1 extends object>(wsApiUrl: string, route: WsApiRoute<Action, Request_1, Response_1> | undefined) => {
13
- connect: (options: WsApiOptions<Request_1, Response_1>) => Promise<void>;
12
+ export declare const useWsApi: <Action extends string, Request extends WsApiRequest<Action>, Response extends object>(wsApiUrl: string, route: WsApiRoute<Action, Request, Response> | undefined) => {
13
+ connect: (options: WsApiOptions<Action, Request, Response>) => Promise<void>;
14
14
  connected: boolean;
15
- connection: WsApiConnection<Request_1>;
15
+ connection: WsApiConnection<Action, Request>;
16
16
  error: boolean;
17
17
  disconnect: () => void | undefined;
18
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useWsApi.d.ts","sourceRoot":"","sources":["../../../src/ws/client/useWsApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,YAAY,EAAE,aAAa,EAAE,UAAU,EAAC,MAAM,UAAU,CAAC;AAE9E,KAAK,eAAe,CAAC,OAAO,SAAS,YAAY,IAAI;IACnD,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,YAAY,EAAE,QAAQ,SAAS,aAAa,IAAI;IACvF,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;IAC5D,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;IAC/E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;IACxE,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;CAC5B,CAAA;AACD,eAAO,MAAM,QAAQ,yFAIT,MAAM;;;;;;CA+DjB,CAAC"}
1
+ {"version":3,"file":"useWsApi.d.ts","sourceRoot":"","sources":["../../../src/ws/client/useWsApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAC,MAAM,UAAU,CAAC;AAE9E,KAAK,eAAe,CAChB,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,CAAC,MAAM,CAAC,IACpC;IACF,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,YAAY,CACpB,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,CAAC,MAAM,CAAC,EACpC,QAAQ,SAAS,aAAa,IAAI;IACpC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IACpE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IACvF,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IAChF,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;CAC5B,CAAA;AACD,eAAO,MAAM,QAAQ,mGAIT,MAAM,SAAS,WAAW,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,SAAS;uBAsB9B,aAAa,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;;;;;CAyCpF,CAAC"}
@@ -9,8 +9,8 @@ export const useWsApi = (wsApiUrl, route) => {
9
9
  if (!webSocket.current)
10
10
  throw 'Not connected';
11
11
  webSocket.current.send(JSON.stringify({
12
- action: route.action,
13
12
  ...request,
13
+ action: route.action,
14
14
  }));
15
15
  }, [route]);
16
16
  const disconnect = useCallback(() => webSocket.current?.close(), [webSocket]);
@@ -1 +1 @@
1
- {"version":3,"file":"useWsApi.js","sourceRoot":"","sources":["../../../src/ws/client/useWsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAc7D,MAAM,CAAC,MAAM,QAAQ,GAAG,CAItB,QAAgB,EAAE,KAAwD,EAAE,EAAE;IAC9E,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IACnD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,MAAM,EAAa,CAAC;IAEtC,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,OAAgB,EAAE,EAAE;QACnD,IAAI,CAAC,KAAK;YAAE,MAAM,WAAW,CAAC;QAC9B,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,MAAM,eAAe,CAAC;QAE9C,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YACpC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,GAAG,OAAO;SACX,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACZ,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9E,MAAM,UAAU,GAA6B,OAAO,CAAC,GAAG,EAAE;QACxD,OAAO;YACL,UAAU;YACV,WAAW;SACZ,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IAE9B,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,OAAwC,EAAE,EAAE;QAC7E,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACnC,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC;gBACjI,MAAM,mBAAmB,CAAC;YAE5B,SAAS,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;YAE5C,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE;gBAC9B,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,OAAO,EAAE,WAAW,EAAE,CAAC,UAAU,CAAC,CAAC;YACrC,CAAC,CAAC;YAEF,SAAS,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,EAAE,EAAE;gBACnC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI;oBAC9B,OAAO;gBACT,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAc,CAAC,EAAE,UAAU,CAAC,CAAC;YACnE,CAAC,CAAC;YAEF,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;gBACpC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACxC,CAAC,CAAC;YAEF,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE;gBAC/B,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;gBAC5B,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;gBAC9B,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAE3B,OAAO;QACL,OAAO;QACP,SAAS;QACT,UAAU;QACV,KAAK;QACL,UAAU;KACX,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"useWsApi.js","sourceRoot":"","sources":["../../../src/ws/client/useWsApi.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { APIGatewayProxyEvent, APIGatewayProxyResult } from 'aws-lambda';
2
- import { WsApiAction, WsApiRequest, WsApiResponse } from '../types';
3
- import { WsApiRouteHandler } from '../types/WsApiRouteHandler';
2
+ import { WsApiAction, WsApiRequest, WsApiResponse, WsApiRouteHandler } from '../types';
4
3
  export declare class WsApi {
5
4
  private readonly routeHandlers;
6
- addRouteHandler<Action extends WsApiAction, Request extends WsApiRequest, Response extends WsApiResponse>(routeHandler: WsApiRouteHandler<Action, Request, Response>): this;
5
+ addRouteHandler<Action extends WsApiAction, Request extends WsApiRequest<Action>, Response extends WsApiResponse>(routeHandler: WsApiRouteHandler<Action, Request, Response>): this;
7
6
  handleRequest(event: APIGatewayProxyEvent): Promise<APIGatewayProxyResult>;
8
7
  }
9
8
  //# sourceMappingURL=WsApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WsApi.d.ts","sourceRoot":"","sources":["../../../src/ws/server/WsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAC;AACvE,OAAO,EAAC,WAAW,EAAmB,YAAY,EAAuB,aAAa,EAAC,MAAM,UAAU,CAAC;AACxG,OAAO,EAAC,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AAI7D,qBAAa,KAAK;IAEhB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG5B;IAEF,eAAe,CACX,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,EAC5B,QAAQ,SAAS,aAAa,EAChC,YAAY,EAAE,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;IAKtD,aAAa,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CA6BjF"}
1
+ {"version":3,"file":"WsApi.d.ts","sourceRoot":"","sources":["../../../src/ws/server/WsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAC;AACvE,OAAO,EACL,WAAW,EAEX,YAAY,EAEZ,aAAa,EACb,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAIlB,qBAAa,KAAK;IAEhB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG5B;IAEF,eAAe,CACX,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,CAAC,MAAM,CAAC,EACpC,QAAQ,SAAS,aAAa,EAChC,YAAY,EAAE,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;IAKtD,aAAa,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAqCjF"}
@@ -12,15 +12,23 @@ export class WsApi {
12
12
  }
13
13
  async handleRequest(event) {
14
14
  const { body } = event;
15
- const { connectionId, domainName, stage, routeKey: action } = event.requestContext;
16
- if (!action)
17
- throw 'No routeKey/action';
15
+ const { connectionId, domainName, stage, routeKey } = event.requestContext;
16
+ if (!routeKey)
17
+ throw 'No routeKey';
18
18
  if (!connectionId)
19
19
  throw 'No connectionId';
20
20
  if (!domainName)
21
21
  throw 'No domainName';
22
- if (!body && !['$connect', '$disconnect'].includes(action))
23
- throw 'No body';
22
+ let action = routeKey;
23
+ let request = { action: routeKey };
24
+ if (routeKey === '$default') {
25
+ if (!body)
26
+ throw 'No body';
27
+ request = JSON.parse(body);
28
+ action = request.action;
29
+ if (!action)
30
+ throw 'No routeKey/action';
31
+ }
24
32
  const endpoint = `https://${domainName}/${stage}`;
25
33
  const connection = { endpoint, connectionId };
26
34
  const requestHandler = this.routeHandlers[action];
@@ -28,7 +36,7 @@ export class WsApi {
28
36
  await closeConnection(connection);
29
37
  throw `No requestHandler found for action ${action}`;
30
38
  }
31
- await requestHandler(body && JSON.parse(body), {
39
+ await requestHandler(request, {
32
40
  connection,
33
41
  sendResponse: async (response) => await sendResponse(connection, response),
34
42
  closeConnection: async () => await closeConnection(connection),
@@ -1 +1 @@
1
- {"version":3,"file":"WsApi.js","sourceRoot":"","sources":["../../../src/ws/server/WsApi.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,MAAM,OAAO,KAAK;IAChB,8DAA8D;IAC7C,aAAa,GAA4D;QACxF,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QACnC,aAAa,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;KACvC,CAAC;IAEF,eAAe,CAIb,YAA0D;QAC1D,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,cAAc,CAAC;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAA2B;QAC7C,MAAM,EAAC,IAAI,EAAC,GAAG,KAAK,CAAC;QACrB,MAAM,EAAC,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAC,GAAG,KAAK,CAAC,cAAc,CAAC;QAEjF,IAAI,CAAC,MAAM;YAAE,MAAM,oBAAoB,CAAC;QACxC,IAAI,CAAC,YAAY;YAAE,MAAM,iBAAiB,CAAC;QAC3C,IAAI,CAAC,UAAU;YAAE,MAAM,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,SAAS,CAAC;QAE5E,MAAM,QAAQ,GAAG,WAAW,UAAU,IAAI,KAAK,EAAE,CAAC;QAClD,MAAM,UAAU,GAAoB,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC;QAE7D,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;YAClC,MAAM,sCAAsC,MAAM,EAAE,CAAC;QACvD,CAAC;QAED,MAAM,cAAc,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC7C,UAAU;YACV,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,MAAM,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC;YAC1E,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,CAAC,UAAU,CAAC;SAC/D,CAAC,CAAC;QAEH,OAAO;YACL,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,EAAE;SACT,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"WsApi.js","sourceRoot":"","sources":["../../../src/ws/server/WsApi.ts"],"names":[],"mappings":"AASA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,MAAM,OAAO,KAAK;IAChB,8DAA8D;IAC7C,aAAa,GAAkE;QAC9F,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QACnC,aAAa,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;KACvC,CAAC;IAEF,eAAe,CAIb,YAA0D;QAC1D,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,cAAc,CAAC;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAA2B;QAC7C,MAAM,EAAC,IAAI,EAAC,GAAG,KAAK,CAAC;QACrB,MAAM,EAAC,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,KAAK,CAAC,cAAc,CAAC;QAEzE,IAAI,CAAC,QAAQ;YAAE,MAAM,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY;YAAE,MAAM,iBAAiB,CAAC;QAC3C,IAAI,CAAC,UAAU;YAAE,MAAM,eAAe,CAAC;QAEvC,IAAI,MAAM,GAAgB,QAAQ,CAAC;QACnC,IAAI,OAAO,GAA8B,EAAC,MAAM,EAAE,QAAQ,EAAC,CAAC;QAC5D,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI;gBAAE,MAAM,SAAS,CAAC;YAC3B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA8B,CAAC;YACxD,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACxB,IAAI,CAAC,MAAM;gBAAE,MAAM,oBAAoB,CAAC;QAC1C,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,UAAU,IAAI,KAAK,EAAE,CAAC;QAClD,MAAM,UAAU,GAAoB,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC;QAE7D,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;YAClC,MAAM,sCAAsC,MAAM,EAAE,CAAC;QACvD,CAAC;QAED,MAAM,cAAc,CAAC,OAAO,EAAE;YAC5B,UAAU;YACV,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,MAAM,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC;YAC1E,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,CAAC,UAAU,CAAC;SAC/D,CAAC,CAAC;QAEH,OAAO;YACL,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,EAAE;SACT,CAAC;IACJ,CAAC;CACF"}
@@ -1,4 +1,3 @@
1
- import { WsApiRequestHandler, WsApiRoute } from '../types';
2
- import { WsApiRouteHandler } from '../types/WsApiRouteHandler';
3
- export declare const buildWsApiRouteHandler: <Action extends string, Request_1 extends object, Response_1 extends object>(route: WsApiRoute<Action, Request_1, Response_1>, requestHandler: WsApiRequestHandler<Action, Request_1, Response_1>) => WsApiRouteHandler<Action, Request_1, Response_1>;
1
+ import { WsApiRequest, WsApiRequestHandler, WsApiRoute, WsApiRouteHandler } from '../types';
2
+ export declare const buildWsApiRouteHandler: <Action extends string, Request extends WsApiRequest<Action>, Response extends object>(route: WsApiRoute<Action, Request, Response>, requestHandler: WsApiRequestHandler<Action, Request, Response>) => WsApiRouteHandler<Action, Request, Response>;
4
3
  //# sourceMappingURL=buildWsApiRouteHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildWsApiRouteHandler.d.ts","sourceRoot":"","sources":["../../../src/ws/server/buildWsApiRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAiB,UAAU,EAAC,MAAM,UAAU,CAAC;AACnG,OAAO,EAAC,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AAE7D,eAAO,MAAM,sBAAsB,wPAYlC,CAAC"}
1
+ {"version":3,"file":"buildWsApiRouteHandler.d.ts","sourceRoot":"","sources":["../../../src/ws/server/buildWsApiRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,mBAAmB,EAAiB,UAAU,EAAE,iBAAiB,EAAC,MAAM,UAAU,CAAC;AAEtH,eAAO,MAAM,sBAAsB,gGAKxB,WAAW,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,kBAC5B,oBAAoB,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,KAC/D,kBAAkB,MAAM,EAAE,OAAO,EAAE,QAAQ,CAK7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildWsApiRouteHandler.js","sourceRoot":"","sources":["../../../src/ws/server/buildWsApiRouteHandler.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAKlC,KAA4C,EAC5C,cAA8D,EAClB,EAAE;IAChD,OAAO;QACL,KAAK;QACL,cAAc;KACf,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"buildWsApiRouteHandler.js","sourceRoot":"","sources":["../../../src/ws/server/buildWsApiRouteHandler.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAKlC,KAA4C,EAC5C,cAA8D,EAClB,EAAE;IAChD,OAAO;QACL,KAAK;QACL,cAAc;KACf,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"closeConnection.d.ts","sourceRoot":"","sources":["../../../src/ws/server/closeConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,UAAU,CAAC;AAEzC,eAAO,MAAM,eAAe,+BAAoC,eAAe,kBAW9E,CAAC"}
1
+ {"version":3,"file":"closeConnection.d.ts","sourceRoot":"","sources":["../../../src/ws/server/closeConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,UAAU,CAAC;AAGzC,eAAO,MAAM,eAAe,+BAAoC,eAAe,kBAW9E,CAAC"}
@@ -1,7 +1,8 @@
1
- import { ApiGatewayManagementApiClient, DeleteConnectionCommand } from '@aws-sdk/client-apigatewaymanagementapi';
1
+ import { DeleteConnectionCommand } from '@aws-sdk/client-apigatewaymanagementapi';
2
+ import { getApiGatewayManagementApiClient } from './getApiGatewayManagementApiClient';
2
3
  export const closeConnection = async ({ endpoint, connectionId }) => {
3
4
  try {
4
- await new ApiGatewayManagementApiClient({ endpoint }).send(new DeleteConnectionCommand({ ConnectionId: connectionId }));
5
+ await getApiGatewayManagementApiClient(endpoint).send(new DeleteConnectionCommand({ ConnectionId: connectionId }));
5
6
  }
6
7
  catch (err) {
7
8
  if (err && typeof err === 'object' && 'name' in err && err?.name === 'GoneException')
@@ -1 +1 @@
1
- {"version":3,"file":"closeConnection.js","sourceRoot":"","sources":["../../../src/ws/server/closeConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAE,uBAAuB,EAAC,MAAM,yCAAyC,CAAC;AAG/G,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAkB,EAAE,EAAE;IACjF,IAAI,CAAC;QACH,MAAM,IAAI,6BAA6B,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC,IAAI,CACpD,IAAI,uBAAuB,CAAC,EAAC,YAAY,EAAE,YAAY,EAAC,CAAC,CAC5D,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,IAAI,KAAK,eAAe;YAClF,OAAO;QAET,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"closeConnection.js","sourceRoot":"","sources":["../../../src/ws/server/closeConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,uBAAuB,EAAC,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAC;AAEpF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAkB,EAAE,EAAE;IACjF,IAAI,CAAC;QACH,MAAM,gCAAgC,CAAC,QAAQ,CAAC,CAAC,IAAI,CACjD,IAAI,uBAAuB,CAAC,EAAC,YAAY,EAAE,YAAY,EAAC,CAAC,CAC5D,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,IAAI,KAAK,eAAe;YAClF,OAAO;QAET,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ApiGatewayManagementApiClient } from '@aws-sdk/client-apigatewaymanagementapi';
2
+ export declare const getApiGatewayManagementApiClient: (endpoint: string) => ApiGatewayManagementApiClient;
3
+ //# sourceMappingURL=getApiGatewayManagementApiClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getApiGatewayManagementApiClient.d.ts","sourceRoot":"","sources":["../../../src/ws/server/getApiGatewayManagementApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,yCAAyC,CAAC;AAGtF,eAAO,MAAM,gCAAgC,aAAc,MAAM,KAAG,6BAOnE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { ApiGatewayManagementApiClient } from '@aws-sdk/client-apigatewaymanagementapi';
2
+ const clients = {};
3
+ export const getApiGatewayManagementApiClient = (endpoint) => {
4
+ if (clients[endpoint])
5
+ return clients[endpoint];
6
+ const client = new ApiGatewayManagementApiClient({ endpoint });
7
+ clients[endpoint] = client;
8
+ return client;
9
+ };
10
+ //# sourceMappingURL=getApiGatewayManagementApiClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getApiGatewayManagementApiClient.js","sourceRoot":"","sources":["../../../src/ws/server/getApiGatewayManagementApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,yCAAyC,CAAC;AAEtF,MAAM,OAAO,GAA0D,EAAE,CAAC;AAC1E,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,QAAgB,EAAiC,EAAE;IAClG,IAAI,OAAO,CAAC,QAAQ,CAAC;QACnB,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE3B,MAAM,MAAM,GAAG,IAAI,6BAA6B,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;IAC3B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { WsApiConnection } from '../types';
2
- export declare const sendResponse: <Response_1 extends object>({ endpoint, connectionId, }: WsApiConnection, response: Response_1) => Promise<void>;
2
+ export declare const sendResponse: <Response extends object>({ endpoint, connectionId, }: WsApiConnection, response: Response) => Promise<void>;
3
3
  //# sourceMappingURL=sendResponse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendResponse.d.ts","sourceRoot":"","sources":["../../../src/ws/server/sendResponse.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAgB,MAAM,UAAU,CAAC;AAExD,eAAO,MAAM,YAAY,2DAKpB,eAAe,2BAAuB,QAAQ,IAAI,CAOtD,CAAC"}
1
+ {"version":3,"file":"sendResponse.d.ts","sourceRoot":"","sources":["../../../src/ws/server/sendResponse.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAgB,MAAM,UAAU,CAAC;AAGxD,eAAO,MAAM,YAAY,yDAKpB,eAAe,YAAY,QAAQ,KAAG,QAAQ,IAAI,CAOtD,CAAC"}
@@ -1,6 +1,7 @@
1
- import { ApiGatewayManagementApiClient, PostToConnectionCommand } from '@aws-sdk/client-apigatewaymanagementapi';
1
+ import { PostToConnectionCommand } from '@aws-sdk/client-apigatewaymanagementapi';
2
+ import { getApiGatewayManagementApiClient } from './getApiGatewayManagementApiClient';
2
3
  export const sendResponse = async ({ endpoint, connectionId, }, response) => {
3
- await new ApiGatewayManagementApiClient({ endpoint }).send(new PostToConnectionCommand({
4
+ await getApiGatewayManagementApiClient(endpoint).send(new PostToConnectionCommand({
4
5
  ConnectionId: connectionId,
5
6
  Data: JSON.stringify(response),
6
7
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"sendResponse.js","sourceRoot":"","sources":["../../../src/ws/server/sendResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAE,uBAAuB,EAAC,MAAM,yCAAyC,CAAC;AAG/G,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAE/B,EACE,QAAQ,EACR,YAAY,GACI,EAAE,QAAkB,EAAiB,EAAE;IACzD,MAAM,IAAI,6BAA6B,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC,IAAI,CACpD,IAAI,uBAAuB,CAAC;QAC1B,YAAY,EAAE,YAAY;QAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/B,CAAC,CACL,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"sendResponse.js","sourceRoot":"","sources":["../../../src/ws/server/sendResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,uBAAuB,EAAC,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAC;AAEpF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAE/B,EACE,QAAQ,EACR,YAAY,GACI,EAAE,QAAkB,EAAiB,EAAE;IACzD,MAAM,gCAAgC,CAAC,QAAQ,CAAC,CAAC,IAAI,CACjD,IAAI,uBAAuB,CAAC;QAC1B,YAAY,EAAE,YAAY;QAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/B,CAAC,CACL,CAAC;AACJ,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { OmitNever } from '../../types/OmitNever';
2
2
  import { WsApiConnection } from './WsApiConnection';
3
3
  import { WsApiAction, WsApiRequest, WsApiResponse } from './common';
4
- export type WsApiRequestHandler<Action extends WsApiAction, Request extends WsApiRequest, Response extends WsApiResponse> = (request: Request & {
4
+ export type WsApiRequestHandler<Action extends WsApiAction, Request extends WsApiRequest<Action>, Response extends WsApiResponse> = (request: Request & {
5
5
  action: Action;
6
6
  }, responseActions: OmitNever<{
7
7
  connection: WsApiConnection;
@@ -1 +1 @@
1
- {"version":3,"file":"WsApiRequestHandler.d.ts","sourceRoot":"","sources":["../../../src/ws/types/WsApiRequestHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAElE,MAAM,MAAM,mBAAmB,CAC3B,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,EAC5B,QAAQ,SAAS,aAAa,IAC9B,CAAC,OAAO,EAAE,OAAO,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,eAAe,EAAE,SAAS,CAAC;IACrE,UAAU,EAAE,eAAe,CAAA;IAC3B,YAAY,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxF,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"WsApiRequestHandler.d.ts","sourceRoot":"","sources":["../../../src/ws/types/WsApiRequestHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAElE,MAAM,MAAM,mBAAmB,CAC3B,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,CAAC,MAAM,CAAC,EACpC,QAAQ,SAAS,aAAa,IAC9B,CAAC,OAAO,EAAE,OAAO,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,eAAe,EAAE,SAAS,CAAC;IACrE,UAAU,EAAE,eAAe,CAAA;IAC3B,YAAY,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxF,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { WsApiAction, WsApiRequest, WsApiResponse } from './common';
2
- export type WsApiRoute<Action extends WsApiAction, Request extends WsApiRequest, Response extends WsApiResponse> = {
2
+ export type WsApiRoute<Action extends WsApiAction, Request extends WsApiRequest<Action>, Response extends WsApiResponse> = {
3
3
  action: Action;
4
4
  __types?: {
5
5
  Request: Request;
@@ -1 +1 @@
1
- {"version":3,"file":"WsApiRoute.d.ts","sourceRoot":"","sources":["../../../src/ws/types/WsApiRoute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAElE,MAAM,MAAM,UAAU,CAClB,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,EAC5B,QAAQ,SAAS,aAAa,IAC9B;IACF,MAAM,EAAE,MAAM,CAAA;IAGd,OAAO,CAAC,EAAE;QACR,OAAO,EAAE,OAAO,CAAA;QAChB,QAAQ,EAAE,QAAQ,CAAA;KACnB,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"WsApiRoute.d.ts","sourceRoot":"","sources":["../../../src/ws/types/WsApiRoute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAElE,MAAM,MAAM,UAAU,CAClB,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,CAAC,MAAM,CAAC,EACpC,QAAQ,SAAS,aAAa,IAC9B;IACF,MAAM,EAAE,MAAM,CAAA;IAGd,OAAO,CAAC,EAAE;QACR,OAAO,EAAE,OAAO,CAAA;QAChB,QAAQ,EAAE,QAAQ,CAAA;KACnB,CAAC;CACH,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { WsApiRequestHandler } from './WsApiRequestHandler';
2
2
  import { WsApiRoute } from './WsApiRoute';
3
3
  import { WsApiAction, WsApiRequest, WsApiResponse } from './common';
4
- export type WsApiRouteHandler<Action extends WsApiAction, Request extends WsApiRequest, Response extends WsApiResponse> = {
4
+ export type WsApiRouteHandler<Action extends WsApiAction, Request extends WsApiRequest<Action>, Response extends WsApiResponse> = {
5
5
  route: WsApiRoute<Action, Request, Response>;
6
6
  requestHandler: WsApiRequestHandler<Action, Request, Response>;
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"WsApiRouteHandler.d.ts","sourceRoot":"","sources":["../../../src/ws/types/WsApiRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAElE,MAAM,MAAM,iBAAiB,CACzB,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,EAC5B,QAAQ,SAAS,aAAa,IAC9B;IACF,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,cAAc,EAAE,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;CAC/D,CAAA"}
1
+ {"version":3,"file":"WsApiRouteHandler.d.ts","sourceRoot":"","sources":["../../../src/ws/types/WsApiRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAElE,MAAM,MAAM,iBAAiB,CACzB,MAAM,SAAS,WAAW,EAC1B,OAAO,SAAS,YAAY,CAAC,MAAM,CAAC,EACpC,QAAQ,SAAS,aAAa,IAC9B;IACF,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,cAAc,EAAE,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;CAC/D,CAAA"}
@@ -1,2 +1,2 @@
1
- export type WsApiAction = '$connect' | '$disconnect' | '$default' | string;
1
+ export type WsApiAction = '$connect' | '$disconnect' | string;
2
2
  //# sourceMappingURL=WsApiAction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WsApiAction.d.ts","sourceRoot":"","sources":["../../../../src/ws/types/common/WsApiAction.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,CAAA"}
1
+ {"version":3,"file":"WsApiAction.d.ts","sourceRoot":"","sources":["../../../../src/ws/types/common/WsApiAction.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,aAAa,GAAG,MAAM,CAAA"}
@@ -1,2 +1,5 @@
1
- export type WsApiRequest = object;
1
+ import { WsApiAction } from './WsApiAction';
2
+ export type WsApiRequest<Action extends WsApiAction> = {
3
+ action: Action;
4
+ };
2
5
  //# sourceMappingURL=WsApiRequest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WsApiRequest.d.ts","sourceRoot":"","sources":["../../../../src/ws/types/common/WsApiRequest.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAA"}
1
+ {"version":3,"file":"WsApiRequest.d.ts","sourceRoot":"","sources":["../../../../src/ws/types/common/WsApiRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,MAAM,MAAM,YAAY,CAAC,MAAM,SAAS,WAAW,IAAI;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mstuercke/api-utils",
3
- "version": "4.0.0",
3
+ "version": "4.2.0",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist/**/*.js",
@@ -61,7 +61,7 @@
61
61
  "devDependencies": {
62
62
  "@mstuercke/bun-utils": "5.0.4",
63
63
  "@types/aws-lambda": "^8.10.133",
64
- "@types/bun": "^1.0.5",
64
+ "@types/bun": "^1.0.11",
65
65
  "@types/path-to-regexp": "^1.7.0",
66
66
  "@types/react": "^18.2.33",
67
67
  "typescript": "^5.3.3"