@lvce-editor/extension-host-worker 4.7.0 → 4.9.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/extensionHostWorkerMain.js +77 -65
- package/package.json +1 -1
|
@@ -90,8 +90,6 @@ const fn = value => {
|
|
|
90
90
|
};
|
|
91
91
|
|
|
92
92
|
const state$e = {
|
|
93
|
-
/** @type{any[]} */
|
|
94
|
-
onDidOpenEditorListeners: [],
|
|
95
93
|
/** @type{any[]} */
|
|
96
94
|
onWillChangeEditorListeners: [],
|
|
97
95
|
/** @type{any[]} */
|
|
@@ -571,7 +569,7 @@ const registerMethod = ({
|
|
|
571
569
|
}
|
|
572
570
|
};
|
|
573
571
|
};
|
|
574
|
-
const create$
|
|
572
|
+
const create$b = ({
|
|
575
573
|
name,
|
|
576
574
|
resultShape,
|
|
577
575
|
executeKey = '',
|
|
@@ -621,9 +619,7 @@ const String$1 = 'string';
|
|
|
621
619
|
|
|
622
620
|
const {
|
|
623
621
|
registerBraceCompletionProvider,
|
|
624
|
-
executeBraceCompletionProvider
|
|
625
|
-
reset: reset$9
|
|
626
|
-
} = create$a({
|
|
622
|
+
executeBraceCompletionProvider} = create$b({
|
|
627
623
|
name: 'BraceCompletion',
|
|
628
624
|
resultShape: {
|
|
629
625
|
type: Boolean$1
|
|
@@ -633,7 +629,7 @@ const {
|
|
|
633
629
|
const {
|
|
634
630
|
registerClosingTagProvider,
|
|
635
631
|
executeClosingTagProvider
|
|
636
|
-
} = create$
|
|
632
|
+
} = create$b({
|
|
637
633
|
name: 'ClosingTag',
|
|
638
634
|
returnUndefinedWhenNoProviderFound: true,
|
|
639
635
|
resultShape: {
|
|
@@ -645,7 +641,7 @@ const {
|
|
|
645
641
|
const {
|
|
646
642
|
registerCodeActionProvider,
|
|
647
643
|
executeCodeActionProvider
|
|
648
|
-
} = create$
|
|
644
|
+
} = create$b({
|
|
649
645
|
name: 'CodeAction',
|
|
650
646
|
resultShape: {
|
|
651
647
|
type: Array$1,
|
|
@@ -728,7 +724,7 @@ const {
|
|
|
728
724
|
registerCompletionProvider,
|
|
729
725
|
executeCompletionProvider,
|
|
730
726
|
executeresolveCompletionItemProvider
|
|
731
|
-
} = create$
|
|
727
|
+
} = create$b({
|
|
732
728
|
name: 'Completion',
|
|
733
729
|
resultShape: {
|
|
734
730
|
type: Array$1,
|
|
@@ -905,9 +901,7 @@ const setPauseOnExceptions = async (protocol, value) => {
|
|
|
905
901
|
|
|
906
902
|
const {
|
|
907
903
|
registerDefinitionProvider,
|
|
908
|
-
executeDefinitionProvider
|
|
909
|
-
reset: reset$8
|
|
910
|
-
} = create$a({
|
|
904
|
+
executeDefinitionProvider} = create$b({
|
|
911
905
|
name: 'Definition',
|
|
912
906
|
resultShape: {
|
|
913
907
|
allowUndefined: true,
|
|
@@ -929,7 +923,7 @@ const {
|
|
|
929
923
|
const {
|
|
930
924
|
registerDiagnosticProvider,
|
|
931
925
|
executeDiagnosticProvider
|
|
932
|
-
} = create$
|
|
926
|
+
} = create$b({
|
|
933
927
|
name: 'Diagnostic',
|
|
934
928
|
resultShape: {
|
|
935
929
|
type: Array$1,
|
|
@@ -1028,9 +1022,7 @@ const getPathSeparator = protocol => {
|
|
|
1028
1022
|
|
|
1029
1023
|
const {
|
|
1030
1024
|
registerFormattingProvider,
|
|
1031
|
-
executeFormattingProvider
|
|
1032
|
-
reset: reset$7
|
|
1033
|
-
} = create$a({
|
|
1025
|
+
executeFormattingProvider} = create$b({
|
|
1034
1026
|
name: 'Formatting',
|
|
1035
1027
|
executeKey: 'format',
|
|
1036
1028
|
resultShape: {
|
|
@@ -1092,9 +1084,7 @@ const getPosition = (textDocument, offset) => {
|
|
|
1092
1084
|
|
|
1093
1085
|
const {
|
|
1094
1086
|
registerHoverProvider,
|
|
1095
|
-
executeHoverProvider
|
|
1096
|
-
reset: reset$6
|
|
1097
|
-
} = create$a({
|
|
1087
|
+
executeHoverProvider} = create$b({
|
|
1098
1088
|
name: 'Hover',
|
|
1099
1089
|
resultShape: {
|
|
1100
1090
|
allowUndefined: true,
|
|
@@ -1105,9 +1095,7 @@ const {
|
|
|
1105
1095
|
|
|
1106
1096
|
const {
|
|
1107
1097
|
registerImplementationProvider,
|
|
1108
|
-
executeImplementationProvider
|
|
1109
|
-
reset: reset$5
|
|
1110
|
-
} = create$a({
|
|
1098
|
+
executeImplementationProvider} = create$b({
|
|
1111
1099
|
name: 'Implementation',
|
|
1112
1100
|
resultShape: {
|
|
1113
1101
|
type: Array$1,
|
|
@@ -1527,7 +1515,7 @@ const getFirstEvent = (eventEmitter, eventMap) => {
|
|
|
1527
1515
|
return promise;
|
|
1528
1516
|
};
|
|
1529
1517
|
const Message$1 = 3;
|
|
1530
|
-
const create$5$
|
|
1518
|
+
const create$5$1 = async ({
|
|
1531
1519
|
messagePort,
|
|
1532
1520
|
isMessagePortOpen
|
|
1533
1521
|
}) => {
|
|
@@ -1578,7 +1566,7 @@ const wrap$5 = messagePort => {
|
|
|
1578
1566
|
};
|
|
1579
1567
|
const IpcParentWithMessagePort$1 = {
|
|
1580
1568
|
__proto__: null,
|
|
1581
|
-
create: create$5$
|
|
1569
|
+
create: create$5$1,
|
|
1582
1570
|
signal: signal$1,
|
|
1583
1571
|
wrap: wrap$5
|
|
1584
1572
|
};
|
|
@@ -1602,7 +1590,7 @@ const waitForWebSocketToBeOpen = webSocket => {
|
|
|
1602
1590
|
error: Error$3
|
|
1603
1591
|
});
|
|
1604
1592
|
};
|
|
1605
|
-
const create$
|
|
1593
|
+
const create$a = async ({
|
|
1606
1594
|
webSocket
|
|
1607
1595
|
}) => {
|
|
1608
1596
|
const firstWebSocketEvent = await waitForWebSocketToBeOpen(webSocket);
|
|
@@ -1639,7 +1627,7 @@ const wrap$1 = webSocket => {
|
|
|
1639
1627
|
};
|
|
1640
1628
|
const IpcParentWithWebSocket$1$1 = {
|
|
1641
1629
|
__proto__: null,
|
|
1642
|
-
create: create$
|
|
1630
|
+
create: create$a,
|
|
1643
1631
|
wrap: wrap$1
|
|
1644
1632
|
};
|
|
1645
1633
|
|
|
@@ -1880,7 +1868,7 @@ const getErrorResponse = (message, error, preparePrettyError, logError) => {
|
|
|
1880
1868
|
const errorProperty = getErrorProperty(error, prettyError);
|
|
1881
1869
|
return create$1$2(message, errorProperty);
|
|
1882
1870
|
};
|
|
1883
|
-
const create$
|
|
1871
|
+
const create$9 = (message, result) => {
|
|
1884
1872
|
return {
|
|
1885
1873
|
jsonrpc: Two,
|
|
1886
1874
|
id: message.id,
|
|
@@ -1889,7 +1877,7 @@ const create$8 = (message, result) => {
|
|
|
1889
1877
|
};
|
|
1890
1878
|
const getSuccessResponse = (message, result) => {
|
|
1891
1879
|
const resultProperty = result ?? null;
|
|
1892
|
-
return create$
|
|
1880
|
+
return create$9(message, resultProperty);
|
|
1893
1881
|
};
|
|
1894
1882
|
const getResponse = async (message, ipc, execute, preparePrettyError, logError, requiresSocket) => {
|
|
1895
1883
|
try {
|
|
@@ -2053,7 +2041,7 @@ const listen$1 = async (module, options) => {
|
|
|
2053
2041
|
const ipc = module.wrap(rawIpc);
|
|
2054
2042
|
return ipc;
|
|
2055
2043
|
};
|
|
2056
|
-
const create$
|
|
2044
|
+
const create$7 = async ({
|
|
2057
2045
|
commandMap,
|
|
2058
2046
|
messagePort
|
|
2059
2047
|
}) => {
|
|
@@ -2068,9 +2056,9 @@ const create$6$1 = async ({
|
|
|
2068
2056
|
};
|
|
2069
2057
|
const MessagePortRpcClient = {
|
|
2070
2058
|
__proto__: null,
|
|
2071
|
-
create: create$
|
|
2059
|
+
create: create$7
|
|
2072
2060
|
};
|
|
2073
|
-
const create$
|
|
2061
|
+
const create$6$1 = async ({
|
|
2074
2062
|
commandMap,
|
|
2075
2063
|
messagePort,
|
|
2076
2064
|
isMessagePortOpen
|
|
@@ -2088,7 +2076,7 @@ const create$5$1 = async ({
|
|
|
2088
2076
|
};
|
|
2089
2077
|
const MessagePortRpcParent = {
|
|
2090
2078
|
__proto__: null,
|
|
2091
|
-
create: create$
|
|
2079
|
+
create: create$6$1
|
|
2092
2080
|
};
|
|
2093
2081
|
const create$1$1 = async ({
|
|
2094
2082
|
commandMap,
|
|
@@ -2108,7 +2096,7 @@ const WebSocketRpcParent = {
|
|
|
2108
2096
|
__proto__: null,
|
|
2109
2097
|
create: create$1$1
|
|
2110
2098
|
};
|
|
2111
|
-
const create$
|
|
2099
|
+
const create$8 = async ({
|
|
2112
2100
|
commandMap
|
|
2113
2101
|
}) => {
|
|
2114
2102
|
// TODO create a commandMap per rpc instance
|
|
@@ -2120,7 +2108,7 @@ const create$7 = async ({
|
|
|
2120
2108
|
};
|
|
2121
2109
|
const WebWorkerRpcClient = {
|
|
2122
2110
|
__proto__: null,
|
|
2123
|
-
create: create$
|
|
2111
|
+
create: create$8
|
|
2124
2112
|
};
|
|
2125
2113
|
|
|
2126
2114
|
const getPortTuple = () => {
|
|
@@ -2357,9 +2345,7 @@ const showQuickPick = async ({
|
|
|
2357
2345
|
const {
|
|
2358
2346
|
registerReferenceProvider,
|
|
2359
2347
|
executeReferenceProvider,
|
|
2360
|
-
executefileReferenceProvider
|
|
2361
|
-
reset: reset$4
|
|
2362
|
-
} = create$a({
|
|
2348
|
+
executefileReferenceProvider} = create$b({
|
|
2363
2349
|
name: 'Reference',
|
|
2364
2350
|
resultShape: {
|
|
2365
2351
|
type: Array$1,
|
|
@@ -2384,9 +2370,7 @@ const {
|
|
|
2384
2370
|
const {
|
|
2385
2371
|
registerRenameProvider,
|
|
2386
2372
|
executeRenameProvider,
|
|
2387
|
-
executeprepareRenameProvider
|
|
2388
|
-
reset: reset$3
|
|
2389
|
-
} = create$a({
|
|
2373
|
+
executeprepareRenameProvider} = create$b({
|
|
2390
2374
|
name: 'Rename',
|
|
2391
2375
|
resultShape: {
|
|
2392
2376
|
type: Object$1,
|
|
@@ -2545,9 +2529,7 @@ const createRpc = ({
|
|
|
2545
2529
|
|
|
2546
2530
|
const {
|
|
2547
2531
|
registerSelectionProvider,
|
|
2548
|
-
executeSelectionProvider
|
|
2549
|
-
reset: reset$2
|
|
2550
|
-
} = create$a({
|
|
2532
|
+
executeSelectionProvider} = create$b({
|
|
2551
2533
|
name: 'Selection',
|
|
2552
2534
|
resultShape: {
|
|
2553
2535
|
allowUndefined: true,
|
|
@@ -2653,9 +2635,7 @@ const getEnabledProviderIds = async (scheme, root) => {
|
|
|
2653
2635
|
|
|
2654
2636
|
const {
|
|
2655
2637
|
registerTabCompletionProvider,
|
|
2656
|
-
executeTabCompletionProvider
|
|
2657
|
-
reset: reset$1
|
|
2658
|
-
} = create$a({
|
|
2638
|
+
executeTabCompletionProvider} = create$b({
|
|
2659
2639
|
name: 'TabCompletion',
|
|
2660
2640
|
resultShape: {
|
|
2661
2641
|
type: Object$1,
|
|
@@ -2694,9 +2674,7 @@ const executeTextSearchProvider = async (scheme, query) => {
|
|
|
2694
2674
|
|
|
2695
2675
|
const {
|
|
2696
2676
|
registerTypeDefinitionProvider,
|
|
2697
|
-
executeTypeDefinitionProvider
|
|
2698
|
-
reset
|
|
2699
|
-
} = create$a({
|
|
2677
|
+
executeTypeDefinitionProvider} = create$b({
|
|
2700
2678
|
name: 'TypeDefinition',
|
|
2701
2679
|
resultShape: {
|
|
2702
2680
|
allowUndefined: true,
|
|
@@ -3525,7 +3503,6 @@ const storeId = 'lvce-keyvalue';
|
|
|
3525
3503
|
// TODO high memory usage in idb because of transactionDoneMap
|
|
3526
3504
|
|
|
3527
3505
|
const state$5 = {
|
|
3528
|
-
databases: Object.create(null),
|
|
3529
3506
|
dbVersion: 2,
|
|
3530
3507
|
cachedDb: undefined
|
|
3531
3508
|
};
|
|
@@ -3920,6 +3897,27 @@ const createWebView3 = async ({
|
|
|
3920
3897
|
});
|
|
3921
3898
|
};
|
|
3922
3899
|
|
|
3900
|
+
const createWebViewWorkerRpc2 = async (rpcInfo, port) => {
|
|
3901
|
+
// TODO this function is called from the iframe worker to create a direct
|
|
3902
|
+
// connection between a webview/iframe and it's webworker. For this to work
|
|
3903
|
+
// the iframe worker creates a messagechannel and sends one messageport to the webview
|
|
3904
|
+
// and the other messageport to the webworker. This enables direct communication via
|
|
3905
|
+
// the two message ports
|
|
3906
|
+
|
|
3907
|
+
// TODO have a way so that the worker already includes the webview api and the extension
|
|
3908
|
+
// host subworker doesn't need to import the other file
|
|
3909
|
+
await invokeAndTransfer$1('IpcParent.create', {
|
|
3910
|
+
method: ModuleWorkerAndWorkaroundForChromeDevtoolsBug,
|
|
3911
|
+
url: rpcInfo.url,
|
|
3912
|
+
name: rpcInfo.name,
|
|
3913
|
+
raw: true,
|
|
3914
|
+
port
|
|
3915
|
+
});
|
|
3916
|
+
};
|
|
3917
|
+
|
|
3918
|
+
/**
|
|
3919
|
+
* @deprecated use createWebViewWorkerRpc2 which passes the worker url as a parameter
|
|
3920
|
+
*/
|
|
3923
3921
|
const createWebViewWorkerRpc = async (rpcInfo, port) => {
|
|
3924
3922
|
// TODO this function is called from the iframe worker to create a direct
|
|
3925
3923
|
// connection between a webview/iframe and it's webworker. For this to work
|
|
@@ -4930,8 +4928,6 @@ const hydrate = async () => {
|
|
|
4930
4928
|
};
|
|
4931
4929
|
|
|
4932
4930
|
const state = {
|
|
4933
|
-
databases: Object.create(null),
|
|
4934
|
-
eventId: 0,
|
|
4935
4931
|
dbVersion: 1,
|
|
4936
4932
|
/**
|
|
4937
4933
|
* @type {any}
|
|
@@ -5251,30 +5247,43 @@ const getLineMatchRegex = (line, lineNumber, query, matchCase) => {
|
|
|
5251
5247
|
return [];
|
|
5252
5248
|
};
|
|
5253
5249
|
|
|
5254
|
-
const
|
|
5250
|
+
const doesMatchWord = (line, index, wordBoundaries) => {
|
|
5251
|
+
if (index === 0) {
|
|
5252
|
+
return true;
|
|
5253
|
+
}
|
|
5254
|
+
const char = line.charAt(index - 1);
|
|
5255
|
+
return wordBoundaries.includes(char);
|
|
5256
|
+
};
|
|
5257
|
+
const getLineMatchText = (line, lineNumber, query, queryLower, matchCase, matchWholeWord) => {
|
|
5258
|
+
// TODO support multiple matches per line
|
|
5255
5259
|
const lineToQuery = matchCase ? line : line.toLowerCase();
|
|
5256
5260
|
const actualQuery = matchCase ? query : queryLower;
|
|
5257
5261
|
const index = lineToQuery.indexOf(actualQuery);
|
|
5258
|
-
if (index
|
|
5259
|
-
return [
|
|
5260
|
-
type: Match,
|
|
5261
|
-
text: line,
|
|
5262
|
-
start: index,
|
|
5263
|
-
end: index + query.length,
|
|
5264
|
-
lineNumber
|
|
5265
|
-
}];
|
|
5262
|
+
if (index === -1) {
|
|
5263
|
+
return [];
|
|
5266
5264
|
}
|
|
5267
|
-
|
|
5265
|
+
const wordBoundaries = [' ', '\t', '-'];
|
|
5266
|
+
if (matchWholeWord && !doesMatchWord(line, index, wordBoundaries)) {
|
|
5267
|
+
return [];
|
|
5268
|
+
}
|
|
5269
|
+
return [{
|
|
5270
|
+
type: Match,
|
|
5271
|
+
text: line,
|
|
5272
|
+
start: index,
|
|
5273
|
+
end: index + query.length,
|
|
5274
|
+
lineNumber
|
|
5275
|
+
}];
|
|
5268
5276
|
};
|
|
5269
5277
|
|
|
5270
|
-
const getLineMatch = (line, lineNumber, query, queryLower, useRegularExpression, matchCase) => {
|
|
5278
|
+
const getLineMatch = (line, lineNumber, query, queryLower, useRegularExpression, matchCase, matchWholeWord) => {
|
|
5271
5279
|
if (useRegularExpression) {
|
|
5272
5280
|
return getLineMatchRegex(line, lineNumber, query, matchCase);
|
|
5273
5281
|
}
|
|
5274
|
-
return getLineMatchText(line, lineNumber, query, queryLower, matchCase);
|
|
5282
|
+
return getLineMatchText(line, lineNumber, query, queryLower, matchCase, matchWholeWord);
|
|
5275
5283
|
};
|
|
5276
5284
|
|
|
5277
5285
|
const UseRegularExpression = 1 << 1; // 2
|
|
5286
|
+
const MatchWholeWord = 1 << 3; // 8
|
|
5278
5287
|
const MatchCase = 1 << 4; // 16
|
|
5279
5288
|
// 128
|
|
5280
5289
|
|
|
@@ -5285,9 +5294,10 @@ const splitLines = lines => {
|
|
|
5285
5294
|
const textSearchInText = (file, content, query, flags = 0) => {
|
|
5286
5295
|
const matchCase = flags & MatchCase;
|
|
5287
5296
|
const useRegularExpression = flags & UseRegularExpression;
|
|
5297
|
+
const matchWholeWord = flags & MatchWholeWord;
|
|
5288
5298
|
const lines = splitLines(content);
|
|
5289
5299
|
const queryLower = query.toLowerCase();
|
|
5290
|
-
const results = lines.flatMap((line, i) => getLineMatch(line, i, query, queryLower, useRegularExpression, matchCase));
|
|
5300
|
+
const results = lines.flatMap((line, i) => getLineMatch(line, i, query, queryLower, useRegularExpression, matchCase, matchWholeWord));
|
|
5291
5301
|
if (results.length > 0) {
|
|
5292
5302
|
return [{
|
|
5293
5303
|
type: File$3,
|
|
@@ -5406,6 +5416,7 @@ const matchesUri = (uri, relativeRoot, include, exclude) => {
|
|
|
5406
5416
|
}
|
|
5407
5417
|
return true;
|
|
5408
5418
|
};
|
|
5419
|
+
|
|
5409
5420
|
const textSearch = async (scheme, root, query, options, assetDir) => {
|
|
5410
5421
|
string(scheme);
|
|
5411
5422
|
string(root);
|
|
@@ -5474,6 +5485,7 @@ const commandMap = {
|
|
|
5474
5485
|
'TextSearchMemory.textSearch': textSearch,
|
|
5475
5486
|
'WebView.create3': createWebView3,
|
|
5476
5487
|
'WebView.createWebViewWorkerRpc': createWebViewWorkerRpc,
|
|
5488
|
+
'WebView.createWebViewWorkerRpc2': createWebViewWorkerRpc2,
|
|
5477
5489
|
'WebView.getRpcInfo': getRpcInfo,
|
|
5478
5490
|
'WebViews.getWebViews': getWebViews,
|
|
5479
5491
|
['ExtensionHostDebug.evaluate']: evaluate,
|