**Problem** TS Server plugins sometimes want to provide additional metadata on responses beyond that found in the official TS Server API. Two examples: - Emmet needs to pass a special `isIncomplete` property to VS Code. This property tells VS Code to re-trigger completions when ever the user types - https://github.com/Microsoft/typescript-styled-plugin/pull/33#discussion_r168846502 - The styled plugin would like to pass color metadata information for color completions so that a preview of these colors are shown in the suggestion UI Right now, I believe the TS server strips all unrecognized properties from response objects **Proposed fix** Either: - Make the TS server serialize all properties on response objects, recognized or not. - Add a special `metadata` property to responses that a plugin can use to pass additional information along. /cc @ramya-rao-a
Problem
TS Server plugins sometimes want to provide additional metadata on responses beyond that found in the official TS Server API. Two examples:
Emmet needs to pass a special
isIncompleteproperty to VS Code. This property tells VS Code to re-trigger completions when ever the user types - Emmet in typescript styled plugin typescript-styled-plugin#33 (comment)The styled plugin would like to pass color metadata information for color completions so that a preview of these colors are shown in the suggestion UI
Right now, I believe the TS server strips all unrecognized properties from response objects
Proposed fix
Either:
Make the TS server serialize all properties on response objects, recognized or not.
Add a special
metadataproperty to responses that a plugin can use to pass additional information along./cc @ramya-rao-a