@lvce-editor/iframe-worker 6.0.0 → 6.1.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.
@@ -90,6 +90,12 @@ const getType = value => {
90
90
  return Unknown;
91
91
  }
92
92
  };
93
+ const object = value => {
94
+ const type = getType(value);
95
+ if (type !== Object$1) {
96
+ throw new AssertionError('expected value to be of type object');
97
+ }
98
+ };
93
99
  const number = value => {
94
100
  const type = getType(value);
95
101
  if (type !== Number) {
@@ -515,7 +521,7 @@ const create$4$1 = (method, params) => {
515
521
  };
516
522
  };
517
523
  const callbacks = Object.create(null);
518
- const set$3 = (id, fn) => {
524
+ const set$4 = (id, fn) => {
519
525
  callbacks[id] = fn;
520
526
  };
521
527
  const get$2 = id => {
@@ -534,7 +540,7 @@ const registerPromise = () => {
534
540
  resolve,
535
541
  promise
536
542
  } = Promise.withResolvers();
537
- set$3(id, resolve);
543
+ set$4(id, resolve);
538
544
  return {
539
545
  id,
540
546
  promise
@@ -879,10 +885,10 @@ const send = (transport, method, ...params) => {
879
885
  const message = create$4$1(method, params);
880
886
  transport.send(message);
881
887
  };
882
- const invoke$6 = (ipc, method, ...params) => {
888
+ const invoke$5 = (ipc, method, ...params) => {
883
889
  return invokeHelper(ipc, method, params, false);
884
890
  };
885
- const invokeAndTransfer$5 = (ipc, method, ...params) => {
891
+ const invokeAndTransfer$4 = (ipc, method, ...params) => {
886
892
  return invokeHelper(ipc, method, params, true);
887
893
  };
888
894
 
@@ -918,10 +924,10 @@ const createRpc = ipc => {
918
924
  send(ipc, method, ...params);
919
925
  },
920
926
  invoke(method, ...params) {
921
- return invoke$6(ipc, method, ...params);
927
+ return invoke$5(ipc, method, ...params);
922
928
  },
923
929
  invokeAndTransfer(method, ...params) {
924
- return invokeAndTransfer$5(ipc, method, ...params);
930
+ return invokeAndTransfer$4(ipc, method, ...params);
925
931
  },
926
932
  async dispose() {
927
933
  await ipc?.dispose();
@@ -1067,7 +1073,7 @@ const ExtensionHostWorker = 44;
1067
1073
  const RendererWorker$1 = 1;
1068
1074
 
1069
1075
  const rpcs$1 = Object.create(null);
1070
- const set$2 = (id, rpc) => {
1076
+ const set$3 = (id, rpc) => {
1071
1077
  if (rpcs$1[id]) {
1072
1078
  throw new Error(`rpc with id ${id} is already registered`);
1073
1079
  }
@@ -1096,32 +1102,34 @@ const create$2 = rpcId => {
1096
1102
  return rpc.invokeAndTransfer(method, ...params);
1097
1103
  },
1098
1104
  set(rpc) {
1099
- set$2(rpcId, rpc);
1105
+ set$3(rpcId, rpc);
1100
1106
  }
1101
1107
  };
1102
1108
  };
1103
1109
 
1104
1110
  const {
1105
- invoke: invoke$5,
1106
- invokeAndTransfer: invokeAndTransfer$4} = create$2(ExtensionHostWorker);
1111
+ invoke: invoke$4,
1112
+ invokeAndTransfer: invokeAndTransfer$3,
1113
+ set: set$2
1114
+ } = create$2(ExtensionHostWorker);
1107
1115
 
1108
1116
  const {
1109
1117
  dispose,
1110
- invoke: invoke$4,
1111
- invokeAndTransfer: invokeAndTransfer$3,
1118
+ invoke: invoke$3,
1119
+ invokeAndTransfer: invokeAndTransfer$2,
1112
1120
  set: set$1
1113
1121
  } = create$2(RendererWorker$1);
1114
1122
  const searchFileHtml = async uri => {
1115
- return invoke$4('ExtensionHost.searchFileWithHtml', uri);
1123
+ return invoke$3('ExtensionHost.searchFileWithHtml', uri);
1116
1124
  };
1117
1125
  const getFilePathElectron = async file => {
1118
- return invoke$4('FileSystemHandle.getFilePathElectron', file);
1126
+ return invoke$3('FileSystemHandle.getFilePathElectron', file);
1119
1127
  };
1120
1128
  /**
1121
1129
  * @deprecated
1122
1130
  */
1123
1131
  const showContextMenu = async (x, y, id, ...args) => {
1124
- return invoke$4('ContextMenu.show', x, y, id, ...args);
1132
+ return invoke$3('ContextMenu.show', x, y, id, ...args);
1125
1133
  };
1126
1134
  const showContextMenu2 = async (uid, menuId, x, y, args) => {
1127
1135
  number(uid);
@@ -1129,294 +1137,294 @@ const showContextMenu2 = async (uid, menuId, x, y, args) => {
1129
1137
  number(x);
1130
1138
  number(y);
1131
1139
  // @ts-ignore
1132
- await invoke$4('ContextMenu.show2', uid, menuId, x, y, args);
1140
+ await invoke$3('ContextMenu.show2', uid, menuId, x, y, args);
1133
1141
  };
1134
1142
  const getElectronVersion = async () => {
1135
- return invoke$4('Process.getElectronVersion');
1143
+ return invoke$3('Process.getElectronVersion');
1136
1144
  };
1137
1145
  const applyBulkReplacement = async bulkEdits => {
1138
- await invoke$4('BulkReplacement.applyBulkReplacement', bulkEdits);
1146
+ await invoke$3('BulkReplacement.applyBulkReplacement', bulkEdits);
1139
1147
  };
1140
1148
  const setColorTheme = async id => {
1141
1149
  // @ts-ignore
1142
- return invoke$4(/* ColorTheme.setColorTheme */'ColorTheme.setColorTheme', /* colorThemeId */id);
1150
+ return invoke$3(/* ColorTheme.setColorTheme */'ColorTheme.setColorTheme', /* colorThemeId */id);
1143
1151
  };
1144
1152
  const getNodeVersion = async () => {
1145
- return invoke$4('Process.getNodeVersion');
1153
+ return invoke$3('Process.getNodeVersion');
1146
1154
  };
1147
1155
  const getChromeVersion = async () => {
1148
- return invoke$4('Process.getChromeVersion');
1156
+ return invoke$3('Process.getChromeVersion');
1149
1157
  };
1150
1158
  const getV8Version = async () => {
1151
- return invoke$4('Process.getV8Version');
1159
+ return invoke$3('Process.getV8Version');
1152
1160
  };
1153
1161
  const getFileHandles = async fileIds => {
1154
- const files = await invoke$4('FileSystemHandle.getFileHandles', fileIds);
1162
+ const files = await invoke$3('FileSystemHandle.getFileHandles', fileIds);
1155
1163
  return files;
1156
1164
  };
1157
1165
  const setWorkspacePath = async path => {
1158
- await invoke$4('Workspace.setPath', path);
1166
+ await invoke$3('Workspace.setPath', path);
1159
1167
  };
1160
1168
  const registerWebViewInterceptor = async (id, port) => {
1161
- await invokeAndTransfer$3('WebView.registerInterceptor', id, port);
1169
+ await invokeAndTransfer$2('WebView.registerInterceptor', id, port);
1162
1170
  };
1163
1171
  const unregisterWebViewInterceptor = async id => {
1164
- await invoke$4('WebView.unregisterInterceptor', id);
1172
+ await invoke$3('WebView.unregisterInterceptor', id);
1165
1173
  };
1166
1174
  const sendMessagePortToEditorWorker = async (port, rpcId) => {
1167
1175
  const command = 'HandleMessagePort.handleMessagePort';
1168
1176
  // @ts-ignore
1169
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToEditorWorker', port, command, rpcId);
1177
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToEditorWorker', port, command, rpcId);
1170
1178
  };
1171
1179
  const sendMessagePortToErrorWorker = async (port, rpcId) => {
1172
1180
  const command = 'Errors.handleMessagePort';
1173
1181
  // @ts-ignore
1174
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToErrorWorker', port, command, rpcId);
1182
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToErrorWorker', port, command, rpcId);
1175
1183
  };
1176
1184
  const sendMessagePortToMarkdownWorker = async (port, rpcId) => {
1177
1185
  const command = 'Markdown.handleMessagePort';
1178
1186
  // @ts-ignore
1179
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToMarkdownWorker', port, command, rpcId);
1187
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToMarkdownWorker', port, command, rpcId);
1180
1188
  };
1181
1189
  const sendMessagePortToIconThemeWorker = async (port, rpcId) => {
1182
1190
  const command = 'IconTheme.handleMessagePort';
1183
1191
  // @ts-ignore
1184
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToIconThemeWorker', port, command, rpcId);
1192
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToIconThemeWorker', port, command, rpcId);
1185
1193
  };
1186
1194
  const sendMessagePortToFileSystemWorker = async (port, rpcId) => {
1187
1195
  const command = 'FileSystem.handleMessagePort';
1188
1196
  // @ts-ignore
1189
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToFileSystemWorker', port, command, rpcId);
1197
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToFileSystemWorker', port, command, rpcId);
1190
1198
  };
1191
1199
  const readFile$1 = async uri => {
1192
- return invoke$4('FileSystem.readFile', uri);
1200
+ return invoke$3('FileSystem.readFile', uri);
1193
1201
  };
1194
1202
  const getWebViewSecret = async key => {
1195
1203
  // @ts-ignore
1196
- return invoke$4('WebView.getSecret', key);
1204
+ return invoke$3('WebView.getSecret', key);
1197
1205
  };
1198
1206
  const setWebViewPort = async (uid, port, origin, portType) => {
1199
- return invokeAndTransfer$3('WebView.setPort', uid, port, origin, portType);
1207
+ return invokeAndTransfer$2('WebView.setPort', uid, port, origin, portType);
1200
1208
  };
1201
1209
  const setFocus = key => {
1202
- return invoke$4('Focus.setFocus', key);
1210
+ return invoke$3('Focus.setFocus', key);
1203
1211
  };
1204
1212
  const getFileIcon = async options => {
1205
- return invoke$4('IconTheme.getFileIcon', options);
1213
+ return invoke$3('IconTheme.getFileIcon', options);
1206
1214
  };
1207
1215
  const getColorThemeNames = async () => {
1208
- return invoke$4('ColorTheme.getColorThemeNames');
1216
+ return invoke$3('ColorTheme.getColorThemeNames');
1209
1217
  };
1210
1218
  const disableExtension = async id => {
1211
1219
  // @ts-ignore
1212
- return invoke$4('ExtensionManagement.disable', id);
1220
+ return invoke$3('ExtensionManagement.disable', id);
1213
1221
  };
1214
1222
  const enableExtension = async id => {
1215
1223
  // @ts-ignore
1216
- return invoke$4('ExtensionManagement.enable', id);
1224
+ return invoke$3('ExtensionManagement.enable', id);
1217
1225
  };
1218
1226
  const handleDebugChange = async params => {
1219
1227
  // @ts-ignore
1220
- return invoke$4('Run And Debug.handleChange', params);
1228
+ return invoke$3('Run And Debug.handleChange', params);
1221
1229
  };
1222
1230
  const getFolderIcon = async options => {
1223
- return invoke$4('IconTheme.getFolderIcon', options);
1231
+ return invoke$3('IconTheme.getFolderIcon', options);
1224
1232
  };
1225
1233
  const handleWorkspaceRefresh = async () => {
1226
- return invoke$4('Layout.handleWorkspaceRefresh');
1234
+ return invoke$3('Layout.handleWorkspaceRefresh');
1227
1235
  };
1228
1236
  const closeWidget = async widgetId => {
1229
- return invoke$4('Viewlet.closeWidget', widgetId);
1237
+ return invoke$3('Viewlet.closeWidget', widgetId);
1230
1238
  };
1231
1239
  const sendMessagePortToExtensionHostWorker = async (port, rpcId = 0) => {
1232
1240
  const command = 'HandleMessagePort.handleMessagePort2';
1233
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToExtensionHostWorker', port, command, rpcId);
1241
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToExtensionHostWorker', port, command, rpcId);
1234
1242
  };
1235
1243
  const sendMessagePortToSearchProcess = async port => {
1236
- await invokeAndTransfer$3('SendMessagePortToElectron.sendMessagePortToElectron', port, 'HandleMessagePortForSearchProcess.handleMessagePortForSearchProcess');
1244
+ await invokeAndTransfer$2('SendMessagePortToElectron.sendMessagePortToElectron', port, 'HandleMessagePortForSearchProcess.handleMessagePortForSearchProcess');
1237
1245
  };
1238
1246
  const confirm = async (message, options) => {
1239
1247
  // @ts-ignore
1240
- const result = await invoke$4('ConfirmPrompt.prompt', message, options);
1248
+ const result = await invoke$3('ConfirmPrompt.prompt', message, options);
1241
1249
  return result;
1242
1250
  };
1243
1251
  const getRecentlyOpened = async () => {
1244
- return invoke$4(/* RecentlyOpened.getRecentlyOpened */'RecentlyOpened.getRecentlyOpened');
1252
+ return invoke$3(/* RecentlyOpened.getRecentlyOpened */'RecentlyOpened.getRecentlyOpened');
1245
1253
  };
1246
1254
  const getKeyBindings = async () => {
1247
- return invoke$4('KeyBindingsInitial.getKeyBindings');
1255
+ return invoke$3('KeyBindingsInitial.getKeyBindings');
1248
1256
  };
1249
1257
  const writeClipBoardText = async text => {
1250
- await invoke$4('ClipBoard.writeText', /* text */text);
1258
+ await invoke$3('ClipBoard.writeText', /* text */text);
1251
1259
  };
1252
1260
  const readClipBoardText = async () => {
1253
- return invoke$4('ClipBoard.readText');
1261
+ return invoke$3('ClipBoard.readText');
1254
1262
  };
1255
1263
  const writeClipBoardImage = async blob => {
1256
1264
  // @ts-ignore
1257
- await invoke$4('ClipBoard.writeImage', /* text */blob);
1265
+ await invoke$3('ClipBoard.writeImage', /* text */blob);
1258
1266
  };
1259
1267
  const searchFileMemory = async uri => {
1260
1268
  // @ts-ignore
1261
- return invoke$4('ExtensionHost.searchFileWithMemory', uri);
1269
+ return invoke$3('ExtensionHost.searchFileWithMemory', uri);
1262
1270
  };
1263
1271
  const searchFileFetch = async uri => {
1264
- return invoke$4('ExtensionHost.searchFileWithFetch', uri);
1272
+ return invoke$3('ExtensionHost.searchFileWithFetch', uri);
1265
1273
  };
1266
1274
  const showMessageBox = async options => {
1267
- return invoke$4('ElectronDialog.showMessageBox', options);
1275
+ return invoke$3('ElectronDialog.showMessageBox', options);
1268
1276
  };
1269
1277
  const handleDebugResumed = async params => {
1270
- await invoke$4('Run And Debug.handleResumed', params);
1278
+ await invoke$3('Run And Debug.handleResumed', params);
1271
1279
  };
1272
1280
  const openWidget = async name => {
1273
- await invoke$4('Viewlet.openWidget', name);
1281
+ await invoke$3('Viewlet.openWidget', name);
1274
1282
  };
1275
1283
  const getIcons = async requests => {
1276
- const icons = await invoke$4('IconTheme.getIcons', requests);
1284
+ const icons = await invoke$3('IconTheme.getIcons', requests);
1277
1285
  return icons;
1278
1286
  };
1279
1287
  const activateByEvent = event => {
1280
- return invoke$4('ExtensionHostManagement.activateByEvent', event);
1288
+ return invoke$3('ExtensionHostManagement.activateByEvent', event);
1281
1289
  };
1282
1290
  const setAdditionalFocus = focusKey => {
1283
1291
  // @ts-ignore
1284
- return invoke$4('Focus.setAdditionalFocus', focusKey);
1292
+ return invoke$3('Focus.setAdditionalFocus', focusKey);
1285
1293
  };
1286
1294
  const getActiveEditorId = () => {
1287
1295
  // @ts-ignore
1288
- return invoke$4('GetActiveEditor.getActiveEditorId');
1296
+ return invoke$3('GetActiveEditor.getActiveEditorId');
1289
1297
  };
1290
1298
  const getWorkspacePath = () => {
1291
- return invoke$4('Workspace.getPath');
1299
+ return invoke$3('Workspace.getPath');
1292
1300
  };
1293
1301
  const sendMessagePortToRendererProcess = async port => {
1294
1302
  const command = 'HandleMessagePort.handleMessagePort';
1295
1303
  // @ts-ignore
1296
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToRendererProcess', port, command, DebugWorker);
1304
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToRendererProcess', port, command, DebugWorker);
1297
1305
  };
1298
1306
  const sendMessagePortToTextMeasurementWorker = async port => {
1299
1307
  const command = 'TextMeasurement.handleMessagePort';
1300
1308
  // @ts-ignore
1301
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToTextMeasurementWorker', port, command, 0);
1309
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToTextMeasurementWorker', port, command, 0);
1302
1310
  };
1303
1311
  const sendMessagePortToSourceControlWorker = async port => {
1304
1312
  const command = 'SourceControl.handleMessagePort';
1305
1313
  // @ts-ignore
1306
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToSourceControlWorker', port, command, 0);
1314
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToSourceControlWorker', port, command, 0);
1307
1315
  };
1308
1316
  const sendMessagePortToSharedProcess = async port => {
1309
1317
  const command = 'HandleElectronMessagePort.handleElectronMessagePort';
1310
1318
  // @ts-ignore
1311
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToSharedProcess', port, command, 0);
1319
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToSharedProcess', port, command, 0);
1312
1320
  };
1313
1321
  const sendMessagePortToFileSystemProcess = async (port, rpcId) => {
1314
1322
  const command = 'HandleMessagePortForFileSystemProcess.handleMessagePortForFileSystemProcess';
1315
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToSharedProcess', port, command, rpcId);
1323
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToSharedProcess', port, command, rpcId);
1316
1324
  };
1317
1325
  const sendMessagePortToIframeWorker = async (port, rpcId) => {
1318
1326
  const command = 'Iframes.handleMessagePort';
1319
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToIframeWorker', port, command, rpcId);
1327
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToIframeWorker', port, command, rpcId);
1320
1328
  };
1321
1329
  const sendMessagePortToExtensionManagementWorker = async (port, rpcId) => {
1322
1330
  const command = 'Extensions.handleMessagePort';
1323
- await invokeAndTransfer$3('SendMessagePortToExtensionHostWorker.sendMessagePortToExtensionManagementWorker', port, command, rpcId);
1331
+ await invokeAndTransfer$2('SendMessagePortToExtensionHostWorker.sendMessagePortToExtensionManagementWorker', port, command, rpcId);
1324
1332
  };
1325
1333
  const getPreference = async key => {
1326
- return await invoke$4('Preferences.get', key);
1334
+ return await invoke$3('Preferences.get', key);
1327
1335
  };
1328
1336
  const getAllExtensions = async () => {
1329
- return invoke$4('ExtensionManagement.getAllExtensions');
1337
+ return invoke$3('ExtensionManagement.getAllExtensions');
1330
1338
  };
1331
1339
  const rerenderEditor = async key => {
1332
1340
  // @ts-ignore
1333
- return invoke$4('Editor.rerender', key);
1341
+ return invoke$3('Editor.rerender', key);
1334
1342
  };
1335
1343
  const handleDebugPaused = async params => {
1336
- await invoke$4('Run And Debug.handlePaused', params);
1344
+ await invoke$3('Run And Debug.handlePaused', params);
1337
1345
  };
1338
1346
  const openUri = async (uri, focus, options) => {
1339
- await invoke$4('Main.openUri', uri, focus, options);
1347
+ await invoke$3('Main.openUri', uri, focus, options);
1340
1348
  };
1341
1349
  const sendMessagePortToSyntaxHighlightingWorker = async port => {
1342
- await invokeAndTransfer$3(
1350
+ await invokeAndTransfer$2(
1343
1351
  // @ts-ignore
1344
1352
  'SendMessagePortToSyntaxHighlightingWorker.sendMessagePortToSyntaxHighlightingWorker', port, 'HandleMessagePort.handleMessagePort2');
1345
1353
  };
1346
1354
  const handleDebugScriptParsed = async script => {
1347
- await invoke$4('Run And Debug.handleScriptParsed', script);
1355
+ await invoke$3('Run And Debug.handleScriptParsed', script);
1348
1356
  };
1349
1357
  const getWindowId = async () => {
1350
- return invoke$4('GetWindowId.getWindowId');
1358
+ return invoke$3('GetWindowId.getWindowId');
1351
1359
  };
1352
1360
  const getBlob = async uri => {
1353
1361
  // @ts-ignore
1354
- return invoke$4('FileSystem.getBlob', uri);
1362
+ return invoke$3('FileSystem.getBlob', uri);
1355
1363
  };
1356
1364
  const getExtensionCommands = async () => {
1357
- return invoke$4('ExtensionHost.getCommands');
1365
+ return invoke$3('ExtensionHost.getCommands');
1358
1366
  };
1359
1367
  const showErrorDialog = async errorInfo => {
1360
1368
  // @ts-ignore
1361
- await invoke$4('ErrorHandling.showErrorDialog', errorInfo);
1369
+ await invoke$3('ErrorHandling.showErrorDialog', errorInfo);
1362
1370
  };
1363
1371
  const getFolderSize = async uri => {
1364
1372
  // @ts-ignore
1365
- return await invoke$4('FileSystem.getFolderSize', uri);
1373
+ return await invoke$3('FileSystem.getFolderSize', uri);
1366
1374
  };
1367
1375
  const getExtension = async id => {
1368
1376
  // @ts-ignore
1369
- return invoke$4('ExtensionManagement.getExtension', id);
1377
+ return invoke$3('ExtensionManagement.getExtension', id);
1370
1378
  };
1371
1379
  const getMarkdownDom = async html => {
1372
1380
  // @ts-ignore
1373
- return invoke$4('Markdown.getVirtualDom', html);
1381
+ return invoke$3('Markdown.getVirtualDom', html);
1374
1382
  };
1375
1383
  const renderMarkdown = async (markdown, options) => {
1376
1384
  // @ts-ignore
1377
- return invoke$4('Markdown.renderMarkdown', markdown, options);
1385
+ return invoke$3('Markdown.renderMarkdown', markdown, options);
1378
1386
  };
1379
1387
  const openNativeFolder = async uri => {
1380
1388
  // @ts-ignore
1381
- await invoke$4('OpenNativeFolder.openNativeFolder', uri);
1389
+ await invoke$3('OpenNativeFolder.openNativeFolder', uri);
1382
1390
  };
1383
1391
  const uninstallExtension = async id => {
1384
- return invoke$4('ExtensionManagement.uninstall', id);
1392
+ return invoke$3('ExtensionManagement.uninstall', id);
1385
1393
  };
1386
1394
  const installExtension = async id => {
1387
1395
  // @ts-ignore
1388
- return invoke$4('ExtensionManagement.install', id);
1396
+ return invoke$3('ExtensionManagement.install', id);
1389
1397
  };
1390
1398
  const openExtensionSearch = async () => {
1391
1399
  // @ts-ignore
1392
- return invoke$4('SideBar.openViewlet', 'Extensions');
1400
+ return invoke$3('SideBar.openViewlet', 'Extensions');
1393
1401
  };
1394
1402
  const setExtensionsSearchValue = async searchValue => {
1395
1403
  // @ts-ignore
1396
- return invoke$4('Extensions.handleInput', searchValue, Script);
1404
+ return invoke$3('Extensions.handleInput', searchValue, Script);
1397
1405
  };
1398
1406
  const openExternal = async uri => {
1399
1407
  // @ts-ignore
1400
- await invoke$4('Open.openExternal', uri);
1408
+ await invoke$3('Open.openExternal', uri);
1401
1409
  };
1402
1410
  const openUrl = async uri => {
1403
1411
  // @ts-ignore
1404
- await invoke$4('Open.openUrl', uri);
1412
+ await invoke$3('Open.openUrl', uri);
1405
1413
  };
1406
1414
  const getAllPreferences = async () => {
1407
1415
  // @ts-ignore
1408
- return invoke$4('Preferences.getAll');
1416
+ return invoke$3('Preferences.getAll');
1409
1417
  };
1410
1418
  const showSaveFilePicker = async () => {
1411
1419
  // @ts-ignore
1412
- return invoke$4('FilePicker.showSaveFilePicker');
1420
+ return invoke$3('FilePicker.showSaveFilePicker');
1413
1421
  };
1414
1422
  const getLogsDir = async () => {
1415
1423
  // @ts-ignore
1416
- return invoke$4('PlatformPaths.getLogsDir');
1424
+ return invoke$3('PlatformPaths.getLogsDir');
1417
1425
  };
1418
1426
  const measureTextBlockHeight = async (actualInput, fontFamily, fontSize, lineHeightPx, width) => {
1419
- return invoke$4(`MeasureTextHeight.measureTextBlockHeight`, actualInput, fontFamily, fontSize, lineHeightPx, width);
1427
+ return invoke$3(`MeasureTextHeight.measureTextBlockHeight`, actualInput, fontFamily, fontSize, lineHeightPx, width);
1420
1428
  };
1421
1429
  const registerMockRpc = commandMap => {
1422
1430
  const mockRpc = createMockRpc({
@@ -1466,8 +1474,8 @@ const RendererWorker = {
1466
1474
  handleDebugScriptParsed,
1467
1475
  handleWorkspaceRefresh,
1468
1476
  installExtension,
1469
- invoke: invoke$4,
1470
- invokeAndTransfer: invokeAndTransfer$3,
1477
+ invoke: invoke$3,
1478
+ invokeAndTransfer: invokeAndTransfer$2,
1471
1479
  measureTextBlockHeight,
1472
1480
  openExtensionSearch,
1473
1481
  openExternal,
@@ -1724,13 +1732,11 @@ const getPortTuple = () => {
1724
1732
  };
1725
1733
 
1726
1734
  const {
1727
- invoke: invoke$3,
1728
- invokeAndTransfer: invokeAndTransfer$2
1729
- } = RendererWorker;
1735
+ invoke: invoke$2} = RendererWorker;
1730
1736
 
1731
1737
  const getSavedState = async () => {
1732
1738
  // @ts-ignore
1733
- return invoke$3('WebView.getSavedState');
1739
+ return invoke$2('WebView.getSavedState');
1734
1740
  };
1735
1741
 
1736
1742
  const getSavedWebViewState = async id => {
@@ -1848,7 +1854,7 @@ const getPort = () => {
1848
1854
  return location.port;
1849
1855
  };
1850
1856
 
1851
- const invoke$2 = async (method, ...params) => {
1857
+ const invoke$1 = async (method, ...params) => {
1852
1858
  // @ts-ignore
1853
1859
  return invoke$3('WebView.compatRendererProcessInvoke', method, ...params);
1854
1860
  };
@@ -1863,28 +1869,28 @@ const setPort = async (uid, port, origin, portType) => {
1863
1869
  await invokeAndTransfer$1('WebView.setPort', uid, port, origin, portType);
1864
1870
  };
1865
1871
 
1866
- const invoke$1 = async (method, ...params) => {
1872
+ const invoke = async (method, ...params) => {
1867
1873
  // @ts-ignore
1868
1874
  return invoke$3('WebView.compatSharedProcessInvoke', method, ...params);
1869
1875
  };
1870
1876
 
1871
1877
  const registerProtocol = async () => {
1872
- await invoke$1('WebViewServer.registerProtocol');
1878
+ await invoke('WebViewServer.registerProtocol');
1873
1879
  };
1874
1880
  const create = async (previewServerId, useNewWebViewHandler) => {
1875
- await invoke$1('WebViewServer.create', previewServerId, useNewWebViewHandler);
1881
+ await invoke('WebViewServer.create', previewServerId, useNewWebViewHandler);
1876
1882
  };
1877
1883
  const start = async (previewServerId, webViewPort) => {
1878
- await invoke$1('WebViewServer.start', previewServerId, webViewPort);
1884
+ await invoke('WebViewServer.start', previewServerId, webViewPort);
1879
1885
  };
1880
1886
  const setInfo2 = async info => {
1881
- await invoke$1('WebViewServer.setInfo2', info);
1887
+ await invoke('WebViewServer.setInfo2', info);
1882
1888
  };
1883
1889
  const setInfo = async (previewServerId, webViewId, webViewRoot, contentSecurityPolicy, iframeContent) => {
1884
- await invoke$1('WebViewServer.setInfo', previewServerId, webViewId, webViewRoot, contentSecurityPolicy, iframeContent);
1890
+ await invoke('WebViewServer.setInfo', previewServerId, webViewId, webViewRoot, contentSecurityPolicy, iframeContent);
1885
1891
  };
1886
1892
  const setHandler = async (previewServerId, frameAncestors, webViewRoot, contentSecurityPolicy, iframeContent, remotePathPrefix) => {
1887
- await invoke$1('WebViewServer.setHandler', previewServerId, frameAncestors, webViewRoot, contentSecurityPolicy, iframeContent);
1893
+ await invoke('WebViewServer.setHandler', previewServerId, frameAncestors, webViewRoot, contentSecurityPolicy, iframeContent);
1888
1894
  };
1889
1895
 
1890
1896
  const register$3 = async (previewServerId, webViewPort, frameAncestors, webViewRoot, csp, iframeContent, webViewId, remotePathPrefix, useNewWebViewHandler) => {
@@ -1950,7 +1956,7 @@ const create2 = async ({
1950
1956
  }) => {
1951
1957
  let root = '';
1952
1958
  if (platform === Remote) {
1953
- root = await invoke$1('Platform.getRoot');
1959
+ root = await invoke('Platform.getRoot');
1954
1960
  }
1955
1961
  const webViews = await getWebViews();
1956
1962
  const locationProtocol = getProtocol$1();
@@ -1982,7 +1988,7 @@ const create2 = async ({
1982
1988
  const permissionPolicyString = permissionPolicy.join('; ');
1983
1989
  const iframeCsp = platform === Web ? csp : '';
1984
1990
  const credentialless = getCredentialLess(locationHost);
1985
- await invoke$3('ExtensionHostManagement.activateByEvent', `onWebView:${webViewId}`);
1991
+ await invoke$2('ExtensionHostManagement.activateByEvent', `onWebView:${webViewId}`);
1986
1992
  const {
1987
1993
  port1,
1988
1994
  port2
@@ -1990,18 +1996,18 @@ const create2 = async ({
1990
1996
  const portId = create$1();
1991
1997
  const remotePathPrefix = '/remote';
1992
1998
  await register(previewServerId, webViewPort, frameAncestors, webViewRoot, csp, iframeContent, platform, webViewId, remotePathPrefix);
1993
- await invoke$2('WebView.create', id, iframeSrc, sandbox, iframeCsp, credentialless, permissionPolicyString, frameTitle);
1999
+ await invoke$1('WebView.create', id, iframeSrc, sandbox, iframeCsp, credentialless, permissionPolicyString, frameTitle);
1994
2000
 
1995
2001
  // TODO maybe iframe waitForLoad is not needed. since it cannot be used detect errors anyway
1996
2002
  // and causes flash of unstyled content, maybe a better way would be to just send the
1997
2003
  // port and wait for the first port message
1998
- await invoke$2('WebView.load', id);
2004
+ await invoke$1('WebView.load', id);
1999
2005
  const origin = getWebViewOrigin(webViewPort, platform, webViewScheme, webViewId);
2000
2006
  const portType = '';
2001
2007
  await setPort(id, port1, origin, portType);
2002
- await invokeAndTransfer$4('ExtensionHostWebView.create', webViewId, port2, uri, id, origin, webView);
2008
+ await invokeAndTransfer$3('ExtensionHostWebView.create', webViewId, port2, uri, id, origin, webView);
2003
2009
  const savedState = await getSavedWebViewState(webViewId);
2004
- await invoke$5('ExtensionHostWebView.load', webViewId, savedState);
2010
+ await invoke$4('ExtensionHostWebView.load', webViewId, savedState);
2005
2011
  return {
2006
2012
  csp: iframeCsp,
2007
2013
  iframeSrc,
@@ -2012,36 +2018,38 @@ const create2 = async ({
2012
2018
  };
2013
2019
 
2014
2020
  const createAndLoadWebView = async (id, iframeSrc, sandbox, iframeCsp, credentialless, permissionPolicyString, frameTitle) => {
2015
- await invoke$2('WebView.create', id, iframeSrc, sandbox, iframeCsp, credentialless, permissionPolicyString, frameTitle);
2021
+ await invoke$1('WebView.create', id, iframeSrc, sandbox, iframeCsp, credentialless, permissionPolicyString, frameTitle);
2016
2022
 
2017
2023
  // TODO maybe iframe waitForLoad is not needed. since it cannot be used detect errors anyway
2018
2024
  // and causes flash of unstyled content, maybe a better way would be to just send the
2019
2025
  // port and wait for the first port message
2020
- await invoke$2('WebView.load', id);
2026
+ await invoke$1('WebView.load', id);
2021
2027
  };
2022
2028
 
2023
- const invoke = async (method, ...params) => {
2024
- // @ts-ignore
2025
- return invoke$3('WebView.compatRendererWorkerInvoke', method, ...params);
2029
+ const createSecondaryWebViewConnection = async (uid, origin, port) => {
2030
+ const portType = 'application';
2031
+ await invokeAndTransfer$2('WebView.setPort', uid, port, origin, portType);
2026
2032
  };
2033
+
2027
2034
  const invokeAndTransfer = async (method, ...params) => {
2028
2035
  // @ts-ignore
2029
- return invokeAndTransfer$2('WebView.compatRendererWorkerInvokeAndTransfer', method, ...params);
2030
- };
2031
-
2032
- const createSecondaryWebViewConnection = async (uid, origin, port) => {
2033
- const portType = 'application';
2034
- await invokeAndTransfer('WebView.setPort', uid, port, origin, portType);
2036
+ return invokeAndTransfer$2(method, ...params);
2035
2037
  };
2036
2038
 
2037
2039
  const createWebViewConnection = async (uid, origin) => {
2038
- const rpc = await TransferMessagePortRpcParent.create({
2040
+ const {
2041
+ port1,
2042
+ port2
2043
+ } = getPortTuple();
2044
+ const rpcPromise = MessagePortRpcParent.create({
2039
2045
  commandMap: {},
2040
- async send(port) {
2041
- const portType = 'test';
2042
- await invokeAndTransfer('WebView.setPort', uid, port, origin, portType);
2043
- }
2046
+ isMessagePortOpen: false,
2047
+ messagePort: port2
2044
2048
  });
2049
+ const portType = 'test';
2050
+ await invokeAndTransfer('WebView.setPort', uid, port1, origin, portType);
2051
+ // TODO dispose rpc to avoid memory leak
2052
+ const rpc = await rpcPromise;
2045
2053
  return rpc;
2046
2054
  };
2047
2055
 
@@ -2063,7 +2071,7 @@ const getPortQuadruple = () => {
2063
2071
  };
2064
2072
 
2065
2073
  const readFile = uri => {
2066
- return invoke('FileSystem.readFile', uri);
2074
+ return invoke$3('FileSystem.readFile', uri);
2067
2075
  };
2068
2076
 
2069
2077
  const RE_PROTOCOL = /^([a-z-]+):\/\//;
@@ -2094,9 +2102,11 @@ const getAll$1 = () => {
2094
2102
  // 5. provide objectUrl to extension
2095
2103
 
2096
2104
  const getRemoteUrlForWebView = async options => {
2105
+ object(options);
2097
2106
  const webView = get(options.id);
2107
+ object(webView);
2098
2108
  const rpcPromise = createWebViewConnection(webView.webViewUid, webView.origin);
2099
- const blobPromise = invoke('FileSystem.getBlob', options.uri);
2109
+ const blobPromise = invoke$3('FileSystem.getBlob', options.uri);
2100
2110
  const [rpc, blob] = await Promise.all([rpcPromise, blobPromise]);
2101
2111
  const objectUrl = await rpc.invoke('createObjectUrl', blob);
2102
2112
  return objectUrl;
@@ -2142,7 +2152,7 @@ const getWebViewWorkerRpc2 = async rpcInfo => {
2142
2152
  const rpc = await TransferMessagePortRpcParent.create({
2143
2153
  commandMap: commandMap$1,
2144
2154
  async send(port) {
2145
- await invokeAndTransfer$4('WebView.createWebViewWorkerRpc2', rpcInfo, port);
2155
+ await invokeAndTransfer$3('WebView.createWebViewWorkerRpc2', rpcInfo, port);
2146
2156
  }
2147
2157
  });
2148
2158
  // TODO
@@ -2259,7 +2269,7 @@ const getWebViewWorkerRpc = async rpcInfo => {
2259
2269
  isMessagePortOpen: true,
2260
2270
  messagePort: port2
2261
2271
  });
2262
- await invokeAndTransfer$4('WebView.createWebViewWorkerRpc', rpcInfo, port1);
2272
+ await invokeAndTransfer$3('WebView.createWebViewWorkerRpc', rpcInfo, port1);
2263
2273
  const rpc = await rpcPromise;
2264
2274
  // TODO rpc module should start the port
2265
2275
  port2.start();
@@ -2300,7 +2310,7 @@ const createWebViewRpc = async (webView, savedState, uri, portId, webViewUid, or
2300
2310
  if (!webView || !webView.rpc || typeof webView.rpc !== 'string') {
2301
2311
  return;
2302
2312
  }
2303
- const rpcInfo = await invoke$5('WebView.getRpcInfo', webView.rpc);
2313
+ const rpcInfo = await invoke$4('WebView.getRpcInfo', webView.rpc);
2304
2314
  if (rpcInfo && rpcInfo.type === 'web-worker-2') {
2305
2315
  return createWebWorkerRpc2(rpcInfo, webView, savedState, uri, portId, webViewUid, origin);
2306
2316
  }
@@ -2351,7 +2361,7 @@ const create3 = async ({
2351
2361
  setPlatform(platform);
2352
2362
  let root = '';
2353
2363
  if (platform === Remote) {
2354
- root = await invoke$1('Platform.getRoot');
2364
+ root = await invoke('Platform.getRoot');
2355
2365
  }
2356
2366
  const webViews = await getWebViews();
2357
2367
  const webViewId = getWebViewId(webViews, uri);
@@ -2387,7 +2397,7 @@ const create3 = async ({
2387
2397
  const credentialless = getCredentialLess(locationHost);
2388
2398
 
2389
2399
  // TODO remove this
2390
- await invoke$3('ExtensionHostManagement.activateByEvent', `onWebView:${webViewId}`);
2400
+ await invoke$2('ExtensionHostManagement.activateByEvent', `onWebView:${webViewId}`);
2391
2401
  const portId = create$1();
2392
2402
  const remotePathPrefix = '/remote';
2393
2403
  await register(previewServerId, webViewPort, frameAncestors, webViewRoot, csp, iframeContent, platform, webViewId, remotePathPrefix, useNewWebViewHandler);
@@ -2401,11 +2411,11 @@ const create3 = async ({
2401
2411
  } = getPortTuple();
2402
2412
  const portType = '';
2403
2413
  await setPort(id, port1, origin, portType);
2404
- await invokeAndTransfer$4('ExtensionHostWebView.create', webViewId, port2, uri, id, origin, webView);
2414
+ await invokeAndTransfer$3('ExtensionHostWebView.create', webViewId, port2, uri, id, origin, webView);
2405
2415
  }
2406
2416
  const savedState = await getSavedWebViewState(webViewId);
2407
2417
  if (hasOldRpc) {
2408
- await invoke$5('ExtensionHostWebView.load', webViewId, savedState);
2418
+ await invoke$4('ExtensionHostWebView.load', webViewId, savedState);
2409
2419
  }
2410
2420
  await createWebViewRpc(webView, savedState, uri, portId, id, origin);
2411
2421
  return {
@@ -2419,11 +2429,11 @@ const create3 = async ({
2419
2429
 
2420
2430
  const executeCommand = (method, ...params) => {
2421
2431
  // @ts-ignore
2422
- return invoke$3('ExecuteExternalCommand.executeExternalCommand', method, ...params);
2432
+ return invoke$2('ExecuteExternalCommand.executeExternalCommand', method, ...params);
2423
2433
  };
2424
2434
 
2425
2435
  const getSecret = async key => {
2426
- return invoke('WebView.getSecret', key);
2436
+ return invoke$3('WebView.getSecret', key);
2427
2437
  };
2428
2438
 
2429
2439
  const getWebViewInfo = webViewId => {
@@ -2440,15 +2450,27 @@ const getWebViewInfo = webViewId => {
2440
2450
  };
2441
2451
 
2442
2452
  const handleMessagePort2 = async (port, rpcId) => {
2453
+ object(port);
2443
2454
  const rpc = await PlainMessagePortRpcParent.create({
2444
2455
  commandMap: {},
2445
2456
  messagePort: port
2446
2457
  });
2447
2458
  if (rpcId) {
2448
- set$2(rpcId, rpc);
2459
+ set$3(rpcId, rpc);
2449
2460
  }
2450
2461
  };
2451
2462
 
2463
+ const initialize = async platform => {
2464
+ setPlatform(platform);
2465
+ const rpc = await TransferMessagePortRpcParent.create({
2466
+ commandMap: {},
2467
+ async send(port) {
2468
+ await sendMessagePortToExtensionHostWorker(port, 0);
2469
+ }
2470
+ });
2471
+ set$2(rpc);
2472
+ };
2473
+
2452
2474
  const saveState = async () => {
2453
2475
  const all = getAll$1();
2454
2476
  const serialized = [];
@@ -2476,7 +2498,7 @@ const unregisterInterceptor = async id => {
2476
2498
 
2477
2499
  const commandMap = {
2478
2500
  'Iframes.handleMessagePort': handleMessagePort2,
2479
- 'Iframes.initialize': handleMessagePort2,
2501
+ 'Iframes.initialize': initialize,
2480
2502
  'WebView.create2': create2,
2481
2503
  'WebView.create3': create3,
2482
2504
  'WebView.executeExternalCommand': executeCommand,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/iframe-worker",
3
- "version": "6.0.0",
3
+ "version": "6.1.0",
4
4
  "description": "Web Worker to manage creation and lifecycle of iframes in Lvce Editor",
5
5
  "keywords": [
6
6
  "iframe"