@theia/debug 1.17.0-next.ff9e0507 → 1.18.0-next.04e2816d

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.
Files changed (139) hide show
  1. package/lib/browser/breakpoint/breakpoint-manager.js +159 -382
  2. package/lib/browser/breakpoint/breakpoint-manager.js.map +1 -1
  3. package/lib/browser/breakpoint/breakpoint-marker.js +4 -15
  4. package/lib/browser/breakpoint/breakpoint-marker.js.map +1 -1
  5. package/lib/browser/console/debug-console-contribution.d.ts.map +1 -1
  6. package/lib/browser/console/debug-console-contribution.js +132 -221
  7. package/lib/browser/console/debug-console-contribution.js.map +1 -1
  8. package/lib/browser/console/debug-console-items.js +231 -451
  9. package/lib/browser/console/debug-console-items.js.map +1 -1
  10. package/lib/browser/console/debug-console-session.js +86 -223
  11. package/lib/browser/console/debug-console-session.js.map +1 -1
  12. package/lib/browser/debug-configuration-manager.js +281 -623
  13. package/lib/browser/debug-configuration-manager.js.map +1 -1
  14. package/lib/browser/debug-configuration-model.js +31 -108
  15. package/lib/browser/debug-configuration-model.js.map +1 -1
  16. package/lib/browser/debug-frontend-application-contribution.d.ts +1 -0
  17. package/lib/browser/debug-frontend-application-contribution.d.ts.map +1 -1
  18. package/lib/browser/debug-frontend-application-contribution.js +577 -780
  19. package/lib/browser/debug-frontend-application-contribution.js.map +1 -1
  20. package/lib/browser/debug-frontend-module.js +46 -82
  21. package/lib/browser/debug-frontend-module.js.map +1 -1
  22. package/lib/browser/debug-keybinding-contexts.js +41 -59
  23. package/lib/browser/debug-keybinding-contexts.js.map +1 -1
  24. package/lib/browser/debug-monaco-contribution.js +17 -17
  25. package/lib/browser/debug-monaco-contribution.js.map +1 -1
  26. package/lib/browser/debug-package.spec.js +2 -2
  27. package/lib/browser/debug-package.spec.js.map +1 -1
  28. package/lib/browser/debug-preferences.js +7 -11
  29. package/lib/browser/debug-preferences.js.map +1 -1
  30. package/lib/browser/debug-prefix-configuration.js +101 -117
  31. package/lib/browser/debug-prefix-configuration.js.map +1 -1
  32. package/lib/browser/debug-resource.js +29 -79
  33. package/lib/browser/debug-resource.js.map +1 -1
  34. package/lib/browser/debug-schema-updater.js +54 -193
  35. package/lib/browser/debug-schema-updater.js.map +1 -1
  36. package/lib/browser/debug-session-connection.js +137 -235
  37. package/lib/browser/debug-session-connection.js.map +1 -1
  38. package/lib/browser/debug-session-contribution.js +91 -120
  39. package/lib/browser/debug-session-contribution.js.map +1 -1
  40. package/lib/browser/debug-session-manager.js +368 -652
  41. package/lib/browser/debug-session-manager.js.map +1 -1
  42. package/lib/browser/debug-session.js +556 -1279
  43. package/lib/browser/debug-session.js.map +1 -1
  44. package/lib/browser/debug-tab-bar-decorator.js +32 -38
  45. package/lib/browser/debug-tab-bar-decorator.js.map +1 -1
  46. package/lib/browser/debug-watch-manager.js +41 -138
  47. package/lib/browser/debug-watch-manager.js.map +1 -1
  48. package/lib/browser/editor/debug-breakpoint-widget.js +142 -255
  49. package/lib/browser/editor/debug-breakpoint-widget.js.map +1 -1
  50. package/lib/browser/editor/debug-editor-model.js +299 -474
  51. package/lib/browser/editor/debug-editor-model.js.map +1 -1
  52. package/lib/browser/editor/debug-editor-service.js +128 -206
  53. package/lib/browser/editor/debug-editor-service.js.map +1 -1
  54. package/lib/browser/editor/debug-exception-widget.js +56 -119
  55. package/lib/browser/editor/debug-exception-widget.js.map +1 -1
  56. package/lib/browser/editor/debug-expression-provider.js +21 -24
  57. package/lib/browser/editor/debug-expression-provider.js.map +1 -1
  58. package/lib/browser/editor/debug-hover-source.js +83 -249
  59. package/lib/browser/editor/debug-hover-source.js.map +1 -1
  60. package/lib/browser/editor/debug-hover-widget.js +151 -224
  61. package/lib/browser/editor/debug-hover-widget.js.map +1 -1
  62. package/lib/browser/editor/debug-inline-value-decorator.js +96 -193
  63. package/lib/browser/editor/debug-inline-value-decorator.js.map +1 -1
  64. package/lib/browser/model/debug-breakpoint.js +52 -102
  65. package/lib/browser/model/debug-breakpoint.js.map +1 -1
  66. package/lib/browser/model/debug-function-breakpoint.js +54 -124
  67. package/lib/browser/model/debug-function-breakpoint.js.map +1 -1
  68. package/lib/browser/model/debug-source-breakpoint.js +111 -265
  69. package/lib/browser/model/debug-source-breakpoint.js.map +1 -1
  70. package/lib/browser/model/debug-source.js +45 -126
  71. package/lib/browser/model/debug-source.js.map +1 -1
  72. package/lib/browser/model/debug-stack-frame.js +85 -199
  73. package/lib/browser/model/debug-stack-frame.js.map +1 -1
  74. package/lib/browser/model/debug-thread.js +132 -304
  75. package/lib/browser/model/debug-thread.js.map +1 -1
  76. package/lib/browser/preferences/launch-preferences.js +3 -3
  77. package/lib/browser/preferences/launch-preferences.js.map +1 -1
  78. package/lib/browser/view/debug-action.js +13 -29
  79. package/lib/browser/view/debug-action.js.map +1 -1
  80. package/lib/browser/view/debug-breakpoints-source.js +42 -169
  81. package/lib/browser/view/debug-breakpoints-source.js.map +1 -1
  82. package/lib/browser/view/debug-breakpoints-widget.js +43 -82
  83. package/lib/browser/view/debug-breakpoints-widget.js.map +1 -1
  84. package/lib/browser/view/debug-configuration-widget.js +89 -136
  85. package/lib/browser/view/debug-configuration-widget.js.map +1 -1
  86. package/lib/browser/view/debug-exception-breakpoint.js +7 -9
  87. package/lib/browser/view/debug-exception-breakpoint.js.map +1 -1
  88. package/lib/browser/view/debug-session-widget.js +80 -114
  89. package/lib/browser/view/debug-session-widget.js.map +1 -1
  90. package/lib/browser/view/debug-stack-frames-source.js +58 -169
  91. package/lib/browser/view/debug-stack-frames-source.js.map +1 -1
  92. package/lib/browser/view/debug-stack-frames-widget.js +89 -155
  93. package/lib/browser/view/debug-stack-frames-widget.js.map +1 -1
  94. package/lib/browser/view/debug-threads-source.js +37 -124
  95. package/lib/browser/view/debug-threads-source.js.map +1 -1
  96. package/lib/browser/view/debug-threads-widget.js +61 -99
  97. package/lib/browser/view/debug-threads-widget.js.map +1 -1
  98. package/lib/browser/view/debug-toolbar-widget.js +58 -76
  99. package/lib/browser/view/debug-toolbar-widget.js.map +1 -1
  100. package/lib/browser/view/debug-variables-source.js +32 -102
  101. package/lib/browser/view/debug-variables-source.js.map +1 -1
  102. package/lib/browser/view/debug-variables-widget.js +35 -74
  103. package/lib/browser/view/debug-variables-widget.js.map +1 -1
  104. package/lib/browser/view/debug-view-model.js +172 -381
  105. package/lib/browser/view/debug-view-model.js.map +1 -1
  106. package/lib/browser/view/debug-watch-expression.js +34 -112
  107. package/lib/browser/view/debug-watch-expression.js.map +1 -1
  108. package/lib/browser/view/debug-watch-source.js +30 -87
  109. package/lib/browser/view/debug-watch-source.js.map +1 -1
  110. package/lib/browser/view/debug-watch-widget.js +35 -74
  111. package/lib/browser/view/debug-watch-widget.js.map +1 -1
  112. package/lib/browser/view/debug-widget.js +63 -105
  113. package/lib/browser/view/debug-widget.js.map +1 -1
  114. package/lib/common/debug-service.js +5 -5
  115. package/lib/common/debug-service.js.map +1 -1
  116. package/lib/node/debug-adapter-contribution-registry.js +133 -489
  117. package/lib/node/debug-adapter-contribution-registry.js.map +1 -1
  118. package/lib/node/debug-adapter-factory.js +38 -57
  119. package/lib/node/debug-adapter-factory.js.map +1 -1
  120. package/lib/node/debug-adapter-session-manager.js +50 -98
  121. package/lib/node/debug-adapter-session-manager.js.map +1 -1
  122. package/lib/node/debug-adapter-session.js +44 -93
  123. package/lib/node/debug-adapter-session.js.map +1 -1
  124. package/lib/node/debug-backend-module.js +13 -17
  125. package/lib/node/debug-backend-module.js.map +1 -1
  126. package/lib/node/debug-service-impl.js +71 -213
  127. package/lib/node/debug-service-impl.js.map +1 -1
  128. package/lib/node/vscode/vscode-debug-adapter-contribution.js +153 -294
  129. package/lib/node/vscode/vscode-debug-adapter-contribution.js.map +1 -1
  130. package/package.json +16 -16
  131. package/src/browser/console/debug-console-contribution.tsx +3 -3
  132. package/src/browser/debug-frontend-application-contribution.ts +69 -18
  133. package/src/browser/debug-prefix-configuration.ts +1 -1
  134. package/src/browser/style/index.css +28 -10
  135. package/src/browser/view/debug-action.tsx +2 -2
  136. package/src/browser/view/debug-configuration-widget.tsx +3 -3
  137. package/src/browser/view/debug-session-widget.ts +2 -2
  138. package/src/browser/view/debug-toolbar-widget.tsx +8 -8
  139. package/src/browser/view/debug-widget.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"debug-exception-widget.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-exception-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-exception-widget.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-exception-widget.tsx"],"names":[],"mappings":"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"}
@@ -26,30 +26,28 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.DebugExpressionProvider = void 0;
29
- var inversify_1 = require("@theia/core/shared/inversify");
29
+ const inversify_1 = require("@theia/core/shared/inversify");
30
30
  /**
31
31
  * TODO: introduce a new request to LSP to look up an expression range: https://github.com/Microsoft/language-server-protocol/issues/462
32
32
  */
33
- var DebugExpressionProvider = /** @class */ (function () {
34
- function DebugExpressionProvider() {
35
- }
36
- DebugExpressionProvider.prototype.get = function (model, selection) {
37
- var lineContent = model.getLineContent(selection.startLineNumber);
38
- var _a = this.getExactExpressionStartAndEnd(lineContent, selection.startColumn, selection.endColumn), start = _a.start, end = _a.end;
33
+ let DebugExpressionProvider = class DebugExpressionProvider {
34
+ get(model, selection) {
35
+ const lineContent = model.getLineContent(selection.startLineNumber);
36
+ const { start, end } = this.getExactExpressionStartAndEnd(lineContent, selection.startColumn, selection.endColumn);
39
37
  return lineContent.substring(start - 1, end);
40
- };
41
- DebugExpressionProvider.prototype.getExactExpressionStartAndEnd = function (lineContent, looseStart, looseEnd) {
42
- var matchingExpression = undefined;
43
- var startOffset = 0;
38
+ }
39
+ getExactExpressionStartAndEnd(lineContent, looseStart, looseEnd) {
40
+ let matchingExpression = undefined;
41
+ let startOffset = 0;
44
42
  // Some example supported expressions: myVar.prop, a.b.c.d, myVar?.prop, myVar->prop, MyClass::StaticProp, *myVar
45
43
  // Match any character except a set of characters which often break interesting sub-expressions
46
- var expression = /([^()\[\]{}<>\s+\-/%~#^;=|,`!]|\->)+/g;
44
+ const expression = /([^()\[\]{}<>\s+\-/%~#^;=|,`!]|\->)+/g;
47
45
  // eslint-disable-next-line no-null/no-null
48
- var result = null;
46
+ let result = null;
49
47
  // First find the full expression under the cursor
50
48
  while (result = expression.exec(lineContent)) {
51
- var start = result.index + 1;
52
- var end = start + result[0].length;
49
+ const start = result.index + 1;
50
+ const end = start + result[0].length;
53
51
  if (start <= looseStart && end >= looseEnd) {
54
52
  matchingExpression = result[0];
55
53
  startOffset = start;
@@ -59,11 +57,11 @@ var DebugExpressionProvider = /** @class */ (function () {
59
57
  // If there are non-word characters after the cursor, we want to truncate the expression then.
60
58
  // For example in expression 'a.b.c.d', if the focus was under 'b', 'a.b' would be evaluated.
61
59
  if (matchingExpression) {
62
- var subExpression = /\w+/g;
60
+ const subExpression = /\w+/g;
63
61
  // eslint-disable-next-line no-null/no-null
64
- var subExpressionResult = null;
62
+ let subExpressionResult = null;
65
63
  while (subExpressionResult = subExpression.exec(matchingExpression)) {
66
- var subEnd = subExpressionResult.index + 1 + startOffset + subExpressionResult[0].length;
64
+ const subEnd = subExpressionResult.index + 1 + startOffset + subExpressionResult[0].length;
67
65
  if (subEnd >= looseEnd) {
68
66
  break;
69
67
  }
@@ -75,11 +73,10 @@ var DebugExpressionProvider = /** @class */ (function () {
75
73
  return matchingExpression ?
76
74
  { start: startOffset, end: startOffset + matchingExpression.length - 1 } :
77
75
  { start: 0, end: 0 };
78
- };
79
- DebugExpressionProvider = __decorate([
80
- inversify_1.injectable()
81
- ], DebugExpressionProvider);
82
- return DebugExpressionProvider;
83
- }());
76
+ }
77
+ };
78
+ DebugExpressionProvider = __decorate([
79
+ inversify_1.injectable()
80
+ ], DebugExpressionProvider);
84
81
  exports.DebugExpressionProvider = DebugExpressionProvider;
85
82
  //# sourceMappingURL=debug-expression-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug-expression-provider.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-expression-provider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;AAClF;;;gGAGgG;;;;;;;;;AAEhG,0DAA0D;AAE1D;;GAEG;AAEH;IAAA;IAkDA,CAAC;IAjDG,qCAAG,GAAH,UAAI,KAA2B,EAAE,SAAwB;QACrD,IAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC9D,IAAA,KAAiB,IAAI,CAAC,6BAA6B,CAAC,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,EAA1G,KAAK,WAAA,EAAE,GAAG,SAAgG,CAAC;QACnH,OAAO,WAAW,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IACS,+DAA6B,GAAvC,UAAwC,WAAmB,EAAE,UAAkB,EAAE,QAAgB;QAC7F,IAAI,kBAAkB,GAAuB,SAAS,CAAC;QACvD,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,iHAAiH;QACjH,+FAA+F;QAC/F,IAAM,UAAU,GAAG,uCAAuC,CAAC;QAC3D,2CAA2C;QAC3C,IAAI,MAAM,GAA2B,IAAI,CAAC;QAE1C,kDAAkD;QAClD,OAAO,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC1C,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;YAC/B,IAAM,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAErC,IAAI,KAAK,IAAI,UAAU,IAAI,GAAG,IAAI,QAAQ,EAAE;gBACxC,kBAAkB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC/B,WAAW,GAAG,KAAK,CAAC;gBACpB,MAAM;aACT;SACJ;QAED,8FAA8F;QAC9F,6FAA6F;QAC7F,IAAI,kBAAkB,EAAE;YACpB,IAAM,aAAa,GAAW,MAAM,CAAC;YACrC,2CAA2C;YAC3C,IAAI,mBAAmB,GAA2B,IAAI,CAAC;YACvD,OAAO,mBAAmB,GAAG,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;gBACjE,IAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,GAAG,CAAC,GAAG,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC3F,IAAI,MAAM,IAAI,QAAQ,EAAE;oBACpB,MAAM;iBACT;aACJ;YAED,IAAI,mBAAmB,EAAE;gBACrB,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;aACjF;SACJ;QAED,OAAO,kBAAkB,CAAC,CAAC;YACvB,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1E,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IAC7B,CAAC;IAjDQ,uBAAuB;QADnC,sBAAU,EAAE;OACA,uBAAuB,CAkDnC;IAAD,8BAAC;CAAA,AAlDD,IAkDC;AAlDY,0DAAuB"}
1
+ {"version":3,"file":"debug-expression-provider.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-expression-provider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;AAClF;;;gGAGgG;;;;;;;;;AAEhG,4DAA0D;AAE1D;;GAEG;AAEH,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAChC,GAAG,CAAC,KAA2B,EAAE,SAAwB;QACrD,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACpE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,6BAA6B,CAAC,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACnH,OAAO,WAAW,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IACS,6BAA6B,CAAC,WAAmB,EAAE,UAAkB,EAAE,QAAgB;QAC7F,IAAI,kBAAkB,GAAuB,SAAS,CAAC;QACvD,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,iHAAiH;QACjH,+FAA+F;QAC/F,MAAM,UAAU,GAAG,uCAAuC,CAAC;QAC3D,2CAA2C;QAC3C,IAAI,MAAM,GAA2B,IAAI,CAAC;QAE1C,kDAAkD;QAClD,OAAO,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;YAC/B,MAAM,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAErC,IAAI,KAAK,IAAI,UAAU,IAAI,GAAG,IAAI,QAAQ,EAAE;gBACxC,kBAAkB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC/B,WAAW,GAAG,KAAK,CAAC;gBACpB,MAAM;aACT;SACJ;QAED,8FAA8F;QAC9F,6FAA6F;QAC7F,IAAI,kBAAkB,EAAE;YACpB,MAAM,aAAa,GAAW,MAAM,CAAC;YACrC,2CAA2C;YAC3C,IAAI,mBAAmB,GAA2B,IAAI,CAAC;YACvD,OAAO,mBAAmB,GAAG,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;gBACjE,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,GAAG,CAAC,GAAG,WAAW,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC3F,IAAI,MAAM,IAAI,QAAQ,EAAE;oBACpB,MAAM;iBACT;aACJ;YAED,IAAI,mBAAmB,EAAE;gBACrB,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;aACjF;SACJ;QAED,OAAO,kBAAkB,CAAC,CAAC;YACvB,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1E,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IAC7B,CAAC;CACJ,CAAA;AAlDY,uBAAuB;IADnC,sBAAU,EAAE;GACA,uBAAuB,CAkDnC;AAlDY,0DAAuB"}
@@ -14,19 +14,6 @@
14
14
  *
15
15
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
16
  ********************************************************************************/
17
- var __extends = (this && this.__extends) || (function () {
18
- var extendStatics = function (d, b) {
19
- extendStatics = Object.setPrototypeOf ||
20
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
21
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
22
- return extendStatics(d, b);
23
- };
24
- return function (d, b) {
25
- extendStatics(d, b);
26
- function __() { this.constructor = d; }
27
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
28
- };
29
- })();
30
17
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
31
18
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
32
19
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -36,249 +23,96 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
36
23
  var __metadata = (this && this.__metadata) || function (k, v) {
37
24
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
38
25
  };
39
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
40
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
41
- return new (P || (P = Promise))(function (resolve, reject) {
42
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
43
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
44
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
45
- step((generator = generator.apply(thisArg, _arguments || [])).next());
46
- });
47
- };
48
- var __generator = (this && this.__generator) || function (thisArg, body) {
49
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
50
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
51
- function verb(n) { return function (v) { return step([n, v]); }; }
52
- function step(op) {
53
- if (f) throw new TypeError("Generator is already executing.");
54
- while (_) try {
55
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
56
- if (y = 0, t) op = [op[0] & 2, t.value];
57
- switch (op[0]) {
58
- case 0: case 1: t = op; break;
59
- case 4: _.label++; return { value: op[1], done: false };
60
- case 5: _.label++; y = op[1]; op = [0]; continue;
61
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
62
- default:
63
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
64
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
65
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
66
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
67
- if (t[2]) _.ops.pop();
68
- _.trys.pop(); continue;
69
- }
70
- op = body.call(thisArg, _);
71
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
72
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
73
- }
74
- };
75
- var __read = (this && this.__read) || function (o, n) {
76
- var m = typeof Symbol === "function" && o[Symbol.iterator];
77
- if (!m) return o;
78
- var i = m.call(o), r, ar = [], e;
79
- try {
80
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
81
- }
82
- catch (error) { e = { error: error }; }
83
- finally {
84
- try {
85
- if (r && !r.done && (m = i["return"])) m.call(i);
86
- }
87
- finally { if (e) throw e.error; }
88
- }
89
- return ar;
90
- };
91
- var __spread = (this && this.__spread) || function () {
92
- for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
93
- return ar;
94
- };
95
- var __values = (this && this.__values) || function(o) {
96
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
97
- if (m) return m.call(o);
98
- if (o && typeof o.length === "number") return {
99
- next: function () {
100
- if (o && i >= o.length) o = void 0;
101
- return { value: o && o[i++], done: !o };
102
- }
103
- };
104
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
105
- };
106
26
  Object.defineProperty(exports, "__esModule", { value: true });
107
27
  exports.DebugHoverSource = void 0;
108
- var React = require("@theia/core/shared/react");
109
- var source_tree_1 = require("@theia/core/lib/browser/source-tree");
110
- var debug_console_items_1 = require("../console/debug-console-items");
111
- var debug_session_manager_1 = require("../debug-session-manager");
112
- var inversify_1 = require("@theia/core/shared/inversify");
113
- var DebugHoverSource = /** @class */ (function (_super) {
114
- __extends(DebugHoverSource, _super);
115
- function DebugHoverSource() {
116
- var _this = _super !== null && _super.apply(this, arguments) || this;
117
- _this.elements = [];
118
- return _this;
28
+ const React = require("@theia/core/shared/react");
29
+ const source_tree_1 = require("@theia/core/lib/browser/source-tree");
30
+ const debug_console_items_1 = require("../console/debug-console-items");
31
+ const debug_session_manager_1 = require("../debug-session-manager");
32
+ const inversify_1 = require("@theia/core/shared/inversify");
33
+ let DebugHoverSource = class DebugHoverSource extends source_tree_1.TreeSource {
34
+ constructor() {
35
+ super(...arguments);
36
+ this.elements = [];
37
+ }
38
+ get expression() {
39
+ return this._expression;
119
40
  }
120
- Object.defineProperty(DebugHoverSource.prototype, "expression", {
121
- get: function () {
122
- return this._expression;
123
- },
124
- enumerable: false,
125
- configurable: true
126
- });
127
- DebugHoverSource.prototype.getElements = function () {
41
+ getElements() {
128
42
  return this.elements[Symbol.iterator]();
129
- };
130
- DebugHoverSource.prototype.renderTitle = function (element) {
43
+ }
44
+ renderTitle(element) {
131
45
  return React.createElement("div", { className: 'theia-debug-hover-title', title: element.value }, element.value);
132
- };
133
- DebugHoverSource.prototype.reset = function () {
46
+ }
47
+ reset() {
134
48
  this._expression = undefined;
135
49
  this.elements = [];
136
50
  this.fireDidChange();
137
- };
138
- DebugHoverSource.prototype.evaluate = function (expression) {
139
- return __awaiter(this, void 0, void 0, function () {
140
- var evaluated, elements, _a;
141
- return __generator(this, function (_b) {
142
- switch (_b.label) {
143
- case 0: return [4 /*yield*/, this.doEvaluate(expression)];
144
- case 1:
145
- evaluated = _b.sent();
146
- _a = evaluated;
147
- if (!_a) return [3 /*break*/, 3];
148
- return [4 /*yield*/, evaluated.getElements()];
149
- case 2:
150
- _a = (_b.sent());
151
- _b.label = 3;
152
- case 3:
153
- elements = _a;
154
- this._expression = evaluated;
155
- this.elements = elements ? __spread(elements) : [];
156
- this.fireDidChange();
157
- return [2 /*return*/, evaluated];
158
- }
159
- });
160
- });
161
- };
162
- DebugHoverSource.prototype.doEvaluate = function (expression) {
163
- return __awaiter(this, void 0, void 0, function () {
164
- var currentSession, item;
165
- return __generator(this, function (_a) {
166
- switch (_a.label) {
167
- case 0:
168
- currentSession = this.sessions.currentSession;
169
- if (!currentSession) {
170
- return [2 /*return*/, undefined];
171
- }
172
- if (!currentSession.capabilities.supportsEvaluateForHovers) return [3 /*break*/, 2];
173
- item = new debug_console_items_1.ExpressionItem(expression, function () { return currentSession; });
174
- return [4 /*yield*/, item.evaluate('hover')];
175
- case 1:
176
- _a.sent();
177
- return [2 /*return*/, item.available && item || undefined];
178
- case 2: return [2 /*return*/, this.findVariable(expression.split('.').map(function (word) { return word.trim(); }).filter(function (word) { return !!word; }))];
179
- }
180
- });
181
- });
182
- };
183
- DebugHoverSource.prototype.findVariable = function (namesToFind) {
184
- return __awaiter(this, void 0, void 0, function () {
185
- var currentFrame, variable, scopes, scopes_1, scopes_1_1, scope, found, e_1_1;
186
- var e_1, _a;
187
- return __generator(this, function (_b) {
188
- switch (_b.label) {
189
- case 0:
190
- currentFrame = this.sessions.currentFrame;
191
- if (!currentFrame) {
192
- return [2 /*return*/, undefined];
193
- }
194
- return [4 /*yield*/, currentFrame.getScopes()];
195
- case 1:
196
- scopes = _b.sent();
197
- _b.label = 2;
198
- case 2:
199
- _b.trys.push([2, 7, 8, 9]);
200
- scopes_1 = __values(scopes), scopes_1_1 = scopes_1.next();
201
- _b.label = 3;
202
- case 3:
203
- if (!!scopes_1_1.done) return [3 /*break*/, 6];
204
- scope = scopes_1_1.value;
205
- return [4 /*yield*/, this.doFindVariable(scope, namesToFind)];
206
- case 4:
207
- found = _b.sent();
208
- if (!variable) {
209
- variable = found;
210
- }
211
- else if (found && found.value !== variable.value) {
212
- // only show if all expressions found have the same value
213
- return [2 /*return*/, undefined];
214
- }
215
- _b.label = 5;
216
- case 5:
217
- scopes_1_1 = scopes_1.next();
218
- return [3 /*break*/, 3];
219
- case 6: return [3 /*break*/, 9];
220
- case 7:
221
- e_1_1 = _b.sent();
222
- e_1 = { error: e_1_1 };
223
- return [3 /*break*/, 9];
224
- case 8:
225
- try {
226
- if (scopes_1_1 && !scopes_1_1.done && (_a = scopes_1.return)) _a.call(scopes_1);
227
- }
228
- finally { if (e_1) throw e_1.error; }
229
- return [7 /*endfinally*/];
230
- case 9: return [2 /*return*/, variable];
231
- }
232
- });
233
- });
234
- };
235
- DebugHoverSource.prototype.doFindVariable = function (owner, namesToFind) {
236
- return __awaiter(this, void 0, void 0, function () {
237
- var elements, variables, elements_1, elements_1_1, element;
238
- var e_2, _a;
239
- return __generator(this, function (_b) {
240
- switch (_b.label) {
241
- case 0: return [4 /*yield*/, owner.getElements()];
242
- case 1:
243
- elements = _b.sent();
244
- variables = [];
245
- try {
246
- for (elements_1 = __values(elements), elements_1_1 = elements_1.next(); !elements_1_1.done; elements_1_1 = elements_1.next()) {
247
- element = elements_1_1.value;
248
- if (element instanceof debug_console_items_1.DebugVariable && element.name === namesToFind[0]) {
249
- variables.push(element);
250
- }
251
- }
252
- }
253
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
254
- finally {
255
- try {
256
- if (elements_1_1 && !elements_1_1.done && (_a = elements_1.return)) _a.call(elements_1);
257
- }
258
- finally { if (e_2) throw e_2.error; }
259
- }
260
- if (variables.length !== 1) {
261
- return [2 /*return*/, undefined];
262
- }
263
- if (namesToFind.length === 1) {
264
- return [2 /*return*/, variables[0]];
265
- }
266
- else {
267
- return [2 /*return*/, this.doFindVariable(variables[0], namesToFind.slice(1))];
268
- }
269
- return [2 /*return*/];
270
- }
271
- });
272
- });
273
- };
274
- __decorate([
275
- inversify_1.inject(debug_session_manager_1.DebugSessionManager),
276
- __metadata("design:type", debug_session_manager_1.DebugSessionManager)
277
- ], DebugHoverSource.prototype, "sessions", void 0);
278
- DebugHoverSource = __decorate([
279
- inversify_1.injectable()
280
- ], DebugHoverSource);
281
- return DebugHoverSource;
282
- }(source_tree_1.TreeSource));
51
+ }
52
+ async evaluate(expression) {
53
+ const evaluated = await this.doEvaluate(expression);
54
+ const elements = evaluated && await evaluated.getElements();
55
+ this._expression = evaluated;
56
+ this.elements = elements ? [...elements] : [];
57
+ this.fireDidChange();
58
+ return evaluated;
59
+ }
60
+ async doEvaluate(expression) {
61
+ const { currentSession } = this.sessions;
62
+ if (!currentSession) {
63
+ return undefined;
64
+ }
65
+ if (currentSession.capabilities.supportsEvaluateForHovers) {
66
+ const item = new debug_console_items_1.ExpressionItem(expression, () => currentSession);
67
+ await item.evaluate('hover');
68
+ return item.available && item || undefined;
69
+ }
70
+ return this.findVariable(expression.split('.').map(word => word.trim()).filter(word => !!word));
71
+ }
72
+ async findVariable(namesToFind) {
73
+ const { currentFrame } = this.sessions;
74
+ if (!currentFrame) {
75
+ return undefined;
76
+ }
77
+ let variable;
78
+ const scopes = await currentFrame.getScopes();
79
+ for (const scope of scopes) {
80
+ const found = await this.doFindVariable(scope, namesToFind);
81
+ if (!variable) {
82
+ variable = found;
83
+ }
84
+ else if (found && found.value !== variable.value) {
85
+ // only show if all expressions found have the same value
86
+ return undefined;
87
+ }
88
+ }
89
+ return variable;
90
+ }
91
+ async doFindVariable(owner, namesToFind) {
92
+ const elements = await owner.getElements();
93
+ const variables = [];
94
+ for (const element of elements) {
95
+ if (element instanceof debug_console_items_1.DebugVariable && element.name === namesToFind[0]) {
96
+ variables.push(element);
97
+ }
98
+ }
99
+ if (variables.length !== 1) {
100
+ return undefined;
101
+ }
102
+ if (namesToFind.length === 1) {
103
+ return variables[0];
104
+ }
105
+ else {
106
+ return this.doFindVariable(variables[0], namesToFind.slice(1));
107
+ }
108
+ }
109
+ };
110
+ __decorate([
111
+ inversify_1.inject(debug_session_manager_1.DebugSessionManager),
112
+ __metadata("design:type", debug_session_manager_1.DebugSessionManager)
113
+ ], DebugHoverSource.prototype, "sessions", void 0);
114
+ DebugHoverSource = __decorate([
115
+ inversify_1.injectable()
116
+ ], DebugHoverSource);
283
117
  exports.DebugHoverSource = DebugHoverSource;
284
118
  //# sourceMappingURL=debug-hover-source.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug-hover-source.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-hover-source.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-hover-source.js","sourceRoot":"","sources":["../../../src/browser/editor/debug-hover-source.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,kDAAkD;AAClD,qEAA8E;AAC9E,wEAAoG;AACpG,oEAA+D;AAC/D,4DAAkE;AAGlE,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,wBAAU;IAAhD;;QAUc,aAAQ,GAAkB,EAAE,CAAC;IAuE3C,CAAC;IA3EG,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAGD,WAAW;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5C,CAAC;IAES,WAAW,CAAC,OAAuC;QACzD,OAAO,6BAAK,SAAS,EAAC,yBAAyB,EAAC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAG,OAAO,CAAC,KAAK,CAAO,CAAC;IAChG,CAAC;IAED,KAAK;QACD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAkB;QAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,SAAS,IAAI,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;QAC5D,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IACrB,CAAC;IACS,KAAK,CAAC,UAAU,CAAC,UAAkB;QACzC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,cAAc,EAAE;YACjB,OAAO,SAAS,CAAC;SACpB;QACD,IAAI,cAAc,CAAC,YAAY,CAAC,yBAAyB,EAAE;YACvD,MAAM,IAAI,GAAG,IAAI,oCAAc,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;YAClE,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC;SAC9C;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACpG,CAAC;IACS,KAAK,CAAC,YAAY,CAAC,WAAqB;QAC9C,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,YAAY,EAAE;YACf,OAAO,SAAS,CAAC;SACpB;QACD,IAAI,QAAmC,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YACxB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,EAAE;gBACX,QAAQ,GAAG,KAAK,CAAC;aACpB;iBAAM,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,EAAE;gBAChD,yDAAyD;gBACzD,OAAO,SAAS,CAAC;aACpB;SACJ;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;IACS,KAAK,CAAC,cAAc,CAAC,KAA0B,EAAE,WAAqB;QAC5E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAoB,EAAE,CAAC;QACtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC5B,IAAI,OAAO,YAAY,mCAAa,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE;gBACrE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC3B;SACJ;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO,SAAS,CAAC;SACpB;QACD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;SACvB;aAAM;YACH,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAClE;IACL,CAAC;CAEJ,CAAA;AA9EG;IADC,kBAAM,CAAC,2CAAmB,CAAC;8BACC,2CAAmB;kDAAC;AAHxC,gBAAgB;IAD5B,sBAAU,EAAE;GACA,gBAAgB,CAiF5B;AAjFY,4CAAgB"}
@@ -14,19 +14,6 @@
14
14
  *
15
15
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
16
  ********************************************************************************/
17
- var __extends = (this && this.__extends) || (function () {
18
- var extendStatics = function (d, b) {
19
- extendStatics = Object.setPrototypeOf ||
20
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
21
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
22
- return extendStatics(d, b);
23
- };
24
- return function (d, b) {
25
- extendStatics(d, b);
26
- function __() { this.constructor = d; }
27
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
28
- };
29
- })();
30
17
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
31
18
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
32
19
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -36,57 +23,22 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
36
23
  var __metadata = (this && this.__metadata) || function (k, v) {
37
24
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
38
25
  };
39
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
40
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
41
- return new (P || (P = Promise))(function (resolve, reject) {
42
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
43
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
44
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
45
- step((generator = generator.apply(thisArg, _arguments || [])).next());
46
- });
47
- };
48
- var __generator = (this && this.__generator) || function (thisArg, body) {
49
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
50
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
51
- function verb(n) { return function (v) { return step([n, v]); }; }
52
- function step(op) {
53
- if (f) throw new TypeError("Generator is already executing.");
54
- while (_) try {
55
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
56
- if (y = 0, t) op = [op[0] & 2, t.value];
57
- switch (op[0]) {
58
- case 0: case 1: t = op; break;
59
- case 4: _.label++; return { value: op[1], done: false };
60
- case 5: _.label++; y = op[1]; op = [0]; continue;
61
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
62
- default:
63
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
64
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
65
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
66
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
67
- if (t[2]) _.ops.pop();
68
- _.trys.pop(); continue;
69
- }
70
- op = body.call(thisArg, _);
71
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
72
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
73
- }
74
- };
26
+ var DebugHoverWidget_1;
75
27
  Object.defineProperty(exports, "__esModule", { value: true });
76
28
  exports.DebugHoverWidget = exports.createDebugHoverWidgetContainer = void 0;
77
- var debounce = require("@theia/core/shared/lodash.debounce");
78
- var widgets_1 = require("@theia/core/shared/@phosphor/widgets");
79
- var inversify_1 = require("@theia/core/shared/inversify");
80
- var browser_1 = require("@theia/core/lib/browser");
81
- var source_tree_1 = require("@theia/core/lib/browser/source-tree");
82
- var disposable_1 = require("@theia/core/lib/common/disposable");
83
- var debug_session_manager_1 = require("../debug-session-manager");
84
- var debug_editor_1 = require("./debug-editor");
85
- var debug_expression_provider_1 = require("./debug-expression-provider");
86
- var debug_hover_source_1 = require("./debug-hover-source");
87
- var debug_console_items_1 = require("../console/debug-console-items");
29
+ const debounce = require("@theia/core/shared/lodash.debounce");
30
+ const widgets_1 = require("@theia/core/shared/@phosphor/widgets");
31
+ const inversify_1 = require("@theia/core/shared/inversify");
32
+ const browser_1 = require("@theia/core/lib/browser");
33
+ const source_tree_1 = require("@theia/core/lib/browser/source-tree");
34
+ const disposable_1 = require("@theia/core/lib/common/disposable");
35
+ const debug_session_manager_1 = require("../debug-session-manager");
36
+ const debug_editor_1 = require("./debug-editor");
37
+ const debug_expression_provider_1 = require("./debug-expression-provider");
38
+ const debug_hover_source_1 = require("./debug-hover-source");
39
+ const debug_console_items_1 = require("../console/debug-console-items");
88
40
  function createDebugHoverWidgetContainer(parent, editor) {
89
- var child = source_tree_1.SourceTreeWidget.createContainer(parent, {
41
+ const child = source_tree_1.SourceTreeWidget.createContainer(parent, {
90
42
  virtualized: false
91
43
  });
92
44
  child.bind(debug_editor_1.DebugEditor).toConstantValue(editor);
@@ -97,28 +49,24 @@ function createDebugHoverWidgetContainer(parent, editor) {
97
49
  return child;
98
50
  }
99
51
  exports.createDebugHoverWidgetContainer = createDebugHoverWidgetContainer;
100
- var DebugHoverWidget = /** @class */ (function (_super) {
101
- __extends(DebugHoverWidget, _super);
102
- function DebugHoverWidget() {
103
- var _this = _super !== null && _super.apply(this, arguments) || this;
104
- _this.toDispose = new disposable_1.DisposableCollection();
105
- _this.allowEditorOverflow = true;
106
- _this.domNode = document.createElement('div');
107
- _this.titleNode = document.createElement('div');
108
- _this.contentNode = document.createElement('div');
109
- _this.doSchedule = debounce(function (fn) { return fn(); }, 300);
110
- return _this;
52
+ let DebugHoverWidget = DebugHoverWidget_1 = class DebugHoverWidget extends source_tree_1.SourceTreeWidget {
53
+ constructor() {
54
+ super(...arguments);
55
+ this.toDispose = new disposable_1.DisposableCollection();
56
+ this.allowEditorOverflow = true;
57
+ this.domNode = document.createElement('div');
58
+ this.titleNode = document.createElement('div');
59
+ this.contentNode = document.createElement('div');
60
+ this.doSchedule = debounce((fn) => fn(), 300);
111
61
  }
112
- DebugHoverWidget_1 = DebugHoverWidget;
113
- DebugHoverWidget.prototype.getId = function () {
62
+ getId() {
114
63
  return DebugHoverWidget_1.ID;
115
- };
116
- DebugHoverWidget.prototype.getDomNode = function () {
64
+ }
65
+ getDomNode() {
117
66
  return this.domNode;
118
- };
119
- DebugHoverWidget.prototype.init = function () {
120
- var _this = this;
121
- _super.prototype.init.call(this);
67
+ }
68
+ init() {
69
+ super.init();
122
70
  this.domNode.className = 'theia-debug-hover';
123
71
  this.titleNode.className = 'theia-debug-hover-title';
124
72
  this.domNode.appendChild(this.titleNode);
@@ -128,28 +76,25 @@ var DebugHoverWidget = /** @class */ (function (_super) {
128
76
  this.source = this.hoverSource;
129
77
  this.toDispose.pushAll([
130
78
  this.hoverSource,
131
- disposable_1.Disposable.create(function () { return _this.editor.getControl().removeContentWidget(_this); }),
132
- disposable_1.Disposable.create(function () { return _this.hide(); }),
133
- this.sessions.onDidChange(function () {
134
- if (!_this.isEditorFrame()) {
135
- _this.hide();
79
+ disposable_1.Disposable.create(() => this.editor.getControl().removeContentWidget(this)),
80
+ disposable_1.Disposable.create(() => this.hide()),
81
+ this.sessions.onDidChange(() => {
82
+ if (!this.isEditorFrame()) {
83
+ this.hide();
136
84
  }
137
85
  })
138
86
  ]);
139
- };
140
- DebugHoverWidget.prototype.dispose = function () {
87
+ }
88
+ dispose() {
141
89
  this.toDispose.dispose();
142
- };
143
- DebugHoverWidget.prototype.show = function (options) {
144
- var _this = this;
145
- this.schedule(function () { return _this.doShow(options); }, options && options.immediate);
146
- };
147
- DebugHoverWidget.prototype.hide = function (options) {
148
- var _this = this;
149
- this.schedule(function () { return _this.doHide(); }, options && options.immediate);
150
- };
151
- DebugHoverWidget.prototype.schedule = function (fn, immediate) {
152
- if (immediate === void 0) { immediate = true; }
90
+ }
91
+ show(options) {
92
+ this.schedule(() => this.doShow(options), options && options.immediate);
93
+ }
94
+ hide(options) {
95
+ this.schedule(() => this.doHide(), options && options.immediate);
96
+ }
97
+ schedule(fn, immediate = true) {
153
98
  if (immediate) {
154
99
  this.doSchedule.cancel();
155
100
  fn();
@@ -157,8 +102,8 @@ var DebugHoverWidget = /** @class */ (function (_super) {
157
102
  else {
158
103
  this.doSchedule(fn);
159
104
  }
160
- };
161
- DebugHoverWidget.prototype.doHide = function () {
105
+ }
106
+ doHide() {
162
107
  if (!this.isVisible) {
163
108
  return;
164
109
  }
@@ -169,97 +114,82 @@ var DebugHoverWidget = /** @class */ (function (_super) {
169
114
  widgets_1.Widget.detach(this);
170
115
  }
171
116
  this.hoverSource.reset();
172
- _super.prototype.hide.call(this);
117
+ super.hide();
173
118
  this.options = undefined;
174
119
  this.editor.getControl().layoutContentWidget(this);
175
- };
176
- DebugHoverWidget.prototype.doShow = function (options) {
177
- if (options === void 0) { options = this.options; }
178
- return __awaiter(this, void 0, void 0, function () {
179
- var matchingExpression, toFocus, expression;
180
- var _this = this;
181
- return __generator(this, function (_a) {
182
- switch (_a.label) {
183
- case 0:
184
- if (!this.isEditorFrame()) {
185
- this.hide();
186
- return [2 /*return*/];
187
- }
188
- if (!options) {
189
- this.hide();
190
- return [2 /*return*/];
191
- }
192
- if (this.options && this.options.selection.equalsRange(options.selection)) {
193
- return [2 /*return*/];
194
- }
195
- if (!this.isAttached) {
196
- widgets_1.Widget.attach(this, this.contentNode);
197
- }
198
- this.options = options;
199
- matchingExpression = this.expressionProvider.get(this.editor.getControl().getModel(), options.selection);
200
- if (!matchingExpression) {
201
- this.hide();
202
- return [2 /*return*/];
203
- }
204
- toFocus = new disposable_1.DisposableCollection();
205
- if (this.options.focus === true) {
206
- toFocus.push(this.model.onNodeRefreshed(function () {
207
- toFocus.dispose();
208
- _this.activate();
209
- }));
210
- }
211
- return [4 /*yield*/, this.hoverSource.evaluate(matchingExpression)];
212
- case 1:
213
- expression = _a.sent();
214
- if (!expression) {
215
- toFocus.dispose();
216
- this.hide();
217
- return [2 /*return*/];
218
- }
219
- this.contentNode.hidden = false;
220
- ['number', 'boolean', 'string'].forEach(function (token) { return _this.titleNode.classList.remove(token); });
221
- this.domNode.classList.remove('complex-value');
222
- if (expression.hasElements) {
223
- this.domNode.classList.add('complex-value');
224
- }
225
- else {
226
- this.contentNode.hidden = true;
227
- if (expression.type === 'number' || expression.type === 'boolean' || expression.type === 'string') {
228
- this.titleNode.classList.add(expression.type);
229
- }
230
- else if (!isNaN(+expression.value)) {
231
- this.titleNode.classList.add('number');
232
- }
233
- else if (debug_console_items_1.DebugVariable.booleanRegex.test(expression.value)) {
234
- this.titleNode.classList.add('boolean');
235
- }
236
- else if (debug_console_items_1.DebugVariable.stringRegex.test(expression.value)) {
237
- this.titleNode.classList.add('string');
238
- }
239
- }
240
- _super.prototype.show.call(this);
241
- return [4 /*yield*/, new Promise(function (resolve) {
242
- setTimeout(function () { return window.requestAnimationFrame(function () {
243
- _this.editor.getControl().layoutContentWidget(_this);
244
- resolve();
245
- }); }, 0);
246
- })];
247
- case 2:
248
- _a.sent();
249
- return [2 /*return*/];
250
- }
251
- });
120
+ }
121
+ async doShow(options = this.options) {
122
+ if (!this.isEditorFrame()) {
123
+ this.hide();
124
+ return;
125
+ }
126
+ if (!options) {
127
+ this.hide();
128
+ return;
129
+ }
130
+ if (this.options && this.options.selection.equalsRange(options.selection)) {
131
+ return;
132
+ }
133
+ if (!this.isAttached) {
134
+ widgets_1.Widget.attach(this, this.contentNode);
135
+ }
136
+ this.options = options;
137
+ const matchingExpression = this.expressionProvider.get(this.editor.getControl().getModel(), options.selection);
138
+ if (!matchingExpression) {
139
+ this.hide();
140
+ return;
141
+ }
142
+ const toFocus = new disposable_1.DisposableCollection();
143
+ if (this.options.focus === true) {
144
+ toFocus.push(this.model.onNodeRefreshed(() => {
145
+ toFocus.dispose();
146
+ this.activate();
147
+ }));
148
+ }
149
+ const expression = await this.hoverSource.evaluate(matchingExpression);
150
+ if (!expression) {
151
+ toFocus.dispose();
152
+ this.hide();
153
+ return;
154
+ }
155
+ this.contentNode.hidden = false;
156
+ ['number', 'boolean', 'string'].forEach(token => this.titleNode.classList.remove(token));
157
+ this.domNode.classList.remove('complex-value');
158
+ if (expression.hasElements) {
159
+ this.domNode.classList.add('complex-value');
160
+ }
161
+ else {
162
+ this.contentNode.hidden = true;
163
+ if (expression.type === 'number' || expression.type === 'boolean' || expression.type === 'string') {
164
+ this.titleNode.classList.add(expression.type);
165
+ }
166
+ else if (!isNaN(+expression.value)) {
167
+ this.titleNode.classList.add('number');
168
+ }
169
+ else if (debug_console_items_1.DebugVariable.booleanRegex.test(expression.value)) {
170
+ this.titleNode.classList.add('boolean');
171
+ }
172
+ else if (debug_console_items_1.DebugVariable.stringRegex.test(expression.value)) {
173
+ this.titleNode.classList.add('string');
174
+ }
175
+ }
176
+ super.show();
177
+ await new Promise(resolve => {
178
+ setTimeout(() => window.requestAnimationFrame(() => {
179
+ this.editor.getControl().layoutContentWidget(this);
180
+ resolve();
181
+ }), 0);
252
182
  });
253
- };
254
- DebugHoverWidget.prototype.isEditorFrame = function () {
183
+ }
184
+ isEditorFrame() {
255
185
  return this.sessions.isCurrentEditorFrame(this.editor.getControl().getModel().uri);
256
- };
257
- DebugHoverWidget.prototype.getPosition = function () {
186
+ }
187
+ getPosition() {
258
188
  if (!this.isVisible) {
259
189
  return undefined;
260
190
  }
261
- var position = this.options && this.options.selection.getStartPosition();
262
- var word = position && this.editor.getControl().getModel().getWordAtPosition(position);
191
+ const position = this.options && this.options.selection.getStartPosition();
192
+ const word = position && this.editor.getControl().getModel().getWordAtPosition(position);
263
193
  return position && word ? {
264
194
  position: new monaco.Position(position.lineNumber, word.startColumn),
265
195
  preference: [
@@ -267,47 +197,44 @@ var DebugHoverWidget = /** @class */ (function (_super) {
267
197
  monaco.editor.ContentWidgetPositionPreference.BELOW
268
198
  ]
269
199
  } : undefined;
270
- };
271
- DebugHoverWidget.prototype.onUpdateRequest = function (msg) {
272
- _super.prototype.onUpdateRequest.call(this, msg);
273
- var expression = this.hoverSource.expression;
274
- var value = expression && expression.value || '';
200
+ }
201
+ onUpdateRequest(msg) {
202
+ super.onUpdateRequest(msg);
203
+ const { expression } = this.hoverSource;
204
+ const value = expression && expression.value || '';
275
205
  this.titleNode.textContent = value;
276
206
  this.titleNode.title = value;
277
- };
278
- DebugHoverWidget.prototype.onAfterAttach = function (msg) {
279
- var _this = this;
280
- _super.prototype.onAfterAttach.call(this, msg);
281
- this.addKeyListener(this.domNode, browser_1.Key.ESCAPE, function () { return _this.hide(); });
282
- };
283
- var DebugHoverWidget_1;
284
- DebugHoverWidget.ID = 'debug.editor.hover';
285
- __decorate([
286
- inversify_1.inject(debug_editor_1.DebugEditor),
287
- __metadata("design:type", Object)
288
- ], DebugHoverWidget.prototype, "editor", void 0);
289
- __decorate([
290
- inversify_1.inject(debug_session_manager_1.DebugSessionManager),
291
- __metadata("design:type", debug_session_manager_1.DebugSessionManager)
292
- ], DebugHoverWidget.prototype, "sessions", void 0);
293
- __decorate([
294
- inversify_1.inject(debug_hover_source_1.DebugHoverSource),
295
- __metadata("design:type", debug_hover_source_1.DebugHoverSource)
296
- ], DebugHoverWidget.prototype, "hoverSource", void 0);
297
- __decorate([
298
- inversify_1.inject(debug_expression_provider_1.DebugExpressionProvider),
299
- __metadata("design:type", debug_expression_provider_1.DebugExpressionProvider)
300
- ], DebugHoverWidget.prototype, "expressionProvider", void 0);
301
- __decorate([
302
- inversify_1.postConstruct(),
303
- __metadata("design:type", Function),
304
- __metadata("design:paramtypes", []),
305
- __metadata("design:returntype", void 0)
306
- ], DebugHoverWidget.prototype, "init", null);
307
- DebugHoverWidget = DebugHoverWidget_1 = __decorate([
308
- inversify_1.injectable()
309
- ], DebugHoverWidget);
310
- return DebugHoverWidget;
311
- }(source_tree_1.SourceTreeWidget));
207
+ }
208
+ onAfterAttach(msg) {
209
+ super.onAfterAttach(msg);
210
+ this.addKeyListener(this.domNode, browser_1.Key.ESCAPE, () => this.hide());
211
+ }
212
+ };
213
+ DebugHoverWidget.ID = 'debug.editor.hover';
214
+ __decorate([
215
+ inversify_1.inject(debug_editor_1.DebugEditor),
216
+ __metadata("design:type", Object)
217
+ ], DebugHoverWidget.prototype, "editor", void 0);
218
+ __decorate([
219
+ inversify_1.inject(debug_session_manager_1.DebugSessionManager),
220
+ __metadata("design:type", debug_session_manager_1.DebugSessionManager)
221
+ ], DebugHoverWidget.prototype, "sessions", void 0);
222
+ __decorate([
223
+ inversify_1.inject(debug_hover_source_1.DebugHoverSource),
224
+ __metadata("design:type", debug_hover_source_1.DebugHoverSource)
225
+ ], DebugHoverWidget.prototype, "hoverSource", void 0);
226
+ __decorate([
227
+ inversify_1.inject(debug_expression_provider_1.DebugExpressionProvider),
228
+ __metadata("design:type", debug_expression_provider_1.DebugExpressionProvider)
229
+ ], DebugHoverWidget.prototype, "expressionProvider", void 0);
230
+ __decorate([
231
+ inversify_1.postConstruct(),
232
+ __metadata("design:type", Function),
233
+ __metadata("design:paramtypes", []),
234
+ __metadata("design:returntype", void 0)
235
+ ], DebugHoverWidget.prototype, "init", null);
236
+ DebugHoverWidget = DebugHoverWidget_1 = __decorate([
237
+ inversify_1.injectable()
238
+ ], DebugHoverWidget);
312
239
  exports.DebugHoverWidget = DebugHoverWidget;
313
240
  //# sourceMappingURL=debug-hover-widget.js.map