@hydranium/core 1.0.0-next.11 → 1.0.0-next.111

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 (415) hide show
  1. package/lib/documents/ast-document-manager.d.ts +75 -16
  2. package/lib/documents/ast-document-manager.d.ts.map +1 -1
  3. package/lib/documents/ast-document-manager.js +57 -19
  4. package/lib/documents/ast-document-manager.js.map +1 -1
  5. package/lib/documents/client-ids.d.ts +5 -19
  6. package/lib/documents/client-ids.d.ts.map +1 -1
  7. package/lib/documents/client-ids.js +5 -19
  8. package/lib/documents/client-ids.js.map +1 -1
  9. package/lib/documents/hydranium-text-documents.d.ts +124 -36
  10. package/lib/documents/hydranium-text-documents.d.ts.map +1 -1
  11. package/lib/documents/hydranium-text-documents.js +191 -51
  12. package/lib/documents/hydranium-text-documents.js.map +1 -1
  13. package/lib/documents/language-client-text-shadow.d.ts +41 -9
  14. package/lib/documents/language-client-text-shadow.d.ts.map +1 -1
  15. package/lib/documents/language-client-text-shadow.js +56 -11
  16. package/lib/documents/language-client-text-shadow.js.map +1 -1
  17. package/lib/documents/self-save-registry.d.ts +37 -6
  18. package/lib/documents/self-save-registry.d.ts.map +1 -1
  19. package/lib/documents/self-save-registry.js +28 -15
  20. package/lib/documents/self-save-registry.js.map +1 -1
  21. package/lib/index.d.ts +3 -0
  22. package/lib/index.d.ts.map +1 -1
  23. package/lib/index.js +6 -0
  24. package/lib/index.js.map +1 -1
  25. package/lib/langium/ast-extension/ast-node-builder.d.ts +32 -9
  26. package/lib/langium/ast-extension/ast-node-builder.d.ts.map +1 -1
  27. package/lib/langium/ast-extension/ast-node-builder.js +60 -22
  28. package/lib/langium/ast-extension/ast-node-builder.js.map +1 -1
  29. package/lib/langium/bootstrap.d.ts.map +1 -1
  30. package/lib/langium/bootstrap.js +16 -9
  31. package/lib/langium/bootstrap.js.map +1 -1
  32. package/lib/langium/config/configuration-provider.d.ts +81 -0
  33. package/lib/langium/config/configuration-provider.d.ts.map +1 -0
  34. package/lib/langium/config/configuration-provider.js +112 -0
  35. package/lib/langium/config/configuration-provider.js.map +1 -0
  36. package/lib/langium/config/index.d.ts +1 -0
  37. package/lib/langium/config/index.d.ts.map +1 -1
  38. package/lib/langium/config/index.js +1 -0
  39. package/lib/langium/config/index.js.map +1 -1
  40. package/lib/langium/diagnostics/lsp-logger.d.ts +17 -0
  41. package/lib/langium/diagnostics/lsp-logger.d.ts.map +1 -1
  42. package/lib/langium/diagnostics/lsp-logger.js +40 -6
  43. package/lib/langium/diagnostics/lsp-logger.js.map +1 -1
  44. package/lib/langium/document-builder/build-pipeline-integration.d.ts +21 -1
  45. package/lib/langium/document-builder/build-pipeline-integration.d.ts.map +1 -1
  46. package/lib/langium/document-builder/build-pipeline-integration.js +32 -5
  47. package/lib/langium/document-builder/build-pipeline-integration.js.map +1 -1
  48. package/lib/langium/document-builder/build-session.d.ts +93 -0
  49. package/lib/langium/document-builder/build-session.d.ts.map +1 -0
  50. package/lib/langium/document-builder/build-session.js +72 -0
  51. package/lib/langium/document-builder/build-session.js.map +1 -0
  52. package/lib/langium/document-builder/document-builder.d.ts +150 -7
  53. package/lib/langium/document-builder/document-builder.d.ts.map +1 -1
  54. package/lib/langium/document-builder/document-builder.js +298 -11
  55. package/lib/langium/document-builder/document-builder.js.map +1 -1
  56. package/lib/langium/document-builder/index.d.ts +1 -0
  57. package/lib/langium/document-builder/index.d.ts.map +1 -1
  58. package/lib/langium/document-builder/index.js +1 -0
  59. package/lib/langium/document-builder/index.js.map +1 -1
  60. package/lib/langium/integration-services.d.ts +45 -1
  61. package/lib/langium/integration-services.d.ts.map +1 -1
  62. package/lib/langium/integration-services.js +10 -5
  63. package/lib/langium/integration-services.js.map +1 -1
  64. package/lib/langium/integrity/integrity-service.d.ts +16 -0
  65. package/lib/langium/integrity/integrity-service.d.ts.map +1 -1
  66. package/lib/langium/integrity/integrity-service.js +110 -2
  67. package/lib/langium/integrity/integrity-service.js.map +1 -1
  68. package/lib/langium/keys/containment.d.ts +64 -0
  69. package/lib/langium/keys/containment.d.ts.map +1 -0
  70. package/lib/langium/keys/containment.js +53 -0
  71. package/lib/langium/keys/containment.js.map +1 -0
  72. package/lib/langium/keys/index.d.ts +1 -0
  73. package/lib/langium/keys/index.d.ts.map +1 -1
  74. package/lib/langium/keys/index.js +1 -0
  75. package/lib/langium/keys/index.js.map +1 -1
  76. package/lib/langium/keys/name-based-key-provider.d.ts +4 -0
  77. package/lib/langium/keys/name-based-key-provider.d.ts.map +1 -1
  78. package/lib/langium/keys/name-based-key-provider.js +4 -0
  79. package/lib/langium/keys/name-based-key-provider.js.map +1 -1
  80. package/lib/langium/language-module.d.ts +25 -0
  81. package/lib/langium/language-module.d.ts.map +1 -1
  82. package/lib/langium/language-module.js +14 -0
  83. package/lib/langium/language-module.js.map +1 -1
  84. package/lib/langium/model-service/model-service.d.ts +161 -10
  85. package/lib/langium/model-service/model-service.d.ts.map +1 -1
  86. package/lib/langium/model-service/model-service.js +174 -95
  87. package/lib/langium/model-service/model-service.js.map +1 -1
  88. package/lib/langium/module.d.ts +84 -15
  89. package/lib/langium/module.d.ts.map +1 -1
  90. package/lib/langium/module.js +26 -12
  91. package/lib/langium/module.js.map +1 -1
  92. package/lib/langium/naming/name-provider.d.ts +25 -4
  93. package/lib/langium/naming/name-provider.d.ts.map +1 -1
  94. package/lib/langium/naming/name-provider.js +2 -1
  95. package/lib/langium/naming/name-provider.js.map +1 -1
  96. package/lib/langium/naming/name-separator-validation.d.ts +23 -0
  97. package/lib/langium/naming/name-separator-validation.d.ts.map +1 -1
  98. package/lib/langium/naming/name-separator-validation.js +30 -1
  99. package/lib/langium/naming/name-separator-validation.js.map +1 -1
  100. package/lib/langium/residency/cst-residency-service.d.ts +31 -11
  101. package/lib/langium/residency/cst-residency-service.d.ts.map +1 -1
  102. package/lib/langium/residency/cst-residency-service.js +13 -56
  103. package/lib/langium/residency/cst-residency-service.js.map +1 -1
  104. package/lib/langium/scope/hydranium-scope-provider.d.ts +48 -13
  105. package/lib/langium/scope/hydranium-scope-provider.d.ts.map +1 -1
  106. package/lib/langium/scope/hydranium-scope-provider.js +56 -20
  107. package/lib/langium/scope/hydranium-scope-provider.js.map +1 -1
  108. package/lib/langium/serialization/abstract-serializer.d.ts +11 -20
  109. package/lib/langium/serialization/abstract-serializer.d.ts.map +1 -1
  110. package/lib/langium/serialization/abstract-serializer.js +12 -21
  111. package/lib/langium/serialization/abstract-serializer.js.map +1 -1
  112. package/lib/langium/service-registry.d.ts +15 -1
  113. package/lib/langium/service-registry.d.ts.map +1 -1
  114. package/lib/langium/service-registry.js +16 -0
  115. package/lib/langium/service-registry.js.map +1 -1
  116. package/lib/langium/shared-services.d.ts +15 -2
  117. package/lib/langium/shared-services.d.ts.map +1 -1
  118. package/lib/langium/shared-services.js.map +1 -1
  119. package/lib/langium/transfer/transfer-encoder.d.ts +60 -17
  120. package/lib/langium/transfer/transfer-encoder.d.ts.map +1 -1
  121. package/lib/langium/transfer/transfer-encoder.js +38 -16
  122. package/lib/langium/transfer/transfer-encoder.js.map +1 -1
  123. package/lib/langium/trivia/comment-preserver.d.ts +423 -0
  124. package/lib/langium/trivia/comment-preserver.d.ts.map +1 -0
  125. package/lib/langium/trivia/comment-preserver.js +906 -0
  126. package/lib/langium/trivia/comment-preserver.js.map +1 -0
  127. package/lib/langium/trivia/document-ending-preserver.d.ts +43 -0
  128. package/lib/langium/trivia/document-ending-preserver.d.ts.map +1 -0
  129. package/lib/langium/trivia/document-ending-preserver.js +48 -0
  130. package/lib/langium/trivia/document-ending-preserver.js.map +1 -0
  131. package/lib/langium/trivia/index.d.ts +14 -0
  132. package/lib/langium/trivia/index.d.ts.map +1 -0
  133. package/lib/langium/trivia/index.js +14 -0
  134. package/lib/langium/trivia/index.js.map +1 -0
  135. package/lib/langium/trivia/trivia-contribution.d.ts +37 -0
  136. package/lib/langium/trivia/trivia-contribution.d.ts.map +1 -0
  137. package/lib/langium/trivia/trivia-contribution.js +10 -0
  138. package/lib/langium/trivia/trivia-contribution.js.map +1 -0
  139. package/lib/langium/trivia/trivia-preserver.d.ts +50 -0
  140. package/lib/langium/trivia/trivia-preserver.d.ts.map +1 -0
  141. package/lib/langium/trivia/trivia-preserver.js +10 -0
  142. package/lib/langium/trivia/trivia-preserver.js.map +1 -0
  143. package/lib/langium/trivia/trivia-service.d.ts +70 -0
  144. package/lib/langium/trivia/trivia-service.d.ts.map +1 -0
  145. package/lib/langium/trivia/trivia-service.js +56 -0
  146. package/lib/langium/trivia/trivia-service.js.map +1 -0
  147. package/lib/langium/validation/document-validator.d.ts +294 -10
  148. package/lib/langium/validation/document-validator.d.ts.map +1 -1
  149. package/lib/langium/validation/document-validator.js +448 -5
  150. package/lib/langium/validation/document-validator.js.map +1 -1
  151. package/lib/langium/workspace/document-uri-policy.d.ts +3 -4
  152. package/lib/langium/workspace/document-uri-policy.d.ts.map +1 -1
  153. package/lib/langium/workspace/document-uri-policy.js +3 -4
  154. package/lib/langium/workspace/document-uri-policy.js.map +1 -1
  155. package/lib/langium/workspace/file-system-provider.d.ts +9 -1
  156. package/lib/langium/workspace/file-system-provider.d.ts.map +1 -1
  157. package/lib/langium/workspace/file-system-provider.js +40 -7
  158. package/lib/langium/workspace/file-system-provider.js.map +1 -1
  159. package/lib/langium/workspace/hydranium-langium-document-factory.d.ts +25 -0
  160. package/lib/langium/workspace/hydranium-langium-document-factory.d.ts.map +1 -1
  161. package/lib/langium/workspace/hydranium-langium-document-factory.js +25 -0
  162. package/lib/langium/workspace/hydranium-langium-document-factory.js.map +1 -1
  163. package/lib/langium/workspace/hydranium-workspace-manager.d.ts +21 -1
  164. package/lib/langium/workspace/hydranium-workspace-manager.d.ts.map +1 -1
  165. package/lib/langium/workspace/hydranium-workspace-manager.js +28 -0
  166. package/lib/langium/workspace/hydranium-workspace-manager.js.map +1 -1
  167. package/lib/langium/workspace/in-memory-file-system-provider.d.ts +23 -0
  168. package/lib/langium/workspace/in-memory-file-system-provider.d.ts.map +1 -1
  169. package/lib/langium/workspace/in-memory-file-system-provider.js +47 -9
  170. package/lib/langium/workspace/in-memory-file-system-provider.js.map +1 -1
  171. package/lib/langium/workspace/initialize-workspace.d.ts +23 -2
  172. package/lib/langium/workspace/initialize-workspace.d.ts.map +1 -1
  173. package/lib/langium/workspace/initialize-workspace.js +13 -5
  174. package/lib/langium/workspace/initialize-workspace.js.map +1 -1
  175. package/lib/langium/workspace/langium-documents.d.ts +79 -17
  176. package/lib/langium/workspace/langium-documents.d.ts.map +1 -1
  177. package/lib/langium/workspace/langium-documents.js +83 -28
  178. package/lib/langium/workspace/langium-documents.js.map +1 -1
  179. package/lib/langium/workspace/virtual-document.d.ts +18 -3
  180. package/lib/langium/workspace/virtual-document.d.ts.map +1 -1
  181. package/lib/langium/workspace/virtual-document.js +19 -2
  182. package/lib/langium/workspace/virtual-document.js.map +1 -1
  183. package/lib/locale/index.d.ts +10 -0
  184. package/lib/locale/index.d.ts.map +1 -0
  185. package/lib/locale/index.js +10 -0
  186. package/lib/locale/index.js.map +1 -0
  187. package/lib/locale/server-locale.d.ts +73 -0
  188. package/lib/locale/server-locale.d.ts.map +1 -0
  189. package/lib/locale/server-locale.js +61 -0
  190. package/lib/locale/server-locale.js.map +1 -0
  191. package/lib/lsp/completion/hydranium-completion-provider.d.ts +44 -2
  192. package/lib/lsp/completion/hydranium-completion-provider.d.ts.map +1 -1
  193. package/lib/lsp/completion/hydranium-completion-provider.js +68 -0
  194. package/lib/lsp/completion/hydranium-completion-provider.js.map +1 -1
  195. package/lib/lsp/connection-features.d.ts +23 -0
  196. package/lib/lsp/connection-features.d.ts.map +1 -0
  197. package/lib/lsp/connection-features.js +60 -0
  198. package/lib/lsp/connection-features.js.map +1 -0
  199. package/lib/lsp/diagnostics-connection.d.ts +27 -0
  200. package/lib/lsp/diagnostics-connection.d.ts.map +1 -0
  201. package/lib/lsp/diagnostics-connection.js +53 -0
  202. package/lib/lsp/diagnostics-connection.js.map +1 -0
  203. package/lib/lsp/hydranium-document-update-handler.d.ts.map +1 -1
  204. package/lib/lsp/hydranium-document-update-handler.js +10 -1
  205. package/lib/lsp/hydranium-document-update-handler.js.map +1 -1
  206. package/lib/lsp/index.d.ts +3 -1
  207. package/lib/lsp/index.d.ts.map +1 -1
  208. package/lib/lsp/index.js +3 -1
  209. package/lib/lsp/index.js.map +1 -1
  210. package/lib/lsp/lsp-latency.d.ts +39 -0
  211. package/lib/lsp/lsp-latency.d.ts.map +1 -0
  212. package/lib/lsp/lsp-latency.js +58 -0
  213. package/lib/lsp/lsp-latency.js.map +1 -0
  214. package/lib/lsp/semantic-token-provider.d.ts +34 -1
  215. package/lib/lsp/semantic-token-provider.d.ts.map +1 -1
  216. package/lib/lsp/semantic-token-provider.js +55 -8
  217. package/lib/lsp/semantic-token-provider.js.map +1 -1
  218. package/lib/lsp/start-language-server.d.ts +5 -3
  219. package/lib/lsp/start-language-server.d.ts.map +1 -1
  220. package/lib/lsp/start-language-server.js +10 -3
  221. package/lib/lsp/start-language-server.js.map +1 -1
  222. package/lib/messages/carriers.d.ts +54 -0
  223. package/lib/messages/carriers.d.ts.map +1 -0
  224. package/lib/messages/carriers.js +62 -0
  225. package/lib/messages/carriers.js.map +1 -0
  226. package/lib/messages/index.d.ts +25 -0
  227. package/lib/messages/index.d.ts.map +1 -0
  228. package/lib/messages/index.js +25 -0
  229. package/lib/messages/index.js.map +1 -0
  230. package/lib/messages/renderer.d.ts +136 -0
  231. package/lib/messages/renderer.d.ts.map +1 -0
  232. package/lib/messages/renderer.js +159 -0
  233. package/lib/messages/renderer.js.map +1 -0
  234. package/lib/node/heap-ceiling.d.ts +61 -0
  235. package/lib/node/heap-ceiling.d.ts.map +1 -0
  236. package/lib/node/heap-ceiling.js +72 -0
  237. package/lib/node/heap-ceiling.js.map +1 -0
  238. package/lib/node/index.d.ts +1 -0
  239. package/lib/node/index.d.ts.map +1 -1
  240. package/lib/node/index.js +1 -0
  241. package/lib/node/index.js.map +1 -1
  242. package/lib/node/latency-from-env.d.ts +1 -1
  243. package/lib/node/latency-from-env.js +1 -1
  244. package/lib/node/node-file-system-provider.d.ts +35 -1
  245. package/lib/node/node-file-system-provider.d.ts.map +1 -1
  246. package/lib/node/node-file-system-provider.js +140 -45
  247. package/lib/node/node-file-system-provider.js.map +1 -1
  248. package/lib/node/profile-capture.d.ts +8 -2
  249. package/lib/node/profile-capture.d.ts.map +1 -1
  250. package/lib/node/profile-capture.js.map +1 -1
  251. package/lib/node/profiling-run.d.ts +2 -2
  252. package/lib/node/profiling-run.js +1 -1
  253. package/lib/node/profiling-run.js.map +1 -1
  254. package/lib/node/rename-over-open-readers.d.ts +52 -0
  255. package/lib/node/rename-over-open-readers.d.ts.map +1 -0
  256. package/lib/node/rename-over-open-readers.js +66 -0
  257. package/lib/node/rename-over-open-readers.js.map +1 -0
  258. package/lib/node/socket-launcher.d.ts +15 -0
  259. package/lib/node/socket-launcher.d.ts.map +1 -1
  260. package/lib/node/socket-launcher.js +3 -2
  261. package/lib/node/socket-launcher.js.map +1 -1
  262. package/lib/testing/fake-document.d.ts +16 -4
  263. package/lib/testing/fake-document.d.ts.map +1 -1
  264. package/lib/testing/fake-document.js +18 -3
  265. package/lib/testing/fake-document.js.map +1 -1
  266. package/lib/testing/make-noop-shared-services.d.ts +14 -0
  267. package/lib/testing/make-noop-shared-services.d.ts.map +1 -1
  268. package/lib/testing/make-noop-shared-services.js +28 -2
  269. package/lib/testing/make-noop-shared-services.js.map +1 -1
  270. package/lib/testing/make-test-services.d.ts +45 -9
  271. package/lib/testing/make-test-services.d.ts.map +1 -1
  272. package/lib/testing/make-test-services.js +19 -3
  273. package/lib/testing/make-test-services.js.map +1 -1
  274. package/lib/testing/node/index.d.ts +1 -0
  275. package/lib/testing/node/index.d.ts.map +1 -1
  276. package/lib/testing/node/index.js +1 -0
  277. package/lib/testing/node/index.js.map +1 -1
  278. package/lib/testing/node/lsp-server-connection.d.ts.map +1 -1
  279. package/lib/testing/node/lsp-server-connection.js +5 -6
  280. package/lib/testing/node/lsp-server-connection.js.map +1 -1
  281. package/lib/testing/node/scratch-workspace.d.ts.map +1 -1
  282. package/lib/testing/node/scratch-workspace.js +9 -4
  283. package/lib/testing/node/scratch-workspace.js.map +1 -1
  284. package/lib/testing/node/spawned-server.d.ts +14 -0
  285. package/lib/testing/node/spawned-server.d.ts.map +1 -1
  286. package/lib/testing/node/spawned-server.js +33 -1
  287. package/lib/testing/node/spawned-server.js.map +1 -1
  288. package/lib/testing/node/unhandled-rejections.d.ts +20 -0
  289. package/lib/testing/node/unhandled-rejections.d.ts.map +1 -0
  290. package/lib/testing/node/unhandled-rejections.js +32 -0
  291. package/lib/testing/node/unhandled-rejections.js.map +1 -0
  292. package/lib/testing/playwright/flaky-network-proxy.d.ts +76 -0
  293. package/lib/testing/playwright/flaky-network-proxy.d.ts.map +1 -0
  294. package/lib/testing/playwright/flaky-network-proxy.js +164 -0
  295. package/lib/testing/playwright/flaky-network-proxy.js.map +1 -0
  296. package/lib/testing/playwright/index.d.ts +1 -0
  297. package/lib/testing/playwright/index.d.ts.map +1 -1
  298. package/lib/testing/playwright/index.js +1 -0
  299. package/lib/testing/playwright/index.js.map +1 -1
  300. package/lib/testing/playwright/server-log-capture.d.ts +14 -4
  301. package/lib/testing/playwright/server-log-capture.d.ts.map +1 -1
  302. package/lib/testing/playwright/server-log-capture.js +21 -4
  303. package/lib/testing/playwright/server-log-capture.js.map +1 -1
  304. package/lib/testing/playwright/server-log-rename-reporter.d.ts.map +1 -1
  305. package/lib/testing/playwright/server-log-rename-reporter.js +10 -1
  306. package/lib/testing/playwright/server-log-rename-reporter.js.map +1 -1
  307. package/lib/testing/stub-ast-document-manager.d.ts +5 -5
  308. package/lib/testing/stub-ast-document-manager.d.ts.map +1 -1
  309. package/lib/testing/stub-ast-document-manager.js +4 -6
  310. package/lib/testing/stub-ast-document-manager.js.map +1 -1
  311. package/lib/testing/stub-document-builder.d.ts +8 -0
  312. package/lib/testing/stub-document-builder.d.ts.map +1 -1
  313. package/lib/testing/stub-document-builder.js +22 -3
  314. package/lib/testing/stub-document-builder.js.map +1 -1
  315. package/lib/testing/stub-langium-documents.d.ts +3 -2
  316. package/lib/testing/stub-langium-documents.d.ts.map +1 -1
  317. package/lib/testing/stub-langium-documents.js.map +1 -1
  318. package/lib/testing/stub-model-service.d.ts +5 -4
  319. package/lib/testing/stub-model-service.d.ts.map +1 -1
  320. package/lib/testing/stub-model-service.js +2 -2
  321. package/lib/testing/stub-model-service.js.map +1 -1
  322. package/lib/util/connection-liveness.d.ts +7 -6
  323. package/lib/util/connection-liveness.d.ts.map +1 -1
  324. package/lib/util/connection-liveness.js +35 -14
  325. package/lib/util/connection-liveness.js.map +1 -1
  326. package/package.json +17 -8
  327. package/src/documents/ast-document-manager.ts +129 -36
  328. package/src/documents/client-ids.ts +5 -22
  329. package/src/documents/hydranium-text-documents.ts +248 -75
  330. package/src/documents/language-client-text-shadow.ts +59 -11
  331. package/src/documents/self-save-registry.ts +52 -13
  332. package/src/index.ts +6 -0
  333. package/src/langium/ast-extension/ast-node-builder.ts +66 -22
  334. package/src/langium/bootstrap.ts +16 -9
  335. package/src/langium/config/configuration-provider.ts +119 -0
  336. package/src/langium/config/index.ts +1 -0
  337. package/src/langium/diagnostics/lsp-logger.ts +41 -6
  338. package/src/langium/document-builder/build-pipeline-integration.ts +50 -5
  339. package/src/langium/document-builder/build-session.ts +87 -0
  340. package/src/langium/document-builder/document-builder.ts +339 -11
  341. package/src/langium/document-builder/index.ts +1 -0
  342. package/src/langium/integration-services.ts +67 -6
  343. package/src/langium/integrity/integrity-service.ts +116 -2
  344. package/src/langium/keys/containment.ts +87 -0
  345. package/src/langium/keys/index.ts +1 -0
  346. package/src/langium/keys/name-based-key-provider.ts +4 -0
  347. package/src/langium/language-module.ts +38 -0
  348. package/src/langium/model-service/model-service.ts +264 -32
  349. package/src/langium/module.ts +106 -21
  350. package/src/langium/naming/name-provider.ts +27 -5
  351. package/src/langium/naming/name-separator-validation.ts +34 -5
  352. package/src/langium/residency/cst-residency-service.ts +36 -14
  353. package/src/langium/scope/hydranium-scope-provider.ts +60 -22
  354. package/src/langium/serialization/abstract-serializer.ts +13 -32
  355. package/src/langium/service-registry.ts +19 -2
  356. package/src/langium/shared-services.ts +19 -2
  357. package/src/langium/transfer/transfer-encoder.ts +85 -24
  358. package/src/langium/trivia/comment-preserver.ts +1100 -0
  359. package/src/langium/trivia/document-ending-preserver.ts +55 -0
  360. package/src/langium/trivia/index.ts +14 -0
  361. package/src/langium/trivia/trivia-contribution.ts +39 -0
  362. package/src/langium/trivia/trivia-preserver.ts +54 -0
  363. package/src/langium/trivia/trivia-service.ts +99 -0
  364. package/src/langium/validation/document-validator.ts +537 -11
  365. package/src/langium/workspace/document-uri-policy.ts +3 -4
  366. package/src/langium/workspace/file-system-provider.ts +48 -8
  367. package/src/langium/workspace/hydranium-langium-document-factory.ts +34 -0
  368. package/src/langium/workspace/hydranium-workspace-manager.ts +30 -1
  369. package/src/langium/workspace/in-memory-file-system-provider.ts +53 -10
  370. package/src/langium/workspace/initialize-workspace.ts +35 -5
  371. package/src/langium/workspace/langium-documents.ts +106 -33
  372. package/src/langium/workspace/virtual-document.ts +21 -3
  373. package/src/locale/index.ts +10 -0
  374. package/src/locale/server-locale.ts +86 -0
  375. package/src/lsp/completion/hydranium-completion-provider.ts +82 -2
  376. package/src/lsp/connection-features.ts +67 -0
  377. package/src/lsp/diagnostics-connection.ts +56 -0
  378. package/src/lsp/hydranium-document-update-handler.ts +10 -1
  379. package/src/lsp/index.ts +3 -1
  380. package/src/lsp/lsp-latency.ts +62 -0
  381. package/src/lsp/semantic-token-provider.ts +74 -7
  382. package/src/lsp/start-language-server.ts +10 -3
  383. package/src/messages/carriers.ts +78 -0
  384. package/src/messages/index.ts +36 -0
  385. package/src/messages/renderer.ts +206 -0
  386. package/src/node/heap-ceiling.ts +108 -0
  387. package/src/node/index.ts +1 -0
  388. package/src/node/latency-from-env.ts +1 -1
  389. package/src/node/node-file-system-provider.ts +154 -47
  390. package/src/node/profile-capture.ts +8 -2
  391. package/src/node/profiling-run.ts +3 -3
  392. package/src/node/rename-over-open-readers.ts +78 -0
  393. package/src/node/socket-launcher.ts +18 -2
  394. package/src/testing/fake-document.ts +24 -5
  395. package/src/testing/make-noop-shared-services.ts +50 -2
  396. package/src/testing/make-test-services.ts +74 -18
  397. package/src/testing/node/index.ts +1 -0
  398. package/src/testing/node/lsp-server-connection.ts +5 -6
  399. package/src/testing/node/scratch-workspace.ts +9 -4
  400. package/src/testing/node/spawned-server.ts +35 -1
  401. package/src/testing/node/unhandled-rejections.ts +31 -0
  402. package/src/testing/playwright/flaky-network-proxy.ts +240 -0
  403. package/src/testing/playwright/index.ts +1 -0
  404. package/src/testing/playwright/server-log-capture.ts +24 -5
  405. package/src/testing/playwright/server-log-rename-reporter.ts +12 -1
  406. package/src/testing/stub-ast-document-manager.ts +10 -14
  407. package/src/testing/stub-document-builder.ts +32 -3
  408. package/src/testing/stub-langium-documents.ts +3 -2
  409. package/src/testing/stub-model-service.ts +7 -6
  410. package/src/util/connection-liveness.ts +37 -14
  411. package/lib/lsp/instrument-connection.d.ts +0 -36
  412. package/lib/lsp/instrument-connection.d.ts.map +0 -1
  413. package/lib/lsp/instrument-connection.js +0 -62
  414. package/lib/lsp/instrument-connection.js.map +0 -1
  415. package/src/lsp/instrument-connection.ts +0 -66
@@ -6,13 +6,30 @@
6
6
  *
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
- import { type CanonicalUri, type CloseModelArgs, type MaybeObservableValue, type MaybePromise, ObservableValue, type TransferDiagnostic, type TransferElement, type OpenModelArgs, type Tracer, type TransferSaveArgs, type TransferUpdateArgs } from '@hydranium/protocol';
9
+ import { type CanonicalUri, type CloseModelArgs, type MaybeObservableValue, type MaybePromise, ObservableValue, type TransferElement, type OpenModelArgs, type Tracer, type TransferSaveArgs, type TransferUpdateArgs } from '@hydranium/protocol';
10
10
  import { type AstNode, DocumentState, type LangiumDocument, type URI } from '@hydranium/langium';
11
+ import { type AstDiagnostic } from '../validation/document-validator.js';
11
12
  import { type DocumentUriPolicy } from '../workspace/document-uri-policy.js';
12
13
  import { type CancellationToken, type Disposable } from 'vscode-languageserver';
13
14
  import { AstDocument, type AstDocumentSavedEvent, type AstDocumentUpdatedEvent } from '../../documents/ast-document-manager.js';
14
15
  import { type LogNameOptions } from '../diagnostics/logger.js';
15
16
  import { type ServerSharedServices } from '../module.js';
17
+ /**
18
+ * The undo-stack entry for a server-authored write pushed to the editor.
19
+ *
20
+ * **A user-facing LABEL, not a log string**, which is easy to miss because it
21
+ * travels as an options field rather than as a message: LSP specifies
22
+ * `ApplyWorkspaceEditParams.label` as "presented in the user interface for
23
+ * example on an undo stack to undo the workspace edit". So a user who edits
24
+ * through a form or drags a diagram node reads this in their editor's undo menu
25
+ * — which is why it is rendered like any other message the server sends rather
26
+ * than left as the English literal it was.
27
+ *
28
+ * Parameterless deliberately. The obvious improvement is to name the document,
29
+ * and it is the wrong one: an undo menu is already grouped under the file, so
30
+ * the URI would be noise in the one place it is redundant.
31
+ */
32
+ export declare const MODEL_UPDATE_EDIT: import("@hydranium/protocol").MessageDefinition<"Update Model">;
16
33
  /**
17
34
  * Constructor options for {@link ModelService}. All fields are optional,
18
35
  * and the defaults are the behaviour described on each one.
@@ -81,6 +98,10 @@ export interface ModelServiceOptions extends LogNameOptions {
81
98
  readonly serializeBuilds?: MaybeObservableValue<boolean>;
82
99
  }
83
100
  /**
101
+ * The seam every non-LSP head talks to: the data server, the GLSP head and an
102
+ * adopter's own services reach documents through this slot rather than through
103
+ * the workspace stores.
104
+ *
84
105
  * In-process facade over the framework's document plumbing
85
106
  * (`HydraniumTextDocuments`, `LangiumDocuments`,
86
107
  * `DocumentBuilder`, `WritableFileSystemProvider`). Owns the
@@ -139,16 +160,75 @@ export interface ModelServiceOptions extends LogNameOptions {
139
160
  * by URI happens here so consumers can subscribe per-document without
140
161
  * implementing the URI gate at each callsite.
141
162
  *
163
+ * **Two families, and the distinction matters more than the names suggest.**
164
+ * `waitFor*` is a pure wait — it never triggers a build, so a caller waiting on
165
+ * a document no build has touched waits until something else builds it.
166
+ * `ensureDocumentState` and the phase shorthands over it *dispatch*: warm
167
+ * documents are awaited, cold ones are built.
168
+ *
169
+ * **Diagnostics are typed `never` below `Validated`.** Validation is the last
170
+ * phase, so at any earlier landmark the array either is not yet computed or
171
+ * still holds the previous build's, and reading it would take stale results
172
+ * for fresh ones. A caller that needs diagnostics asks for {@link validated}.
173
+ *
174
+ * What the `never` buys, exactly: reading a field off an element is a compile
175
+ * error, and nothing can be appended. It does NOT stop a caller assigning an
176
+ * element to a typed variable, because `never` is assignable to everything — so
177
+ * this is a guard against reaching for diagnostics by accident, not a seal
178
+ * against doing it deliberately.
179
+ *
180
+ * The waits resolve at or ABOVE their target, so an already-validated document
181
+ * does carry usable diagnostics and the `never` over-forbids there. That
182
+ * direction is the safe one: the alternative permits stale reads silently. A
183
+ * member taking a phase as a PARAMETER cannot judge statically and so returns
184
+ * `TDiagnostic`, leaving the choice to the caller.
185
+ *
142
186
  * **Generic parameters.**
143
187
  * - `TAst` — the AST root type each consumer expects on the returned
144
188
  * {@link AstDocument}. Constrained to {@link AstNode}.
145
- * - `TDiagnostic` — wire diagnostic shape used by the injected
146
- * `TransferEncoder`. Defaults to {@link TransferDiagnostic}.
189
+ * - `TDiagnostic` — the AST-layer diagnostic: whatever the build left on
190
+ * `LangiumDocument.diagnostics`, carried through on the returned
191
+ * {@link AstDocument}. Defaults to {@link AstDiagnostic}.
192
+ * **Not the `TransferEncoder`'s parameter of the same name**, which is
193
+ * that encoder's OUTPUT and so names the wire shape. This one names its
194
+ * input, and an adopter binds the two to different types.
147
195
  * - `TTransfer` — transfer-model root accepted by `update` / `save`
148
196
  * args. Constrained to {@link TransferElement}. Defaults to the
149
197
  * structural base.
150
198
  */
151
- export declare class ModelService<TAst extends AstNode, TDiagnostic = TransferDiagnostic,
199
+ export interface ModelService<TAst extends AstNode, TDiagnostic extends AstDiagnostic = AstDiagnostic, TTransfer extends TransferElement = TransferElement> {
200
+ /**
201
+ * Resolves once the workspace has been initialised and its first build has
202
+ * completed — the gate every read should wait behind, since a document
203
+ * queried before it may be unbuilt and reach no phase.
204
+ *
205
+ * A property rather than a method, matching `ProjectManager.ready` and
206
+ * Langium's `WorkspaceManager.ready`. An implementation needing a stricter
207
+ * gate supplies a Promise that awaits its own concern as well.
208
+ */
209
+ readonly ready: Promise<void>;
210
+ waitForDocumentState(uri: string, state: DocumentState, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
211
+ waitForDocumentSettled(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, never>>;
212
+ waitForBuilderState(state: DocumentState, cancelToken?: CancellationToken): Promise<void>;
213
+ ensureDocumentState(uri: string, state?: DocumentState, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
214
+ rebuild(uri: string, state?: DocumentState, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
215
+ parsed(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, never>>;
216
+ linked(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, never>>;
217
+ settled(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, never>>;
218
+ indexed(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, never>>;
219
+ validated(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
220
+ update(args: TransferUpdateArgs<TTransfer>, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
221
+ save(args: TransferSaveArgs<TTransfer>, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
222
+ open(args: OpenModelArgs): Promise<Disposable>;
223
+ close(args: CloseModelArgs): Promise<void>;
224
+ isOpen(uri: string): boolean;
225
+ snapshot(uri: string): AstDocument<TAst, TDiagnostic> | undefined;
226
+ getDocument(uri: string): LangiumDocument | undefined;
227
+ onModelUpdated(uri: string, listener: (event: AstDocumentUpdatedEvent<TAst, TDiagnostic>) => void): Disposable;
228
+ onModelSaved(uri: string, listener: (event: AstDocumentSavedEvent<TAst, TDiagnostic>) => void): Disposable;
229
+ onClientClosed(uri: string, clientId: string, listener: () => void): Disposable;
230
+ }
231
+ export declare class DefaultModelService<TAst extends AstNode, TDiagnostic extends AstDiagnostic = AstDiagnostic,
152
232
  /**
153
233
  * Structured payload accepted by `update` / `save`. Constrained to
154
234
  * {@link TransferElement} — the minimal `{ readonly $type: string }`
@@ -158,7 +238,7 @@ export declare class ModelService<TAst extends AstNode, TDiagnostic = TransferDi
158
238
  * constraint, so in-process callers (e.g. GLSP state or an
159
239
  * integrity service) that pass AST roots remain compatible.
160
240
  */
161
- TTransfer extends TransferElement = TransferElement> {
241
+ TTransfer extends TransferElement = TransferElement> implements ModelService<TAst, TDiagnostic, TTransfer> {
162
242
  protected readonly services: ServerSharedServices;
163
243
  protected readonly tracer: Tracer;
164
244
  /**
@@ -238,7 +318,7 @@ TTransfer extends TransferElement = TransferElement> {
238
318
  * {@link waitForDocumentState} for the common "wait until content is stable"
239
319
  * case (e.g. settling a save). Pure wait — does not trigger a build.
240
320
  */
241
- waitForDocumentSettled(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, TDiagnostic>>;
321
+ waitForDocumentSettled(uri: string, cancelToken?: CancellationToken): Promise<AstDocument<TAst, never>>;
242
322
  /**
243
323
  * Internal wait core operating on an already-{@link CanonicalUri canonical}
244
324
  * URI. The public string doors ({@link waitForDocumentState} /
@@ -316,11 +396,19 @@ TTransfer extends TransferElement = TransferElement> {
316
396
  *
317
397
  * Phase invariants encoded in the return type:
318
398
  * - `parsed` / `linked` / `settled` / `indexed` return
319
- * `AstDocument<TAst, never>` — diagnostics array is empty by phase
320
- * contract.
399
+ * `AstDocument<TAst, never>` — no diagnostics have been computed at
400
+ * those phases.
321
401
  * - `validated` returns `AstDocument<TAst, TDiagnostic>` — diagnostics
322
402
  * are populated.
323
403
  *
404
+ * **The `never` is enforced, not merely declared.** The wait underneath
405
+ * resolves at or ABOVE the requested state, so a document something else
406
+ * already carried past `Validated` would otherwise come back from
407
+ * `settled()` carrying a full diagnostics array typed `never`; these four
408
+ * strip it. An empty array here therefore means "this read does not report
409
+ * diagnostics", never "this document is clean" — call {@link validated}
410
+ * when the answer has to mean the second.
411
+ *
324
412
  * `settled` is the integrity-overlay name for "all integrity rules
325
413
  * have fired"; it maps to {@link IntegrityService.SettledState} (which
326
414
  * equals `DocumentState.IndexedReferences`), but the dedicated method
@@ -435,6 +523,23 @@ TTransfer extends TransferElement = TransferElement> {
435
523
  * client. Pure read; no side effects.
436
524
  */
437
525
  isOpen(uri: string): boolean;
526
+ /**
527
+ * Snapshot of `uri` as it stands RIGHT NOW — the synchronous sibling of the
528
+ * phase reads, which all wait. `undefined` when no document is registered.
529
+ *
530
+ * **This is what a writer wants, and {@link getDocument} is not.** The
531
+ * envelope's `version` is copied by value at projection time, so it cannot
532
+ * move afterwards; a version read off the live document at write time is
533
+ * whatever the server is at *now*, which is the number an optimistic gate is
534
+ * about to compare it against.
535
+ *
536
+ * Diagnostics only from a document that has reached `Validated`, and an
537
+ * empty array otherwise. Unlike the phase reads this one names no phase, so
538
+ * the state it finds is the only thing that can say whether the array
539
+ * describes the content being handed back or whatever an earlier build left.
540
+ * A caller that needs them unconditionally waits, via {@link validated}.
541
+ */
542
+ snapshot(uri: string): AstDocument<TAst, TDiagnostic> | undefined;
438
543
  /**
439
544
  * The built {@link LangiumDocument} for `uri`, looked up by canonical identity —
440
545
  * the synchronous, phase-agnostic sibling of {@link ensureDocumentState} /
@@ -443,6 +548,13 @@ TTransfer extends TransferElement = TransferElement> {
443
548
  * into `LangiumDocuments` directly: a symlinked / `..` / case-divergent URI
444
549
  * still resolves to the one document the build keys by its real path. Returns
445
550
  * `undefined` if no document is registered for `uri`.
551
+ *
552
+ * **Live, so do not take a based-on version off it.** `textDocument` is the
553
+ * store's own object rather than a copy, so `.version` read here answers for
554
+ * the moment of the READ, not the moment of the earlier content — pass it to
555
+ * a write and the server compares its current version against itself, the
556
+ * gate passes unconditionally, and a concurrent edit is overwritten with
557
+ * nothing logged. Use {@link snapshot} for that, or a phase read.
446
558
  */
447
559
  getDocument(uri: string): LangiumDocument | undefined;
448
560
  /**
@@ -503,11 +615,11 @@ TTransfer extends TransferElement = TransferElement> {
503
615
  *
504
616
  * The signal is "a known client other than the language client authored this
505
617
  * version **and** the URI was in the last build's changed set
506
- * (`isDirectChange`)". A framework-internal rebuild reports no author
618
+ * (`isTriggeringEdit`)". A framework-internal rebuild reports no author
507
619
  * (`getAuthor` → `undefined`), so it fails `hasKnownAuthor` without comparing
508
620
  * against a sentinel. This is NOT redundant with content/registration — it
509
621
  * distinguishes "client edited" from "framework rebuilt", which neither the
510
- * shadow nor `isDirectChange` alone can.
622
+ * shadow nor `isTriggeringEdit` alone can.
511
623
  */
512
624
  protected isNonLanguageClientEdit(document: LangiumDocument): boolean;
513
625
  /**
@@ -518,6 +630,16 @@ TTransfer extends TransferElement = TransferElement> {
518
630
  * per URI so the shadow never drifts from Monaco.
519
631
  */
520
632
  protected queueSync(uri: string, text: string): void;
633
+ /**
634
+ * The undo-stack label for a server-authored write, in the locale the server
635
+ * was handed at init.
636
+ *
637
+ * One method rather than the literal at each `applyEdit`, because the two
638
+ * call sites are the same edit — a push and its full-replace retry — and an
639
+ * undo menu showing two different words for one operation would read as two
640
+ * operations.
641
+ */
642
+ protected editLabel(): string;
521
643
  protected drainSyncQueue(uri: string): Promise<void>;
522
644
  /**
523
645
  * Subscribe to AST-snapshot updates for `uri`. Fires after each
@@ -578,6 +700,19 @@ TTransfer extends TransferElement = TransferElement> {
578
700
  * default, so this is a no-op for adopters that register none.
579
701
  */
580
702
  protected modelToText(uri: string, model: TTransfer | string, cancelToken?: CancellationToken): Promise<string>;
703
+ /**
704
+ * The text a write into an unloaded document should take its trivia from —
705
+ * the open editor's if one holds it, the file's otherwise, and `undefined`
706
+ * when neither can supply it.
707
+ *
708
+ * **A read that fails answers `undefined` rather than throwing.** `getDocument`
709
+ * is a store read, so an ordinary create answers nothing here and must still
710
+ * write; letting a permission error or a path that turned into a directory
711
+ * escape would fail the user's write instead, having found nothing to preserve
712
+ * in a file the write is about to replace anyway. Losing the comments is
713
+ * recoverable, and traced; losing the write is neither.
714
+ */
715
+ protected textToTakeTriviaFrom(uri: string, target: URI): Promise<string | undefined>;
581
716
  /**
582
717
  * Run the per-language transfer-model rewrite chain. Resolves the
583
718
  * `UpdateRewriteService` per-URI (like {@link serialize}) and threads
@@ -594,5 +729,21 @@ TTransfer extends TransferElement = TransferElement> {
594
729
  * registry — adopters that prefer to throw override on their subclass.
595
730
  */
596
731
  protected toAstDocument(uri: URI): AstDocument<TAst, TDiagnostic>;
732
+ /**
733
+ * The same envelope with no diagnostics, for a read that names a phase below
734
+ * `Validated`.
735
+ *
736
+ * Langium fills `LangiumDocument.diagnostics` from inside `validateDocument`
737
+ * and from nowhere else, so below that phase the array holds whatever an
738
+ * EARLIER build left — a verdict about text the document may no longer have.
739
+ * The wait underneath resolves at or above the phase asked for, so a document
740
+ * something else carried past `Validated` would otherwise hand a full array
741
+ * back from `parsed()`.
742
+ *
743
+ * A copy rather than a clear: the envelope is freshly built here, but
744
+ * {@link toAstDocument} is overridable and an adopter's version may return
745
+ * one it also keeps.
746
+ */
747
+ protected withoutDiagnostics(document: AstDocument<TAst, TDiagnostic>): AstDocument<TAst, never>;
597
748
  }
598
749
  //# sourceMappingURL=model-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-service.d.ts","sourceRoot":"","sources":["../../../src/langium/model-service/model-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-service.d.ts","sourceRoot":"","sources":["../../../src/langium/model-service/model-service.ts"],"names":[],"mappings":"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"}