@lvce-editor/renderer-process 20.1.0 → 20.2.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.
@@ -123,7 +123,7 @@ const prompt$1 = message => {
123
123
  const state$9 = {
124
124
  styleSheets: Object.create(null)
125
125
  };
126
- const set$a = (id, sheet) => {
126
+ const set$9 = (id, sheet) => {
127
127
  state$9.styleSheets[id] = sheet;
128
128
  };
129
129
  const get$a = id => {
@@ -137,7 +137,7 @@ const addCssStyleSheet = async (id, text) => {
137
137
  return;
138
138
  }
139
139
  const sheet = new CSSStyleSheet({});
140
- set$a(id, sheet);
140
+ set$9(id, sheet);
141
141
  await sheet.replace(text);
142
142
  document.adoptedStyleSheets.push(sheet);
143
143
  };
@@ -294,8 +294,44 @@ const VirtualDomElements = {
294
294
  Text: Text$1};
295
295
  const getElementTag$1 = type => {
296
296
  switch (type) {
297
+ case A:
298
+ return A$1;
299
+ case Article:
300
+ return Article$1;
301
+ case Aside:
302
+ return Aside$1;
297
303
  case Audio$2:
298
304
  return Audio$1$1;
305
+ case Br:
306
+ return Br$1;
307
+ case Button:
308
+ return Button$1;
309
+ case Cite:
310
+ return Cite$1;
311
+ case Code$2:
312
+ return Code$1;
313
+ case Col:
314
+ return Col$1;
315
+ case ColGroup:
316
+ return ColGroup$1;
317
+ case Data:
318
+ return Data$1;
319
+ case Dd:
320
+ return Dd$1;
321
+ case Del:
322
+ return Del$1;
323
+ case Div:
324
+ return Div$1;
325
+ case Dl:
326
+ return Dl$1;
327
+ case Dt:
328
+ return Dt$1;
329
+ case Figcaption:
330
+ return Figcaption$1;
331
+ case Figure:
332
+ return Figure$1;
333
+ case Footer:
334
+ return Footer$1;
299
335
  case H1:
300
336
  return H1$1;
301
337
  case H2:
@@ -308,100 +344,64 @@ const getElementTag$1 = type => {
308
344
  return H5$1;
309
345
  case H6:
310
346
  return H6$1;
311
- case Div:
312
- return Div$1;
313
- case Kbd:
314
- return Kbd$1;
315
- case Table:
316
- return Table$1;
317
- case TBody:
318
- return TBody$1;
319
- case Th:
320
- return Th$1;
321
- case Td:
322
- return Td$1;
323
- case THead:
324
- return THead$1;
325
- case Tr:
326
- return Tr$1;
327
- case Input:
328
- return Input$1;
329
- case ColGroup:
330
- return ColGroup$1;
331
- case Col:
332
- return Col$1;
333
- case Button:
334
- return Button$1;
335
- case Span:
336
- return Span$1;
347
+ case Header:
348
+ return Header$1;
349
+ case Hr:
350
+ return Hr$1;
337
351
  case I:
338
352
  return I$1;
339
353
  case Img:
340
354
  return Img$1;
355
+ case Input:
356
+ return Input$1;
341
357
  case Ins:
342
358
  return Ins$1;
343
- case Del:
344
- return Del$1;
345
- case Article:
346
- return Article$1;
347
- case Aside:
348
- return Aside$1;
349
- case Footer:
350
- return Footer$1;
351
- case Header:
352
- return Header$1;
353
- case Nav:
354
- return Nav$1;
355
- case Section:
356
- return Section$1;
357
- case Search:
358
- return Search$1;
359
- case Dd:
360
- return Dd$1;
361
- case Dl:
362
- return Dl$1;
363
- case Figcaption:
364
- return Figcaption$1;
365
- case Figure:
366
- return Figure$1;
367
- case Hr:
368
- return Hr$1;
359
+ case Kbd:
360
+ return Kbd$1;
361
+ case Label:
362
+ return Label$1;
369
363
  case Li:
370
364
  return Li$1;
365
+ case Nav:
366
+ return Nav$1;
371
367
  case Ol:
372
368
  return Ol$1;
369
+ case Option:
370
+ return Option$1;
373
371
  case P:
374
372
  return P$1;
375
373
  case Pre:
376
374
  return Pre$1;
377
- case A:
378
- return A$1;
379
- case Br:
380
- return Br$1;
381
- case Cite:
382
- return Cite$1;
383
- case Data:
384
- return Data$1;
385
- case Time:
386
- return Time$1;
375
+ case Search:
376
+ return Search$1;
377
+ case Section:
378
+ return Section$1;
379
+ case Select:
380
+ return Select$1;
381
+ case Span:
382
+ return Span$1;
383
+ case Table:
384
+ return Table$1;
385
+ case TBody:
386
+ return TBody$1;
387
+ case Td:
388
+ return Td$1;
389
+ case TextArea:
390
+ return TextArea$1;
387
391
  case Tfoot:
388
392
  return Tfoot$1;
393
+ case Th:
394
+ return Th$1;
395
+ case THead:
396
+ return THead$1;
397
+ case Time:
398
+ return Time$1;
399
+ case Tr:
400
+ return Tr$1;
389
401
  case Ul:
390
402
  return Ul$1;
391
403
  case Video$2:
392
404
  return Video$1;
393
- case TextArea:
394
- return TextArea$1;
395
- case Select:
396
- return Select$1;
397
- case Option:
398
- return Option$1;
399
- case Code$2:
400
- return Code$1;
401
- case Label:
402
- return Label$1;
403
- case Dt:
404
- return Dt$1;
405
405
  default:
406
406
  throw new Error(`element tag not found ${type}`);
407
407
  }
@@ -450,8 +450,8 @@ const getComponentUid = $Element => {
450
450
  };
451
451
  const getComponentUidFromEvent = event => {
452
452
  const {
453
- target,
454
- currentTarget
453
+ currentTarget,
454
+ target
455
455
  } = event;
456
456
  return getComponentUid(currentTarget || target);
457
457
  };
@@ -468,7 +468,7 @@ const cache$1 = new Map();
468
468
  const has$1 = listener => {
469
469
  return cache$1.has(listener);
470
470
  };
471
- const set$9 = (listener, value) => {
471
+ const set$8 = (listener, value) => {
472
472
  cache$1.set(listener, value);
473
473
  };
474
474
  const get$9 = listener => {
@@ -495,7 +495,7 @@ const getWrappedListener$1 = (listener, returnValue) => {
495
495
  ipc.send('Viewlet.executeViewletCommand', uid, ...result);
496
496
  };
497
497
  nameAnonymousFunction$1(wrapped, listener.name);
498
- set$9(listener, wrapped);
498
+ set$8(listener, wrapped);
499
499
  }
500
500
  return get$9(listener);
501
501
  };
@@ -527,34 +527,18 @@ const attachEvent$1 = ($Node, eventMap, key, value, newEventMap) => {
527
527
  };
528
528
  const setProp = ($Element, key, value, eventMap, newEventMap) => {
529
529
  switch (key) {
530
- case 'maskImage':
531
- $Element.style.maskImage = `url('${value}')`;
532
- $Element.style.webkitMaskImage = `url('${value}')`;
533
- break;
534
- case 'paddingLeft':
535
- case 'paddingRight':
536
- case 'top':
537
- case 'left':
538
- case 'marginTop':
539
- $Element.style[key] = typeof value === 'number' ? `${value}px` : value;
540
- break;
541
- case 'translate':
542
- $Element.style[key] = value;
543
- break;
544
- case 'width':
545
- case 'height':
546
- if ($Element instanceof HTMLImageElement) {
547
- $Element[key] = value;
548
- } else if (typeof value === 'number') {
549
- $Element.style[key] = `${value}px`;
530
+ case 'ariaActivedescendant':
531
+ if (value) {
532
+ $Element.setAttribute('aria-activedescendant', value);
550
533
  } else {
551
- $Element.style[key] = value;
534
+ $Element.removeAttribute('aria-activedescendant');
552
535
  }
553
536
  break;
554
- case 'style':
555
- throw new Error('style property is not supported');
556
- case 'childCount':
557
- case 'type':
537
+ case 'ariaControls':
538
+ $Element.setAttribute('aria-controls', value);
539
+ break;
540
+ case 'ariaLabelledBy':
541
+ $Element.setAttribute('aria-labelledby', value);
558
542
  break;
559
543
  case 'ariaOwns':
560
544
  // TODO remove this once idl is supported
@@ -564,22 +548,37 @@ const setProp = ($Element, key, value, eventMap, newEventMap) => {
564
548
  $Element.removeAttribute('aria-owns');
565
549
  }
566
550
  break;
567
- case 'ariaActivedescendant':
568
- if (value) {
569
- $Element.setAttribute('aria-activedescendant', value);
551
+ case 'height':
552
+ case 'width':
553
+ if ($Element instanceof HTMLImageElement) {
554
+ $Element[key] = value;
555
+ } else if (typeof value === 'number') {
556
+ $Element.style[key] = `${value}px`;
570
557
  } else {
571
- $Element.removeAttribute('aria-activedescendant');
558
+ $Element.style[key] = value;
572
559
  }
573
560
  break;
574
- case 'ariaControls':
575
- $Element.setAttribute('aria-controls', value);
561
+ case 'id':
562
+ if (value) {
563
+ $Element[key] = value;
564
+ } else {
565
+ $Element.removeAttribute(key);
566
+ }
576
567
  break;
577
568
  case 'inputType':
578
569
  // @ts-ignore
579
570
  $Element.type = value;
580
571
  break;
581
- case 'ariaLabelledBy':
582
- $Element.setAttribute('aria-labelledby', value);
572
+ case 'left':
573
+ case 'marginTop':
574
+ case 'paddingLeft':
575
+ case 'paddingRight':
576
+ case 'top':
577
+ $Element.style[key] = typeof value === 'number' ? `${value}px` : value;
578
+ break;
579
+ case 'maskImage':
580
+ $Element.style.maskImage = `url('${value}')`;
581
+ $Element.style.webkitMaskImage = `url('${value}')`;
583
582
  break;
584
583
  case 'onBlur':
585
584
  case 'onChange':
@@ -613,12 +612,13 @@ const setProp = ($Element, key, value, eventMap, newEventMap) => {
613
612
  }
614
613
  attachEvent$1($Element, eventMap, eventName, value, newEventMap);
615
614
  break;
616
- case 'id':
617
- if (value) {
618
- $Element[key] = value;
619
- } else {
620
- $Element.removeAttribute(key);
621
- }
615
+ case 'style':
616
+ throw new Error('style property is not supported');
617
+ case 'childCount':
618
+ case 'type':
619
+ break;
620
+ case 'translate':
621
+ $Element.style[key] = value;
622
622
  break;
623
623
  default:
624
624
  if (key.startsWith('data-')) {
@@ -696,30 +696,30 @@ const applyPatch = ($Element, patches) => {
696
696
  let $Current = $Element;
697
697
  for (const patch of patches) {
698
698
  switch (patch.type) {
699
- case SetAttribute:
700
- setAttribute($Current, patch.key, patch.value);
701
- break;
702
- case RemoveAttribute:
703
- removeAttribute($Current, patch.key);
704
- break;
705
- case SetText:
706
- setText$3($Current, patch.value);
707
- break;
708
- case RemoveChild:
709
- removeChild($Current, patch.index);
710
- break;
711
699
  case Add:
712
700
  add$1($Current, patch.nodes);
713
701
  break;
714
- case NavigateSibling:
715
- $Current = $Current.parentNode.childNodes[patch.index];
716
- break;
717
702
  case NavigateChild:
718
703
  $Current = $Current.childNodes[patch.index];
719
704
  break;
720
705
  case NavigateParent:
721
706
  $Current = $Current.parentNode;
722
707
  break;
708
+ case NavigateSibling:
709
+ $Current = $Current.parentNode.childNodes[patch.index];
710
+ break;
711
+ case RemoveAttribute:
712
+ removeAttribute($Current, patch.key);
713
+ break;
714
+ case RemoveChild:
715
+ removeChild($Current, patch.index);
716
+ break;
717
+ case SetAttribute:
718
+ setAttribute($Current, patch.key, patch.value);
719
+ break;
720
+ case SetText:
721
+ setText$3($Current, patch.value);
722
+ break;
723
723
  }
724
724
  }
725
725
  };
@@ -730,6 +730,9 @@ const setDragInfo = (id, data) => {
730
730
  const getDragInfo = id => {
731
731
  return dragInfos[id];
732
732
  };
733
+ const isDragInfoOld = data => {
734
+ return Array.isArray(data);
735
+ };
733
736
  let id$1 = 0;
734
737
  const create$G = () => {
735
738
  return ++id$1;
@@ -767,8 +770,8 @@ const setDragImage = (dataTransfer, label) => {
767
770
  };
768
771
  const applyDragInfoMaybe = event => {
769
772
  const {
770
- target,
771
- dataTransfer
773
+ dataTransfer,
774
+ target
772
775
  } = event;
773
776
  if (dataTransfer) {
774
777
  const uid = getComponentUid(target);
@@ -776,11 +779,17 @@ const applyDragInfoMaybe = event => {
776
779
  if (!dragInfo) {
777
780
  return;
778
781
  }
779
- for (const item of dragInfo) {
780
- dataTransfer.setData(item.type, item.data);
781
- }
782
- if (dragInfo.label) {
783
- setDragImage(dataTransfer, dragInfo.label);
782
+ if (isDragInfoOld(dragInfo)) {
783
+ for (const item of dragInfo) {
784
+ dataTransfer.setData(item.type, item.data);
785
+ }
786
+ } else {
787
+ for (const item of dragInfo.items) {
788
+ dataTransfer.items.add(item.data, item.data);
789
+ }
790
+ if (dragInfo.label) {
791
+ setDragImage(dataTransfer, dragInfo.label);
792
+ }
784
793
  }
785
794
  }
786
795
  };
@@ -804,66 +813,66 @@ const handleDataTransferFiles = event => {
804
813
  };
805
814
  const getEventListenerArg = (param, event) => {
806
815
  switch (param) {
807
- case 'event.dataTransfer.files2':
808
- return handleDataTransferFiles(event);
816
+ case 'event.altKey':
817
+ return event.altKey;
818
+ case 'event.button':
819
+ return event.button;
809
820
  case 'event.clientX':
810
821
  return event.clientX;
811
- case 'event.x':
812
- return event.x;
813
822
  case 'event.clientY':
814
823
  return event.clientY;
815
- case 'event.y':
816
- return event.y;
817
- case 'event.button':
818
- return event.button;
819
- case 'event.target.value':
820
- return event.target.value;
821
- case 'event.isTrusted':
822
- return event.isTrusted;
823
- case 'event.dataTransfer.files':
824
- return event.dataTransfer.files;
825
- case 'event.target.className':
826
- return event.target.className;
824
+ case 'event.ctrlKey':
825
+ return event.ctrlKey;
827
826
  case 'event.data':
828
827
  return event.data;
828
+ case 'event.dataTransfer.files':
829
+ return event.dataTransfer.files;
830
+ case 'event.dataTransfer.files2':
831
+ return handleDataTransferFiles(event);
832
+ case 'event.defaultPrevented':
833
+ return event.defaultPrevented;
829
834
  case 'event.deltaMode':
830
835
  return event.deltaMode;
831
836
  case 'event.deltaX':
832
837
  return event.deltaX;
833
838
  case 'event.deltaY':
834
839
  return event.deltaY;
835
- case 'event.target.scrollTop':
836
- return event.target.scrollTop;
837
840
  case 'event.detail':
838
841
  return event.detail;
839
- case 'event.target.name':
840
- return event.target.name || '';
841
- case 'event.target.href':
842
- return event.target.href;
843
- case 'event.target.src':
844
- return event.target.src;
845
- case 'event.altKey':
846
- return event.altKey;
842
+ case 'event.inputType':
843
+ return event.inputType;
844
+ case 'event.isTrusted':
845
+ return event.isTrusted;
847
846
  case 'event.key':
848
847
  return event.key;
849
- case 'event.ctrlKey':
850
- return event.ctrlKey;
851
848
  case 'event.shiftKey':
852
849
  return event.shiftKey;
853
- case 'event.inputType':
854
- return event.inputType;
855
- case 'event.defaultPrevented':
856
- return event.defaultPrevented;
857
- case 'event.target.dataset.name':
858
- return event.target.dataset.name;
850
+ case 'event.target.className':
851
+ return event.target.className;
859
852
  case 'event.target.dataset.index':
860
853
  return event.target.dataset.index;
854
+ case 'event.target.dataset.name':
855
+ return event.target.dataset.name;
856
+ case 'event.target.href':
857
+ return event.target.href;
858
+ case 'event.target.name':
859
+ return event.target.name || '';
861
860
  case 'event.target.nodeName':
862
861
  return event.target.nodeName;
863
- case 'event.target.selectionStart':
864
- return event.target.selectionStart;
862
+ case 'event.target.scrollTop':
863
+ return event.target.scrollTop;
865
864
  case 'event.target.selectionEnd':
866
865
  return event.target.selectionEnd;
866
+ case 'event.target.selectionStart':
867
+ return event.target.selectionStart;
868
+ case 'event.target.src':
869
+ return event.target.src;
870
+ case 'event.target.value':
871
+ return event.target.value;
872
+ case 'event.x':
873
+ return event.x;
874
+ case 'event.y':
875
+ return event.y;
867
876
  default:
868
877
  return param;
869
878
  }
@@ -898,8 +907,8 @@ const applyPointerTrackMaybe = (info, map, event) => {
898
907
  return;
899
908
  }
900
909
  const {
901
- target,
902
- pointerId
910
+ pointerId,
911
+ target
903
912
  } = event;
904
913
  target.setPointerCapture(pointerId);
905
914
  const [pointerMoveKey, pointerUpKey] = trackPointerEvents;
@@ -1093,9 +1102,9 @@ const getTitleBarHeight = () => {
1093
1102
  };
1094
1103
  const getBounds = () => {
1095
1104
  return {
1096
- windowWidth: window.innerWidth,
1105
+ titleBarHeight: getTitleBarHeight(),
1097
1106
  windowHeight: window.innerHeight,
1098
- titleBarHeight: getTitleBarHeight()
1107
+ windowWidth: window.innerWidth
1099
1108
  };
1100
1109
  };
1101
1110
 
@@ -1123,14 +1132,14 @@ const shouldLaunchMultipleWorkers = true;
1123
1132
 
1124
1133
  const getInitData = () => {
1125
1134
  const initData = {
1126
- Location: {
1127
- href: getHref()
1135
+ Config: {
1136
+ shouldLaunchMultipleWorkers: shouldLaunchMultipleWorkers
1128
1137
  },
1129
1138
  Layout: {
1130
1139
  bounds: getBounds()
1131
1140
  },
1132
- Config: {
1133
- shouldLaunchMultipleWorkers: shouldLaunchMultipleWorkers
1141
+ Location: {
1142
+ href: getHref()
1134
1143
  }
1135
1144
  };
1136
1145
  return initData;
@@ -1159,16 +1168,16 @@ const withResolvers = () => {
1159
1168
  _reject = reject;
1160
1169
  });
1161
1170
  return {
1162
- resolve: _resolve,
1171
+ promise,
1163
1172
  reject: _reject,
1164
- promise
1173
+ resolve: _resolve
1165
1174
  };
1166
1175
  };
1167
1176
 
1168
1177
  const getFirstEvent$1 = (eventTarget, eventMap) => {
1169
1178
  const {
1170
- resolve,
1171
- promise
1179
+ promise,
1180
+ resolve
1172
1181
  } = withResolvers();
1173
1182
  const listenerMap = Object.create(null);
1174
1183
  const cleanup = value => {
@@ -1180,8 +1189,8 @@ const getFirstEvent$1 = (eventTarget, eventMap) => {
1180
1189
  for (const [event, type] of Object.entries(eventMap)) {
1181
1190
  const listener = event => {
1182
1191
  cleanup({
1183
- type,
1184
- event
1192
+ event,
1193
+ type
1185
1194
  });
1186
1195
  };
1187
1196
  eventTarget.addEventListener(event, listener);
@@ -1197,8 +1206,8 @@ const getFirstEvent$1 = (eventTarget, eventMap) => {
1197
1206
  */
1198
1207
  const getFirstWorkerEvent$1 = worker => {
1199
1208
  return getFirstEvent$1(worker, {
1200
- message: Message$2,
1201
- error: Error$3
1209
+ error: Error$3,
1210
+ message: Message$2
1202
1211
  });
1203
1212
  };
1204
1213
 
@@ -1288,17 +1297,17 @@ const getWorkerDisplayName$1 = name => {
1288
1297
  return `${name} worker`;
1289
1298
  };
1290
1299
  const create$F = async ({
1291
- url,
1292
- name
1300
+ name,
1301
+ url
1293
1302
  }) => {
1294
1303
  const worker = new Worker(url, {
1295
- type: Module$1,
1296
- name
1304
+ name,
1305
+ type: Module$1
1297
1306
  });
1298
1307
  // @ts-expect-error
1299
1308
  const {
1300
- type,
1301
- event
1309
+ event,
1310
+ type
1302
1311
  } = await getFirstWorkerEvent$1(worker);
1303
1312
  switch (type) {
1304
1313
  case Message$2:
@@ -1620,8 +1629,8 @@ const getModuleNotFoundError = stderr => {
1620
1629
  const messageIndex = lines.findIndex(isModuleNotFoundMessage);
1621
1630
  const message = lines[messageIndex];
1622
1631
  return {
1623
- message,
1624
- code: ERR_MODULE_NOT_FOUND
1632
+ code: ERR_MODULE_NOT_FOUND,
1633
+ message
1625
1634
  };
1626
1635
  };
1627
1636
  const isModuleNotFoundError = stderr => {
@@ -1644,14 +1653,14 @@ const isUnhelpfulNativeModuleError = stderr => {
1644
1653
  const getNativeModuleErrorMessage = stderr => {
1645
1654
  const message = getMessageCodeBlock(stderr);
1646
1655
  return {
1647
- message: `Incompatible native node module: ${message}`,
1648
- code: E_INCOMPATIBLE_NATIVE_MODULE
1656
+ code: E_INCOMPATIBLE_NATIVE_MODULE,
1657
+ message: `Incompatible native node module: ${message}`
1649
1658
  };
1650
1659
  };
1651
1660
  const getModuleSyntaxError = () => {
1652
1661
  return {
1653
- message: `ES Modules are not supported in electron`,
1654
- code: E_MODULES_NOT_SUPPORTED_IN_ELECTRON
1662
+ code: E_MODULES_NOT_SUPPORTED_IN_ELECTRON,
1663
+ message: `ES Modules are not supported in electron`
1655
1664
  };
1656
1665
  };
1657
1666
  const getHelpfulChildProcessError = (stdout, stderr) => {
@@ -1670,8 +1679,8 @@ const getHelpfulChildProcessError = (stdout, stderr) => {
1670
1679
  rest
1671
1680
  } = getDetails$1(lines);
1672
1681
  return {
1673
- message: actualMessage,
1674
1682
  code: '',
1683
+ message: actualMessage,
1675
1684
  stack: rest
1676
1685
  };
1677
1686
  };
@@ -1681,8 +1690,8 @@ class IpcError extends VError$1 {
1681
1690
  if (stdout || stderr) {
1682
1691
  // @ts-ignore
1683
1692
  const {
1684
- message,
1685
1693
  code,
1694
+ message,
1686
1695
  stack
1687
1696
  } = getHelpfulChildProcessError(stdout, stderr);
1688
1697
  const cause = new Error(message);
@@ -1706,7 +1715,7 @@ const getData$2 = event => {
1706
1715
  return event.data;
1707
1716
  };
1708
1717
  const listen$9 = () => {
1709
- return window;
1718
+ return globalThis;
1710
1719
  };
1711
1720
  const signal$a = global => {
1712
1721
  global.postMessage(readyMessage);
@@ -1736,7 +1745,7 @@ class IpcChildWithElectronWindow extends Ipc {
1736
1745
  const {
1737
1746
  ports
1738
1747
  } = event;
1739
- if (ports.length) {
1748
+ if (ports.length > 0) {
1740
1749
  return;
1741
1750
  }
1742
1751
  callback(event);
@@ -1770,8 +1779,8 @@ const removeListener = (emitter, type, callback) => {
1770
1779
  };
1771
1780
  const getFirstEvent = (eventEmitter, eventMap) => {
1772
1781
  const {
1773
- resolve,
1774
- promise
1782
+ promise,
1783
+ resolve
1775
1784
  } = Promise.withResolvers();
1776
1785
  const listenerMap = Object.create(null);
1777
1786
  const cleanup = value => {
@@ -1783,8 +1792,8 @@ const getFirstEvent = (eventEmitter, eventMap) => {
1783
1792
  for (const [event, type] of Object.entries(eventMap)) {
1784
1793
  const listener = event => {
1785
1794
  cleanup({
1786
- type,
1787
- event
1795
+ event,
1796
+ type
1788
1797
  });
1789
1798
  };
1790
1799
  addListener(eventEmitter, event, listener);
@@ -1793,9 +1802,9 @@ const getFirstEvent = (eventEmitter, eventMap) => {
1793
1802
  return promise;
1794
1803
  };
1795
1804
  const Message$1 = 3;
1796
- const create$5$2 = async ({
1797
- messagePort,
1798
- isMessagePortOpen
1805
+ const create$5$1 = async ({
1806
+ isMessagePortOpen,
1807
+ messagePort
1799
1808
  }) => {
1800
1809
  if (!isMessagePort(messagePort)) {
1801
1810
  throw new IpcError('port must be of type MessagePort');
@@ -1808,8 +1817,8 @@ const create$5$2 = async ({
1808
1817
  });
1809
1818
  messagePort.start();
1810
1819
  const {
1811
- type,
1812
- event
1820
+ event,
1821
+ type
1813
1822
  } = await eventPromise;
1814
1823
  if (type !== Message$1) {
1815
1824
  throw new IpcError('Failed to wait for ipc message');
@@ -1844,7 +1853,7 @@ const wrap$5 = messagePort => {
1844
1853
  };
1845
1854
  const IpcParentWithMessagePort$1 = {
1846
1855
  __proto__: null,
1847
- create: create$5$2,
1856
+ create: create$5$1,
1848
1857
  signal: signal$1,
1849
1858
  wrap: wrap$5
1850
1859
  };
@@ -1852,8 +1861,8 @@ const Message = 'message';
1852
1861
  const Error$1$1 = 'error';
1853
1862
  const getFirstWorkerEvent = worker => {
1854
1863
  return getFirstEvent(worker, {
1855
- message: Message,
1856
- error: Error$1$1
1864
+ error: Error$1$1,
1865
+ message: Message
1857
1866
  });
1858
1867
  };
1859
1868
  const isErrorEvent = event => {
@@ -1886,17 +1895,17 @@ ${relevant}`;
1886
1895
  }
1887
1896
  }
1888
1897
  const Module = 'module';
1889
- const create$4$3 = async ({
1890
- url,
1891
- name
1898
+ const create$4$2 = async ({
1899
+ name,
1900
+ url
1892
1901
  }) => {
1893
1902
  const worker = new Worker(url, {
1894
- type: Module,
1895
- name
1903
+ name,
1904
+ type: Module
1896
1905
  });
1897
1906
  const {
1898
- type,
1899
- event
1907
+ event,
1908
+ type
1900
1909
  } = await getFirstWorkerEvent(worker);
1901
1910
  switch (type) {
1902
1911
  case Message:
@@ -1948,60 +1957,18 @@ const wrap$4 = worker => {
1948
1957
  };
1949
1958
  const IpcParentWithModuleWorker$1 = {
1950
1959
  __proto__: null,
1951
- create: create$4$3,
1960
+ create: create$4$2,
1952
1961
  wrap: wrap$4
1953
1962
  };
1954
1963
 
1955
- const Two = '2.0';
1956
- const create$4$2 = (method, params) => {
1957
- return {
1958
- jsonrpc: Two,
1959
- method,
1960
- params
1961
- };
1962
- };
1964
+ const Two$1 = '2.0';
1963
1965
  const callbacks = Object.create(null);
1964
- const set$8 = (id, fn) => {
1965
- callbacks[id] = fn;
1966
- };
1967
1966
  const get$7 = id => {
1968
1967
  return callbacks[id];
1969
1968
  };
1970
1969
  const remove$3 = id => {
1971
1970
  delete callbacks[id];
1972
1971
  };
1973
- let id = 0;
1974
- const create$3$1 = () => {
1975
- return ++id;
1976
- };
1977
- const registerPromise = () => {
1978
- const id = create$3$1();
1979
- const {
1980
- resolve,
1981
- promise
1982
- } = Promise.withResolvers();
1983
- set$8(id, resolve);
1984
- return {
1985
- id,
1986
- promise
1987
- };
1988
- };
1989
- const create$2$1 = (method, params) => {
1990
- const {
1991
- id,
1992
- promise
1993
- } = registerPromise();
1994
- const message = {
1995
- jsonrpc: Two,
1996
- method,
1997
- params,
1998
- id
1999
- };
2000
- return {
2001
- message,
2002
- promise
2003
- };
2004
- };
2005
1972
  class JsonRpcError extends Error {
2006
1973
  constructor(message) {
2007
1974
  super(message);
@@ -2197,7 +2164,7 @@ const getErrorProperty = (error, prettyError) => {
2197
2164
  };
2198
2165
  const create$1$1 = (id, error) => {
2199
2166
  return {
2200
- jsonrpc: Two,
2167
+ jsonrpc: Two$1,
2201
2168
  id,
2202
2169
  error
2203
2170
  };
@@ -2210,7 +2177,7 @@ const getErrorResponse = (id, error, preparePrettyError, logError) => {
2210
2177
  };
2211
2178
  const create$C = (message, result) => {
2212
2179
  return {
2213
- jsonrpc: Two,
2180
+ jsonrpc: Two$1,
2214
2181
  id: message.id,
2215
2182
  result: result ?? null
2216
2183
  };
@@ -2221,7 +2188,7 @@ const getSuccessResponse = (message, result) => {
2221
2188
  };
2222
2189
  const getErrorResponseSimple = (id, error) => {
2223
2190
  return {
2224
- jsonrpc: Two,
2191
+ jsonrpc: Two$1,
2225
2192
  id,
2226
2193
  error: {
2227
2194
  code: Custom,
@@ -2308,29 +2275,6 @@ const handleJsonRpcMessage = async (...args) => {
2308
2275
  }
2309
2276
  throw new JsonRpcError('unexpected message');
2310
2277
  };
2311
- const invokeHelper = async (ipc, method, params, useSendAndTransfer) => {
2312
- const {
2313
- message,
2314
- promise
2315
- } = create$2$1(method, params);
2316
- if (useSendAndTransfer && ipc.sendAndTransfer) {
2317
- ipc.sendAndTransfer(message);
2318
- } else {
2319
- ipc.send(message);
2320
- }
2321
- const responseMessage = await promise;
2322
- return unwrapJsonRpcResult(responseMessage);
2323
- };
2324
- const send$1 = (transport, method, ...params) => {
2325
- const message = create$4$2(method, params);
2326
- transport.send(message);
2327
- };
2328
- const invoke$2 = (ipc, method, ...params) => {
2329
- return invokeHelper(ipc, method, params, false);
2330
- };
2331
- const invokeAndTransfer$1 = (ipc, method, ...params) => {
2332
- return invokeHelper(ipc, method, params, true);
2333
- };
2334
2278
 
2335
2279
  class CommandNotFoundError extends Error {
2336
2280
  constructor(command) {
@@ -2352,25 +2296,88 @@ const execute = (command, ...args) => {
2352
2296
  }
2353
2297
  return fn(...args);
2354
2298
  };
2355
-
2299
+
2300
+ const Two = '2.0';
2301
+ const create$s$1 = (method, params) => {
2302
+ return {
2303
+ jsonrpc: Two,
2304
+ method,
2305
+ params
2306
+ };
2307
+ };
2308
+ const create$r$1 = (id, method, params) => {
2309
+ const message = {
2310
+ id,
2311
+ jsonrpc: Two,
2312
+ method,
2313
+ params
2314
+ };
2315
+ return message;
2316
+ };
2317
+ let id = 0;
2318
+ const create$q$1 = () => {
2319
+ return ++id;
2320
+ };
2321
+
2322
+ /* eslint-disable n/no-unsupported-features/es-syntax */
2323
+
2324
+ const registerPromise = map => {
2325
+ const id = create$q$1();
2326
+ const {
2327
+ promise,
2328
+ resolve
2329
+ } = Promise.withResolvers();
2330
+ map[id] = resolve;
2331
+ return {
2332
+ id,
2333
+ promise
2334
+ };
2335
+ };
2336
+
2337
+ // @ts-ignore
2338
+ const invokeHelper = async (callbacks, ipc, method, params, useSendAndTransfer) => {
2339
+ const {
2340
+ id,
2341
+ promise
2342
+ } = registerPromise(callbacks);
2343
+ const message = create$r$1(id, method, params);
2344
+ if (useSendAndTransfer && ipc.sendAndTransfer) {
2345
+ ipc.sendAndTransfer(message);
2346
+ } else {
2347
+ ipc.send(message);
2348
+ }
2349
+ const responseMessage = await promise;
2350
+ return unwrapJsonRpcResult(responseMessage);
2351
+ };
2356
2352
  const createRpc = ipc => {
2353
+ const callbacks = Object.create(null);
2354
+ ipc._resolve = (id, response) => {
2355
+ const fn = callbacks[id];
2356
+ if (!fn) {
2357
+ console.warn(`callback ${id} may already be disposed`);
2358
+ return;
2359
+ }
2360
+ fn(response);
2361
+ delete callbacks[id];
2362
+ };
2357
2363
  const rpc = {
2364
+ async dispose() {
2365
+ await ipc?.dispose();
2366
+ },
2367
+ invoke(method, ...params) {
2368
+ return invokeHelper(callbacks, ipc, method, params, false);
2369
+ },
2370
+ invokeAndTransfer(method, ...params) {
2371
+ return invokeHelper(callbacks, ipc, method, params, true);
2372
+ },
2358
2373
  // @ts-ignore
2359
2374
  ipc,
2360
2375
  /**
2361
2376
  * @deprecated
2362
2377
  */
2363
2378
  send(method, ...params) {
2364
- send$1(ipc, method, ...params);
2365
- },
2366
- invoke(method, ...params) {
2367
- return invoke$2(ipc, method, ...params);
2368
- },
2369
- invokeAndTransfer(method, ...params) {
2370
- return invokeAndTransfer$1(ipc, method, ...params);
2371
- },
2372
- async dispose() {
2373
- await ipc?.dispose();
2379
+ const message = create$s$1(method, params);
2380
+ ipc.send(message);
2374
2381
  }
2375
2382
  };
2376
2383
  return rpc;
@@ -2387,7 +2394,7 @@ const logError$1 = () => {
2387
2394
  const handleMessage = event => {
2388
2395
  const actualRequiresSocket = event?.target?.requiresSocket || requiresSocket;
2389
2396
  const actualExecute = event?.target?.execute || execute;
2390
- return handleJsonRpcMessage(event.target, event.data, actualExecute, resolve, preparePrettyError, logError$1, actualRequiresSocket);
2397
+ return handleJsonRpcMessage(event.target, event.data, actualExecute, event.target._resolve, preparePrettyError, logError$1, actualRequiresSocket);
2391
2398
  };
2392
2399
  const handleIpc = ipc => {
2393
2400
  if ('addEventListener' in ipc) {
@@ -2405,7 +2412,7 @@ const unhandleIpc = ipc => {
2405
2412
  ipc.onmessage = null;
2406
2413
  }
2407
2414
  };
2408
- const create$g$1 = async ({
2415
+ const create$l$1 = async ({
2409
2416
  commandMap,
2410
2417
  window
2411
2418
  }) => {
@@ -2418,21 +2425,21 @@ const create$g$1 = async ({
2418
2425
  };
2419
2426
  const ElectronWindowRpcClient = {
2420
2427
  __proto__: null,
2421
- create: create$g$1
2428
+ create: create$l$1
2422
2429
  };
2423
2430
  const isWorker = value => {
2424
2431
  return value instanceof Worker;
2425
2432
  };
2426
- const create$c$1 = async ({
2433
+ const create$b$1 = async ({
2427
2434
  commandMap,
2428
- url,
2429
- name
2435
+ name,
2436
+ url
2430
2437
  }) => {
2431
2438
  // TODO create a commandMap per rpc instance
2432
2439
  register(commandMap);
2433
2440
  const worker = await IpcParentWithModuleWorker$1.create({
2434
- url,
2435
- name
2441
+ name,
2442
+ url
2436
2443
  });
2437
2444
  if (!isWorker(worker)) {
2438
2445
  throw new Error(`worker must be of type Worker`);
@@ -2444,19 +2451,19 @@ const create$c$1 = async ({
2444
2451
  };
2445
2452
  const ModuleWorkerRpcParent = {
2446
2453
  __proto__: null,
2447
- create: create$c$1
2454
+ create: create$b$1
2448
2455
  };
2449
- const create$b$1 = async ({
2456
+ const create$a$1 = async ({
2450
2457
  commandMap,
2451
- url,
2458
+ name,
2452
2459
  port,
2453
- name
2460
+ url
2454
2461
  }) => {
2455
2462
  // TODO create a commandMap per rpc instance
2456
2463
  register(commandMap);
2457
2464
  const worker = await IpcParentWithModuleWorker$1.create({
2458
- url,
2459
- name
2465
+ name,
2466
+ url
2460
2467
  });
2461
2468
  if (!isWorker(worker)) {
2462
2469
  throw new Error(`worker must be of type Worker`);
@@ -2470,17 +2477,18 @@ const create$b$1 = async ({
2470
2477
  };
2471
2478
  const ModuleWorkerWithMessagePortRpcParent = {
2472
2479
  __proto__: null,
2473
- create: create$b$1
2480
+ create: create$a$1
2474
2481
  };
2475
- const create$5$1 = async ({
2482
+ const create$4$1 = async ({
2476
2483
  commandMap,
2484
+ isMessagePortOpen = true,
2477
2485
  messagePort
2478
2486
  }) => {
2479
2487
  // TODO create a commandMap per rpc instance
2480
2488
  register(commandMap);
2481
2489
  const rawIpc = await IpcParentWithMessagePort$1.create({
2482
- messagePort,
2483
- isMessagePortOpen: true
2490
+ isMessagePortOpen,
2491
+ messagePort
2484
2492
  });
2485
2493
  const ipc = IpcParentWithMessagePort$1.wrap(rawIpc);
2486
2494
  handleIpc(ipc);
@@ -2488,31 +2496,31 @@ const create$5$1 = async ({
2488
2496
  messagePort.start();
2489
2497
  return rpc;
2490
2498
  };
2491
- const create$4$1 = async ({
2499
+ const create$3$1 = async ({
2492
2500
  commandMap,
2493
2501
  messagePort
2494
2502
  }) => {
2495
- return create$5$1({
2503
+ return create$4$1({
2496
2504
  commandMap,
2497
2505
  messagePort
2498
2506
  });
2499
2507
  };
2500
2508
  const PlainMessagePortRpcParent = {
2501
2509
  __proto__: null,
2502
- create: create$4$1
2510
+ create: create$3$1
2503
2511
  };
2504
2512
 
2505
2513
  // TODO add test
2506
2514
  const create$B = async ({
2507
- url,
2508
2515
  name,
2509
- port
2516
+ port,
2517
+ url
2510
2518
  }) => {
2511
2519
  await ModuleWorkerWithMessagePortRpcParent.create({
2512
- url,
2513
- name,
2514
2520
  commandMap: {},
2515
- port
2521
+ name,
2522
+ port,
2523
+ url
2516
2524
  });
2517
2525
  return undefined;
2518
2526
  };
@@ -2553,8 +2561,8 @@ const isElectron = platform === Electron;
2553
2561
 
2554
2562
  // TODO use handleIncomingIpc function
2555
2563
  const create$A = async ({
2556
- port,
2557
- ipcId
2564
+ ipcId,
2565
+ port
2558
2566
  }) => {
2559
2567
  number(ipcId);
2560
2568
  if (!isElectron) {
@@ -2575,16 +2583,16 @@ const IpcParentWithElectron = {
2575
2583
 
2576
2584
  const getModule = method => {
2577
2585
  switch (method) {
2578
- case ModuleWorker:
2579
- return IpcParentWithModuleWorker$2;
2586
+ case Electron$1:
2587
+ return IpcParentWithElectron;
2580
2588
  case MessagePort$1:
2581
2589
  return IpcParentWithMessagePort$2;
2582
- case ReferencePort:
2583
- return IpcParentWithReferencePort;
2590
+ case ModuleWorker:
2591
+ return IpcParentWithModuleWorker$2;
2584
2592
  case ModuleWorkerWithMessagePort:
2585
2593
  return IpcParentWithModuleWorkerWithMessagePort;
2586
- case Electron$1:
2587
- return IpcParentWithElectron;
2594
+ case ReferencePort:
2595
+ return IpcParentWithReferencePort;
2588
2596
  default:
2589
2597
  throw new Error('unexpected ipc type');
2590
2598
  }
@@ -2611,9 +2619,9 @@ const launchWorker = async ({
2611
2619
  url
2612
2620
  }) => {
2613
2621
  const rpc = await ModuleWorkerRpcParent.create({
2614
- url,
2622
+ commandMap: commandMapRef,
2615
2623
  name,
2616
- commandMap: commandMapRef
2624
+ url
2617
2625
  });
2618
2626
  return rpc;
2619
2627
  };
@@ -2785,8 +2793,8 @@ const setThemeColor = color => {
2785
2793
 
2786
2794
  // TODO this file is not needed when all elements are position fixed
2787
2795
  const state$6 = {
2788
- widgetSet: new Set(),
2789
- $Widgets: undefined
2796
+ $Widgets: undefined,
2797
+ widgetSet: new Set()
2790
2798
  };
2791
2799
  const create$Widgets = () => {
2792
2800
  const $Widgets = document.createElement('div');
@@ -3102,13 +3110,13 @@ const FocusOutput = 28;
3102
3110
  // TODO keyboard handling
3103
3111
 
3104
3112
  const state$3 = {
3105
- handleKeyDown(event) {},
3106
- handleFocusOut(event) {},
3107
3113
  $$Menus: [],
3114
+ $BackDrop: undefined,
3115
+ anchorTime: -1,
3108
3116
  anchorX: 0,
3109
3117
  anchorY: 0,
3110
- anchorTime: -1,
3111
- $BackDrop: undefined
3118
+ handleFocusOut(event) {},
3119
+ handleKeyDown(event) {}
3112
3120
  };
3113
3121
  const getLevel = $Menu => {
3114
3122
  // @ts-expect-error
@@ -3157,9 +3165,9 @@ const handleMouseDown$4 = event => {
3157
3165
  */
3158
3166
  const handleMouseEnter = event => {
3159
3167
  const {
3160
- target,
3161
3168
  clientX,
3162
3169
  clientY,
3170
+ target,
3163
3171
  timeStamp
3164
3172
  } = event;
3165
3173
  const $Menu = target.closest('.Menu');
@@ -3295,15 +3303,15 @@ const hideSubMenu = level => {
3295
3303
 
3296
3304
  // TODO support nested menus / submenus
3297
3305
  const showControlled = ({
3298
- x,
3299
- y,
3300
- items,
3301
- handleKeyDown,
3302
- handleFocusOut,
3303
3306
  $Parent,
3307
+ handleFocusOut,
3308
+ handleKeyDown,
3309
+ height,
3310
+ items,
3304
3311
  level,
3305
3312
  width,
3306
- height
3313
+ x,
3314
+ y
3307
3315
  }) => {
3308
3316
  // @ts-expect-error
3309
3317
  showMenu(x, y, width, height, items, level);
@@ -3466,12 +3474,12 @@ const start = async (id, options) => {
3466
3474
 
3467
3475
  const getEventClass = eventType => {
3468
3476
  switch (eventType) {
3469
- case Wheel:
3470
- return WheelEvent;
3471
3477
  case PointerDown:
3472
- case PointerUp:
3473
3478
  case PointerMove:
3479
+ case PointerUp:
3474
3480
  return PointerEvent;
3481
+ case Wheel:
3482
+ return WheelEvent;
3475
3483
  default:
3476
3484
  return Event;
3477
3485
  }
@@ -3586,8 +3594,8 @@ const querySelector = selector => {
3586
3594
  throw new Error(`unsupported selector: ${selector}`);
3587
3595
  };
3588
3596
  const querySelectorWithOptions = (selector, {
3589
- nth = -1,
3590
- hasText = ''
3597
+ hasText = '',
3598
+ nth = -1
3591
3599
  } = {}) => {
3592
3600
  let elements = querySelector(selector);
3593
3601
  if (hasText) {
@@ -3628,18 +3636,18 @@ const performAction2 = async (locator, fnName, options) => {
3628
3636
 
3629
3637
  const toHaveText$1 = locator => {
3630
3638
  const element = querySelectorWithOptions(locator._selector, {
3631
- nth: locator._nth,
3632
- hasText: locator._hasText
3639
+ hasText: locator._hasText,
3640
+ nth: locator._nth
3633
3641
  });
3634
3642
  if (!element) {
3635
3643
  return {
3636
- wasFound: false,
3637
- actual: ''
3644
+ actual: '',
3645
+ wasFound: false
3638
3646
  };
3639
3647
  }
3640
3648
  return {
3641
- wasFound: true,
3642
- actual: element.textContent
3649
+ actual: element.textContent,
3650
+ wasFound: true
3643
3651
  };
3644
3652
  };
3645
3653
  const toHaveAttribute$1 = (locator, {
@@ -3647,19 +3655,19 @@ const toHaveAttribute$1 = (locator, {
3647
3655
  value
3648
3656
  }) => {
3649
3657
  const element = querySelectorWithOptions(locator._selector, {
3650
- nth: locator._nth,
3651
- hasText: locator._hasText
3658
+ hasText: locator._hasText,
3659
+ nth: locator._nth
3652
3660
  });
3653
3661
  if (!element) {
3654
3662
  return {
3655
- wasFound: false,
3656
- actual: ''
3663
+ actual: '',
3664
+ wasFound: false
3657
3665
  };
3658
3666
  }
3659
3667
  const actual = element.getAttribute(key);
3660
3668
  return {
3661
- wasFound: true,
3662
- actual
3669
+ actual,
3670
+ wasFound: true
3663
3671
  };
3664
3672
  };
3665
3673
  const toHaveCount$1 = locator => {
@@ -3694,26 +3702,26 @@ const toHaveClass$1 = (locator, {
3694
3702
  const [element] = querySelector(locator._selector);
3695
3703
  if (!element) {
3696
3704
  return {
3697
- wasFound: false,
3698
- actual: ''
3705
+ actual: '',
3706
+ wasFound: false
3699
3707
  };
3700
3708
  }
3701
3709
  return {
3702
- wasFound: true,
3703
- actual: className
3710
+ actual: className,
3711
+ wasFound: true
3704
3712
  };
3705
3713
  };
3706
3714
  const toHaveId$1 = locator => {
3707
3715
  const [element] = querySelector(locator._selector);
3708
3716
  if (!element) {
3709
3717
  return {
3710
- wasFound: false,
3711
- actual: ''
3718
+ actual: '',
3719
+ wasFound: false
3712
3720
  };
3713
3721
  }
3714
3722
  return {
3715
- wasFound: true,
3716
- actual: element.id
3723
+ actual: element.id,
3724
+ wasFound: true
3717
3725
  };
3718
3726
  };
3719
3727
  const toHaveCss$1 = (locator, {
@@ -3722,15 +3730,15 @@ const toHaveCss$1 = (locator, {
3722
3730
  const [element] = querySelector(locator._selector);
3723
3731
  if (!element) {
3724
3732
  return {
3725
- wasFound: false,
3726
- actual: ''
3733
+ actual: '',
3734
+ wasFound: false
3727
3735
  };
3728
3736
  }
3729
3737
  const style = getComputedStyle(element);
3730
3738
  const actual = style[key];
3731
3739
  return {
3732
- wasFound: true,
3733
- actual
3740
+ actual,
3741
+ wasFound: true
3734
3742
  };
3735
3743
  };
3736
3744
  const toHaveJSProperty$1 = (locator, {
@@ -3739,14 +3747,14 @@ const toHaveJSProperty$1 = (locator, {
3739
3747
  const [element] = querySelector(locator._selector);
3740
3748
  if (!element) {
3741
3749
  return {
3742
- wasFound: false,
3743
- actual: ''
3750
+ actual: '',
3751
+ wasFound: false
3744
3752
  };
3745
3753
  }
3746
3754
  const actual = element[key];
3747
3755
  return {
3748
- wasFound: true,
3749
- actual
3756
+ actual,
3757
+ wasFound: true
3750
3758
  };
3751
3759
  };
3752
3760
 
@@ -4370,16 +4378,16 @@ const create$u = (pointerDown, pointerMove, pointerUp) => {
4370
4378
  };
4371
4379
  const handlePointerUp = event => {
4372
4380
  const {
4373
- target,
4374
- pointerId
4381
+ pointerId,
4382
+ target
4375
4383
  } = event;
4376
4384
  stopTracking$1(target, pointerId, handlePointerMove, handlePointerUp);
4377
4385
  shared(pointerUp, event);
4378
4386
  };
4379
4387
  const handlePointerDown = event => {
4380
4388
  const {
4381
- target,
4382
- pointerId
4389
+ pointerId,
4390
+ target
4383
4391
  } = event;
4384
4392
  startTracking$1(target, pointerId, handlePointerMove, handlePointerUp);
4385
4393
  shared(pointerDown, event);
@@ -4496,11 +4504,11 @@ const handleKeyDown$3 = event => {
4496
4504
  stopPropagation(event);
4497
4505
  const uid = fromEvent(event);
4498
4506
  const {
4499
- key,
4500
4507
  altKey,
4501
4508
  ctrlKey,
4502
- shiftKey,
4503
- metaKey
4509
+ key,
4510
+ metaKey,
4511
+ shiftKey
4504
4512
  } = event;
4505
4513
  handleKeyDown$4(uid, key, altKey, ctrlKey, shiftKey, metaKey);
4506
4514
  };
@@ -4608,12 +4616,12 @@ const create$r = () => {
4608
4616
  $Dialog.append($DialogHeader, $DialogBody);
4609
4617
  $Dialog.onclick = handleClick$4;
4610
4618
  return {
4611
- $Viewlet: $Dialog,
4612
- $DialogTitle,
4613
4619
  $DialogBodyErrorCodeFrame,
4614
4620
  $DialogBodyErrorMessage,
4621
+ $DialogBodyErrorStack,
4615
4622
  $DialogBodyOptions,
4616
- $DialogBodyErrorStack
4623
+ $DialogTitle,
4624
+ $Viewlet: $Dialog
4617
4625
  };
4618
4626
  };
4619
4627
  const postAppend = state => {
@@ -5000,17 +5008,17 @@ const handleScrollBarThumbPointerMove = event => {
5000
5008
  };
5001
5009
  const handlePointerCaptureLost$2 = event => {
5002
5010
  const {
5003
- target,
5004
- pointerId
5011
+ pointerId,
5012
+ target
5005
5013
  } = event;
5006
5014
  stopTracking(target, pointerId, handleScrollBarThumbPointerMove, handlePointerCaptureLost$2);
5007
5015
  };
5008
5016
  const handleScrollBarPointerDown$1 = event => {
5009
5017
  preventDefault(event);
5010
5018
  const {
5011
- target,
5019
+ clientY,
5012
5020
  pointerId,
5013
- clientY
5021
+ target
5014
5022
  } = event;
5015
5023
  startTracking(target, pointerId, handleScrollBarThumbPointerMove, handlePointerCaptureLost$2);
5016
5024
  const uid = fromEvent(event);
@@ -5036,12 +5044,12 @@ const Large = 'Large';
5036
5044
 
5037
5045
  const getClassName = size => {
5038
5046
  switch (size) {
5039
- case Small$1:
5040
- return Small;
5041
- case Normal$1:
5042
- return Normal;
5043
5047
  case Large$1:
5044
5048
  return Large;
5049
+ case Normal$1:
5050
+ return Normal;
5051
+ case Small$1:
5052
+ return Small;
5045
5053
  default:
5046
5054
  return None$1;
5047
5055
  }
@@ -5090,17 +5098,17 @@ const create$q = () => {
5090
5098
  $Viewlet.id = 'Completions';
5091
5099
  $Viewlet.append($ListItems, $ScrollBar);
5092
5100
  return {
5093
- $Viewlet,
5094
5101
  $ListItems,
5095
5102
  $ScrollBar,
5096
- $ScrollBarThumb
5103
+ $ScrollBarThumb,
5104
+ $Viewlet
5097
5105
  };
5098
5106
  };
5099
5107
  const attachEvents$7 = state => {
5100
5108
  const {
5101
- $Viewlet,
5102
5109
  $ListItems,
5103
- $ScrollBar
5110
+ $ScrollBar,
5111
+ $Viewlet
5104
5112
  } = state;
5105
5113
  $Viewlet.addEventListener(Wheel, handleWheel$2, Passive);
5106
5114
  attachEvents$8($ListItems, {
@@ -5329,9 +5337,9 @@ const RightClick = 2;
5329
5337
  */
5330
5338
  const handlePointerMove = event => {
5331
5339
  const {
5332
- pointerId,
5333
5340
  clientX,
5334
- clientY
5341
+ clientY,
5342
+ pointerId
5335
5343
  } = event;
5336
5344
  const uid = fromEvent(event);
5337
5345
  handlePointerMove$1(uid, pointerId, clientX, clientY);
@@ -5342,10 +5350,10 @@ const handlePointerMove = event => {
5342
5350
  */
5343
5351
  const handlePointerUp = event => {
5344
5352
  const {
5345
- pointerId,
5353
+ button,
5346
5354
  clientX,
5347
5355
  clientY,
5348
- button
5356
+ pointerId
5349
5357
  } = event;
5350
5358
  if (button !== LeftClick) {
5351
5359
  return;
@@ -5366,11 +5374,11 @@ const handlePointerCaptureLost$1 = event => {
5366
5374
  */
5367
5375
  const handlePointerDown$1 = event => {
5368
5376
  const {
5369
- pointerId,
5377
+ button,
5370
5378
  clientX,
5371
5379
  clientY,
5372
- target,
5373
- button
5380
+ pointerId,
5381
+ target
5374
5382
  } = event;
5375
5383
  if (button !== LeftClick) {
5376
5384
  return;
@@ -5432,10 +5440,10 @@ const attachEvents$5 = state => {
5432
5440
  $Viewlet
5433
5441
  } = state;
5434
5442
  attachEvents$8($Viewlet, {
5435
- [PointerDown]: handlePointerDown$1,
5436
- [PointerUp]: handlePointerUp,
5437
5443
  [ContextMenu]: handleContextMenu$4,
5438
- [FocusIn]: handleFocus$6
5444
+ [FocusIn]: handleFocus$6,
5445
+ [PointerDown]: handlePointerDown$1,
5446
+ [PointerUp]: handlePointerUp
5439
5447
  });
5440
5448
  $Viewlet.addEventListener(Error$2, handleError$5, Capture);
5441
5449
  $Viewlet.addEventListener(Wheel, handleWheel$1, Passive);
@@ -5622,9 +5630,9 @@ const handleFocus$5 = event => {
5622
5630
  };
5623
5631
  const handleMouseMove = event => {
5624
5632
  const {
5633
+ altKey,
5625
5634
  clientX,
5626
- clientY,
5627
- altKey
5635
+ clientY
5628
5636
  } = event;
5629
5637
  return ['handleMouseMove', clientX, clientY, altKey];
5630
5638
  };
@@ -5641,8 +5649,8 @@ const handleBlur$5 = event => {
5641
5649
  const handleBeforeInput = event => {
5642
5650
  preventDefault(event);
5643
5651
  const {
5644
- inputType,
5645
- data
5652
+ data,
5653
+ inputType
5646
5654
  } = event;
5647
5655
  return ['handleBeforeInput', inputType, data];
5648
5656
  };
@@ -5681,9 +5689,9 @@ const isRightClick = event => {
5681
5689
  };
5682
5690
  const handleEditorPointerMove = event => {
5683
5691
  const {
5692
+ altKey,
5684
5693
  clientX,
5685
- clientY,
5686
- altKey
5694
+ clientY
5687
5695
  } = event;
5688
5696
  // TODO if/else should be in renderer worker
5689
5697
  if (altKey) {
@@ -5706,13 +5714,13 @@ const handleEditorLostPointerCapture = event => {
5706
5714
  */
5707
5715
  const handleEditorPointerDown = event => {
5708
5716
  const {
5709
- target,
5710
- pointerId
5717
+ pointerId,
5718
+ target
5711
5719
  } = event;
5712
5720
  target.setPointerCapture(pointerId);
5713
5721
  attachEventsFunctional(target, {
5714
- [PointerMove]: handleEditorPointerMove,
5715
5722
  [LostPointerCapture]: handleEditorLostPointerCapture,
5723
+ [PointerMove]: handleEditorPointerMove,
5716
5724
  returnValue: true
5717
5725
  });
5718
5726
  return [];
@@ -5788,8 +5796,8 @@ const handleScrollBarThumbHorizontalPointerMove = event => {
5788
5796
  */
5789
5797
  const handleScrollBarHorizontalPointerUp = event => {
5790
5798
  const {
5791
- target,
5792
- pointerId
5799
+ pointerId,
5800
+ target
5793
5801
  } = event;
5794
5802
  stopTracking(target, pointerId, handleScrollBarThumbHorizontalPointerMove, handleScrollBarHorizontalPointerUp);
5795
5803
  return [];
@@ -5801,9 +5809,9 @@ const handleScrollBarHorizontalPointerUp = event => {
5801
5809
  */
5802
5810
  const handleScrollBarHorizontalPointerDown = event => {
5803
5811
  const {
5804
- target,
5812
+ clientX,
5805
5813
  pointerId,
5806
- clientX
5814
+ target
5807
5815
  } = event;
5808
5816
  startTracking(target, pointerId, handleScrollBarThumbHorizontalPointerMove, handleScrollBarHorizontalPointerUp);
5809
5817
  return ['handleScrollBarHorizontalPointerDown', clientX];
@@ -5895,12 +5903,12 @@ const create$l = () => {
5895
5903
  // TODO where to best put listeners (side effects)
5896
5904
  attachEventsFunctional($EditorInput, {
5897
5905
  [BeforeInput]: handleBeforeInput,
5906
+ [Blur]: handleBlur$5,
5907
+ [CompositionEnd]: handleCompositionEnd,
5898
5908
  [CompositionStart]: handleCompositionStart,
5899
5909
  [CompositionUpdate]: handleCompositionUpdate,
5900
- [CompositionEnd]: handleCompositionEnd,
5901
- [Focus]: handleFocus$5,
5902
- [Blur]: handleBlur$5,
5903
5910
  [Cut]: handleCut,
5911
+ [Focus]: handleFocus$5,
5904
5912
  [Paste]: handlePaste,
5905
5913
  returnValue: true
5906
5914
  });
@@ -5925,8 +5933,8 @@ const create$l = () => {
5925
5933
  const $ScrollBarVertical = document.createElement('div');
5926
5934
  $ScrollBarVertical.className = 'ScrollBar ScrollBarVertical';
5927
5935
  attachEventsFunctional($ScrollBarVertical, {
5928
- [PointerDown]: handleScrollBarVerticalPointerDown,
5929
5936
  [ContextMenu]: handleScrollBarContextMenu,
5937
+ [PointerDown]: handleScrollBarVerticalPointerDown,
5930
5938
  returnValue: true
5931
5939
  });
5932
5940
  $ScrollBarVertical.append($ScrollBarThumbVertical);
@@ -5973,19 +5981,19 @@ const create$l = () => {
5973
5981
  returnValue: true
5974
5982
  });
5975
5983
  return {
5976
- $LayerCursor,
5977
- $LayerSelections,
5978
- $LayerText,
5979
- $LayerGutter,
5980
- $EditorLayers,
5981
5984
  $Editor,
5982
5985
  $EditorInput,
5983
- $ScrollBarThumbVertical,
5984
- $ScrollBarThumbHorizontal,
5986
+ $EditorLayers,
5987
+ $LayerCursor,
5985
5988
  $LayerDiagnostics,
5989
+ $LayerGutter,
5990
+ $LayerSelections,
5991
+ $LayerText,
5986
5992
  $ScrollBarDiagnostics,
5987
- shouldIgnoreSelectionChange: false,
5988
- $Viewlet: $Editor
5993
+ $ScrollBarThumbHorizontal,
5994
+ $ScrollBarThumbVertical,
5995
+ $Viewlet: $Editor,
5996
+ shouldIgnoreSelectionChange: false
5989
5997
  };
5990
5998
  };
5991
5999
  const setText$2 = (state, dom) => {
@@ -5997,8 +6005,8 @@ const setIncrementalEdits$1 = (state, incrementalEdits) => {
5997
6005
  } = state;
5998
6006
  for (const incrementalEdit of incrementalEdits) {
5999
6007
  const {
6000
- rowIndex,
6001
6008
  columnIndex,
6009
+ rowIndex,
6002
6010
  text
6003
6011
  } = incrementalEdit;
6004
6012
  const $Row = $LayerText.children[rowIndex];
@@ -6451,16 +6459,16 @@ const handleResizerPointerMove = event => {
6451
6459
  // TODO use lostpointercapture event instead
6452
6460
  const handleResizerPointerUp = event => {
6453
6461
  const {
6454
- target,
6455
- pointerId
6462
+ pointerId,
6463
+ target
6456
6464
  } = event;
6457
6465
  stopTracking(target, pointerId, handleResizerPointerMove, handleResizerPointerUp);
6458
6466
  };
6459
6467
  const handleResizerPointerDown = event => {
6460
6468
  const {
6461
- target,
6469
+ clientX,
6462
6470
  pointerId,
6463
- clientX
6471
+ target
6464
6472
  } = event;
6465
6473
  startTracking(target, pointerId, handleResizerPointerMove, handleResizerPointerUp);
6466
6474
  const id = target.nextSibling ? 1 : 2;
@@ -6716,35 +6724,19 @@ const Plus = 132;
6716
6724
 
6717
6725
  const getKeyCode = key => {
6718
6726
  switch (key) {
6727
+ case Backquote$1:
6728
+ case Backquote2:
6729
+ return Backquote;
6730
+ case Backslash$1:
6731
+ return Backslash;
6719
6732
  case Backspace$1:
6720
6733
  return Backspace;
6721
- case Tab$1:
6722
- return Tab;
6723
- case Escape$1:
6724
- return Escape;
6725
- case Enter$1:
6726
- return Enter;
6727
- case Space$1:
6728
- case Space2:
6729
- return Space;
6730
- case PageUp$1:
6731
- return PageUp;
6732
- case PageDown$1:
6733
- return PageDown;
6734
- case End$1:
6735
- return End;
6736
- case Home$1:
6737
- return Home;
6738
- case LeftArrow$1:
6739
- return LeftArrow;
6740
- case UpArrow$1:
6741
- return UpArrow;
6742
- case RightArrow$1:
6743
- return RightArrow;
6744
- case DownArrow$1:
6745
- return DownArrow;
6746
- case Insert$1:
6747
- return Insert;
6734
+ case BracketLeft$1:
6735
+ return BracketLeft;
6736
+ case BracketRight$1:
6737
+ return BracketRight;
6738
+ case Comma$1:
6739
+ return Comma;
6748
6740
  case Delete$1:
6749
6741
  return Delete;
6750
6742
  case Digit0$1:
@@ -6767,6 +6759,68 @@ const getKeyCode = key => {
6767
6759
  return Digit8;
6768
6760
  case Digit9$1:
6769
6761
  return Digit9;
6762
+ case DownArrow$1:
6763
+ return DownArrow;
6764
+ case End$1:
6765
+ return End;
6766
+ case Enter$1:
6767
+ return Enter;
6768
+ case Equal$1:
6769
+ return Equal;
6770
+ case Escape$1:
6771
+ return Escape;
6772
+ case F1$1:
6773
+ return F1;
6774
+ case F10$1:
6775
+ return F10;
6776
+ case F11$1:
6777
+ return F11;
6778
+ case F12$1:
6779
+ return F12;
6780
+ case F13$1:
6781
+ return F13;
6782
+ case F14$1:
6783
+ return F14;
6784
+ case F15$1:
6785
+ return F15;
6786
+ case F16$1:
6787
+ return F16;
6788
+ case F17$1:
6789
+ return F17;
6790
+ case F18$1:
6791
+ return F18;
6792
+ case F19$1:
6793
+ return F19;
6794
+ case F2$1:
6795
+ return F2;
6796
+ case F20$1:
6797
+ return F20;
6798
+ case F21$1:
6799
+ return F21;
6800
+ case F22$1:
6801
+ return F22;
6802
+ case F23$1:
6803
+ return F23;
6804
+ case F24$1:
6805
+ return F24;
6806
+ case F3$1:
6807
+ return F3;
6808
+ case F4$1:
6809
+ return F4;
6810
+ case F5$1:
6811
+ return F5;
6812
+ case F6$1:
6813
+ return F6;
6814
+ case F7$1:
6815
+ return F7;
6816
+ case F8$1:
6817
+ return F8;
6818
+ case F9$1:
6819
+ return F9;
6820
+ case Home$1:
6821
+ return Home;
6822
+ case Insert$1:
6823
+ return Insert;
6770
6824
  case KeyA$1:
6771
6825
  return KeyA;
6772
6826
  case KeyB$1:
@@ -6819,81 +6873,35 @@ const getKeyCode = key => {
6819
6873
  return KeyY;
6820
6874
  case KeyZ$1:
6821
6875
  return KeyZ;
6822
- case F1$1:
6823
- return F1;
6824
- case F2$1:
6825
- return F2;
6826
- case F3$1:
6827
- return F3;
6828
- case F4$1:
6829
- return F4;
6830
- case F5$1:
6831
- return F5;
6832
- case F6$1:
6833
- return F6;
6834
- case F7$1:
6835
- return F7;
6836
- case F8$1:
6837
- return F8;
6838
- case F9$1:
6839
- return F9;
6840
- case F10$1:
6841
- return F10;
6842
- case F11$1:
6843
- return F11;
6844
- case F12$1:
6845
- return F12;
6846
- case F13$1:
6847
- return F13;
6848
- case F14$1:
6849
- return F14;
6850
- case F15$1:
6851
- return F15;
6852
- case F16$1:
6853
- return F16;
6854
- case F17$1:
6855
- return F17;
6856
- case F18$1:
6857
- return F18;
6858
- case F19$1:
6859
- return F19;
6860
- case F20$1:
6861
- return F20;
6862
- case F21$1:
6863
- return F21;
6864
- case F22$1:
6865
- return F22;
6866
- case F23$1:
6867
- return F23;
6868
- case F24$1:
6869
- return F24;
6870
- case SemiColon$1:
6871
- return SemiColon;
6872
- case Equal$1:
6873
- return Equal;
6874
- case Comma$1:
6875
- return Comma;
6876
+ case LeftArrow$1:
6877
+ return LeftArrow;
6876
6878
  case Minus$1:
6877
6879
  return Minus;
6880
+ case PageDown$1:
6881
+ return PageDown;
6882
+ case PageUp$1:
6883
+ return PageUp;
6878
6884
  case Period$1:
6879
6885
  return Period;
6880
- case Slash$1:
6881
- return Slash;
6882
- case Backquote$1:
6883
- case Backquote2:
6884
- return Backquote;
6885
- case BracketLeft$1:
6886
- return BracketLeft;
6887
- case Backslash$1:
6888
- return Backslash;
6889
- case BracketRight$1:
6890
- return BracketRight;
6886
+ case Plus$1:
6887
+ return Plus;
6891
6888
  case Quote$1:
6892
6889
  return Quote;
6890
+ case RightArrow$1:
6891
+ return RightArrow;
6892
+ case SemiColon$1:
6893
+ return SemiColon;
6894
+ case Slash$1:
6895
+ return Slash;
6896
+ case Space$1:
6897
+ case Space2:
6898
+ return Space;
6893
6899
  case Star$1:
6894
6900
  return Star;
6895
- case Plus$1:
6896
- return Plus;
6901
+ case Tab$1:
6902
+ return Tab;
6903
+ case UpArrow$1:
6904
+ return UpArrow;
6897
6905
  default:
6898
6906
  return Unknown;
6899
6907
  }
@@ -6915,11 +6923,11 @@ const normalizeKey = (key, code) => {
6915
6923
 
6916
6924
  const getKeyBindingIdentifier = event => {
6917
6925
  const {
6918
- ctrlKey,
6919
- shiftKey,
6920
6926
  altKey,
6927
+ code,
6928
+ ctrlKey,
6921
6929
  key,
6922
- code
6930
+ shiftKey
6923
6931
  } = event;
6924
6932
  const modifierControl = ctrlKey ? CtrlCmd : 0;
6925
6933
  const modifierShift = shiftKey ? Shift : 0;
@@ -6982,8 +6990,8 @@ const handleSashPointerMove = event => {
6982
6990
  };
6983
6991
  const handlePointerCaptureLost = event => {
6984
6992
  const {
6985
- target,
6986
- pointerId
6993
+ pointerId,
6994
+ target
6987
6995
  } = event;
6988
6996
  stopTracking(target, pointerId, handleSashPointerMove, handlePointerCaptureLost);
6989
6997
  const id = getSashId(target);
@@ -6991,8 +6999,8 @@ const handlePointerCaptureLost = event => {
6991
6999
  };
6992
7000
  const handleSashPointerDown = event => {
6993
7001
  const {
6994
- target,
6995
- pointerId
7002
+ pointerId,
7003
+ target
6996
7004
  } = event;
6997
7005
  startTracking(target, pointerId, handleSashPointerMove, handlePointerCaptureLost);
6998
7006
  const id = getSashId(target);
@@ -7007,8 +7015,8 @@ const handleSashDoubleClick = event => {
7007
7015
  };
7008
7016
  const handleResize = () => {
7009
7017
  const {
7010
- innerWidth,
7011
- innerHeight
7018
+ innerHeight,
7019
+ innerWidth
7012
7020
  } = window;
7013
7021
  handleResize$1(innerWidth, innerHeight);
7014
7022
  };
@@ -7037,36 +7045,36 @@ const create$d = () => {
7037
7045
  $Viewlet.role = Application;
7038
7046
  $Viewlet.append($SashSideBar, $SashPanel);
7039
7047
  return {
7040
- $Viewlet,
7048
+ $SashPanel,
7041
7049
  $SashSideBar,
7042
- $SashPanel
7050
+ $Viewlet
7043
7051
  };
7044
7052
  };
7045
7053
  const attachEvents$4 = state => {
7046
7054
  const {
7047
- $SashSideBar,
7048
- $SashPanel
7055
+ $SashPanel,
7056
+ $SashSideBar
7049
7057
  } = state;
7050
7058
  attachEvents$8($SashSideBar, {
7051
- [PointerDown]: handleSashPointerDown,
7052
- [DoubleClick]: handleSashDoubleClick
7059
+ [DoubleClick]: handleSashDoubleClick,
7060
+ [PointerDown]: handleSashPointerDown
7053
7061
  });
7054
7062
  attachEvents$8($SashPanel, {
7055
- [PointerDown]: handleSashPointerDown,
7056
- [DoubleClick]: handleSashDoubleClick
7063
+ [DoubleClick]: handleSashDoubleClick,
7064
+ [PointerDown]: handleSashPointerDown
7057
7065
  });
7058
7066
  attachEvents$8(window, {
7059
- [Resize]: handleResize,
7060
- [Focus]: handleFocus$2,
7061
7067
  [Blur]: handleBlur$3,
7068
+ [Focus]: handleFocus$2,
7062
7069
  [KeyDown]: handleKeyDown$1,
7063
- [KeyUp]: handleKeyUp
7070
+ [KeyUp]: handleKeyUp,
7071
+ [Resize]: handleResize
7064
7072
  });
7065
7073
  };
7066
7074
  const setSashes = (state, sashSideBar, sashPanel) => {
7067
7075
  const {
7068
- $SashSideBar,
7069
- $SashPanel
7076
+ $SashPanel,
7077
+ $SashSideBar
7070
7078
  } = state;
7071
7079
  setBounds$a($SashSideBar, sashSideBar.x, sashSideBar.y, sashSideBar.width, sashSideBar.height);
7072
7080
  $SashSideBar.classList.toggle('SashActive', sashSideBar.active);
@@ -7141,9 +7149,9 @@ const handleDragLeave = event => {
7141
7149
  const handleDrop$1 = event => {
7142
7150
  preventDefault(event);
7143
7151
  const {
7144
- dataTransfer,
7145
7152
  clientX,
7146
- clientY
7153
+ clientY,
7154
+ dataTransfer
7147
7155
  } = event;
7148
7156
  const {
7149
7157
  files
@@ -7186,11 +7194,11 @@ const create$c = () => {
7186
7194
  // $Main.append($MainTabs, $MainContent)
7187
7195
 
7188
7196
  return {
7189
- $Viewlet,
7197
+ $DragOverlay: undefined,
7190
7198
  $Main: $Viewlet,
7191
7199
  $MainContent: undefined,
7192
7200
  $MainTabs: undefined,
7193
- $DragOverlay: undefined
7201
+ $Viewlet
7194
7202
  };
7195
7203
  };
7196
7204
  const attachEvents$3 = state => {
@@ -7198,11 +7206,11 @@ const attachEvents$3 = state => {
7198
7206
  $Viewlet
7199
7207
  } = state;
7200
7208
  attachEvents$8($Viewlet, {
7201
- [Drop]: handleDrop$1,
7202
- [DragOver]: handleDragOver$1,
7209
+ [ContextMenu]: handleContextMenu$2,
7203
7210
  [DragEnd]: handleDragEnd,
7204
7211
  [DragLeave]: handleDragLeave,
7205
- [ContextMenu]: handleContextMenu$2
7212
+ [DragOver]: handleDragOver$1,
7213
+ [Drop]: handleDrop$1
7206
7214
  });
7207
7215
  };
7208
7216
  const dispose$8 = state => {};
@@ -7300,8 +7308,8 @@ const handleTabsWheel = event => {
7300
7308
  };
7301
7309
  const handleDragStart = event => {
7302
7310
  const {
7303
- target,
7304
- dataTransfer
7311
+ dataTransfer,
7312
+ target
7305
7313
  } = event;
7306
7314
  setEffectAllowed(dataTransfer, CopyMove);
7307
7315
  dataTransfer.setData('x-lvce-drag', target.dataset.dragUid);
@@ -7322,9 +7330,9 @@ const handleDragOver = event => {
7322
7330
  const handleDrop = event => {
7323
7331
  preventDefault(event);
7324
7332
  const {
7325
- dataTransfer,
7326
7333
  clientX,
7327
- clientY
7334
+ clientY,
7335
+ dataTransfer
7328
7336
  } = event;
7329
7337
  const item = dataTransfer.getData('x-lvce-drag');
7330
7338
  const uid = getUid();
@@ -7332,9 +7340,9 @@ const handleDrop = event => {
7332
7340
  };
7333
7341
  const handleTabsMouseDown = event => {
7334
7342
  const {
7343
+ button,
7335
7344
  clientX,
7336
- clientY,
7337
- button
7345
+ clientY
7338
7346
  } = event;
7339
7347
  const uid = getUid();
7340
7348
  handleTabClick(uid, button, clientX, clientY);
@@ -7355,8 +7363,8 @@ const create$b = () => {
7355
7363
  $MainTabs.role = TabList;
7356
7364
  // TODO race condition: what if tab has already been closed?
7357
7365
  return {
7358
- $Viewlet: $MainTabs,
7359
- $MainTabs
7366
+ $MainTabs,
7367
+ $Viewlet: $MainTabs
7360
7368
  };
7361
7369
  };
7362
7370
  const attachEvents$2 = state => {
@@ -7469,10 +7477,10 @@ const create$a = () => {
7469
7477
  $Viewlet.tabIndex = 0;
7470
7478
  $Viewlet.append($ViewletOutputContent, $ViewletOutputWidgets);
7471
7479
  return {
7472
- $Viewlet,
7473
- content: $ViewletOutputContent,
7474
7480
  $Content: $ViewletOutputContent,
7475
- $ViewletOutputContent
7481
+ $Viewlet,
7482
+ $ViewletOutputContent,
7483
+ content: $ViewletOutputContent
7476
7484
  };
7477
7485
  };
7478
7486
  const setText = (state, text) => {
@@ -7519,9 +7527,9 @@ const ViewletOutput = {
7519
7527
  };
7520
7528
 
7521
7529
  const state$1 = {
7522
- instances: Object.create(null),
7523
- currentSideBarView: undefined,
7524
7530
  currentPanelView: undefined,
7531
+ currentSideBarView: undefined,
7532
+ instances: Object.create(null),
7525
7533
  modules: Object.create(null)
7526
7534
  };
7527
7535
 
@@ -7597,21 +7605,21 @@ const create$9 = () => {
7597
7605
  $Viewlet.append($PanelHeader);
7598
7606
  $Viewlet.ariaLabel = 'Panel';
7599
7607
  return {
7600
- $Panel: $Viewlet,
7601
- $Viewlet,
7602
- $PanelTabs,
7603
- $PanelHeader,
7604
- $PanelContent: undefined,
7605
7608
  $ButtonClose,
7606
7609
  $ButtonMaximize,
7607
- $PanelActions
7610
+ $Panel: $Viewlet,
7611
+ $PanelActions,
7612
+ $PanelContent: undefined,
7613
+ $PanelHeader,
7614
+ $PanelTabs,
7615
+ $Viewlet
7608
7616
  };
7609
7617
  // await openViewlet('Terminal')
7610
7618
  };
7611
7619
  const attachEvents$1 = state => {
7612
7620
  const {
7613
- $ButtonMaximize,
7614
7621
  $ButtonClose,
7622
+ $ButtonMaximize,
7615
7623
  $PanelHeader
7616
7624
  } = state;
7617
7625
  attachEvents$8($PanelHeader, {
@@ -7766,12 +7774,12 @@ const create$7 = () => {
7766
7774
  $Viewlet.ariaRoleDescription = SideBar$1;
7767
7775
  $Viewlet.append($SideBarTitleArea);
7768
7776
  return {
7769
- $Viewlet,
7777
+ $Actions: undefined,
7770
7778
  $SideBar: $Viewlet,
7771
- $SideBarTitleArea,
7772
7779
  $SideBarContent: undefined,
7780
+ $SideBarTitleArea,
7773
7781
  $SideBarTitleAreaTitle,
7774
- $Actions: undefined
7782
+ $Viewlet
7775
7783
  };
7776
7784
  };
7777
7785
  const attachEvents = state => {
@@ -7798,8 +7806,8 @@ const setActionsDom = (state, actions, parentId, eventMap = {}) => {
7798
7806
  return;
7799
7807
  }
7800
7808
  const {
7801
- $SideBarTitleArea,
7802
- $Actions
7809
+ $Actions,
7810
+ $SideBarTitleArea
7803
7811
  } = state;
7804
7812
  const $Parent = document.createElement('div');
7805
7813
  const $NewViewlet = rememberFocus$1($Parent, actions, {}, parentId);
@@ -7965,8 +7973,8 @@ const handleMouseOver = event => {
7965
7973
  };
7966
7974
  const handleMouseOut = event => {
7967
7975
  const {
7968
- target,
7969
- relatedTarget
7976
+ relatedTarget,
7977
+ target
7970
7978
  } = event;
7971
7979
  if (!relatedTarget) {
7972
7980
  return;
@@ -8093,8 +8101,8 @@ const create$5 = () => {
8093
8101
  const $Viewlet = document.createElement('div');
8094
8102
  $Viewlet.className = 'Viewlet Terminals';
8095
8103
  return {
8096
- $Viewlet,
8097
- $TerminalTabs: undefined
8104
+ $TerminalTabs: undefined,
8105
+ $Viewlet
8098
8106
  };
8099
8107
  };
8100
8108
  const setTabsDom = (state, dom) => {
@@ -8125,8 +8133,8 @@ const isInsideTitleBarMenu = $Element => {
8125
8133
  };
8126
8134
  const handleFocusOut = event => {
8127
8135
  const {
8128
- target,
8129
- relatedTarget
8136
+ relatedTarget,
8137
+ target
8130
8138
  } = event;
8131
8139
  if (relatedTarget && isInsideTitleBarMenu(relatedTarget)) {
8132
8140
  return;
@@ -8179,23 +8187,23 @@ const getLevelAndIndex = event => {
8179
8187
  } = $Menu;
8180
8188
  const level = Number.parseInt(id.slice(5));
8181
8189
  return {
8182
- level,
8183
- index
8190
+ index,
8191
+ level
8184
8192
  };
8185
8193
  };
8186
8194
  const handleMenuMouseOver = event => {
8187
8195
  // TODO just send pixel coordinates instead
8188
8196
  const {
8189
- level,
8190
- index
8197
+ index,
8198
+ level
8191
8199
  } = getLevelAndIndex(event);
8192
8200
  const uid = fromEvent(event);
8193
8201
  handleMenuMouseOver$1(uid, level, index);
8194
8202
  };
8195
8203
  const handleMenuClick = event => {
8196
8204
  const {
8197
- level,
8198
- index
8205
+ index,
8206
+ level
8199
8207
  } = getLevelAndIndex(event);
8200
8208
  const uid = fromEvent(event);
8201
8209
  handleMenuClick$1(uid, level, index);
@@ -8311,14 +8319,14 @@ const openMenu = (state, unFocusIndex, index, level, menuItems, menuFocusedIndex
8311
8319
  state$3.$$Menus = [];
8312
8320
  // @ts-expect-error
8313
8321
  showControlled({
8314
- x,
8315
- y,
8316
- width,
8322
+ $Parent: $Viewlet.children[index],
8323
+ handleFocusOut: handleFocusOut,
8317
8324
  height,
8318
8325
  items: menuItems,
8319
- handleFocusOut: handleFocusOut,
8320
- $Parent: $Viewlet.children[index],
8321
- level
8326
+ level,
8327
+ width,
8328
+ x,
8329
+ y
8322
8330
  });
8323
8331
  if (menuFocusedIndex !== -1) {
8324
8332
  focusIndex(0, -1, menuFocusedIndex);
@@ -8390,12 +8398,12 @@ const setMenus = (state, changes, uid) => {
8390
8398
  $Menu.onmouseover = handleMenuMouseOver;
8391
8399
  $Menu.onclick = handleMenuClick;
8392
8400
  const {
8393
- x,
8394
- y,
8395
- width,
8401
+ focusedIndex,
8396
8402
  height,
8397
8403
  level,
8398
- focusedIndex
8404
+ width,
8405
+ x,
8406
+ y
8399
8407
  } = menu;
8400
8408
  setBounds$a($Menu, x, y, width, height);
8401
8409
  renderInto($Menu, dom);
@@ -8409,18 +8417,28 @@ const setMenus = (state, changes, uid) => {
8409
8417
  $$Menus.push($Menu);
8410
8418
  break;
8411
8419
  }
8420
+ case 'closeMenus':
8421
+ {
8422
+ const keepCount = change[1];
8423
+ const $$ToDispose = $$Menus.slice(keepCount);
8424
+ for (const $ToDispose of $$ToDispose) {
8425
+ remove$1($ToDispose);
8426
+ }
8427
+ $$Menus.length = keepCount;
8428
+ break;
8429
+ }
8412
8430
  case 'updateMenu':
8413
8431
  {
8414
8432
  const menu = change[1];
8415
8433
  const newLength = change[2];
8416
8434
  const dom = change[3];
8417
8435
  const {
8436
+ focusedIndex,
8437
+ height,
8418
8438
  level,
8419
- x,
8420
- y,
8421
8439
  width,
8422
- height,
8423
- focusedIndex
8440
+ x,
8441
+ y
8424
8442
  } = menu;
8425
8443
  const $Menu = $$Menus[level];
8426
8444
  setBounds$a($Menu, x, y, width, height);
@@ -8435,16 +8453,6 @@ const setMenus = (state, changes, uid) => {
8435
8453
  }
8436
8454
  break;
8437
8455
  }
8438
- case 'closeMenus':
8439
- {
8440
- const keepCount = change[1];
8441
- const $$ToDispose = $$Menus.slice(keepCount);
8442
- for (const $ToDispose of $$ToDispose) {
8443
- remove$1($ToDispose);
8444
- }
8445
- $$Menus.length = keepCount;
8446
- break;
8447
- }
8448
8456
  // No default
8449
8457
  }
8450
8458
  }
@@ -8679,8 +8687,6 @@ const ViewletWebView = {
8679
8687
 
8680
8688
  const load$1 = moduleId => {
8681
8689
  switch (moduleId) {
8682
- case ImagePreview:
8683
- return ImagePreview$1;
8684
8690
  case ActivityBar:
8685
8691
  return ViewletActivityBar;
8686
8692
  case Audio$1:
@@ -8697,8 +8703,16 @@ const load$1 = moduleId => {
8697
8703
  return ViewletDialog;
8698
8704
  case DiffEditor:
8699
8705
  return ViewletDiffEditor;
8706
+ case E2eTest:
8707
+ return ViewletE2eTest;
8708
+ case E2eTests:
8709
+ return ViewletE2eTests;
8710
+ case EditorCodeGenerator:
8711
+ return ViewletEditorCodeGenerator;
8700
8712
  case EditorCompletion:
8701
8713
  return ViewletEditorCompletion;
8714
+ case EditorCompletionDetails:
8715
+ return ViewletEditorCompletionDetails;
8702
8716
  case EditorError:
8703
8717
  return ViewletEditorError;
8704
8718
  case EditorHover:
@@ -8707,18 +8721,28 @@ const load$1 = moduleId => {
8707
8721
  return ViewletEditorImage;
8708
8722
  case EditorPlainText:
8709
8723
  return ViewletEditorPlainText;
8724
+ case EditorSourceActions:
8725
+ return ViewletEditorSourceActions;
8710
8726
  case EditorText:
8711
8727
  return ViewletEditorText;
8728
+ case EditorTextError:
8729
+ return ViewletEditorTextError;
8712
8730
  case EditorWidgetError:
8713
8731
  return ViewletEditorWidgetError;
8714
8732
  case Empty:
8715
8733
  return ViewletEmpty;
8734
+ case EmptyEditor:
8735
+ return ViewletEmptyEditor;
8716
8736
  case Error$1:
8717
8737
  return ViewletError;
8718
8738
  case FindWidget:
8719
8739
  return ViewletFindWidget;
8740
+ case ImagePreview:
8741
+ return ImagePreview$1;
8720
8742
  case Implementations:
8721
8743
  return ViewletImplementations;
8744
+ case InlineDiffEditor:
8745
+ return ViewletInlineDiffEditor;
8722
8746
  case KeyBindings:
8723
8747
  return ViewletKeyBindings;
8724
8748
  case Layout:
@@ -8754,33 +8778,17 @@ const load$1 = moduleId => {
8754
8778
  case TitleBar:
8755
8779
  return ViewletTitleBar;
8756
8780
  case TitleBarButtons:
8757
- return ViewletTitleBarButtons;
8758
- case TitleBarIcon:
8759
- return ViewletTitleBarIcon;
8760
- case TitleBarMenuBar:
8761
- return ViewletTitleBarMenuBar;
8762
- case Video:
8763
- return ViewletVideo;
8764
- case TitleBarTitle:
8765
- return ViewletTitleBarTitle;
8766
- case EditorSourceActions:
8767
- return ViewletEditorSourceActions;
8768
- case EmptyEditor:
8769
- return ViewletEmptyEditor;
8770
- case InlineDiffEditor:
8771
- return ViewletInlineDiffEditor;
8772
- case E2eTests:
8773
- return ViewletE2eTests;
8774
- case E2eTest:
8775
- return ViewletE2eTest;
8781
+ return ViewletTitleBarButtons;
8782
+ case TitleBarIcon:
8783
+ return ViewletTitleBarIcon;
8784
+ case TitleBarMenuBar:
8785
+ return ViewletTitleBarMenuBar;
8786
+ case TitleBarTitle:
8787
+ return ViewletTitleBarTitle;
8788
+ case Video:
8789
+ return ViewletVideo;
8776
8790
  case WebView:
8777
8791
  return ViewletWebView;
8778
- case EditorCompletionDetails:
8779
- return ViewletEditorCompletionDetails;
8780
- case EditorTextError:
8781
- return ViewletEditorTextError;
8782
- case EditorCodeGenerator:
8783
- return ViewletEditorCodeGenerator;
8784
8792
  default:
8785
8793
  throw new Error(`${moduleId} module not found in renderer process`);
8786
8794
  }
@@ -8800,8 +8808,8 @@ const create$3 = (id, uid = id) => {
8800
8808
  module.attachEvents(instanceState);
8801
8809
  }
8802
8810
  state$1.instances[uid] = {
8803
- state: instanceState,
8804
- factory: module
8811
+ factory: module,
8812
+ state: instanceState
8805
8813
  };
8806
8814
  };
8807
8815
  const createFunctionalRoot = (id, uid = id, hasFunctionalEvents) => {
@@ -8819,8 +8827,8 @@ const createFunctionalRoot = (id, uid = id, hasFunctionalEvents) => {
8819
8827
  $Viewlet: document.createElement('div')
8820
8828
  };
8821
8829
  state$1.instances[uid] = {
8822
- state: instanceState,
8823
- factory: module
8830
+ factory: module,
8831
+ state: instanceState
8824
8832
  };
8825
8833
  };
8826
8834
  const addKeyBindings = (id, keyBindings) => {
@@ -9042,49 +9050,47 @@ const sendMultiple = commands => {
9042
9050
  for (const command of commands) {
9043
9051
  const [_, viewletId, method, ...args] = command;
9044
9052
  switch (_) {
9045
- case 'Viewlet.ariaAnnounce':
9046
- {
9047
- ariaAnnounce(viewletId);
9048
- break;
9049
- }
9050
- case 'Viewlet.setBounds':
9053
+ case 'Css.addCssStyleSheet':
9054
+ case 'Viewlet.addCss':
9055
+ case 'Viewlet.setCss':
9056
+ // @ts-ignore
9057
+ addCssStyleSheet(viewletId, method, ...args);
9058
+ break;
9059
+ case 'Viewlet.addKeyBindings':
9060
+ addKeyBindings(viewletId, method);
9061
+ break;
9062
+ case 'Viewlet.append':
9051
9063
  {
9052
9064
  // @ts-expect-error
9053
- setBounds$1(viewletId, method, ...args);
9054
- break;
9055
- }
9056
- case 'Viewlet.create':
9057
- {
9058
- create$3(viewletId, method);
9065
+ append(viewletId, method, ...args);
9059
9066
  break;
9060
9067
  }
9061
- case 'Viewlet.createFunctionalRoot':
9068
+ case 'Viewlet.appendToBody':
9062
9069
  {
9063
- // @ts-ignore
9064
- createFunctionalRoot(viewletId, method, ...args);
9070
+ // @ts-expect-error
9071
+ appendToBody(viewletId, method, ...args);
9065
9072
  break;
9066
9073
  }
9067
- case 'Viewlet.append':
9074
+ case 'Viewlet.appendViewlet':
9068
9075
  {
9069
9076
  // @ts-expect-error
9070
- append(viewletId, method, ...args);
9077
+ appendViewlet(viewletId, method, ...args);
9071
9078
  break;
9072
9079
  }
9073
- case 'Viewlet.appendToBody':
9080
+ case 'Viewlet.ariaAnnounce':
9074
9081
  {
9075
- // @ts-expect-error
9076
- appendToBody(viewletId, method, ...args);
9082
+ ariaAnnounce(viewletId);
9077
9083
  break;
9078
9084
  }
9079
- case 'Viewlet.dispose':
9085
+ case 'Viewlet.create':
9080
9086
  {
9081
- dispose$3(viewletId);
9087
+ create$3(viewletId, method);
9082
9088
  break;
9083
9089
  }
9084
- case 'Viewlet.setPatches':
9090
+ case 'Viewlet.createFunctionalRoot':
9085
9091
  {
9086
9092
  // @ts-ignore
9087
- setPatches(viewletId, method, ...args);
9093
+ createFunctionalRoot(viewletId, method, ...args);
9088
9094
  break;
9089
9095
  }
9090
9096
  case 'Viewlet.createPlaceholder':
@@ -9093,10 +9099,9 @@ const sendMultiple = commands => {
9093
9099
  createPlaceholder(viewletId, method, ...args);
9094
9100
  break;
9095
9101
  }
9096
- case 'Viewlet.handleError':
9102
+ case 'Viewlet.dispose':
9097
9103
  {
9098
- // @ts-expect-error
9099
- handleError$1(viewletId, method, ...args);
9104
+ dispose$3(viewletId);
9100
9105
  break;
9101
9106
  }
9102
9107
  case 'Viewlet.focus':
@@ -9104,25 +9109,48 @@ const sendMultiple = commands => {
9104
9109
  focus$1(viewletId);
9105
9110
  break;
9106
9111
  }
9107
- case 'Viewlet.appendViewlet':
9112
+ case 'Viewlet.focusElementByName':
9113
+ // @ts-ignore
9114
+ focusElementByName(viewletId, method, ...args);
9115
+ break;
9116
+ case 'Viewlet.focusSelector':
9117
+ // @ts-ignore
9118
+ focusSelector(viewletId, method, ...args);
9119
+ break;
9120
+ case 'Viewlet.focusSelector':
9121
+ // @ts-ignore
9122
+ focusSelector(viewletId, method, ...args);
9123
+ break;
9124
+ case 'Viewlet.handleError':
9108
9125
  {
9109
9126
  // @ts-expect-error
9110
- appendViewlet(viewletId, method, ...args);
9127
+ handleError$1(viewletId, method, ...args);
9111
9128
  break;
9112
9129
  }
9113
- case 'Viewlet.addKeyBindings':
9114
- addKeyBindings(viewletId, method);
9115
- break;
9116
- case 'Viewlet.setProperty':
9130
+ case 'Viewlet.registerEventListeners':
9117
9131
  // @ts-ignore
9118
- setProperty(viewletId, method, ...args);
9132
+ registerEventListeners(viewletId, method, ...args);
9119
9133
  break;
9120
9134
  case 'Viewlet.removeKeyBindings':
9121
9135
  removeKeyBindings(viewletId);
9122
9136
  break;
9137
+ case 'Viewlet.replaceChildren':
9138
+ // @ts-ignore
9139
+ replaceChildren(viewletId, method, ...args);
9140
+ break;
9123
9141
  case 'Viewlet.send':
9124
9142
  invoke(viewletId, method, ...args);
9125
9143
  break;
9144
+ case 'Viewlet.setBounds':
9145
+ {
9146
+ // @ts-expect-error
9147
+ setBounds$1(viewletId, method, ...args);
9148
+ break;
9149
+ }
9150
+ case 'Viewlet.setCheckBoxValue':
9151
+ // @ts-ignore
9152
+ setCheckBoxValue(viewletId, method, ...args);
9153
+ break;
9126
9154
  case 'Viewlet.setDom':
9127
9155
  // @ts-expect-error
9128
9156
  setDom(viewletId, method, ...args);
@@ -9131,55 +9159,35 @@ const sendMultiple = commands => {
9131
9159
  // @ts-ignore
9132
9160
  setDom2(viewletId, method, ...args);
9133
9161
  break;
9134
- case 'Viewlet.focusSelector':
9135
- // @ts-ignore
9136
- focusSelector(viewletId, method, ...args);
9137
- break;
9138
- case 'Viewlet.focusSelector':
9139
- // @ts-ignore
9140
- focusSelector(viewletId, method, ...args);
9141
- break;
9142
- case 'Viewlet.focusElementByName':
9143
- // @ts-ignore
9144
- focusElementByName(viewletId, method, ...args);
9145
- break;
9146
- case 'Viewlet.setValueByName':
9162
+ case 'Viewlet.setDragData':
9147
9163
  // @ts-ignore
9148
- setValueByName(viewletId, method, ...args);
9164
+ setDragData(viewletId, method, ...args);
9149
9165
  break;
9150
9166
  case 'Viewlet.setInputValues':
9151
9167
  // @ts-ignore
9152
9168
  setInputValues(viewletId, method, ...args);
9153
9169
  break;
9154
- case 'Viewlet.setCheckBoxValue':
9170
+ case 'Viewlet.setPatches':
9171
+ {
9172
+ // @ts-ignore
9173
+ setPatches(viewletId, method, ...args);
9174
+ break;
9175
+ }
9176
+ case 'Viewlet.setProperty':
9155
9177
  // @ts-ignore
9156
- setCheckBoxValue(viewletId, method, ...args);
9178
+ setProperty(viewletId, method, ...args);
9157
9179
  break;
9158
9180
  case 'Viewlet.setSelectionByName':
9159
9181
  // @ts-ignore
9160
9182
  setSelectionByName(viewletId, method, ...args);
9161
9183
  break;
9162
- case 'Viewlet.registerEventListeners':
9163
- // @ts-ignore
9164
- registerEventListeners(viewletId, method, ...args);
9165
- break;
9166
9184
  case 'Viewlet.setUid':
9167
9185
  // @ts-ignore
9168
9186
  setUid(viewletId, method, ...args);
9169
9187
  break;
9170
- case 'Viewlet.setDragData':
9171
- // @ts-ignore
9172
- setDragData(viewletId, method, ...args);
9173
- break;
9174
- case 'Viewlet.replaceChildren':
9175
- // @ts-ignore
9176
- replaceChildren(viewletId, method, ...args);
9177
- break;
9178
- case 'Viewlet.addCss':
9179
- case 'Viewlet.setCss':
9180
- case 'Css.addCssStyleSheet':
9188
+ case 'Viewlet.setValueByName':
9181
9189
  // @ts-ignore
9182
- addCssStyleSheet(viewletId, method, ...args);
9190
+ setValueByName(viewletId, method, ...args);
9183
9191
  break;
9184
9192
  default:
9185
9193
  {
@@ -9323,60 +9331,60 @@ const appendToBody = childId => {
9323
9331
  };
9324
9332
  const getFn = command => {
9325
9333
  switch (command) {
9326
- case 'Viewlet.create':
9327
- return create$3;
9328
- case 'Viewlet.send':
9329
- return invoke;
9330
- case 'Viewlet.show':
9331
- return show;
9332
- case 'Viewlet.dispose':
9333
- return dispose$3;
9334
- case 'Viewlet.setDom2':
9335
- return setDom2;
9336
- case 'Viewlet.setBounds':
9337
- return setBounds$1;
9338
- case 'Viewlet.ariaAnnounce':
9339
- return ariaAnnounce;
9334
+ case 'Css.addCssStyleSheet':
9335
+ case 'Viewlet.addCss':
9336
+ case 'Viewlet.setCss':
9337
+ return addCssStyleSheet;
9338
+ case 'Viewlet.addKeyBindings':
9339
+ return addKeyBindings;
9340
9340
  case 'Viewlet.append':
9341
9341
  return append;
9342
9342
  case 'Viewlet.appendToBody':
9343
9343
  return appendToBody;
9344
- case 'Viewlet.createPlaceholder':
9345
- return createPlaceholder;
9346
- case 'Viewlet.focus':
9347
- return focus$1;
9348
9344
  case 'Viewlet.appendViewlet':
9349
9345
  return appendViewlet;
9350
- case 'Viewlet.addKeyBindings':
9351
- return addKeyBindings;
9352
- case 'Viewlet.setDom':
9353
- return setDom;
9346
+ case 'Viewlet.ariaAnnounce':
9347
+ return ariaAnnounce;
9348
+ case 'Viewlet.create':
9349
+ return create$3;
9354
9350
  case 'Viewlet.createFunctionalRoot':
9355
9351
  return createFunctionalRoot;
9352
+ case 'Viewlet.createPlaceholder':
9353
+ return createPlaceholder;
9354
+ case 'Viewlet.dispose':
9355
+ return dispose$3;
9356
+ case 'Viewlet.focus':
9357
+ return focus$1;
9356
9358
  case 'Viewlet.focusElementByName':
9357
9359
  return focusElementByName;
9358
- case 'Viewlet.setValueByName':
9359
- return setValueByName;
9360
- case 'Viewlet.setCheckBoxValue':
9361
- return setCheckBoxValue;
9360
+ case 'Viewlet.focusSelector':
9361
+ return focusSelector;
9362
9362
  case 'Viewlet.registerEventListeners':
9363
9363
  return registerEventListeners;
9364
- case 'Viewlet.setPatches':
9365
- return setPatches;
9364
+ case 'Viewlet.replaceChildren':
9365
+ return replaceChildren;
9366
+ case 'Viewlet.send':
9367
+ return invoke;
9368
+ case 'Viewlet.setBounds':
9369
+ return setBounds$1;
9370
+ case 'Viewlet.setCheckBoxValue':
9371
+ return setCheckBoxValue;
9372
+ case 'Viewlet.setDom':
9373
+ return setDom;
9374
+ case 'Viewlet.setDom2':
9375
+ return setDom2;
9366
9376
  case 'Viewlet.setDragData':
9367
9377
  return setDragData;
9368
- case 'Viewlet.focusSelector':
9369
- return focusSelector;
9370
9378
  case 'Viewlet.setInputValues':
9371
9379
  return setInputValues;
9380
+ case 'Viewlet.setPatches':
9381
+ return setPatches;
9372
9382
  case 'Viewlet.setProperty':
9373
9383
  return setProperty;
9374
- case 'Viewlet.replaceChildren':
9375
- return replaceChildren;
9376
- case 'Css.addCssStyleSheet':
9377
- case 'Viewlet.addCss':
9378
- case 'Viewlet.setCss':
9379
- return addCssStyleSheet;
9384
+ case 'Viewlet.setValueByName':
9385
+ return setValueByName;
9386
+ case 'Viewlet.show':
9387
+ return show;
9380
9388
  default:
9381
9389
  throw new Error(`unknown command ${command}`);
9382
9390
  }
@@ -9514,8 +9522,8 @@ const getFilePathElectron = async file => {
9514
9522
 
9515
9523
  const handleMessagePort = async port => {
9516
9524
  await PlainMessagePortRpcParent.create({
9517
- messagePort: port,
9518
- commandMap: {}
9525
+ commandMap: {},
9526
+ messagePort: port
9519
9527
  });
9520
9528
  };
9521
9529
 
@@ -9528,8 +9536,8 @@ const set = ($Iframe, permissionPolicy) => {
9528
9536
 
9529
9537
  const waitForFrameToLoad = $Frame => {
9530
9538
  const {
9531
- resolve,
9532
- promise
9539
+ promise,
9540
+ resolve
9533
9541
  } = withResolvers();
9534
9542
  $Frame.addEventListener('load', resolve, {
9535
9543
  once: true
@@ -9646,6 +9654,7 @@ const commandMap = {
9646
9654
  'PointerCapture.unmock': unmock,
9647
9655
  'Prompt.prompt': prompt,
9648
9656
  'ScreenCapture.start': start,
9657
+ 'TestFrameWork.checkConditionError': checkConditionError,
9649
9658
  'TestFrameWork.checkMultiElementCondition': checkMultiElementCondition,
9650
9659
  'TestFrameWork.checkSingleElementCondition': checkSingleElementCondition,
9651
9660
  'TestFrameWork.performAction': performAction,
@@ -9654,7 +9663,6 @@ const commandMap = {
9654
9663
  'TestFrameWork.showOverlay': showOverlay,
9655
9664
  'TestFrameWork.transfer': transfer,
9656
9665
  'TestFrameWork.transferToWebView': transferToWebView,
9657
- 'TestFrameWork.checkConditionError': checkConditionError,
9658
9666
  'Viewlet.addKeyBindings': addKeyBindings,
9659
9667
  'Viewlet.appendViewlet': appendViewlet,
9660
9668
  'Viewlet.dispose': dispose$3,
@@ -9699,10 +9707,10 @@ const editorWorkerUrl = getConfiguredEditorWorkerUrl() || `${assetDir}/packages/
9699
9707
 
9700
9708
  const launchEditorWorker = async port => {
9701
9709
  const ipc = await create$z({
9702
- name: 'Editor Worker',
9703
- url: editorWorkerUrl,
9704
9710
  method: ModuleWorkerWithMessagePort,
9705
- port
9711
+ name: 'Editor Worker',
9712
+ port,
9713
+ url: editorWorkerUrl
9706
9714
  });
9707
9715
  return ipc;
9708
9716
  };
@@ -9727,10 +9735,10 @@ const extensionHostWorkerUrl = getConfiguredExtensionHostWorkerUrl() || `${asset
9727
9735
  const launchExtensionHostWorker = async port => {
9728
9736
  const name = isElectron ? 'Extension Host (Electron)' : 'Extension Host';
9729
9737
  const ipc = await create$z({
9730
- name,
9731
- url: extensionHostWorkerUrl,
9732
9738
  method: ModuleWorkerWithMessagePort,
9733
- port
9739
+ name,
9740
+ port,
9741
+ url: extensionHostWorkerUrl
9734
9742
  });
9735
9743
  return ipc;
9736
9744
  };
@@ -9755,10 +9763,10 @@ const syntaxHighlightingWorkerUrl = getConfiguredSyntaxHighlightingWorkerUrl() |
9755
9763
 
9756
9764
  const launchSyntaxHighlightingWorker = async port => {
9757
9765
  const ipc = await create$z({
9758
- name: 'Syntax Highlighting Worker',
9759
- url: syntaxHighlightingWorkerUrl,
9760
9766
  method: ModuleWorkerWithMessagePort,
9761
- port
9767
+ name: 'Syntax Highlighting Worker',
9768
+ port,
9769
+ url: syntaxHighlightingWorkerUrl
9762
9770
  });
9763
9771
  return ipc;
9764
9772
  };
@@ -9893,8 +9901,8 @@ const cleanLine = line => {
9893
9901
  const getDetails = lines => {
9894
9902
  const index = lines.findIndex(isNormalStackLine);
9895
9903
  return {
9896
- custom: lines.slice(0, index),
9897
- actualStack: lines.slice(index).map(cleanLine)
9904
+ actualStack: lines.slice(index).map(cleanLine),
9905
+ custom: lines.slice(0, index)
9898
9906
  };
9899
9907
  };
9900
9908
  const mergeCustom = (custom, relevantStack) => {
@@ -9917,8 +9925,8 @@ const cleanStack = stack => {
9917
9925
  string(stack);
9918
9926
  const lines = splitLines$2(stack);
9919
9927
  const {
9920
- custom,
9921
- actualStack
9928
+ actualStack,
9929
+ custom
9922
9930
  } = getDetails(lines);
9923
9931
  const relevantStack = actualStack.filter(isRelevantLine).filter(isApplicationUsefulLine);
9924
9932
  const merged = mergeCustom(custom, relevantStack);
@@ -9964,11 +9972,11 @@ const getErrorMessage = error => {
9964
9972
  const prepareErrorMessageWithCodeFrame = error => {
9965
9973
  if (!error) {
9966
9974
  return {
9975
+ _error: error,
9976
+ codeFrame: undefined,
9967
9977
  message: error,
9968
9978
  stack: undefined,
9969
- codeFrame: undefined,
9970
- type: 'Error',
9971
- _error: error
9979
+ type: 'Error'
9972
9980
  };
9973
9981
  }
9974
9982
  const message = getErrorMessage(error);
@@ -9976,20 +9984,20 @@ const prepareErrorMessageWithCodeFrame = error => {
9976
9984
  const relevantStack = joinLines$2(lines);
9977
9985
  if (error.codeFrame) {
9978
9986
  return {
9987
+ _error: error,
9988
+ codeFrame: error.codeFrame,
9979
9989
  message,
9980
9990
  stack: relevantStack,
9981
- codeFrame: error.codeFrame,
9982
- type: error.constructor.name,
9983
- _error: error
9991
+ type: error.constructor.name
9984
9992
  };
9985
9993
  }
9986
9994
  return {
9995
+ _error: error,
9996
+ category: error.category,
9997
+ codeFrame: error.originalCodeFrame,
9987
9998
  message,
9988
9999
  stack: error.originalStack,
9989
- codeFrame: error.originalCodeFrame,
9990
- category: error.category,
9991
- stderr: error.stderr,
9992
- _error: error
10000
+ stderr: error.stderr
9993
10001
  };
9994
10002
  };
9995
10003
  const RE_PATH_1 = /\((.*):(\d+):(\d+)\)$/;
@@ -10028,9 +10036,9 @@ const prepareErrorMessageWithoutCodeFrame = async error => {
10028
10036
  return error;
10029
10037
  }
10030
10038
  return {
10039
+ _error: error,
10031
10040
  message: error?.message || '',
10032
- type: error.constructor.name,
10033
- _error: error
10041
+ type: error.constructor.name
10034
10042
  };
10035
10043
  } catch (otherError) {
10036
10044
  warn$1(`ErrorHandling Error: ${otherError}`);
@@ -10266,26 +10274,26 @@ const setTerminal = (state, canvasCursorId, canvasTextId) => {
10266
10274
  } = state;
10267
10275
  const terminal = create$1({
10268
10276
  $Element: $Viewlet,
10269
- handleKeyDown: (...args) => {
10270
- handleKeyDown({
10271
- target: $Viewlet
10272
- }, ...args);
10273
- },
10277
+ background: `#1b2020`,
10278
+ canvasCursor,
10279
+ canvasText,
10280
+ foreground: 'white',
10274
10281
  handleBlur: (...args) => {
10275
10282
  // @ts-ignore
10276
10283
  handleBlur({
10277
10284
  target: $Viewlet
10278
10285
  }, ...args);
10279
10286
  },
10287
+ handleKeyDown: (...args) => {
10288
+ handleKeyDown({
10289
+ target: $Viewlet
10290
+ }, ...args);
10291
+ },
10280
10292
  handleMouseDown: (...args) => {
10281
10293
  handleMouseDown({
10282
10294
  target: $Viewlet
10283
10295
  }, ...args);
10284
- },
10285
- background: `#1b2020`,
10286
- foreground: 'white',
10287
- canvasText,
10288
- canvasCursor
10296
+ }
10289
10297
  });
10290
10298
  state.terminal = terminal;
10291
10299
  };