monaco-languageclient 2.0.1 → 2.0.2

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 (59) hide show
  1. package/CHANGELOG.md +120 -101
  2. package/lib/index.d.ts +1 -1
  3. package/lib/index.d.ts.map +1 -1
  4. package/lib/index.js +1 -1
  5. package/lib/index.js.map +1 -1
  6. package/package.json +12 -19
  7. package/src/index.ts +1 -1
  8. package/dist/amd/console-window.d.ts +0 -8
  9. package/dist/amd/console-window.d.ts.map +0 -1
  10. package/dist/amd/console-window.js +0 -59
  11. package/dist/amd/console-window.js.map +0 -1
  12. package/dist/amd/disposable.d.ts +0 -8
  13. package/dist/amd/disposable.d.ts.map +0 -1
  14. package/dist/amd/disposable.js +0 -34
  15. package/dist/amd/disposable.js.map +0 -1
  16. package/dist/amd/index.d.ts +0 -9
  17. package/dist/amd/index.d.ts.map +0 -1
  18. package/dist/amd/index.js +0 -21
  19. package/dist/amd/index.js.map +0 -1
  20. package/dist/amd/monaco-converter.d.ts +0 -234
  21. package/dist/amd/monaco-converter.d.ts.map +0 -1
  22. package/dist/amd/monaco-converter.js +0 -1195
  23. package/dist/amd/monaco-converter.js.map +0 -1
  24. package/dist/amd/monaco-language-client.d.ts +0 -27
  25. package/dist/amd/monaco-language-client.d.ts.map +0 -1
  26. package/dist/amd/monaco-language-client.js +0 -96
  27. package/dist/amd/monaco-language-client.js.map +0 -1
  28. package/dist/amd/monaco-services.d.ts +0 -19
  29. package/dist/amd/monaco-services.d.ts.map +0 -1
  30. package/dist/amd/monaco-services.js +0 -25
  31. package/dist/amd/monaco-services.js.map +0 -1
  32. package/dist/amd/monaco-workspace.d.ts +0 -8
  33. package/dist/amd/monaco-workspace.d.ts.map +0 -1
  34. package/dist/amd/monaco-workspace.js +0 -13
  35. package/dist/amd/monaco-workspace.js.map +0 -1
  36. package/dist/cjs/console-window.d.ts +0 -8
  37. package/dist/cjs/console-window.d.ts.map +0 -1
  38. package/dist/cjs/console-window.js +0 -62
  39. package/dist/cjs/console-window.js.map +0 -1
  40. package/dist/cjs/disposable.d.ts +0 -8
  41. package/dist/cjs/disposable.d.ts.map +0 -1
  42. package/dist/cjs/disposable.js +0 -33
  43. package/dist/cjs/disposable.js.map +0 -1
  44. package/dist/cjs/index.d.ts +0 -9
  45. package/dist/cjs/index.d.ts.map +0 -1
  46. package/dist/cjs/index.js +0 -21
  47. package/dist/cjs/index.js.map +0 -1
  48. package/dist/cjs/monaco-language-client.d.ts +0 -27
  49. package/dist/cjs/monaco-language-client.d.ts.map +0 -1
  50. package/dist/cjs/monaco-language-client.js +0 -123
  51. package/dist/cjs/monaco-language-client.js.map +0 -1
  52. package/dist/cjs/monaco-services.d.ts +0 -19
  53. package/dist/cjs/monaco-services.d.ts.map +0 -1
  54. package/dist/cjs/monaco-services.js +0 -30
  55. package/dist/cjs/monaco-services.js.map +0 -1
  56. package/dist/cjs/monaco-workspace.d.ts +0 -8
  57. package/dist/cjs/monaco-workspace.d.ts.map +0 -1
  58. package/dist/cjs/monaco-workspace.js +0 -11
  59. package/dist/cjs/monaco-workspace.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -2,108 +2,127 @@
2
2
 
3
3
  All notable changes to this npm module are documented in this file.
4
4
 
5
+ ## 2.x.x BREAKING CHANGES
6
+
7
+ v2+ of this library is dependant on [monaco-vscode-api](https://github.com/CodinGame/monaco-vscode-api) which removed all vscode-api/-compatibility related code. The change has mostly no effect on end users code, but it there two things that need to be taken into account:
8
+
9
+ - If you use Webpack or vite for bundling, you have to remove the `vscode` alias entry from the configuration
10
+ - If you customized monaco services, then you have to adjust them to the changed interface
11
+
12
+ The npm packages exports the following:
13
+
14
+ - `monaco-languagclient`
15
+ - `monaco-languagclient/monaco-converters`
16
+ - `monaco-languagclient/monaco-converters/cjs`
17
+
18
+ ## [2.0.2] - 2022-06-22
19
+
20
+ - Align all tsconfigs and vscode-ws-jsonrpc provides esm/cjs #[390](https://github.com/TypeFox/monaco-languageclient/pull/390)
21
+ - Use `typesVersions` in **package.json*- for proper TypeScript import support (used in node example)
22
+ - Remove AMD and CJS builds adn exports of the main library. Only `monaco-converters` and `monaco-converters/cjs` are left
23
+
5
24
  ## [2.0.1] - 2022-06-21
6
25
 
7
- * No cjs fragments to export #[388](https://github.com/TypeFox/monaco-languageclient/issues/388)
26
+ - No cjs fragments to export #[388](https://github.com/TypeFox/monaco-languageclient/issues/388)
8
27
 
9
28
  ## [2.0.0] - 2022-06-21
10
29
 
11
- * Use monaco vscode api #[373](https://github.com/TypeFox/monaco-languageclient/pull/373)
12
- * Merge monaco-jsonrpc and vscode-ws-jsonrpc into new sub package #[383](https://github.com/TypeFox/monaco-languageclient/pull/383)
13
- * Integrate eslint with eslint-config-standard #[385](https://github.com/TypeFox/monaco-languageclient/pull/385)
14
- * Add example with client and server both running in the browser #[386](https://github.com/TypeFox/monaco-languageclient/pull/386)
30
+ - Use monaco vscode api #[373](https://github.com/TypeFox/monaco-languageclient/pull/373)
31
+ - Merge monaco-jsonrpc and vscode-ws-jsonrpc into new sub package #[383](https://github.com/TypeFox/monaco-languageclient/pull/383)
32
+ - Integrate eslint with eslint-config-standard #[385](https://github.com/TypeFox/monaco-languageclient/pull/385)
33
+ - Add example with client and server both running in the browser #[386](https://github.com/TypeFox/monaco-languageclient/pull/386)
15
34
 
16
35
  ## [1.1.0] - 2022-06-08
17
36
 
18
- * feat(package.json): export monaco-converter #[376](https://github.com/TypeFox/monaco-languageclient/pull/376)
19
- * Clean unregistered featured from registration requests #[372](https://github.com/TypeFox/monaco-languageclient/pull/372)
20
- * Introduce global engines entries for node and npm #[370](https://github.com/TypeFox/monaco-languageclient/pull/370)
21
- * Implement missing 3.17 api #[364](https://github.com/TypeFox/monaco-languageclient/pull/364)
22
- * Remove unsupported features #[362](https://github.com/TypeFox/monaco-languageclient/pull/362)
23
- * Do not include node code #[361](https://github.com/TypeFox/monaco-languageclient/pull/361)
37
+ - feat(package.json): export monaco-converter #[376](https://github.com/TypeFox/monaco-languageclient/pull/376)
38
+ - Clean unregistered featured from registration requests #[372](https://github.com/TypeFox/monaco-languageclient/pull/372)
39
+ - Introduce global engines entries for node and npm #[370](https://github.com/TypeFox/monaco-languageclient/pull/370)
40
+ - Implement missing 3.17 api #[364](https://github.com/TypeFox/monaco-languageclient/pull/364)
41
+ - Remove unsupported features #[362](https://github.com/TypeFox/monaco-languageclient/pull/362)
42
+ - Do not include node code #[361](https://github.com/TypeFox/monaco-languageclient/pull/361)
24
43
 
25
44
  ## [1.0.1] - 2022-05-21
26
45
 
27
- * Add some typing on the code/proto converters [#359](https://github.com/TypeFox/monaco-languageclient/pull/359)
28
- * Fix to vite 2.9.6 for now
46
+ - Add some typing on the code/proto converters [#359](https://github.com/TypeFox/monaco-languageclient/pull/359)
47
+ - Fix to vite 2.9.6 for now
29
48
 
30
49
  ## [1.0.0] - 2022-05-20
31
50
 
32
- * Switch to npm workspace and vite and thereby drop yarn, lerna and webpack [#340](https://github.com/TypeFox/monaco-languageclient/pull/340)
33
- * Restructure project: All code is moved to packages directory
34
- * Update and clean-up all dependencies
35
- * Use monaco-editor in examples instead of monaco-editor-core
36
- * README was fully revised
37
- * Bugfixes resulting from this:
38
- * fix: Fix vscode-compatibility using webpack [#342](https://github.com/TypeFox/monaco-languageclient/pull/342)
39
- * Use ts-node for example [#344](https://github.com/TypeFox/monaco-languageclient/pull/344)
40
- * Update README.md [#345](https://github.com/TypeFox/monaco-languageclient/pull/345)
41
- * Integrate webpack client example as second option [#353](https://github.com/TypeFox/monaco-languageclient/pull/353)
42
- * Make monaco workspace disposable [#330](https://github.com/TypeFox/monaco-languageclient/pull/330)
43
- * Update the protocol to version 3.17 [#350](https://github.com/TypeFox/monaco-languageclient/pull/350)
44
- * Fix code action diagnostics [#352](https://github.com/TypeFox/monaco-languageclient/pull/352)
45
- * Fix resolving, never overwrite by undefined [#354](https://github.com/TypeFox/monaco-languageclient/pull/354)
46
- * The `connectionProvider` now expects a `MessageTransports` instead of a `MessageConnection`
47
- * Bump version to 1.0.0
51
+ - Switch to npm workspace and vite and thereby drop yarn, lerna and webpack [#340](https://github.com/TypeFox/monaco-languageclient/pull/340)
52
+ - Restructure project: All code is moved to packages directory
53
+ - Update and clean-up all dependencies
54
+ - Use monaco-editor in examples instead of monaco-editor-core
55
+ - README was fully revised
56
+ - Bugfixes resulting from this:
57
+ - fix: Fix vscode-compatibility using webpack [#342](https://github.com/TypeFox/monaco-languageclient/pull/342)
58
+ - Use ts-node for example [#344](https://github.com/TypeFox/monaco-languageclient/pull/344)
59
+ - Update README.md [#345](https://github.com/TypeFox/monaco-languageclient/pull/345)
60
+ - Integrate webpack client example as second option [#353](https://github.com/TypeFox/monaco-languageclient/pull/353)
61
+ - Make monaco workspace disposable [#330](https://github.com/TypeFox/monaco-languageclient/pull/330)
62
+ - Update the protocol to version 3.17 [#350](https://github.com/TypeFox/monaco-languageclient/pull/350)
63
+ - Fix code action diagnostics [#352](https://github.com/TypeFox/monaco-languageclient/pull/352)
64
+ - Fix resolving, never overwrite by undefined [#354](https://github.com/TypeFox/monaco-languageclient/pull/354)
65
+ - The `connectionProvider` now expects a `MessageTransports` instead of a `MessageConnection`
66
+ - Bump version to 1.0.0
48
67
 
49
68
  ## [0.18.1] - 2022-03-21
50
69
 
51
- * Fix vscode api enum [#333](https://github.com/TypeFox/monaco-languageclient/pull/333)
70
+ - Fix vscode api enum [#333](https://github.com/TypeFox/monaco-languageclient/pull/333)
52
71
 
53
72
  ## [0.18.0] - 2022-03-15
54
73
 
55
- * Update to monaco 0.33 & vscode 1.65 [#329](https://github.com/TypeFox/monaco-languageclient/pull/329)
56
- * Updated minor versions of vscode-languageserver-textdocument and vscode-uri and removed engines entry from client
74
+ - Update to monaco 0.33 & vscode 1.65 [#329](https://github.com/TypeFox/monaco-languageclient/pull/329)
75
+ - Updated minor versions of vscode-languageserver-textdocument and vscode-uri and removed engines entry from client
57
76
 
58
77
  ## [0.17.4] - 2022-02-22 (2022-03-08)
59
78
 
60
- * First released as @codingame/monaco-languageclient@0.17.4 on specified date
61
- * Release of monaco-languageclient@0.17.4 was made available on date in brackets
62
- * Register providers using the document selector directly [#317](https://github.com/TypeFox/monaco-languageclient/pull/317)
79
+ - First released as @codingame/monaco-languageclient@0.17.4 on specified date
80
+ - Release of monaco-languageclient@0.17.4 was made available on date in brackets
81
+ - Register providers using the document selector directly [#317](https://github.com/TypeFox/monaco-languageclient/pull/317)
63
82
 
64
83
  ## [0.17.3] - 2021-12-21 (2022-02-23)
65
84
 
66
- * First released as @codingame/monaco-languageclient@0.17.3 on specified date
67
- * Release of monaco-languageclient@0.17.3 was made available on date in brackets
68
- * Releases `0.17.1` and `0.17.2` were mistakes
69
- * Fix various issues: outdated api, missing stuff in compatibility-api... [#309](https://github.com/TypeFox/monaco-languageclient/pull/309)
85
+ - First released as @codingame/monaco-languageclient@0.17.3 on specified date
86
+ - Release of monaco-languageclient@0.17.3 was made available on date in brackets
87
+ - Releases `0.17.1` and `0.17.2` were mistakes
88
+ - Fix various issues: outdated api, missing stuff in compatibility-api... [#309](https://github.com/TypeFox/monaco-languageclient/pull/309)
70
89
 
71
90
  ## [0.17.0] - 2021-11-10 (2022-02-23)
72
91
 
73
- * First released as @codingame/monaco-languageclient@0.17.0 on specified date
74
- * Release of monaco-languageclient@0.17.0 was made available on date in brackets
75
- * Update to monaco 0.30.1 [#301](https://github.com/TypeFox/monaco-languageclient/pull/301)
92
+ - First released as @codingame/monaco-languageclient@0.17.0 on specified date
93
+ - Release of monaco-languageclient@0.17.0 was made available on date in brackets
94
+ - Update to monaco 0.30.1 [#301](https://github.com/TypeFox/monaco-languageclient/pull/301)
76
95
 
77
96
  ## [0.16.1] - 2021-11-03 (2022-02-23)
78
97
 
79
- * First released as @codingame/monaco-languageclient@0.16.1 on specified date
80
- * Release of monaco-languageclient@0.16.1 was made available on date in brackets
81
- * Fix dropped tags in Diagnostic -> IMarkerData [#297](https://github.com/TypeFox/monaco-languageclient/pull/297)
82
- * Missing protocol convention [#298](https://github.com/TypeFox/monaco-languageclient/pull/298)
98
+ - First released as @codingame/monaco-languageclient@0.16.1 on specified date
99
+ - Release of monaco-languageclient@0.16.1 was made available on date in brackets
100
+ - Fix dropped tags in Diagnostic -> IMarkerData [#297](https://github.com/TypeFox/monaco-languageclient/pull/297)
101
+ - Missing protocol convention [#298](https://github.com/TypeFox/monaco-languageclient/pull/298)
83
102
 
84
103
  ## [0.16.0] - 2021-10-11 (2022-02-23)
85
104
 
86
- * First released as @codingame/monaco-languageclient@0.16.0 on specified date
87
- * Release of monaco-languageclient@0.15.1 was made available on date in brackets
88
- * Updated `monaco-editor-core` version to `0.29.0`
89
- * Async resolve code actions [#294](https://github.com/TypeFox/monaco-languageclient/pull/294)
105
+ - First released as @codingame/monaco-languageclient@0.16.0 on specified date
106
+ - Release of monaco-languageclient@0.15.1 was made available on date in brackets
107
+ - Updated `monaco-editor-core` version to `0.29.0`
108
+ - Async resolve code actions [#294](https://github.com/TypeFox/monaco-languageclient/pull/294)
90
109
 
91
110
  ## [0.15.1] - 2021-09-20 (2022-02-23)
92
111
 
93
- * First released as @codingame/monaco-languageclient@0.15.1 on specified date
94
- * Release of monaco-languageclient@0.15.1 was made available on date in brackets
95
- * Resolve code actions [#290](https://github.com/TypeFox/monaco-languageclient/pull/290)
96
- * Release `0.15.0` was skipped
112
+ - First released as @codingame/monaco-languageclient@0.15.1 on specified date
113
+ - Release of monaco-languageclient@0.15.1 was made available on date in brackets
114
+ - Resolve code actions [#290](https://github.com/TypeFox/monaco-languageclient/pull/290)
115
+ - Release `0.15.0` was skipped
97
116
 
98
117
  ## [0.14.0] - 2021-08-05 (2022-02-23)
99
118
 
100
- * First released as @codingame/monaco-languageclient@0.14.0 on specified date
101
- * Release of monaco-languageclient@0.14.0 was made available on date in brackets
102
- * Upgraded to Monaco 0.22.3
119
+ - First released as @codingame/monaco-languageclient@0.14.0 on specified date
120
+ - Release of monaco-languageclient@0.14.0 was made available on date in brackets
121
+ - Upgraded to Monaco 0.22.3
103
122
 
104
123
  ### Breaking changes
105
124
 
106
- * `MonacoServices` now takes the `monaco` object instead of the `CommandRegistry`
125
+ - `MonacoServices` now takes the `monaco` object instead of the `CommandRegistry`
107
126
 
108
127
  before:
109
128
 
@@ -114,12 +133,12 @@ MonacoServices.install(require('monaco-editor-core/esm/vs/platform/commands/comm
114
133
  after:
115
134
 
116
135
  ```typescript
117
- import * as monaco from 'monaco-editor-core'
136
+ import - as monaco from 'monaco-editor-core'
118
137
 
119
138
  MonacoServices.install(monaco);
120
139
  ```
121
140
 
122
- * `MonacoServices` should now be installed using the command registry instead of the editor
141
+ - `MonacoServices` should now be installed using the command registry instead of the editor
123
142
 
124
143
  before:
125
144
 
@@ -136,33 +155,33 @@ MonacoServices.install(require('monaco-editor-core/esm/vs/platform/commands/comm
136
155
 
137
156
  ## [0.13.0] - 2020-04-06
138
157
 
139
- * Upgraded to vscode-uri 2.x [741a3df](https://github.com/TypeFox/monaco-languageclient/commit/741a3dfb865eff55c3dcc4a51f74759921d3f2a5)
158
+ - Upgraded to vscode-uri 2.x [741a3df](https://github.com/TypeFox/monaco-languageclient/commit/741a3dfb865eff55c3dcc4a51f74759921d3f2a5)
140
159
 
141
160
  ## [0.12.0] - 2020-03-19
142
161
 
143
- * Upgraded to Monaco 0.19.1 [#199](https://github.com/TypeFox/monaco-languageclient/pull/199)
162
+ - Upgraded to Monaco 0.19.1 [#199](https://github.com/TypeFox/monaco-languageclient/pull/199)
144
163
 
145
164
  ## [0.11.0] - 2020-01-23
146
165
 
147
- * Upgraded to Monaco 0.18.1 [#178](https://github.com/TypeFox/monaco-languageclient/pull/178)
166
+ - Upgraded to Monaco 0.18.1 [#178](https://github.com/TypeFox/monaco-languageclient/pull/178)
148
167
 
149
168
  ## [0.10.2] - 2019-09-10
150
169
 
151
- * register language features regardless whether a language is registered (<https://github.com/TypeFox/monaco-languageclient/commit/0559be6c20744182ede699f594fdbe6d9f3d7145>)
170
+ - register language features regardless whether a language is registered (<https://github.com/TypeFox/monaco-languageclient/commit/0559be6c20744182ede699f594fdbe6d9f3d7145>)
152
171
 
153
172
  ## [0.10.1] - 2019-09-04
154
173
 
155
- * aligned CompletionItemKind with Monaco 0.17.0 [#174](https://github.com/TypeFox/monaco-languageclient/pull/174)
174
+ - aligned CompletionItemKind with Monaco 0.17.0 [#174](https://github.com/TypeFox/monaco-languageclient/pull/174)
156
175
 
157
176
  ## [0.10.0] - 2019-08-26
158
177
 
159
- * upgraded to LSP 5.3.0 and Monaco 0.17.0
178
+ - upgraded to LSP 5.3.0 and Monaco 0.17.0
160
179
 
161
180
  ### Breaking changes
162
181
 
163
182
  Switch to es6 from es5. For clients who cannot migrate to es6 please use babel to transpile Monaco and LSP to es5.
164
183
 
165
- * to configure babel wit webpack:
184
+ - to configure babel wit webpack:
166
185
 
167
186
  ```js
168
187
  {
@@ -189,31 +208,31 @@ Switch to es6 from es5. For clients who cannot migrate to es6 please use babel t
189
208
 
190
209
  ## [0.9.0] - 2018-09-06
191
210
 
192
- * use monaco-editor-core as a dev dependency to allow alternative implementations [#119](https://github.com/TypeFox/monaco-languageclient/pull/119)
211
+ - use monaco-editor-core as a dev dependency to allow alternative implementations [#119](https://github.com/TypeFox/monaco-languageclient/pull/119)
193
212
 
194
213
  ### Breaking changes
195
214
 
196
215
  Clients have to explicitly declare a dependency to `monaco-editor-core` or another package providing Monaco:
197
216
 
198
- * `monaco-editor-core` is tree shaked to get rid of unused VS Code's code.
199
- * [@typefox/monaco-editor-core](https://www.npmjs.com/package/@typefox/monaco-editor-core) is a not tree-shaked alternative.
217
+ - `monaco-editor-core` is tree shaked to get rid of unused VS Code's code.
218
+ - [@typefox/monaco-editor-core](https://www.npmjs.com/package/@typefox/monaco-editor-core) is a not tree-shaked alternative.
200
219
 
201
220
  ## [0.8.0] - 2018-09-04
202
221
 
203
- * updated dependency to Monaco 0.14.x, with adaptation for breaking changes from monaco [#107](https://github.com/TypeFox/monaco-languageclient/pull/107) - thanks to [@Twinside](https://github.com/Twinside)
204
- * ensure that SignatureHelp and SignatureHelp has non-null arrays [#112](https://github.com/TypeFox/monaco-languageclient/pull/112) - thanks to [@rcjsuen](https://github.com/rcjsuen)
222
+ - updated dependency to Monaco 0.14.x, with adaptation for breaking changes from monaco [#107](https://github.com/TypeFox/monaco-languageclient/pull/107) - thanks to [@Twinside](https://github.com/Twinside)
223
+ - ensure that SignatureHelp and SignatureHelp has non-null arrays [#112](https://github.com/TypeFox/monaco-languageclient/pull/112) - thanks to [@rcjsuen](https://github.com/rcjsuen)
205
224
 
206
225
  ## [0.7.3] - 2018-08-30
207
226
 
208
- * fixed folding ranges conversion - [12d8c91](https://github.com/TypeFox/monaco-languageclient/commit/12d8c91cf1676061c44d43e745b7500c77ea4a14)
209
- * implement `toJSON` for workspace configurations - [9e50a48](https://github.com/TypeFox/monaco-languageclient/commit/9e50a48addb474be66fa317684461976eda45192)
210
- * fixed markdown conversion [#103](https://github.com/TypeFox/monaco-languageclient/pull/103)
227
+ - fixed folding ranges conversion - [12d8c91](https://github.com/TypeFox/monaco-languageclient/commit/12d8c91cf1676061c44d43e745b7500c77ea4a14)
228
+ - implement `toJSON` for workspace configurations - [9e50a48](https://github.com/TypeFox/monaco-languageclient/commit/9e50a48addb474be66fa317684461976eda45192)
229
+ - fixed markdown conversion [#103](https://github.com/TypeFox/monaco-languageclient/pull/103)
211
230
 
212
231
  ## [0.7.2] - 2018-08-02
213
232
 
214
- * amd distribution ([#97](https://github.com/TypeFox/monaco-languageclient/pull/97)) - thanks to [@zewa666](https://github.com/zewa666)
215
- * updated dependency to Monaco 0.13.2 ([#100](https://github.com/TypeFox/monaco-languageclient/pull/100))
216
- * register providers only for languages matching the documentSelector ([#101](https://github.com/TypeFox/monaco-languageclient/pull/101)) - thanks to [@gins3000](https://github.com/gins3000)
233
+ - amd distribution ([#97](https://github.com/TypeFox/monaco-languageclient/pull/97)) - thanks to [@zewa666](https://github.com/zewa666)
234
+ - updated dependency to Monaco 0.13.2 ([#100](https://github.com/TypeFox/monaco-languageclient/pull/100))
235
+ - register providers only for languages matching the documentSelector ([#101](https://github.com/TypeFox/monaco-languageclient/pull/101)) - thanks to [@gins3000](https://github.com/gins3000)
217
236
 
218
237
  ## [0.7.0] - 2018-07-31
219
238
 
@@ -223,8 +242,8 @@ Updated to `vscode-languageclient` 4.4.0 to support LSP 3.10.0 features like hie
223
242
 
224
243
  In order to use `vscode-languageclient` directly the compatibility layer was implemented for subset of `vscode` APIs used by the client:
225
244
 
226
- * `vscode-compatibility` should be used as an implementation of `vscode` module at the runtime
227
- * to adjust module resolution with `webpack`:
245
+ - `vscode-compatibility` should be used as an implementation of `vscode` module at the runtime
246
+ - to adjust module resolution with `webpack`:
228
247
 
229
248
  ```js
230
249
  resolve: {
@@ -234,15 +253,15 @@ In order to use `vscode-languageclient` directly the compatibility layer was imp
234
253
  }
235
254
  ```
236
255
 
237
- * `register-vscode` should be required once to adjust module resolution with `Node.js`, for example to stub `vscode` APIs for Mocha tests:
256
+ - `register-vscode` should be required once to adjust module resolution with `Node.js`, for example to stub `vscode` APIs for Mocha tests:
238
257
 
239
258
  ```
240
259
  --require monaco-languageclient/lib/register-vscode
241
260
  ```
242
261
 
243
- * `MonacoLanguageClient` should be used instead of `BaseLanguageClient`
244
- * `MonacoServices` should be installed globally to be accessible for `vscode-compatibility` module, not per a language client
245
- * for the use case with a single standalone editor:
262
+ - `MonacoLanguageClient` should be used instead of `BaseLanguageClient`
263
+ - `MonacoServices` should be installed globally to be accessible for `vscode-compatibility` module, not per a language client
264
+ - for the use case with a single standalone editor:
246
265
 
247
266
  ```ts
248
267
  import { MonacoServices } from 'monaco-languageclient';
@@ -250,7 +269,7 @@ In order to use `vscode-languageclient` directly the compatibility layer was imp
250
269
  MonacoServices.install(editor);
251
270
  ```
252
271
 
253
- * to support sophisticated use cases one can install custom Monaco services:
272
+ - to support sophisticated use cases one can install custom Monaco services:
254
273
 
255
274
  ```ts
256
275
  import { MonacoServices, Services } from 'monaco-languageclient';
@@ -263,37 +282,37 @@ In order to use `vscode-languageclient` directly the compatibility layer was imp
263
282
 
264
283
  ## [0.6.0] - 2018-04-18
265
284
 
266
- * updated dependency to Monaco 0.12 ([#70](https://github.com/TypeFox/monaco-languageclient/pull/70))
267
- * support `CompletionItem`'s `additionalTextEdits` property ([#39](https://github.com/TypeFox/monaco-languageclient/issues/39))
268
- * convert `monaco.MarkerSeverity.Hint` values to `DiagnosticSeverity.Hint` ([#71](https://github.com/TypeFox/monaco-languageclient/pull/71))
285
+ - updated dependency to Monaco 0.12 ([#70](https://github.com/TypeFox/monaco-languageclient/pull/70))
286
+ - support `CompletionItem`'s `additionalTextEdits` property ([#39](https://github.com/TypeFox/monaco-languageclient/issues/39))
287
+ - convert `monaco.MarkerSeverity.Hint` values to `DiagnosticSeverity.Hint` ([#71](https://github.com/TypeFox/monaco-languageclient/pull/71))
269
288
 
270
289
  ## [0.4.0] - 2018-02-13
271
290
 
272
- * add support for `textDocument/documentLink` and `documentLink/resolve` ([#53](https://github.com/TypeFox/monaco-languageclient/issues/53))
273
- * state that `workspace/applyEdit` is supported in the capabilities ([#55](https://github.com/TypeFox/monaco-languageclient/pull/55))
274
- * state that versioned changes are supported in a `WorkspaceEdit` ([#56](https://github.com/TypeFox/monaco-languageclient/pull/56))
275
- * replaced `monaco-editor` with `monaco-editor-core` ([#58](https://github.com/TypeFox/monaco-languageclient/pull/58))
291
+ - add support for `textDocument/documentLink` and `documentLink/resolve` ([#53](https://github.com/TypeFox/monaco-languageclient/issues/53))
292
+ - state that `workspace/applyEdit` is supported in the capabilities ([#55](https://github.com/TypeFox/monaco-languageclient/pull/55))
293
+ - state that versioned changes are supported in a `WorkspaceEdit` ([#56](https://github.com/TypeFox/monaco-languageclient/pull/56))
294
+ - replaced `monaco-editor` with `monaco-editor-core` ([#58](https://github.com/TypeFox/monaco-languageclient/pull/58))
276
295
 
277
296
  ## [0.3.0] - 2018-02-08
278
297
 
279
- * fix handling of `codeLens/resolve` if no provider exists ([#46](https://github.com/TypeFox/monaco-languageclient/pull/46))
280
- * removed `monaco-editor-core` dependency, keeping only `monaco-editor` ([#42](https://github.com/TypeFox/monaco-languageclient/issues/42))
281
- * fix typings in `glob-to-regexp`([#49](https://github.com/TypeFox/monaco-languageclient/pull/49))
298
+ - fix handling of `codeLens/resolve` if no provider exists ([#46](https://github.com/TypeFox/monaco-languageclient/pull/46))
299
+ - removed `monaco-editor-core` dependency, keeping only `monaco-editor` ([#42](https://github.com/TypeFox/monaco-languageclient/issues/42))
300
+ - fix typings in `glob-to-regexp`([#49](https://github.com/TypeFox/monaco-languageclient/pull/49))
282
301
 
283
302
  ## [0.2.1] - 2018-01-14
284
303
 
285
- * allow a `rootUri` to be set with `createMonacoServices` ([#31](https://github.com/TypeFox/monaco-languageclient/issues/31))
304
+ - allow a `rootUri` to be set with `createMonacoServices` ([#31](https://github.com/TypeFox/monaco-languageclient/issues/31))
286
305
 
287
306
  ## [0.2.0] - 2017-08-30
288
307
 
289
- * handle `number` value of zero in a `Diagnostic`'s `code` ([#14](https://github.com/TypeFox/monaco-languageclient/pull/14))
290
- * add support to lazily load Monaco ([#19](https://github.com/TypeFox/monaco-languageclient/pull/19))
291
- * add support for `textDocument/codeActions` and `workspace/executeCommand` ([#21](https://github.com/TypeFox/monaco-languageclient/pull/21))
292
- * updated dependency to Monaco 0.10 ([#29](https://github.com/TypeFox/monaco-languageclient/pull/29))
308
+ - handle `number` value of zero in a `Diagnostic`'s `code` ([#14](https://github.com/TypeFox/monaco-languageclient/pull/14))
309
+ - add support to lazily load Monaco ([#19](https://github.com/TypeFox/monaco-languageclient/pull/19))
310
+ - add support for `textDocument/codeActions` and `workspace/executeCommand` ([#21](https://github.com/TypeFox/monaco-languageclient/pull/21))
311
+ - updated dependency to Monaco 0.10 ([#29](https://github.com/TypeFox/monaco-languageclient/pull/29))
293
312
 
294
313
  ## 0.1.0 - 2017-0
295
314
 
296
- * initial 0.1.0 release, depends on Monaco 0.9.0
315
+ - initial 0.1.0 release, depends on Monaco 0.9.0
297
316
 
298
317
  [0.13.0]: https://github.com/TypeFox/monaco-languageclient/compare/v0.12.0...v0.13.0
299
318
  [0.12.0]: https://github.com/TypeFox/monaco-languageclient/compare/v0.11.0...v0.12.0
package/lib/index.d.ts CHANGED
@@ -4,6 +4,6 @@ export * from './console-window';
4
4
  export * from './monaco-workspace';
5
5
  export * from './monaco-services';
6
6
  export * from './monaco-converter';
7
- export { Disposable, CancellationToken, Event, Emitter } from 'vscode-jsonrpc/lib/common/api';
7
+ export { CancellationToken, Event, Emitter } from 'vscode-jsonrpc/lib/common/api';
8
8
  export * from 'vscode-languageserver-protocol/lib/common/api';
9
9
  //# 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,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EACH,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAChD,MAAM,+BAA+B,CAAC;AACvC,cAAc,+CAA+C,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;AAClC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EACH,iBAAiB,EAAE,KAAK,EAAE,OAAO,EACpC,MAAM,+BAA+B,CAAC;AACvC,cAAc,+CAA+C,CAAC"}
package/lib/index.js CHANGED
@@ -8,6 +8,6 @@ export * from './console-window';
8
8
  export * from './monaco-workspace';
9
9
  export * from './monaco-services';
10
10
  export * from './monaco-converter';
11
- export { Disposable, CancellationToken, Event, Emitter } from 'vscode-jsonrpc/lib/common/api';
11
+ export { CancellationToken, Event, Emitter } from 'vscode-jsonrpc/lib/common/api';
12
12
  export * from 'vscode-languageserver-protocol/lib/common/api';
13
13
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EACH,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAChD,MAAM,+BAA+B,CAAC;AACvC,cAAc,+CAA+C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EACH,iBAAiB,EAAE,KAAK,EAAE,OAAO,EACpC,MAAM,+BAA+B,CAAC;AACvC,cAAc,+CAA+C,CAAC"}
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "monaco-languageclient",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "Monaco Language client implementation",
5
5
  "author": {
6
6
  "name": "TypeFox GmbH ",
7
7
  "url": "http://www.typefox.io"
8
8
  },
9
+ "homepage": "https://github.com/TypeFox/monaco-languageclient/blob/main/packages/client/README.md",
9
10
  "license": "MIT",
10
11
  "repository": {
11
12
  "type": "git",
@@ -15,6 +16,7 @@
15
16
  "url": "https://github.com/TypeFox/monaco-languageclient/issues"
16
17
  },
17
18
  "main": "./lib/index.js",
19
+ "module": "./lib/index.js",
18
20
  "types": "./lib/index.d.ts",
19
21
  "exports": {
20
22
  ".": {
@@ -28,22 +30,15 @@
28
30
  "./cjs/monaco-converter": {
29
31
  "types": "./dist/cjs/monaco-converter.d.ts",
30
32
  "default": "./dist/cjs/monaco-converter.js"
31
- },
32
- "./cjs": {
33
- "types": "./dist/cjs/index.d.ts",
34
- "default": "./dist/cjs/index.js"
35
- },
36
- "./amd/monaco-converter": {
37
- "types": "./dist/amd/monaco-converter.d.ts",
38
- "default": "./dist/amd/monaco-converter.js"
39
- },
40
- "./amd": {
41
- "types": "./dist/amd/index.d.ts",
42
- "default": "./dist/amd/index.js"
33
+ }
34
+ },
35
+ "typesVersions": {
36
+ "*": {
37
+ "monaco-converter": [ "lib/monaco-converter" ],
38
+ "monaco-converter/cjs": [ "dist/cjs/monaco-converter" ]
43
39
  }
44
40
  },
45
41
  "files": [
46
- "dist/amd",
47
42
  "dist/cjs",
48
43
  "lib",
49
44
  "src",
@@ -66,13 +61,11 @@
66
61
  },
67
62
  "scripts": {
68
63
  "clean": "npx shx rm -fr lib tsconfig.tsbuildinfo",
64
+ "clean:cjs": "npx shx rm -fr dist",
69
65
  "lint": "eslint src --ext .ts",
70
66
  "compile": "tsc",
71
67
  "watch": "tsc -w",
72
- "clean:amd": "npx shx rm -fr dist/amd",
73
- "clean:cjs": "npx shx rm -fr dist/cjs",
74
- "build:amd": "npm run clean:amd && tsc --outDir dist/amd --module amd --declarationDir dist/amd --declaration",
75
- "build:cjs": "npm run clean:cjs && tsc --outDir dist/cjs --module commonjs --declarationDir dist/cjs --declaration",
76
- "build": "npm run clean && npm run compile && npm run build:amd && npm run build:cjs"
68
+ "build:cjs": "npm run clean:cjs && tsc -p ./tsconfig.cjs.json",
69
+ "build": "npm run clean && npm run compile && npm run build:cjs"
77
70
  }
78
71
  }
package/src/index.ts CHANGED
@@ -10,6 +10,6 @@ export * from './monaco-services';
10
10
  export * from './monaco-converter';
11
11
 
12
12
  export {
13
- Disposable, CancellationToken, Event, Emitter
13
+ CancellationToken, Event, Emitter
14
14
  } from 'vscode-jsonrpc/lib/common/api';
15
15
  export * from 'vscode-languageserver-protocol/lib/common/api';
@@ -1,8 +0,0 @@
1
- import { Window, Severity } from 'vscode/services';
2
- import * as vscode from 'vscode';
3
- export declare class ConsoleWindow implements Window {
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;
7
- }
8
- //# sourceMappingURL=console-window.d.ts.map
@@ -1 +0,0 @@
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,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,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,EAAG,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;IAgB1J,mBAAmB,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,aAAa;CAgC3D"}
@@ -1,59 +0,0 @@
1
- define(["require", "exports", "vscode/services"], function (require, exports, services_1) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.ConsoleWindow = void 0;
5
- class ConsoleWindow {
6
- constructor() {
7
- this.channels = new Map();
8
- }
9
- showMessage(severity, message, ...actions) {
10
- if (severity === services_1.Severity.Error) {
11
- console.error(message);
12
- }
13
- if (severity === services_1.Severity.Warning) {
14
- console.warn(message);
15
- }
16
- if (severity === services_1.Severity.Info) {
17
- console.info(message);
18
- }
19
- if (severity === services_1.Severity.Ignore) {
20
- console.debug(message);
21
- }
22
- return Promise.resolve(undefined);
23
- }
24
- createOutputChannel(name) {
25
- const existing = this.channels.get(name);
26
- if (existing) {
27
- return existing;
28
- }
29
- const channel = {
30
- name: 'default',
31
- append(value) {
32
- console.log(name + ': ' + value);
33
- },
34
- appendLine(line) {
35
- console.log(name + ': ' + line);
36
- },
37
- show() {
38
- // no-op
39
- },
40
- dispose() {
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
51
- }
52
- };
53
- this.channels.set(name, channel);
54
- return channel;
55
- }
56
- }
57
- exports.ConsoleWindow = ConsoleWindow;
58
- });
59
- //# sourceMappingURL=console-window.js.map
@@ -1 +0,0 @@
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;QAiD1E,CAAC;QAhDG,WAAW,CAAiE,QAAkB,EAAE,OAAe,EAAE,GAAG,OAAY;YAC5H,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;QAED,mBAAmB,CAAE,IAAY;YAC7B,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,CAAE,KAAa;oBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;gBACrC,CAAC;gBACD,UAAU,CAAE,IAAY;oBACpB,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,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjC,OAAO,OAAO,CAAC;QACnB,CAAC;KACJ;IAlDD,sCAkDC"}
@@ -1,8 +0,0 @@
1
- import { Disposable } from 'vscode-jsonrpc';
2
- export declare class DisposableCollection implements Disposable {
3
- protected readonly disposables: Disposable[];
4
- dispose(): void;
5
- push(disposable: Disposable): Disposable;
6
- }
7
- export { Disposable };
8
- //# sourceMappingURL=disposable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../../src/disposable.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,qBAAa,oBAAqB,YAAW,UAAU;IACnD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,CAAM;IAElD,OAAO,IAAK,IAAI;IAMhB,IAAI,CAAE,UAAU,EAAE,UAAU,GAAG,UAAU;CAY5C;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -1,34 +0,0 @@
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) {
6
- "use strict";
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.Disposable = exports.DisposableCollection = void 0;
9
- Object.defineProperty(exports, "Disposable", { enumerable: true, get: function () { return vscode_jsonrpc_1.Disposable; } });
10
- class DisposableCollection {
11
- constructor() {
12
- this.disposables = [];
13
- }
14
- dispose() {
15
- while (this.disposables.length !== 0) {
16
- this.disposables.pop().dispose();
17
- }
18
- }
19
- push(disposable) {
20
- const disposables = this.disposables;
21
- disposables.push(disposable);
22
- return {
23
- dispose() {
24
- const index = disposables.indexOf(disposable);
25
- if (index !== -1) {
26
- disposables.splice(index, 1);
27
- }
28
- }
29
- };
30
- }
31
- }
32
- exports.DisposableCollection = DisposableCollection;
33
- });
34
- //# sourceMappingURL=disposable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"disposable.js","sourceRoot":"","sources":["../../src/disposable.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;;;;;IA2BvF,2FAzBA,2BAAU,OAyBA;IAvBnB,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,CAAE,UAAsB;YACxB,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,CAAC;QACN,CAAC;KACJ;IArBD,oDAqBC"}