@hydranium/core 1.0.0-next.370 → 1.0.0-next.371
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.
- package/lib/langium/document-builder/document-builder.d.ts +37 -5
- package/lib/langium/document-builder/document-builder.d.ts.map +1 -1
- package/lib/langium/document-builder/document-builder.js +66 -8
- package/lib/langium/document-builder/document-builder.js.map +1 -1
- package/lib/langium/project/abstract-project-manager.d.ts +184 -13
- package/lib/langium/project/abstract-project-manager.d.ts.map +1 -1
- package/lib/langium/project/abstract-project-manager.js +324 -11
- package/lib/langium/project/abstract-project-manager.js.map +1 -1
- package/lib/langium/project/project-change-event.d.ts +20 -1
- package/lib/langium/project/project-change-event.d.ts.map +1 -1
- package/lib/langium/project/project-manager.d.ts +28 -2
- package/lib/langium/project/project-manager.d.ts.map +1 -1
- package/lib/langium/project/single-project-manager.d.ts +7 -1
- package/lib/langium/project/single-project-manager.d.ts.map +1 -1
- package/lib/langium/project/single-project-manager.js +12 -0
- package/lib/langium/project/single-project-manager.js.map +1 -1
- package/lib/langium/workspace/hydranium-workspace-manager.d.ts +4 -2
- package/lib/langium/workspace/hydranium-workspace-manager.d.ts.map +1 -1
- package/lib/langium/workspace/hydranium-workspace-manager.js +4 -2
- package/lib/langium/workspace/hydranium-workspace-manager.js.map +1 -1
- package/lib/testing/stub-document-builder.d.ts +1 -1
- package/lib/testing/stub-document-builder.d.ts.map +1 -1
- package/lib/testing/stub-document-builder.js +7 -0
- package/lib/testing/stub-document-builder.js.map +1 -1
- package/lib/testing/stub-project-manager.d.ts.map +1 -1
- package/lib/testing/stub-project-manager.js +10 -0
- package/lib/testing/stub-project-manager.js.map +1 -1
- package/package.json +5 -5
- package/src/langium/document-builder/document-builder.ts +71 -11
- package/src/langium/project/abstract-project-manager.ts +396 -15
- package/src/langium/project/project-change-event.ts +23 -1
- package/src/langium/project/project-manager.ts +31 -2
- package/src/langium/project/single-project-manager.ts +16 -1
- package/src/langium/workspace/hydranium-workspace-manager.ts +4 -2
- package/src/testing/stub-document-builder.ts +18 -1
- package/src/testing/stub-project-manager.ts +10 -0
|
@@ -82,7 +82,17 @@ export interface StubWaitUntilGate {
|
|
|
82
82
|
export interface StubDocumentBuilder
|
|
83
83
|
extends
|
|
84
84
|
Pick<DocumentBuilder, 'update' | 'onDocumentPhase' | 'onUpdate' | 'build' | 'onBuildPhase' | 'resetToState' | 'updateBuildOptions'>,
|
|
85
|
-
Pick<
|
|
85
|
+
Pick<
|
|
86
|
+
HydraniumDocumentBuilder,
|
|
87
|
+
| 'onDocumentPhaseDelivered'
|
|
88
|
+
| 'scheduleUpdate'
|
|
89
|
+
| 'finalBuildState'
|
|
90
|
+
| 'onBuildEnded'
|
|
91
|
+
| 'isInsideBuildUpdate'
|
|
92
|
+
| 'activeBuild'
|
|
93
|
+
| 'markNextReason'
|
|
94
|
+
| 'shouldValidateDocument'
|
|
95
|
+
> {
|
|
86
96
|
/**
|
|
87
97
|
* Single-overload stub of {@link DocumentBuilder.waitUntil}. Real has
|
|
88
98
|
* two overloads (`(state, cancelToken?): Promise<void>` and
|
|
@@ -178,6 +188,13 @@ export function makeStubDocumentBuilder(workspaceLock?: WorkspaceLock): StubDocu
|
|
|
178
188
|
updateBuildOptions: { validation: { categories: ['built-in', 'fast'] } },
|
|
179
189
|
// The real rule, read off this stub's options, so the two cannot drift.
|
|
180
190
|
finalBuildState: () => HydraniumDocumentBuilder.prototype.finalBuildState.call(stub),
|
|
191
|
+
// Langium's default for an update, read off this stub's options rather
|
|
192
|
+
// than each document's own build options, as the real builder does.
|
|
193
|
+
shouldValidateDocument: () => Boolean(stub.updateBuildOptions.validation),
|
|
194
|
+
// The stub never runs a build of its own.
|
|
195
|
+
isInsideBuildUpdate: () => false,
|
|
196
|
+
activeBuild: undefined,
|
|
197
|
+
markNextReason: () => undefined,
|
|
181
198
|
get updateCalls() {
|
|
182
199
|
return updateCalls;
|
|
183
200
|
},
|
|
@@ -143,6 +143,16 @@ export function makeStubProjectManager<TProject extends Project = Project>(
|
|
|
143
143
|
}
|
|
144
144
|
});
|
|
145
145
|
},
|
|
146
|
+
// The stub never defers a member relink, so these never fire.
|
|
147
|
+
onMemberRelinkStarted() {
|
|
148
|
+
return Disposable.create(() => undefined);
|
|
149
|
+
},
|
|
150
|
+
onMemberRelinkFinished() {
|
|
151
|
+
return Disposable.create(() => undefined);
|
|
152
|
+
},
|
|
153
|
+
memberRelinkSettled() {
|
|
154
|
+
return Promise.resolve();
|
|
155
|
+
},
|
|
146
156
|
ownUri(uri, projectId) {
|
|
147
157
|
const key = typeof uri === 'string' ? uri : uri.toString();
|
|
148
158
|
ownership.set(key, projectId);
|