private findMonikersForVertex()

in server/src/graphStore.ts [827:854]


	private findMonikersForVertex(monikers: Map<Id, Moniker>, id: Id): void {
		let currentId: Id = id;
		let moniker: VertexResult | undefined;
		do {
			moniker = this.findMonikerStmt.get({ source: currentId });
			if (moniker !== undefined) {
				break;
			}
			const previous: PreviousResult = this.findPreviousVertexStmt.get({ source: currentId });
			if (previous === undefined) {
				moniker = undefined;
				break;
			}
			currentId = previous.outV;
		} while (currentId !== undefined);
		if (moniker === undefined) {
			return;
		}
		const result: Moniker[] = [this.decompress(JSON.parse(moniker.value))];
		for (const moniker of result) {
			monikers.set(moniker.id, moniker);
			const attachedMonikersResult: VertexResult[] = this.findAttachedMonikersStmt.all({ source: moniker.id });
			for (const attachedMonikerResult of attachedMonikersResult) {
				const attachedMoniker: Moniker = this.decompress(JSON.parse(attachedMonikerResult.value));
				monikers.set(attachedMoniker.id, attachedMoniker);
			}
		}
	}