Skip to content

Commit 17c9b47

Browse files
authored
Merge pull request TypeFox#74 from TypeFox/at/resolve-should-update-item
Return updated items in `resolve*` operations
2 parents 4fb3233 + 1fc7e05 commit 17c9b47

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

src/languages.ts

+15-3
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,11 @@ export class MonacoLanguages implements Languages {
9393
},
9494
resolveCompletionItem: provider.resolveCompletionItem ? (item, token) => {
9595
const protocolItem = this.m2p.asCompletionItem(item);
96-
return provider.resolveCompletionItem!(protocolItem, token).then(item => this.p2m.asCompletionItem(item));
96+
return provider.resolveCompletionItem!(protocolItem, token).then(resolvedItem => {
97+
const resolvedCompletionItem = this.p2m.asCompletionItem(resolvedItem);
98+
Object.assign(item, resolvedCompletionItem);
99+
return item;
100+
});
97101
} : undefined
98102
};
99103
}
@@ -270,7 +274,11 @@ export class MonacoLanguages implements Languages {
270274
return codeLens;
271275
}
272276
const protocolCodeLens = this.m2p.asCodeLens(codeLens);
273-
return provider.resolveCodeLens!(protocolCodeLens, token).then(result => this.p2m.asCodeLens(result))
277+
return provider.resolveCodeLens!(protocolCodeLens, token).then(result => {
278+
const resolvedCodeLens = this.p2m.asCodeLens(result);
279+
Object.assign(codeLens, resolvedCodeLens);
280+
return codeLens;
281+
});
274282
} : ((m, codeLens, t) => codeLens)
275283
}
276284
}
@@ -385,7 +393,11 @@ export class MonacoLanguages implements Languages {
385393
// and the link doesn't have a url set
386394
if (provider.resolveDocumentLink && (link.url === null || link.url === undefined)) {
387395
const documentLink = this.m2p.asDocumentLink(link);
388-
return provider.resolveDocumentLink(documentLink, token).then(result => this.p2m.asILink(result));
396+
return provider.resolveDocumentLink(documentLink, token).then(result => {
397+
const resolvedLink = this.p2m.asILink(result);
398+
Object.assign(link, resolvedLink);
399+
return link;
400+
});
389401
}
390402
return link;
391403
}

0 commit comments

Comments
 (0)