adminforth 3.31.3 → 3.31.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 +1 @@
1
- {"version":3,"file":"socketBroker.d.ts","sourceRoot":"","sources":["../../modules/socketBroker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAM/C,MAAM,CAAC,OAAO,OAAO,YAAa,YAAW,gBAAgB;IAC3D,OAAO,gCAAuC;IAC9C,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;KAAE,CAAM;IACnD,UAAU,EAAE,WAAW,CAAC;IACxB,kBAAkB,UAAS;gBAEf,UAAU,EAAE,WAAW;IAI7B,YAAY;IAaZ,gBAAgB;IAUtB;;;OAGG;IACG,kBAAkB;IAwBxB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM;IAO7D,mBAAmB,CAAC,KAAK,EAAE,MAAM;IASjC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAkG1C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CA4BjH"}
1
+ {"version":3,"file":"socketBroker.d.ts","sourceRoot":"","sources":["../../modules/socketBroker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAM/C,MAAM,CAAC,OAAO,OAAO,YAAa,YAAW,gBAAgB;IAC3D,OAAO,gCAAuC;IAC9C,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;KAAE,CAAM;IACnD,UAAU,EAAE,WAAW,CAAC;IACxB,kBAAkB,UAAS;gBAEf,UAAU,EAAE,WAAW;IAI7B,YAAY;IAaZ,gBAAgB;IAUtB;;;OAGG;IACG,kBAAkB;IAwBxB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM;IAO7D,mBAAmB,CAAC,KAAK,EAAE,MAAM;IASjC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAiH1C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CA4BjH"}
@@ -75,7 +75,11 @@ export default class SocketBroker {
75
75
  afLogger.info(`Registering new WebSocket client ${client.id}`);
76
76
  this.startChecker();
77
77
  this.clients.set(client.id, client);
78
+ const pendingSubscriptions = new Map();
78
79
  client.onMessage(async (message) => {
80
+ if (this.clients.get(client.id) !== client) {
81
+ return;
82
+ }
79
83
  const messageText = message.toString();
80
84
  if (!messageText.trim()) {
81
85
  return;
@@ -108,21 +112,29 @@ export default class SocketBroker {
108
112
  }
109
113
  const topic = payload.topic;
110
114
  if (payload.type === 'subscribe') {
115
+ // Only the latest subscribe intent may commit after asynchronous authorization.
116
+ const subscription = {};
117
+ pendingSubscriptions.set(topic, subscription);
118
+ let authResult = true;
111
119
  if (!topic.startsWith('/opentopic/')) {
112
120
  if (this.adminforth.config.auth.websocketTopicAuth) {
113
- let authResult = false;
121
+ authResult = false;
114
122
  try {
115
123
  authResult = await this.adminforth.config.auth.websocketTopicAuth(topic, client.adminUser);
116
124
  }
117
125
  catch (e) {
118
126
  afLogger.error(`Error in websocketTopicAuth, assuming connection not allowed ${e}`);
119
127
  }
120
- if (!authResult) {
121
- client.send(JSON.stringify({ type: 'error', message: 'Unauthorized' }));
122
- return;
123
- }
124
128
  }
125
129
  }
130
+ if (this.clients.get(client.id) !== client || pendingSubscriptions.get(topic) !== subscription) {
131
+ return;
132
+ }
133
+ pendingSubscriptions.delete(topic);
134
+ if (!authResult) {
135
+ client.send(JSON.stringify({ type: 'error', message: 'Unauthorized' }));
136
+ return;
137
+ }
126
138
  if (!this.topics[topic]) {
127
139
  this.topics[topic] = [];
128
140
  }
@@ -142,15 +154,18 @@ export default class SocketBroker {
142
154
  }
143
155
  return;
144
156
  }
157
+ pendingSubscriptions.delete(topic);
145
158
  this.deleteClientFromTopic(client, topic);
146
159
  this.cleanupTopicIfEmpty(topic);
147
160
  client.topics.delete(topic);
148
161
  });
149
162
  client.onClose(() => {
163
+ pendingSubscriptions.clear();
150
164
  for (const topic of client.topics) {
151
165
  this.deleteClientFromTopic(client, topic);
152
166
  this.cleanupTopicIfEmpty(topic);
153
167
  }
168
+ client.topics.clear();
154
169
  this.clients.delete(client.id);
155
170
  });
156
171
  // send ready message
@@ -1 +1 @@
1
- {"version":3,"file":"socketBroker.js","sourceRoot":"","sources":["../../modules/socketBroker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketBroker.js","sourceRoot":"","sources":["../../modules/socketBroker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"express.d.ts","sourceRoot":"","sources":["../../servers/express.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAG3C,OAAO,EACL,WAAW,EACX,uCAAuC,EAEvC,6BAA6B,EAC7B,gCAAgC,EAChC,kBAAkB,EAGnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAoExB,QAAA,MAAM,oBAAoB,eAA0C,CAAC;AAOrE,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;AAEtF,KAAK,4BAA4B,GAAG,6BAA6B,GAAG;IAClE,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF,KAAK,sBAAsB,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GAAG;IACxD,CAAC,oBAAoB,CAAC,CAAC,EAAE,4BAA4B,CAAC;CACvD,CAAC;AA8EF,cAAM,aAAc,YAAW,kBAAkB;IAE/C,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,WAAW,CAAC;IACxB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,mCAAmC,UAAS;IAC5C,YAAY,EAAE,YAAY,CAAC;IAC3B,4BAA4B,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAM;gBAEzC,UAAU,EAAE,WAAW;IAOnC,cAAc;IAqFd,aAAa;IAoDb,KAAK,CAAC,GAAG,KAAA;IAoBT,iCAAiC;IAMjC,MAAM,CAAC,GAAG,IAAI,OAAA;IAId,oBAAoB,IAAI,MAAM,GAAG,SAAS;IAW1C,mBAAmB,CAAC,GAAG,KAAA,EAAE,QAAQ,KAAA;IAOjC,SAAS,CAAC,OAAO,KAAA,IACD,QAAG,EAAE,QAAG,EAAE,SAAI;IAoC9B,UAAU,CAAC,MAAM,KAAA,EAAE,OAAO,KAAA;IAU1B,YAAY,CAAC,OAAO,KAAA,IAEJ,QAAG,EAAE,QAAG,EAAE,SAAI;IAO9B,iCAAiC;IAwCjC,wBAAwB,CAAC,OAAO,KAAA,EAAE,IAAI,KAAA,EAAE,QAAQ,KAAA;IAyChD,wBAAwB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA;IAsBtC,iBAAiB,CAAC,QAAQ,KAAA,EAAE,KAAK,KAAA;IAQjC,gBAAgB,CAAC,KAAK,KAAA;IAiBtB,eAAe,CAAC,QAAQ,KAAA;IAIxB,YAAY,CAAC,KAAK,KAAA;IAMlB,kBAAkB;IAkBlB,QAAQ,CAAC,OAAO,EAAE,uCAAuC,GAAG,IAAI;IAChE,QAAQ,CAAC,OAAO,EAAE,gCAAgC,GAAG,IAAI;CA4M1D;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"express.d.ts","sourceRoot":"","sources":["../../servers/express.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAG3C,OAAO,EACL,WAAW,EACX,uCAAuC,EAEvC,6BAA6B,EAC7B,gCAAgC,EAChC,kBAAkB,EAGnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAoExB,QAAA,MAAM,oBAAoB,eAA0C,CAAC;AAOrE,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;AAEtF,KAAK,4BAA4B,GAAG,6BAA6B,GAAG;IAClE,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF,KAAK,sBAAsB,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GAAG;IACxD,CAAC,oBAAoB,CAAC,CAAC,EAAE,4BAA4B,CAAC;CACvD,CAAC;AA8EF,cAAM,aAAc,YAAW,kBAAkB;IAE/C,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,WAAW,CAAC;IACxB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,mCAAmC,UAAS;IAC5C,YAAY,EAAE,YAAY,CAAC;IAC3B,4BAA4B,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAM;gBAEzC,UAAU,EAAE,WAAW;IAOnC,cAAc;IAqFd,aAAa;IAuDb,KAAK,CAAC,GAAG,KAAA;IAoBT,iCAAiC;IAMjC,MAAM,CAAC,GAAG,IAAI,OAAA;IAId,oBAAoB,IAAI,MAAM,GAAG,SAAS;IAW1C,mBAAmB,CAAC,GAAG,KAAA,EAAE,QAAQ,KAAA;IAOjC,SAAS,CAAC,OAAO,KAAA,IACD,QAAG,EAAE,QAAG,EAAE,SAAI;IAoC9B,UAAU,CAAC,MAAM,KAAA,EAAE,OAAO,KAAA;IAU1B,YAAY,CAAC,OAAO,KAAA,IAEJ,QAAG,EAAE,QAAG,EAAE,SAAI;IAO9B,iCAAiC;IAwCjC,wBAAwB,CAAC,OAAO,KAAA,EAAE,IAAI,KAAA,EAAE,QAAQ,KAAA;IAyChD,wBAAwB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA;IAsBtC,iBAAiB,CAAC,QAAQ,KAAA,EAAE,KAAK,KAAA;IAQjC,gBAAgB,CAAC,KAAK,KAAA;IAiBtB,eAAe,CAAC,QAAQ,KAAA;IAIxB,YAAY,CAAC,KAAK,KAAA;IAMlB,kBAAkB;IAkBlB,QAAQ,CAAC,OAAO,EAAE,uCAAuC,GAAG,IAAI;IAChE,QAAQ,CAAC,OAAO,EAAE,gCAAgC,GAAG,IAAI;CA4M1D;AAED,eAAe,aAAa,CAAC"}
@@ -2,7 +2,7 @@ import path from 'path';
2
2
  import fs from 'fs';
3
3
  import { apiReference } from '@scalar/express-api-reference';
4
4
  import fetch from 'node-fetch';
5
- import { WebSocketServer } from 'ws';
5
+ import { WebSocket, WebSocketServer } from 'ws';
6
6
  import { WebSocketClient } from './common.js';
7
7
  import http from 'http';
8
8
  import { randomUUID } from 'crypto';
@@ -242,6 +242,9 @@ class ExpressServer {
242
242
  if (result.status === 'verifyFailed') {
243
243
  throw result.error;
244
244
  }
245
+ if (ws.readyState !== WebSocket.OPEN) {
246
+ return;
247
+ }
245
248
  this.adminforth.websocket.registerWsClient(new WebSocketClient({
246
249
  id: randomUUID(),
247
250
  clientId: url.searchParams.get('clientId') || undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"express.js","sourceRoot":"","sources":["../../servers/express.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"express.js","sourceRoot":"","sources":["../../servers/express.ts"],"names":[],"mappings":"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"}
@@ -10,17 +10,16 @@ type Subscription = {
10
10
  const subscriptions: { [topic: string]: Subscription[] } = {};
11
11
  let nextSubscriptionId = 1;
12
12
 
13
- interface ExtendedWebSocket extends WebSocket {
14
- connected?: boolean;
15
- }
16
-
17
13
  const state: {
18
14
  status: 'connecting' | 'connected' | 'disconnected';
19
- ws: ExtendedWebSocket | null;
15
+ ws: WebSocket | null;
16
+ ready: boolean;
20
17
  } = {
21
18
  status: 'connecting',
22
- ws: null
19
+ ws: null,
20
+ ready: false,
23
21
  };
22
+ let reconnectTimer: ReturnType<typeof setTimeout> | undefined;
24
23
 
25
24
  function doPhysicalSubscribe(topic: string) {
26
25
  state.ws!.send(JSON.stringify({ type: 'subscribe', topic }));
@@ -37,7 +36,7 @@ async function connect () {
37
36
  console.error('Websocket not supported by this browser');
38
37
  return;
39
38
  }
40
- if (state.ws?.connected) {
39
+ if (state.ws && state.ws.readyState !== WebSocket.CLOSED) {
41
40
  console.error('🔌 AFWS already connected');
42
41
  return;
43
42
  }
@@ -48,16 +47,20 @@ async function connect () {
48
47
  }
49
48
 
50
49
  const clientId = encodeURIComponent(getAdminForthClientId());
51
- state.ws = new WebSocket(`${
50
+ const ws = new WebSocket(`${
52
51
  window.location.protocol === 'http:' ? 'ws' : 'wss'
53
52
  }://${window.location.host}${base}/afws?clientId=${clientId}`);
53
+ state.ws = ws;
54
54
  state.status = 'connecting';
55
- state.ws.addEventListener('open', () => {
55
+ state.ready = false;
56
+ ws.addEventListener('open', () => {
57
+ if (state.ws !== ws) return;
56
58
  console.log('🔌 AFWS connected');
57
59
  state.status = 'connected';
58
60
 
59
61
  });
60
- state.ws.addEventListener('message', (event) => {
62
+ ws.addEventListener('message', (event) => {
63
+ if (state.ws !== ws) return;
61
64
  const data = event.data.toString();
62
65
  if (data === 'pong') {
63
66
  return;
@@ -66,6 +69,7 @@ async function connect () {
66
69
 
67
70
  const message = JSON.parse(data);
68
71
  if (message.type === 'ready') {
72
+ state.ready = true;
69
73
  Object.keys(subscriptions).forEach((topic) => {
70
74
  doPhysicalSubscribe(topic);
71
75
  });
@@ -81,14 +85,18 @@ async function connect () {
81
85
  }
82
86
  }
83
87
  });
84
- state.ws.addEventListener('close', () => {
88
+ ws.addEventListener('close', () => {
89
+ if (state.ws !== ws) return;
85
90
  console.log('🔌 AFWS disconnected');
86
- setTimeout(() => {
91
+ reconnectTimer = setTimeout(() => {
92
+ if (state.ws !== ws) return;
93
+ reconnectTimer = undefined;
87
94
  console.log('🔌 AFWS reconnecting after close');
88
95
  connect();
89
96
  // if it is first time, reconnect instantly
90
97
  }, state.status === 'connected' ? 0 : 2_000);
91
98
  state.status = 'disconnected';
99
+ state.ready = false;
92
100
  });
93
101
  }
94
102
 
@@ -100,11 +108,14 @@ try {
100
108
 
101
109
  export function reconnect() {
102
110
  console.log('🔌 AFWS reconnect initiated');
103
- // disconnect if already connected
104
- if (state.status === 'connected') {
105
- state.ws!.close();
106
- }
107
-
111
+ clearTimeout(reconnectTimer);
112
+ reconnectTimer = undefined;
113
+ const ws = state.ws;
114
+ state.ws = null;
115
+ state.status = 'disconnected';
116
+ state.ready = false;
117
+ ws?.close();
118
+ connect();
108
119
  }
109
120
 
110
121
  setInterval(() => {
@@ -125,7 +136,7 @@ function unsubscribeSubscription(topic: string, subscriptionId: number): void {
125
136
  }
126
137
 
127
138
  delete subscriptions[topic];
128
- if (state.status === 'connected') {
139
+ if (state.ready) {
129
140
  doPhysicalUnsubscribe(topic);
130
141
  }
131
142
  }
@@ -141,7 +152,7 @@ export default {
141
152
  id: subscriptionId,
142
153
  callback,
143
154
  });
144
- if (isFirstSubscription && state.status === 'connected') {
155
+ if (isFirstSubscription && state.ready) {
145
156
  doPhysicalSubscribe(topic);
146
157
  }
147
158
 
@@ -161,7 +172,7 @@ export default {
161
172
  return;
162
173
  }
163
174
  delete subscriptions[topic];
164
- if (state.status === 'connected') {
175
+ if (state.ready) {
165
176
  doPhysicalUnsubscribe(topic);
166
177
  }
167
178
  },
@@ -171,7 +182,7 @@ export default {
171
182
  .filter((topic) => topic.startsWith(prefix))
172
183
  .forEach((topic) => {
173
184
  delete subscriptions[topic];
174
- if (state.status === 'connected') {
185
+ if (state.ready) {
175
186
  doPhysicalUnsubscribe(topic);
176
187
  }
177
188
  });
@@ -180,7 +191,7 @@ export default {
180
191
  unsubscribeAll(): void {
181
192
  Object.keys(subscriptions).forEach((topic) => {
182
193
  delete subscriptions[topic];
183
- if (state.status === 'connected') {
194
+ if (state.ready) {
184
195
  doPhysicalUnsubscribe(topic);
185
196
  }
186
197
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adminforth",
3
- "version": "3.31.3",
3
+ "version": "3.31.4",
4
4
  "description": "OpenSource Agent-Native forth-generation admin panel",
5
5
  "keywords": [
6
6
  "adminforth",