@lvce-editor/source-control-worker 1.14.0 → 1.15.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.
@@ -344,22 +344,11 @@ class IpcChildWithModuleWorker extends Ipc {
344
344
  const wrap$f = global => {
345
345
  return new IpcChildWithModuleWorker(global);
346
346
  };
347
- const withResolvers = () => {
348
- let _resolve;
349
- const promise = new Promise(resolve => {
350
- _resolve = resolve;
351
- });
352
- return {
353
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
354
- resolve: _resolve,
355
- promise
356
- };
357
- };
358
347
  const waitForFirstMessage = async port => {
359
348
  const {
360
349
  resolve,
361
350
  promise
362
- } = withResolvers();
351
+ } = Promise.withResolvers();
363
352
  port.addEventListener('message', resolve, {
364
353
  once: true
365
354
  });
@@ -438,7 +427,7 @@ const getFirstEvent = (eventEmitter, eventMap) => {
438
427
  const {
439
428
  resolve,
440
429
  promise
441
- } = withResolvers();
430
+ } = Promise.withResolvers();
442
431
  const listenerMap = Object.create(null);
443
432
  const cleanup = value => {
444
433
  for (const event of Object.keys(eventMap)) {
@@ -516,7 +505,7 @@ const IpcParentWithMessagePort$1 = {
516
505
  };
517
506
 
518
507
  const Two = '2.0';
519
- const create$4 = (method, params) => {
508
+ const create$4$1 = (method, params) => {
520
509
  return {
521
510
  jsonrpc: Two,
522
511
  method,
@@ -524,7 +513,7 @@ const create$4 = (method, params) => {
524
513
  };
525
514
  };
526
515
  const callbacks = Object.create(null);
527
- const set$5 = (id, fn) => {
516
+ const set$4 = (id, fn) => {
528
517
  callbacks[id] = fn;
529
518
  };
530
519
  const get$3 = id => {
@@ -534,16 +523,16 @@ const remove = id => {
534
523
  delete callbacks[id];
535
524
  };
536
525
  let id = 0;
537
- const create$3 = () => {
526
+ const create$3$1 = () => {
538
527
  return ++id;
539
528
  };
540
529
  const registerPromise = () => {
541
- const id = create$3();
530
+ const id = create$3$1();
542
531
  const {
543
532
  resolve,
544
533
  promise
545
534
  } = Promise.withResolvers();
546
- set$5(id, resolve);
535
+ set$4(id, resolve);
547
536
  return {
548
537
  id,
549
538
  promise
@@ -616,6 +605,16 @@ const constructError = (message, type, name) => {
616
605
  }
617
606
  return new ErrorConstructor(message);
618
607
  };
608
+ const joinLines = lines => {
609
+ return lines.join(NewLine);
610
+ };
611
+ const splitLines = lines => {
612
+ return lines.split(NewLine);
613
+ };
614
+ const getCurrentStack = () => {
615
+ const currentStack = joinLines(splitLines(new Error().stack || '').slice(2));
616
+ return currentStack;
617
+ };
619
618
  const getNewLineIndex = (string, startIndex = undefined) => {
620
619
  return string.indexOf(NewLine, startIndex);
621
620
  };
@@ -626,19 +625,16 @@ const getParentStack = error => {
626
625
  }
627
626
  return parentStack;
628
627
  };
629
- const joinLines = lines => {
630
- return lines.join(NewLine);
631
- };
632
628
  const MethodNotFound = -32601;
633
629
  const Custom = -32001;
634
- const splitLines = lines => {
635
- return lines.split(NewLine);
636
- };
637
630
  const restoreJsonRpcError = error => {
631
+ const currentStack = getCurrentStack();
638
632
  if (error && error instanceof Error) {
633
+ if (typeof error.stack === 'string') {
634
+ error.stack = error.stack + NewLine + currentStack;
635
+ }
639
636
  return error;
640
637
  }
641
- const currentStack = joinLines(splitLines(new Error().stack || '').slice(1));
642
638
  if (error && error.code && error.code === MethodNotFound) {
643
639
  const restoredError = new JsonRpcError(error.message);
644
640
  const parentStack = getParentStack(error);
@@ -719,6 +715,17 @@ const getErrorType = prettyError => {
719
715
  }
720
716
  return undefined;
721
717
  };
718
+ const isAlreadyStack = line => {
719
+ return line.trim().startsWith('at ');
720
+ };
721
+ const getStack = prettyError => {
722
+ const stackString = prettyError.stack || '';
723
+ const newLineIndex = stackString.indexOf('\n');
724
+ if (newLineIndex !== -1 && !isAlreadyStack(stackString.slice(0, newLineIndex))) {
725
+ return stackString.slice(newLineIndex + 1);
726
+ }
727
+ return stackString;
728
+ };
722
729
  const getErrorProperty = (error, prettyError) => {
723
730
  if (error && error.code === E_COMMAND_NOT_FOUND) {
724
731
  return {
@@ -731,7 +738,7 @@ const getErrorProperty = (error, prettyError) => {
731
738
  code: Custom,
732
739
  message: prettyError.message,
733
740
  data: {
734
- stack: prettyError.stack,
741
+ stack: getStack(prettyError),
735
742
  codeFrame: prettyError.codeFrame,
736
743
  type: getErrorType(prettyError),
737
744
  code: prettyError.code,
@@ -851,7 +858,7 @@ const invokeHelper = async (ipc, method, params, useSendAndTransfer) => {
851
858
  return unwrapJsonRpcResult(responseMessage);
852
859
  };
853
860
  const send = (transport, method, ...params) => {
854
- const message = create$4(method, params);
861
+ const message = create$4$1(method, params);
855
862
  transport.send(message);
856
863
  };
857
864
  const invoke$3 = (ipc, method, ...params) => {
@@ -928,7 +935,7 @@ const listen$1 = async (module, options) => {
928
935
  const ipc = module.wrap(rawIpc);
929
936
  return ipc;
930
937
  };
931
- const create$2 = async ({
938
+ const create$3 = async ({
932
939
  commandMap,
933
940
  messagePort
934
941
  }) => {
@@ -944,11 +951,20 @@ const create$2 = async ({
944
951
  messagePort.start();
945
952
  return rpc;
946
953
  };
954
+ const create$2 = async ({
955
+ commandMap,
956
+ messagePort
957
+ }) => {
958
+ return create$3({
959
+ commandMap,
960
+ messagePort
961
+ });
962
+ };
947
963
  const PlainMessagePortRpcParent = {
948
964
  __proto__: null,
949
965
  create: create$2
950
966
  };
951
- const create$1 = async ({
967
+ const create$4 = async ({
952
968
  commandMap
953
969
  }) => {
954
970
  // TODO create a commandMap per rpc instance
@@ -960,10 +976,10 @@ const create$1 = async ({
960
976
  };
961
977
  const WebWorkerRpcClient = {
962
978
  __proto__: null,
963
- create: create$1
979
+ create: create$4
964
980
  };
965
981
 
966
- const create = () => {
982
+ const create$1 = () => {
967
983
  const states = Object.create(null);
968
984
  return {
969
985
  get(uid) {
@@ -1024,9 +1040,9 @@ const create = () => {
1024
1040
 
1025
1041
  const {
1026
1042
  get: get$2,
1027
- set: set$4,
1043
+ set: set$3,
1028
1044
  wrapCommand
1029
- } = create();
1045
+ } = create$1();
1030
1046
 
1031
1047
  const create2 = (id, uri, x, y, width, height, workspacePath) => {
1032
1048
  const state = {
@@ -1064,7 +1080,7 @@ const create2 = (id, uri, x, y, width, height, workspacePath) => {
1064
1080
  x,
1065
1081
  y
1066
1082
  };
1067
- set$4(id, state, state);
1083
+ set$3(id, state, state);
1068
1084
  };
1069
1085
 
1070
1086
  const RenderItems = 4;
@@ -1097,53 +1113,70 @@ const diff2 = uid => {
1097
1113
  return result;
1098
1114
  };
1099
1115
 
1100
- const commandIds = ['acceptInput', 'focus', 'focusFirst', 'focusIndex', 'focusLast', 'focusNext', 'focusNone', 'focusPrevious', 'refresh', 'handleClickSourceControlButtons', 'handleClick', 'handleClickAt', 'handleFocus', 'handleIconThemeChange', 'handleMouseOut', 'handleMouseOutAt', 'handleMouseOver', 'handleMouseOverAt', 'handleWheel', 'selectIndex'];
1116
+ const commandIds = ['acceptInput', 'focus', 'focusFirst', 'focusIndex', 'focusLast', 'focusNext', 'focusNone', 'focusPrevious', 'getInfo', 'handleClick', 'handleClickAt', 'handleClickSourceControlButtons', 'handleFocus', 'handleIconThemeChange', 'handleMouseOut', 'handleMouseOutAt', 'handleMouseOver', 'handleMouseOverAt', 'handleWheel', 'refresh', 'selectIndex'];
1101
1117
 
1102
1118
  const getCommandIds = () => {
1103
1119
  return commandIds;
1104
1120
  };
1105
1121
 
1122
+ const getInfo = uid => {
1123
+ const {
1124
+ newState
1125
+ } = get$2(uid);
1126
+ return newState.allGroups;
1127
+ };
1128
+
1106
1129
  const rpcs = Object.create(null);
1107
- const set$3 = (id, rpc) => {
1130
+ const set$b = (id, rpc) => {
1108
1131
  rpcs[id] = rpc;
1109
1132
  };
1110
1133
  const get$1 = id => {
1111
1134
  return rpcs[id];
1112
1135
  };
1113
- const RendererWorker$1 = 1;
1114
- const ExtensionHostWorker = 44;
1115
- const invoke$2 = (method, ...params) => {
1116
- const rpc = get$1(RendererWorker$1);
1117
- // @ts-ignore
1118
- return rpc.invoke(method, ...params);
1119
- };
1120
- const invokeAndTransfer$2 = (method, ...params) => {
1121
- const rpc = get$1(RendererWorker$1);
1122
- // @ts-ignore
1123
- return rpc.invokeAndTransfer(method, ...params);
1136
+
1137
+ /* eslint-disable @typescript-eslint/explicit-function-return-type */
1138
+
1139
+ const create = rpcId => {
1140
+ return {
1141
+ // @ts-ignore
1142
+ invoke(method, ...params) {
1143
+ const rpc = get$1(rpcId);
1144
+ // @ts-ignore
1145
+ return rpc.invoke(method, ...params);
1146
+ },
1147
+ // @ts-ignore
1148
+ invokeAndTransfer(method, ...params) {
1149
+ const rpc = get$1(rpcId);
1150
+ // @ts-ignore
1151
+ return rpc.invokeAndTransfer(method, ...params);
1152
+ },
1153
+ set(rpc) {
1154
+ set$b(rpcId, rpc);
1155
+ }
1156
+ };
1124
1157
  };
1125
- const set$2 = rpc => {
1126
- set$3(RendererWorker$1, rpc);
1158
+ const ExtensionHostWorker = 44;
1159
+ const RendererWorker$1 = 1;
1160
+ const {
1161
+ invoke: invoke$7,
1162
+ set: set$7
1163
+ } = create(ExtensionHostWorker);
1164
+ const ExtensionHost = {
1165
+ __proto__: null,
1166
+ invoke: invoke$7,
1167
+ set: set$7
1127
1168
  };
1169
+ const {
1170
+ invoke: invoke$2,
1171
+ invokeAndTransfer: invokeAndTransfer$2,
1172
+ set: set$2
1173
+ } = create(RendererWorker$1);
1128
1174
  const RendererWorker = {
1129
1175
  __proto__: null,
1130
1176
  invoke: invoke$2,
1131
1177
  invokeAndTransfer: invokeAndTransfer$2,
1132
1178
  set: set$2
1133
1179
  };
1134
- const invoke$1$1 = (method, ...params) => {
1135
- const rpc = get$1(ExtensionHostWorker);
1136
- // @ts-ignore
1137
- return rpc.invoke(method, ...params);
1138
- };
1139
- const set$1$1 = rpc => {
1140
- set$3(ExtensionHostWorker, rpc);
1141
- };
1142
- const ExtensionHost = {
1143
- __proto__: null,
1144
- invoke: invoke$1$1,
1145
- set: set$1$1
1146
- };
1147
1180
 
1148
1181
  const {
1149
1182
  invoke: invoke$1,
@@ -2194,7 +2227,7 @@ const render2 = (uid, diffResult) => {
2194
2227
  oldState,
2195
2228
  newState
2196
2229
  } = get$2(uid);
2197
- set$4(uid, newState, newState);
2230
+ set$3(uid, newState, newState);
2198
2231
  const commands = applyRender(oldState, newState, diffResult);
2199
2232
  return commands;
2200
2233
  };
@@ -2337,7 +2370,8 @@ const commandMap = {
2337
2370
  'SourceControl.selectIndex': wrapCommand(selectIndex),
2338
2371
  'SourceControl.setDeltaY': wrapCommand(setDeltaY),
2339
2372
  'SourceControl.terminate': terminate,
2340
- 'SourceControl.updateIcons': wrapCommand(updateIcons)
2373
+ 'SourceControl.updateIcons': wrapCommand(updateIcons),
2374
+ 'SourceControl.getInfo': getInfo
2341
2375
  };
2342
2376
 
2343
2377
  const listen = async () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/source-control-worker",
3
- "version": "1.14.0",
3
+ "version": "1.15.0",
4
4
  "description": "Source Control Worker",
5
5
  "keywords": [
6
6
  "Lvce Editor"