diff options
| author | Nate Sesti <sestinj@gmail.com> | 2023-06-07 16:31:44 -0400 | 
|---|---|---|
| committer | Nate Sesti <sestinj@gmail.com> | 2023-06-07 16:31:44 -0400 | 
| commit | f6a6bb137f0aab1e985e3d401e52af38586ddc7a (patch) | |
| tree | d55d3acf1ab2b881d59afaaae9eb546b1cf9aeab /continuedev/src/continuedev/server | |
| parent | 37dd4be19f621571788d0a9880ce316ebc6e8e47 (diff) | |
| parent | 81b38be5b1199e95534b99168465a8cfcef7e1cb (diff) | |
| download | sncontinue-f6a6bb137f0aab1e985e3d401e52af38586ddc7a.tar.gz sncontinue-f6a6bb137f0aab1e985e3d401e52af38586ddc7a.tar.bz2 sncontinue-f6a6bb137f0aab1e985e3d401e52af38586ddc7a.zip | |
Merge branch 'main' into dlt-transform
Diffstat (limited to 'continuedev/src/continuedev/server')
| -rw-r--r-- | continuedev/src/continuedev/server/ide.py | 15 | ||||
| -rw-r--r-- | continuedev/src/continuedev/server/ide_protocol.py | 8 | 
2 files changed, 22 insertions, 1 deletions
| diff --git a/continuedev/src/continuedev/server/ide.py b/continuedev/src/continuedev/server/ide.py index eec5b607..007eb2b4 100644 --- a/continuedev/src/continuedev/server/ide.py +++ b/continuedev/src/continuedev/server/ide.py @@ -76,6 +76,10 @@ class GetUserSecretResponse(BaseModel):      value: str +class RunCommandResponse(BaseModel): +    output: str + +  T = TypeVar("T", bound=BaseModel) @@ -110,7 +114,7 @@ class IdeProtocolServer(AbstractIdeProtocolServer):              fileEdits = list(                  map(lambda d: FileEditWithFullContents.parse_obj(d), data["fileEdits"]))              self.onFileEdits(fileEdits) -        elif message_type in ["highlightedCode", "openFiles", "readFile", "editFile", "workspaceDirectory", "getUserSecret"]: +        elif message_type in ["highlightedCode", "openFiles", "readFile", "editFile", "workspaceDirectory", "getUserSecret", "runCommand"]:              self.sub_queue.post(message_type, data)          else:              raise ValueError("Unknown message type", message_type) @@ -133,6 +137,15 @@ class IdeProtocolServer(AbstractIdeProtocolServer):              "sessionId": session_id          }) +    async def highlightCode(self, range_in_file: RangeInFile, color: str): +        await self._send_json("highlightCode", { +            "rangeInFile": range_in_file.dict(), +            "color": color +        }) + +    async def runCommand(self, command: str) -> str: +        return (await self._send_and_receive_json({"command": command}, RunCommandResponse, "runCommand")).output +      async def showSuggestionsAndWait(self, suggestions: List[FileEdit]) -> bool:          ids = [str(uuid.uuid4()) for _ in suggestions]          for i in range(len(suggestions)): diff --git a/continuedev/src/continuedev/server/ide_protocol.py b/continuedev/src/continuedev/server/ide_protocol.py index 8f155415..4622d6ff 100644 --- a/continuedev/src/continuedev/server/ide_protocol.py +++ b/continuedev/src/continuedev/server/ide_protocol.py @@ -82,3 +82,11 @@ class AbstractIdeProtocolServer(ABC):      @abstractmethod      async def getUserSecret(self, key: str):          """Get a user secret""" + +    @abstractmethod +    async def highlightCode(self, range_in_file: RangeInFile, color: str): +        """Highlight code""" + +    @abstractmethod +    async def runCommand(self, command: str) -> str: +        """Run a command""" | 
