@mrclrchtr/supi-lsp 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/README.md +13 -8
  2. package/node_modules/@mrclrchtr/supi-core/package.json +13 -2
  3. package/node_modules/@mrclrchtr/supi-core/src/api.ts +26 -92
  4. package/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  5. package/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  6. package/node_modules/@mrclrchtr/supi-core/src/index.ts +26 -92
  7. package/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  8. package/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  9. package/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  10. package/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  11. package/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  12. package/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  13. package/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  14. package/node_modules/vscode-jsonrpc/License.txt +11 -0
  15. package/node_modules/vscode-jsonrpc/README.md +69 -0
  16. package/node_modules/vscode-jsonrpc/browser.d.ts +6 -0
  17. package/node_modules/vscode-jsonrpc/browser.js +7 -0
  18. package/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  19. package/node_modules/vscode-jsonrpc/lib/browser/main.js +76 -0
  20. package/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +12 -0
  21. package/node_modules/vscode-jsonrpc/lib/browser/ril.js +156 -0
  22. package/node_modules/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  23. package/node_modules/vscode-jsonrpc/lib/common/api.js +81 -0
  24. package/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  25. package/node_modules/vscode-jsonrpc/lib/common/cancellation.js +96 -0
  26. package/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +358 -0
  27. package/node_modules/vscode-jsonrpc/lib/common/connection.js +1214 -0
  28. package/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  29. package/node_modules/vscode-jsonrpc/lib/common/disposable.js +16 -0
  30. package/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  31. package/node_modules/vscode-jsonrpc/lib/common/encoding.js +70 -0
  32. package/node_modules/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  33. package/node_modules/vscode-jsonrpc/lib/common/events.js +128 -0
  34. package/node_modules/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  35. package/node_modules/vscode-jsonrpc/lib/common/is.js +35 -0
  36. package/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +53 -0
  37. package/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +398 -0
  38. package/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  39. package/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +152 -0
  40. package/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  41. package/node_modules/vscode-jsonrpc/lib/common/messageReader.js +197 -0
  42. package/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  43. package/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +115 -0
  44. package/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  45. package/node_modules/vscode-jsonrpc/lib/common/messages.js +306 -0
  46. package/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  47. package/node_modules/vscode-jsonrpc/lib/common/ral.js +23 -0
  48. package/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  49. package/node_modules/vscode-jsonrpc/lib/common/semaphore.js +68 -0
  50. package/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  51. package/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +76 -0
  52. package/node_modules/vscode-jsonrpc/lib/node/main.d.ts +63 -0
  53. package/node_modules/vscode-jsonrpc/lib/node/main.js +257 -0
  54. package/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +13 -0
  55. package/node_modules/vscode-jsonrpc/lib/node/ril.js +161 -0
  56. package/node_modules/vscode-jsonrpc/node.cmd +5 -0
  57. package/node_modules/vscode-jsonrpc/node.d.ts +6 -0
  58. package/node_modules/vscode-jsonrpc/node.js +7 -0
  59. package/node_modules/vscode-jsonrpc/package.json +45 -0
  60. package/node_modules/vscode-jsonrpc/thirdpartynotices.txt +16 -0
  61. package/node_modules/vscode-jsonrpc/typings/thenable.d.ts +5 -0
  62. package/node_modules/vscode-languageserver-protocol/License.txt +11 -0
  63. package/node_modules/vscode-languageserver-protocol/README.md +16 -0
  64. package/node_modules/vscode-languageserver-protocol/browser.d.ts +6 -0
  65. package/node_modules/vscode-languageserver-protocol/browser.js +7 -0
  66. package/node_modules/vscode-languageserver-protocol/lib/browser/main.d.ts +4 -0
  67. package/node_modules/vscode-languageserver-protocol/lib/browser/main.js +28 -0
  68. package/node_modules/vscode-languageserver-protocol/lib/common/api.d.ts +58 -0
  69. package/node_modules/vscode-languageserver-protocol/lib/common/api.js +77 -0
  70. package/node_modules/vscode-languageserver-protocol/lib/common/connection.d.ts +187 -0
  71. package/node_modules/vscode-languageserver-protocol/lib/common/connection.js +15 -0
  72. package/node_modules/vscode-languageserver-protocol/lib/common/messages.d.ts +51 -0
  73. package/node_modules/vscode-languageserver-protocol/lib/common/messages.js +44 -0
  74. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.$.d.ts +1 -0
  75. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.$.js +43 -0
  76. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.d.ts +86 -0
  77. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +42 -0
  78. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.d.ts +66 -0
  79. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +32 -0
  80. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.d.ts +35 -0
  81. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +24 -0
  82. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.d.ts +3252 -0
  83. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.d.ts +37 -0
  84. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +22 -0
  85. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.d.ts +341 -0
  86. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +74 -0
  87. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.d.ts +306 -0
  88. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +101 -0
  89. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.d.ts +109 -0
  90. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +30 -0
  91. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.d.ts +38 -0
  92. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +21 -0
  93. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.d.ts +110 -0
  94. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +43 -0
  95. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.d.ts +57 -0
  96. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +22 -0
  97. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.d.ts +86 -0
  98. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +30 -0
  99. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +943 -0
  100. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.d.ts +52 -0
  101. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +19 -0
  102. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.d.ts +106 -0
  103. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +68 -0
  104. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.d.ts +400 -0
  105. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +214 -0
  106. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.d.ts +107 -0
  107. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +37 -0
  108. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.d.ts +41 -0
  109. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +20 -0
  110. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.d.ts +223 -0
  111. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +57 -0
  112. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.d.ts +72 -0
  113. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +22 -0
  114. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.d.ts +38 -0
  115. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +21 -0
  116. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.d.ts +83 -0
  117. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +42 -0
  118. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.d.ts +74 -0
  119. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +27 -0
  120. package/node_modules/vscode-languageserver-protocol/lib/common/utils/is.d.ts +9 -0
  121. package/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +46 -0
  122. package/node_modules/vscode-languageserver-protocol/lib/node/main.d.ts +6 -0
  123. package/node_modules/vscode-languageserver-protocol/lib/node/main.js +28 -0
  124. package/node_modules/vscode-languageserver-protocol/metaModel.schema.json +783 -0
  125. package/node_modules/vscode-languageserver-protocol/node.cmd +5 -0
  126. package/node_modules/vscode-languageserver-protocol/node.d.ts +6 -0
  127. package/node_modules/vscode-languageserver-protocol/node.js +7 -0
  128. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/License.txt +11 -0
  129. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/README.md +69 -0
  130. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.d.ts +6 -0
  131. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js +7 -0
  132. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  133. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js +76 -0
  134. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +12 -0
  135. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js +156 -0
  136. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  137. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js +81 -0
  138. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  139. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js +96 -0
  140. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +358 -0
  141. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js +1212 -0
  142. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  143. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js +16 -0
  144. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  145. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.js +70 -0
  146. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  147. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js +128 -0
  148. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  149. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js +35 -0
  150. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +53 -0
  151. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +398 -0
  152. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  153. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +152 -0
  154. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  155. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js +197 -0
  156. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  157. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +115 -0
  158. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  159. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js +306 -0
  160. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  161. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js +23 -0
  162. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  163. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js +68 -0
  164. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  165. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +76 -0
  166. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.d.ts +63 -0
  167. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.js +257 -0
  168. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +13 -0
  169. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.js +161 -0
  170. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.cmd +5 -0
  171. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.d.ts +6 -0
  172. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.js +7 -0
  173. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/package.json +45 -0
  174. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/thirdpartynotices.txt +16 -0
  175. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/typings/thenable.d.ts +5 -0
  176. package/node_modules/vscode-languageserver-protocol/package.json +45 -0
  177. package/node_modules/vscode-languageserver-protocol/thirdpartynotices.txt +31 -0
  178. package/node_modules/vscode-languageserver-types/License.txt +11 -0
  179. package/node_modules/vscode-languageserver-types/README.md +17 -0
  180. package/node_modules/vscode-languageserver-types/lib/esm/main.d.ts +3139 -0
  181. package/node_modules/vscode-languageserver-types/lib/esm/main.js +2222 -0
  182. package/node_modules/vscode-languageserver-types/lib/esm/package.json +3 -0
  183. package/node_modules/vscode-languageserver-types/lib/umd/main.d.ts +3139 -0
  184. package/node_modules/vscode-languageserver-types/lib/umd/main.js +2272 -0
  185. package/node_modules/vscode-languageserver-types/package.json +38 -0
  186. package/node_modules/vscode-languageserver-types/thirdpartynotices.txt +16 -0
  187. package/package.json +2 -2
  188. package/src/config/config.ts +1 -1
  189. package/src/handlers/diagnostic-injection.ts +182 -0
  190. package/src/handlers/session-lifecycle.ts +139 -0
  191. package/src/handlers/status-command.ts +38 -0
  192. package/src/handlers/workspace-recovery.ts +92 -0
  193. package/src/lsp.ts +15 -413
  194. package/src/manager/manager-helpers.ts +1 -1
  195. package/src/manager/manager-workspace-symbol.ts +1 -1
  196. package/src/manager/manager.ts +1 -1
  197. package/src/session/scanner.ts +1 -1
  198. package/src/session/service-registry.ts +1 -1
  199. package/src/session/settings-registration.ts +1 -1
  200. package/src/tool/guidance.ts +5 -14
  201. package/src/tool/names.ts +12 -4
  202. package/src/tool/register-tools.ts +2 -3
  203. package/src/tool/service-actions.ts +141 -0
  204. package/src/tool/tool-specs.ts +93 -93
  205. package/src/utils.ts +1 -1
  206. package/src/workspace-change.ts +40 -0
package/README.md CHANGED
@@ -18,22 +18,25 @@ After editing the source, run `/reload`.
18
18
 
19
19
  ## What you get
20
20
 
21
- After install, pi gets:
21
+ After install, pi gets **10 focused expert tools** for semantic language-server analysis:
22
22
 
23
- - `lsp_lookup` — semantic hover, definition, references, and implementation at a known position
23
+ - `lsp_hover` — semantic type or symbol information at a given position
24
+ - `lsp_definition` — go to definition at a known position
25
+ - `lsp_references` — find all references to a symbol
26
+ - `lsp_implementation` — find implementations of an interface or method
24
27
  - `lsp_document_symbols` — semantic declarations for one supported file
25
28
  - `lsp_workspace_symbols` — semantic symbol-name lookup across the project
26
29
  - `lsp_diagnostics` — current diagnostics for one file or a workspace summary
27
- - `lsp_refactor` — semantic rename planning and code actions at a known position
30
+ - `lsp_rename` — semantic rename planning at a known position
31
+ - `lsp_code_actions` — semantic fixes or refactors at a known position
28
32
  - `lsp_recover` — refresh stale diagnostics after workspace changes
29
33
  - `/lsp-status` — inspect detected servers, roots, open files, and diagnostics
30
- - automatic LSP-aware diagnostic surfacing around edits and agent turns
31
34
 
32
35
  Coordinates use **1-based** line and character positions.
33
36
 
34
37
  ## Automatic behavior
35
38
 
36
- This package does more than register a tool:
39
+ This package does more than register these tools:
37
40
 
38
41
  - starts detected language servers for the current project
39
42
  - rebuilds project-specific prompt guidance based on active servers
@@ -74,16 +77,18 @@ if (state.kind === "ready") {
74
77
  }
75
78
  ```
76
79
 
77
- `SessionLspService` methods use raw **0-based LSP positions**. The expert tools (`lsp_lookup`, `lsp_refactor`, etc.) keep the public 1-based coordinate UX.
80
+ `SessionLspService` methods use raw **0-based LSP positions**. The expert tools (`lsp_hover`, `lsp_definition`, etc.) keep the public 1-based coordinate UX.
78
81
 
79
82
  ## Source
80
83
 
81
84
  - `src/lsp.ts` — extension wiring, session lifecycle, and `/lsp-status`
82
85
  - `src/config/` — server config, defaults, capabilities, and exported LSP protocol types
83
86
  - `src/session/` — session state, scanning, settings registration, tree persistence, and shared service registry
84
- - `src/tool/register-tools.ts` — expert tool registration for the split LSP toolset
87
+ - `src/tool/tool-specs.ts` — single source of truth for the public LSP tool surface
88
+ - `src/tool/guidance.ts` — prompt surfaces derived from tool specs
89
+ - `src/tool/register-tools.ts` — focused tool registration driven by tool specs
85
90
  - `src/tool/service-actions.ts` — service-backed tool execution and formatting
86
- - `src/tool/guidance.ts` / `src/tool/names.ts` — prompt surfaces and stable tool names
91
+ - `src/tool/names.ts` — stable tool name constants
87
92
  - `src/tool/overrides.ts` — read/write/edit overrides for inline diagnostics
88
93
  - `src/ui/` — custom diagnostic message rendering and the status overlay
89
94
  - `src/client/`, `src/manager/`, `src/diagnostics/` — runtime engine subsystems
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrclrchtr/supi-core",
3
- "version": "1.7.0",
3
+ "version": "1.8.0",
4
4
  "description": "SuPi core — shared infrastructure for SuPi extensions (XML context tags, config system)",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -37,8 +37,19 @@
37
37
  "main": "src/api.ts",
38
38
  "exports": {
39
39
  "./api": "./src/api.ts",
40
+ "./config": "./src/config.ts",
41
+ "./context": "./src/context.ts",
42
+ "./debug": "./src/debug-registry.ts",
40
43
  "./extension": "./src/extension.ts",
41
- "./package.json": "./package.json"
44
+ "./package.json": "./package.json",
45
+ "./path": "./src/path.ts",
46
+ "./project": "./src/project.ts",
47
+ "./session": "./src/session.ts",
48
+ "./settings": "./src/settings.ts",
49
+ "./settings-ui": "./src/settings-ui.ts",
50
+ "./terminal": "./src/terminal.ts",
51
+ "./tool-framework": "./src/tool-framework.ts",
52
+ "./types": "./src/types.ts"
42
53
  },
43
54
  "pi": {
44
55
  "extensions": [
@@ -1,96 +1,30 @@
1
1
  // supi-core — shared infrastructure for SuPi extensions.
2
2
  // Provides XML context tag wrapping, unified config system, context-message utilities,
3
3
  // settings registry for supi-wide TUI settings, and a shared tool-spec/registration framework.
4
+ //
5
+ // Convenience barrel — re-exports all domain entry points.
6
+ // For lighter imports, use one of the domain subpaths directly
7
+ // (e.g. @mrclrchtr/supi-core/config, @mrclrchtr/supi-core/context).
4
8
 
5
- export type { SupiConfigLocation, SupiConfigOptions } from "./config/config.ts";
6
- export {
7
- loadSupiConfig,
8
- loadSupiConfigForScope,
9
- readJsonFile,
10
- removeSupiConfigKey,
11
- writeSupiConfig,
12
- } from "./config/config.ts";
13
- export type { ConfigSettingsHelpers, ConfigSettingsOptions } from "./config/config-settings.ts";
14
- export { registerConfigSettings } from "./config/config-settings.ts";
15
- export type { ContextMessageLike } from "./context/context-messages.ts";
16
- export {
17
- findLastUserMessageIndex,
18
- getContextToken,
19
- getPromptContent,
20
- pruneAndReorderContextMessages,
21
- restorePromptContent,
22
- } from "./context/context-messages.ts";
23
- export type { ContextProvider } from "./context/context-provider-registry.ts";
24
- export {
25
- clearRegisteredContextProviders,
26
- getRegisteredContextProviders,
27
- registerContextProvider,
28
- } from "./context/context-provider-registry.ts";
29
- export { wrapExtensionContext } from "./context/context-tag.ts";
30
- export type {
31
- DebugAgentAccess,
32
- DebugEvent,
33
- DebugEventInput,
34
- DebugEventQuery,
35
- DebugEventQueryResult,
36
- DebugEventView,
37
- DebugLevel,
38
- DebugNotifyLevel,
39
- DebugRegistryConfig,
40
- DebugSummary,
41
- } from "./debug-registry.ts";
42
- export {
43
- clearDebugEvents,
44
- configureDebugRegistry,
45
- DEBUG_REGISTRY_DEFAULTS,
46
- getDebugEvents,
47
- getDebugRegistryConfig,
48
- getDebugSummary,
49
- recordDebugEvent,
50
- redactDebugData,
51
- resetDebugRegistry,
52
- } from "./debug-registry.ts";
53
- export { fileToUri, resolveToolPath, stripToolPathPrefix, uriToFile } from "./path-utils.ts";
54
- export type { KnownRootEntry } from "./project-roots.ts";
55
- export {
56
- buildKnownRootsMap,
57
- byPathDepth,
58
- dedupeTopmostRoots,
59
- findProjectRoot,
60
- isWithin,
61
- isWithinOrEqual,
62
- mergeKnownRoots,
63
- resolveKnownRoot,
64
- segmentCount,
65
- sortRootsBySpecificity,
66
- walkProject,
67
- } from "./project-roots.ts";
68
- export { createRegistry, createSessionStateRegistry } from "./registry-utils.ts";
69
- export { getActiveBranchEntries } from "./session-utils.ts";
70
- export { registerSettingsCommand } from "./settings/settings-command.ts";
71
- export type { SettingsScope, SettingsSection } from "./settings/settings-registry.ts";
72
- export {
73
- clearRegisteredSettings,
74
- getRegisteredSettings,
75
- registerSettings,
76
- } from "./settings/settings-registry.ts";
77
- export { createInputSubmenu, openSettingsOverlay } from "./settings/settings-ui.ts";
78
- export type { TitleTarget } from "./terminal.ts";
79
- export {
80
- DONE_SYMBOL,
81
- formatTitle,
82
- signalBell,
83
- signalDone,
84
- signalWaiting,
85
- WAITING_SYMBOL,
86
- } from "./terminal.ts";
87
- export type { SuiPiToolPromptSurface, SuiPiToolSpec, ToolExecuteFn } from "./tool-framework.ts";
88
- export {
89
- CharacterParam,
90
- derivePromptSurface,
91
- FileParam,
92
- LineParam,
93
- MaxResultsParam,
94
- registerSuiPiTools,
95
- SymbolParam,
96
- } from "./tool-framework.ts";
9
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
10
+ export * from "./config.ts";
11
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
12
+ export * from "./context.ts";
13
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
14
+ export * from "./debug-registry.ts";
15
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
16
+ export * from "./path.ts";
17
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
18
+ export * from "./project.ts";
19
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
20
+ export * from "./session.ts";
21
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
22
+ export * from "./settings.ts";
23
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
24
+ export * from "./settings-ui.ts";
25
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
26
+ export * from "./terminal.ts";
27
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
28
+ export * from "./tool-framework.ts";
29
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
30
+ export * from "./types.ts";
@@ -0,0 +1,11 @@
1
+ // supi-core config domain — config loading and config-settings helpers.
2
+ export type { SupiConfigLocation, SupiConfigOptions } from "./config/config.ts";
3
+ export {
4
+ loadSupiConfig,
5
+ loadSupiConfigForScope,
6
+ readJsonFile,
7
+ removeSupiConfigKey,
8
+ writeSupiConfig,
9
+ } from "./config/config.ts";
10
+ export type { ConfigSettingsHelpers, ConfigSettingsOptions } from "./config/config-settings.ts";
11
+ export { registerConfigSettings } from "./config/config-settings.ts";
@@ -0,0 +1,16 @@
1
+ // supi-core context domain — context messages, providers, and XML tags.
2
+ export type { ContextMessageLike } from "./context/context-messages.ts";
3
+ export {
4
+ findLastUserMessageIndex,
5
+ getContextToken,
6
+ getPromptContent,
7
+ pruneAndReorderContextMessages,
8
+ restorePromptContent,
9
+ } from "./context/context-messages.ts";
10
+ export type { ContextProvider } from "./context/context-provider-registry.ts";
11
+ export {
12
+ clearRegisteredContextProviders,
13
+ getRegisteredContextProviders,
14
+ registerContextProvider,
15
+ } from "./context/context-provider-registry.ts";
16
+ export { wrapExtensionContext } from "./context/context-tag.ts";
@@ -1,96 +1,30 @@
1
1
  // supi-core — shared infrastructure for SuPi extensions.
2
2
  // Provides XML context tag wrapping, unified config system, context-message utilities,
3
3
  // settings registry for supi-wide TUI settings, and a shared tool-spec/registration framework.
4
+ //
5
+ // Convenience barrel — re-exports all domain entry points.
6
+ // For lighter imports, use one of the domain subpaths directly
7
+ // (e.g. @mrclrchtr/supi-core/config, @mrclrchtr/supi-core/context).
4
8
 
5
- export type { SupiConfigLocation, SupiConfigOptions } from "./config/config.ts";
6
- export {
7
- loadSupiConfig,
8
- loadSupiConfigForScope,
9
- readJsonFile,
10
- removeSupiConfigKey,
11
- writeSupiConfig,
12
- } from "./config/config.ts";
13
- export type { ConfigSettingsHelpers, ConfigSettingsOptions } from "./config/config-settings.ts";
14
- export { registerConfigSettings } from "./config/config-settings.ts";
15
- export type { ContextMessageLike } from "./context/context-messages.ts";
16
- export {
17
- findLastUserMessageIndex,
18
- getContextToken,
19
- getPromptContent,
20
- pruneAndReorderContextMessages,
21
- restorePromptContent,
22
- } from "./context/context-messages.ts";
23
- export type { ContextProvider } from "./context/context-provider-registry.ts";
24
- export {
25
- clearRegisteredContextProviders,
26
- getRegisteredContextProviders,
27
- registerContextProvider,
28
- } from "./context/context-provider-registry.ts";
29
- export { wrapExtensionContext } from "./context/context-tag.ts";
30
- export type {
31
- DebugAgentAccess,
32
- DebugEvent,
33
- DebugEventInput,
34
- DebugEventQuery,
35
- DebugEventQueryResult,
36
- DebugEventView,
37
- DebugLevel,
38
- DebugNotifyLevel,
39
- DebugRegistryConfig,
40
- DebugSummary,
41
- } from "./debug-registry.ts";
42
- export {
43
- clearDebugEvents,
44
- configureDebugRegistry,
45
- DEBUG_REGISTRY_DEFAULTS,
46
- getDebugEvents,
47
- getDebugRegistryConfig,
48
- getDebugSummary,
49
- recordDebugEvent,
50
- redactDebugData,
51
- resetDebugRegistry,
52
- } from "./debug-registry.ts";
53
- export { fileToUri, resolveToolPath, stripToolPathPrefix, uriToFile } from "./path-utils.ts";
54
- export type { KnownRootEntry } from "./project-roots.ts";
55
- export {
56
- buildKnownRootsMap,
57
- byPathDepth,
58
- dedupeTopmostRoots,
59
- findProjectRoot,
60
- isWithin,
61
- isWithinOrEqual,
62
- mergeKnownRoots,
63
- resolveKnownRoot,
64
- segmentCount,
65
- sortRootsBySpecificity,
66
- walkProject,
67
- } from "./project-roots.ts";
68
- export { createRegistry, createSessionStateRegistry } from "./registry-utils.ts";
69
- export { getActiveBranchEntries } from "./session-utils.ts";
70
- export { registerSettingsCommand } from "./settings/settings-command.ts";
71
- export type { SettingsScope, SettingsSection } from "./settings/settings-registry.ts";
72
- export {
73
- clearRegisteredSettings,
74
- getRegisteredSettings,
75
- registerSettings,
76
- } from "./settings/settings-registry.ts";
77
- export { createInputSubmenu, openSettingsOverlay } from "./settings/settings-ui.ts";
78
- export type { TitleTarget } from "./terminal.ts";
79
- export {
80
- DONE_SYMBOL,
81
- formatTitle,
82
- signalBell,
83
- signalDone,
84
- signalWaiting,
85
- WAITING_SYMBOL,
86
- } from "./terminal.ts";
87
- export type { SuiPiToolPromptSurface, SuiPiToolSpec, ToolExecuteFn } from "./tool-framework.ts";
88
- export {
89
- CharacterParam,
90
- derivePromptSurface,
91
- FileParam,
92
- LineParam,
93
- MaxResultsParam,
94
- registerSuiPiTools,
95
- SymbolParam,
96
- } from "./tool-framework.ts";
9
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
10
+ export * from "./config.ts";
11
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
12
+ export * from "./context.ts";
13
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
14
+ export * from "./debug-registry.ts";
15
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
16
+ export * from "./path.ts";
17
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
18
+ export * from "./project.ts";
19
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
20
+ export * from "./session.ts";
21
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
22
+ export * from "./settings.ts";
23
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
24
+ export * from "./settings-ui.ts";
25
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
26
+ export * from "./terminal.ts";
27
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
28
+ export * from "./tool-framework.ts";
29
+ // biome-ignore lint/performance/noReExportAll: intentional convenience barrel
30
+ export * from "./types.ts";
@@ -0,0 +1,2 @@
1
+ // supi-core path domain — file and URI path utilities.
2
+ export { fileToUri, resolveToolPath, stripToolPathPrefix, uriToFile } from "./path-utils.ts";
@@ -0,0 +1,15 @@
1
+ // supi-core project domain — project root discovery and traversal.
2
+ export type { KnownRootEntry } from "./project-roots.ts";
3
+ export {
4
+ buildKnownRootsMap,
5
+ byPathDepth,
6
+ dedupeTopmostRoots,
7
+ findProjectRoot,
8
+ isWithin,
9
+ isWithinOrEqual,
10
+ mergeKnownRoots,
11
+ resolveKnownRoot,
12
+ segmentCount,
13
+ sortRootsBySpecificity,
14
+ walkProject,
15
+ } from "./project-roots.ts";
@@ -0,0 +1,4 @@
1
+ // supi-core session domain — session utilities and registries.
2
+
3
+ export { createRegistry, createSessionStateRegistry } from "./registry-utils.ts";
4
+ export { getActiveBranchEntries } from "./session-utils.ts";
@@ -0,0 +1,2 @@
1
+ // supi-core settings-ui domain — settings TUI components (imports pi-tui at runtime, heavy).
2
+ export { createInputSubmenu, openSettingsOverlay } from "./settings/settings-ui.ts";
@@ -0,0 +1,9 @@
1
+ // supi-core settings domain — settings registry (lightweight, type-only pi-tui import).
2
+
3
+ export { registerSettingsCommand } from "./settings/settings-command.ts";
4
+ export type { SettingsScope, SettingsSection } from "./settings/settings-registry.ts";
5
+ export {
6
+ clearRegisteredSettings,
7
+ getRegisteredSettings,
8
+ registerSettings,
9
+ } from "./settings/settings-registry.ts";
@@ -0,0 +1,11 @@
1
+ /** 0-based position used by LSP and code-intelligence internally. */
2
+ export interface CodePosition {
3
+ line: number;
4
+ character: number;
5
+ }
6
+
7
+ /** Normalized location — flat replacement for LSP's nested Location/range shape. */
8
+ export interface CodeLocation {
9
+ uri: string;
10
+ range: { start: CodePosition; end: CodePosition };
11
+ }
@@ -0,0 +1,2 @@
1
+ // supi-core types domain — shared substrate types (zero dependencies, pure types).
2
+ export type { CodeLocation, CodePosition } from "./substrate-types.ts";
@@ -0,0 +1,11 @@
1
+ Copyright (c) Microsoft Corporation
2
+
3
+ All rights reserved.
4
+
5
+ MIT License
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
8
+
9
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
10
+
11
+ THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,69 @@
1
+ # VSCode JSON RPC
2
+
3
+ [![NPM Version](https://img.shields.io/npm/v/vscode-jsonrpc.svg)](https://npmjs.org/package/vscode-jsonrpc)
4
+ [![NPM Downloads](https://img.shields.io/npm/dm/vscode-jsonrpc.svg)](https://npmjs.org/package/vscode-jsonrpc)
5
+ [![Build Status](https://travis-ci.org/Microsoft/vscode-languageserver-node.svg?branch=master)](https://travis-ci.org/Microsoft/vscode-languageserver-node)
6
+
7
+ This npm module implements the base messaging protocol spoken between a VSCode language server and a VSCode language client.
8
+
9
+ The npm module can also be used standalone to establish a [JSON-RPC](http://www.jsonrpc.org/) channel between
10
+ a client and a server. Below an example how to setup a JSON-RPC connection. First the client side.
11
+
12
+ ```ts
13
+ import * as cp from 'child_process';
14
+ import * as rpc from 'vscode-jsonrpc/node';
15
+
16
+ let childProcess = cp.spawn(...);
17
+
18
+ // Use stdin and stdout for communication:
19
+ let connection = rpc.createMessageConnection(
20
+ new rpc.StreamMessageReader(childProcess.stdout),
21
+ new rpc.StreamMessageWriter(childProcess.stdin));
22
+
23
+ let notification = new rpc.NotificationType<string, void>('testNotification');
24
+
25
+ connection.listen();
26
+
27
+ connection.sendNotification(notification, 'Hello World');
28
+ ```
29
+
30
+ The server side looks very symmetrical:
31
+
32
+ ```ts
33
+ import * as rpc from 'vscode-jsonrpc/node';
34
+
35
+
36
+ let connection = rpc.createMessageConnection(
37
+ new rpc.StreamMessageReader(process.stdin),
38
+ new rpc.StreamMessageWriter(process.stdout));
39
+
40
+ let notification = new rpc.NotificationType<string, void>('testNotification');
41
+ connection.onNotification(notification, (param: string) => {
42
+ console.log(param); // This prints Hello World
43
+ });
44
+
45
+ connection.listen();
46
+ ```
47
+
48
+ # History
49
+
50
+ ### 5.0.0
51
+
52
+ - add progress support
53
+ - move JS target to ES2017
54
+
55
+ ### 4.0.0
56
+
57
+ - move JS target to ES6.
58
+
59
+ ### 3.0.0:
60
+
61
+ - converted the NPM module to use TypeScript 2.0.3.
62
+ - added strict null support.
63
+ - support for passing more than one parameter to a request or notification.
64
+ - Breaking changes:
65
+ - due to the use of TypeScript 2.0.3 and differences in d.ts generation users of the new version need to move to
66
+ TypeScript 2.0.3 as well.
67
+
68
+ ## License
69
+ [MIT](https://github.com/Microsoft/vscode-languageserver-node/blob/master/License.txt)
@@ -0,0 +1,6 @@
1
+ /* --------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ * ----------------------------------------------------------------------------------------- */
5
+
6
+ export * from './lib/browser/main';
@@ -0,0 +1,7 @@
1
+ /* --------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ * ----------------------------------------------------------------------------------------- */
5
+ 'use strict';
6
+
7
+ module.exports = require('./lib/browser/main');
@@ -0,0 +1,17 @@
1
+ import { AbstractMessageReader, DataCallback, AbstractMessageWriter, Message, Disposable, ConnectionStrategy, ConnectionOptions, MessageReader, MessageWriter, Logger, MessageConnection } from '../common/api';
2
+ export * from '../common/api';
3
+ export declare class BrowserMessageReader extends AbstractMessageReader implements MessageReader {
4
+ private _onData;
5
+ private _messageListener;
6
+ constructor(port: MessagePort | Worker | DedicatedWorkerGlobalScope);
7
+ listen(callback: DataCallback): Disposable;
8
+ }
9
+ export declare class BrowserMessageWriter extends AbstractMessageWriter implements MessageWriter {
10
+ private port;
11
+ private errorCount;
12
+ constructor(port: MessagePort | Worker | DedicatedWorkerGlobalScope);
13
+ write(msg: Message): Promise<void>;
14
+ private handleError;
15
+ end(): void;
16
+ }
17
+ export declare function createMessageConnection(reader: MessageReader, writer: MessageWriter, logger?: Logger, options?: ConnectionStrategy | ConnectionOptions): MessageConnection;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ /* --------------------------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ * ------------------------------------------------------------------------------------------ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.createMessageConnection = exports.BrowserMessageWriter = exports.BrowserMessageReader = void 0;
22
+ const ril_1 = require("./ril");
23
+ // Install the browser runtime abstract.
24
+ ril_1.default.install();
25
+ const api_1 = require("../common/api");
26
+ __exportStar(require("../common/api"), exports);
27
+ class BrowserMessageReader extends api_1.AbstractMessageReader {
28
+ constructor(port) {
29
+ super();
30
+ this._onData = new api_1.Emitter();
31
+ this._messageListener = (event) => {
32
+ this._onData.fire(event.data);
33
+ };
34
+ port.addEventListener('error', (event) => this.fireError(event));
35
+ port.onmessage = this._messageListener;
36
+ }
37
+ listen(callback) {
38
+ return this._onData.event(callback);
39
+ }
40
+ }
41
+ exports.BrowserMessageReader = BrowserMessageReader;
42
+ class BrowserMessageWriter extends api_1.AbstractMessageWriter {
43
+ constructor(port) {
44
+ super();
45
+ this.port = port;
46
+ this.errorCount = 0;
47
+ port.addEventListener('error', (event) => this.fireError(event));
48
+ }
49
+ write(msg) {
50
+ try {
51
+ this.port.postMessage(msg);
52
+ return Promise.resolve();
53
+ }
54
+ catch (error) {
55
+ this.handleError(error, msg);
56
+ return Promise.reject(error);
57
+ }
58
+ }
59
+ handleError(error, msg) {
60
+ this.errorCount++;
61
+ this.fireError(error, msg, this.errorCount);
62
+ }
63
+ end() {
64
+ }
65
+ }
66
+ exports.BrowserMessageWriter = BrowserMessageWriter;
67
+ function createMessageConnection(reader, writer, logger, options) {
68
+ if (logger === undefined) {
69
+ logger = api_1.NullLogger;
70
+ }
71
+ if (api_1.ConnectionStrategy.is(options)) {
72
+ options = { connectionStrategy: options };
73
+ }
74
+ return (0, api_1.createMessageConnection)(reader, writer, logger, options);
75
+ }
76
+ exports.createMessageConnection = createMessageConnection;
@@ -0,0 +1,12 @@
1
+ import { RAL } from '../common/api';
2
+ interface RIL extends RAL {
3
+ readonly stream: {
4
+ readonly asReadableStream: (stream: WebSocket) => RAL.ReadableStream;
5
+ readonly asWritableStream: (stream: WebSocket) => RAL.WritableStream;
6
+ };
7
+ }
8
+ declare function RIL(): RIL;
9
+ declare namespace RIL {
10
+ function install(): void;
11
+ }
12
+ export default RIL;