@hydranium/core 1.0.0-next.32 → 1.0.0-next.320

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 (765) hide show
  1. package/README.md +78 -82
  2. package/lib/browser/host-heads-in-worker.d.ts +77 -0
  3. package/lib/browser/host-heads-in-worker.d.ts.map +1 -0
  4. package/lib/browser/host-heads-in-worker.js +169 -0
  5. package/lib/browser/host-heads-in-worker.js.map +1 -0
  6. package/lib/browser/index.d.ts +12 -0
  7. package/lib/browser/index.d.ts.map +1 -0
  8. package/lib/browser/index.js +17 -0
  9. package/lib/browser/index.js.map +1 -0
  10. package/lib/browser/indexeddb-file-system-store.d.ts +82 -0
  11. package/lib/browser/indexeddb-file-system-store.d.ts.map +1 -0
  12. package/lib/browser/indexeddb-file-system-store.js +181 -0
  13. package/lib/browser/indexeddb-file-system-store.js.map +1 -0
  14. package/lib/browser/start-language-server-in-worker.d.ts +32 -0
  15. package/lib/browser/start-language-server-in-worker.d.ts.map +1 -0
  16. package/lib/browser/start-language-server-in-worker.js +40 -0
  17. package/lib/browser/start-language-server-in-worker.js.map +1 -0
  18. package/lib/documents/ast-document-manager.d.ts +256 -124
  19. package/lib/documents/ast-document-manager.d.ts.map +1 -1
  20. package/lib/documents/ast-document-manager.js +293 -132
  21. package/lib/documents/ast-document-manager.js.map +1 -1
  22. package/lib/documents/client-ids.d.ts +5 -19
  23. package/lib/documents/client-ids.d.ts.map +1 -1
  24. package/lib/documents/client-ids.js +5 -19
  25. package/lib/documents/client-ids.js.map +1 -1
  26. package/lib/documents/client-session-errors.d.ts +15 -0
  27. package/lib/documents/client-session-errors.d.ts.map +1 -0
  28. package/lib/documents/client-session-errors.js +15 -0
  29. package/lib/documents/client-session-errors.js.map +1 -0
  30. package/lib/documents/client-session-registry.d.ts +146 -0
  31. package/lib/documents/client-session-registry.d.ts.map +1 -0
  32. package/lib/documents/client-session-registry.js +207 -0
  33. package/lib/documents/client-session-registry.js.map +1 -0
  34. package/lib/documents/dirty-state-tracker.d.ts +101 -0
  35. package/lib/documents/dirty-state-tracker.d.ts.map +1 -0
  36. package/lib/documents/dirty-state-tracker.js +85 -0
  37. package/lib/documents/dirty-state-tracker.js.map +1 -0
  38. package/lib/documents/document-release-handler.d.ts +204 -0
  39. package/lib/documents/document-release-handler.d.ts.map +1 -0
  40. package/lib/documents/document-release-handler.js +317 -0
  41. package/lib/documents/document-release-handler.js.map +1 -0
  42. package/lib/documents/document-release-scheduler.d.ts +67 -0
  43. package/lib/documents/document-release-scheduler.d.ts.map +1 -0
  44. package/lib/documents/document-release-scheduler.js +80 -0
  45. package/lib/documents/document-release-scheduler.js.map +1 -0
  46. package/lib/documents/file-system-task-queue.d.ts +52 -0
  47. package/lib/documents/file-system-task-queue.d.ts.map +1 -0
  48. package/lib/documents/file-system-task-queue.js +37 -0
  49. package/lib/documents/file-system-task-queue.js.map +1 -0
  50. package/lib/documents/hydranium-text-documents.d.ts +436 -282
  51. package/lib/documents/hydranium-text-documents.d.ts.map +1 -1
  52. package/lib/documents/hydranium-text-documents.js +886 -483
  53. package/lib/documents/hydranium-text-documents.js.map +1 -1
  54. package/lib/documents/index.d.ts +10 -2
  55. package/lib/documents/index.d.ts.map +1 -1
  56. package/lib/documents/index.js +10 -2
  57. package/lib/documents/index.js.map +1 -1
  58. package/lib/documents/language-client-shadow.d.ts +234 -0
  59. package/lib/documents/language-client-shadow.d.ts.map +1 -0
  60. package/lib/documents/language-client-shadow.js +306 -0
  61. package/lib/documents/language-client-shadow.js.map +1 -0
  62. package/lib/documents/model-ledger.d.ts +47 -0
  63. package/lib/documents/model-ledger.d.ts.map +1 -0
  64. package/lib/documents/model-ledger.js +30 -0
  65. package/lib/documents/model-ledger.js.map +1 -0
  66. package/lib/documents/text-ledger.d.ts +64 -0
  67. package/lib/documents/text-ledger.d.ts.map +1 -0
  68. package/lib/documents/text-ledger.js +63 -0
  69. package/lib/documents/text-ledger.js.map +1 -0
  70. package/lib/documents/version-sync-service.d.ts +138 -0
  71. package/lib/documents/version-sync-service.d.ts.map +1 -0
  72. package/lib/documents/version-sync-service.js +173 -0
  73. package/lib/documents/version-sync-service.js.map +1 -0
  74. package/lib/index.d.ts +4 -0
  75. package/lib/index.d.ts.map +1 -1
  76. package/lib/index.js +7 -0
  77. package/lib/index.js.map +1 -1
  78. package/lib/langium/ast-extension/ast-extension-service.d.ts +42 -31
  79. package/lib/langium/ast-extension/ast-extension-service.d.ts.map +1 -1
  80. package/lib/langium/ast-extension/ast-extension-service.js +45 -19
  81. package/lib/langium/ast-extension/ast-extension-service.js.map +1 -1
  82. package/lib/langium/ast-extension/ast-node-builder.d.ts +12 -7
  83. package/lib/langium/ast-extension/ast-node-builder.d.ts.map +1 -1
  84. package/lib/langium/ast-extension/ast-node-builder.js +25 -9
  85. package/lib/langium/ast-extension/ast-node-builder.js.map +1 -1
  86. package/lib/langium/bootstrap.d.ts +49 -36
  87. package/lib/langium/bootstrap.d.ts.map +1 -1
  88. package/lib/langium/bootstrap.js +83 -44
  89. package/lib/langium/bootstrap.js.map +1 -1
  90. package/lib/langium/build-phase-pass/build-phase-pass-service.d.ts +9 -9
  91. package/lib/langium/build-phase-pass/build-phase-pass-service.d.ts.map +1 -1
  92. package/lib/langium/build-phase-pass/build-phase-pass-service.js +25 -16
  93. package/lib/langium/build-phase-pass/build-phase-pass-service.js.map +1 -1
  94. package/lib/langium/build-phase-pass/build-phase-pass.d.ts +20 -8
  95. package/lib/langium/build-phase-pass/build-phase-pass.d.ts.map +1 -1
  96. package/lib/langium/build-phase-pass/build-phase-pass.js +20 -0
  97. package/lib/langium/build-phase-pass/build-phase-pass.js.map +1 -1
  98. package/lib/langium/composite-ast-reflection.d.ts +46 -0
  99. package/lib/langium/composite-ast-reflection.d.ts.map +1 -0
  100. package/lib/langium/composite-ast-reflection.js +97 -0
  101. package/lib/langium/composite-ast-reflection.js.map +1 -0
  102. package/lib/langium/config/configuration-provider.d.ts +81 -0
  103. package/lib/langium/config/configuration-provider.d.ts.map +1 -0
  104. package/lib/langium/config/configuration-provider.js +112 -0
  105. package/lib/langium/config/configuration-provider.js.map +1 -0
  106. package/lib/langium/config/index.d.ts +1 -0
  107. package/lib/langium/config/index.d.ts.map +1 -1
  108. package/lib/langium/config/index.js +1 -0
  109. package/lib/langium/config/index.js.map +1 -1
  110. package/lib/langium/config/settings.js.map +1 -1
  111. package/lib/langium/diagnostics/hydranium-langium-profiler.d.ts +9 -20
  112. package/lib/langium/diagnostics/hydranium-langium-profiler.d.ts.map +1 -1
  113. package/lib/langium/diagnostics/hydranium-langium-profiler.js +15 -24
  114. package/lib/langium/diagnostics/hydranium-langium-profiler.js.map +1 -1
  115. package/lib/langium/diagnostics/log-preamble.js +1 -1
  116. package/lib/langium/diagnostics/log-preamble.js.map +1 -1
  117. package/lib/langium/diagnostics/logger.d.ts +19 -4
  118. package/lib/langium/diagnostics/logger.d.ts.map +1 -1
  119. package/lib/langium/diagnostics/logger.js +36 -11
  120. package/lib/langium/diagnostics/logger.js.map +1 -1
  121. package/lib/langium/diagnostics/lsp-logger.d.ts +17 -0
  122. package/lib/langium/diagnostics/lsp-logger.d.ts.map +1 -1
  123. package/lib/langium/diagnostics/lsp-logger.js +58 -17
  124. package/lib/langium/diagnostics/lsp-logger.js.map +1 -1
  125. package/lib/langium/diagnostics/server-tracer.d.ts.map +1 -1
  126. package/lib/langium/diagnostics/server-tracer.js.map +1 -1
  127. package/lib/langium/document-builder/build-pipeline-integration.d.ts +21 -1
  128. package/lib/langium/document-builder/build-pipeline-integration.d.ts.map +1 -1
  129. package/lib/langium/document-builder/build-pipeline-integration.js +28 -30
  130. package/lib/langium/document-builder/build-pipeline-integration.js.map +1 -1
  131. package/lib/langium/document-builder/build-session.d.ts +6 -5
  132. package/lib/langium/document-builder/build-session.d.ts.map +1 -1
  133. package/lib/langium/document-builder/build-session.js +5 -5
  134. package/lib/langium/document-builder/build-session.js.map +1 -1
  135. package/lib/langium/document-builder/document-builder.d.ts +283 -41
  136. package/lib/langium/document-builder/document-builder.d.ts.map +1 -1
  137. package/lib/langium/document-builder/document-builder.js +448 -78
  138. package/lib/langium/document-builder/document-builder.js.map +1 -1
  139. package/lib/langium/documentation/comment-provider.d.ts.map +1 -1
  140. package/lib/langium/documentation/comment-provider.js.map +1 -1
  141. package/lib/langium/integration-services.d.ts +40 -24
  142. package/lib/langium/integration-services.d.ts.map +1 -1
  143. package/lib/langium/integration-services.js +7 -4
  144. package/lib/langium/integration-services.js.map +1 -1
  145. package/lib/langium/integrity/integrity-rule.d.ts +17 -8
  146. package/lib/langium/integrity/integrity-rule.d.ts.map +1 -1
  147. package/lib/langium/integrity/integrity-rule.js.map +1 -1
  148. package/lib/langium/integrity/integrity-service.d.ts +95 -27
  149. package/lib/langium/integrity/integrity-service.d.ts.map +1 -1
  150. package/lib/langium/integrity/integrity-service.js +303 -63
  151. package/lib/langium/integrity/integrity-service.js.map +1 -1
  152. package/lib/langium/keys/containment.d.ts +64 -0
  153. package/lib/langium/keys/containment.d.ts.map +1 -0
  154. package/lib/langium/keys/containment.js +53 -0
  155. package/lib/langium/keys/containment.js.map +1 -0
  156. package/lib/langium/keys/index.d.ts +1 -0
  157. package/lib/langium/keys/index.d.ts.map +1 -1
  158. package/lib/langium/keys/index.js +1 -0
  159. package/lib/langium/keys/index.js.map +1 -1
  160. package/lib/langium/keys/name-based-key-provider.d.ts +4 -0
  161. package/lib/langium/keys/name-based-key-provider.d.ts.map +1 -1
  162. package/lib/langium/keys/name-based-key-provider.js +4 -0
  163. package/lib/langium/keys/name-based-key-provider.js.map +1 -1
  164. package/lib/langium/keys/positional-key-provider.d.ts.map +1 -1
  165. package/lib/langium/keys/positional-key-provider.js.map +1 -1
  166. package/lib/langium/labeling/label-provider.d.ts.map +1 -1
  167. package/lib/langium/labeling/label-provider.js.map +1 -1
  168. package/lib/langium/language-module.d.ts +30 -5
  169. package/lib/langium/language-module.d.ts.map +1 -1
  170. package/lib/langium/language-module.js +18 -4
  171. package/lib/langium/language-module.js.map +1 -1
  172. package/lib/langium/model-service/client-session.d.ts +383 -0
  173. package/lib/langium/model-service/client-session.d.ts.map +1 -0
  174. package/lib/langium/model-service/client-session.js +455 -0
  175. package/lib/langium/model-service/client-session.js.map +1 -0
  176. package/lib/langium/model-service/index.d.ts +2 -0
  177. package/lib/langium/model-service/index.d.ts.map +1 -1
  178. package/lib/langium/model-service/index.js +2 -0
  179. package/lib/langium/model-service/index.js.map +1 -1
  180. package/lib/langium/model-service/model-events.d.ts +66 -0
  181. package/lib/langium/model-service/model-events.d.ts.map +1 -0
  182. package/lib/langium/model-service/model-events.js +10 -0
  183. package/lib/langium/model-service/model-events.js.map +1 -0
  184. package/lib/langium/model-service/model-service.d.ts +455 -290
  185. package/lib/langium/model-service/model-service.d.ts.map +1 -1
  186. package/lib/langium/model-service/model-service.js +571 -458
  187. package/lib/langium/model-service/model-service.js.map +1 -1
  188. package/lib/langium/module.d.ts +141 -40
  189. package/lib/langium/module.d.ts.map +1 -1
  190. package/lib/langium/module.js +52 -40
  191. package/lib/langium/module.js.map +1 -1
  192. package/lib/langium/naming/name-provider.d.ts +32 -7
  193. package/lib/langium/naming/name-provider.d.ts.map +1 -1
  194. package/lib/langium/naming/name-provider.js +10 -4
  195. package/lib/langium/naming/name-provider.js.map +1 -1
  196. package/lib/langium/naming/name-separator-validation.d.ts.map +1 -1
  197. package/lib/langium/project/abstract-project-manager.d.ts.map +1 -1
  198. package/lib/langium/project/abstract-project-manager.js +13 -6
  199. package/lib/langium/project/abstract-project-manager.js.map +1 -1
  200. package/lib/langium/project/project-change-event.d.ts +2 -2
  201. package/lib/langium/project/single-project-manager.d.ts.map +1 -1
  202. package/lib/langium/project/single-project-manager.js.map +1 -1
  203. package/lib/langium/residency/cst-residency-service.d.ts +38 -14
  204. package/lib/langium/residency/cst-residency-service.d.ts.map +1 -1
  205. package/lib/langium/residency/cst-residency-service.js +24 -58
  206. package/lib/langium/residency/cst-residency-service.js.map +1 -1
  207. package/lib/langium/scope/ast-node-description-provider.d.ts.map +1 -1
  208. package/lib/langium/scope/ast-node-description-provider.js.map +1 -1
  209. package/lib/langium/scope/fallback-scope.d.ts +27 -0
  210. package/lib/langium/scope/fallback-scope.d.ts.map +1 -0
  211. package/lib/langium/scope/fallback-scope.js +35 -0
  212. package/lib/langium/scope/fallback-scope.js.map +1 -0
  213. package/lib/langium/scope/hydranium-scope-computation.d.ts +21 -18
  214. package/lib/langium/scope/hydranium-scope-computation.d.ts.map +1 -1
  215. package/lib/langium/scope/hydranium-scope-computation.js +38 -39
  216. package/lib/langium/scope/hydranium-scope-computation.js.map +1 -1
  217. package/lib/langium/scope/hydranium-scope-provider.d.ts +29 -11
  218. package/lib/langium/scope/hydranium-scope-provider.d.ts.map +1 -1
  219. package/lib/langium/scope/hydranium-scope-provider.js +37 -15
  220. package/lib/langium/scope/hydranium-scope-provider.js.map +1 -1
  221. package/lib/langium/scope/index.d.ts +1 -0
  222. package/lib/langium/scope/index.d.ts.map +1 -1
  223. package/lib/langium/scope/index.js +1 -0
  224. package/lib/langium/scope/index.js.map +1 -1
  225. package/lib/langium/scope/reference-builder.d.ts.map +1 -1
  226. package/lib/langium/scope/reference-builder.js.map +1 -1
  227. package/lib/langium/scope/reference-candidate-provider.d.ts +6 -5
  228. package/lib/langium/scope/reference-candidate-provider.d.ts.map +1 -1
  229. package/lib/langium/scope/reference-candidate-provider.js +3 -2
  230. package/lib/langium/scope/reference-candidate-provider.js.map +1 -1
  231. package/lib/langium/scope/scope-extension-service.d.ts +41 -37
  232. package/lib/langium/scope/scope-extension-service.d.ts.map +1 -1
  233. package/lib/langium/scope/scope-extension-service.js +57 -29
  234. package/lib/langium/scope/scope-extension-service.js.map +1 -1
  235. package/lib/langium/scope/scoped-ast-node-description.d.ts +1 -3
  236. package/lib/langium/scope/scoped-ast-node-description.d.ts.map +1 -1
  237. package/lib/langium/scope/scoped-ast-node-description.js +1 -3
  238. package/lib/langium/scope/scoped-ast-node-description.js.map +1 -1
  239. package/lib/langium/serialization/abstract-serializer.d.ts +38 -27
  240. package/lib/langium/serialization/abstract-serializer.d.ts.map +1 -1
  241. package/lib/langium/serialization/abstract-serializer.js +54 -30
  242. package/lib/langium/serialization/abstract-serializer.js.map +1 -1
  243. package/lib/langium/serialization/json-serializer.d.ts +8 -1
  244. package/lib/langium/serialization/json-serializer.d.ts.map +1 -1
  245. package/lib/langium/serialization/json-serializer.js +13 -3
  246. package/lib/langium/serialization/json-serializer.js.map +1 -1
  247. package/lib/langium/serialization/serializer.d.ts +1 -1
  248. package/lib/langium/serialization/yaml-serializer.d.ts +4 -0
  249. package/lib/langium/serialization/yaml-serializer.d.ts.map +1 -1
  250. package/lib/langium/serialization/yaml-serializer.js +4 -0
  251. package/lib/langium/serialization/yaml-serializer.js.map +1 -1
  252. package/lib/langium/service-registry.d.ts +29 -1
  253. package/lib/langium/service-registry.d.ts.map +1 -1
  254. package/lib/langium/service-registry.js +37 -0
  255. package/lib/langium/service-registry.js.map +1 -1
  256. package/lib/langium/shared-services.d.ts +13 -7
  257. package/lib/langium/shared-services.d.ts.map +1 -1
  258. package/lib/langium/shared-services.js.map +1 -1
  259. package/lib/langium/single-langium-copy.d.ts +22 -0
  260. package/lib/langium/single-langium-copy.d.ts.map +1 -0
  261. package/lib/langium/single-langium-copy.js +36 -0
  262. package/lib/langium/single-langium-copy.js.map +1 -0
  263. package/lib/langium/transfer/transfer-encoder.d.ts +86 -37
  264. package/lib/langium/transfer/transfer-encoder.d.ts.map +1 -1
  265. package/lib/langium/transfer/transfer-encoder.js +36 -25
  266. package/lib/langium/transfer/transfer-encoder.js.map +1 -1
  267. package/lib/langium/trivia/comment-preserver.d.ts +423 -0
  268. package/lib/langium/trivia/comment-preserver.d.ts.map +1 -0
  269. package/lib/langium/trivia/comment-preserver.js +906 -0
  270. package/lib/langium/trivia/comment-preserver.js.map +1 -0
  271. package/lib/langium/trivia/document-ending-preserver.d.ts +51 -0
  272. package/lib/langium/trivia/document-ending-preserver.d.ts.map +1 -0
  273. package/lib/langium/trivia/document-ending-preserver.js +62 -0
  274. package/lib/langium/trivia/document-ending-preserver.js.map +1 -0
  275. package/lib/langium/trivia/index.d.ts +14 -0
  276. package/lib/langium/trivia/index.d.ts.map +1 -0
  277. package/lib/langium/trivia/index.js +14 -0
  278. package/lib/langium/trivia/index.js.map +1 -0
  279. package/lib/langium/trivia/trivia-contribution.d.ts +37 -0
  280. package/lib/langium/trivia/trivia-contribution.d.ts.map +1 -0
  281. package/lib/langium/trivia/trivia-contribution.js +10 -0
  282. package/lib/langium/trivia/trivia-contribution.js.map +1 -0
  283. package/lib/langium/trivia/trivia-preserver.d.ts +52 -0
  284. package/lib/langium/trivia/trivia-preserver.d.ts.map +1 -0
  285. package/lib/langium/trivia/trivia-preserver.js +10 -0
  286. package/lib/langium/trivia/trivia-preserver.js.map +1 -0
  287. package/lib/langium/trivia/trivia-service.d.ts +70 -0
  288. package/lib/langium/trivia/trivia-service.d.ts.map +1 -0
  289. package/lib/langium/trivia/trivia-service.js +56 -0
  290. package/lib/langium/trivia/trivia-service.js.map +1 -0
  291. package/lib/langium/update-rewrite/normalize-empty-strings.d.ts.map +1 -1
  292. package/lib/langium/update-rewrite/update-rewrite-service.d.ts +1 -1
  293. package/lib/langium/update-rewrite/update-rewrite-service.d.ts.map +1 -1
  294. package/lib/langium/update-rewrite/update-rewrite-service.js.map +1 -1
  295. package/lib/langium/update-rewrite/update-rewrite.d.ts +1 -1
  296. package/lib/langium/validation/document-validator.d.ts +216 -10
  297. package/lib/langium/validation/document-validator.d.ts.map +1 -1
  298. package/lib/langium/validation/document-validator.js +353 -8
  299. package/lib/langium/validation/document-validator.js.map +1 -1
  300. package/lib/langium/validation/validation-contribution-collector.d.ts +9 -1
  301. package/lib/langium/validation/validation-contribution-collector.d.ts.map +1 -1
  302. package/lib/langium/validation/validation-contribution-collector.js +1 -1
  303. package/lib/langium/validation/validation-contribution-collector.js.map +1 -1
  304. package/lib/langium/workspace/document-uri-policy.d.ts +24 -15
  305. package/lib/langium/workspace/document-uri-policy.d.ts.map +1 -1
  306. package/lib/langium/workspace/document-uri-policy.js +22 -13
  307. package/lib/langium/workspace/document-uri-policy.js.map +1 -1
  308. package/lib/langium/workspace/file-not-found.d.ts +23 -0
  309. package/lib/langium/workspace/file-not-found.d.ts.map +1 -0
  310. package/lib/langium/workspace/file-not-found.js +31 -0
  311. package/lib/langium/workspace/file-not-found.js.map +1 -0
  312. package/lib/langium/workspace/file-system-provider.d.ts +167 -8
  313. package/lib/langium/workspace/file-system-provider.d.ts.map +1 -1
  314. package/lib/langium/workspace/file-system-provider.js +115 -13
  315. package/lib/langium/workspace/file-system-provider.js.map +1 -1
  316. package/lib/langium/workspace/hydranium-langium-document-factory.d.ts +31 -1
  317. package/lib/langium/workspace/hydranium-langium-document-factory.d.ts.map +1 -1
  318. package/lib/langium/workspace/hydranium-langium-document-factory.js +54 -0
  319. package/lib/langium/workspace/hydranium-langium-document-factory.js.map +1 -1
  320. package/lib/langium/workspace/hydranium-workspace-lock.d.ts +43 -1
  321. package/lib/langium/workspace/hydranium-workspace-lock.d.ts.map +1 -1
  322. package/lib/langium/workspace/hydranium-workspace-lock.js +58 -1
  323. package/lib/langium/workspace/hydranium-workspace-lock.js.map +1 -1
  324. package/lib/langium/workspace/hydranium-workspace-manager.d.ts +113 -21
  325. package/lib/langium/workspace/hydranium-workspace-manager.d.ts.map +1 -1
  326. package/lib/langium/workspace/hydranium-workspace-manager.js +197 -31
  327. package/lib/langium/workspace/hydranium-workspace-manager.js.map +1 -1
  328. package/lib/langium/workspace/in-memory-file-system-provider.d.ts +26 -9
  329. package/lib/langium/workspace/in-memory-file-system-provider.d.ts.map +1 -1
  330. package/lib/langium/workspace/in-memory-file-system-provider.js +45 -22
  331. package/lib/langium/workspace/in-memory-file-system-provider.js.map +1 -1
  332. package/lib/langium/workspace/index-manager.d.ts.map +1 -1
  333. package/lib/langium/workspace/index-manager.js.map +1 -1
  334. package/lib/langium/workspace/index.d.ts +1 -0
  335. package/lib/langium/workspace/index.d.ts.map +1 -1
  336. package/lib/langium/workspace/index.js +1 -0
  337. package/lib/langium/workspace/index.js.map +1 -1
  338. package/lib/langium/workspace/initialize-workspace.d.ts +40 -3
  339. package/lib/langium/workspace/initialize-workspace.d.ts.map +1 -1
  340. package/lib/langium/workspace/initialize-workspace.js +68 -3
  341. package/lib/langium/workspace/initialize-workspace.js.map +1 -1
  342. package/lib/langium/workspace/langium-documents.d.ts +7 -0
  343. package/lib/langium/workspace/langium-documents.d.ts.map +1 -1
  344. package/lib/langium/workspace/langium-documents.js +18 -1
  345. package/lib/langium/workspace/langium-documents.js.map +1 -1
  346. package/lib/langium/workspace/persistent-file-system-provider.d.ts +16 -10
  347. package/lib/langium/workspace/persistent-file-system-provider.d.ts.map +1 -1
  348. package/lib/langium/workspace/persistent-file-system-provider.js +25 -13
  349. package/lib/langium/workspace/persistent-file-system-provider.js.map +1 -1
  350. package/lib/langium/workspace/self-save-registry.d.ts +84 -0
  351. package/lib/langium/workspace/self-save-registry.d.ts.map +1 -0
  352. package/lib/{documents → langium/workspace}/self-save-registry.js +33 -22
  353. package/lib/langium/workspace/self-save-registry.js.map +1 -0
  354. package/lib/langium/workspace/virtual-document.d.ts +55 -21
  355. package/lib/langium/workspace/virtual-document.d.ts.map +1 -1
  356. package/lib/langium/workspace/virtual-document.js +87 -24
  357. package/lib/langium/workspace/virtual-document.js.map +1 -1
  358. package/lib/langium/workspace/write-lock-scope.d.ts +22 -10
  359. package/lib/langium/workspace/write-lock-scope.d.ts.map +1 -1
  360. package/lib/langium/workspace/write-lock-scope.js +15 -5
  361. package/lib/langium/workspace/write-lock-scope.js.map +1 -1
  362. package/lib/launcher/integrated-server.d.ts +3 -1
  363. package/lib/launcher/integrated-server.d.ts.map +1 -1
  364. package/lib/locale/server-locale.d.ts +29 -5
  365. package/lib/locale/server-locale.d.ts.map +1 -1
  366. package/lib/locale/server-locale.js +12 -2
  367. package/lib/locale/server-locale.js.map +1 -1
  368. package/lib/lsp/completion/hydranium-completion-provider.d.ts +44 -2
  369. package/lib/lsp/completion/hydranium-completion-provider.d.ts.map +1 -1
  370. package/lib/lsp/completion/hydranium-completion-provider.js +68 -0
  371. package/lib/lsp/completion/hydranium-completion-provider.js.map +1 -1
  372. package/lib/lsp/connection-features.d.ts +23 -0
  373. package/lib/lsp/connection-features.d.ts.map +1 -0
  374. package/lib/lsp/connection-features.js +60 -0
  375. package/lib/lsp/connection-features.js.map +1 -0
  376. package/lib/lsp/diagnostics-connection.d.ts +27 -0
  377. package/lib/lsp/diagnostics-connection.d.ts.map +1 -0
  378. package/lib/lsp/diagnostics-connection.js +53 -0
  379. package/lib/lsp/diagnostics-connection.js.map +1 -0
  380. package/lib/lsp/hydranium-document-update-handler.d.ts +126 -82
  381. package/lib/lsp/hydranium-document-update-handler.d.ts.map +1 -1
  382. package/lib/lsp/hydranium-document-update-handler.js +235 -102
  383. package/lib/lsp/hydranium-document-update-handler.js.map +1 -1
  384. package/lib/lsp/index.d.ts +4 -1
  385. package/lib/lsp/index.d.ts.map +1 -1
  386. package/lib/lsp/index.js +4 -1
  387. package/lib/lsp/index.js.map +1 -1
  388. package/lib/lsp/lsp-latency.d.ts +39 -0
  389. package/lib/lsp/lsp-latency.d.ts.map +1 -0
  390. package/lib/lsp/lsp-latency.js +58 -0
  391. package/lib/lsp/lsp-latency.js.map +1 -0
  392. package/lib/lsp/save-text-document.d.ts +31 -0
  393. package/lib/lsp/save-text-document.d.ts.map +1 -0
  394. package/lib/lsp/save-text-document.js +52 -0
  395. package/lib/lsp/save-text-document.js.map +1 -0
  396. package/lib/lsp/semantic-token-provider.d.ts +34 -1
  397. package/lib/lsp/semantic-token-provider.d.ts.map +1 -1
  398. package/lib/lsp/semantic-token-provider.js +55 -8
  399. package/lib/lsp/semantic-token-provider.js.map +1 -1
  400. package/lib/lsp/shared-module.d.ts +4 -8
  401. package/lib/lsp/shared-module.d.ts.map +1 -1
  402. package/lib/lsp/shared-module.js.map +1 -1
  403. package/lib/lsp/start-language-server.d.ts +8 -7
  404. package/lib/lsp/start-language-server.d.ts.map +1 -1
  405. package/lib/lsp/start-language-server.js +13 -7
  406. package/lib/lsp/start-language-server.js.map +1 -1
  407. package/lib/messages/carriers.d.ts +11 -6
  408. package/lib/messages/carriers.d.ts.map +1 -1
  409. package/lib/messages/carriers.js +14 -6
  410. package/lib/messages/carriers.js.map +1 -1
  411. package/lib/messages/index.d.ts +2 -2
  412. package/lib/messages/index.d.ts.map +1 -1
  413. package/lib/messages/index.js +2 -2
  414. package/lib/messages/index.js.map +1 -1
  415. package/lib/messages/renderer.d.ts +32 -7
  416. package/lib/messages/renderer.d.ts.map +1 -1
  417. package/lib/messages/renderer.js +7 -1
  418. package/lib/messages/renderer.js.map +1 -1
  419. package/lib/node/event-loop-monitor.d.ts.map +1 -1
  420. package/lib/node/event-loop-monitor.js +2 -1
  421. package/lib/node/event-loop-monitor.js.map +1 -1
  422. package/lib/node/heap-ceiling.d.ts +61 -0
  423. package/lib/node/heap-ceiling.d.ts.map +1 -0
  424. package/lib/node/heap-ceiling.js +72 -0
  425. package/lib/node/heap-ceiling.js.map +1 -0
  426. package/lib/node/index.d.ts +1 -1
  427. package/lib/node/index.d.ts.map +1 -1
  428. package/lib/node/index.js +5 -1
  429. package/lib/node/index.js.map +1 -1
  430. package/lib/node/latency-from-env.d.ts +1 -1
  431. package/lib/node/latency-from-env.js +1 -1
  432. package/lib/node/lint-grammar.js.map +1 -1
  433. package/lib/node/log-preamble-node.d.ts +5 -3
  434. package/lib/node/log-preamble-node.d.ts.map +1 -1
  435. package/lib/node/log-preamble-node.js +13 -10
  436. package/lib/node/log-preamble-node.js.map +1 -1
  437. package/lib/node/measure-memory.d.ts.map +1 -1
  438. package/lib/node/measure-memory.js +5 -4
  439. package/lib/node/measure-memory.js.map +1 -1
  440. package/lib/node/memory-monitor.d.ts +2 -2
  441. package/lib/node/memory-monitor.d.ts.map +1 -1
  442. package/lib/node/memory-monitor.js +9 -10
  443. package/lib/node/memory-monitor.js.map +1 -1
  444. package/lib/node/node-file-system-provider.d.ts +67 -9
  445. package/lib/node/node-file-system-provider.d.ts.map +1 -1
  446. package/lib/node/node-file-system-provider.js +198 -53
  447. package/lib/node/node-file-system-provider.js.map +1 -1
  448. package/lib/node/profile-capture.d.ts +12 -4
  449. package/lib/node/profile-capture.d.ts.map +1 -1
  450. package/lib/node/profile-capture.js +8 -6
  451. package/lib/node/profile-capture.js.map +1 -1
  452. package/lib/node/profile-digest.js.map +1 -1
  453. package/lib/node/profiling-run.d.ts +13 -3
  454. package/lib/node/profiling-run.d.ts.map +1 -1
  455. package/lib/node/profiling-run.js +17 -8
  456. package/lib/node/profiling-run.js.map +1 -1
  457. package/lib/node/rename-over-open-readers.d.ts +61 -0
  458. package/lib/node/rename-over-open-readers.d.ts.map +1 -0
  459. package/lib/node/rename-over-open-readers.js +80 -0
  460. package/lib/node/rename-over-open-readers.js.map +1 -0
  461. package/lib/node/server-diagnostics.js +1 -1
  462. package/lib/node/server-diagnostics.js.map +1 -1
  463. package/lib/node/server-state-snapshot.js +4 -4
  464. package/lib/node/server-state-snapshot.js.map +1 -1
  465. package/lib/node/socket-launcher.d.ts +43 -7
  466. package/lib/node/socket-launcher.d.ts.map +1 -1
  467. package/lib/node/socket-launcher.js +42 -7
  468. package/lib/node/socket-launcher.js.map +1 -1
  469. package/lib/node/startup-cpu-profile.d.ts +29 -0
  470. package/lib/node/startup-cpu-profile.d.ts.map +1 -0
  471. package/lib/node/startup-cpu-profile.js +91 -0
  472. package/lib/node/startup-cpu-profile.js.map +1 -0
  473. package/lib/node/stdio-launcher.d.ts +13 -13
  474. package/lib/node/stdio-launcher.d.ts.map +1 -1
  475. package/lib/node/stdio-launcher.js +21 -11
  476. package/lib/node/stdio-launcher.js.map +1 -1
  477. package/lib/testing/document-uri-policy-conformance.js +1 -1
  478. package/lib/testing/document-uri-policy-conformance.js.map +1 -1
  479. package/lib/testing/fake-description.js.map +1 -1
  480. package/lib/testing/fake-document.d.ts +2 -1
  481. package/lib/testing/fake-document.d.ts.map +1 -1
  482. package/lib/testing/fake-document.js.map +1 -1
  483. package/lib/testing/index.d.ts +1 -1
  484. package/lib/testing/index.d.ts.map +1 -1
  485. package/lib/testing/index.js +2 -1
  486. package/lib/testing/index.js.map +1 -1
  487. package/lib/testing/langium-test-helpers.d.ts.map +1 -1
  488. package/lib/testing/langium-test-helpers.js +1 -0
  489. package/lib/testing/langium-test-helpers.js.map +1 -1
  490. package/lib/testing/make-noop-language-services.js.map +1 -1
  491. package/lib/testing/make-noop-shared-services.d.ts +4 -4
  492. package/lib/testing/make-noop-shared-services.d.ts.map +1 -1
  493. package/lib/testing/make-noop-shared-services.js +4 -4
  494. package/lib/testing/make-noop-shared-services.js.map +1 -1
  495. package/lib/testing/make-test-services.d.ts +51 -20
  496. package/lib/testing/make-test-services.d.ts.map +1 -1
  497. package/lib/testing/make-test-services.js +29 -13
  498. package/lib/testing/make-test-services.js.map +1 -1
  499. package/lib/testing/make-test-tracer.d.ts +12 -0
  500. package/lib/testing/make-test-tracer.d.ts.map +1 -1
  501. package/lib/testing/make-test-tracer.js +13 -0
  502. package/lib/testing/make-test-tracer.js.map +1 -1
  503. package/lib/testing/node/applied-edit-capture.d.ts +29 -0
  504. package/lib/testing/node/applied-edit-capture.d.ts.map +1 -0
  505. package/lib/testing/node/applied-edit-capture.js +117 -0
  506. package/lib/testing/node/applied-edit-capture.js.map +1 -0
  507. package/lib/testing/node/golden-corpus.js.map +1 -1
  508. package/lib/testing/node/index.d.ts +1 -0
  509. package/lib/testing/node/index.d.ts.map +1 -1
  510. package/lib/testing/node/index.js +1 -0
  511. package/lib/testing/node/index.js.map +1 -1
  512. package/lib/testing/node/lsp-harness.d.ts.map +1 -1
  513. package/lib/testing/node/lsp-harness.js +2 -0
  514. package/lib/testing/node/lsp-harness.js.map +1 -1
  515. package/lib/testing/node/lsp-server-connection.d.ts +21 -6
  516. package/lib/testing/node/lsp-server-connection.d.ts.map +1 -1
  517. package/lib/testing/node/lsp-server-connection.js +49 -106
  518. package/lib/testing/node/lsp-server-connection.js.map +1 -1
  519. package/lib/testing/node/scratch-workspace.d.ts.map +1 -1
  520. package/lib/testing/node/scratch-workspace.js +10 -5
  521. package/lib/testing/node/scratch-workspace.js.map +1 -1
  522. package/lib/testing/node/spawned-server.d.ts +30 -1
  523. package/lib/testing/node/spawned-server.d.ts.map +1 -1
  524. package/lib/testing/node/spawned-server.js +39 -2
  525. package/lib/testing/node/spawned-server.js.map +1 -1
  526. package/lib/testing/node/unhandled-rejections.d.ts +20 -0
  527. package/lib/testing/node/unhandled-rejections.d.ts.map +1 -0
  528. package/lib/testing/node/unhandled-rejections.js +32 -0
  529. package/lib/testing/node/unhandled-rejections.js.map +1 -0
  530. package/lib/testing/playwright/browser-capture-bridge.js.map +1 -1
  531. package/lib/testing/playwright/e2e-profiling.js.map +1 -1
  532. package/lib/testing/playwright/flaky-network-proxy.d.ts +76 -0
  533. package/lib/testing/playwright/flaky-network-proxy.d.ts.map +1 -0
  534. package/lib/testing/playwright/flaky-network-proxy.js +164 -0
  535. package/lib/testing/playwright/flaky-network-proxy.js.map +1 -0
  536. package/lib/testing/playwright/index.d.ts +1 -0
  537. package/lib/testing/playwright/index.d.ts.map +1 -1
  538. package/lib/testing/playwright/index.js +1 -0
  539. package/lib/testing/playwright/index.js.map +1 -1
  540. package/lib/testing/playwright/server-log-capture.d.ts +46 -16
  541. package/lib/testing/playwright/server-log-capture.d.ts.map +1 -1
  542. package/lib/testing/playwright/server-log-capture.js +111 -40
  543. package/lib/testing/playwright/server-log-capture.js.map +1 -1
  544. package/lib/testing/playwright/server-log-fixture.d.ts +16 -0
  545. package/lib/testing/playwright/server-log-fixture.d.ts.map +1 -1
  546. package/lib/testing/playwright/server-log-fixture.js +25 -6
  547. package/lib/testing/playwright/server-log-fixture.js.map +1 -1
  548. package/lib/testing/playwright/server-log-region.d.ts +15 -0
  549. package/lib/testing/playwright/server-log-region.d.ts.map +1 -0
  550. package/lib/testing/playwright/server-log-region.js +30 -0
  551. package/lib/testing/playwright/server-log-region.js.map +1 -0
  552. package/lib/testing/playwright/server-log-rename-reporter.d.ts.map +1 -1
  553. package/lib/testing/playwright/server-log-rename-reporter.js +4 -3
  554. package/lib/testing/playwright/server-log-rename-reporter.js.map +1 -1
  555. package/lib/testing/run-update-pipeline.d.ts +8 -5
  556. package/lib/testing/run-update-pipeline.d.ts.map +1 -1
  557. package/lib/testing/run-update-pipeline.js.map +1 -1
  558. package/lib/testing/stub-ast-document-manager.d.ts +11 -52
  559. package/lib/testing/stub-ast-document-manager.d.ts.map +1 -1
  560. package/lib/testing/stub-ast-document-manager.js +31 -62
  561. package/lib/testing/stub-ast-document-manager.js.map +1 -1
  562. package/lib/testing/stub-document-builder.d.ts +33 -11
  563. package/lib/testing/stub-document-builder.d.ts.map +1 -1
  564. package/lib/testing/stub-document-builder.js +103 -5
  565. package/lib/testing/stub-document-builder.js.map +1 -1
  566. package/lib/testing/stub-hydranium-text-documents.d.ts +33 -10
  567. package/lib/testing/stub-hydranium-text-documents.d.ts.map +1 -1
  568. package/lib/testing/stub-hydranium-text-documents.js +132 -16
  569. package/lib/testing/stub-hydranium-text-documents.js.map +1 -1
  570. package/lib/testing/stub-index-manager.js.map +1 -1
  571. package/lib/testing/stub-langium-documents.d.ts +3 -2
  572. package/lib/testing/stub-langium-documents.d.ts.map +1 -1
  573. package/lib/testing/stub-langium-documents.js.map +1 -1
  574. package/lib/testing/stub-model-service.d.ts +9 -8
  575. package/lib/testing/stub-model-service.d.ts.map +1 -1
  576. package/lib/testing/stub-model-service.js +6 -6
  577. package/lib/testing/stub-model-service.js.map +1 -1
  578. package/lib/testing/stub-project-manager.js.map +1 -1
  579. package/lib/testing/stub-self-save-registry.d.ts +1 -1
  580. package/lib/testing/stub-self-save-registry.d.ts.map +1 -1
  581. package/lib/testing/stub-service-registry.d.ts +1 -1
  582. package/lib/testing/stub-service-registry.js.map +1 -1
  583. package/lib/testing/stub-writable-file-system.d.ts +1 -1
  584. package/lib/testing/stub-writable-file-system.d.ts.map +1 -1
  585. package/lib/testing/stub-writable-file-system.js +2 -1
  586. package/lib/testing/stub-writable-file-system.js.map +1 -1
  587. package/lib/util/connection-liveness.d.ts +19 -6
  588. package/lib/util/connection-liveness.d.ts.map +1 -1
  589. package/lib/util/connection-liveness.js +61 -15
  590. package/lib/util/connection-liveness.js.map +1 -1
  591. package/lib/util/environment.d.ts.map +1 -1
  592. package/lib/util/environment.js.map +1 -1
  593. package/lib/util/registry.d.ts.map +1 -1
  594. package/package.json +39 -58
  595. package/src/browser/host-heads-in-worker.ts +218 -0
  596. package/src/browser/index.ts +17 -0
  597. package/src/browser/indexeddb-file-system-store.ts +192 -0
  598. package/src/browser/start-language-server-in-worker.ts +56 -0
  599. package/src/documents/ast-document-manager.ts +467 -233
  600. package/src/documents/client-ids.ts +5 -22
  601. package/src/documents/client-session-errors.ts +24 -0
  602. package/src/documents/client-session-registry.ts +262 -0
  603. package/src/documents/dirty-state-tracker.ts +167 -0
  604. package/src/documents/document-release-handler.ts +404 -0
  605. package/src/documents/document-release-scheduler.ts +121 -0
  606. package/src/documents/file-system-task-queue.ts +74 -0
  607. package/src/documents/hydranium-text-documents.ts +1011 -595
  608. package/src/documents/index.ts +10 -2
  609. package/src/documents/language-client-shadow.ts +501 -0
  610. package/src/documents/model-ledger.ts +66 -0
  611. package/src/documents/text-ledger.ts +112 -0
  612. package/src/documents/version-sync-service.ts +275 -0
  613. package/src/index.ts +7 -0
  614. package/src/langium/ast-extension/ast-extension-service.ts +77 -41
  615. package/src/langium/ast-extension/ast-node-builder.ts +35 -13
  616. package/src/langium/bootstrap.ts +87 -51
  617. package/src/langium/build-phase-pass/build-phase-pass-service.ts +29 -19
  618. package/src/langium/build-phase-pass/build-phase-pass.ts +37 -8
  619. package/src/langium/composite-ast-reflection.ts +112 -0
  620. package/src/langium/config/configuration-provider.ts +119 -0
  621. package/src/langium/config/index.ts +1 -0
  622. package/src/langium/diagnostics/hydranium-langium-profiler.ts +15 -39
  623. package/src/langium/diagnostics/log-preamble.ts +1 -1
  624. package/src/langium/diagnostics/logger.ts +38 -11
  625. package/src/langium/diagnostics/lsp-logger.ts +61 -16
  626. package/src/langium/document-builder/build-pipeline-integration.ts +46 -32
  627. package/src/langium/document-builder/build-session.ts +4 -3
  628. package/src/langium/document-builder/document-builder.ts +553 -78
  629. package/src/langium/integration-services.ts +59 -28
  630. package/src/langium/integrity/integrity-rule.ts +17 -8
  631. package/src/langium/integrity/integrity-service.ts +332 -69
  632. package/src/langium/keys/containment.ts +87 -0
  633. package/src/langium/keys/index.ts +1 -0
  634. package/src/langium/keys/name-based-key-provider.ts +4 -0
  635. package/src/langium/language-module.ts +49 -8
  636. package/src/langium/model-service/client-session.ts +718 -0
  637. package/src/langium/model-service/index.ts +2 -0
  638. package/src/langium/model-service/model-events.ts +80 -0
  639. package/src/langium/model-service/model-service.ts +878 -486
  640. package/src/langium/module.ts +195 -72
  641. package/src/langium/naming/name-provider.ts +34 -8
  642. package/src/langium/project/abstract-project-manager.ts +13 -5
  643. package/src/langium/project/project-change-event.ts +2 -2
  644. package/src/langium/residency/cst-residency-service.ts +54 -19
  645. package/src/langium/scope/fallback-scope.ts +38 -0
  646. package/src/langium/scope/hydranium-scope-computation.ts +45 -44
  647. package/src/langium/scope/hydranium-scope-provider.ts +49 -16
  648. package/src/langium/scope/index.ts +1 -0
  649. package/src/langium/scope/reference-candidate-provider.ts +6 -5
  650. package/src/langium/scope/scope-extension-service.ts +74 -59
  651. package/src/langium/scope/scoped-ast-node-description.ts +1 -3
  652. package/src/langium/serialization/abstract-serializer.ts +57 -41
  653. package/src/langium/serialization/json-serializer.ts +14 -3
  654. package/src/langium/serialization/serializer.ts +1 -1
  655. package/src/langium/serialization/yaml-serializer.ts +4 -0
  656. package/src/langium/service-registry.ts +41 -2
  657. package/src/langium/shared-services.ts +16 -7
  658. package/src/langium/single-langium-copy.ts +42 -0
  659. package/src/langium/transfer/transfer-encoder.ts +104 -47
  660. package/src/langium/trivia/comment-preserver.ts +1100 -0
  661. package/src/langium/trivia/document-ending-preserver.ts +71 -0
  662. package/src/langium/trivia/index.ts +14 -0
  663. package/src/langium/trivia/trivia-contribution.ts +39 -0
  664. package/src/langium/trivia/trivia-preserver.ts +56 -0
  665. package/src/langium/trivia/trivia-service.ts +99 -0
  666. package/src/langium/update-rewrite/update-rewrite-service.ts +1 -1
  667. package/src/langium/update-rewrite/update-rewrite.ts +1 -1
  668. package/src/langium/validation/document-validator.ts +411 -12
  669. package/src/langium/validation/validation-contribution-collector.ts +10 -1
  670. package/src/langium/workspace/document-uri-policy.ts +32 -18
  671. package/src/langium/workspace/file-not-found.ts +35 -0
  672. package/src/langium/workspace/file-system-provider.ts +258 -16
  673. package/src/langium/workspace/hydranium-langium-document-factory.ts +83 -0
  674. package/src/langium/workspace/hydranium-workspace-lock.ts +86 -2
  675. package/src/langium/workspace/hydranium-workspace-manager.ts +224 -35
  676. package/src/langium/workspace/in-memory-file-system-provider.ts +54 -23
  677. package/src/langium/workspace/index.ts +1 -0
  678. package/src/langium/workspace/initialize-workspace.ts +96 -4
  679. package/src/langium/workspace/langium-documents.ts +19 -1
  680. package/src/langium/workspace/persistent-file-system-provider.ts +27 -15
  681. package/src/langium/workspace/self-save-registry.ts +118 -0
  682. package/src/langium/workspace/virtual-document.ts +106 -25
  683. package/src/langium/workspace/write-lock-scope.ts +27 -12
  684. package/src/launcher/integrated-server.ts +3 -1
  685. package/src/locale/server-locale.ts +31 -6
  686. package/src/lsp/completion/hydranium-completion-provider.ts +82 -2
  687. package/src/lsp/connection-features.ts +67 -0
  688. package/src/lsp/diagnostics-connection.ts +56 -0
  689. package/src/lsp/hydranium-document-update-handler.ts +285 -111
  690. package/src/lsp/index.ts +4 -1
  691. package/src/lsp/lsp-latency.ts +62 -0
  692. package/src/lsp/save-text-document.ts +63 -0
  693. package/src/lsp/semantic-token-provider.ts +74 -7
  694. package/src/lsp/shared-module.ts +4 -8
  695. package/src/lsp/start-language-server.ts +13 -7
  696. package/src/messages/carriers.ts +15 -7
  697. package/src/messages/index.ts +11 -2
  698. package/src/messages/renderer.ts +34 -6
  699. package/src/node/event-loop-monitor.ts +2 -1
  700. package/src/node/heap-ceiling.ts +108 -0
  701. package/src/node/index.ts +5 -1
  702. package/src/node/latency-from-env.ts +1 -1
  703. package/src/node/log-preamble-node.ts +20 -10
  704. package/src/node/measure-memory.ts +5 -4
  705. package/src/node/memory-monitor.ts +10 -10
  706. package/src/node/node-file-system-provider.ts +214 -57
  707. package/src/node/profile-capture.ts +16 -15
  708. package/src/node/profiling-run.ts +30 -8
  709. package/src/node/rename-over-open-readers.ts +94 -0
  710. package/src/node/server-diagnostics.ts +1 -1
  711. package/src/node/server-state-snapshot.ts +5 -5
  712. package/src/node/socket-launcher.ts +78 -14
  713. package/src/node/startup-cpu-profile.ts +94 -0
  714. package/src/node/stdio-launcher.ts +29 -19
  715. package/src/testing/document-uri-policy-conformance.ts +1 -1
  716. package/src/testing/fake-document.ts +2 -1
  717. package/src/testing/index.ts +2 -1
  718. package/src/testing/langium-test-helpers.ts +1 -0
  719. package/src/testing/make-noop-shared-services.ts +6 -6
  720. package/src/testing/make-test-services.ts +93 -41
  721. package/src/testing/make-test-tracer.ts +26 -0
  722. package/src/testing/node/applied-edit-capture.ts +141 -0
  723. package/src/testing/node/index.ts +1 -0
  724. package/src/testing/node/lsp-harness.ts +2 -0
  725. package/src/testing/node/lsp-server-connection.ts +83 -119
  726. package/src/testing/node/scratch-workspace.ts +10 -5
  727. package/src/testing/node/spawned-server.ts +57 -3
  728. package/src/testing/node/unhandled-rejections.ts +31 -0
  729. package/src/testing/parse-semantic-root.ts +1 -1
  730. package/src/testing/playwright/flaky-network-proxy.ts +240 -0
  731. package/src/testing/playwright/index.ts +1 -0
  732. package/src/testing/playwright/server-log-capture.ts +137 -47
  733. package/src/testing/playwright/server-log-fixture.ts +46 -6
  734. package/src/testing/playwright/server-log-region.ts +32 -0
  735. package/src/testing/playwright/server-log-rename-reporter.ts +4 -3
  736. package/src/testing/run-update-pipeline.ts +8 -5
  737. package/src/testing/stub-ast-document-manager.ts +47 -128
  738. package/src/testing/stub-document-builder.ts +133 -18
  739. package/src/testing/stub-hydranium-text-documents.ts +184 -27
  740. package/src/testing/stub-langium-documents.ts +3 -2
  741. package/src/testing/stub-model-service.ts +11 -10
  742. package/src/testing/stub-self-save-registry.ts +1 -1
  743. package/src/testing/stub-service-registry.ts +1 -1
  744. package/src/testing/stub-writable-file-system.ts +3 -2
  745. package/src/util/connection-liveness.ts +67 -15
  746. package/src/util/environment.ts +9 -1
  747. package/lib/documents/language-client-text-shadow.d.ts +0 -101
  748. package/lib/documents/language-client-text-shadow.d.ts.map +0 -1
  749. package/lib/documents/language-client-text-shadow.js +0 -156
  750. package/lib/documents/language-client-text-shadow.js.map +0 -1
  751. package/lib/documents/self-save-registry.d.ts +0 -55
  752. package/lib/documents/self-save-registry.d.ts.map +0 -1
  753. package/lib/documents/self-save-registry.js.map +0 -1
  754. package/lib/lsp/instrument-connection.d.ts +0 -36
  755. package/lib/lsp/instrument-connection.d.ts.map +0 -1
  756. package/lib/lsp/instrument-connection.js +0 -62
  757. package/lib/lsp/instrument-connection.js.map +0 -1
  758. package/lib/node/process-memory.d.ts +0 -66
  759. package/lib/node/process-memory.d.ts.map +0 -1
  760. package/lib/node/process-memory.js +0 -252
  761. package/lib/node/process-memory.js.map +0 -1
  762. package/src/documents/language-client-text-shadow.ts +0 -175
  763. package/src/documents/self-save-registry.ts +0 -81
  764. package/src/lsp/instrument-connection.ts +0 -66
  765. package/src/node/process-memory.ts +0 -299
@@ -6,15 +6,21 @@
6
6
  *
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
- import { type LogThreshold, type MaybeObservableValue, ObservableValue, type Tracer } from '@hydranium/protocol';
10
- import { type AstNode, type AstNodeLocator, type AstReflection, DefaultDocumentValidator, type DiagnosticInfo, type LangiumDocument, type LangiumCoreServices, type ValidateSingleNodeOptions, type ValidationOptions, type ValidationSeverity } from '@hydranium/langium';
9
+ import { type MessageDefinition, type MessageParams, type ParamsArg, type ParamsOf, type LogThreshold, type MaybeObservableValue, ObservableValue, type Tracer } from '@hydranium/protocol';
10
+ import { type AstNode, type AstNodeLocator, type AstReflection, DefaultDocumentValidator, type DiagnosticInfo, type LangiumDocument, type LangiumCoreServices, type Lexer, type ValidateSingleNodeOptions, type ValidationOptions, type ValidationSeverity } from '@hydranium/langium';
11
11
  import type { CancellationToken } from 'vscode-languageserver-protocol';
12
- import type { Diagnostic } from 'vscode-languageserver-types';
12
+ import { Diagnostic } from 'vscode-languageserver-types';
13
13
  import { type LogNameOptions } from '../diagnostics/logger.js';
14
14
  /**
15
- * Diagnostic read off a `LangiumDocument`: an LSP {@link Diagnostic} that MAY
16
- * carry the protocol-level `element` path and `property` name from
17
- * {@link TransferDiagnostic}.
15
+ * The AST-layer diagnostic: what the build left on `LangiumDocument`, and what
16
+ * an `AstDocument` carries. An LSP {@link Diagnostic} that MAY also carry the
17
+ * `element` path and `property` name from {@link TransferDiagnostic}.
18
+ *
19
+ * **Not interchangeable with {@link TransferDiagnostic}, which is the other end
20
+ * of the same conversion.** They disagree on field types as well as on which
21
+ * fields exist — `severity` is LSP's numeric enum here and a string union there
22
+ * — so a slot typed with the wrong one still accepts the value and then reads
23
+ * `undefined`, or compares equal to nothing.
18
24
  *
19
25
  * `element` is optional because a document's diagnostics do not all come from
20
26
  * this validator. {@link HydraniumDocumentValidator.toDiagnostic} always sets
@@ -29,7 +35,7 @@ import { type LogNameOptions } from '../diagnostics/logger.js';
29
35
  * condition. Consumers therefore cast at the read, and the cast is sound only
30
36
  * because this field is optional.
31
37
  */
32
- export interface TransferLspDiagnostic extends Diagnostic {
38
+ export interface AstDiagnostic extends Diagnostic {
33
39
  element?: string;
34
40
  property?: string;
35
41
  }
@@ -48,7 +54,103 @@ export interface TransferLspDiagnostic extends Diagnostic {
48
54
  * `Diagnostic.code` — so without a framework identity every adopter wanting to
49
55
  * render it has to special-case Langium's shape.
50
56
  */
51
- export declare const UNRESOLVED_REFERENCE: import("@hydranium/protocol").MessageDefinition<"Could not resolve reference to {referenceType} named '{refText}'.">;
57
+ export declare const UNRESOLVED_REFERENCE: MessageDefinition<"Could not resolve reference to {referenceType} named '{refText}'.">;
58
+ /**
59
+ * A character no token of the grammar can start with.
60
+ *
61
+ * **The English is byte-identical to CHEVROTAIN's
62
+ * `defaultLexerErrorProvider.buildUnexpectedCharactersMessage`, and must stay
63
+ * so** — one layer further out than {@link UNRESOLVED_REFERENCE}, whose sentence
64
+ * is Langium's. Langium words neither: `processLexingErrors` copies
65
+ * `lexerDiagnostic.message` through untouched, so the text an adopter sees today
66
+ * is produced two dependencies down and is the only thing this identity may
67
+ * claim to be. {@link HydraniumDocumentValidator.identifyLexingError} attaches
68
+ * it only when the two match exactly, which is also what keeps a custom lexer's
69
+ * own diagnostics — Langium admits any of them through `lexerReport` — from
70
+ * being mislabelled as this one.
71
+ *
72
+ * It exists because a lexing error is the FIRST message a user of a new language
73
+ * sees and the one an adopter cannot reach: every other diagnostic worth
74
+ * translating either carries an identity already or is raised by adopter code,
75
+ * while this one arrives with a Langium `data.code` naming a KIND and no
76
+ * parameters at all — so a catalogue had nothing to key on and nothing to
77
+ * interpolate.
78
+ *
79
+ * `skipped` rather than `length`, matching what the sentence says the number
80
+ * means: chevrotain reports how many characters the lexer discarded to recover,
81
+ * which for a single stray character is one and for a run of them is the run.
82
+ */
83
+ export declare const UNEXPECTED_CHARACTER: MessageDefinition<"unexpected character: ->{character}<- at offset: {offset}, skipped {skipped} characters.">;
84
+ /**
85
+ * A token the grammar does not admit at this position.
86
+ *
87
+ * **The English is byte-identical to Langium's
88
+ * `LangiumParserErrorMessageProvider.buildMismatchTokenMessage`, and must stay
89
+ * so**, on the same rule as {@link UNRESOLVED_REFERENCE}.
90
+ *
91
+ * `expected` is a token type name, which is grammar vocabulary rather than
92
+ * translatable text — only the frame around it is. Promoting it into the code
93
+ * instead would make the catalogue as large as the grammar.
94
+ */
95
+ export declare const UNEXPECTED_TOKEN: MessageDefinition<"Expecting token of type '{expected}' but found `{found}`.">;
96
+ /**
97
+ * Input left over once the entry rule had matched.
98
+ *
99
+ * **The English is byte-identical to Langium's
100
+ * `LangiumParserErrorMessageProvider.buildNotAllInputParsedMessage`, and must
101
+ * stay so.**
102
+ */
103
+ export declare const TRAILING_INPUT: MessageDefinition<"Expecting end of file but found `{found}`.">;
104
+ /**
105
+ * A mode-popping token reached with nothing on the lexer's mode stack.
106
+ *
107
+ * **The English is byte-identical to CHEVROTAIN's
108
+ * `defaultLexerErrorProvider.buildUnableToPopLexerModeMessage`, and must stay
109
+ * so**, the closing clause running on without punctuation exactly as upstream
110
+ * writes it.
111
+ *
112
+ * Reachable only from a multi-mode lexer, which a grammar opts into through a
113
+ * custom token builder.
114
+ */
115
+ export declare const UNPOPPABLE_LEXER_MODE: MessageDefinition<"Unable to pop Lexer Mode after encountering Token ->{image}<- The Mode Stack is empty">;
116
+ /**
117
+ * A dedent that lines up with no enclosing indentation level.
118
+ *
119
+ * **The English is byte-identical to LANGIUM's `IndentationAwareTokenBuilder`,
120
+ * and must stay so** — the one lexing sentence Langium words itself rather than
121
+ * relaying from chevrotain, which is why it renders through no
122
+ * `ILexerErrorMessageProvider` and an adopter cannot reach it by replacing one.
123
+ *
124
+ * `stack` is the indentation stack as the template literal upstream stringifies
125
+ * it, comma-joined: structure would have to survive {@link MessageParams}, which
126
+ * holds scalars, and a translation has nothing to say about the numbers anyway.
127
+ */
128
+ export declare const INVALID_DEDENT: MessageDefinition<"Invalid dedent level {level} at offset: {offset}. Current indentation stack: {stack}">;
129
+ /**
130
+ * A position where none of a rule's alternatives can start.
131
+ *
132
+ * **The English is byte-identical to CHEVROTAIN's
133
+ * `defaultParserErrorProvider.buildNoViableAltMessage`, and must stay so** —
134
+ * one layer further out than {@link UNEXPECTED_TOKEN}, because Langium overrides
135
+ * only two of the four parser sentences and passes this one straight through.
136
+ *
137
+ * `sequences` is the token-sequence list chevrotain generated, carried whole
138
+ * rather than as structure: {@link MessageParams} holds scalars, and the list is
139
+ * token names in any case, so only the frame around it is translatable.
140
+ */
141
+ export declare const NO_VIABLE_ALTERNATIVE: MessageDefinition<"Expecting: one of these possible Token sequences:\n{sequences}\nbut found: '{found}'">;
142
+ /**
143
+ * A repetition that had to match at least once and matched nothing.
144
+ *
145
+ * **The English is byte-identical to CHEVROTAIN's
146
+ * `defaultParserErrorProvider.buildEarlyExitMessage`, and must stay so**,
147
+ * including the doubled colon after `sequences::`, which is upstream's and not a
148
+ * typo to repair here — a divergence would silently stop the identity attaching.
149
+ *
150
+ * Named for the empty repetition rather than for chevrotain's `EarlyExit`, which
151
+ * describes its own control flow rather than the reader's problem.
152
+ */
153
+ export declare const MISSING_ITERATION: MessageDefinition<"Expecting: expecting at least one iteration which starts with one of these possible Token sequences::\n <{sequences}>\nbut found: '{found}'">;
52
154
  export interface DocumentValidatorOptions extends LogNameOptions {
53
155
  /**
54
156
  * Level at which the `validateDocument` timing line is emitted, or `'off'`
@@ -86,7 +188,7 @@ export interface DocumentValidatorOptions extends LogNameOptions {
86
188
  * - **Skip-validation hook** via the virtual {@link shouldSkipValidation}
87
189
  * predicate, which adopters override to compose additional skip reasons.
88
190
  * - **Diagnostic mapping** to {@link TransferDiagnostic}-shaped
89
- * {@link TransferLspDiagnostic}: every emitted diagnostic carries the AST
191
+ * {@link AstDiagnostic}: every emitted diagnostic carries the AST
90
192
  * node's path (built via Langium's `AstNodeLocator`) plus the optional
91
193
  * offending property name.
92
194
  * - **Optional timing wrap** on `validateDocument`, on by default.
@@ -95,6 +197,12 @@ export declare class HydraniumDocumentValidator extends DefaultDocumentValidator
95
197
  protected readonly tracer: Tracer;
96
198
  protected readonly astNodeLocator: AstNodeLocator;
97
199
  protected readonly reflection: AstReflection;
200
+ protected readonly lexer: Lexer;
201
+ /**
202
+ * {@link tokenTypeNames}' answer. Nothing invalidates it: the vocabulary
203
+ * comes from the grammar, which is fixed once the DI tree is composed.
204
+ */
205
+ protected expectedNames?: readonly string[];
98
206
  protected readonly logLevel: ObservableValue<LogThreshold>;
99
207
  protected readonly logAfterMs: ObservableValue<number>;
100
208
  protected readonly validateVirtualDocuments: ObservableValue<boolean>;
@@ -105,6 +213,104 @@ export declare class HydraniumDocumentValidator extends DefaultDocumentValidator
105
213
  };
106
214
  }, options?: DocumentValidatorOptions);
107
215
  validateDocument(document: LangiumDocument, options?: ValidationOptions, cancelToken?: CancellationToken): Promise<Diagnostic[]>;
216
+ /**
217
+ * Langium's validation pass, plus the framework identity on the lexing and
218
+ * parsing diagnostics it produced.
219
+ *
220
+ * **Here rather than in an override of `processLexingErrors` /
221
+ * `processParsingErrors`, and the reason is that neither seam can see what
222
+ * the identity needs.** Langium hands them a `ParseResult`, which carries the
223
+ * AST and the error lists but not the source text — and the offending
224
+ * CHARACTER, or the offending TOKEN, is the parameter a translation exists to
225
+ * interpolate. The document does carry it, and this is the innermost point
226
+ * that still holds one.
227
+ *
228
+ * Correlating the finished diagnostics back to the `ParseResult`'s error
229
+ * lists positionally is the alternative, and it is unsound for the parsing
230
+ * half: `processParsingErrors` DROPS an error whose token offsets are `NaN`
231
+ * and whose exception carries no `previousToken`, so the two lists differ in
232
+ * length exactly when recovery has been at work.
233
+ *
234
+ * Inside the timing span rather than around it, so the line accounts for the
235
+ * whole pass.
236
+ */
237
+ protected validateAndIdentify(document: LangiumDocument, options?: ValidationOptions, cancelToken?: CancellationToken): Promise<Diagnostic[]>;
238
+ /**
239
+ * Add whichever lexing identity renders `diagnostic`'s sentence, or return it
240
+ * untouched when none of them does — a custom lexer's own report, which
241
+ * Langium admits through `lexerReport`, being the case that reaches the end.
242
+ *
243
+ * The parameters come from the diagnostic's own RANGE, not from
244
+ * `parseResult.lexerErrors`. Both hold the same numbers, and the range is the
245
+ * one that needs no assumption about upstream: correlating the two lists
246
+ * would depend on Langium appending one diagnostic per lexer error in order,
247
+ * which is true today and is an internal of the method being wrapped.
248
+ *
249
+ * **The format-and-compare is the whole discriminator, and it validates the
250
+ * reconstruction as well as the identity.** A range that did not round-trip
251
+ * to the offset chevrotain reported would produce a different sentence and be
252
+ * declined, so a wrong parameter set can never be attached to a right-looking
253
+ * message.
254
+ */
255
+ protected identifyLexingError(document: LangiumDocument, diagnostic: Diagnostic): Diagnostic;
256
+ /**
257
+ * Add whichever parser identity renders `diagnostic`'s sentence, or return it
258
+ * untouched when none of them does — an adopter that replaced the parser
259
+ * error-message provider being the case that reaches the last branch.
260
+ *
261
+ * `found` comes from the diagnostic's own RANGE, for the same reason
262
+ * {@link identifyLexingError} reads its parameters there. A token whose
263
+ * offsets chevrotain could not report collapses to a zero-width range, which
264
+ * yields the empty string the sentence already renders for it.
265
+ *
266
+ * **`expected` is recovered by SEARCHING the vocabulary, because nothing
267
+ * carries it.** Chevrotain hands the expected token type to the message
268
+ * provider and keeps it on neither the exception nor the diagnostic, so the
269
+ * only structured source left is the grammar's own vocabulary: every token
270
+ * type is offered to the same `format` the identity renders with, and the one
271
+ * that reproduces the message supplies the parameter. Matching it out of the
272
+ * prose instead would derive a parameter from a sentence that a Langium
273
+ * reword can change without warning. Two distinct names cannot render one
274
+ * sentence, so the match is unique where it exists.
275
+ */
276
+ protected identifyParsingError(document: LangiumDocument, diagnostic: Diagnostic): Diagnostic;
277
+ /** `diagnostic` carrying `definition`'s identity, over whatever `data` it already had. */
278
+ protected identified<S extends string>(diagnostic: Diagnostic, definition: MessageDefinition<S>, ...params: ParamsArg<S>): Diagnostic;
279
+ /**
280
+ * `definition`'s parameters as they appear in `message`, taking the ones in
281
+ * `known` as given, or `undefined` when `message` is not that sentence.
282
+ *
283
+ * **The only parameters in this file taken OUT of the prose rather than
284
+ * derived and checked against it, and the bound on that is what `known`
285
+ * is for.** A generated token-sequence list, a lexer's indentation stack: for
286
+ * these there is no finite candidate set to offer to `format` the way a token
287
+ * type name can be, and no structured field carries them. What keeps the read
288
+ * honest is that everything else in the sentence is either a fixed literal or
289
+ * a parameter the caller derived independently, so the frame either matches
290
+ * exactly or the sentence is declined.
291
+ *
292
+ * **The trailing format-and-compare is load-bearing once more than one
293
+ * parameter is unknown.** Each is captured up to the NEXT fixed separator, so
294
+ * a separator that also occurs inside a value would cut early — re-rendering
295
+ * catches that, where for a single unknown between two affixes it could not
296
+ * fail. Two adjacent placeholders are declined outright: nothing marks the
297
+ * boundary, so no capture is recoverable.
298
+ *
299
+ * The frame is split off the declaration's own `text`, so it cannot drift
300
+ * from the sentence `format` renders.
301
+ */
302
+ protected sliceFramed<S extends string>(message: string, definition: MessageDefinition<S>, known: MessageParams): ParamsOf<S> | undefined;
303
+ /**
304
+ * Every token type name the grammar declares, as
305
+ * {@link identifyParsingError} candidates.
306
+ *
307
+ * Read off the lexer, whose `definition` the `Lexer` INTERFACE declares —
308
+ * the parser holds the same vocabulary only behind Langium's default class,
309
+ * where an adopter's replacement need not keep it. A token type the parser
310
+ * expects but the lexer does not declare yields no match, which declines the
311
+ * identity rather than attaching a wrong one.
312
+ */
313
+ protected tokenTypeNames(): readonly string[];
108
314
  /**
109
315
  * Skip validation for a node **and its children** when
110
316
  * {@link shouldSkipValidation} returns true.
@@ -167,7 +373,7 @@ export declare class HydraniumDocumentValidator extends DefaultDocumentValidator
167
373
  * {@link UNRESOLVED_REFERENCE} claims.
168
374
  */
169
375
  protected referenceTypeOf(containerType: string, property: string, refText: string): string | undefined;
170
- protected toDiagnostic<N extends AstNode>(severity: ValidationSeverity, message: string, info: DiagnosticInfo<N, string>): TransferLspDiagnostic;
376
+ protected toDiagnostic<N extends AstNode>(severity: ValidationSeverity, message: string, info: DiagnosticInfo<N, string>): AstDiagnostic;
171
377
  /**
172
378
  * Construct the `element` path for a diagnostic. Falls back through:
173
379
  * - the node's own AST path, then
@@ -1 +1 @@
1
- {"version":3,"file":"document-validator.d.ts","sourceRoot":"","sources":["../../../src/langium/validation/document-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-validator.d.ts","sourceRoot":"","sources":["../../../src/langium/validation/document-validator.ts"],"names":[],"mappings":"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"}