@pathscale/wss-adapter 1.0.3 → 1.0.4

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.
@@ -1,72 +1,77 @@
1
1
  interface IService {
2
- remote: string;
3
- methods: {
4
- [methodCode: string]: {
5
- name: string;
6
- parameters: string[];
7
- };
8
- };
2
+ remote: string
3
+ methods: {
4
+ [methodCode: string]: {
5
+ name: string
6
+ parameters: string[]
7
+ }
8
+ }
9
9
  }
10
10
  interface IServiceConfig extends IService {
11
- onDisconnect: (event: {
12
- code: number;
13
- reason: string;
14
- wasClean: boolean;
15
- }) => void | null;
11
+ onDisconnect: (event: {
12
+ code: number
13
+ reason: string
14
+ wasClean: boolean
15
+ }) => void | null
16
16
  }
17
17
  interface IServices {
18
- [serviceName: string]: IServiceConfig;
18
+ [serviceName: string]: IServiceConfig
19
19
  }
20
20
  interface IErrors {
21
- [errorCode: number]: string;
21
+ [errorCode: number]: string
22
22
  }
23
23
  interface IConfiguration {
24
- timeout: number;
25
- services: IServices;
26
- errors: IErrors;
27
- onError: (error: {
28
- error: number;
29
- message: string;
30
- }) => void;
24
+ timeout: number
25
+ services: IServices
26
+ errors: IErrors
27
+ onError: (error: { error: number; message: string }) => void
31
28
  }
32
29
  interface IServiceConnect {
33
- connect<T>(payload: string | string[] | undefined, remote?: string): Promise<T>;
34
- disconnect: () => void;
30
+ connect<T>(
31
+ payload: string | string[] | undefined,
32
+ remote?: string
33
+ ): Promise<T>
34
+ disconnect: () => void
35
35
  }
36
36
  interface IWssAdapter {
37
- services: {
38
- [serviceName: string]: IServiceConnect;
39
- };
40
- sessions: {
41
- [serviceName: string]: unknown;
42
- };
43
- configure: (configuration: IConfiguration) => void;
37
+ services: {
38
+ [serviceName: string]: IServiceConnect
39
+ }
40
+ sessions: {
41
+ [serviceName: string]: any
42
+ }
43
+ configure: (configuration: IConfiguration) => void
44
44
  }
45
45
  interface ISequence {
46
- value: number;
47
- getSeq: () => number;
48
- decreaseSeq: () => void;
46
+ value: number
47
+ getSeq: () => number
48
+ decreaseSeq: () => void
49
49
  }
50
50
  interface ISessions {
51
- [serviceName: string]: WebSocket;
51
+ [serviceName: string]: WebSocket
52
52
  }
53
53
  interface IPendingPromises {
54
- [seq: number]: {
55
- resolve: (payload: unknown) => void;
56
- reject: (error: Error) => void;
57
- toHandler: ReturnType<typeof setTimeout>;
58
- };
54
+ [seq: number]: {
55
+ resolve: (payload: unknown) => void
56
+ reject: (error: Error) => void
57
+ toHandler: ReturnType<typeof setTimeout>
58
+ }
59
59
  }
60
60
  interface IStore {
61
- timeout: number;
62
- errors: IErrors;
63
- services: IServices;
64
- sequence: ISequence;
65
- sessions: ISessions;
66
- pendingPromises: IPendingPromises;
67
- onError: (error: {
68
- error: number;
69
- message: string;
70
- }) => void;
61
+ timeout: number
62
+ errors: IErrors
63
+ services: IServices
64
+ sequence: ISequence
65
+ sessions: ISessions
66
+ pendingPromises: IPendingPromises
67
+ onError: (error: { error: number; message: string }) => void
68
+ }
69
+ export {
70
+ IStore,
71
+ IWssAdapter,
72
+ IServiceConfig,
73
+ IConfiguration,
74
+ IErrors,
75
+ IServices,
76
+ IService,
71
77
  }
72
- export { IStore, IWssAdapter, IServiceConfig, IConfiguration, IErrors, IServices, IService, };
@@ -94,18 +94,20 @@ var sendHandler = function (serviceName, serviceConfig, methodName, params) {
94
94
  if (!methodCode) {
95
95
  throw new Error("method ".concat(methodName, " not available in ").concat(serviceName, " service"));
96
96
  }
97
- if (!Object.keys(params).every(function (param) {
98
- return serviceConfig.methods[methodCode].parameters.includes(param);
99
- })) {
100
- throw new Error("method ".concat(methodCode, " is being called with missing parameters"));
101
- }
102
97
  var purgedParams = {};
103
- serviceConfig.methods[methodCode].parameters.forEach(function (k) {
104
- purgedParams[k] = params[k];
105
- });
106
- var difference = Object.keys(params).filter(function (x) { return !serviceConfig.methods[methodCode].parameters.includes(x); });
107
- if (difference.length) {
108
- throw new Error("method ".concat(methodCode, " is being called with unknow parameters, ").concat(difference));
98
+ if (params) {
99
+ if (!Object.keys(params).every(function (param) {
100
+ return serviceConfig.methods[methodCode].parameters.includes(param);
101
+ })) {
102
+ throw new Error("method ".concat(methodCode, " is being called with missing parameters"));
103
+ }
104
+ serviceConfig.methods[methodCode].parameters.forEach(function (k) {
105
+ purgedParams[k] = params[k];
106
+ });
107
+ var difference = Object.keys(params).filter(function (x) { return !serviceConfig.methods[methodCode].parameters.includes(x); });
108
+ if (difference.length) {
109
+ throw new Error("method ".concat(methodCode, " is being called with unknow parameters, ").concat(difference));
110
+ }
109
111
  }
110
112
  var payload = {
111
113
  method: Number.parseInt(methodCode),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pathscale/wss-adapter",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "description": "Websocket adapter for the Pathscale WSS",
5
5
  "main": "dist/wssAdapter.js",
6
6
  "types": "dist/wssAdapter.d.ts",
package/types/index.ts CHANGED
@@ -7,7 +7,6 @@ interface IService {
7
7
  }
8
8
  }
9
9
  }
10
-
11
10
  interface IServiceConfig extends IService {
12
11
  onDisconnect: (event: {
13
12
  code: number
@@ -15,22 +14,18 @@ interface IServiceConfig extends IService {
15
14
  wasClean: boolean
16
15
  }) => void | null
17
16
  }
18
-
19
17
  interface IServices {
20
18
  [serviceName: string]: IServiceConfig
21
19
  }
22
-
23
20
  interface IErrors {
24
21
  [errorCode: number]: string
25
22
  }
26
-
27
23
  interface IConfiguration {
28
24
  timeout: number
29
25
  services: IServices
30
26
  errors: IErrors
31
27
  onError: (error: { error: number; message: string }) => void
32
28
  }
33
-
34
29
  interface IServiceConnect {
35
30
  connect<T>(
36
31
  payload: string | string[] | undefined,
@@ -38,27 +33,23 @@ interface IServiceConnect {
38
33
  ): Promise<T>
39
34
  disconnect: () => void
40
35
  }
41
-
42
36
  interface IWssAdapter {
43
37
  services: {
44
38
  [serviceName: string]: IServiceConnect
45
39
  }
46
40
  sessions: {
47
- [serviceName: string]: unknown
41
+ [serviceName: string]: any
48
42
  }
49
43
  configure: (configuration: IConfiguration) => void
50
44
  }
51
-
52
45
  interface ISequence {
53
46
  value: number
54
47
  getSeq: () => number
55
48
  decreaseSeq: () => void
56
49
  }
57
-
58
50
  interface ISessions {
59
51
  [serviceName: string]: WebSocket
60
52
  }
61
-
62
53
  interface IPendingPromises {
63
54
  [seq: number]: {
64
55
  resolve: (payload: unknown) => void
@@ -66,7 +57,6 @@ interface IPendingPromises {
66
57
  toHandler: ReturnType<typeof setTimeout>
67
58
  }
68
59
  }
69
-
70
60
  interface IStore {
71
61
  timeout: number
72
62
  errors: IErrors
@@ -76,7 +66,6 @@ interface IStore {
76
66
  pendingPromises: IPendingPromises
77
67
  onError: (error: { error: number; message: string }) => void
78
68
  }
79
-
80
69
  export {
81
70
  IStore,
82
71
  IWssAdapter,
package/wssAdapter.ts CHANGED
@@ -123,29 +123,32 @@ const sendHandler = (
123
123
  )
124
124
  }
125
125
 
126
- if (
127
- !Object.keys(params).every((param) =>
128
- serviceConfig.methods[methodCode].parameters.includes(param)
129
- )
130
- ) {
131
- throw new Error(
132
- `method ${methodCode} is being called with missing parameters`
133
- )
134
- }
135
-
136
126
  const purgedParams: Record<string, unknown> = {}
137
- serviceConfig.methods[methodCode].parameters.forEach((k) => {
138
- purgedParams[k] = params[k]
139
- })
140
127
 
141
- const difference = Object.keys(params).filter(
142
- (x) => !serviceConfig.methods[methodCode].parameters.includes(x)
143
- )
128
+ if (params) {
129
+ if (
130
+ !Object.keys(params).every((param) =>
131
+ serviceConfig.methods[methodCode].parameters.includes(param)
132
+ )
133
+ ) {
134
+ throw new Error(
135
+ `method ${methodCode} is being called with missing parameters`
136
+ )
137
+ }
138
+
139
+ serviceConfig.methods[methodCode].parameters.forEach((k) => {
140
+ purgedParams[k] = params[k]
141
+ })
144
142
 
145
- if (difference.length) {
146
- throw new Error(
147
- `method ${methodCode} is being called with unknow parameters, ${difference}`
143
+ const difference = Object.keys(params).filter(
144
+ (x) => !serviceConfig.methods[methodCode].parameters.includes(x)
148
145
  )
146
+
147
+ if (difference.length) {
148
+ throw new Error(
149
+ `method ${methodCode} is being called with unknow parameters, ${difference}`
150
+ )
151
+ }
149
152
  }
150
153
 
151
154
  const payload = {