monaco-languageclient 1.0.0 → 2.0.0-dev.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.
Files changed (137) hide show
  1. package/dist/amd/console-window.d.ts +5 -4
  2. package/dist/amd/console-window.d.ts.map +1 -1
  3. package/dist/amd/console-window.js +17 -7
  4. package/dist/amd/console-window.js.map +1 -1
  5. package/dist/amd/disposable.d.ts +1 -1
  6. package/dist/amd/disposable.d.ts.map +1 -1
  7. package/dist/amd/disposable.js +6 -2
  8. package/dist/amd/disposable.js.map +1 -1
  9. package/dist/amd/index.d.ts +2 -5
  10. package/dist/amd/index.d.ts.map +1 -1
  11. package/dist/amd/index.js +7 -6
  12. package/dist/amd/index.js.map +1 -1
  13. package/dist/amd/monaco-language-client.d.ts +9 -3
  14. package/dist/amd/monaco-language-client.d.ts.map +1 -1
  15. package/dist/amd/monaco-language-client.js +60 -41
  16. package/dist/amd/monaco-language-client.js.map +1 -1
  17. package/dist/amd/monaco-services.d.ts +6 -10
  18. package/dist/amd/monaco-services.d.ts.map +1 -1
  19. package/dist/amd/monaco-services.js +6 -13
  20. package/dist/amd/monaco-services.js.map +1 -1
  21. package/dist/amd/monaco-workspace.d.ts +6 -28
  22. package/dist/amd/monaco-workspace.d.ts.map +1 -1
  23. package/dist/amd/monaco-workspace.js +4 -121
  24. package/dist/amd/monaco-workspace.js.map +1 -1
  25. package/lib/console-window.d.ts +5 -4
  26. package/lib/console-window.d.ts.map +1 -1
  27. package/lib/console-window.js +17 -7
  28. package/lib/console-window.js.map +1 -1
  29. package/lib/disposable.d.ts +1 -1
  30. package/lib/disposable.d.ts.map +1 -1
  31. package/lib/disposable.js +4 -4
  32. package/lib/disposable.js.map +1 -1
  33. package/lib/index.d.ts +2 -5
  34. package/lib/index.d.ts.map +1 -1
  35. package/lib/index.js +7 -5
  36. package/lib/index.js.map +1 -1
  37. package/lib/monaco-language-client.d.ts +9 -3
  38. package/lib/monaco-language-client.d.ts.map +1 -1
  39. package/lib/monaco-language-client.js +86 -40
  40. package/lib/monaco-language-client.js.map +1 -1
  41. package/lib/monaco-services.d.ts +6 -10
  42. package/lib/monaco-services.d.ts.map +1 -1
  43. package/lib/monaco-services.js +10 -17
  44. package/lib/monaco-services.js.map +1 -1
  45. package/lib/monaco-workspace.d.ts +6 -28
  46. package/lib/monaco-workspace.d.ts.map +1 -1
  47. package/lib/monaco-workspace.js +3 -123
  48. package/lib/monaco-workspace.js.map +1 -1
  49. package/package.json +13 -12
  50. package/src/console-window.ts +21 -10
  51. package/src/disposable.ts +2 -1
  52. package/src/index.ts +5 -5
  53. package/src/monaco-language-client.ts +99 -46
  54. package/src/monaco-services.ts +9 -23
  55. package/src/monaco-workspace.ts +6 -154
  56. package/dist/amd/connection.d.ts +0 -53
  57. package/dist/amd/connection.d.ts.map +0 -1
  58. package/dist/amd/connection.js +0 -41
  59. package/dist/amd/connection.js.map +0 -1
  60. package/dist/amd/monaco-commands.d.ts +0 -8
  61. package/dist/amd/monaco-commands.d.ts.map +0 -1
  62. package/dist/amd/monaco-commands.js +0 -15
  63. package/dist/amd/monaco-commands.js.map +0 -1
  64. package/dist/amd/monaco-converter.d.ts +0 -225
  65. package/dist/amd/monaco-converter.d.ts.map +0 -1
  66. package/dist/amd/monaco-converter.js +0 -1173
  67. package/dist/amd/monaco-converter.js.map +0 -1
  68. package/dist/amd/monaco-diagnostic-collection.d.ts +0 -32
  69. package/dist/amd/monaco-diagnostic-collection.d.ts.map +0 -1
  70. package/dist/amd/monaco-diagnostic-collection.js +0 -76
  71. package/dist/amd/monaco-diagnostic-collection.js.map +0 -1
  72. package/dist/amd/monaco-languages.d.ts +0 -70
  73. package/dist/amd/monaco-languages.d.ts.map +0 -1
  74. package/dist/amd/monaco-languages.js +0 -503
  75. package/dist/amd/monaco-languages.js.map +0 -1
  76. package/dist/amd/register-vscode.d.ts +0 -2
  77. package/dist/amd/register-vscode.d.ts.map +0 -1
  78. package/dist/amd/register-vscode.js +0 -16
  79. package/dist/amd/register-vscode.js.map +0 -1
  80. package/dist/amd/services.d.ts +0 -234
  81. package/dist/amd/services.d.ts.map +0 -1
  82. package/dist/amd/services.js +0 -69
  83. package/dist/amd/services.js.map +0 -1
  84. package/dist/amd/vscode-api.d.ts +0 -4
  85. package/dist/amd/vscode-api.d.ts.map +0 -1
  86. package/dist/amd/vscode-api.js +0 -1018
  87. package/dist/amd/vscode-api.js.map +0 -1
  88. package/dist/amd/vscode-compatibility.d.ts +0 -4
  89. package/dist/amd/vscode-compatibility.d.ts.map +0 -1
  90. package/dist/amd/vscode-compatibility.js +0 -5
  91. package/dist/amd/vscode-compatibility.js.map +0 -1
  92. package/lib/connection.d.ts +0 -53
  93. package/lib/connection.d.ts.map +0 -1
  94. package/lib/connection.js +0 -41
  95. package/lib/connection.js.map +0 -1
  96. package/lib/monaco-commands.d.ts +0 -8
  97. package/lib/monaco-commands.d.ts.map +0 -1
  98. package/lib/monaco-commands.js +0 -13
  99. package/lib/monaco-commands.js.map +0 -1
  100. package/lib/monaco-converter.d.ts +0 -225
  101. package/lib/monaco-converter.d.ts.map +0 -1
  102. package/lib/monaco-converter.js +0 -1173
  103. package/lib/monaco-converter.js.map +0 -1
  104. package/lib/monaco-diagnostic-collection.d.ts +0 -32
  105. package/lib/monaco-diagnostic-collection.d.ts.map +0 -1
  106. package/lib/monaco-diagnostic-collection.js +0 -75
  107. package/lib/monaco-diagnostic-collection.js.map +0 -1
  108. package/lib/monaco-languages.d.ts +0 -70
  109. package/lib/monaco-languages.d.ts.map +0 -1
  110. package/lib/monaco-languages.js +0 -504
  111. package/lib/monaco-languages.js.map +0 -1
  112. package/lib/register-vscode.d.ts +0 -2
  113. package/lib/register-vscode.d.ts.map +0 -1
  114. package/lib/register-vscode.js +0 -15
  115. package/lib/register-vscode.js.map +0 -1
  116. package/lib/services.d.ts +0 -234
  117. package/lib/services.d.ts.map +0 -1
  118. package/lib/services.js +0 -70
  119. package/lib/services.js.map +0 -1
  120. package/lib/vscode-api.d.ts +0 -4
  121. package/lib/vscode-api.d.ts.map +0 -1
  122. package/lib/vscode-api.js +0 -1021
  123. package/lib/vscode-api.js.map +0 -1
  124. package/lib/vscode-compatibility.d.ts +0 -4
  125. package/lib/vscode-compatibility.d.ts.map +0 -1
  126. package/lib/vscode-compatibility.js +0 -9
  127. package/lib/vscode-compatibility.js.map +0 -1
  128. package/src/connection.ts +0 -134
  129. package/src/monaco-commands.ts +0 -15
  130. package/src/monaco-converter.ts +0 -1317
  131. package/src/monaco-diagnostic-collection.ts +0 -94
  132. package/src/monaco-languages.ts +0 -571
  133. package/src/register-vscode.ts +0 -13
  134. package/src/services.ts +0 -326
  135. package/src/typings/monaco/index.d.ts +0 -21
  136. package/src/vscode-api.ts +0 -1047
  137. package/src/vscode-compatibility.ts +0 -8
@@ -1,7 +1,8 @@
1
- import { MessageActionItem, MessageType, Window, OutputChannel } from './services';
1
+ import { Window, Severity } from 'vscode/services';
2
+ import * as vscode from 'vscode';
2
3
  export declare class ConsoleWindow implements Window {
3
- protected readonly channels: Map<string, OutputChannel>;
4
- showMessage<T extends MessageActionItem>(type: MessageType, message: string, ...actions: T[]): Thenable<T | undefined>;
5
- createOutputChannel(name: string): OutputChannel;
4
+ protected readonly channels: Map<string, vscode.OutputChannel>;
5
+ showMessage<T extends vscode.MessageOptions | string | vscode.MessageItem>(severity: Severity, message: string, ...actions: T[]): Thenable<T | undefined>;
6
+ createOutputChannel(name: string): vscode.OutputChannel;
6
7
  }
7
8
  //# sourceMappingURL=console-window.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"console-window.d.ts","sourceRoot":"","sources":["../../src/console-window.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEnF,qBAAa,aAAc,YAAW,MAAM;IACxC,SAAS,CAAC,QAAQ,CAAC,QAAQ,6BAAoC;IAC/D,WAAW,CAAC,CAAC,SAAS,iBAAiB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;IAetH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAsBnD"}
1
+ {"version":3,"file":"console-window.d.ts","sourceRoot":"","sources":["../../src/console-window.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAEhC,qBAAa,aAAc,YAAW,MAAM;IACxC,SAAS,CAAC,QAAQ,CAAC,QAAQ,oCAA2C;IACtE,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;IAezJ,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,aAAa;CAgC1D"}
@@ -1,4 +1,4 @@
1
- define(["require", "exports", "./services"], function (require, exports, services_1) {
1
+ define(["require", "exports", "vscode/services"], function (require, exports, services_1) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.ConsoleWindow = void 0;
@@ -6,18 +6,18 @@ define(["require", "exports", "./services"], function (require, exports, service
6
6
  constructor() {
7
7
  this.channels = new Map();
8
8
  }
9
- showMessage(type, message, ...actions) {
10
- if (type === services_1.MessageType.Error) {
9
+ showMessage(severity, message, ...actions) {
10
+ if (severity === services_1.Severity.Error) {
11
11
  console.error(message);
12
12
  }
13
- if (type === services_1.MessageType.Warning) {
13
+ if (severity === services_1.Severity.Warning) {
14
14
  console.warn(message);
15
15
  }
16
- if (type === services_1.MessageType.Info) {
16
+ if (severity === services_1.Severity.Info) {
17
17
  console.info(message);
18
18
  }
19
- if (type === services_1.MessageType.Log) {
20
- console.log(message);
19
+ if (severity === services_1.Severity.Ignore) {
20
+ console.debug(message);
21
21
  }
22
22
  return Promise.resolve(undefined);
23
23
  }
@@ -27,6 +27,7 @@ define(["require", "exports", "./services"], function (require, exports, service
27
27
  return existing;
28
28
  }
29
29
  const channel = {
30
+ name: 'default',
30
31
  append(value) {
31
32
  console.log(name + ': ' + value);
32
33
  },
@@ -38,6 +39,15 @@ define(["require", "exports", "./services"], function (require, exports, service
38
39
  },
39
40
  dispose() {
40
41
  // no-op
42
+ },
43
+ replace: function (value) {
44
+ // no-op
45
+ },
46
+ clear: function () {
47
+ // no-op
48
+ },
49
+ hide: function () {
50
+ // no-op
41
51
  }
42
52
  };
43
53
  this.channels.set(name, channel);
@@ -1 +1 @@
1
- {"version":3,"file":"console-window.js","sourceRoot":"","sources":["../../src/console-window.ts"],"names":[],"mappings":";;;;IAMA,MAAa,aAAa;QAA1B;YACuB,aAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;QAsCnE,CAAC;QArCG,WAAW,CAA8B,IAAiB,EAAE,OAAe,EAAE,GAAG,OAAY;YACxF,IAAI,IAAI,KAAK,sBAAW,CAAC,KAAK,EAAE;gBAC5B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC1B;YACD,IAAI,IAAI,KAAK,sBAAW,CAAC,OAAO,EAAE;gBAC9B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACzB;YACD,IAAI,IAAI,KAAK,sBAAW,CAAC,IAAI,EAAE;gBAC3B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACzB;YACD,IAAI,IAAI,KAAK,sBAAW,CAAC,GAAG,EAAE;gBAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;aACxB;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QACD,mBAAmB,CAAC,IAAY;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,QAAQ,EAAE;gBACV,OAAO,QAAQ,CAAC;aACnB;YACD,MAAM,OAAO,GAAkB;gBAC3B,MAAM,CAAC,KAAa;oBAChB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;gBACrC,CAAC;gBACD,UAAU,CAAC,IAAY;oBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;gBACpC,CAAC;gBACD,IAAI;oBACA,QAAQ;gBACZ,CAAC;gBACD,OAAO;oBACH,QAAQ;gBACZ,CAAC;aACJ,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAChC,OAAO,OAAO,CAAC;QACnB,CAAC;KACJ;IAvCD,sCAuCC"}
1
+ {"version":3,"file":"console-window.js","sourceRoot":"","sources":["../../src/console-window.ts"],"names":[],"mappings":";;;;IAOA,MAAa,aAAa;QAA1B;YACuB,aAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;QAgD1E,CAAC;QA/CG,WAAW,CAAgE,QAAkB,EAAE,OAAe,EAAE,GAAG,OAAY;YAC3H,IAAI,QAAQ,KAAK,mBAAQ,CAAC,KAAK,EAAE;gBAC7B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC1B;YACD,IAAI,QAAQ,KAAK,mBAAQ,CAAC,OAAO,EAAE;gBAC/B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACzB;YACD,IAAI,QAAQ,KAAK,mBAAQ,CAAC,IAAI,EAAE;gBAC5B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACzB;YACD,IAAI,QAAQ,KAAK,mBAAQ,CAAC,MAAM,EAAE;gBAC9B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC1B;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QACD,mBAAmB,CAAC,IAAY;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,QAAQ,EAAE;gBACV,OAAO,QAAQ,CAAC;aACnB;YACD,MAAM,OAAO,GAAyB;gBAClC,IAAI,EAAE,SAAS;gBACf,MAAM,CAAC,KAAa;oBAChB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;gBACrC,CAAC;gBACD,UAAU,CAAC,IAAY;oBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;gBACpC,CAAC;gBACD,IAAI;oBACA,QAAQ;gBACZ,CAAC;gBACD,OAAO;oBACH,QAAQ;gBACZ,CAAC;gBACD,OAAO,EAAE,UAAU,KAAa;oBAC5B,QAAQ;gBACZ,CAAC;gBACD,KAAK,EAAE;oBACH,QAAQ;gBACZ,CAAC;gBACD,IAAI,EAAE;oBACF,QAAQ;gBACZ,CAAC;aACJ,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAChC,OAAO,OAAO,CAAC;QACnB,CAAC;KACJ;IAjDD,sCAiDC"}
@@ -1,4 +1,4 @@
1
- import { Disposable } from './services';
1
+ import { Disposable } from "vscode-jsonrpc";
2
2
  export { Disposable };
3
3
  export declare class DisposableCollection implements Disposable {
4
4
  protected readonly disposables: Disposable[];
@@ -1 +1 @@
1
- {"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../../src/disposable.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EACH,UAAU,EACb,CAAA;AAED,qBAAa,oBAAqB,YAAW,UAAU;IACnD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,CAAM;IAElD,OAAO,IAAI,IAAI;IAMf,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;CAY3C"}
1
+ {"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../../src/disposable.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EACH,UAAU,EACb,CAAA;AAED,qBAAa,oBAAqB,YAAW,UAAU;IACnD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,CAAM;IAElD,OAAO,IAAI,IAAI;IAMf,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;CAY3C"}
@@ -1,8 +1,12 @@
1
- define(["require", "exports", "./services"], function (require, exports, services_1) {
1
+ /* --------------------------------------------------------------------------------------------
2
+ * Copyright (c) 2018-2022 TypeFox GmbH (http://www.typefox.io). All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ * ------------------------------------------------------------------------------------------ */
5
+ define(["require", "exports", "vscode-jsonrpc"], function (require, exports, vscode_jsonrpc_1) {
2
6
  "use strict";
3
7
  Object.defineProperty(exports, "__esModule", { value: true });
4
8
  exports.DisposableCollection = exports.Disposable = void 0;
5
- Object.defineProperty(exports, "Disposable", { enumerable: true, get: function () { return services_1.Disposable; } });
9
+ Object.defineProperty(exports, "Disposable", { enumerable: true, get: function () { return vscode_jsonrpc_1.Disposable; } });
6
10
  class DisposableCollection {
7
11
  constructor() {
8
12
  this.disposables = [];
@@ -1 +1 @@
1
- {"version":3,"file":"disposable.js","sourceRoot":"","sources":["../../src/disposable.ts"],"names":[],"mappings":";;;;IAOI,2FAHK,qBAAU,OAGL;IAGd,MAAa,oBAAoB;QAAjC;YACuB,gBAAW,GAAiB,EAAE,CAAC;QAoBtD,CAAC;QAlBG,OAAO;YACH,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAG,CAAC,OAAO,EAAE,CAAC;aACrC;QACL,CAAC;QAED,IAAI,CAAC,UAAsB;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACrC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7B,OAAO;gBACH,OAAO;oBACH,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC9C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBACd,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBAChC;gBACL,CAAC;aACJ,CAAA;QACL,CAAC;KACJ;IArBD,oDAqBC"}
1
+ {"version":3,"file":"disposable.js","sourceRoot":"","sources":["../../src/disposable.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;;;;;IAK5F,2FAHK,2BAAU,OAGL;IAGd,MAAa,oBAAoB;QAAjC;YACuB,gBAAW,GAAiB,EAAE,CAAC;QAoBtD,CAAC;QAlBG,OAAO;YACH,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAG,CAAC,OAAO,EAAE,CAAC;aACrC;QACL,CAAC;QAED,IAAI,CAAC,UAAsB;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACrC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7B,OAAO;gBACH,OAAO;oBACH,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC9C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBACd,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBAChC;gBACL,CAAC;aACJ,CAAA;QACL,CAAC;KACJ;IArBD,oDAqBC"}
@@ -1,11 +1,8 @@
1
1
  export * from './disposable';
2
- export * from './services';
3
- export * from './connection';
4
2
  export * from './monaco-language-client';
5
- export * from './monaco-commands';
6
3
  export * from './console-window';
7
- export * from './monaco-languages';
8
4
  export * from './monaco-workspace';
9
5
  export * from './monaco-services';
10
- export * from './monaco-converter';
6
+ export { Disposable, CancellationToken, Event, Emitter } from 'vscode-jsonrpc/lib/common/api';
7
+ export * from 'vscode-languageserver-protocol/lib/common/api';
11
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAElC,OAAO,EACH,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAChD,MAAM,+BAA+B,CAAC;AACvC,cAAc,+CAA+C,CAAC"}
package/dist/amd/index.js CHANGED
@@ -1,19 +1,20 @@
1
- define(["require", "exports", "tslib", "./disposable", "./services", "./connection", "./monaco-language-client", "./monaco-commands", "./console-window", "./monaco-languages", "./monaco-workspace", "./monaco-services", "./monaco-converter"], function (require, exports, tslib_1, disposable_1, services_1, connection_1, monaco_language_client_1, monaco_commands_1, console_window_1, monaco_languages_1, monaco_workspace_1, monaco_services_1, monaco_converter_1) {
1
+ define(["require", "exports", "tslib", "./disposable", "./monaco-language-client", "./console-window", "./monaco-workspace", "./monaco-services", "vscode-jsonrpc/lib/common/api", "vscode-languageserver-protocol/lib/common/api"], function (require, exports, tslib_1, disposable_1, monaco_language_client_1, console_window_1, monaco_workspace_1, monaco_services_1, api_1, api_2) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Emitter = exports.Event = exports.CancellationToken = exports.Disposable = void 0;
4
5
  /* --------------------------------------------------------------------------------------------
5
6
  * Copyright (c) 2018-2022 TypeFox GmbH (http://www.typefox.io). All rights reserved.
6
7
  * Licensed under the MIT License. See License.txt in the project root for license information.
7
8
  * ------------------------------------------------------------------------------------------ */
8
9
  tslib_1.__exportStar(disposable_1, exports);
9
- tslib_1.__exportStar(services_1, exports);
10
- tslib_1.__exportStar(connection_1, exports);
11
10
  tslib_1.__exportStar(monaco_language_client_1, exports);
12
- tslib_1.__exportStar(monaco_commands_1, exports);
13
11
  tslib_1.__exportStar(console_window_1, exports);
14
- tslib_1.__exportStar(monaco_languages_1, exports);
15
12
  tslib_1.__exportStar(monaco_workspace_1, exports);
16
13
  tslib_1.__exportStar(monaco_services_1, exports);
17
- tslib_1.__exportStar(monaco_converter_1, exports);
14
+ Object.defineProperty(exports, "Disposable", { enumerable: true, get: function () { return api_1.Disposable; } });
15
+ Object.defineProperty(exports, "CancellationToken", { enumerable: true, get: function () { return api_1.CancellationToken; } });
16
+ Object.defineProperty(exports, "Event", { enumerable: true, get: function () { return api_1.Event; } });
17
+ Object.defineProperty(exports, "Emitter", { enumerable: true, get: function () { return api_1.Emitter; } });
18
+ tslib_1.__exportStar(api_2, exports);
18
19
  });
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;IAAA;;;oGAGgG;IAChG,4CAA6B;IAC7B,0CAA2B;IAC3B,4CAA6B;IAC7B,wDAAyC;IACzC,iDAAkC;IAClC,gDAAiC;IACjC,kDAAmC;IACnC,kDAAmC;IACnC,iDAAkC;IAClC,kDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;IAAA;;;oGAGgG;IAChG,4CAA6B;IAC7B,wDAAyC;IACzC,gDAAiC;IACjC,kDAAmC;IACnC,iDAAkC;IAG9B,iGAAA,UAAU,OAAA;IAAE,wGAAA,iBAAiB,OAAA;IAAE,4FAAA,KAAK,OAAA;IAAE,8FAAA,OAAO,OAAA;IAEjD,qCAA8D"}
@@ -1,13 +1,19 @@
1
- import { BaseLanguageClient, MessageTransports, LanguageClientOptions } from "vscode-languageclient";
2
- import { IConnectionProvider } from './connection';
1
+ import { BaseLanguageClient, MessageTransports, LanguageClientOptions } from "vscode-languageclient/lib/common/client";
3
2
  export * from 'vscode-languageclient/lib/common/client';
4
3
  import type * as vscode from 'vscode';
4
+ export interface IConnectionProvider {
5
+ get(encoding: string): Promise<MessageTransports>;
6
+ }
5
7
  export declare class MonacoLanguageClient extends BaseLanguageClient {
6
- static bypassConversion: (result: any, token?: vscode.CancellationToken | undefined) => any;
8
+ static bypassConversion: (result: any, token?: vscode.CancellationToken) => any;
7
9
  protected readonly connectionProvider: IConnectionProvider;
8
10
  constructor({ id, name, clientOptions, connectionProvider }: MonacoLanguageClient.Options);
9
11
  protected createMessageTransports(encoding: string): Promise<MessageTransports>;
10
12
  protected getLocale(): string;
13
+ protected registerBuiltinFeatures(): void;
14
+ registerTextDocumentSaveFeatures(): void;
15
+ registerConfigurationFeatures(): void;
16
+ registerProgressFeatures(): void;
11
17
  }
12
18
  export declare namespace MonacoLanguageClient {
13
19
  interface Options {
@@ -1 +1 @@
1
- {"version":3,"file":"monaco-language-client.d.ts","sourceRoot":"","sources":["../../src/monaco-language-client.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,kBAAkB,EAAE,iBAAiB,EAAE,qBAAqB,EAC/D,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGnD,cAAc,yCAAyC,CAAC;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAA;AAErC,qBAAa,oBAAqB,SAAQ,kBAAkB;IAExD,MAAM,CAAC,gBAAgB,WAAY,GAAG,uDAAoH;IAE1J,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;gBAE/C,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,oBAAoB,CAAC,OAAO;IA+CzF,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI/E,SAAS,CAAC,SAAS,IAAI,MAAM;CAGhC;AACD,yBAAiB,oBAAoB,CAAC;IAClC,UAAiB,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,qBAAqB,CAAC;QACrC,kBAAkB,EAAE,mBAAmB,CAAC;KAC3C;CACJ"}
1
+ {"version":3,"file":"monaco-language-client.d.ts","sourceRoot":"","sources":["../../src/monaco-language-client.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,kBAAkB,EAAE,iBAAiB,EAAE,qBAAqB,EAC/D,MAAM,yCAAyC,CAAC;AAEjD,cAAc,yCAAyC,CAAC;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAA;AA8BrC,MAAM,WAAW,mBAAmB;IAChC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACrD;AACD,qBAAa,oBAAqB,SAAQ,kBAAkB;IAExD,MAAM,CAAC,gBAAgB,WAAY,GAAG,UAAU,OAAO,iBAAiB,SAAkF;IAE1J,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;gBAE/C,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,oBAAoB,CAAC,OAAO;IAsBzF,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI/E,SAAS,CAAC,SAAS,IAAI,MAAM;cAIV,uBAAuB;IAoCnC,gCAAgC;IAMhC,6BAA6B;IAK7B,wBAAwB;CAGlC;AACD,yBAAiB,oBAAoB,CAAC;IAClC,UAAiB,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,qBAAqB,CAAC;QACrC,kBAAkB,EAAE,mBAAmB,CAAC;KAC3C;CACJ"}
@@ -1,50 +1,22 @@
1
- define(["require", "exports", "tslib", "vscode-languageclient", "vscode-languageclient/lib/common/client"], function (require, exports, tslib_1, vscode_languageclient_1, client_1) {
1
+ define(["require", "exports", "tslib", "vscode-languageclient/lib/common/client", "vscode-languageclient/lib/common/client", "vscode-languageclient/lib/common/configuration", "vscode-languageclient/lib/common/textSynchronization", "vscode-languageclient/lib/common/completion", "vscode-languageclient/lib/common/hover", "vscode-languageclient/lib/common/signatureHelp", "vscode-languageclient/lib/common/definition", "vscode-languageclient/lib/common/reference", "vscode-languageclient/lib/common/documentHighlight", "vscode-languageclient/lib/common/documentSymbol", "vscode-languageclient/lib/common/codeAction", "vscode-languageclient/lib/common/codeLens", "vscode-languageclient/lib/common/formatting", "vscode-languageclient/lib/common/rename", "vscode-languageclient/lib/common/documentLink", "vscode-languageclient/lib/common/executeCommand", "vscode-languageclient/lib/common/typeDefinition", "vscode-languageclient/lib/common/implementation", "vscode-languageclient/lib/common/colorProvider", "vscode-languageclient/lib/common/workspaceFolder", "vscode-languageclient/lib/common/foldingRange", "vscode-languageclient/lib/common/declaration", "vscode-languageclient/lib/common/selectionRange", "vscode-languageclient/lib/common/semanticTokens", "vscode-languageclient/lib/common/linkedEditingRange", "vscode-languageclient/lib/common/inlayHint", "vscode-languageclient/lib/common/diagnostic", "vscode-languageclient/lib/common/progress"], function (require, exports, tslib_1, client_1, client_2, configuration_1, textSynchronization_1, completion_1, hover_1, signatureHelp_1, definition_1, reference_1, documentHighlight_1, documentSymbol_1, codeAction_1, codeLens_1, formatting_1, rename_1, documentLink_1, executeCommand_1, typeDefinition_1, implementation_1, colorProvider_1, workspaceFolder_1, foldingRange_1, declaration_1, selectionRange_1, semanticTokens_1, linkedEditingRange_1, inlayHint_1, diagnostic_1, progress_1) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.MonacoLanguageClient = void 0;
5
- tslib_1.__exportStar(client_1, exports);
6
- class MonacoLanguageClient extends vscode_languageclient_1.BaseLanguageClient {
5
+ tslib_1.__exportStar(client_2, exports);
6
+ class MonacoLanguageClient extends client_1.BaseLanguageClient {
7
7
  constructor({ id, name, clientOptions, connectionProvider }) {
8
8
  super(id || name.toLowerCase(), name, clientOptions);
9
9
  this.connectionProvider = connectionProvider;
10
- // bypass LSP <=> VS Code conversion
11
- const self = this;
12
- self._p2c = new Proxy(self._p2c, {
13
- get: (target, prop) => {
14
- if (prop === 'asUri') {
15
- return target[prop];
16
- }
17
- return MonacoLanguageClient.bypassConversion;
18
- }
19
- });
20
- self._c2p = new Proxy(self._c2p, {
21
- get: (target, prop) => {
22
- if (prop === 'asUri') {
23
- return target[prop];
24
- }
25
- if (prop === 'asCompletionParams') {
26
- return (textDocument, position, context) => {
27
- return {
28
- textDocument: target.asTextDocumentIdentifier(textDocument),
29
- position,
30
- context
31
- };
32
- };
33
- }
34
- if (prop === 'asWillSaveTextDocumentParams') {
35
- return (event) => {
36
- return {
37
- textDocument: target.asTextDocumentIdentifier(event.document),
38
- reason: event.reason
39
- };
40
- };
41
- }
42
- if (prop.endsWith('Params')) {
43
- return target[prop];
44
- }
45
- return MonacoLanguageClient.bypassConversion;
46
- }
47
- });
10
+ // Hack because vscode-language client rejects the whole registration block if one capability registration has no associated client feature registered
11
+ // Some language servers still send the registration even though the client says it doesn't support it
12
+ const originalHandleRegistrationRequest = this['handleRegistrationRequest'].bind(this);
13
+ this['handleRegistrationRequest'] = (params) => {
14
+ originalHandleRegistrationRequest(Object.assign(Object.assign({}, params), { registrations: params.registrations.filter(registration => this.getFeature(registration.method) != null) }));
15
+ };
16
+ const originalHandleUnregistrationRequest = this['handleUnregistrationRequest'].bind(this);
17
+ this['handleUnregistrationRequest'] = (params) => {
18
+ originalHandleUnregistrationRequest(Object.assign(Object.assign({}, params), { unregisterations: params.unregisterations.filter(unregistration => this.getFeature(unregistration.method) != null) }));
19
+ };
48
20
  }
49
21
  createMessageTransports(encoding) {
50
22
  return this.connectionProvider.get(encoding);
@@ -52,6 +24,53 @@ define(["require", "exports", "tslib", "vscode-languageclient", "vscode-language
52
24
  getLocale() {
53
25
  return navigator.language || 'en-US';
54
26
  }
27
+ registerBuiltinFeatures() {
28
+ this.registerFeature(new textSynchronization_1.DidOpenTextDocumentFeature(this, this['_syncedDocuments']));
29
+ this.registerFeature(new textSynchronization_1.DidChangeTextDocumentFeature(this));
30
+ this.registerFeature(new textSynchronization_1.DidCloseTextDocumentFeature(this, this['_syncedDocuments']));
31
+ this.registerFeature(new completion_1.CompletionItemFeature(this));
32
+ this.registerFeature(new hover_1.HoverFeature(this));
33
+ this.registerFeature(new signatureHelp_1.SignatureHelpFeature(this));
34
+ this.registerFeature(new definition_1.DefinitionFeature(this));
35
+ this.registerFeature(new reference_1.ReferencesFeature(this));
36
+ this.registerFeature(new documentHighlight_1.DocumentHighlightFeature(this));
37
+ this.registerFeature(new documentSymbol_1.DocumentSymbolFeature(this));
38
+ this.registerFeature(new codeAction_1.CodeActionFeature(this));
39
+ this.registerFeature(new codeLens_1.CodeLensFeature(this));
40
+ this.registerFeature(new formatting_1.DocumentFormattingFeature(this));
41
+ this.registerFeature(new formatting_1.DocumentRangeFormattingFeature(this));
42
+ this.registerFeature(new formatting_1.DocumentOnTypeFormattingFeature(this));
43
+ this.registerFeature(new rename_1.RenameFeature(this));
44
+ this.registerFeature(new documentLink_1.DocumentLinkFeature(this));
45
+ this.registerFeature(new executeCommand_1.ExecuteCommandFeature(this));
46
+ this.registerFeature(new typeDefinition_1.TypeDefinitionFeature(this));
47
+ this.registerFeature(new implementation_1.ImplementationFeature(this));
48
+ this.registerFeature(new colorProvider_1.ColorProviderFeature(this));
49
+ // We only register the workspace folder feature if the client is not locked
50
+ // to a specific workspace folder.
51
+ if (this.clientOptions.workspaceFolder === undefined) {
52
+ this.registerFeature(new workspaceFolder_1.WorkspaceFoldersFeature(this));
53
+ }
54
+ this.registerFeature(new foldingRange_1.FoldingRangeFeature(this));
55
+ this.registerFeature(new declaration_1.DeclarationFeature(this));
56
+ this.registerFeature(new selectionRange_1.SelectionRangeFeature(this));
57
+ this.registerFeature(new semanticTokens_1.SemanticTokensFeature(this));
58
+ this.registerFeature(new linkedEditingRange_1.LinkedEditingFeature(this));
59
+ this.registerFeature(new inlayHint_1.InlayHintsFeature(this));
60
+ this.registerFeature(new diagnostic_1.DiagnosticFeature(this));
61
+ }
62
+ registerTextDocumentSaveFeatures() {
63
+ this.registerFeature(new textSynchronization_1.WillSaveFeature(this));
64
+ this.registerFeature(new textSynchronization_1.WillSaveWaitUntilFeature(this));
65
+ this.registerFeature(new textSynchronization_1.DidSaveTextDocumentFeature(this));
66
+ }
67
+ registerConfigurationFeatures() {
68
+ this.registerFeature(new configuration_1.ConfigurationFeature(this));
69
+ this.registerFeature(new configuration_1.SyncConfigurationFeature(this));
70
+ }
71
+ registerProgressFeatures() {
72
+ this.registerFeature(new progress_1.ProgressFeature(this));
73
+ }
55
74
  }
56
75
  exports.MonacoLanguageClient = MonacoLanguageClient;
57
76
  MonacoLanguageClient.bypassConversion = (result, token) => token != null ? Promise.resolve(result || undefined) : (result || undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"monaco-language-client.js","sourceRoot":"","sources":["../../src/monaco-language-client.ts"],"names":[],"mappings":";;;;IAYA,wCAAwD;IAGxD,MAAa,oBAAqB,SAAQ,0CAAkB;QAMxD,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,kBAAkB,EAAgC;YACrF,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;YACrD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YAE7C,oCAAoC;YACpC,MAAM,IAAI,GAGN,IAAW,CAAC;YAChB,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC7B,GAAG,EAAE,CAAC,MAAW,EAAE,IAAY,EAAE,EAAE;oBAC/B,IAAI,IAAI,KAAK,OAAO,EAAE;wBAClB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;qBACvB;oBACD,OAAO,oBAAoB,CAAC,gBAAgB,CAAC;gBACjD,CAAC;aACJ,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC7B,GAAG,EAAE,CAAC,MAAqB,EAAE,IAAY,EAAE,EAAE;oBACzC,IAAI,IAAI,KAAK,OAAO,EAAE;wBAClB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;qBACvB;oBACD,IAAI,IAAI,KAAK,oBAAoB,EAAE;wBAC/B,OAAO,CAAC,YAAiB,EAAE,QAAa,EAAE,OAAY,EAAoB,EAAE;4BACxE,OAAO;gCACH,YAAY,EAAE,MAAM,CAAC,wBAAwB,CAAC,YAAY,CAAC;gCAC3D,QAAQ;gCACR,OAAO;6BACV,CAAA;wBACL,CAAC,CAAA;qBACJ;oBACD,IAAI,IAAI,KAAK,8BAA8B,EAAE;wBACzC,OAAO,CAAC,KAAU,EAA8B,EAAE;4BAC9C,OAAO;gCACH,YAAY,EAAE,MAAM,CAAC,wBAAwB,CAAC,KAAK,CAAC,QAAQ,CAAC;gCAC7D,MAAM,EAAE,KAAK,CAAC,MAAM;6BACvB,CAAA;wBACL,CAAC,CAAA;qBACJ;oBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;wBACzB,OAAQ,MAAc,CAAC,IAAI,CAAC,CAAC;qBAChC;oBACD,OAAO,oBAAoB,CAAC,gBAAgB,CAAC;gBACjD,CAAC;aACJ,CAAC,CAAC;QACP,CAAC;QAES,uBAAuB,CAAC,QAAgB;YAC9C,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;QAES,SAAS;YACf,OAAO,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QACxC,CAAC;;IA3DL,oDA4DC;IA1DU,qCAAgB,GAAG,CAAC,MAAW,EAAE,KAAgC,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"monaco-language-client.js","sourceRoot":"","sources":["../../src/monaco-language-client.ts"],"names":[],"mappings":";;;;IAQA,wCAAwD;IAkCxD,MAAa,oBAAqB,SAAQ,2BAAkB;QAMxD,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,kBAAkB,EAAgC;YACrF,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;YACrD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YAE7C,sJAAsJ;YACtJ,sGAAsG;YACtG,MAAM,iCAAiC,GAAkD,IAAI,CAAC,2BAA2B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrI,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,MAA0B,EAAE,EAAE;gBAC/D,iCAAiC,iCAC1B,MAAM,KACT,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAM,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAC/G,CAAA;YACN,CAAC,CAAA;YACD,MAAM,mCAAmC,GAAoD,IAAI,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3I,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,MAA4B,EAAE,EAAE;gBACnE,mCAAmC,iCAC5B,MAAM,KACT,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAM,cAAc,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IACzH,CAAA;YACN,CAAC,CAAA;QACL,CAAC;QAES,uBAAuB,CAAC,QAAgB;YAC9C,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;QAES,SAAS;YACf,OAAO,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QACxC,CAAC;QAEkB,uBAAuB;YACtC,IAAI,CAAC,eAAe,CAAC,IAAI,gDAA0B,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACrF,IAAI,CAAC,eAAe,CAAC,IAAI,kDAA4B,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,eAAe,CAAC,IAAI,iDAA2B,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACtF,IAAI,CAAC,eAAe,CAAC,IAAI,kCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,oBAAY,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,eAAe,CAAC,IAAI,oCAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,CAAC,IAAI,8BAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,CAAC,IAAI,6BAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,CAAC,IAAI,4CAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,8BAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,CAAC,IAAI,0BAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,eAAe,CAAC,IAAI,2CAA8B,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,eAAe,CAAC,IAAI,4CAA+B,CAAC,IAAI,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,eAAe,CAAC,IAAI,sBAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,kCAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,oCAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,4EAA4E;YAC5E,kCAAkC;YAClC,IAAI,IAAI,CAAC,aAAa,CAAC,eAAe,KAAK,SAAS,EAAE;gBAClD,IAAI,CAAC,eAAe,CAAC,IAAI,yCAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;aAC3D;YACD,IAAI,CAAC,eAAe,CAAC,IAAI,kCAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,eAAe,CAAC,IAAI,gCAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;YACnD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,sCAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,IAAI,yCAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,CAAC,IAAI,6BAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,CAAC,IAAI,8BAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QACtD,CAAC;QAEM,gCAAgC;YACnC,IAAI,CAAC,eAAe,CAAC,IAAI,qCAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,eAAe,CAAC,IAAI,8CAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,CAAC,IAAI,gDAA0B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,CAAC;QAEM,6BAA6B;YAChC,IAAI,CAAC,eAAe,CAAC,IAAI,oCAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,CAAC,IAAI,wCAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,CAAC;QAEM,wBAAwB;YAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,0BAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;;IArFL,oDAsFC;IApFU,qCAAgB,GAAG,CAAC,MAAW,EAAE,KAAgC,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC"}
@@ -1,23 +1,19 @@
1
- import type * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
2
- import { MonacoCommands } from './monaco-commands';
3
- import { MonacoLanguages } from "./monaco-languages";
4
1
  import { MonacoWorkspace } from "./monaco-workspace";
5
2
  import { ConsoleWindow } from "./console-window";
6
- import { Services } from "./services";
7
- import { Disposable } from './disposable';
3
+ import { Services } from "vscode/services";
4
+ import * as vscode from 'vscode';
8
5
  export interface MonacoServices extends Services {
9
- commands: MonacoCommands;
10
- languages: MonacoLanguages;
11
6
  workspace: MonacoWorkspace;
12
7
  window: ConsoleWindow;
13
8
  }
14
9
  export declare namespace MonacoServices {
15
10
  interface Options {
16
- rootUri?: string;
11
+ workspaceFolders?: vscode.WorkspaceFolder[];
12
+ rootPath?: string;
17
13
  }
18
14
  type Provider = () => MonacoServices;
19
- function create(_monaco: typeof monaco, options?: Options): MonacoServices;
20
- function install(_monaco: typeof monaco, options?: Options): Disposable;
15
+ function create(options?: Options): MonacoServices;
16
+ function install(options?: Options): vscode.Disposable;
21
17
  function get(): MonacoServices;
22
18
  }
23
19
  //# sourceMappingURL=monaco-services.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"monaco-services.d.ts","sourceRoot":"","sources":["../../src/monaco-services.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,wCAAwC,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAwB,MAAM,cAAc,CAAC;AAEhE,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC5C,QAAQ,EAAE,cAAc,CAAA;IACxB,SAAS,EAAE,eAAe,CAAA;IAC1B,SAAS,EAAE,eAAe,CAAA;IAC1B,MAAM,EAAE,aAAa,CAAA;CACxB;AACD,yBAAiB,cAAc,CAAC;IAC5B,UAAiB,OAAO;QACpB,OAAO,CAAC,EAAE,MAAM,CAAA;KACnB;IACD,KAAY,QAAQ,GAAG,MAAM,cAAc,CAAC;IAC5C,SAAgB,MAAM,CAAC,OAAO,EAAE,OAAO,MAAM,EAAE,OAAO,GAAE,OAAY,GAAG,cAAc,CASpF;IACD,SAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,MAAM,EAAE,OAAO,GAAE,OAAY,GAAG,UAAU,CAQjF;IACD,SAAgB,GAAG,IAAI,cAAc,CAEpC;CACJ"}
1
+ {"version":3,"file":"monaco-services.d.ts","sourceRoot":"","sources":["../../src/monaco-services.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAEhC,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC5C,SAAS,EAAE,eAAe,CAAA;IAC1B,MAAM,EAAE,aAAa,CAAA;CACxB;AACD,yBAAiB,cAAc,CAAC;IAC5B,UAAiB,OAAO;QACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,eAAe,EAAE,CAAA;QAC3C,QAAQ,CAAC,EAAE,MAAM,CAAA;KACpB;IACD,KAAY,QAAQ,GAAG,MAAM,cAAc,CAAC;IAC5C,SAAgB,MAAM,CAAC,OAAO,GAAE,OAAY,GAAG,cAAc,CAK5D;IACD,SAAgB,OAAO,CAAC,OAAO,GAAE,OAAY,GAAG,MAAM,CAAC,UAAU,CAGhE;IACD,SAAgB,GAAG,IAAI,cAAc,CAEpC;CACJ"}
@@ -1,26 +1,19 @@
1
- define(["require", "exports", "./monaco-converter", "./monaco-commands", "./monaco-languages", "./monaco-workspace", "./console-window", "./services", "./disposable"], function (require, exports, monaco_converter_1, monaco_commands_1, monaco_languages_1, monaco_workspace_1, console_window_1, services_1, disposable_1) {
1
+ define(["require", "exports", "./monaco-workspace", "./console-window", "vscode/services"], function (require, exports, monaco_workspace_1, console_window_1, services_1) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.MonacoServices = void 0;
5
5
  var MonacoServices;
6
6
  (function (MonacoServices) {
7
- function create(_monaco, options = {}) {
8
- const m2p = new monaco_converter_1.MonacoToProtocolConverter(_monaco);
9
- const p2m = new monaco_converter_1.ProtocolToMonacoConverter(_monaco);
7
+ function create(options = {}) {
10
8
  return {
11
- commands: new monaco_commands_1.MonacoCommands(_monaco),
12
- languages: new monaco_languages_1.MonacoLanguages(_monaco, p2m, m2p),
13
- workspace: new monaco_workspace_1.MonacoWorkspace(_monaco, p2m, m2p, options.rootUri),
9
+ workspace: new monaco_workspace_1.MonacoWorkspace(options.workspaceFolders, options.rootPath),
14
10
  window: new console_window_1.ConsoleWindow()
15
11
  };
16
12
  }
17
13
  MonacoServices.create = create;
18
- function install(_monaco, options = {}) {
19
- const disposableCollection = new disposable_1.DisposableCollection();
20
- const services = create(_monaco, options);
21
- disposableCollection.push(services.workspace);
22
- disposableCollection.push(services_1.Services.install(services));
23
- return disposableCollection;
14
+ function install(options = {}) {
15
+ const services = create(options);
16
+ return services_1.Services.install(services);
24
17
  }
25
18
  MonacoServices.install = install;
26
19
  function get() {
@@ -1 +1 @@
1
- {"version":3,"file":"monaco-services.js","sourceRoot":"","sources":["../../src/monaco-services.ts"],"names":[],"mappings":";;;;IAmBA,IAAiB,cAAc,CA2B9B;IA3BD,WAAiB,cAAc;QAK3B,SAAgB,MAAM,CAAC,OAAsB,EAAE,UAAmB,EAAE;YAChE,MAAM,GAAG,GAAG,IAAI,4CAAyB,CAAC,OAAO,CAAC,CAAC;YACnD,MAAM,GAAG,GAAG,IAAI,4CAAyB,CAAC,OAAO,CAAC,CAAC;YACnD,OAAO;gBACH,QAAQ,EAAE,IAAI,gCAAc,CAAC,OAAO,CAAC;gBACrC,SAAS,EAAE,IAAI,kCAAe,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC;gBACjD,SAAS,EAAE,IAAI,kCAAe,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;gBAClE,MAAM,EAAE,IAAI,8BAAa,EAAE;aAC9B,CAAA;QACL,CAAC;QATe,qBAAM,SASrB,CAAA;QACD,SAAgB,OAAO,CAAC,OAAsB,EAAE,UAAmB,EAAE;YACjE,MAAM,oBAAoB,GAAG,IAAI,iCAAoB,EAAE,CAAA;YAEvD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1C,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YAC7C,oBAAoB,CAAC,IAAI,CAAC,mBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEtD,OAAO,oBAAoB,CAAC;QAChC,CAAC;QARe,sBAAO,UAQtB,CAAA;QACD,SAAgB,GAAG;YACf,OAAO,mBAAQ,CAAC,GAAG,EAAoB,CAAC;QAC5C,CAAC;QAFe,kBAAG,MAElB,CAAA;IACL,CAAC,EA3BgB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QA2B9B"}
1
+ {"version":3,"file":"monaco-services.js","sourceRoot":"","sources":["../../src/monaco-services.ts"],"names":[],"mappings":";;;;IAaA,IAAiB,cAAc,CAmB9B;IAnBD,WAAiB,cAAc;QAM3B,SAAgB,MAAM,CAAC,UAAmB,EAAE;YACxC,OAAO;gBACH,SAAS,EAAE,IAAI,kCAAe,CAAC,OAAO,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC;gBAC1E,MAAM,EAAE,IAAI,8BAAa,EAAE;aAC9B,CAAA;QACL,CAAC;QALe,qBAAM,SAKrB,CAAA;QACD,SAAgB,OAAO,CAAC,UAAmB,EAAE;YACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,mBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAHe,sBAAO,UAGtB,CAAA;QACD,SAAgB,GAAG;YACf,OAAO,mBAAQ,CAAC,GAAG,EAAoB,CAAC;QAC5C,CAAC;QAFe,kBAAG,MAElB,CAAA;IACL,CAAC,EAnBgB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAmB9B"}
@@ -1,30 +1,8 @@
1
- import type * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
2
- import { MonacoToProtocolConverter, ProtocolToMonacoConverter } from './monaco-converter';
3
- import { Workspace, WorkspaceEdit, TextDocumentDidChangeEvent, Event, Emitter, Disposable } from './services';
4
- import { TextDocument } from 'vscode-languageserver-textdocument';
5
- import { DisposableCollection } from './disposable';
6
- export declare class MonacoWorkspace implements Workspace, Disposable {
7
- protected readonly _monaco: typeof monaco;
8
- protected readonly p2m: ProtocolToMonacoConverter;
9
- protected readonly m2p: MonacoToProtocolConverter;
10
- protected _rootUri: string | null;
11
- protected readonly disposableCollection: DisposableCollection;
12
- protected readonly documents: Map<string, TextDocument>;
13
- protected readonly documentDisposables: Map<string, Disposable>;
14
- protected readonly onDidOpenTextDocumentEmitter: Emitter<TextDocument>;
15
- protected readonly onDidCloseTextDocumentEmitter: Emitter<TextDocument>;
16
- protected readonly onDidChangeTextDocumentEmitter: Emitter<TextDocumentDidChangeEvent>;
17
- constructor(_monaco: typeof monaco, p2m: ProtocolToMonacoConverter, m2p: MonacoToProtocolConverter, _rootUri?: string | null);
18
- dispose(): void;
19
- get rootUri(): string | null;
20
- protected removeModel(model: monaco.editor.IModel): void;
21
- protected addModel(model: monaco.editor.IModel): void;
22
- protected onDidChangeContent(uri: string, model: monaco.editor.IModel, event: monaco.editor.IModelContentChangedEvent): void;
23
- protected setModel(uri: string, model: monaco.editor.IModel): TextDocument;
24
- get textDocuments(): TextDocument[];
25
- get onDidOpenTextDocument(): Event<TextDocument>;
26
- get onDidCloseTextDocument(): Event<TextDocument>;
27
- get onDidChangeTextDocument(): Event<TextDocumentDidChangeEvent>;
28
- applyEdit(workspaceEdit: WorkspaceEdit): Promise<boolean>;
1
+ import * as vscode from 'vscode';
2
+ import { Workspace } from 'vscode/services';
3
+ export declare class MonacoWorkspace implements Workspace {
4
+ readonly workspaceFolders?: vscode.WorkspaceFolder[] | undefined;
5
+ readonly rootPath?: string | undefined;
6
+ constructor(workspaceFolders?: vscode.WorkspaceFolder[] | undefined, rootPath?: string | undefined);
29
7
  }
30
8
  //# sourceMappingURL=monaco-workspace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"monaco-workspace.d.ts","sourceRoot":"","sources":["../../src/monaco-workspace.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,wCAAwC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,0BAA0B,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,qBAAa,eAAgB,YAAW,SAAS,EAAE,UAAU;IAUrD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM;IACzC,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,yBAAyB;IACjD,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,yBAAyB;IACjD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAXrC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,uBAA6B;IACpE,SAAS,CAAC,QAAQ,CAAC,SAAS,4BAAmC;IAC/D,SAAS,CAAC,QAAQ,CAAC,mBAAmB,0BAAiC;IACvE,SAAS,CAAC,QAAQ,CAAC,4BAA4B,wBAA+B;IAC9E,SAAS,CAAC,QAAQ,CAAC,6BAA6B,wBAA+B;IAC/E,SAAS,CAAC,QAAQ,CAAC,8BAA8B,sCAA6C;gBAGvE,OAAO,EAAE,OAAO,MAAM,EACtB,GAAG,EAAE,yBAAyB,EAC9B,GAAG,EAAE,yBAAyB,EACvC,QAAQ,GAAE,MAAM,GAAG,IAAW;IAa5C,OAAO,IAAI,IAAI;IAQf,IAAI,OAAO,kBAEV;IAED,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI;IAcxD,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI;IASrD,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,yBAAyB;IAiBrH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,YAAY;IAM1E,IAAI,aAAa,IAAI,YAAY,EAAE,CAElC;IAED,IAAI,qBAAqB,IAAI,KAAK,CAAC,YAAY,CAAC,CAE/C;IAED,IAAI,sBAAsB,IAAI,KAAK,CAAC,YAAY,CAAC,CAEhD;IAED,IAAI,uBAAuB,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAE/D;IAEM,SAAS,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAmDnE"}
1
+ {"version":3,"file":"monaco-workspace.d.ts","sourceRoot":"","sources":["../../src/monaco-workspace.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,qBAAa,eAAgB,YAAW,SAAS;aAEzB,gBAAgB,CAAC;aACjB,QAAQ,CAAC;gBADT,gBAAgB,CAAC,sCAA0B,EAC3C,QAAQ,CAAC,oBAAoB;CAGpD"}
@@ -1,128 +1,11 @@
1
- define(["require", "exports", "./services", "vscode-languageserver-textdocument", "./disposable"], function (require, exports, services_1, vscode_languageserver_textdocument_1, disposable_1) {
1
+ define(["require", "exports"], function (require, exports) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.MonacoWorkspace = void 0;
5
5
  class MonacoWorkspace {
6
- constructor(_monaco, p2m, m2p, _rootUri = null) {
7
- this._monaco = _monaco;
8
- this.p2m = p2m;
9
- this.m2p = m2p;
10
- this._rootUri = _rootUri;
11
- this.disposableCollection = new disposable_1.DisposableCollection();
12
- this.documents = new Map();
13
- this.documentDisposables = new Map();
14
- this.onDidOpenTextDocumentEmitter = new services_1.Emitter();
15
- this.onDidCloseTextDocumentEmitter = new services_1.Emitter();
16
- this.onDidChangeTextDocumentEmitter = new services_1.Emitter();
17
- for (const model of this._monaco.editor.getModels()) {
18
- this.addModel(model);
19
- }
20
- this.disposableCollection.push(this._monaco.editor.onDidCreateModel(model => this.addModel(model)));
21
- this.disposableCollection.push(this._monaco.editor.onWillDisposeModel(model => this.removeModel(model)));
22
- this.disposableCollection.push(this._monaco.editor.onDidChangeModelLanguage((event) => {
23
- this.removeModel(event.model);
24
- this.addModel(event.model);
25
- }));
26
- }
27
- dispose() {
28
- this.disposableCollection.dispose();
29
- for (const model of this._monaco.editor.getModels()) {
30
- this.removeModel(model);
31
- }
32
- }
33
- get rootUri() {
34
- return this._rootUri;
35
- }
36
- removeModel(model) {
37
- const uri = model.uri.toString();
38
- const document = this.documents.get(uri);
39
- if (document) {
40
- this.documents.delete(uri);
41
- this.onDidCloseTextDocumentEmitter.fire(document);
42
- }
43
- const disposable = this.documentDisposables.get(uri);
44
- if (disposable) {
45
- disposable.dispose();
46
- this.documentDisposables.delete(uri);
47
- }
48
- }
49
- addModel(model) {
50
- const uri = model.uri.toString();
51
- const document = this.setModel(uri, model);
52
- this.onDidOpenTextDocumentEmitter.fire(document);
53
- this.documentDisposables.set(uri, model.onDidChangeContent(event => this.onDidChangeContent(uri, model, event)));
54
- }
55
- onDidChangeContent(uri, model, event) {
56
- const textDocument = this.setModel(uri, model);
57
- const contentChanges = [];
58
- for (const change of event.changes) {
59
- const range = this.m2p.asRange(change.range);
60
- const rangeLength = change.rangeLength;
61
- const text = change.text;
62
- contentChanges.push({ range, rangeLength, text });
63
- }
64
- this.onDidChangeTextDocumentEmitter.fire({
65
- textDocument,
66
- contentChanges,
67
- isRedoing: event.isRedoing,
68
- isUndoing: event.isUndoing
69
- });
70
- }
71
- setModel(uri, model) {
72
- const document = vscode_languageserver_textdocument_1.TextDocument.create(uri, model.getLanguageId(), model.getVersionId(), model.getValue());
73
- this.documents.set(uri, document);
74
- return document;
75
- }
76
- get textDocuments() {
77
- return Array.from(this.documents.values());
78
- }
79
- get onDidOpenTextDocument() {
80
- return this.onDidOpenTextDocumentEmitter.event;
81
- }
82
- get onDidCloseTextDocument() {
83
- return this.onDidCloseTextDocumentEmitter.event;
84
- }
85
- get onDidChangeTextDocument() {
86
- return this.onDidChangeTextDocumentEmitter.event;
87
- }
88
- applyEdit(workspaceEdit) {
89
- const edit = this.p2m.asWorkspaceEdit(workspaceEdit);
90
- // Collect all referenced models
91
- const models = edit.edits ? edit.edits.reduce((acc, currentEdit) => {
92
- const textEdit = currentEdit;
93
- acc[textEdit.resource.toString()] = this._monaco.editor.getModel(textEdit.resource);
94
- return acc;
95
- }, {}) : {};
96
- // If any of the models do not exist, refuse to apply the edit.
97
- if (!Object.keys(models).map(uri => models[uri]).every(model => !!model)) {
98
- return Promise.resolve(false);
99
- }
100
- // Group edits by resource so we can batch them when applying
101
- const editsByResource = edit.edits ? edit.edits.reduce((acc, currentEdit) => {
102
- const textEdit = currentEdit;
103
- const uri = textEdit.resource.toString();
104
- if (!(uri in acc)) {
105
- acc[uri] = [];
106
- }
107
- acc[uri].push({
108
- range: this._monaco.Range.lift(textEdit.edit.range),
109
- text: textEdit.edit.text,
110
- });
111
- return acc;
112
- }, {}) : {};
113
- // Apply edits for each resource
114
- Object.keys(editsByResource).forEach(uri => {
115
- models[uri].pushEditOperations([], // Do not try and preserve editor selections.
116
- editsByResource[uri].map(resourceEdit => {
117
- return {
118
- identifier: { major: 1, minor: 0 },
119
- range: resourceEdit.range,
120
- text: resourceEdit.text,
121
- forceMoveMarkers: true,
122
- };
123
- }), () => []);
124
- });
125
- return Promise.resolve(true);
6
+ constructor(workspaceFolders, rootPath) {
7
+ this.workspaceFolders = workspaceFolders;
8
+ this.rootPath = rootPath;
126
9
  }
127
10
  }
128
11
  exports.MonacoWorkspace = MonacoWorkspace;