@lvce-editor/completion-worker 1.27.0 → 1.29.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/completionWorkerMain.js +85 -103
- package/package.json +1 -1
|
@@ -527,7 +527,7 @@ const create$4$1 = (method, params) => {
|
|
|
527
527
|
};
|
|
528
528
|
};
|
|
529
529
|
const callbacks = Object.create(null);
|
|
530
|
-
const set$
|
|
530
|
+
const set$5 = (id, fn) => {
|
|
531
531
|
callbacks[id] = fn;
|
|
532
532
|
};
|
|
533
533
|
const get$2 = id => {
|
|
@@ -546,7 +546,7 @@ const registerPromise = () => {
|
|
|
546
546
|
resolve,
|
|
547
547
|
promise
|
|
548
548
|
} = Promise.withResolvers();
|
|
549
|
-
set$
|
|
549
|
+
set$5(id, resolve);
|
|
550
550
|
return {
|
|
551
551
|
id,
|
|
552
552
|
promise
|
|
@@ -891,10 +891,10 @@ const send = (transport, method, ...params) => {
|
|
|
891
891
|
const message = create$4$1(method, params);
|
|
892
892
|
transport.send(message);
|
|
893
893
|
};
|
|
894
|
-
const invoke$
|
|
894
|
+
const invoke$2 = (ipc, method, ...params) => {
|
|
895
895
|
return invokeHelper(ipc, method, params, false);
|
|
896
896
|
};
|
|
897
|
-
const invokeAndTransfer$
|
|
897
|
+
const invokeAndTransfer$1 = (ipc, method, ...params) => {
|
|
898
898
|
return invokeHelper(ipc, method, params, true);
|
|
899
899
|
};
|
|
900
900
|
|
|
@@ -930,10 +930,10 @@ const createRpc = ipc => {
|
|
|
930
930
|
send(ipc, method, ...params);
|
|
931
931
|
},
|
|
932
932
|
invoke(method, ...params) {
|
|
933
|
-
return invoke$
|
|
933
|
+
return invoke$2(ipc, method, ...params);
|
|
934
934
|
},
|
|
935
935
|
invokeAndTransfer(method, ...params) {
|
|
936
|
-
return invokeAndTransfer$
|
|
936
|
+
return invokeAndTransfer$1(ipc, method, ...params);
|
|
937
937
|
},
|
|
938
938
|
async dispose() {
|
|
939
939
|
await ipc?.dispose();
|
|
@@ -1123,7 +1123,15 @@ const terminate = () => {
|
|
|
1123
1123
|
globalThis.close();
|
|
1124
1124
|
};
|
|
1125
1125
|
|
|
1126
|
+
const Div = 4;
|
|
1127
|
+
const Span = 8;
|
|
1126
1128
|
const Text = 12;
|
|
1129
|
+
const Img = 17;
|
|
1130
|
+
|
|
1131
|
+
const ClientX = 'event.clientX';
|
|
1132
|
+
const ClientY = 'event.clientY';
|
|
1133
|
+
const DeltaMode = 'event.deltaMode';
|
|
1134
|
+
const DeltaY = 'event.deltaY';
|
|
1127
1135
|
|
|
1128
1136
|
const Enter = 3;
|
|
1129
1137
|
const Escape = 8;
|
|
@@ -1139,7 +1147,7 @@ const EditorWorker$2 = 99;
|
|
|
1139
1147
|
const ExtensionHostWorker = 44;
|
|
1140
1148
|
|
|
1141
1149
|
const rpcs = Object.create(null);
|
|
1142
|
-
const set$
|
|
1150
|
+
const set$4 = (id, rpc) => {
|
|
1143
1151
|
rpcs[id] = rpc;
|
|
1144
1152
|
};
|
|
1145
1153
|
const get$1 = id => {
|
|
@@ -1161,7 +1169,7 @@ const create$1 = rpcId => {
|
|
|
1161
1169
|
return rpc.invokeAndTransfer(method, ...params);
|
|
1162
1170
|
},
|
|
1163
1171
|
set(rpc) {
|
|
1164
|
-
set$
|
|
1172
|
+
set$4(rpcId, rpc);
|
|
1165
1173
|
},
|
|
1166
1174
|
async dispose() {
|
|
1167
1175
|
const rpc = get$1(rpcId);
|
|
@@ -1171,81 +1179,81 @@ const create$1 = rpcId => {
|
|
|
1171
1179
|
};
|
|
1172
1180
|
|
|
1173
1181
|
const {
|
|
1174
|
-
invoke: invoke$
|
|
1175
|
-
invokeAndTransfer
|
|
1176
|
-
set: set$
|
|
1177
|
-
dispose: dispose$
|
|
1182
|
+
invoke: invoke$1,
|
|
1183
|
+
invokeAndTransfer,
|
|
1184
|
+
set: set$3,
|
|
1185
|
+
dispose: dispose$2
|
|
1178
1186
|
} = create$1(EditorWorker$2);
|
|
1179
1187
|
const sendMessagePortToExtensionHostWorker$2 = async port => {
|
|
1180
1188
|
const command = 'HandleMessagePort.handleMessagePort2';
|
|
1181
|
-
await invokeAndTransfer
|
|
1189
|
+
await invokeAndTransfer(
|
|
1182
1190
|
// @ts-ignore
|
|
1183
1191
|
'SendMessagePortToExtensionHostWorker.sendMessagePortToExtensionHostWorker', port, command, 0);
|
|
1184
1192
|
};
|
|
1185
1193
|
// TODO add tests for this
|
|
1186
1194
|
const activateByEvent$2 = async event => {
|
|
1187
1195
|
// @ts-ignore
|
|
1188
|
-
await invoke$
|
|
1196
|
+
await invoke$1('ActivateByEvent.activateByEvent', event);
|
|
1189
1197
|
};
|
|
1190
1198
|
const applyEdit$2 = async (editorUid, changes) => {
|
|
1191
1199
|
// @ts-ignore
|
|
1192
|
-
await invoke$
|
|
1200
|
+
await invoke$1('Editor.applyEdit2', editorUid, changes);
|
|
1193
1201
|
};
|
|
1194
1202
|
const applyWorkspaceEdit = async (editorUid, changes) => {
|
|
1195
1203
|
// @ts-ignore
|
|
1196
|
-
await invoke$
|
|
1204
|
+
await invoke$1('Editor.applyWorkspaceEdit', editorUid, changes);
|
|
1197
1205
|
};
|
|
1198
1206
|
const closeWidget$1 = async (editorUid, widgetId, widgetName, focusId) => {
|
|
1199
1207
|
// @ts-ignore
|
|
1200
|
-
await invoke$
|
|
1208
|
+
await invoke$1('Editor.closeWidget2', editorUid, widgetId, widgetName, focusId);
|
|
1201
1209
|
};
|
|
1202
|
-
const getWordAt
|
|
1210
|
+
const getWordAt = async (uid, rowIndex, columnIndex) => {
|
|
1203
1211
|
// @ts-ignore
|
|
1204
|
-
const word = await invoke$
|
|
1212
|
+
const word = await invoke$1('Editor.getWordAt2', uid, rowIndex, columnIndex);
|
|
1205
1213
|
return word;
|
|
1206
1214
|
};
|
|
1207
1215
|
const getLines$2 = async editorUid => {
|
|
1208
|
-
const lines = await invoke$
|
|
1216
|
+
const lines = await invoke$1('Editor.getLines2', editorUid);
|
|
1209
1217
|
return lines;
|
|
1210
1218
|
};
|
|
1211
1219
|
const getPositionAtCursor$2 = async parentUid => {
|
|
1212
|
-
const position = await invoke$
|
|
1220
|
+
const position = await invoke$1('Editor.getPositionAtCursor', parentUid);
|
|
1213
1221
|
return position;
|
|
1214
1222
|
};
|
|
1215
1223
|
const getOffsetAtCursor$2 = async editorId => {
|
|
1216
1224
|
// @ts-ignore
|
|
1217
|
-
return await invoke$
|
|
1225
|
+
return await invoke$1('Editor.getOffsetAtCursor', editorId);
|
|
1218
1226
|
};
|
|
1219
1227
|
const getSelections$2 = async editorUid => {
|
|
1220
|
-
const selections = await invoke$
|
|
1228
|
+
const selections = await invoke$1('Editor.getSelections2', editorUid);
|
|
1221
1229
|
return selections;
|
|
1222
1230
|
};
|
|
1223
1231
|
const getWordAtOffset2$1 = async editorUid => {
|
|
1224
|
-
return invoke$
|
|
1232
|
+
return invoke$1('Editor.getWordAtOffset2', editorUid);
|
|
1225
1233
|
};
|
|
1226
1234
|
const getWordBefore$2 = async (editorUid, rowIndex, columnIndex) => {
|
|
1227
|
-
return invoke$
|
|
1235
|
+
return invoke$1('Editor.getWordBefore2', editorUid, rowIndex, columnIndex);
|
|
1228
1236
|
};
|
|
1229
1237
|
const updateDebugInfo = async info => {
|
|
1230
|
-
await invoke$
|
|
1238
|
+
await invoke$1('Editor.updateDebugInfo', info);
|
|
1231
1239
|
};
|
|
1232
1240
|
const getUri = async editorUid => {
|
|
1233
1241
|
// @ts-ignore
|
|
1234
|
-
return invoke$
|
|
1242
|
+
return invoke$1('Editor.getUri', editorUid);
|
|
1235
1243
|
};
|
|
1236
1244
|
const getLanguageId = async editorUid => {
|
|
1237
1245
|
// @ts-ignore
|
|
1238
|
-
return invoke$
|
|
1246
|
+
return invoke$1('Editor.getLanguageId', editorUid);
|
|
1239
1247
|
};
|
|
1240
1248
|
const getProblems = async () => {
|
|
1241
1249
|
// @ts-ignore
|
|
1242
|
-
return invoke$
|
|
1250
|
+
return invoke$1('Editor.getProblems');
|
|
1243
1251
|
};
|
|
1244
|
-
const registerMockRpc
|
|
1252
|
+
const registerMockRpc = commandMap => {
|
|
1245
1253
|
const mockRpc = createMockRpc({
|
|
1246
1254
|
commandMap
|
|
1247
1255
|
});
|
|
1248
|
-
set$
|
|
1256
|
+
set$3(mockRpc);
|
|
1249
1257
|
return mockRpc;
|
|
1250
1258
|
};
|
|
1251
1259
|
|
|
@@ -1255,7 +1263,7 @@ const EditorWorker$1 = {
|
|
|
1255
1263
|
applyEdit: applyEdit$2,
|
|
1256
1264
|
applyWorkspaceEdit,
|
|
1257
1265
|
closeWidget: closeWidget$1,
|
|
1258
|
-
dispose: dispose$
|
|
1266
|
+
dispose: dispose$2,
|
|
1259
1267
|
getLanguageId,
|
|
1260
1268
|
getLines: getLines$2,
|
|
1261
1269
|
getOffsetAtCursor: getOffsetAtCursor$2,
|
|
@@ -1263,59 +1271,23 @@ const EditorWorker$1 = {
|
|
|
1263
1271
|
getProblems,
|
|
1264
1272
|
getSelections: getSelections$2,
|
|
1265
1273
|
getUri,
|
|
1266
|
-
getWordAt
|
|
1274
|
+
getWordAt,
|
|
1267
1275
|
getWordAtOffset2: getWordAtOffset2$1,
|
|
1268
1276
|
getWordBefore: getWordBefore$2,
|
|
1269
|
-
invoke: invoke$
|
|
1270
|
-
invokeAndTransfer
|
|
1271
|
-
registerMockRpc
|
|
1277
|
+
invoke: invoke$1,
|
|
1278
|
+
invokeAndTransfer,
|
|
1279
|
+
registerMockRpc,
|
|
1272
1280
|
sendMessagePortToExtensionHostWorker: sendMessagePortToExtensionHostWorker$2,
|
|
1273
|
-
set: set$
|
|
1281
|
+
set: set$3,
|
|
1274
1282
|
updateDebugInfo
|
|
1275
1283
|
};
|
|
1276
1284
|
|
|
1277
1285
|
const {
|
|
1278
|
-
invoke
|
|
1279
|
-
|
|
1280
|
-
set: set$3,
|
|
1281
|
-
dispose: dispose$3
|
|
1282
|
-
} = create$1(ExtensionHostWorker);
|
|
1283
|
-
const executeReferenceProvider = async (id, offset) => {
|
|
1284
|
-
// @ts-ignore
|
|
1285
|
-
return invoke$2('ExtensionHostReference.executeReferenceProvider', id, offset);
|
|
1286
|
-
};
|
|
1287
|
-
const executeFileReferenceProvider = async id => {
|
|
1288
|
-
// @ts-ignore
|
|
1289
|
-
return invoke$2('ExtensionHostReference.executeFileReferenceProvider', id);
|
|
1290
|
-
};
|
|
1291
|
-
const getRuntimeStatus = async extensionId => {
|
|
1292
|
-
// @ts-ignore
|
|
1293
|
-
return invoke$2('ExtensionHost.getRuntimeStatus', extensionId);
|
|
1294
|
-
};
|
|
1295
|
-
const registerMockRpc = commandMap => {
|
|
1296
|
-
const mockRpc = createMockRpc({
|
|
1297
|
-
commandMap
|
|
1298
|
-
});
|
|
1299
|
-
set$3(mockRpc);
|
|
1300
|
-
return mockRpc;
|
|
1301
|
-
};
|
|
1302
|
-
|
|
1303
|
-
const ExtensionHost = {
|
|
1304
|
-
__proto__: null,
|
|
1305
|
-
dispose: dispose$3,
|
|
1306
|
-
executeFileReferenceProvider,
|
|
1307
|
-
executeReferenceProvider,
|
|
1308
|
-
getRuntimeStatus,
|
|
1309
|
-
invoke: invoke$2,
|
|
1310
|
-
invokeAndTransfer: invokeAndTransfer$1,
|
|
1311
|
-
registerMockRpc,
|
|
1312
|
-
set: set$3
|
|
1313
|
-
};
|
|
1286
|
+
invoke,
|
|
1287
|
+
set: set$2} = create$1(ExtensionHostWorker);
|
|
1314
1288
|
|
|
1315
1289
|
const {
|
|
1316
|
-
|
|
1317
|
-
set: set$2,
|
|
1318
|
-
dispose: dispose$2,
|
|
1290
|
+
set: set$1,
|
|
1319
1291
|
sendMessagePortToExtensionHostWorker: sendMessagePortToExtensionHostWorker$1,
|
|
1320
1292
|
activateByEvent: activateByEvent$1,
|
|
1321
1293
|
applyEdit: applyEdit$1,
|
|
@@ -1323,11 +1295,9 @@ const {
|
|
|
1323
1295
|
getLines: getLines$1,
|
|
1324
1296
|
getPositionAtCursor: getPositionAtCursor$1,
|
|
1325
1297
|
getSelections: getSelections$1,
|
|
1326
|
-
getWordAt,
|
|
1327
1298
|
getOffsetAtCursor: getOffsetAtCursor$1,
|
|
1328
1299
|
getWordAtOffset2,
|
|
1329
|
-
getWordBefore: getWordBefore$1
|
|
1330
|
-
invokeAndTransfer
|
|
1300
|
+
getWordBefore: getWordBefore$1
|
|
1331
1301
|
} = EditorWorker$1;
|
|
1332
1302
|
|
|
1333
1303
|
const EditorWorker = {
|
|
@@ -1335,18 +1305,14 @@ const EditorWorker = {
|
|
|
1335
1305
|
activateByEvent: activateByEvent$1,
|
|
1336
1306
|
applyEdit: applyEdit$1,
|
|
1337
1307
|
closeWidget,
|
|
1338
|
-
dispose: dispose$2,
|
|
1339
1308
|
getLines: getLines$1,
|
|
1340
1309
|
getOffsetAtCursor: getOffsetAtCursor$1,
|
|
1341
1310
|
getPositionAtCursor: getPositionAtCursor$1,
|
|
1342
1311
|
getSelections: getSelections$1,
|
|
1343
|
-
getWordAt,
|
|
1344
1312
|
getWordAtOffset2,
|
|
1345
1313
|
getWordBefore: getWordBefore$1,
|
|
1346
|
-
invoke: invoke$1,
|
|
1347
|
-
invokeAndTransfer,
|
|
1348
1314
|
sendMessagePortToExtensionHostWorker: sendMessagePortToExtensionHostWorker$1,
|
|
1349
|
-
set: set$
|
|
1315
|
+
set: set$1
|
|
1350
1316
|
};
|
|
1351
1317
|
|
|
1352
1318
|
const FocusEditorCompletions = 9;
|
|
@@ -1364,7 +1330,7 @@ const close = async state => {
|
|
|
1364
1330
|
|
|
1365
1331
|
const {
|
|
1366
1332
|
get,
|
|
1367
|
-
set
|
|
1333
|
+
set,
|
|
1368
1334
|
wrapCommand,
|
|
1369
1335
|
dispose: dispose$1
|
|
1370
1336
|
} = create$2();
|
|
@@ -1393,7 +1359,7 @@ const create = (uid, x, y, width, height, editorUid, editorLanguageId) => {
|
|
|
1393
1359
|
editorLanguageId,
|
|
1394
1360
|
maxItems: 8
|
|
1395
1361
|
};
|
|
1396
|
-
set
|
|
1362
|
+
set(uid, state, state);
|
|
1397
1363
|
};
|
|
1398
1364
|
|
|
1399
1365
|
const isEqual$4 = (oldState, newState) => {
|
|
@@ -1554,10 +1520,6 @@ const {
|
|
|
1554
1520
|
activateByEvent
|
|
1555
1521
|
} = EditorWorker;
|
|
1556
1522
|
|
|
1557
|
-
const {
|
|
1558
|
-
invoke,
|
|
1559
|
-
set} = ExtensionHost;
|
|
1560
|
-
|
|
1561
1523
|
const execute = async ({
|
|
1562
1524
|
editorLanguageId,
|
|
1563
1525
|
editorUid,
|
|
@@ -1997,6 +1959,26 @@ const handleEditorType = async state => {
|
|
|
1997
1959
|
};
|
|
1998
1960
|
};
|
|
1999
1961
|
|
|
1962
|
+
const getIndexFromPosition = (y, clientY, itemHeight) => {
|
|
1963
|
+
const relativeY = clientY - y;
|
|
1964
|
+
const index = Math.floor(relativeY / itemHeight);
|
|
1965
|
+
return index;
|
|
1966
|
+
};
|
|
1967
|
+
|
|
1968
|
+
const handlePointerDown = async (state, clientX, clientY) => {
|
|
1969
|
+
const {
|
|
1970
|
+
y,
|
|
1971
|
+
itemHeight,
|
|
1972
|
+
items
|
|
1973
|
+
} = state;
|
|
1974
|
+
const index = getIndexFromPosition(y, clientY, itemHeight);
|
|
1975
|
+
if (index < 0 || index >= items.length) {
|
|
1976
|
+
// TODO close maybe?
|
|
1977
|
+
return state;
|
|
1978
|
+
}
|
|
1979
|
+
return selectIndex(state, index);
|
|
1980
|
+
};
|
|
1981
|
+
|
|
2000
1982
|
const clamp = (num, min, max) => {
|
|
2001
1983
|
number(num);
|
|
2002
1984
|
number(min);
|
|
@@ -2085,7 +2067,7 @@ const createExtensionHostRpc = async () => {
|
|
|
2085
2067
|
|
|
2086
2068
|
const initialize = async () => {
|
|
2087
2069
|
const rpc = await createExtensionHostRpc();
|
|
2088
|
-
set(rpc);
|
|
2070
|
+
set$2(rpc);
|
|
2089
2071
|
};
|
|
2090
2072
|
|
|
2091
2073
|
const error = message => {
|
|
@@ -2178,13 +2160,18 @@ const renderContent = (oldState, newState) => {
|
|
|
2178
2160
|
return [SetDom2, uid, dom];
|
|
2179
2161
|
};
|
|
2180
2162
|
|
|
2181
|
-
const
|
|
2163
|
+
const HandlePointerDown = 1;
|
|
2164
|
+
const HandleWheel = 2;
|
|
2182
2165
|
|
|
2183
2166
|
const getEventListeners = () => {
|
|
2184
2167
|
return [{
|
|
2185
2168
|
name: HandleWheel,
|
|
2186
|
-
params: ['EditorCompletion.handleWheel',
|
|
2169
|
+
params: ['EditorCompletion.handleWheel', DeltaMode, DeltaY],
|
|
2187
2170
|
passive: true
|
|
2171
|
+
}, {
|
|
2172
|
+
name: HandlePointerDown,
|
|
2173
|
+
params: ['EditorCompletion.handlePoinerDown', ClientX, ClientY],
|
|
2174
|
+
preventDefault: true
|
|
2188
2175
|
}];
|
|
2189
2176
|
};
|
|
2190
2177
|
|
|
@@ -2240,10 +2227,6 @@ const suggest = () => {
|
|
|
2240
2227
|
return i18nString(Suggest);
|
|
2241
2228
|
};
|
|
2242
2229
|
|
|
2243
|
-
const Div = 4;
|
|
2244
|
-
const Span = 8;
|
|
2245
|
-
const Img = 17;
|
|
2246
|
-
|
|
2247
2230
|
const getFileIconVirtualDom = icon => {
|
|
2248
2231
|
return {
|
|
2249
2232
|
type: Img,
|
|
@@ -2346,12 +2329,10 @@ const getCompletionItemsVirtualDom = visibleItems => {
|
|
|
2346
2329
|
if (visibleItems.length === 0) {
|
|
2347
2330
|
return getNoResultsVirtualDom();
|
|
2348
2331
|
}
|
|
2349
|
-
|
|
2332
|
+
return [{
|
|
2350
2333
|
type: Div,
|
|
2351
2334
|
childCount: visibleItems.length
|
|
2352
|
-
};
|
|
2353
|
-
const dom = [root, ...visibleItems.flatMap(getCompletionItemVirtualDom)];
|
|
2354
|
-
return dom;
|
|
2335
|
+
}, ...visibleItems.flatMap(getCompletionItemVirtualDom)];
|
|
2355
2336
|
};
|
|
2356
2337
|
|
|
2357
2338
|
const getScrollBarVirtualDom = (scrollBarHeight, scrollBarTop) => {
|
|
@@ -2557,7 +2538,7 @@ const render2 = (uid, diffResult) => {
|
|
|
2557
2538
|
oldState,
|
|
2558
2539
|
newState
|
|
2559
2540
|
} = get(uid);
|
|
2560
|
-
set
|
|
2541
|
+
set(uid, newState, newState);
|
|
2561
2542
|
const commands = applyRender(oldState, newState, diffResult);
|
|
2562
2543
|
return commands;
|
|
2563
2544
|
};
|
|
@@ -2576,6 +2557,7 @@ const commandMap = {
|
|
|
2576
2557
|
'Completions.handleEditorDeleteLeft': wrapCommand(handleEditorDeleteLeft),
|
|
2577
2558
|
'Completions.handleEditorType': wrapCommand(handleEditorType),
|
|
2578
2559
|
'Completions.handleWheel': wrapCommand(handleWheel),
|
|
2560
|
+
'Completions.handlePointerDown': wrapCommand(handlePointerDown),
|
|
2579
2561
|
'Completions.initialize': initialize,
|
|
2580
2562
|
'Completions.loadContent': wrapCommand(loadContent),
|
|
2581
2563
|
'Completions.openDetails': wrapCommand(openDetails),
|
|
@@ -2589,7 +2571,7 @@ const listen = async () => {
|
|
|
2589
2571
|
const rpc = await WebWorkerRpcClient.create({
|
|
2590
2572
|
commandMap: commandMap
|
|
2591
2573
|
});
|
|
2592
|
-
set$
|
|
2574
|
+
set$1(rpc);
|
|
2593
2575
|
};
|
|
2594
2576
|
|
|
2595
2577
|
const main = async () => {
|