@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,18 @@
1
+ import type { ClientCapabilities, CancellationToken, ServerCapabilities, DocumentSelector, TypeDefinitionRegistrationOptions, TypeDefinitionOptions } from '@difizen/vscode-languageserver-protocol';
2
+ import type { Disposable, TextDocument, ProviderResult, Position as VPosition, Definition as VDefinition, DefinitionLink as VDefinitionLink, TypeDefinitionProvider } from 'vscode';
3
+ import type { FeatureClient } from './features.js';
4
+ import { TextDocumentLanguageFeature } from './features.js';
5
+ export interface ProvideTypeDefinitionSignature {
6
+ (this: void, document: TextDocument, position: VPosition, token: CancellationToken): ProviderResult<VDefinition | VDefinitionLink[]>;
7
+ }
8
+ export interface TypeDefinitionMiddleware {
9
+ provideTypeDefinition?: (this: void, document: TextDocument, position: VPosition, token: CancellationToken, next: ProvideTypeDefinitionSignature) => ProviderResult<VDefinition | VDefinitionLink[]>;
10
+ }
11
+ export declare class TypeDefinitionFeature extends TextDocumentLanguageFeature<boolean | TypeDefinitionOptions, TypeDefinitionRegistrationOptions, TypeDefinitionProvider, TypeDefinitionMiddleware> {
12
+ constructor(client: FeatureClient<TypeDefinitionMiddleware>);
13
+ fillClientCapabilities(capabilities: ClientCapabilities): void;
14
+ initialize(capabilities: ServerCapabilities, documentSelector: DocumentSelector): void;
15
+ protected registerLanguageProvider(options: TypeDefinitionRegistrationOptions): [Disposable, TypeDefinitionProvider];
16
+ private registerProvider;
17
+ }
18
+ //# sourceMappingURL=typeDefinition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeDefinition.d.ts","sourceRoot":"","sources":["../../src/common/typeDefinition.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iCAAiC,EACjC,qBAAqB,EACtB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,cAAc,EACd,QAAQ,IAAI,SAAS,EACrB,UAAU,IAAI,WAAW,EACzB,cAAc,IAAI,eAAe,EACjC,sBAAsB,EACvB,MAAM,QAAQ,CAAC;AAEhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAU,MAAM,eAAe,CAAC;AAGpE,MAAM,WAAW,8BAA8B;IAC7C,CACE,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,iBAAiB,GACvB,cAAc,CAAC,WAAW,GAAG,eAAe,EAAE,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,wBAAwB;IACvC,qBAAqB,CAAC,EAAE,CACtB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,8BAA8B,KACjC,cAAc,CAAC,WAAW,GAAG,eAAe,EAAE,CAAC,CAAC;CACtD;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;IAa9D,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;IAkDvC,OAAO,CAAC,gBAAgB;CASzB"}
@@ -0,0 +1,89 @@
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 _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ 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); }
5
+ 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; }
6
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9
+ 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); } }
10
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
+ 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); }
13
+ 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); }
14
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
15
+ 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); }; }
16
+ 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); }
17
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
18
+ 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; } }
19
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
20
+ /* --------------------------------------------------------------------------------------------
21
+ * Copyright (c) Microsoft Corporation. All rights reserved.
22
+ * Licensed under the MIT License. See License.txt in the project root for license information.
23
+ * ------------------------------------------------------------------------------------------ */
24
+
25
+ import { TypeDefinitionRequest } from '@difizen/vscode-languageserver-protocol';
26
+ import { TextDocumentLanguageFeature, ensure } from "./features.js";
27
+ import { languages as Languages } from "./vscodeAdaptor/vscodeAdaptor.js";
28
+ export var TypeDefinitionFeature = /*#__PURE__*/function (_TextDocumentLanguage) {
29
+ _inherits(TypeDefinitionFeature, _TextDocumentLanguage);
30
+ var _super = _createSuper(TypeDefinitionFeature);
31
+ function TypeDefinitionFeature(client) {
32
+ _classCallCheck(this, TypeDefinitionFeature);
33
+ return _super.call(this, client, TypeDefinitionRequest.type);
34
+ }
35
+ _createClass(TypeDefinitionFeature, [{
36
+ key: "fillClientCapabilities",
37
+ value: function fillClientCapabilities(capabilities) {
38
+ ensure(ensure(capabilities, 'textDocument'), 'typeDefinition').dynamicRegistration = true;
39
+ var typeDefinitionSupport = ensure(ensure(capabilities, 'textDocument'), 'typeDefinition');
40
+ typeDefinitionSupport.dynamicRegistration = true;
41
+ typeDefinitionSupport.linkSupport = true;
42
+ }
43
+ }, {
44
+ key: "initialize",
45
+ value: function initialize(capabilities, documentSelector) {
46
+ var _this$getRegistration = this.getRegistration(documentSelector, capabilities.typeDefinitionProvider),
47
+ _this$getRegistration2 = _slicedToArray(_this$getRegistration, 2),
48
+ id = _this$getRegistration2[0],
49
+ options = _this$getRegistration2[1];
50
+ if (!id || !options) {
51
+ return;
52
+ }
53
+ this.register({
54
+ id: id,
55
+ registerOptions: options
56
+ });
57
+ }
58
+ }, {
59
+ key: "registerLanguageProvider",
60
+ value: function registerLanguageProvider(options) {
61
+ var _this = this;
62
+ var selector = options.documentSelector;
63
+ var provider = {
64
+ provideTypeDefinition: function provideTypeDefinition(document, position, token) {
65
+ var client = _this._client;
66
+ var provideTypeDefinition = function provideTypeDefinition(document, position, token) {
67
+ return client.sendRequest(TypeDefinitionRequest.type, client.code2ProtocolConverter.asTextDocumentPositionParams(document, position), token).then(function (result) {
68
+ if (token.isCancellationRequested) {
69
+ return null;
70
+ }
71
+ return client.protocol2CodeConverter.asDefinitionResult(result, token);
72
+ }, function (error) {
73
+ return client.handleFailedRequest(TypeDefinitionRequest.type, token, error, null);
74
+ });
75
+ };
76
+ var middleware = client.middleware;
77
+ return middleware.provideTypeDefinition ? middleware.provideTypeDefinition(document, position, token, provideTypeDefinition) : provideTypeDefinition(document, position, token);
78
+ }
79
+ };
80
+ return [this.registerProvider(selector, provider), provider];
81
+ }
82
+ }, {
83
+ key: "registerProvider",
84
+ value: function registerProvider(selector, provider) {
85
+ return Languages.registerTypeDefinitionProvider(this._client.protocol2CodeConverter.asDocumentSelector(selector), provider);
86
+ }
87
+ }]);
88
+ return TypeDefinitionFeature;
89
+ }(TextDocumentLanguageFeature);
@@ -0,0 +1,33 @@
1
+ import type { ClientCapabilities, DocumentSelector, ServerCapabilities, TypeHierarchyRegistrationOptions, TypeHierarchyOptions } from '@difizen/vscode-languageserver-protocol';
2
+ import type { Disposable, TextDocument, ProviderResult, Position as VPosition, CancellationToken, TypeHierarchyProvider as VTypeHierarchyProvider, TypeHierarchyItem as VTypeHierarchyItem } from 'vscode';
3
+ import type { FeatureClient } from './features.js';
4
+ import { TextDocumentLanguageFeature } from './features.js';
5
+ export type PrepareTypeHierarchySignature = (this: void, document: TextDocument, position: VPosition, token: CancellationToken) => ProviderResult<VTypeHierarchyItem[]>;
6
+ export type TypeHierarchySupertypesSignature = (this: void, item: VTypeHierarchyItem, token: CancellationToken) => ProviderResult<VTypeHierarchyItem[]>;
7
+ export type TypeHierarchySubtypesSignature = (this: void, item: VTypeHierarchyItem, token: CancellationToken) => ProviderResult<VTypeHierarchyItem[]>;
8
+ /**
9
+ * Type hierarchy middleware
10
+ *
11
+ * @since 3.17.0
12
+ */
13
+ export type TypeHierarchyMiddleware = {
14
+ prepareTypeHierarchy?: (this: void, document: TextDocument, positions: VPosition, token: CancellationToken, next: PrepareTypeHierarchySignature) => ProviderResult<VTypeHierarchyItem[]>;
15
+ provideTypeHierarchySupertypes?: (this: void, item: VTypeHierarchyItem, token: CancellationToken, next: TypeHierarchySupertypesSignature) => ProviderResult<VTypeHierarchyItem[]>;
16
+ provideTypeHierarchySubtypes?: (this: void, item: VTypeHierarchyItem, token: CancellationToken, next: TypeHierarchySubtypesSignature) => ProviderResult<VTypeHierarchyItem[]>;
17
+ };
18
+ declare class TypeHierarchyProvider implements VTypeHierarchyProvider {
19
+ private client;
20
+ private middleware;
21
+ constructor(client: FeatureClient<TypeHierarchyMiddleware>);
22
+ prepareTypeHierarchy(document: TextDocument, position: VPosition, token: CancellationToken): ProviderResult<VTypeHierarchyItem[]>;
23
+ provideTypeHierarchySupertypes(item: VTypeHierarchyItem, token: CancellationToken): ProviderResult<VTypeHierarchyItem[]>;
24
+ provideTypeHierarchySubtypes(item: VTypeHierarchyItem, token: CancellationToken): ProviderResult<VTypeHierarchyItem[]>;
25
+ }
26
+ export declare class TypeHierarchyFeature extends TextDocumentLanguageFeature<boolean | TypeHierarchyOptions, TypeHierarchyRegistrationOptions, TypeHierarchyProvider, TypeHierarchyMiddleware> {
27
+ constructor(client: FeatureClient<TypeHierarchyMiddleware>);
28
+ fillClientCapabilities(capabilities: ClientCapabilities): void;
29
+ initialize(capabilities: ServerCapabilities, documentSelector: DocumentSelector): void;
30
+ protected registerLanguageProvider(options: TypeHierarchyRegistrationOptions): [Disposable, TypeHierarchyProvider];
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=typeHierarchy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeHierarchy.d.ts","sourceRoot":"","sources":["../../src/common/typeHierarchy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,138 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
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 _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
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
+ 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); }
15
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
16
+ 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); } }
17
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
18
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
19
+ 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); }
20
+ /* --------------------------------------------------------------------------------------------
21
+ * Copyright (c) Microsoft Corporation. All rights reserved.
22
+ * Licensed under the MIT License. See License.txt in the project root for license information.
23
+ * ------------------------------------------------------------------------------------------ */
24
+
25
+ import { TypeHierarchyPrepareRequest, TypeHierarchySupertypesRequest, TypeHierarchySubtypesRequest } from '@difizen/vscode-languageserver-protocol';
26
+ import { TextDocumentLanguageFeature, ensure } from "./features.js";
27
+ import { languages as Languages } from "./vscodeAdaptor/vscodeAdaptor.js";
28
+
29
+ /**
30
+ * Type hierarchy middleware
31
+ *
32
+ * @since 3.17.0
33
+ */
34
+ var TypeHierarchyProvider = /*#__PURE__*/function () {
35
+ function TypeHierarchyProvider(client) {
36
+ _classCallCheck(this, TypeHierarchyProvider);
37
+ this.client = client;
38
+ this.middleware = client.middleware;
39
+ }
40
+ _createClass(TypeHierarchyProvider, [{
41
+ key: "prepareTypeHierarchy",
42
+ value: function prepareTypeHierarchy(document, position, token) {
43
+ var client = this.client;
44
+ var middleware = this.middleware;
45
+ var prepareTypeHierarchy = function prepareTypeHierarchy(document, position, token) {
46
+ var params = client.code2ProtocolConverter.asTextDocumentPositionParams(document, position);
47
+ return client.sendRequest(TypeHierarchyPrepareRequest.type, params, token).then(function (result) {
48
+ if (token.isCancellationRequested) {
49
+ return null;
50
+ }
51
+ return client.protocol2CodeConverter.asTypeHierarchyItems(result, token);
52
+ }, function (error) {
53
+ return client.handleFailedRequest(TypeHierarchyPrepareRequest.type, token, error, null);
54
+ });
55
+ };
56
+ return middleware.prepareTypeHierarchy ? middleware.prepareTypeHierarchy(document, position, token, prepareTypeHierarchy) : prepareTypeHierarchy(document, position, token);
57
+ }
58
+ }, {
59
+ key: "provideTypeHierarchySupertypes",
60
+ value: function provideTypeHierarchySupertypes(item, token) {
61
+ var client = this.client;
62
+ var middleware = this.middleware;
63
+ var provideTypeHierarchySupertypes = function provideTypeHierarchySupertypes(item, token) {
64
+ var params = {
65
+ item: client.code2ProtocolConverter.asTypeHierarchyItem(item)
66
+ };
67
+ return client.sendRequest(TypeHierarchySupertypesRequest.type, params, token).then(function (result) {
68
+ if (token.isCancellationRequested) {
69
+ return null;
70
+ }
71
+ return client.protocol2CodeConverter.asTypeHierarchyItems(result, token);
72
+ }, function (error) {
73
+ return client.handleFailedRequest(TypeHierarchySupertypesRequest.type, token, error, null);
74
+ });
75
+ };
76
+ return middleware.provideTypeHierarchySupertypes ? middleware.provideTypeHierarchySupertypes(item, token, provideTypeHierarchySupertypes) : provideTypeHierarchySupertypes(item, token);
77
+ }
78
+ }, {
79
+ key: "provideTypeHierarchySubtypes",
80
+ value: function provideTypeHierarchySubtypes(item, token) {
81
+ var client = this.client;
82
+ var middleware = this.middleware;
83
+ var provideTypeHierarchySubtypes = function provideTypeHierarchySubtypes(item, token) {
84
+ var params = {
85
+ item: client.code2ProtocolConverter.asTypeHierarchyItem(item)
86
+ };
87
+ return client.sendRequest(TypeHierarchySubtypesRequest.type, params, token).then(function (result) {
88
+ if (token.isCancellationRequested) {
89
+ return null;
90
+ }
91
+ return client.protocol2CodeConverter.asTypeHierarchyItems(result, token);
92
+ }, function (error) {
93
+ return client.handleFailedRequest(TypeHierarchySubtypesRequest.type, token, error, null);
94
+ });
95
+ };
96
+ return middleware.provideTypeHierarchySubtypes ? middleware.provideTypeHierarchySubtypes(item, token, provideTypeHierarchySubtypes) : provideTypeHierarchySubtypes(item, token);
97
+ }
98
+ }]);
99
+ return TypeHierarchyProvider;
100
+ }();
101
+ export var TypeHierarchyFeature = /*#__PURE__*/function (_TextDocumentLanguage) {
102
+ _inherits(TypeHierarchyFeature, _TextDocumentLanguage);
103
+ var _super = _createSuper(TypeHierarchyFeature);
104
+ function TypeHierarchyFeature(client) {
105
+ _classCallCheck(this, TypeHierarchyFeature);
106
+ return _super.call(this, client, TypeHierarchyPrepareRequest.type);
107
+ }
108
+ _createClass(TypeHierarchyFeature, [{
109
+ key: "fillClientCapabilities",
110
+ value: function fillClientCapabilities(capabilities) {
111
+ var capability = ensure(ensure(capabilities, 'textDocument'), 'typeHierarchy');
112
+ capability.dynamicRegistration = true;
113
+ }
114
+ }, {
115
+ key: "initialize",
116
+ value: function initialize(capabilities, documentSelector) {
117
+ var _this$getRegistration = this.getRegistration(documentSelector, capabilities.typeHierarchyProvider),
118
+ _this$getRegistration2 = _slicedToArray(_this$getRegistration, 2),
119
+ id = _this$getRegistration2[0],
120
+ options = _this$getRegistration2[1];
121
+ if (!id || !options) {
122
+ return;
123
+ }
124
+ this.register({
125
+ id: id,
126
+ registerOptions: options
127
+ });
128
+ }
129
+ }, {
130
+ key: "registerLanguageProvider",
131
+ value: function registerLanguageProvider(options) {
132
+ var client = this._client;
133
+ var provider = new TypeHierarchyProvider(client);
134
+ return [Languages.registerTypeHierarchyProvider(client.protocol2CodeConverter.asDocumentSelector(options.documentSelector), provider), provider];
135
+ }
136
+ }]);
137
+ return TypeHierarchyFeature;
138
+ }(TextDocumentLanguageFeature);
@@ -0,0 +1,42 @@
1
+ import type { CancellationToken } from 'vscode';
2
+ export type ITask<T> = () => T;
3
+ export declare class Delayer<T> {
4
+ defaultDelay: number;
5
+ private timeout;
6
+ private completionPromise;
7
+ private onSuccess;
8
+ private task;
9
+ constructor(defaultDelay: number);
10
+ trigger(task: ITask<T>, delay?: number): Promise<T>;
11
+ forceDelivery(): T | undefined;
12
+ isTriggered(): boolean;
13
+ cancel(): void;
14
+ private cancelTimeout;
15
+ }
16
+ export declare class Semaphore<T = void> {
17
+ private _capacity;
18
+ private _active;
19
+ private _waiting;
20
+ constructor(capacity?: number);
21
+ lock(thunk: () => T | PromiseLike<T>): Promise<T>;
22
+ get active(): number;
23
+ private runNext;
24
+ private doRunNext;
25
+ }
26
+ export declare function setTestMode(): void;
27
+ export declare function clearTestMode(): void;
28
+ export type YieldOptions = {
29
+ /**
30
+ * The time in ms after which the function should yield.
31
+ * The minimum yield time is 15ms
32
+ */
33
+ yieldAfter?: number;
34
+ /**
35
+ * An optional callback that is invoke when the code yields.
36
+ */
37
+ yieldCallback?: () => void;
38
+ };
39
+ export declare function map<P, C>(items: ReadonlyArray<P>, func: (item: P) => C, token?: CancellationToken, options?: YieldOptions): Promise<C[]>;
40
+ export declare function mapAsync<P, C>(items: ReadonlyArray<P>, func: (item: P, token?: CancellationToken) => Promise<C>, token?: CancellationToken, options?: YieldOptions): Promise<C[]>;
41
+ export declare function forEach<P>(items: ReadonlyArray<P>, func: (item: P) => void, token?: CancellationToken, options?: YieldOptions): Promise<void>;
42
+ //# sourceMappingURL=async.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../src/common/utils/async.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAEhD,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;AAE/B,qBAAa,OAAO,CAAC,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,iBAAiB,CAAyB;IAClD,OAAO,CAAC,SAAS,CAA4D;IAC7E,OAAO,CAAC,IAAI,CAAuB;gBAEvB,YAAY,EAAE,MAAM;IAQzB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,GAAE,MAA0B,GAAG,OAAO,CAAC,CAAC,CAAC;IA+BtE,aAAa,IAAI,CAAC,GAAG,SAAS;IAY9B,WAAW,IAAI,OAAO;IAItB,MAAM,IAAI,IAAI;IAKrB,OAAO,CAAC,aAAa;CAMtB;AAUD,qBAAa,SAAS,CAAC,CAAC,GAAG,IAAI;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAe;gBAEZ,QAAQ,SAAI;IASxB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAOxD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,SAAS;CAmClB;AAGD,wBAAgB,WAAW,SAE1B;AACD,wBAAgB,aAAa,SAE5B;AA+DD,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAU;IAE7B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC;AAEF,wBAAsB,GAAG,CAAC,CAAC,EAAE,CAAC,EAC5B,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EACpB,KAAK,CAAC,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,CAAC,EAAE,CAAC,CA8Bd;AAED,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,EACjC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,EACxD,KAAK,CAAC,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,CAAC,EAAE,CAAC,CA6Bd;AAED,wBAAsB,OAAO,CAAC,CAAC,EAC7B,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EACvB,KAAK,CAAC,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,IAAI,CAAC,CA4Bf"}