@lvce-editor/extension-management-worker 3.2.0 → 3.4.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.
- package/dist/extensionManagementWorkerMain.js +163 -117
- package/package.json +1 -1
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
const activateByEvent = async () => {
|
|
2
|
+
// TODO
|
|
3
|
+
};
|
|
4
|
+
|
|
1
5
|
class AssertionError extends Error {
|
|
2
6
|
constructor(message) {
|
|
3
7
|
super(message);
|
|
@@ -604,7 +608,7 @@ const execute = (command, ...args) => {
|
|
|
604
608
|
|
|
605
609
|
const Two$1 = '2.0';
|
|
606
610
|
const callbacks = Object.create(null);
|
|
607
|
-
const get$
|
|
611
|
+
const get$4 = id => {
|
|
608
612
|
return callbacks[id];
|
|
609
613
|
};
|
|
610
614
|
const remove$1 = id => {
|
|
@@ -753,7 +757,7 @@ const warn$1 = (...args) => {
|
|
|
753
757
|
console.warn(...args);
|
|
754
758
|
};
|
|
755
759
|
const resolve = (id, response) => {
|
|
756
|
-
const fn = get$
|
|
760
|
+
const fn = get$4(id);
|
|
757
761
|
if (!fn) {
|
|
758
762
|
console.log(response);
|
|
759
763
|
warn$1(`callback ${id} may already be disposed`);
|
|
@@ -937,9 +941,9 @@ const create$a = (id, method, params) => {
|
|
|
937
941
|
return message;
|
|
938
942
|
};
|
|
939
943
|
|
|
940
|
-
let id
|
|
944
|
+
let id = 0;
|
|
941
945
|
const create$9 = () => {
|
|
942
|
-
return ++id
|
|
946
|
+
return ++id;
|
|
943
947
|
};
|
|
944
948
|
|
|
945
949
|
const registerPromise = map => {
|
|
@@ -1212,10 +1216,10 @@ const createMockRpc = ({
|
|
|
1212
1216
|
};
|
|
1213
1217
|
|
|
1214
1218
|
const rpcs$1 = Object.create(null);
|
|
1215
|
-
const set$
|
|
1219
|
+
const set$6 = (id, rpc) => {
|
|
1216
1220
|
rpcs$1[id] = rpc;
|
|
1217
1221
|
};
|
|
1218
|
-
const get$
|
|
1222
|
+
const get$3 = id => {
|
|
1219
1223
|
return rpcs$1[id];
|
|
1220
1224
|
};
|
|
1221
1225
|
const remove = id => {
|
|
@@ -1226,18 +1230,18 @@ const remove = id => {
|
|
|
1226
1230
|
const create$1 = rpcId => {
|
|
1227
1231
|
return {
|
|
1228
1232
|
async dispose() {
|
|
1229
|
-
const rpc = get$
|
|
1233
|
+
const rpc = get$3(rpcId);
|
|
1230
1234
|
await rpc.dispose();
|
|
1231
1235
|
},
|
|
1232
1236
|
// @ts-ignore
|
|
1233
1237
|
invoke(method, ...params) {
|
|
1234
|
-
const rpc = get$
|
|
1238
|
+
const rpc = get$3(rpcId);
|
|
1235
1239
|
// @ts-ignore
|
|
1236
1240
|
return rpc.invoke(method, ...params);
|
|
1237
1241
|
},
|
|
1238
1242
|
// @ts-ignore
|
|
1239
1243
|
invokeAndTransfer(method, ...params) {
|
|
1240
|
-
const rpc = get$
|
|
1244
|
+
const rpc = get$3(rpcId);
|
|
1241
1245
|
// @ts-ignore
|
|
1242
1246
|
return rpc.invokeAndTransfer(method, ...params);
|
|
1243
1247
|
},
|
|
@@ -1245,7 +1249,7 @@ const create$1 = rpcId => {
|
|
|
1245
1249
|
const mockRpc = createMockRpc({
|
|
1246
1250
|
commandMap
|
|
1247
1251
|
});
|
|
1248
|
-
set$
|
|
1252
|
+
set$6(rpcId, mockRpc);
|
|
1249
1253
|
// @ts-ignore
|
|
1250
1254
|
mockRpc[Symbol.dispose] = () => {
|
|
1251
1255
|
remove(rpcId);
|
|
@@ -1254,7 +1258,7 @@ const create$1 = rpcId => {
|
|
|
1254
1258
|
return mockRpc;
|
|
1255
1259
|
},
|
|
1256
1260
|
set(rpc) {
|
|
1257
|
-
set$
|
|
1261
|
+
set$6(rpcId, rpc);
|
|
1258
1262
|
}
|
|
1259
1263
|
};
|
|
1260
1264
|
};
|
|
@@ -1271,12 +1275,12 @@ const SharedProcess = 1492;
|
|
|
1271
1275
|
|
|
1272
1276
|
const {
|
|
1273
1277
|
invoke: invoke$4,
|
|
1274
|
-
set: set$
|
|
1278
|
+
set: set$5
|
|
1275
1279
|
} = create$1(ExtensionHostWorker);
|
|
1276
1280
|
|
|
1277
1281
|
const {
|
|
1278
1282
|
invoke: invoke$3,
|
|
1279
|
-
set: set$
|
|
1283
|
+
set: set$4
|
|
1280
1284
|
} = create$1(FileSystemWorker);
|
|
1281
1285
|
const readFile = async uri => {
|
|
1282
1286
|
return invoke$3('FileSystem.readFile', uri);
|
|
@@ -1291,8 +1295,12 @@ const exists = async uri => {
|
|
|
1291
1295
|
const {
|
|
1292
1296
|
invoke: invoke$2,
|
|
1293
1297
|
invokeAndTransfer: invokeAndTransfer$1,
|
|
1294
|
-
set: set$
|
|
1298
|
+
set: set$3
|
|
1295
1299
|
} = create$1(RendererWorker);
|
|
1300
|
+
const sendMessagePortToIconThemeWorker = async (port, rpcId) => {
|
|
1301
|
+
const command = 'IconTheme.handleMessagePort';
|
|
1302
|
+
await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToIconThemeWorker', port, command, rpcId);
|
|
1303
|
+
};
|
|
1296
1304
|
const sendMessagePortToFileSystemWorker = async (port, rpcId) => {
|
|
1297
1305
|
const command = 'FileSystem.handleMessagePort';
|
|
1298
1306
|
await invokeAndTransfer$1('SendMessagePortToExtensionHostWorker.sendMessagePortToFileSystemWorker', port, command, rpcId);
|
|
@@ -1308,7 +1316,7 @@ const sendMessagePortToSharedProcess = async port => {
|
|
|
1308
1316
|
|
|
1309
1317
|
const {
|
|
1310
1318
|
invoke: invoke$1,
|
|
1311
|
-
set: set$
|
|
1319
|
+
set: set$2
|
|
1312
1320
|
} = create$1(SharedProcess);
|
|
1313
1321
|
|
|
1314
1322
|
const create = () => {
|
|
@@ -1323,6 +1331,91 @@ const isCanceled = token => {
|
|
|
1323
1331
|
return token.finished;
|
|
1324
1332
|
};
|
|
1325
1333
|
|
|
1334
|
+
const None = 0;
|
|
1335
|
+
const Importing = 1;
|
|
1336
|
+
const Activating = 2;
|
|
1337
|
+
const Activated = 3;
|
|
1338
|
+
const Error$1 = 4;
|
|
1339
|
+
|
|
1340
|
+
/* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
|
|
1341
|
+
|
|
1342
|
+
const createInitialState = () => {
|
|
1343
|
+
return {
|
|
1344
|
+
activatedExtensions: Object.create(null),
|
|
1345
|
+
cachedActivationEvents: Object.create(null),
|
|
1346
|
+
cachedExtensions: undefined,
|
|
1347
|
+
disabledIds: [],
|
|
1348
|
+
platform: 0,
|
|
1349
|
+
runtimeStatuses: Object.create(null),
|
|
1350
|
+
webExtensions: []
|
|
1351
|
+
};
|
|
1352
|
+
};
|
|
1353
|
+
const createEmptyRuntimeStatus = id => {
|
|
1354
|
+
return {
|
|
1355
|
+
activationEndTime: 0,
|
|
1356
|
+
activationEvent: '',
|
|
1357
|
+
activationStartTime: 0,
|
|
1358
|
+
activationTime: 0,
|
|
1359
|
+
id,
|
|
1360
|
+
importEndTime: 0,
|
|
1361
|
+
importStartTime: 0,
|
|
1362
|
+
importTime: 0,
|
|
1363
|
+
status: None
|
|
1364
|
+
};
|
|
1365
|
+
};
|
|
1366
|
+
let extensionsState = createInitialState();
|
|
1367
|
+
const get$2 = () => {
|
|
1368
|
+
return extensionsState;
|
|
1369
|
+
};
|
|
1370
|
+
const set$1 = newState => {
|
|
1371
|
+
extensionsState = newState;
|
|
1372
|
+
};
|
|
1373
|
+
const update = newState => {
|
|
1374
|
+
set$1({
|
|
1375
|
+
...extensionsState,
|
|
1376
|
+
...newState
|
|
1377
|
+
});
|
|
1378
|
+
};
|
|
1379
|
+
const setPlatform = platform => {
|
|
1380
|
+
update({
|
|
1381
|
+
platform
|
|
1382
|
+
});
|
|
1383
|
+
};
|
|
1384
|
+
const hasWebExtensionUri = uri => {
|
|
1385
|
+
return extensionsState.webExtensions.some(extension => extension.uri === uri);
|
|
1386
|
+
};
|
|
1387
|
+
const addWebExtension$1 = extension => {
|
|
1388
|
+
update({
|
|
1389
|
+
webExtensions: [...extensionsState.webExtensions, extension]
|
|
1390
|
+
});
|
|
1391
|
+
};
|
|
1392
|
+
const clearCachedExtensions = () => {
|
|
1393
|
+
update({
|
|
1394
|
+
cachedExtensions: undefined
|
|
1395
|
+
});
|
|
1396
|
+
};
|
|
1397
|
+
const setRuntimeStatus = status => {
|
|
1398
|
+
update({
|
|
1399
|
+
runtimeStatuses: {
|
|
1400
|
+
...extensionsState.runtimeStatuses,
|
|
1401
|
+
[status.id]: {
|
|
1402
|
+
...status
|
|
1403
|
+
}
|
|
1404
|
+
}
|
|
1405
|
+
});
|
|
1406
|
+
};
|
|
1407
|
+
const updateRuntimeStatus = (id, statusUpdate) => {
|
|
1408
|
+
const previousStatus = extensionsState.runtimeStatuses[id] || createEmptyRuntimeStatus(id);
|
|
1409
|
+
setRuntimeStatus({
|
|
1410
|
+
...previousStatus,
|
|
1411
|
+
...statusUpdate,
|
|
1412
|
+
id
|
|
1413
|
+
});
|
|
1414
|
+
};
|
|
1415
|
+
const getRuntimeStatus$1 = extensionId => {
|
|
1416
|
+
return extensionsState.runtimeStatuses[extensionId];
|
|
1417
|
+
};
|
|
1418
|
+
|
|
1326
1419
|
const baseName = path => {
|
|
1327
1420
|
const slashIndex = path.lastIndexOf('/');
|
|
1328
1421
|
return path.slice(slashIndex + 1);
|
|
@@ -1353,26 +1446,6 @@ const isImportError = error => {
|
|
|
1353
1446
|
return isImportErrorChrome(error) || isImportErrorFirefox(error) || isSyntaxError(error);
|
|
1354
1447
|
};
|
|
1355
1448
|
|
|
1356
|
-
const states = Object.create(null);
|
|
1357
|
-
const set$2 = status => {
|
|
1358
|
-
states[status.id] = status;
|
|
1359
|
-
};
|
|
1360
|
-
const get$4 = extensionId => {
|
|
1361
|
-
return states[extensionId];
|
|
1362
|
-
};
|
|
1363
|
-
const update$1 = (id, update) => {
|
|
1364
|
-
states[id] = {
|
|
1365
|
-
...states[id],
|
|
1366
|
-
...update
|
|
1367
|
-
};
|
|
1368
|
-
};
|
|
1369
|
-
|
|
1370
|
-
const None = 0;
|
|
1371
|
-
const Importing = 1;
|
|
1372
|
-
const Activating = 2;
|
|
1373
|
-
const Activated = 3;
|
|
1374
|
-
const Error$1 = 4;
|
|
1375
|
-
|
|
1376
1449
|
const sleep = duration => {
|
|
1377
1450
|
const {
|
|
1378
1451
|
promise,
|
|
@@ -1422,14 +1495,14 @@ const activateExtension2 = async (extensionId, extension, absolutePath) => {
|
|
|
1422
1495
|
const token = create();
|
|
1423
1496
|
try {
|
|
1424
1497
|
const startTime = performance.now();
|
|
1425
|
-
|
|
1498
|
+
updateRuntimeStatus(extensionId, {
|
|
1426
1499
|
activationStartTime: startTime,
|
|
1427
1500
|
status: Activating
|
|
1428
1501
|
});
|
|
1429
1502
|
await Promise.race([activate(extensionId, extension), rejectAfterTimeout(activationTimeout, token)]);
|
|
1430
1503
|
const endTime = performance.now();
|
|
1431
1504
|
const time = endTime - startTime;
|
|
1432
|
-
|
|
1505
|
+
updateRuntimeStatus(extensionId, {
|
|
1433
1506
|
activationEndTime: endTime,
|
|
1434
1507
|
activationTime: time,
|
|
1435
1508
|
status: Activated
|
|
@@ -1442,7 +1515,7 @@ const activateExtension2 = async (extensionId, extension, absolutePath) => {
|
|
|
1442
1515
|
cause: error
|
|
1443
1516
|
});
|
|
1444
1517
|
}
|
|
1445
|
-
|
|
1518
|
+
updateRuntimeStatus(extensionId, {
|
|
1446
1519
|
status: Error$1 // TODO maybe store error also in runtime status state
|
|
1447
1520
|
});
|
|
1448
1521
|
throw new VError(error, `Failed to activate extension ${id}`);
|
|
@@ -1455,7 +1528,7 @@ const rpcs = Object.create(null);
|
|
|
1455
1528
|
const add = (id, rpc) => {
|
|
1456
1529
|
rpcs[id] = rpc;
|
|
1457
1530
|
};
|
|
1458
|
-
const get$
|
|
1531
|
+
const get$1 = id => {
|
|
1459
1532
|
return rpcs[id];
|
|
1460
1533
|
};
|
|
1461
1534
|
|
|
@@ -1498,7 +1571,7 @@ const importExtension = async (extensionId, absolutePath, activationEvent) => {
|
|
|
1498
1571
|
try {
|
|
1499
1572
|
string(absolutePath);
|
|
1500
1573
|
const startTime = performance.now();
|
|
1501
|
-
|
|
1574
|
+
setRuntimeStatus({
|
|
1502
1575
|
activationEndTime: 0,
|
|
1503
1576
|
activationEvent: activationEvent,
|
|
1504
1577
|
activationStartTime: performance.now(),
|
|
@@ -1513,12 +1586,12 @@ const importExtension = async (extensionId, absolutePath, activationEvent) => {
|
|
|
1513
1586
|
await invoke$4('ExtensionHost.importExtension2', extensionId, absolutePath);
|
|
1514
1587
|
const endTime = performance.now();
|
|
1515
1588
|
const time = endTime - startTime;
|
|
1516
|
-
|
|
1589
|
+
updateRuntimeStatus(extensionId, {
|
|
1517
1590
|
importEndTime: endTime,
|
|
1518
1591
|
importTime: time
|
|
1519
1592
|
});
|
|
1520
1593
|
} catch (error) {
|
|
1521
|
-
|
|
1594
|
+
updateRuntimeStatus(extensionId, {
|
|
1522
1595
|
status: Error$1 // TODO maybe store error also in runtime status state
|
|
1523
1596
|
});
|
|
1524
1597
|
if (isImportError(error)) {
|
|
@@ -1549,22 +1622,6 @@ const activateExtension3 = async (extension, absolutePath, activationEvent, plat
|
|
|
1549
1622
|
await activateExtension2(extensionId, extension, absolutePath);
|
|
1550
1623
|
};
|
|
1551
1624
|
|
|
1552
|
-
const state$1 = {
|
|
1553
|
-
webExtensions: []
|
|
1554
|
-
};
|
|
1555
|
-
const push = extension => {
|
|
1556
|
-
state$1.webExtensions.push(extension);
|
|
1557
|
-
};
|
|
1558
|
-
const get$2 = () => {
|
|
1559
|
-
return state$1.webExtensions;
|
|
1560
|
-
};
|
|
1561
|
-
|
|
1562
|
-
const cache = Object.create(null);
|
|
1563
|
-
const id = 1;
|
|
1564
|
-
const clear = () => {
|
|
1565
|
-
delete cache[id];
|
|
1566
|
-
};
|
|
1567
|
-
|
|
1568
1625
|
const getJson$1 = async url => {
|
|
1569
1626
|
try {
|
|
1570
1627
|
const response = await fetch(url);
|
|
@@ -1598,11 +1655,13 @@ const getWebManifestPath = path => {
|
|
|
1598
1655
|
};
|
|
1599
1656
|
|
|
1600
1657
|
const addWebExtension = async path => {
|
|
1658
|
+
if (hasWebExtensionUri(path)) {
|
|
1659
|
+
return undefined;
|
|
1660
|
+
}
|
|
1601
1661
|
const manifestPath = getWebManifestPath(path);
|
|
1602
1662
|
const manifest = await getWebExtensionManifest(path, manifestPath);
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
clear();
|
|
1663
|
+
addWebExtension$1(manifest);
|
|
1664
|
+
clearCachedExtensions();
|
|
1606
1665
|
return manifest;
|
|
1607
1666
|
};
|
|
1608
1667
|
|
|
@@ -1702,32 +1761,10 @@ const setJson = async (cacheKey, data) => {
|
|
|
1702
1761
|
|
|
1703
1762
|
const disabledExtensionsCacheKey = '/cache/disabledExtensions.json';
|
|
1704
1763
|
|
|
1705
|
-
/* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
|
|
1706
|
-
|
|
1707
|
-
let state = {
|
|
1708
|
-
activatedExtensions: Object.create(null),
|
|
1709
|
-
cachedActivationEvents: Object.create(null),
|
|
1710
|
-
disabledIds: [],
|
|
1711
|
-
platform: 0
|
|
1712
|
-
};
|
|
1713
|
-
const set$1 = newState => {
|
|
1714
|
-
state = newState;
|
|
1715
|
-
};
|
|
1716
|
-
const update = newState => {
|
|
1717
|
-
const fullNewState = {
|
|
1718
|
-
...state,
|
|
1719
|
-
...newState
|
|
1720
|
-
};
|
|
1721
|
-
state = fullNewState;
|
|
1722
|
-
};
|
|
1723
|
-
const get$1 = () => {
|
|
1724
|
-
return state;
|
|
1725
|
-
};
|
|
1726
|
-
|
|
1727
1764
|
const disableExtension2$1 = async (id, platform) => {
|
|
1728
1765
|
const isTest = platform === Test;
|
|
1729
1766
|
const isWeb = platform === Web;
|
|
1730
|
-
const oldState = get$
|
|
1767
|
+
const oldState = get$2(); // TODO maybe pass in an application id? Would allow multiple editors with different extensions.
|
|
1731
1768
|
if (isTest) {
|
|
1732
1769
|
const newState = {
|
|
1733
1770
|
...oldState,
|
|
@@ -1749,7 +1786,7 @@ const disableExtension2$1 = async (id, platform) => {
|
|
|
1749
1786
|
const enableExtension2$1 = async (id, platform) => {
|
|
1750
1787
|
const isTest = platform === Test;
|
|
1751
1788
|
const isWeb = platform === Web;
|
|
1752
|
-
const oldState = get$
|
|
1789
|
+
const oldState = get$2();
|
|
1753
1790
|
if (isTest) {
|
|
1754
1791
|
const newState = {
|
|
1755
1792
|
...oldState,
|
|
@@ -1784,7 +1821,7 @@ const disableExtension2 = async (id, platform) => {
|
|
|
1784
1821
|
};
|
|
1785
1822
|
|
|
1786
1823
|
const disableExtension = async (id, isTest) => {
|
|
1787
|
-
const oldState = get$
|
|
1824
|
+
const oldState = get$2();
|
|
1788
1825
|
return disableExtension2(id, oldState.platform);
|
|
1789
1826
|
};
|
|
1790
1827
|
|
|
@@ -1811,7 +1848,7 @@ const enableExtension2 = async (id, platform) => {
|
|
|
1811
1848
|
};
|
|
1812
1849
|
|
|
1813
1850
|
const enableExtension = async (id, isTest) => {
|
|
1814
|
-
const oldState = get$
|
|
1851
|
+
const oldState = get$2();
|
|
1815
1852
|
return enableExtension2(id, oldState.platform);
|
|
1816
1853
|
};
|
|
1817
1854
|
|
|
@@ -1980,7 +2017,7 @@ const getColorThemeUri = (extensions, colorThemeId) => {
|
|
|
1980
2017
|
};
|
|
1981
2018
|
|
|
1982
2019
|
const getDynamicWebExtensions = () => {
|
|
1983
|
-
return get$2();
|
|
2020
|
+
return get$2().webExtensions;
|
|
1984
2021
|
};
|
|
1985
2022
|
|
|
1986
2023
|
const getWebExtensionsUrl = assetDir => {
|
|
@@ -2142,7 +2179,7 @@ const getRemoteUrlForWebView = async (uri, options = {}) => {
|
|
|
2142
2179
|
};
|
|
2143
2180
|
|
|
2144
2181
|
const getRpcInfo = rpcId => {
|
|
2145
|
-
const info = get$
|
|
2182
|
+
const info = get$1(rpcId);
|
|
2146
2183
|
if (!info) {
|
|
2147
2184
|
throw new Error(`Rpc not found ${rpcId}`);
|
|
2148
2185
|
}
|
|
@@ -2161,7 +2198,7 @@ const emptyStatus = {
|
|
|
2161
2198
|
status: None
|
|
2162
2199
|
};
|
|
2163
2200
|
const getRuntimeStatus = extensionId => {
|
|
2164
|
-
return
|
|
2201
|
+
return getRuntimeStatus$1(extensionId) || emptyStatus;
|
|
2165
2202
|
};
|
|
2166
2203
|
|
|
2167
2204
|
const commandMapRef = {};
|
|
@@ -2173,26 +2210,6 @@ const handleMessagePort = async port => {
|
|
|
2173
2210
|
});
|
|
2174
2211
|
};
|
|
2175
2212
|
|
|
2176
|
-
const initializeExtensionHostWorker = async () => {
|
|
2177
|
-
const rpc = await create$6({
|
|
2178
|
-
commandMap: commandMapRef,
|
|
2179
|
-
async send(port) {
|
|
2180
|
-
await sendMessagePortToExtensionHostWorker(port, 0);
|
|
2181
|
-
}
|
|
2182
|
-
});
|
|
2183
|
-
set$6(rpc);
|
|
2184
|
-
};
|
|
2185
|
-
|
|
2186
|
-
const initializeFileSystemWorker = async () => {
|
|
2187
|
-
const rpc = await create$6({
|
|
2188
|
-
commandMap: commandMapRef,
|
|
2189
|
-
async send(port) {
|
|
2190
|
-
await sendMessagePortToFileSystemWorker(port, 0);
|
|
2191
|
-
}
|
|
2192
|
-
});
|
|
2193
|
-
set$5(rpc);
|
|
2194
|
-
};
|
|
2195
|
-
|
|
2196
2213
|
const getRpcRemote = async () => {
|
|
2197
2214
|
const rpc = await create$4({
|
|
2198
2215
|
commandMap: commandMapRef,
|
|
@@ -2222,15 +2239,13 @@ const getRpc = async platform => {
|
|
|
2222
2239
|
const initializeSharedProcess = async platform => {
|
|
2223
2240
|
const rpc = await getRpc(platform);
|
|
2224
2241
|
if (rpc) {
|
|
2225
|
-
set$
|
|
2242
|
+
set$2(rpc);
|
|
2226
2243
|
}
|
|
2227
2244
|
};
|
|
2228
2245
|
|
|
2229
2246
|
const initialize = async platform => {
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
});
|
|
2233
|
-
await Promise.all([initializeFileSystemWorker(), initializeSharedProcess(platform), initializeExtensionHostWorker()]);
|
|
2247
|
+
setPlatform(platform);
|
|
2248
|
+
await initializeSharedProcess(platform);
|
|
2234
2249
|
};
|
|
2235
2250
|
|
|
2236
2251
|
const installExtension = async () => {
|
|
@@ -2297,6 +2312,7 @@ const uninstallExtension = async () => {
|
|
|
2297
2312
|
const commandMap = {
|
|
2298
2313
|
'Extensions.activate2': activateExtension2,
|
|
2299
2314
|
'Extensions.activate3': activateExtension3,
|
|
2315
|
+
'Extensions.activateByEvent': activateByEvent,
|
|
2300
2316
|
'Extensions.addWebExtension': addWebExtension,
|
|
2301
2317
|
'Extensions.createWebViewWorkerRpc': createWebViewWorkerRpc,
|
|
2302
2318
|
'Extensions.createWebViewWorkerRpc2': createWebViewWorkerRpc2,
|
|
@@ -2323,16 +2339,46 @@ const commandMap = {
|
|
|
2323
2339
|
'Extensions.uninstall': uninstallExtension
|
|
2324
2340
|
};
|
|
2325
2341
|
|
|
2342
|
+
const initializeExtensionHostWorker = async () => {
|
|
2343
|
+
const rpc = await create$6({
|
|
2344
|
+
commandMap: commandMapRef,
|
|
2345
|
+
async send(port) {
|
|
2346
|
+
await sendMessagePortToExtensionHostWorker(port, 0);
|
|
2347
|
+
}
|
|
2348
|
+
});
|
|
2349
|
+
set$5(rpc);
|
|
2350
|
+
};
|
|
2351
|
+
|
|
2352
|
+
const initializeFileSystemWorker = async () => {
|
|
2353
|
+
const rpc = await create$6({
|
|
2354
|
+
commandMap: commandMapRef,
|
|
2355
|
+
async send(port) {
|
|
2356
|
+
await sendMessagePortToFileSystemWorker(port, 0);
|
|
2357
|
+
}
|
|
2358
|
+
});
|
|
2359
|
+
set$4(rpc);
|
|
2360
|
+
};
|
|
2361
|
+
|
|
2362
|
+
const initializeIframeWorker = async () => {
|
|
2363
|
+
const rpc = await create$6({
|
|
2364
|
+
commandMap: {},
|
|
2365
|
+
async send(port) {
|
|
2366
|
+
await sendMessagePortToIconThemeWorker(port, 0);
|
|
2367
|
+
}
|
|
2368
|
+
});
|
|
2369
|
+
return rpc;
|
|
2370
|
+
};
|
|
2371
|
+
|
|
2326
2372
|
const initializeRendererWorker = async () => {
|
|
2327
2373
|
const rpc = await create$2({
|
|
2328
2374
|
commandMap: commandMap
|
|
2329
2375
|
});
|
|
2330
|
-
set$
|
|
2376
|
+
set$3(rpc);
|
|
2331
2377
|
};
|
|
2332
2378
|
|
|
2333
2379
|
const listen = async () => {
|
|
2334
2380
|
Object.assign(commandMapRef, commandMap);
|
|
2335
|
-
await initializeRendererWorker();
|
|
2381
|
+
await Promise.all([initializeRendererWorker(), initializeFileSystemWorker(), initializeIframeWorker(), initializeExtensionHostWorker()]);
|
|
2336
2382
|
};
|
|
2337
2383
|
|
|
2338
2384
|
const main = async () => {
|