@difizen/libro-language-client 0.1.18

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 (298) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +0 -0
  3. package/es/common/api.d.ts +38 -0
  4. package/es/common/api.d.ts.map +1 -0
  5. package/es/common/api.js +9 -0
  6. package/es/common/callHierarchy.d.ts +39 -0
  7. package/es/common/callHierarchy.d.ts.map +1 -0
  8. package/es/common/callHierarchy.js +139 -0
  9. package/es/common/client.d.ts +482 -0
  10. package/es/common/client.d.ts.map +1 -0
  11. package/es/common/client.js +2731 -0
  12. package/es/common/codeAction.d.ts +22 -0
  13. package/es/common/codeAction.d.ts.map +1 -0
  14. package/es/common/codeAction.js +149 -0
  15. package/es/common/codeConverter.d.ts +81 -0
  16. package/es/common/codeConverter.d.ts.map +1 -0
  17. package/es/common/codeConverter.js +1040 -0
  18. package/es/common/codeLens.d.ts +26 -0
  19. package/es/common/codeLens.d.ts.map +1 -0
  20. package/es/common/codeLens.js +125 -0
  21. package/es/common/colorProvider.d.ts +27 -0
  22. package/es/common/colorProvider.d.ts.map +1 -0
  23. package/es/common/colorProvider.js +104 -0
  24. package/es/common/completion.d.ts +22 -0
  25. package/es/common/completion.d.ts.map +1 -0
  26. package/es/common/completion.js +130 -0
  27. package/es/common/configuration.d.ts +71 -0
  28. package/es/common/configuration.d.ts.map +1 -0
  29. package/es/common/configuration.js +292 -0
  30. package/es/common/declaration.d.ts +18 -0
  31. package/es/common/declaration.d.ts.map +1 -0
  32. package/es/common/declaration.js +88 -0
  33. package/es/common/definition.d.ts +18 -0
  34. package/es/common/definition.d.ts.map +1 -0
  35. package/es/common/definition.js +80 -0
  36. package/es/common/diagnostic.d.ts +125 -0
  37. package/es/common/diagnostic.d.ts.map +1 -0
  38. package/es/common/diagnostic.js +1442 -0
  39. package/es/common/documentHighlight.d.ts +17 -0
  40. package/es/common/documentHighlight.d.ts.map +1 -0
  41. package/es/common/documentHighlight.js +73 -0
  42. package/es/common/documentLink.d.ts +21 -0
  43. package/es/common/documentLink.d.ts.map +1 -0
  44. package/es/common/documentLink.js +90 -0
  45. package/es/common/documentSymbol.d.ts +20 -0
  46. package/es/common/documentSymbol.d.ts.map +1 -0
  47. package/es/common/documentSymbol.js +134 -0
  48. package/es/common/executeCommand.d.ts +22 -0
  49. package/es/common/executeCommand.d.ts.map +1 -0
  50. package/es/common/executeCommand.js +117 -0
  51. package/es/common/features.d.ts +421 -0
  52. package/es/common/features.d.ts.map +1 -0
  53. package/es/common/features.js +576 -0
  54. package/es/common/fileOperations.d.ts +118 -0
  55. package/es/common/fileOperations.d.ts.map +1 -0
  56. package/es/common/fileOperations.js +705 -0
  57. package/es/common/fileSystemWatcher.d.ts +19 -0
  58. package/es/common/fileSystemWatcher.d.ts.map +1 -0
  59. package/es/common/fileSystemWatcher.js +173 -0
  60. package/es/common/foldingRange.d.ts +22 -0
  61. package/es/common/foldingRange.d.ts.map +1 -0
  62. package/es/common/foldingRange.js +127 -0
  63. package/es/common/formatting.d.ts +41 -0
  64. package/es/common/formatting.d.ts.map +1 -0
  65. package/es/common/formatting.js +233 -0
  66. package/es/common/hover.d.ts +18 -0
  67. package/es/common/hover.d.ts.map +1 -0
  68. package/es/common/hover.js +80 -0
  69. package/es/common/implementation.d.ts +18 -0
  70. package/es/common/implementation.d.ts.map +1 -0
  71. package/es/common/implementation.js +88 -0
  72. package/es/common/inlayHint.d.ts +23 -0
  73. package/es/common/inlayHint.d.ts.map +1 -0
  74. package/es/common/inlayHint.js +187 -0
  75. package/es/common/inlineCompletion.d.ts +20 -0
  76. package/es/common/inlineCompletion.d.ts.map +1 -0
  77. package/es/common/inlineCompletion.js +74 -0
  78. package/es/common/inlineValue.d.ts +21 -0
  79. package/es/common/inlineValue.d.ts.map +1 -0
  80. package/es/common/inlineValue.js +124 -0
  81. package/es/common/linkedEditingRange.d.ts +23 -0
  82. package/es/common/linkedEditingRange.d.ts.map +1 -0
  83. package/es/common/linkedEditingRange.js +94 -0
  84. package/es/common/notebook.d.ts +97 -0
  85. package/es/common/notebook.d.ts.map +1 -0
  86. package/es/common/notebook.js +1444 -0
  87. package/es/common/progress.d.ts +12 -0
  88. package/es/common/progress.d.ts.map +1 -0
  89. package/es/common/progress.js +75 -0
  90. package/es/common/progressPart.d.ts +25 -0
  91. package/es/common/progressPart.d.ts.map +1 -0
  92. package/es/common/progressPart.js +147 -0
  93. package/es/common/protocolCallHierarchyItem.d.ts +9 -0
  94. package/es/common/protocolCallHierarchyItem.d.ts.map +1 -0
  95. package/es/common/protocolCallHierarchyItem.js +34 -0
  96. package/es/common/protocolCodeAction.d.ts +7 -0
  97. package/es/common/protocolCodeAction.d.ts.map +1 -0
  98. package/es/common/protocolCodeAction.js +32 -0
  99. package/es/common/protocolCodeLens.d.ts +7 -0
  100. package/es/common/protocolCodeLens.d.ts.map +1 -0
  101. package/es/common/protocolCodeLens.js +29 -0
  102. package/es/common/protocolCompletionItem.d.ts +13 -0
  103. package/es/common/protocolCompletionItem.d.ts.map +1 -0
  104. package/es/common/protocolCompletionItem.js +29 -0
  105. package/es/common/protocolConverter.d.ts +174 -0
  106. package/es/common/protocolConverter.d.ts.map +1 -0
  107. package/es/common/protocolConverter.js +1982 -0
  108. package/es/common/protocolDiagnostic.d.ts +20 -0
  109. package/es/common/protocolDiagnostic.d.ts.map +1 -0
  110. package/es/common/protocolDiagnostic.js +46 -0
  111. package/es/common/protocolDocumentLink.d.ts +8 -0
  112. package/es/common/protocolDocumentLink.d.ts.map +1 -0
  113. package/es/common/protocolDocumentLink.js +29 -0
  114. package/es/common/protocolInlayHint.d.ts +8 -0
  115. package/es/common/protocolInlayHint.d.ts.map +1 -0
  116. package/es/common/protocolInlayHint.js +29 -0
  117. package/es/common/protocolTypeHierarchyItem.d.ts +9 -0
  118. package/es/common/protocolTypeHierarchyItem.d.ts.map +1 -0
  119. package/es/common/protocolTypeHierarchyItem.js +34 -0
  120. package/es/common/protocolWorkspaceSymbol.d.ts +9 -0
  121. package/es/common/protocolWorkspaceSymbol.d.ts.map +1 -0
  122. package/es/common/protocolWorkspaceSymbol.js +36 -0
  123. package/es/common/reference.d.ts +22 -0
  124. package/es/common/reference.d.ts.map +1 -0
  125. package/es/common/reference.js +78 -0
  126. package/es/common/rename.d.ts +29 -0
  127. package/es/common/rename.d.ts.map +1 -0
  128. package/es/common/rename.js +132 -0
  129. package/es/common/selectionRange.d.ts +18 -0
  130. package/es/common/selectionRange.d.ts.map +1 -0
  131. package/es/common/selectionRange.js +108 -0
  132. package/es/common/semanticTokens.d.ts +36 -0
  133. package/es/common/semanticTokens.d.ts.map +1 -0
  134. package/es/common/semanticTokens.js +226 -0
  135. package/es/common/signatureHelp.d.ts +18 -0
  136. package/es/common/signatureHelp.d.ts.map +1 -0
  137. package/es/common/signatureHelp.js +103 -0
  138. package/es/common/textSynchronization.d.ts +104 -0
  139. package/es/common/textSynchronization.d.ts.map +1 -0
  140. package/es/common/textSynchronization.js +771 -0
  141. package/es/common/typeDefinition.d.ts +18 -0
  142. package/es/common/typeDefinition.d.ts.map +1 -0
  143. package/es/common/typeDefinition.js +89 -0
  144. package/es/common/typeHierarchy.d.ts +33 -0
  145. package/es/common/typeHierarchy.d.ts.map +1 -0
  146. package/es/common/typeHierarchy.js +138 -0
  147. package/es/common/utils/async.d.ts +42 -0
  148. package/es/common/utils/async.d.ts.map +1 -0
  149. package/es/common/utils/async.js +441 -0
  150. package/es/common/utils/is.d.ts +13 -0
  151. package/es/common/utils/is.d.ts.map +1 -0
  152. package/es/common/utils/is.js +52 -0
  153. package/es/common/utils/uuid.d.ts +23 -0
  154. package/es/common/utils/uuid.d.ts.map +1 -0
  155. package/es/common/utils/uuid.js +85 -0
  156. package/es/common/vscodeAdaptor/convertor.d.ts +7 -0
  157. package/es/common/vscodeAdaptor/convertor.d.ts.map +1 -0
  158. package/es/common/vscodeAdaptor/convertor.js +66 -0
  159. package/es/common/vscodeAdaptor/diagnosticCollection.d.ts +33 -0
  160. package/es/common/vscodeAdaptor/diagnosticCollection.d.ts.map +1 -0
  161. package/es/common/vscodeAdaptor/diagnosticCollection.js +310 -0
  162. package/es/common/vscodeAdaptor/extHostTypes.d.ts +1496 -0
  163. package/es/common/vscodeAdaptor/extHostTypes.d.ts.map +1 -0
  164. package/es/common/vscodeAdaptor/extHostTypes.js +3825 -0
  165. package/es/common/vscodeAdaptor/fileWatcher.d.ts +19 -0
  166. package/es/common/vscodeAdaptor/fileWatcher.d.ts.map +1 -0
  167. package/es/common/vscodeAdaptor/fileWatcher.js +45 -0
  168. package/es/common/vscodeAdaptor/hostTypeUtil.d.ts +192 -0
  169. package/es/common/vscodeAdaptor/hostTypeUtil.d.ts.map +1 -0
  170. package/es/common/vscodeAdaptor/hostTypeUtil.js +566 -0
  171. package/es/common/vscodeAdaptor/libro-fs.d.ts +21 -0
  172. package/es/common/vscodeAdaptor/libro-fs.d.ts.map +1 -0
  173. package/es/common/vscodeAdaptor/libro-fs.js +64 -0
  174. package/es/common/vscodeAdaptor/libroWindow.d.ts +21 -0
  175. package/es/common/vscodeAdaptor/libroWindow.d.ts.map +1 -0
  176. package/es/common/vscodeAdaptor/libroWindow.js +75 -0
  177. package/es/common/vscodeAdaptor/libroWorkspace.d.ts +33 -0
  178. package/es/common/vscodeAdaptor/libroWorkspace.d.ts.map +1 -0
  179. package/es/common/vscodeAdaptor/libroWorkspace.js +250 -0
  180. package/es/common/vscodeAdaptor/lspEnv.d.ts +8 -0
  181. package/es/common/vscodeAdaptor/lspEnv.d.ts.map +1 -0
  182. package/es/common/vscodeAdaptor/lspEnv.js +31 -0
  183. package/es/common/vscodeAdaptor/monaco-converter.d.ts +229 -0
  184. package/es/common/vscodeAdaptor/monaco-converter.d.ts.map +1 -0
  185. package/es/common/vscodeAdaptor/monaco-converter.js +1613 -0
  186. package/es/common/vscodeAdaptor/monacoLanguages.d.ts +48 -0
  187. package/es/common/vscodeAdaptor/monacoLanguages.d.ts.map +1 -0
  188. package/es/common/vscodeAdaptor/monacoLanguages.js +484 -0
  189. package/es/common/vscodeAdaptor/services.d.ts +85 -0
  190. package/es/common/vscodeAdaptor/services.d.ts.map +1 -0
  191. package/es/common/vscodeAdaptor/services.js +3 -0
  192. package/es/common/vscodeAdaptor/typings.d.ts +10 -0
  193. package/es/common/vscodeAdaptor/util.d.ts +3 -0
  194. package/es/common/vscodeAdaptor/util.d.ts.map +1 -0
  195. package/es/common/vscodeAdaptor/util.js +6 -0
  196. package/es/common/vscodeAdaptor/vscodeAdaptor.d.ts +77 -0
  197. package/es/common/vscodeAdaptor/vscodeAdaptor.d.ts.map +1 -0
  198. package/es/common/vscodeAdaptor/vscodeAdaptor.js +124 -0
  199. package/es/common/workspaceFolder.d.ts +32 -0
  200. package/es/common/workspaceFolder.d.ts.map +1 -0
  201. package/es/common/workspaceFolder.js +204 -0
  202. package/es/common/workspaceSymbol.d.ts +21 -0
  203. package/es/common/workspaceSymbol.d.ts.map +1 -0
  204. package/es/common/workspaceSymbol.js +101 -0
  205. package/es/constants.d.ts +2 -0
  206. package/es/constants.d.ts.map +1 -0
  207. package/es/constants.js +1 -0
  208. package/es/index.d.ts +6 -0
  209. package/es/index.d.ts.map +1 -0
  210. package/es/index.js +5 -0
  211. package/es/libro-language-client-contribution.d.ts +10 -0
  212. package/es/libro-language-client-contribution.d.ts.map +1 -0
  213. package/es/libro-language-client-contribution.js +143 -0
  214. package/es/libro-language-client-manager.d.ts +34 -0
  215. package/es/libro-language-client-manager.d.ts.map +1 -0
  216. package/es/libro-language-client-manager.js +277 -0
  217. package/es/libro-language-client.d.ts +27 -0
  218. package/es/libro-language-client.d.ts.map +1 -0
  219. package/es/libro-language-client.js +141 -0
  220. package/es/module.d.ts +3 -0
  221. package/es/module.d.ts.map +1 -0
  222. package/es/module.js +13 -0
  223. package/package.json +69 -0
  224. package/src/common/api.ts +155 -0
  225. package/src/common/callHierarchy.ts +269 -0
  226. package/src/common/client.ts +3192 -0
  227. package/src/common/codeAction.ts +237 -0
  228. package/src/common/codeConverter.ts +1409 -0
  229. package/src/common/codeLens.ts +188 -0
  230. package/src/common/colorProvider.ts +192 -0
  231. package/src/common/completion.ts +281 -0
  232. package/src/common/configuration.ts +338 -0
  233. package/src/common/declaration.ts +140 -0
  234. package/src/common/definition.ts +138 -0
  235. package/src/common/diagnostic.ts +1408 -0
  236. package/src/common/documentHighlight.ts +140 -0
  237. package/src/common/documentLink.ts +180 -0
  238. package/src/common/documentSymbol.ts +186 -0
  239. package/src/common/executeCommand.ts +129 -0
  240. package/src/common/features.ts +1157 -0
  241. package/src/common/fileOperations.ts +635 -0
  242. package/src/common/fileSystemWatcher.ts +184 -0
  243. package/src/common/foldingRange.ts +160 -0
  244. package/src/common/formatting.ts +465 -0
  245. package/src/common/hover.ts +133 -0
  246. package/src/common/implementation.ts +142 -0
  247. package/src/common/inlayHint.ts +201 -0
  248. package/src/common/inlineCompletion.ts +160 -0
  249. package/src/common/inlineValue.ts +158 -0
  250. package/src/common/linkedEditingRange.ts +141 -0
  251. package/src/common/notebook.ts +1443 -0
  252. package/src/common/progress.ts +61 -0
  253. package/src/common/progressPart.ts +151 -0
  254. package/src/common/protocolCallHierarchyItem.ts +29 -0
  255. package/src/common/protocolCodeAction.ts +17 -0
  256. package/src/common/protocolCodeLens.ts +15 -0
  257. package/src/common/protocolCompletionItem.ts +22 -0
  258. package/src/common/protocolConverter.ts +2627 -0
  259. package/src/common/protocolDiagnostic.ts +47 -0
  260. package/src/common/protocolDocumentLink.ts +17 -0
  261. package/src/common/protocolInlayHint.ts +21 -0
  262. package/src/common/protocolTypeHierarchyItem.ts +29 -0
  263. package/src/common/protocolWorkspaceSymbol.ts +39 -0
  264. package/src/common/reference.ts +144 -0
  265. package/src/common/rename.ts +230 -0
  266. package/src/common/selectionRange.ts +136 -0
  267. package/src/common/semanticTokens.ts +383 -0
  268. package/src/common/signatureHelp.ts +170 -0
  269. package/src/common/textSynchronization.ts +819 -0
  270. package/src/common/typeDefinition.ts +146 -0
  271. package/src/common/typeHierarchy.ts +248 -0
  272. package/src/common/utils/async.ts +354 -0
  273. package/src/common/utils/is.ts +63 -0
  274. package/src/common/utils/uuid.ts +136 -0
  275. package/src/common/vscodeAdaptor/convertor.ts +73 -0
  276. package/src/common/vscodeAdaptor/diagnosticCollection.ts +238 -0
  277. package/src/common/vscodeAdaptor/extHostTypes.ts +4498 -0
  278. package/src/common/vscodeAdaptor/fileWatcher.ts +36 -0
  279. package/src/common/vscodeAdaptor/hostTypeUtil.ts +539 -0
  280. package/src/common/vscodeAdaptor/libro-fs.ts +51 -0
  281. package/src/common/vscodeAdaptor/libroWindow.ts +85 -0
  282. package/src/common/vscodeAdaptor/libroWorkspace.ts +261 -0
  283. package/src/common/vscodeAdaptor/lspEnv.ts +16 -0
  284. package/src/common/vscodeAdaptor/monaco-converter.ts +1800 -0
  285. package/src/common/vscodeAdaptor/monacoLanguages.ts +511 -0
  286. package/src/common/vscodeAdaptor/services.ts +278 -0
  287. package/src/common/vscodeAdaptor/typings.d.ts +10 -0
  288. package/src/common/vscodeAdaptor/util.ts +7 -0
  289. package/src/common/vscodeAdaptor/vscodeAdaptor.ts +122 -0
  290. package/src/common/workspaceFolder.ts +236 -0
  291. package/src/common/workspaceSymbol.ts +166 -0
  292. package/src/constants.ts +1 -0
  293. package/src/index.spec.ts +7 -0
  294. package/src/index.ts +5 -0
  295. package/src/libro-language-client-contribution.ts +49 -0
  296. package/src/libro-language-client-manager.ts +131 -0
  297. package/src/libro-language-client.ts +100 -0
  298. package/src/module.ts +19 -0
@@ -0,0 +1,17 @@
1
+ import type { ClientCapabilities, DocumentHighlightOptions, DocumentHighlightRegistrationOptions, DocumentSelector, ServerCapabilities, TextDocumentRegistrationOptions } from '@difizen/vscode-languageserver-protocol';
2
+ import type { TextDocument, Disposable, Position as VPosition, CancellationToken, ProviderResult, DocumentHighlightProvider, DocumentHighlight as VDocumentHighlight } from 'vscode';
3
+ import type { FeatureClient } from './features.js';
4
+ import { TextDocumentLanguageFeature } from './features.js';
5
+ export interface ProvideDocumentHighlightsSignature {
6
+ (this: void, document: TextDocument, position: VPosition, token: CancellationToken): ProviderResult<VDocumentHighlight[]>;
7
+ }
8
+ export interface DocumentHighlightMiddleware {
9
+ provideDocumentHighlights?: (this: void, document: TextDocument, position: VPosition, token: CancellationToken, next: ProvideDocumentHighlightsSignature) => ProviderResult<VDocumentHighlight[]>;
10
+ }
11
+ export declare class DocumentHighlightFeature extends TextDocumentLanguageFeature<boolean | DocumentHighlightOptions, DocumentHighlightRegistrationOptions, DocumentHighlightProvider, DocumentHighlightMiddleware> {
12
+ constructor(client: FeatureClient<DocumentHighlightMiddleware>);
13
+ fillClientCapabilities(capabilities: ClientCapabilities): void;
14
+ initialize(capabilities: ServerCapabilities, documentSelector: DocumentSelector): void;
15
+ protected registerLanguageProvider(options: TextDocumentRegistrationOptions): [Disposable, DocumentHighlightProvider];
16
+ }
17
+ //# sourceMappingURL=documentHighlight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentHighlight.d.ts","sourceRoot":"","sources":["../../src/common/documentHighlight.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,oCAAoC,EACpC,gBAAgB,EAChB,kBAAkB,EAClB,+BAA+B,EAChC,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,QAAQ,IAAI,SAAS,EACrB,iBAAiB,EACjB,cAAc,EACd,yBAAyB,EACzB,iBAAiB,IAAI,kBAAkB,EACxC,MAAM,QAAQ,CAAC;AAEhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAU,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAIpE,MAAM,WAAW,kCAAkC;IACjD,CACE,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,iBAAiB,GACvB,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,2BAA2B;IAC1C,yBAAyB,CAAC,EAAE,CAC1B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,kCAAkC,KACrC,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC;CAC3C;AAED,qBAAa,wBAAyB,SAAQ,2BAA2B,CACvE,OAAO,GAAG,wBAAwB,EAClC,oCAAoC,EACpC,yBAAyB,EACzB,2BAA2B,CAC5B;gBACa,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC;IAIvD,sBAAsB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAO9D,UAAU,CACf,YAAY,EAAE,kBAAkB,EAChC,gBAAgB,EAAE,gBAAgB,GACjC,IAAI;IAWP,SAAS,CAAC,wBAAwB,CAChC,OAAO,EAAE,+BAA+B,GACvC,CAAC,UAAU,EAAE,yBAAyB,CAAC;CA0D3C"}
@@ -0,0 +1,73 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
8
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
11
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
12
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
13
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
14
+ /* --------------------------------------------------------------------------------------------
15
+ * Copyright (c) Microsoft Corporation. All rights reserved.
16
+ * Licensed under the MIT License. See License.txt in the project root for license information.
17
+ * ------------------------------------------------------------------------------------------ */
18
+
19
+ import { DocumentHighlightRequest } from '@difizen/vscode-languageserver-protocol';
20
+ import { ensure, TextDocumentLanguageFeature } from "./features.js";
21
+ import * as UUID from "./utils/uuid.js";
22
+ import { languages as Languages } from "./vscodeAdaptor/vscodeAdaptor.js";
23
+ export var DocumentHighlightFeature = /*#__PURE__*/function (_TextDocumentLanguage) {
24
+ _inherits(DocumentHighlightFeature, _TextDocumentLanguage);
25
+ var _super = _createSuper(DocumentHighlightFeature);
26
+ function DocumentHighlightFeature(client) {
27
+ _classCallCheck(this, DocumentHighlightFeature);
28
+ return _super.call(this, client, DocumentHighlightRequest.type);
29
+ }
30
+ _createClass(DocumentHighlightFeature, [{
31
+ key: "fillClientCapabilities",
32
+ value: function fillClientCapabilities(capabilities) {
33
+ ensure(ensure(capabilities, 'textDocument'), 'documentHighlight').dynamicRegistration = true;
34
+ }
35
+ }, {
36
+ key: "initialize",
37
+ value: function initialize(capabilities, documentSelector) {
38
+ var options = this.getRegistrationOptions(documentSelector, capabilities.documentHighlightProvider);
39
+ if (!options) {
40
+ return;
41
+ }
42
+ this.register({
43
+ id: UUID.generateUuid(),
44
+ registerOptions: options
45
+ });
46
+ }
47
+ }, {
48
+ key: "registerLanguageProvider",
49
+ value: function registerLanguageProvider(options) {
50
+ var _this = this;
51
+ var selector = options.documentSelector;
52
+ var provider = {
53
+ provideDocumentHighlights: function provideDocumentHighlights(document, position, token) {
54
+ var client = _this._client;
55
+ var _provideDocumentHighlights = function _provideDocumentHighlights(document, position, token) {
56
+ return client.sendRequest(DocumentHighlightRequest.type, client.code2ProtocolConverter.asTextDocumentPositionParams(document, position), token).then(function (result) {
57
+ if (token.isCancellationRequested) {
58
+ return null;
59
+ }
60
+ return client.protocol2CodeConverter.asDocumentHighlights(result, token);
61
+ }, function (error) {
62
+ return client.handleFailedRequest(DocumentHighlightRequest.type, token, error, null);
63
+ });
64
+ };
65
+ var middleware = client.middleware;
66
+ return middleware.provideDocumentHighlights ? middleware.provideDocumentHighlights(document, position, token, _provideDocumentHighlights) : _provideDocumentHighlights(document, position, token);
67
+ }
68
+ };
69
+ return [Languages.registerDocumentHighlightProvider(this._client.protocol2CodeConverter.asDocumentSelector(selector), provider), provider];
70
+ }
71
+ }]);
72
+ return DocumentHighlightFeature;
73
+ }(TextDocumentLanguageFeature);
@@ -0,0 +1,21 @@
1
+ import type { ClientCapabilities, DocumentLinkOptions, DocumentLinkRegistrationOptions, DocumentSelector, ServerCapabilities } from '@difizen/vscode-languageserver-protocol';
2
+ import type { TextDocument, Disposable, CancellationToken, ProviderResult, DocumentLinkProvider, DocumentLink as VDocumentLink } from 'vscode';
3
+ import type { FeatureClient } from './features.js';
4
+ import { TextDocumentLanguageFeature } from './features.js';
5
+ export interface ProvideDocumentLinksSignature {
6
+ (this: void, document: TextDocument, token: CancellationToken): ProviderResult<VDocumentLink[]>;
7
+ }
8
+ export interface ResolveDocumentLinkSignature {
9
+ (this: void, link: VDocumentLink, token: CancellationToken): ProviderResult<VDocumentLink>;
10
+ }
11
+ export interface DocumentLinkMiddleware {
12
+ provideDocumentLinks?: (this: void, document: TextDocument, token: CancellationToken, next: ProvideDocumentLinksSignature) => ProviderResult<VDocumentLink[]>;
13
+ resolveDocumentLink?: (this: void, link: VDocumentLink, token: CancellationToken, next: ResolveDocumentLinkSignature) => ProviderResult<VDocumentLink>;
14
+ }
15
+ export declare class DocumentLinkFeature extends TextDocumentLanguageFeature<DocumentLinkOptions, DocumentLinkRegistrationOptions, DocumentLinkProvider, DocumentLinkMiddleware> {
16
+ constructor(client: FeatureClient<DocumentLinkMiddleware>);
17
+ fillClientCapabilities(capabilities: ClientCapabilities): void;
18
+ initialize(capabilities: ServerCapabilities, documentSelector: DocumentSelector): void;
19
+ protected registerLanguageProvider(options: DocumentLinkRegistrationOptions): [Disposable, DocumentLinkProvider];
20
+ }
21
+ //# sourceMappingURL=documentLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentLink.d.ts","sourceRoot":"","sources":["../../src/common/documentLink.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,+BAA+B,EAC/B,gBAAgB,EAEhB,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAKjD,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,YAAY,IAAI,aAAa,EAC9B,MAAM,QAAQ,CAAC;AAEhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAU,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAIpE,MAAM,WAAW,6BAA6B;IAC5C,CACE,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,iBAAiB,GACvB,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,4BAA4B;IAC3C,CACE,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,iBAAiB,GACvB,cAAc,CAAC,aAAa,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACrC,oBAAoB,CAAC,EAAE,CACrB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,6BAA6B,KAChC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC;IACrC,mBAAmB,CAAC,EAAE,CACpB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,4BAA4B,KAC/B,cAAc,CAAC,aAAa,CAAC,CAAC;CACpC;AAED,qBAAa,mBAAoB,SAAQ,2BAA2B,CAClE,mBAAmB,EACnB,+BAA+B,EAC/B,oBAAoB,EACpB,sBAAsB,CACvB;gBACa,MAAM,EAAE,aAAa,CAAC,sBAAsB,CAAC;IAIlD,sBAAsB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAS9D,UAAU,CACf,YAAY,EAAE,kBAAkB,EAChC,gBAAgB,EAAE,gBAAgB,GACjC,IAAI;IAWP,SAAS,CAAC,wBAAwB,CAChC,OAAO,EAAE,+BAA+B,GACvC,CAAC,UAAU,EAAE,oBAAoB,CAAC;CAkFtC"}
@@ -0,0 +1,90 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
8
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
11
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
12
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
13
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
14
+ /* --------------------------------------------------------------------------------------------
15
+ * Copyright (c) Microsoft Corporation. All rights reserved.
16
+ * Licensed under the MIT License. See License.txt in the project root for license information.
17
+ * ------------------------------------------------------------------------------------------ */
18
+
19
+ import { DocumentLinkRequest, DocumentLinkResolveRequest } from '@difizen/vscode-languageserver-protocol';
20
+ import { ensure, TextDocumentLanguageFeature } from "./features.js";
21
+ import * as UUID from "./utils/uuid.js";
22
+ import { languages as Languages } from "./vscodeAdaptor/vscodeAdaptor.js";
23
+ export var DocumentLinkFeature = /*#__PURE__*/function (_TextDocumentLanguage) {
24
+ _inherits(DocumentLinkFeature, _TextDocumentLanguage);
25
+ var _super = _createSuper(DocumentLinkFeature);
26
+ function DocumentLinkFeature(client) {
27
+ _classCallCheck(this, DocumentLinkFeature);
28
+ return _super.call(this, client, DocumentLinkRequest.type);
29
+ }
30
+ _createClass(DocumentLinkFeature, [{
31
+ key: "fillClientCapabilities",
32
+ value: function fillClientCapabilities(capabilities) {
33
+ var documentLinkCapabilities = ensure(ensure(capabilities, 'textDocument'), 'documentLink');
34
+ documentLinkCapabilities.dynamicRegistration = true;
35
+ documentLinkCapabilities.tooltipSupport = true;
36
+ }
37
+ }, {
38
+ key: "initialize",
39
+ value: function initialize(capabilities, documentSelector) {
40
+ var options = this.getRegistrationOptions(documentSelector, capabilities.documentLinkProvider);
41
+ if (!options) {
42
+ return;
43
+ }
44
+ this.register({
45
+ id: UUID.generateUuid(),
46
+ registerOptions: options
47
+ });
48
+ }
49
+ }, {
50
+ key: "registerLanguageProvider",
51
+ value: function registerLanguageProvider(options) {
52
+ var _this = this;
53
+ var selector = options.documentSelector;
54
+ var provider = {
55
+ provideDocumentLinks: function provideDocumentLinks(document, token) {
56
+ var client = _this._client;
57
+ var provideDocumentLinks = function provideDocumentLinks(document, token) {
58
+ return client.sendRequest(DocumentLinkRequest.type, client.code2ProtocolConverter.asDocumentLinkParams(document), token).then(function (result) {
59
+ if (token.isCancellationRequested) {
60
+ return null;
61
+ }
62
+ return client.protocol2CodeConverter.asDocumentLinks(result, token);
63
+ }, function (error) {
64
+ return client.handleFailedRequest(DocumentLinkRequest.type, token, error, null);
65
+ });
66
+ };
67
+ var middleware = client.middleware;
68
+ return middleware.provideDocumentLinks ? middleware.provideDocumentLinks(document, token, provideDocumentLinks) : provideDocumentLinks(document, token);
69
+ },
70
+ resolveDocumentLink: options.resolveProvider ? function (link, token) {
71
+ var client = _this._client;
72
+ var resolveDocumentLink = function resolveDocumentLink(link, token) {
73
+ return client.sendRequest(DocumentLinkResolveRequest.type, client.code2ProtocolConverter.asDocumentLink(link), token).then(function (result) {
74
+ if (token.isCancellationRequested) {
75
+ return link;
76
+ }
77
+ return client.protocol2CodeConverter.asDocumentLink(result);
78
+ }, function (error) {
79
+ return client.handleFailedRequest(DocumentLinkResolveRequest.type, token, error, link);
80
+ });
81
+ };
82
+ var middleware = client.middleware;
83
+ return middleware.resolveDocumentLink ? middleware.resolveDocumentLink(link, token, resolveDocumentLink) : resolveDocumentLink(link, token);
84
+ } : undefined
85
+ };
86
+ return [Languages.registerDocumentLinkProvider(this._client.protocol2CodeConverter.asDocumentSelector(selector), provider), provider];
87
+ }
88
+ }]);
89
+ return DocumentLinkFeature;
90
+ }(TextDocumentLanguageFeature);
@@ -0,0 +1,20 @@
1
+ import type { ClientCapabilities, DocumentSelector, DocumentSymbolOptions, DocumentSymbolRegistrationOptions, ServerCapabilities } from '@difizen/vscode-languageserver-protocol';
2
+ import { SymbolKind, SymbolTag } from '@difizen/vscode-languageserver-protocol';
3
+ import type { TextDocument, Disposable, CancellationToken, ProviderResult, DocumentSymbolProvider, SymbolInformation as VSymbolInformation, DocumentSymbol as VDocumentSymbol } from 'vscode';
4
+ import type { FeatureClient } from './features.js';
5
+ import { TextDocumentLanguageFeature } from './features.js';
6
+ export declare const SupportedSymbolKinds: SymbolKind[];
7
+ export declare const SupportedSymbolTags: SymbolTag[];
8
+ export interface ProvideDocumentSymbolsSignature {
9
+ (this: void, document: TextDocument, token: CancellationToken): ProviderResult<VSymbolInformation[] | VDocumentSymbol[]>;
10
+ }
11
+ export interface DocumentSymbolMiddleware {
12
+ provideDocumentSymbols?: (this: void, document: TextDocument, token: CancellationToken, next: ProvideDocumentSymbolsSignature) => ProviderResult<VSymbolInformation[] | VDocumentSymbol[]>;
13
+ }
14
+ export declare class DocumentSymbolFeature extends TextDocumentLanguageFeature<boolean | DocumentSymbolOptions, DocumentSymbolRegistrationOptions, DocumentSymbolProvider, DocumentSymbolMiddleware> {
15
+ constructor(client: FeatureClient<DocumentSymbolMiddleware>);
16
+ fillClientCapabilities(capabilities: ClientCapabilities): void;
17
+ initialize(capabilities: ServerCapabilities, documentSelector: DocumentSelector): void;
18
+ protected registerLanguageProvider(options: DocumentSymbolRegistrationOptions): [Disposable, DocumentSymbolProvider];
19
+ }
20
+ //# sourceMappingURL=documentSymbol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentSymbol.d.ts","sourceRoot":"","sources":["../../src/common/documentSymbol.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,iCAAiC,EACjC,kBAAkB,EAEnB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAGL,UAAU,EACV,SAAS,EACV,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EAEtB,iBAAiB,IAAI,kBAAkB,EACvC,cAAc,IAAI,eAAe,EAClC,MAAM,QAAQ,CAAC;AAEhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAU,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAIpE,eAAO,MAAM,oBAAoB,EAAE,UAAU,EA2B5C,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,SAAS,EAA2B,CAAC;AAEvE,MAAM,WAAW,+BAA+B;IAC9C,CACE,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,iBAAiB,GACvB,cAAc,CAAC,kBAAkB,EAAE,GAAG,eAAe,EAAE,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,wBAAwB;IACvC,sBAAsB,CAAC,EAAE,CACvB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,+BAA+B,KAClC,cAAc,CAAC,kBAAkB,EAAE,GAAG,eAAe,EAAE,CAAC,CAAC;CAC/D;AAED,qBAAa,qBAAsB,SAAQ,2BAA2B,CACpE,OAAO,GAAG,qBAAqB,EAC/B,iCAAiC,EACjC,sBAAsB,EACtB,wBAAwB,CACzB;gBACa,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC;IAIpD,sBAAsB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAgB9D,UAAU,CACf,YAAY,EAAE,kBAAkB,EAChC,gBAAgB,EAAE,gBAAgB,GACjC,IAAI;IAWP,SAAS,CAAC,wBAAwB,CAChC,OAAO,EAAE,iCAAiC,GACzC,CAAC,UAAU,EAAE,sBAAsB,CAAC;CA4DxC"}
@@ -0,0 +1,134 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
3
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
4
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
5
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
7
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
8
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
9
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
11
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
12
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
13
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
14
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
15
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
16
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
17
+ /* --------------------------------------------------------------------------------------------
18
+ * Copyright (c) Microsoft Corporation. All rights reserved.
19
+ * Licensed under the MIT License. See License.txt in the project root for license information.
20
+ * ------------------------------------------------------------------------------------------ */
21
+
22
+ import { DocumentSymbol, DocumentSymbolRequest, SymbolKind, SymbolTag } from '@difizen/vscode-languageserver-protocol';
23
+ import { ensure, TextDocumentLanguageFeature } from "./features.js";
24
+ import * as UUID from "./utils/uuid.js";
25
+ import { languages as Languages } from "./vscodeAdaptor/vscodeAdaptor.js";
26
+ export var SupportedSymbolKinds = [SymbolKind.File, SymbolKind.Module, SymbolKind.Namespace, SymbolKind.Package, SymbolKind.Class, SymbolKind.Method, SymbolKind.Property, SymbolKind.Field, SymbolKind.Constructor, SymbolKind.Enum, SymbolKind.Interface, SymbolKind.Function, SymbolKind.Variable, SymbolKind.Constant, SymbolKind.String, SymbolKind.Number, SymbolKind.Boolean, SymbolKind.Array, SymbolKind.Object, SymbolKind.Key, SymbolKind.Null, SymbolKind.EnumMember, SymbolKind.Struct, SymbolKind.Event, SymbolKind.Operator, SymbolKind.TypeParameter];
27
+ export var SupportedSymbolTags = [SymbolTag.Deprecated];
28
+ export var DocumentSymbolFeature = /*#__PURE__*/function (_TextDocumentLanguage) {
29
+ _inherits(DocumentSymbolFeature, _TextDocumentLanguage);
30
+ var _super = _createSuper(DocumentSymbolFeature);
31
+ function DocumentSymbolFeature(client) {
32
+ _classCallCheck(this, DocumentSymbolFeature);
33
+ return _super.call(this, client, DocumentSymbolRequest.type);
34
+ }
35
+ _createClass(DocumentSymbolFeature, [{
36
+ key: "fillClientCapabilities",
37
+ value: function fillClientCapabilities(capabilities) {
38
+ var symbolCapabilities = ensure(ensure(capabilities, 'textDocument'), 'documentSymbol');
39
+ symbolCapabilities.dynamicRegistration = true;
40
+ symbolCapabilities.symbolKind = {
41
+ valueSet: SupportedSymbolKinds
42
+ };
43
+ symbolCapabilities.hierarchicalDocumentSymbolSupport = true;
44
+ symbolCapabilities.tagSupport = {
45
+ valueSet: SupportedSymbolTags
46
+ };
47
+ symbolCapabilities.labelSupport = true;
48
+ }
49
+ }, {
50
+ key: "initialize",
51
+ value: function initialize(capabilities, documentSelector) {
52
+ var options = this.getRegistrationOptions(documentSelector, capabilities.documentSymbolProvider);
53
+ if (!options) {
54
+ return;
55
+ }
56
+ this.register({
57
+ id: UUID.generateUuid(),
58
+ registerOptions: options
59
+ });
60
+ }
61
+ }, {
62
+ key: "registerLanguageProvider",
63
+ value: function registerLanguageProvider(options) {
64
+ var _this = this;
65
+ var selector = options.documentSelector;
66
+ var provider = {
67
+ provideDocumentSymbols: function provideDocumentSymbols(document, token) {
68
+ var client = _this._client;
69
+ var _provideDocumentSymbols = /*#__PURE__*/function () {
70
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(document, token) {
71
+ var data, first;
72
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
73
+ while (1) switch (_context.prev = _context.next) {
74
+ case 0:
75
+ _context.prev = 0;
76
+ _context.next = 3;
77
+ return client.sendRequest(DocumentSymbolRequest.type, client.code2ProtocolConverter.asDocumentSymbolParams(document), token);
78
+ case 3:
79
+ data = _context.sent;
80
+ if (!(token.isCancellationRequested || data === undefined || data === null)) {
81
+ _context.next = 6;
82
+ break;
83
+ }
84
+ return _context.abrupt("return", null);
85
+ case 6:
86
+ if (!(data.length === 0)) {
87
+ _context.next = 10;
88
+ break;
89
+ }
90
+ return _context.abrupt("return", []);
91
+ case 10:
92
+ first = data[0];
93
+ if (!DocumentSymbol.is(first)) {
94
+ _context.next = 17;
95
+ break;
96
+ }
97
+ _context.next = 14;
98
+ return client.protocol2CodeConverter.asDocumentSymbols(data, token);
99
+ case 14:
100
+ return _context.abrupt("return", _context.sent);
101
+ case 17:
102
+ _context.next = 19;
103
+ return client.protocol2CodeConverter.asSymbolInformations(data, token);
104
+ case 19:
105
+ return _context.abrupt("return", _context.sent);
106
+ case 20:
107
+ _context.next = 25;
108
+ break;
109
+ case 22:
110
+ _context.prev = 22;
111
+ _context.t0 = _context["catch"](0);
112
+ return _context.abrupt("return", client.handleFailedRequest(DocumentSymbolRequest.type, token, _context.t0, null));
113
+ case 25:
114
+ case "end":
115
+ return _context.stop();
116
+ }
117
+ }, _callee, null, [[0, 22]]);
118
+ }));
119
+ return function _provideDocumentSymbols(_x, _x2) {
120
+ return _ref.apply(this, arguments);
121
+ };
122
+ }();
123
+ var middleware = client.middleware;
124
+ return middleware.provideDocumentSymbols ? middleware.provideDocumentSymbols(document, token, _provideDocumentSymbols) : _provideDocumentSymbols(document, token);
125
+ }
126
+ };
127
+ var metaData = options.label !== undefined ? {
128
+ label: options.label
129
+ } : undefined;
130
+ return [Languages.registerDocumentSymbolProvider(this._client.protocol2CodeConverter.asDocumentSelector(selector), provider, metaData), provider];
131
+ }
132
+ }]);
133
+ return DocumentSymbolFeature;
134
+ }(TextDocumentLanguageFeature);
@@ -0,0 +1,22 @@
1
+ import type { ProviderResult } from 'vscode';
2
+ import type { ClientCapabilities, ServerCapabilities, ExecuteCommandRegistrationOptions, RegistrationType } from '@difizen/vscode-languageserver-protocol';
3
+ import type { FeatureClient, DynamicFeature, FeatureState, RegistrationData } from './features.js';
4
+ export interface ExecuteCommandSignature {
5
+ (this: void, command: string, args: any[]): ProviderResult<any>;
6
+ }
7
+ export interface ExecuteCommandMiddleware {
8
+ executeCommand?: (this: void, command: string, args: any[], next: ExecuteCommandSignature) => ProviderResult<any>;
9
+ }
10
+ export declare class ExecuteCommandFeature implements DynamicFeature<ExecuteCommandRegistrationOptions> {
11
+ private readonly _client;
12
+ private readonly _commands;
13
+ constructor(client: FeatureClient<ExecuteCommandMiddleware>);
14
+ getState(): FeatureState;
15
+ get registrationType(): RegistrationType<ExecuteCommandRegistrationOptions>;
16
+ fillClientCapabilities(capabilities: ClientCapabilities): void;
17
+ initialize(capabilities: ServerCapabilities): void;
18
+ register(data: RegistrationData<ExecuteCommandRegistrationOptions>): void;
19
+ unregister(id: string): void;
20
+ clear(): void;
21
+ }
22
+ //# sourceMappingURL=executeCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeCommand.d.ts","sourceRoot":"","sources":["../../src/common/executeCommand.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iCAAiC,EACjC,gBAAgB,EAEjB,MAAM,yCAAyC,CAAC;AAGjD,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,YAAY,EACZ,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAKvB,MAAM,WAAW,uBAAuB;IACtC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,EAAE,CACf,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,GAAG,EAAE,EACX,IAAI,EAAE,uBAAuB,KAC1B,cAAc,CAAC,GAAG,CAAC,CAAC;CAC1B;AAED,qBAAa,qBACX,YAAW,cAAc,CAAC,iCAAiC,CAAC;IAE5D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0C;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4B;gBAE1C,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC;IAKpD,QAAQ,IAAI,YAAY;IAQ/B,IAAW,gBAAgB,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAEjF;IAEM,sBAAsB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAK9D,UAAU,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAUlD,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,iCAAiC,CAAC,GAAG,IAAI;IAsCzE,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ5B,KAAK,IAAI,IAAI;CAMrB"}
@@ -0,0 +1,117 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
7
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
8
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
9
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
+ /* --------------------------------------------------------------------------------------------
11
+ * Copyright (c) Microsoft Corporation. All rights reserved.
12
+ * Licensed under the MIT License. See License.txt in the project root for license information.
13
+ * ------------------------------------------------------------------------------------------ */
14
+
15
+ import { ExecuteCommandRequest } from '@difizen/vscode-languageserver-protocol';
16
+ import { ensure } from "./features.js";
17
+ import * as UUID from "./utils/uuid.js";
18
+ import { commands as Commands } from "./vscodeAdaptor/vscodeAdaptor.js";
19
+ export var ExecuteCommandFeature = /*#__PURE__*/function () {
20
+ function ExecuteCommandFeature(client) {
21
+ _classCallCheck(this, ExecuteCommandFeature);
22
+ this._client = client;
23
+ this._commands = new Map();
24
+ }
25
+ _createClass(ExecuteCommandFeature, [{
26
+ key: "getState",
27
+ value: function getState() {
28
+ return {
29
+ kind: 'workspace',
30
+ id: this.registrationType.method,
31
+ registrations: this._commands.size > 0
32
+ };
33
+ }
34
+ }, {
35
+ key: "registrationType",
36
+ get: function get() {
37
+ return ExecuteCommandRequest.type;
38
+ }
39
+ }, {
40
+ key: "fillClientCapabilities",
41
+ value: function fillClientCapabilities(capabilities) {
42
+ ensure(ensure(capabilities, 'workspace'), 'executeCommand').dynamicRegistration = true;
43
+ }
44
+ }, {
45
+ key: "initialize",
46
+ value: function initialize(capabilities) {
47
+ if (!capabilities.executeCommandProvider) {
48
+ return;
49
+ }
50
+ this.register({
51
+ id: UUID.generateUuid(),
52
+ registerOptions: Object.assign({}, capabilities.executeCommandProvider)
53
+ });
54
+ }
55
+ }, {
56
+ key: "register",
57
+ value: function register(data) {
58
+ var client = this._client;
59
+ var middleware = client.middleware;
60
+ var executeCommand = function executeCommand(command, args) {
61
+ var params = {
62
+ command: command,
63
+ arguments: args
64
+ };
65
+ return client.sendRequest(ExecuteCommandRequest.type, params).then(undefined, function (error) {
66
+ return client.handleFailedRequest(ExecuteCommandRequest.type, undefined, error, undefined);
67
+ });
68
+ };
69
+ if (data.registerOptions.commands) {
70
+ var disposables = [];
71
+ var _iterator = _createForOfIteratorHelper(data.registerOptions.commands),
72
+ _step;
73
+ try {
74
+ var _loop = function _loop() {
75
+ var command = _step.value;
76
+ disposables.push(Commands.registerCommand(command, function () {
77
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
78
+ args[_key] = arguments[_key];
79
+ }
80
+ return middleware.executeCommand ? middleware.executeCommand(command, args, executeCommand) : executeCommand(command, args);
81
+ }));
82
+ };
83
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
84
+ _loop();
85
+ }
86
+ } catch (err) {
87
+ _iterator.e(err);
88
+ } finally {
89
+ _iterator.f();
90
+ }
91
+ this._commands.set(data.id, disposables);
92
+ }
93
+ }
94
+ }, {
95
+ key: "unregister",
96
+ value: function unregister(id) {
97
+ var disposables = this._commands.get(id);
98
+ if (disposables) {
99
+ this._commands.delete(id);
100
+ disposables.forEach(function (disposable) {
101
+ return disposable.dispose();
102
+ });
103
+ }
104
+ }
105
+ }, {
106
+ key: "clear",
107
+ value: function clear() {
108
+ this._commands.forEach(function (value) {
109
+ value.forEach(function (disposable) {
110
+ return disposable.dispose();
111
+ });
112
+ });
113
+ this._commands.clear();
114
+ }
115
+ }]);
116
+ return ExecuteCommandFeature;
117
+ }();