@lvce-editor/extension-management-worker 4.41.2 → 4.42.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.
@@ -1200,19 +1200,58 @@ const create$5 = async ({
1200
1200
  return rpc;
1201
1201
  };
1202
1202
 
1203
+ const reconnectDelay = 2000;
1204
+ const waitForReconnect = async () => {
1205
+ await new Promise(resolve => {
1206
+ setTimeout(resolve, reconnectDelay);
1207
+ });
1208
+ };
1209
+ const connect = async ({
1210
+ commandMap,
1211
+ wsUrl
1212
+ }) => {
1213
+ const webSocket = new WebSocket(wsUrl);
1214
+ try {
1215
+ const rpc = await create$5({
1216
+ commandMap,
1217
+ webSocket
1218
+ });
1219
+ return {
1220
+ rpc,
1221
+ webSocket
1222
+ };
1223
+ } catch (error) {
1224
+ webSocket.close();
1225
+ throw error;
1226
+ }
1227
+ };
1203
1228
  const create$4 = async ({
1204
1229
  commandMap,
1230
+ onClose,
1205
1231
  type
1206
1232
  }) => {
1207
1233
  const host = getHost();
1208
1234
  const protocol = getProtocol();
1209
1235
  const wsUrl = getWebSocketUrl(type, host, protocol);
1210
- const webSocket = new WebSocket(wsUrl);
1211
- const rpc = await create$5({
1212
- commandMap,
1213
- webSocket
1214
- });
1215
- return rpc;
1236
+ let connection;
1237
+ try {
1238
+ connection = await connect({
1239
+ commandMap,
1240
+ wsUrl
1241
+ });
1242
+ } catch {
1243
+ await waitForReconnect();
1244
+ connection = await connect({
1245
+ commandMap,
1246
+ wsUrl
1247
+ });
1248
+ }
1249
+ if (onClose) {
1250
+ connection.webSocket.addEventListener('close', onClose, {
1251
+ once: true
1252
+ });
1253
+ }
1254
+ return connection.rpc;
1216
1255
  };
1217
1256
 
1218
1257
  const create$3 = async ({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/extension-management-worker",
3
- "version": "4.41.2",
3
+ "version": "4.42.0",
4
4
  "description": "Webworker for the Extension Management functionality in Lvce Editor.",
5
5
  "keywords": [
6
6
  "web-worker"