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

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 (92) hide show
  1. package/lib/documents/hydranium-text-documents.d.ts.map +1 -1
  2. package/lib/documents/hydranium-text-documents.js +12 -1
  3. package/lib/documents/hydranium-text-documents.js.map +1 -1
  4. package/lib/index.d.ts +1 -0
  5. package/lib/index.d.ts.map +1 -1
  6. package/lib/index.js +1 -0
  7. package/lib/index.js.map +1 -1
  8. package/lib/langium/bootstrap.d.ts.map +1 -1
  9. package/lib/langium/bootstrap.js +8 -1
  10. package/lib/langium/bootstrap.js.map +1 -1
  11. package/lib/langium/document-builder/document-builder.d.ts +33 -1
  12. package/lib/langium/document-builder/document-builder.d.ts.map +1 -1
  13. package/lib/langium/document-builder/document-builder.js +68 -2
  14. package/lib/langium/document-builder/document-builder.js.map +1 -1
  15. package/lib/langium/model-service/model-service.d.ts +26 -0
  16. package/lib/langium/model-service/model-service.d.ts.map +1 -1
  17. package/lib/langium/model-service/model-service.js +31 -3
  18. package/lib/langium/model-service/model-service.js.map +1 -1
  19. package/lib/langium/module.d.ts +20 -0
  20. package/lib/langium/module.d.ts.map +1 -1
  21. package/lib/langium/module.js +4 -0
  22. package/lib/langium/module.js.map +1 -1
  23. package/lib/langium/naming/name-provider.d.ts +10 -0
  24. package/lib/langium/naming/name-provider.d.ts.map +1 -1
  25. package/lib/langium/naming/name-provider.js.map +1 -1
  26. package/lib/langium/naming/name-separator-validation.d.ts +23 -1
  27. package/lib/langium/naming/name-separator-validation.d.ts.map +1 -1
  28. package/lib/langium/naming/name-separator-validation.js +22 -0
  29. package/lib/langium/naming/name-separator-validation.js.map +1 -1
  30. package/lib/langium/shared-services.d.ts +13 -2
  31. package/lib/langium/shared-services.d.ts.map +1 -1
  32. package/lib/langium/shared-services.js.map +1 -1
  33. package/lib/langium/validation/document-validator.d.ts +66 -1
  34. package/lib/langium/validation/document-validator.d.ts.map +1 -1
  35. package/lib/langium/validation/document-validator.js +101 -1
  36. package/lib/langium/validation/document-validator.js.map +1 -1
  37. package/lib/langium/workspace/hydranium-workspace-manager.d.ts +11 -1
  38. package/lib/langium/workspace/hydranium-workspace-manager.d.ts.map +1 -1
  39. package/lib/langium/workspace/hydranium-workspace-manager.js +15 -0
  40. package/lib/langium/workspace/hydranium-workspace-manager.js.map +1 -1
  41. package/lib/langium/workspace/initialize-workspace.d.ts +22 -2
  42. package/lib/langium/workspace/initialize-workspace.d.ts.map +1 -1
  43. package/lib/langium/workspace/initialize-workspace.js +13 -5
  44. package/lib/langium/workspace/initialize-workspace.js.map +1 -1
  45. package/lib/locale/index.d.ts +10 -0
  46. package/lib/locale/index.d.ts.map +1 -0
  47. package/lib/locale/index.js +10 -0
  48. package/lib/locale/index.js.map +1 -0
  49. package/lib/locale/server-locale.d.ts +49 -0
  50. package/lib/locale/server-locale.d.ts.map +1 -0
  51. package/lib/locale/server-locale.js +51 -0
  52. package/lib/locale/server-locale.js.map +1 -0
  53. package/lib/messages/carriers.d.ts +7 -6
  54. package/lib/messages/carriers.d.ts.map +1 -1
  55. package/lib/messages/carriers.js +8 -7
  56. package/lib/messages/carriers.js.map +1 -1
  57. package/lib/messages/index.d.ts +3 -0
  58. package/lib/messages/index.d.ts.map +1 -1
  59. package/lib/messages/index.js +3 -0
  60. package/lib/messages/index.js.map +1 -1
  61. package/lib/messages/renderer.d.ts +117 -0
  62. package/lib/messages/renderer.d.ts.map +1 -0
  63. package/lib/messages/renderer.js +159 -0
  64. package/lib/messages/renderer.js.map +1 -0
  65. package/lib/testing/make-noop-shared-services.d.ts +14 -0
  66. package/lib/testing/make-noop-shared-services.d.ts.map +1 -1
  67. package/lib/testing/make-noop-shared-services.js +28 -2
  68. package/lib/testing/make-noop-shared-services.js.map +1 -1
  69. package/lib/testing/make-test-services.d.ts +27 -0
  70. package/lib/testing/make-test-services.d.ts.map +1 -1
  71. package/lib/testing/make-test-services.js +17 -1
  72. package/lib/testing/make-test-services.js.map +1 -1
  73. package/package.json +5 -5
  74. package/src/documents/hydranium-text-documents.ts +12 -1
  75. package/src/index.ts +1 -0
  76. package/src/langium/bootstrap.ts +8 -1
  77. package/src/langium/document-builder/document-builder.ts +70 -2
  78. package/src/langium/model-service/model-service.ts +33 -2
  79. package/src/langium/module.ts +22 -0
  80. package/src/langium/naming/name-provider.ts +10 -0
  81. package/src/langium/naming/name-separator-validation.ts +25 -3
  82. package/src/langium/shared-services.ts +13 -2
  83. package/src/langium/validation/document-validator.ts +117 -1
  84. package/src/langium/workspace/hydranium-workspace-manager.ts +18 -1
  85. package/src/langium/workspace/initialize-workspace.ts +34 -5
  86. package/src/locale/index.ts +10 -0
  87. package/src/locale/server-locale.ts +61 -0
  88. package/src/messages/carriers.ts +8 -8
  89. package/src/messages/index.ts +3 -0
  90. package/src/messages/renderer.ts +184 -0
  91. package/src/testing/make-noop-shared-services.ts +50 -2
  92. package/src/testing/make-test-services.ts +43 -1
@@ -13,6 +13,22 @@ import { type CancellationToken, type Disposable } from 'vscode-languageserver';
13
13
  import { AstDocument, type AstDocumentSavedEvent, type AstDocumentUpdatedEvent } from '../../documents/ast-document-manager.js';
14
14
  import { type LogNameOptions } from '../diagnostics/logger.js';
15
15
  import { type ServerSharedServices } from '../module.js';
16
+ /**
17
+ * The undo-stack entry for a server-authored write pushed to the editor.
18
+ *
19
+ * **A user-facing LABEL, not a log string**, which is easy to miss because it
20
+ * travels as an options field rather than as a message: LSP specifies
21
+ * `ApplyWorkspaceEditParams.label` as "presented in the user interface for
22
+ * example on an undo stack to undo the workspace edit". So a user who edits
23
+ * through a form or drags a diagram node reads this in their editor's undo menu
24
+ * — which is why it is rendered like any other message the server sends rather
25
+ * than left as the English literal it was.
26
+ *
27
+ * Parameterless deliberately. The obvious improvement is to name the document,
28
+ * and it is the wrong one: an undo menu is already grouped under the file, so
29
+ * the URI would be noise in the one place it is redundant.
30
+ */
31
+ export declare const MODEL_UPDATE_EDIT: import("@hydranium/protocol").MessageDefinition<"Update Model">;
16
32
  /**
17
33
  * Constructor options for {@link ModelService}. All fields are optional,
18
34
  * and the defaults are the behaviour described on each one.
@@ -518,6 +534,16 @@ TTransfer extends TransferElement = TransferElement> {
518
534
  * per URI so the shadow never drifts from Monaco.
519
535
  */
520
536
  protected queueSync(uri: string, text: string): void;
537
+ /**
538
+ * The undo-stack label for a server-authored write, in the locale the server
539
+ * was handed at init.
540
+ *
541
+ * One method rather than the literal at each `applyEdit`, because the two
542
+ * call sites are the same edit — a push and its full-replace retry — and an
543
+ * undo menu showing two different words for one operation would read as two
544
+ * operations.
545
+ */
546
+ protected editLabel(): string;
521
547
  protected drainSyncQueue(uri: string): Promise<void>;
522
548
  /**
523
549
  * Subscribe to AST-snapshot updates for `uri`. Fires after each
@@ -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":"AAAA;;;;;;;kFAOkF;AAElF,OAAO,EACJ,KAAK,YAAY,EACjB,KAAK,cAAc,EAInB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,eAAe,EACf,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,OAAO,EAAE,aAAa,EAAE,KAAK,eAAe,EAAY,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAC3G,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,KAAK,qBAAqB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAEhI,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI/D,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,iEAAoE,CAAC;AAcnG;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACxD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;CAC3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBAAa,YAAY,CACtB,IAAI,SAAS,OAAO,EACpB,WAAW,GAAG,kBAAkB;AAChC;;;;;;;;GAQG;AACH,SAAS,SAAS,eAAe,GAAG,eAAe;IAiEhD,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,oBAAoB;IA/DpD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAClC;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IAChD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC5D,2EAA2E;IAC3E,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAE7D;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,6BAAoC;IACjE,SAAS,CAAC,QAAQ,CAAC,WAAW,sBAA6B;IAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAGR,QAAQ,EAAE,oBAAoB,EACjD,OAAO,GAAE,mBAAwB;IAgDpC;;;;;;;;;OASG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAIvI;;;;;;OAMG;IACG,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAInH;;;;;;;;;OASG;cACa,6BAA6B,CAC1C,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE,aAAa,EACpB,WAAW,CAAC,EAAE,iBAAiB,GAC/B,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAY1C;;;;;;;;OAQG;IACG,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAI3H;;;;;;;;OAQG;cACa,gBAAgB,CAC7B,GAAG,EAAE,YAAY,EACjB,KAAK,CAAC,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC/B,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IA8C1C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAIvF,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAIvF,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAIxF,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAIxF,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAItG;;;;;;;;;;;;;;;OAeG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAIvI;;;;;;;;;OASG;cACa,4BAA4B,CACzC,GAAG,EAAE,YAAY,EACjB,KAAK,CAAC,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC/B,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAQ1C;;;;;;;;;;;;;;;;;;OAkBG;IACG,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IA6D3H;;;;;;;;OAQG;IACG,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAYvH;;;;;;;;;;;;OAYG;cACa,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBvF;;;;;;;;;;;;;;;;;;OAkBG;IACG,IAAI,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IAIpD;;;;OAIG;IACG,KAAK,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5B;;;;;;;;OAQG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAQrD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAmB/D;;;;;;;;;;OAUG;IACH,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI3D;;;;;;OAMG;IACH,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAM9D;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO;IAOrE;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAwBpD;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,IAAI,MAAM;cAIb,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmD1D;;;;;;;;;OASG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,uBAAuB,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,IAAI,GAAG,UAAU;IAI9G;;;;;;;OAOG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,qBAAqB,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,IAAI,GAAG,UAAU;IAI1G;;;;OAIG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,UAAU;IAQ/E;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC;IASvE;;;;;;;;;;OAUG;cACa,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQrH;;;;;;OAMG;cACa,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC;IAYhH;;;;;;OAMG;IACH,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC;CAMnE"}
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
- import { ConflictError, Logger, ObservableValue } from '@hydranium/protocol';
9
+ import { ConflictError, defineMessage, Logger, ObservableValue } from '@hydranium/protocol';
10
10
  import { DocumentState, UriUtils } from '@hydranium/langium';
11
11
  import { ReentrantWriteLockError, isInsideWriteLock } from '../workspace/write-lock-scope.js';
12
12
  import { AstDocument } from '../../documents/ast-document-manager.js';
@@ -14,6 +14,22 @@ import { isConnectionGoneError } from '../../util/connection-liveness.js';
14
14
  import { IntegrityService } from '../integrity/integrity-service.js';
15
15
  import { labelPhaseListener } from '../document-builder/labeled-phase-listener.js';
16
16
  import { LANGUAGE_CLIENT_ID } from '../../documents/client-ids.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 const MODEL_UPDATE_EDIT = defineMessage('hydranium/core/model-update-edit', 'Update Model');
17
33
  /** Max time {@link ModelService.settleSave} waits for the build to settle and the sync chain to drain. */
18
34
  const SAVE_SETTLE_TIMEOUT_MS = 10_000;
19
35
  /**
@@ -723,13 +739,25 @@ export class ModelService {
723
739
  });
724
740
  this.syncChains.set(uri, chain);
725
741
  }
742
+ /**
743
+ * The undo-stack label for a server-authored write, in the locale the server
744
+ * was handed at init.
745
+ *
746
+ * One method rather than the literal at each `applyEdit`, because the two
747
+ * call sites are the same edit — a push and its full-replace retry — and an
748
+ * undo menu showing two different words for one operation would read as two
749
+ * operations.
750
+ */
751
+ editLabel() {
752
+ return this.services.MessageRenderer.renderMessage(MODEL_UPDATE_EDIT);
753
+ }
726
754
  async drainSyncQueue(uri) {
727
755
  const uriLogger = this.tracer.withUri(uri);
728
756
  while (this.pendingSync.has(uri)) {
729
757
  const text = this.pendingSync.get(uri);
730
758
  this.pendingSync.delete(uri);
731
759
  try {
732
- let result = await this.services.workspace.TextDocuments.applyEditToLanguageClient(uri, text, { label: 'Update Model' });
760
+ let result = await this.services.workspace.TextDocuments.applyEditToLanguageClient(uri, text, { label: this.editLabel() });
733
761
  if (result?.applied === false && !this.pendingSync.has(uri)) {
734
762
  // The push is addressed at the client's LAST DECLARED VERSION, so a
735
763
  // rejection normally means the client's buffer moved while the
@@ -750,7 +778,7 @@ export class ModelService {
750
778
  // queued — best-effort, since a settle arriving later simply pushes
751
779
  // after this and still wins.
752
780
  uriLogger.warn(`Language client rejected applyEdit at its declared version — re-pushing a full replace`);
753
- result = await this.services.workspace.TextDocuments.applyEditToLanguageClient(uri, text, { label: 'Update Model' });
781
+ result = await this.services.workspace.TextDocuments.applyEditToLanguageClient(uri, text, { label: this.editLabel() });
754
782
  if (result?.applied === false) {
755
783
  uriLogger.warn(`Language client rejected the full-replace retry too — client content is stale`);
756
784
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-service.js","sourceRoot":"","sources":["../../../src/langium/model-service/model-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-service.js","sourceRoot":"","sources":["../../../src/langium/model-service/model-service.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
9
  import { type Clock, type Logger, type Project, type Tracer, type TransferDiagnostic } from '@hydranium/protocol';
10
+ import { ServerLocale } from '../locale/server-locale.js';
11
+ import { ServerMessageRenderer } from '../messages/renderer.js';
10
12
  import { type AstNode, type Module } from '@hydranium/langium';
11
13
  import { type DefaultSharedModuleContext, type LangiumSharedServices, type PartialLangiumSharedServices } from '@hydranium/langium/lsp';
12
14
  import { type TextDocument } from 'vscode-languageserver-textdocument';
@@ -85,6 +87,24 @@ export interface ServerAddedSharedServices<TProject extends Project = Project> {
85
87
  * plain `DefaultTracer` with their own `MemoryReader`.
86
88
  */
87
89
  Tracer: Tracer;
90
+ /**
91
+ * Renders each user-facing message once, before the server sends it — so
92
+ * every message is rendered by the side that knows the reading user's
93
+ * language. All three heads inherit one diagnostics pass, which is what
94
+ * makes this the single slot an adopter with i18n rebinds; the same binding
95
+ * serves framework codes and their own `defineMessage` codes alike.
96
+ *
97
+ * The framework ships English only and selects no locale, so the default
98
+ * returns every sentence unchanged. Adopters subclass and override
99
+ * `translationsFor`.
100
+ */
101
+ MessageRenderer: ServerMessageRenderer;
102
+ /**
103
+ * The locale an init handed the server, for whoever renders in it. Held
104
+ * apart from the renderer so replacing the renderer cannot drop locale
105
+ * handling.
106
+ */
107
+ ServerLocale: ServerLocale;
88
108
  /**
89
109
  * LSP-bound slots layered on top of Langium's `LangiumSharedLSPServices`.
90
110
  * The framework contributes a single string slot here —
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/langium/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/langium/module.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
9
  import { NoopLogger, SystemClock } from '@hydranium/protocol';
10
+ import { ServerLocale } from '../locale/server-locale.js';
11
+ import { ServerMessageRenderer } from '../messages/renderer.js';
10
12
  import { ServerTracer } from './diagnostics/server-tracer.js';
11
13
  import { HydraniumLangiumProfiler } from './diagnostics/hydranium-langium-profiler.js';
12
14
  import { ModelService } from './model-service/model-service.js';
@@ -52,6 +54,8 @@ export function createServerSharedModule(context) {
52
54
  ServiceRegistry: services => new ExtendedServiceRegistry(services),
53
55
  Logger: () => new NoopLogger(),
54
56
  Tracer: services => new ServerTracer(services.Logger, services.Clock),
57
+ ServerLocale: services => new ServerLocale(services),
58
+ MessageRenderer: services => new ServerMessageRenderer(services),
55
59
  // Bind Langium's per-grammar-rule / per-`$type` parse/link/validate
56
60
  // profiler (the data the framework's own `Tracer`/`ProfileSession` passes
57
61
  // cannot produce), routed through our `Logger` and debug-gated. At the
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/langium/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/langium/module.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,16 @@ export interface NameProviderOptions {
47
47
  * an `id` field) override explicitly; the explicit override at
48
48
  * the adopter side documents the grammar's convention rather than
49
49
  * burying it in a framework default.
50
+ *
51
+ * **The override is not optional where `name` is a display LABEL rather
52
+ * than an identifier**, and getting it wrong is quiet at first and then
53
+ * loud. A `name=STRING` holding `"Order.Line"` is legitimate content, but
54
+ * the default reads it as the identifier: `getName` composes a qualified
55
+ * name whose segments cannot be told apart from the label's own dots, and
56
+ * `nameSeparatorCheck` reports `hydranium/core/separator-in-name` on every
57
+ * such node. That diagnostic then names the wrong remedy — it asks for a
58
+ * different character, when the fix is to point this option at the property
59
+ * that really is the identifier.
50
60
  */
51
61
  readonly nameProperties?: readonly string[];
52
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"name-provider.d.ts","sourceRoot":"","sources":["../../../src/langium/naming/name-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"name-provider.d.ts","sourceRoot":"","sources":["../../../src/langium/naming/name-provider.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"name-provider.js","sourceRoot":"","sources":["../../../src/langium/naming/name-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"name-provider.js","sourceRoot":"","sources":["../../../src/langium/naming/name-provider.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,32 @@
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
9
  import { type AstNode, type ValidationAcceptor } from '@hydranium/langium';
10
- export declare const SEPARATOR_IN_NAME: import("@hydranium/protocol").MessageDefinition<"Name '{name}' contains the configured name separator '{separator}', which is reserved for qualified-name composition — use a different character.">;
11
10
  import { type ServerLanguageServices } from '../language-module.js';
12
11
  import { type ValidationCheckContribution, type ValidationCheckRegistry } from '../validation/validation-contribution.js';
13
12
  import type { NameProvider } from './name-provider.js';
13
+ /**
14
+ * A name value that collides with the qualified-name separator.
15
+ *
16
+ * **The sentence addresses a MODELLER, and the remedy it names is theirs**:
17
+ * where `name` really is the identifier, a different character is the fix and
18
+ * the only one available to whoever is typing.
19
+ *
20
+ * **The adopter-facing failure is a different one, and this message cannot
21
+ * carry it.** With `nameProperties` left at its default `['name']` over a
22
+ * grammar where `name` is a display LABEL — a `STRING` legitimately holding
23
+ * `"Order.Line"` — this fires on every dotted label at once, and "use a
24
+ * different character" is then advice nobody can act on: the content is
25
+ * correct and the configuration is not. A burst of this diagnostic across
26
+ * unrelated nodes is that misconfiguration, not a naming problem, and the fix
27
+ * is `nameProperties`. Widening the sentence to say both was rejected: a
28
+ * modeller cannot act on a DI option, and naming one in an editor squiggle
29
+ * teaches the wrong audience.
30
+ *
31
+ * Unreachable from a grammar whose identifier charset excludes the separator,
32
+ * which is every example here and the reference adopter — so it reads as dead
33
+ * and is not: it guards the configuration, not the content.
34
+ */
35
+ export declare const SEPARATOR_IN_NAME: import("@hydranium/protocol").MessageDefinition<"Name '{name}' contains the configured name separator '{separator}', which is reserved for qualified-name composition — use a different character.">;
14
36
  /**
15
37
  * Per-node validation check: flag name-bearing AST nodes whose name
16
38
  * value contains the configured name separator. Such values produce
@@ -1 +1 @@
1
- {"version":3,"file":"name-separator-validation.d.ts","sourceRoot":"","sources":["../../../src/langium/naming/name-separator-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAAyB,MAAM,oBAAoB,CAAC;AAIlG,eAAO,MAAM,iBAAiB,sMAG7B,CAAC;AACF,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,KAAK,2BAA2B,EAAE,KAAK,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAC1H,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,YAAY,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAelH;AAED;;;;;;;;;GASG;AACH,qBAAa,8BAA+B,YAAW,2BAA2B;IAC/E,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;gBAElC,QAAQ,EAAE,sBAAsB;IAI5C,wBAAwB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;CAMnE"}
1
+ {"version":3,"file":"name-separator-validation.d.ts","sourceRoot":"","sources":["../../../src/langium/naming/name-separator-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAAyB,MAAM,oBAAoB,CAAC;AAGlG,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,KAAK,2BAA2B,EAAE,KAAK,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAC1H,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,iBAAiB,sMAG7B,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,YAAY,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAelH;AAED;;;;;;;;;GASG;AACH,qBAAa,8BAA+B,YAAW,2BAA2B;IAC/E,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;gBAElC,QAAQ,EAAE,sBAAsB;IAI5C,wBAAwB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;CAMnE"}
@@ -8,6 +8,28 @@
8
8
  ********************************************************************************/
9
9
  import { defineMessage } from '@hydranium/protocol';
10
10
  import { acceptMessage } from '../../messages/carriers.js';
11
+ /**
12
+ * A name value that collides with the qualified-name separator.
13
+ *
14
+ * **The sentence addresses a MODELLER, and the remedy it names is theirs**:
15
+ * where `name` really is the identifier, a different character is the fix and
16
+ * the only one available to whoever is typing.
17
+ *
18
+ * **The adopter-facing failure is a different one, and this message cannot
19
+ * carry it.** With `nameProperties` left at its default `['name']` over a
20
+ * grammar where `name` is a display LABEL — a `STRING` legitimately holding
21
+ * `"Order.Line"` — this fires on every dotted label at once, and "use a
22
+ * different character" is then advice nobody can act on: the content is
23
+ * correct and the configuration is not. A burst of this diagnostic across
24
+ * unrelated nodes is that misconfiguration, not a naming problem, and the fix
25
+ * is `nameProperties`. Widening the sentence to say both was rejected: a
26
+ * modeller cannot act on a DI option, and naming one in an editor squiggle
27
+ * teaches the wrong audience.
28
+ *
29
+ * Unreachable from a grammar whose identifier charset excludes the separator,
30
+ * which is every example here and the reference adopter — so it reads as dead
31
+ * and is not: it guards the configuration, not the content.
32
+ */
11
33
  export const SEPARATOR_IN_NAME = defineMessage('hydranium/core/separator-in-name', "Name '{name}' contains the configured name separator '{separator}', which is reserved for qualified-name composition — use a different character.");
12
34
  /**
13
35
  * Per-node validation check: flag name-bearing AST nodes whose name
@@ -1 +1 @@
1
- {"version":3,"file":"name-separator-validation.js","sourceRoot":"","sources":["../../../src/langium/naming/name-separator-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAGlF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAC3C,kCAAkC,EAClC,mJAAmJ,CACrJ,CAAC;AAKF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,kBAAkB,CAAC,YAA0B;IAC1D,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO;QACV,CAAC;QACD,MAAM,SAAS,GAAG,YAAY,CAAC,aAAa,CAAC;QAC7C,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,kEAAkE;YAClE,mEAAmE;YACnE,wEAAwE;YACxE,+DAA+D;YAC/D,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7F,CAAC;IACJ,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,8BAA8B;IACrB,YAAY,CAAe;IAE9C,YAAY,QAAgC;QACzC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;IACxD,CAAC;IAED,wBAAwB,CAAC,QAAiC;QACvD,MAAM,MAAM,GAA2C;YACpD,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC;SAChD,CAAC;QACF,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;CACH"}
1
+ {"version":3,"file":"name-separator-validation.js","sourceRoot":"","sources":["../../../src/langium/naming/name-separator-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAGlF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAK3D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAC3C,kCAAkC,EAClC,mJAAmJ,CACrJ,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,kBAAkB,CAAC,YAA0B;IAC1D,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO;QACV,CAAC;QACD,MAAM,SAAS,GAAG,YAAY,CAAC,aAAa,CAAC;QAC7C,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,kEAAkE;YAClE,mEAAmE;YACnE,wEAAwE;YACxE,+DAA+D;YAC/D,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7F,CAAC;IACJ,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,8BAA8B;IACrB,YAAY,CAAe;IAE9C,YAAY,QAAgC;QACzC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;IACxD,CAAC;IAED,wBAAwB,CAAC,QAAiC;QACvD,MAAM,MAAM,GAA2C;YACpD,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC;SAChD,CAAC;QACF,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;CACH"}
@@ -8,6 +8,8 @@
8
8
  ********************************************************************************/
9
9
  import type { Clock, Logger, Project, Tracer } from '@hydranium/protocol';
10
10
  import type { LangiumSharedCoreServices } from '@hydranium/langium';
11
+ import type { ServerLocale } from '../locale/server-locale.js';
12
+ import type { ServerMessageRenderer } from '../messages/renderer.js';
11
13
  import type { SelfSaveRegistry } from '../documents/self-save-registry.js';
12
14
  import type { WritableFileSystemProvider } from '../documents/ast-document-manager.js';
13
15
  import type { HydraniumDocumentRegistry } from './workspace/langium-documents.js';
@@ -26,8 +28,9 @@ import type { AdditionalDocumentContribution } from './workspace/additional-docu
26
28
  * framework additions that other framework services consume: the dedicated
27
29
  * {@link Clock}, {@link Logger} and {@link Tracer} top-level slots (injectable
28
30
  * time source, emission-only logger, and the measure-and-emit tracer composed
29
- * from the other two), the {@link AdditionalDocumentContribution} group, an
30
- * {@link ExtendedServiceRegistry}, and on `workspace` a writable file-system
31
+ * from the other two), the {@link AdditionalDocumentContribution} group, the
32
+ * {@link ServerMessageRenderer} and the {@link ServerLocale} it renders in,
33
+ * an {@link ExtendedServiceRegistry}, and on `workspace` a writable file-system
31
34
  * provider plus {@link HydraniumWorkspaceManager}, {@link ProjectManager},
32
35
  * {@link SelfSaveRegistry}, {@link BuildPipelineIntegration},
33
36
  * {@link BuildPhasePassService}, {@link CstResidencyService} and
@@ -56,6 +59,14 @@ export interface ServerSharedServicesMinimal<TProject extends Project = Project>
56
59
  * adopters deep-merge contributions that seed built-in / stdlib documents.
57
60
  */
58
61
  additionalDocuments: Record<string, AdditionalDocumentContribution>;
62
+ /**
63
+ * Renders each user-facing message once, before the server sends it. On the
64
+ * shared tier with no workspace dependency, because all three heads'
65
+ * messages pass through it.
66
+ */
67
+ MessageRenderer: ServerMessageRenderer;
68
+ /** The locale an init handed the server, for whoever renders in it. */
69
+ ServerLocale: ServerLocale;
59
70
  /**
60
71
  * Narrows Langium's base `ServiceRegistry` slot to the framework impl the
61
72
  * framework always binds, so the abstaining lookups — `getServicesFor`
@@ -1 +1 @@
1
- {"version":3,"file":"shared-services.d.ts","sourceRoot":"","sources":["../../src/langium/shared-services.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iDAAiD,CAAC;AAEtG;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,2BAA2B,CAAC,QAAQ,SAAS,OAAO,GAAG,OAAO,CAAE,SAAQ,yBAAyB;IAC/G,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;IACpE;;;;;;;;OAQG;IACH,eAAe,EAAE,uBAAuB,CAAC;IACzC,SAAS,EAAE,yBAAyB,CAAC,WAAW,CAAC,GAAG;QAGjD,kBAAkB,EAAE,0BAA0B,CAAC;QAI/C,gBAAgB,EAAE,yBAAyB,CAAC;QAK7B,gBAAgB,EAAE,yBAAyB,CAAC;QAC3D,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzC,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,mBAAmB,EAAE,mBAAmB,CAAC;QACzC,iBAAiB,EAAE,iBAAiB,CAAC;KACvC,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,2BAA2B,KAAK,OAAO,GAAG,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAEvI"}
1
+ {"version":3,"file":"shared-services.d.ts","sourceRoot":"","sources":["../../src/langium/shared-services.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,iDAAiD,CAAC;AAEtG;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,2BAA2B,CAAC,QAAQ,SAAS,OAAO,GAAG,OAAO,CAAE,SAAQ,yBAAyB;IAC/G,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;IACpE;;;;OAIG;IACH,eAAe,EAAE,qBAAqB,CAAC;IACvC,uEAAuE;IACvE,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;;;;;OAQG;IACH,eAAe,EAAE,uBAAuB,CAAC;IACzC,SAAS,EAAE,yBAAyB,CAAC,WAAW,CAAC,GAAG;QAGjD,kBAAkB,EAAE,0BAA0B,CAAC;QAI/C,gBAAgB,EAAE,yBAAyB,CAAC;QAK7B,gBAAgB,EAAE,yBAAyB,CAAC;QAC3D,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzC,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,mBAAmB,EAAE,mBAAmB,CAAC;QACzC,iBAAiB,EAAE,iBAAiB,CAAC;KACvC,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,2BAA2B,KAAK,OAAO,GAAG,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAEvI"}
@@ -1 +1 @@
1
- {"version":3,"file":"shared-services.js","sourceRoot":"","sources":["../../src/langium/shared-services.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAqFlF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,mBAAmB,CAAU,MAA0D;IACpG,OAAO,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,QAAuC,CAAC,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"shared-services.js","sourceRoot":"","sources":["../../src/langium/shared-services.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAgGlF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,mBAAmB,CAAU,MAA0D;IACpG,OAAO,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,QAAuC,CAAC,CAAC;AACtE,CAAC"}
@@ -7,7 +7,7 @@
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
9
  import { type LogThreshold, type MaybeObservableValue, ObservableValue, type Tracer } from '@hydranium/protocol';
10
- import { type AstNode, type AstNodeLocator, DefaultDocumentValidator, type DiagnosticInfo, type LangiumDocument, type LangiumCoreServices, type ValidateSingleNodeOptions, type ValidationOptions, type ValidationSeverity } from '@hydranium/langium';
10
+ import { type AstNode, type AstNodeLocator, type AstReflection, DefaultDocumentValidator, type DiagnosticInfo, type LangiumDocument, type LangiumCoreServices, type ValidateSingleNodeOptions, type ValidationOptions, type ValidationSeverity } from '@hydranium/langium';
11
11
  import type { CancellationToken } from 'vscode-languageserver-protocol';
12
12
  import type { Diagnostic } from 'vscode-languageserver-types';
13
13
  import { type LogNameOptions } from '../diagnostics/logger.js';
@@ -33,6 +33,22 @@ export interface TransferLspDiagnostic extends Diagnostic {
33
33
  element?: string;
34
34
  property?: string;
35
35
  }
36
+ /**
37
+ * A reference resolved to nothing.
38
+ *
39
+ * **The English is byte-identical to Langium's `DefaultLinker.createLinkingError`
40
+ * sentence, and must stay so.** The identity is attached to a diagnostic Langium
41
+ * already worded, so a divergence here would silently change the text every
42
+ * adopter without a catalogue sees. {@link HydraniumDocumentValidator.processLinkingErrors}
43
+ * attaches it only when the two match exactly, which is also what keeps an
44
+ * adopter's own reworded linking error from being mislabelled as this one.
45
+ *
46
+ * It exists because this is the most-seen validation error in any language built
47
+ * on the framework, and Langium puts its own code in `data.code` rather than on
48
+ * `Diagnostic.code` — so without a framework identity every adopter wanting to
49
+ * render it has to special-case Langium's shape.
50
+ */
51
+ export declare const UNRESOLVED_REFERENCE: import("@hydranium/protocol").MessageDefinition<"Could not resolve reference to {referenceType} named '{refText}'.">;
36
52
  export interface DocumentValidatorOptions extends LogNameOptions {
37
53
  /**
38
54
  * Level at which the `validateDocument` timing line is emitted, or `'off'`
@@ -78,6 +94,7 @@ export interface DocumentValidatorOptions extends LogNameOptions {
78
94
  export declare class HydraniumDocumentValidator extends DefaultDocumentValidator {
79
95
  protected readonly tracer: Tracer;
80
96
  protected readonly astNodeLocator: AstNodeLocator;
97
+ protected readonly reflection: AstReflection;
81
98
  protected readonly logLevel: ObservableValue<LogThreshold>;
82
99
  protected readonly logAfterMs: ObservableValue<number>;
83
100
  protected readonly validateVirtualDocuments: ObservableValue<boolean>;
@@ -102,6 +119,54 @@ export declare class HydraniumDocumentValidator extends DefaultDocumentValidator
102
119
  * `super.shouldSkipValidation(node) || ...`.
103
120
  */
104
121
  protected shouldSkipValidation(node: AstNode): boolean;
122
+ /**
123
+ * Langium's linking-error pass, plus the framework identity on each
124
+ * diagnostic it produced.
125
+ *
126
+ * Langium puts its own `linking-error` marker in `data.code` and leaves
127
+ * `Diagnostic.code` unset, so nothing identifies the message on a surface
128
+ * that drops `data` — which is every editor surface. This adds the framework
129
+ * identity to both `code` and `data.hydranium` while LEAVING `data.code` in
130
+ * place: `stopAfterLinkingErrors` and Langium's code-action dispatch both
131
+ * read it.
132
+ *
133
+ * **The identity is attached only when the message is the one
134
+ * {@link UNRESOLVED_REFERENCE} renders.** Two other sentences reach this
135
+ * list: the linker's exception form, raised when resolution itself throws,
136
+ * and whatever an adopter overriding `createLinkingError` chose. Labelling
137
+ * either would make a catalogue render the wrong sentence — and for the
138
+ * exception form it would discard the underlying cause. Comparing against
139
+ * the locally rendered English is what discriminates; there is no structural
140
+ * field that does.
141
+ */
142
+ protected processLinkingErrors(document: LangiumDocument, diagnostics: Diagnostic[], options: ValidationOptions): void;
143
+ /**
144
+ * Add the {@link UNRESOLVED_REFERENCE} identity to one linking diagnostic,
145
+ * or return it untouched when its message is not the sentence that identity
146
+ * renders.
147
+ *
148
+ * `refText` comes from the `data` Langium populated; `referenceType` is not
149
+ * in it, so it is recovered the same way `createLinkingError` produced it —
150
+ * through the reflection, from the container type and property.
151
+ */
152
+ protected identifyLinkingError(diagnostic: Diagnostic): Diagnostic;
153
+ /**
154
+ * The declared target type of the reference this diagnostic came from, or
155
+ * `undefined` when the reflection cannot name one.
156
+ *
157
+ * **The lookup can throw, and that is the reason this is a method rather
158
+ * than an inline call.** `AbstractAstReflection.getReferenceType` raises on
159
+ * an unknown container `$type` and on a property that is not a reference —
160
+ * and the linking error whose type it cannot name is the one most likely to
161
+ * reach here, because `DefaultLinker` catches its OWN failed lookup and
162
+ * turns it into the exception-form message. Rethrowing would take
163
+ * `validateDocument` with it, since Langium wraps `processLinkingErrors` in
164
+ * no try: a diagnostic Langium degraded gracefully would become a failed
165
+ * build. Declining is also the right answer on the merits — a reference
166
+ * whose type cannot be named is not the message
167
+ * {@link UNRESOLVED_REFERENCE} claims.
168
+ */
169
+ protected referenceTypeOf(containerType: string, property: string, refText: string): string | undefined;
105
170
  protected toDiagnostic<N extends AstNode>(severity: ValidationSeverity, message: string, info: DiagnosticInfo<N, string>): TransferLspDiagnostic;
106
171
  /**
107
172
  * Construct the `element` path for a diagnostic. Falls back through: