2021-06-09 22:15:25 +03:00
|
|
|
syntax = "proto3";
|
|
|
|
package zed.messages;
|
|
|
|
|
2021-06-15 23:06:50 +03:00
|
|
|
message Envelope {
|
|
|
|
uint32 id = 1;
|
|
|
|
optional uint32 responding_to = 2;
|
2021-06-19 02:26:12 +03:00
|
|
|
optional uint32 original_sender_id = 3;
|
2021-06-15 23:06:50 +03:00
|
|
|
oneof payload {
|
2021-09-09 21:24:16 +03:00
|
|
|
Ack ack = 4;
|
|
|
|
Error error = 5;
|
|
|
|
Ping ping = 6;
|
2022-02-16 20:32:03 +03:00
|
|
|
Test test = 7;
|
2022-09-23 16:05:32 +03:00
|
|
|
|
|
|
|
CreateRoom create_room = 8;
|
|
|
|
CreateRoomResponse create_room_response = 9;
|
|
|
|
JoinRoom join_room = 10;
|
|
|
|
JoinRoomResponse join_room_response = 11;
|
2022-09-26 15:27:52 +03:00
|
|
|
LeaveRoom leave_room = 1002;
|
2022-09-23 16:05:32 +03:00
|
|
|
Call call = 12;
|
2022-09-23 19:16:57 +03:00
|
|
|
IncomingCall incoming_call = 1000;
|
2022-10-06 16:12:27 +03:00
|
|
|
CallCanceled call_canceled = 1001;
|
|
|
|
CancelCall cancel_call = 1004;
|
2022-09-26 11:34:26 +03:00
|
|
|
DeclineCall decline_call = 13;
|
2022-10-04 12:46:01 +03:00
|
|
|
UpdateParticipantLocation update_participant_location = 1003;
|
2022-09-23 16:05:32 +03:00
|
|
|
RoomUpdated room_updated = 14;
|
|
|
|
|
2022-09-30 13:23:57 +03:00
|
|
|
ShareProject share_project = 15;
|
|
|
|
ShareProjectResponse share_project_response = 16;
|
|
|
|
UnshareProject unshare_project = 17;
|
2022-09-23 16:05:32 +03:00
|
|
|
JoinProject join_project = 21;
|
|
|
|
JoinProjectResponse join_project_response = 22;
|
|
|
|
LeaveProject leave_project = 23;
|
|
|
|
AddProjectCollaborator add_project_collaborator = 24;
|
|
|
|
RemoveProjectCollaborator remove_project_collaborator = 25;
|
|
|
|
|
|
|
|
GetDefinition get_definition = 27;
|
|
|
|
GetDefinitionResponse get_definition_response = 28;
|
|
|
|
GetTypeDefinition get_type_definition = 29;
|
|
|
|
GetTypeDefinitionResponse get_type_definition_response = 30;
|
|
|
|
GetReferences get_references = 31;
|
|
|
|
GetReferencesResponse get_references_response = 32;
|
|
|
|
GetDocumentHighlights get_document_highlights = 33;
|
|
|
|
GetDocumentHighlightsResponse get_document_highlights_response = 34;
|
|
|
|
GetProjectSymbols get_project_symbols = 35;
|
|
|
|
GetProjectSymbolsResponse get_project_symbols_response = 36;
|
|
|
|
OpenBufferForSymbol open_buffer_for_symbol = 37;
|
|
|
|
OpenBufferForSymbolResponse open_buffer_for_symbol_response = 38;
|
|
|
|
|
|
|
|
UpdateProject update_project = 39;
|
|
|
|
RegisterProjectActivity register_project_activity = 40;
|
|
|
|
UpdateWorktree update_worktree = 41;
|
|
|
|
UpdateWorktreeExtensions update_worktree_extensions = 42;
|
|
|
|
|
|
|
|
CreateProjectEntry create_project_entry = 43;
|
|
|
|
RenameProjectEntry rename_project_entry = 44;
|
|
|
|
CopyProjectEntry copy_project_entry = 45;
|
|
|
|
DeleteProjectEntry delete_project_entry = 46;
|
|
|
|
ProjectEntryResponse project_entry_response = 47;
|
|
|
|
|
|
|
|
UpdateDiagnosticSummary update_diagnostic_summary = 48;
|
|
|
|
StartLanguageServer start_language_server = 49;
|
|
|
|
UpdateLanguageServer update_language_server = 50;
|
|
|
|
|
|
|
|
OpenBufferById open_buffer_by_id = 51;
|
|
|
|
OpenBufferByPath open_buffer_by_path = 52;
|
|
|
|
OpenBufferResponse open_buffer_response = 53;
|
|
|
|
CreateBufferForPeer create_buffer_for_peer = 54;
|
|
|
|
UpdateBuffer update_buffer = 55;
|
|
|
|
UpdateBufferFile update_buffer_file = 56;
|
|
|
|
SaveBuffer save_buffer = 57;
|
|
|
|
BufferSaved buffer_saved = 58;
|
|
|
|
BufferReloaded buffer_reloaded = 59;
|
|
|
|
ReloadBuffers reload_buffers = 60;
|
|
|
|
ReloadBuffersResponse reload_buffers_response = 61;
|
|
|
|
FormatBuffers format_buffers = 62;
|
|
|
|
FormatBuffersResponse format_buffers_response = 63;
|
|
|
|
GetCompletions get_completions = 64;
|
|
|
|
GetCompletionsResponse get_completions_response = 65;
|
|
|
|
ApplyCompletionAdditionalEdits apply_completion_additional_edits = 66;
|
|
|
|
ApplyCompletionAdditionalEditsResponse apply_completion_additional_edits_response = 67;
|
|
|
|
GetCodeActions get_code_actions = 68;
|
|
|
|
GetCodeActionsResponse get_code_actions_response = 69;
|
|
|
|
GetHover get_hover = 70;
|
|
|
|
GetHoverResponse get_hover_response = 71;
|
|
|
|
ApplyCodeAction apply_code_action = 72;
|
|
|
|
ApplyCodeActionResponse apply_code_action_response = 73;
|
|
|
|
PrepareRename prepare_rename = 74;
|
|
|
|
PrepareRenameResponse prepare_rename_response = 75;
|
|
|
|
PerformRename perform_rename = 76;
|
|
|
|
PerformRenameResponse perform_rename_response = 77;
|
|
|
|
SearchProject search_project = 78;
|
|
|
|
SearchProjectResponse search_project_response = 79;
|
|
|
|
|
|
|
|
GetChannels get_channels = 80;
|
|
|
|
GetChannelsResponse get_channels_response = 81;
|
|
|
|
JoinChannel join_channel = 82;
|
|
|
|
JoinChannelResponse join_channel_response = 83;
|
|
|
|
LeaveChannel leave_channel = 84;
|
|
|
|
SendChannelMessage send_channel_message = 85;
|
|
|
|
SendChannelMessageResponse send_channel_message_response = 86;
|
|
|
|
ChannelMessageSent channel_message_sent = 87;
|
|
|
|
GetChannelMessages get_channel_messages = 88;
|
|
|
|
GetChannelMessagesResponse get_channel_messages_response = 89;
|
|
|
|
|
|
|
|
UpdateContacts update_contacts = 90;
|
|
|
|
UpdateInviteInfo update_invite_info = 91;
|
|
|
|
ShowContacts show_contacts = 92;
|
|
|
|
|
|
|
|
GetUsers get_users = 93;
|
|
|
|
FuzzySearchUsers fuzzy_search_users = 94;
|
|
|
|
UsersResponse users_response = 95;
|
|
|
|
RequestContact request_contact = 96;
|
|
|
|
RespondToContactRequest respond_to_contact_request = 97;
|
|
|
|
RemoveContact remove_contact = 98;
|
|
|
|
|
|
|
|
Follow follow = 99;
|
|
|
|
FollowResponse follow_response = 100;
|
|
|
|
UpdateFollowers update_followers = 101;
|
|
|
|
Unfollow unfollow = 102;
|
2021-06-09 22:15:25 +03:00
|
|
|
}
|
2021-06-15 23:06:50 +03:00
|
|
|
}
|
2021-06-09 22:15:25 +03:00
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
// Messages
|
|
|
|
|
2021-09-09 21:24:16 +03:00
|
|
|
message Ping {}
|
2021-08-19 06:59:13 +03:00
|
|
|
|
2021-09-09 21:24:16 +03:00
|
|
|
message Ack {}
|
2021-08-19 06:59:13 +03:00
|
|
|
|
2021-08-28 02:53:23 +03:00
|
|
|
message Error {
|
|
|
|
string message = 1;
|
|
|
|
}
|
|
|
|
|
2022-02-16 20:32:03 +03:00
|
|
|
message Test {
|
|
|
|
uint64 id = 1;
|
|
|
|
}
|
|
|
|
|
2022-09-23 16:05:32 +03:00
|
|
|
message CreateRoom {}
|
|
|
|
|
|
|
|
message CreateRoomResponse {
|
|
|
|
uint64 id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message JoinRoom {
|
|
|
|
uint64 id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message JoinRoomResponse {
|
|
|
|
Room room = 1;
|
|
|
|
}
|
|
|
|
|
2022-09-26 15:27:52 +03:00
|
|
|
message LeaveRoom {
|
|
|
|
uint64 id = 1;
|
|
|
|
}
|
|
|
|
|
2022-09-23 16:05:32 +03:00
|
|
|
message Room {
|
|
|
|
repeated Participant participants = 1;
|
2022-10-07 18:01:48 +03:00
|
|
|
repeated uint64 pending_participant_user_ids = 2;
|
2022-09-23 16:05:32 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message Participant {
|
|
|
|
uint64 user_id = 1;
|
|
|
|
uint32 peer_id = 2;
|
|
|
|
repeated uint64 project_ids = 3;
|
|
|
|
ParticipantLocation location = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ParticipantLocation {
|
|
|
|
oneof variant {
|
|
|
|
Project project = 1;
|
|
|
|
External external = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message Project {
|
|
|
|
uint64 id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message External {}
|
|
|
|
}
|
|
|
|
|
2022-09-23 19:16:57 +03:00
|
|
|
message Call {
|
|
|
|
uint64 room_id = 1;
|
2022-09-26 18:37:58 +03:00
|
|
|
uint64 recipient_user_id = 2;
|
2022-10-04 20:25:48 +03:00
|
|
|
optional uint64 initial_project_id = 3;
|
2022-09-23 19:16:57 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message IncomingCall {
|
|
|
|
uint64 room_id = 1;
|
2022-09-26 18:37:58 +03:00
|
|
|
uint64 caller_user_id = 2;
|
2022-09-23 19:16:57 +03:00
|
|
|
repeated uint64 participant_user_ids = 3;
|
2022-10-04 20:25:48 +03:00
|
|
|
optional uint64 initial_project_id = 4;
|
2022-09-23 19:16:57 +03:00
|
|
|
}
|
2022-09-23 16:05:32 +03:00
|
|
|
|
2022-10-06 16:12:27 +03:00
|
|
|
message CallCanceled {}
|
|
|
|
|
|
|
|
message CancelCall {
|
2022-10-06 16:20:49 +03:00
|
|
|
uint64 room_id = 1;
|
|
|
|
uint64 recipient_user_id = 2;
|
2022-10-06 16:12:27 +03:00
|
|
|
}
|
2022-09-26 11:34:26 +03:00
|
|
|
|
2022-10-06 16:20:49 +03:00
|
|
|
message DeclineCall {
|
|
|
|
uint64 room_id = 1;
|
|
|
|
}
|
2022-09-23 16:05:32 +03:00
|
|
|
|
2022-10-04 12:46:01 +03:00
|
|
|
message UpdateParticipantLocation {
|
|
|
|
uint64 room_id = 1;
|
|
|
|
ParticipantLocation location = 2;
|
|
|
|
}
|
|
|
|
|
2022-09-23 16:05:32 +03:00
|
|
|
message RoomUpdated {
|
|
|
|
Room room = 1;
|
|
|
|
}
|
|
|
|
|
2022-09-30 19:21:47 +03:00
|
|
|
message ShareProject {
|
|
|
|
uint64 room_id = 1;
|
|
|
|
}
|
2021-12-18 09:00:39 +03:00
|
|
|
|
2022-09-30 13:23:57 +03:00
|
|
|
message ShareProjectResponse {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
2021-09-17 04:39:29 +03:00
|
|
|
}
|
|
|
|
|
2022-09-30 13:23:57 +03:00
|
|
|
message UnshareProject {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
2021-09-17 04:39:29 +03:00
|
|
|
}
|
|
|
|
|
2022-06-01 23:41:48 +03:00
|
|
|
message UpdateProject {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
repeated WorktreeMetadata worktrees = 2;
|
|
|
|
}
|
|
|
|
|
2022-06-15 11:33:08 +03:00
|
|
|
message RegisterProjectActivity {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
}
|
|
|
|
|
2021-12-18 09:00:39 +03:00
|
|
|
message JoinProject {
|
|
|
|
uint64 project_id = 1;
|
2021-06-15 23:06:50 +03:00
|
|
|
}
|
2021-06-10 04:14:30 +03:00
|
|
|
|
2021-12-18 09:00:39 +03:00
|
|
|
message JoinProjectResponse {
|
2022-09-30 12:35:50 +03:00
|
|
|
uint32 replica_id = 1;
|
|
|
|
repeated WorktreeMetadata worktrees = 2;
|
|
|
|
repeated Collaborator collaborators = 3;
|
|
|
|
repeated LanguageServer language_servers = 4;
|
2021-06-15 23:06:50 +03:00
|
|
|
}
|
2021-06-15 11:42:06 +03:00
|
|
|
|
2021-12-18 09:00:39 +03:00
|
|
|
message LeaveProject {
|
|
|
|
uint64 project_id = 1;
|
2021-09-21 04:05:46 +03:00
|
|
|
}
|
|
|
|
|
2021-12-18 09:00:39 +03:00
|
|
|
message UpdateWorktree {
|
2022-02-23 20:35:25 +03:00
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 worktree_id = 2;
|
|
|
|
string root_name = 3;
|
|
|
|
repeated Entry updated_entries = 4;
|
|
|
|
repeated uint64 removed_entries = 5;
|
2022-05-05 14:47:53 +03:00
|
|
|
uint64 scan_id = 6;
|
2022-06-30 15:06:41 +03:00
|
|
|
bool is_last_update = 7;
|
2021-06-30 17:59:02 +03:00
|
|
|
}
|
|
|
|
|
2022-06-29 17:58:19 +03:00
|
|
|
message UpdateWorktreeExtensions {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 worktree_id = 2;
|
|
|
|
repeated string extensions = 3;
|
|
|
|
repeated uint32 counts = 4;
|
|
|
|
}
|
|
|
|
|
2022-05-04 03:55:33 +03:00
|
|
|
message CreateProjectEntry {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 worktree_id = 2;
|
|
|
|
bytes path = 3;
|
|
|
|
bool is_directory = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message RenameProjectEntry {
|
|
|
|
uint64 project_id = 1;
|
2022-05-04 20:27:04 +03:00
|
|
|
uint64 entry_id = 2;
|
|
|
|
bytes new_path = 3;
|
2022-05-04 03:55:33 +03:00
|
|
|
}
|
|
|
|
|
2022-05-30 15:52:34 +03:00
|
|
|
message CopyProjectEntry {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 entry_id = 2;
|
|
|
|
bytes new_path = 3;
|
|
|
|
}
|
|
|
|
|
2022-05-04 03:55:33 +03:00
|
|
|
message DeleteProjectEntry {
|
|
|
|
uint64 project_id = 1;
|
2022-05-05 03:53:29 +03:00
|
|
|
uint64 entry_id = 2;
|
2022-05-04 03:55:33 +03:00
|
|
|
}
|
|
|
|
|
2022-05-04 20:27:04 +03:00
|
|
|
message ProjectEntryResponse {
|
|
|
|
Entry entry = 1;
|
2022-05-31 09:11:07 +03:00
|
|
|
uint64 worktree_scan_id = 2;
|
2022-05-04 20:27:04 +03:00
|
|
|
}
|
|
|
|
|
2021-12-18 09:00:39 +03:00
|
|
|
message AddProjectCollaborator {
|
|
|
|
uint64 project_id = 1;
|
2021-11-27 06:35:50 +03:00
|
|
|
Collaborator collaborator = 2;
|
2021-06-19 02:26:12 +03:00
|
|
|
}
|
|
|
|
|
2021-12-18 09:00:39 +03:00
|
|
|
message RemoveProjectCollaborator {
|
|
|
|
uint64 project_id = 1;
|
2021-06-28 16:35:36 +03:00
|
|
|
uint32 peer_id = 2;
|
2021-06-19 02:26:12 +03:00
|
|
|
}
|
|
|
|
|
2022-01-24 14:27:13 +03:00
|
|
|
message GetDefinition {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
2022-03-03 14:18:19 +03:00
|
|
|
repeated VectorClockEntry version = 4;
|
2022-01-24 14:27:13 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetDefinitionResponse {
|
2022-06-14 02:21:53 +03:00
|
|
|
repeated LocationLink links = 1;
|
2022-01-24 14:27:13 +03:00
|
|
|
}
|
|
|
|
|
2022-07-29 18:41:08 +03:00
|
|
|
message GetTypeDefinition {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
|
|
|
repeated VectorClockEntry version = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetTypeDefinitionResponse {
|
|
|
|
repeated LocationLink links = 1;
|
|
|
|
}
|
|
|
|
|
2022-02-23 01:27:05 +03:00
|
|
|
message GetReferences {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
2022-03-03 14:18:19 +03:00
|
|
|
repeated VectorClockEntry version = 4;
|
2022-02-23 01:27:05 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetReferencesResponse {
|
|
|
|
repeated Location locations = 1;
|
|
|
|
}
|
|
|
|
|
2022-02-23 04:05:55 +03:00
|
|
|
message GetDocumentHighlights {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
2022-03-03 14:18:19 +03:00
|
|
|
repeated VectorClockEntry version = 4;
|
2022-02-23 04:05:55 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetDocumentHighlightsResponse {
|
|
|
|
repeated DocumentHighlight highlights = 1;
|
|
|
|
}
|
|
|
|
|
2022-02-23 01:27:05 +03:00
|
|
|
message Location {
|
2022-08-17 12:10:09 +03:00
|
|
|
uint64 buffer_id = 1;
|
2022-02-23 01:27:05 +03:00
|
|
|
Anchor start = 2;
|
|
|
|
Anchor end = 3;
|
2022-01-24 14:27:13 +03:00
|
|
|
}
|
|
|
|
|
2022-06-14 02:21:53 +03:00
|
|
|
message LocationLink {
|
|
|
|
optional Location origin = 1;
|
|
|
|
Location target = 2;
|
|
|
|
}
|
|
|
|
|
2022-02-23 04:05:55 +03:00
|
|
|
message DocumentHighlight {
|
|
|
|
Kind kind = 1;
|
|
|
|
Anchor start = 2;
|
|
|
|
Anchor end = 3;
|
|
|
|
|
|
|
|
enum Kind {
|
|
|
|
Text = 0;
|
|
|
|
Read = 1;
|
|
|
|
Write = 2;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-02-22 14:15:38 +03:00
|
|
|
message GetProjectSymbols {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
string query = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetProjectSymbolsResponse {
|
2022-02-22 18:26:01 +03:00
|
|
|
repeated Symbol symbols = 4;
|
2022-02-22 14:15:38 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message Symbol {
|
2022-02-22 19:48:14 +03:00
|
|
|
uint64 source_worktree_id = 1;
|
|
|
|
uint64 worktree_id = 2;
|
2022-03-30 02:57:18 +03:00
|
|
|
string language_server_name = 3;
|
2022-02-22 20:08:43 +03:00
|
|
|
string name = 4;
|
|
|
|
int32 kind = 5;
|
|
|
|
string path = 6;
|
|
|
|
Point start = 7;
|
|
|
|
Point end = 8;
|
2022-02-22 20:43:16 +03:00
|
|
|
bytes signature = 9;
|
2022-02-22 18:26:01 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message OpenBufferForSymbol {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
Symbol symbol = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message OpenBufferForSymbolResponse {
|
2022-08-17 12:10:09 +03:00
|
|
|
uint64 buffer_id = 1;
|
2022-02-22 14:15:38 +03:00
|
|
|
}
|
|
|
|
|
2022-03-17 18:50:29 +03:00
|
|
|
message OpenBufferByPath {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 worktree_id = 2;
|
|
|
|
string path = 3;
|
2021-06-18 20:28:39 +03:00
|
|
|
}
|
|
|
|
|
2022-03-17 18:50:29 +03:00
|
|
|
message OpenBufferById {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 id = 2;
|
|
|
|
}
|
|
|
|
|
2021-06-23 17:20:02 +03:00
|
|
|
message OpenBufferResponse {
|
2022-08-17 12:10:09 +03:00
|
|
|
uint64 buffer_id = 1;
|
2021-06-15 23:06:50 +03:00
|
|
|
}
|
2021-06-09 22:15:25 +03:00
|
|
|
|
2022-08-17 12:10:09 +03:00
|
|
|
message CreateBufferForPeer {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
2022-08-17 12:10:09 +03:00
|
|
|
uint32 peer_id = 2;
|
2022-08-23 17:05:56 +03:00
|
|
|
oneof variant {
|
|
|
|
BufferState state = 3;
|
|
|
|
BufferChunk chunk = 4;
|
|
|
|
}
|
2021-06-15 23:06:50 +03:00
|
|
|
}
|
2021-06-10 04:14:30 +03:00
|
|
|
|
2021-06-26 02:26:35 +03:00
|
|
|
message UpdateBuffer {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
2022-01-22 03:23:39 +03:00
|
|
|
uint64 buffer_id = 2;
|
2022-01-23 08:19:04 +03:00
|
|
|
repeated Operation operations = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message UpdateBufferFile {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
File file = 3;
|
2021-06-25 23:46:36 +03:00
|
|
|
}
|
|
|
|
|
2021-07-02 18:02:17 +03:00
|
|
|
message SaveBuffer {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
2022-01-22 03:23:39 +03:00
|
|
|
uint64 buffer_id = 2;
|
2022-02-15 04:13:50 +03:00
|
|
|
repeated VectorClockEntry version = 3;
|
2021-07-02 18:02:17 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message BufferSaved {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
2022-01-22 03:23:39 +03:00
|
|
|
uint64 buffer_id = 2;
|
|
|
|
repeated VectorClockEntry version = 3;
|
|
|
|
Timestamp mtime = 4;
|
2022-06-17 13:38:25 +03:00
|
|
|
string fingerprint = 5;
|
2021-07-02 18:02:17 +03:00
|
|
|
}
|
|
|
|
|
2022-01-24 12:17:36 +03:00
|
|
|
message BufferReloaded {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
repeated VectorClockEntry version = 3;
|
|
|
|
Timestamp mtime = 4;
|
2022-06-17 13:38:25 +03:00
|
|
|
string fingerprint = 5;
|
2022-07-05 09:01:14 +03:00
|
|
|
LineEnding line_ending = 6;
|
2022-01-24 12:17:36 +03:00
|
|
|
}
|
|
|
|
|
2022-04-01 15:01:56 +03:00
|
|
|
message ReloadBuffers {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
repeated uint64 buffer_ids = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ReloadBuffersResponse {
|
|
|
|
ProjectTransaction transaction = 1;
|
|
|
|
}
|
|
|
|
|
2022-09-23 01:21:05 +03:00
|
|
|
enum FormatTrigger {
|
|
|
|
Save = 0;
|
|
|
|
Manual = 1;
|
|
|
|
}
|
|
|
|
|
2022-02-11 13:05:25 +03:00
|
|
|
message FormatBuffers {
|
2022-01-12 20:01:20 +03:00
|
|
|
uint64 project_id = 1;
|
2022-09-23 01:21:05 +03:00
|
|
|
FormatTrigger trigger = 2;
|
|
|
|
repeated uint64 buffer_ids = 3;
|
2022-02-11 13:05:25 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message FormatBuffersResponse {
|
|
|
|
ProjectTransaction transaction = 1;
|
2022-01-12 20:01:20 +03:00
|
|
|
}
|
|
|
|
|
2022-02-02 14:22:47 +03:00
|
|
|
message GetCompletions {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
2022-02-15 12:16:29 +03:00
|
|
|
repeated VectorClockEntry version = 4;
|
2022-02-02 14:22:47 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetCompletionsResponse {
|
|
|
|
repeated Completion completions = 1;
|
2022-02-15 12:16:29 +03:00
|
|
|
repeated VectorClockEntry version = 2;
|
2022-02-02 14:22:47 +03:00
|
|
|
}
|
|
|
|
|
2022-02-02 18:22:38 +03:00
|
|
|
message ApplyCompletionAdditionalEdits {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Completion completion = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ApplyCompletionAdditionalEditsResponse {
|
2022-02-08 21:46:12 +03:00
|
|
|
Transaction transaction = 1;
|
2022-02-02 18:22:38 +03:00
|
|
|
}
|
|
|
|
|
2022-02-02 14:22:47 +03:00
|
|
|
message Completion {
|
|
|
|
Anchor old_start = 1;
|
|
|
|
Anchor old_end = 2;
|
|
|
|
string new_text = 3;
|
|
|
|
bytes lsp_completion = 4;
|
|
|
|
}
|
|
|
|
|
2022-02-08 14:18:14 +03:00
|
|
|
message GetCodeActions {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
2022-02-14 16:13:36 +03:00
|
|
|
Anchor start = 3;
|
|
|
|
Anchor end = 4;
|
2022-03-03 14:18:19 +03:00
|
|
|
repeated VectorClockEntry version = 5;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetCodeActionsResponse {
|
|
|
|
repeated CodeAction actions = 1;
|
2022-02-17 16:46:26 +03:00
|
|
|
repeated VectorClockEntry version = 2;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
2022-05-30 18:00:45 +03:00
|
|
|
message GetHover {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
|
|
|
repeated VectorClockEntry version = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetHoverResponse {
|
2022-06-04 00:56:21 +03:00
|
|
|
optional Anchor start = 1;
|
|
|
|
optional Anchor end = 2;
|
|
|
|
repeated HoverBlock contents = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message HoverBlock {
|
|
|
|
string text = 1;
|
|
|
|
optional string language = 2;
|
2022-05-30 18:00:45 +03:00
|
|
|
}
|
|
|
|
|
2022-02-08 14:18:14 +03:00
|
|
|
message ApplyCodeAction {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
CodeAction action = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ApplyCodeActionResponse {
|
2022-02-08 21:46:12 +03:00
|
|
|
ProjectTransaction transaction = 1;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
2022-02-17 23:44:14 +03:00
|
|
|
message PrepareRename {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
2022-03-03 14:18:19 +03:00
|
|
|
repeated VectorClockEntry version = 4;
|
2022-02-17 23:44:14 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message PrepareRenameResponse {
|
|
|
|
bool can_rename = 1;
|
|
|
|
Anchor start = 2;
|
|
|
|
Anchor end = 3;
|
|
|
|
repeated VectorClockEntry version = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message PerformRename {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 buffer_id = 2;
|
|
|
|
Anchor position = 3;
|
|
|
|
string new_name = 4;
|
2022-03-03 14:18:19 +03:00
|
|
|
repeated VectorClockEntry version = 5;
|
2022-02-17 23:44:14 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message PerformRenameResponse {
|
|
|
|
ProjectTransaction transaction = 2;
|
|
|
|
}
|
|
|
|
|
2022-02-25 23:38:31 +03:00
|
|
|
message SearchProject {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
string query = 2;
|
|
|
|
bool regex = 3;
|
|
|
|
bool whole_word = 4;
|
|
|
|
bool case_sensitive = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SearchProjectResponse {
|
|
|
|
repeated Location locations = 1;
|
|
|
|
}
|
|
|
|
|
2022-02-08 14:18:14 +03:00
|
|
|
message CodeAction {
|
2022-02-14 16:13:36 +03:00
|
|
|
Anchor start = 1;
|
|
|
|
Anchor end = 2;
|
|
|
|
bytes lsp_action = 3;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
2022-02-08 21:46:12 +03:00
|
|
|
message ProjectTransaction {
|
2022-08-17 12:10:09 +03:00
|
|
|
repeated uint64 buffer_ids = 1;
|
2022-02-08 21:46:12 +03:00
|
|
|
repeated Transaction transactions = 2;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
2022-02-08 21:46:12 +03:00
|
|
|
message Transaction {
|
|
|
|
LocalTimestamp id = 1;
|
|
|
|
repeated LocalTimestamp edit_ids = 2;
|
|
|
|
repeated VectorClockEntry start = 3;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
2022-02-08 21:46:12 +03:00
|
|
|
message LocalTimestamp {
|
2022-02-08 14:18:14 +03:00
|
|
|
uint32 replica_id = 1;
|
2022-02-08 21:46:12 +03:00
|
|
|
uint32 value = 2;
|
2022-02-08 14:18:14 +03:00
|
|
|
}
|
|
|
|
|
2022-03-10 18:45:13 +03:00
|
|
|
message LanguageServer {
|
|
|
|
uint64 id = 1;
|
|
|
|
string name = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message StartLanguageServer {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
LanguageServer server = 2;
|
|
|
|
}
|
|
|
|
|
2021-12-13 22:15:03 +03:00
|
|
|
message UpdateDiagnosticSummary {
|
2021-12-18 09:00:39 +03:00
|
|
|
uint64 project_id = 1;
|
|
|
|
uint64 worktree_id = 2;
|
2022-01-06 22:11:06 +03:00
|
|
|
DiagnosticSummary summary = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DiagnosticSummary {
|
2022-01-23 08:19:04 +03:00
|
|
|
string path = 1;
|
2022-06-07 20:05:06 +03:00
|
|
|
uint64 language_server_id = 2;
|
|
|
|
uint32 error_count = 3;
|
|
|
|
uint32 warning_count = 4;
|
2022-01-05 01:29:22 +03:00
|
|
|
}
|
|
|
|
|
2022-03-10 18:45:13 +03:00
|
|
|
message UpdateLanguageServer {
|
2022-01-07 17:03:19 +03:00
|
|
|
uint64 project_id = 1;
|
2022-03-10 18:09:47 +03:00
|
|
|
uint64 language_server_id = 2;
|
2022-03-10 14:00:33 +03:00
|
|
|
oneof variant {
|
2022-03-10 18:09:47 +03:00
|
|
|
LspWorkStart work_start = 3;
|
|
|
|
LspWorkProgress work_progress = 4;
|
|
|
|
LspWorkEnd work_end = 5;
|
|
|
|
LspDiskBasedDiagnosticsUpdating disk_based_diagnostics_updating = 6;
|
|
|
|
LspDiskBasedDiagnosticsUpdated disk_based_diagnostics_updated = 7;
|
2022-03-10 14:00:33 +03:00
|
|
|
}
|
2022-01-07 17:03:19 +03:00
|
|
|
}
|
|
|
|
|
2022-03-10 14:00:33 +03:00
|
|
|
message LspWorkStart {
|
|
|
|
string token = 1;
|
2022-06-08 20:26:41 +03:00
|
|
|
optional string message = 2;
|
|
|
|
optional uint32 percentage = 3;
|
2022-03-10 14:00:33 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message LspWorkProgress {
|
|
|
|
string token = 1;
|
|
|
|
optional string message = 2;
|
|
|
|
optional uint32 percentage = 3;
|
2021-12-13 22:15:03 +03:00
|
|
|
}
|
|
|
|
|
2022-03-10 14:00:33 +03:00
|
|
|
message LspWorkEnd {
|
|
|
|
string token = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message LspDiskBasedDiagnosticsUpdating {}
|
|
|
|
|
|
|
|
message LspDiskBasedDiagnosticsUpdated {}
|
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
message GetChannels {}
|
|
|
|
|
|
|
|
message GetChannelsResponse {
|
|
|
|
repeated Channel channels = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message JoinChannel {
|
|
|
|
uint64 channel_id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message JoinChannelResponse {
|
|
|
|
repeated ChannelMessage messages = 1;
|
2021-08-28 00:58:28 +03:00
|
|
|
bool done = 2;
|
2021-08-06 05:05:58 +03:00
|
|
|
}
|
|
|
|
|
2021-08-20 00:25:20 +03:00
|
|
|
message LeaveChannel {
|
|
|
|
uint64 channel_id = 1;
|
|
|
|
}
|
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
message GetUsers {
|
|
|
|
repeated uint64 user_ids = 1;
|
|
|
|
}
|
|
|
|
|
2022-05-06 00:14:44 +03:00
|
|
|
message FuzzySearchUsers {
|
|
|
|
string query = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message UsersResponse {
|
2021-08-06 05:05:58 +03:00
|
|
|
repeated User users = 1;
|
|
|
|
}
|
|
|
|
|
2022-05-06 16:38:02 +03:00
|
|
|
message RequestContact {
|
2022-05-08 00:09:27 +03:00
|
|
|
uint64 responder_id = 1;
|
2022-05-06 16:38:02 +03:00
|
|
|
}
|
|
|
|
|
2022-05-09 20:24:05 +03:00
|
|
|
message RemoveContact {
|
|
|
|
uint64 user_id = 1;
|
|
|
|
}
|
|
|
|
|
2022-05-06 16:38:02 +03:00
|
|
|
message RespondToContactRequest {
|
2022-05-08 00:09:27 +03:00
|
|
|
uint64 requester_id = 1;
|
2022-05-06 16:38:02 +03:00
|
|
|
ContactRequestResponse response = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
enum ContactRequestResponse {
|
|
|
|
Accept = 0;
|
2022-05-12 00:20:05 +03:00
|
|
|
Decline = 1;
|
2022-05-06 16:38:02 +03:00
|
|
|
Block = 2;
|
2022-05-11 16:13:37 +03:00
|
|
|
Dismiss = 3;
|
2022-05-06 16:38:02 +03:00
|
|
|
}
|
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
message SendChannelMessage {
|
|
|
|
uint64 channel_id = 1;
|
|
|
|
string body = 2;
|
2021-09-16 17:23:20 +03:00
|
|
|
Nonce nonce = 3;
|
2021-08-06 05:05:58 +03:00
|
|
|
}
|
|
|
|
|
2021-08-20 04:04:49 +03:00
|
|
|
message SendChannelMessageResponse {
|
2021-09-02 19:31:24 +03:00
|
|
|
ChannelMessage message = 1;
|
2021-08-20 04:04:49 +03:00
|
|
|
}
|
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
message ChannelMessageSent {
|
|
|
|
uint64 channel_id = 1;
|
|
|
|
ChannelMessage message = 2;
|
|
|
|
}
|
|
|
|
|
2021-08-28 00:58:28 +03:00
|
|
|
message GetChannelMessages {
|
|
|
|
uint64 channel_id = 1;
|
|
|
|
uint64 before_message_id = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetChannelMessagesResponse {
|
|
|
|
repeated ChannelMessage messages = 1;
|
|
|
|
bool done = 2;
|
|
|
|
}
|
|
|
|
|
2021-11-26 20:59:41 +03:00
|
|
|
message UpdateContacts {
|
|
|
|
repeated Contact contacts = 1;
|
2022-05-07 05:50:59 +03:00
|
|
|
repeated uint64 remove_contacts = 2;
|
|
|
|
repeated IncomingContactRequest incoming_requests = 3;
|
|
|
|
repeated uint64 remove_incoming_requests = 4;
|
|
|
|
repeated uint64 outgoing_requests = 5;
|
|
|
|
repeated uint64 remove_outgoing_requests = 6;
|
2022-05-06 16:38:02 +03:00
|
|
|
}
|
|
|
|
|
2022-05-20 02:57:46 +03:00
|
|
|
message UpdateInviteInfo {
|
|
|
|
string url = 1;
|
|
|
|
uint32 count = 2;
|
|
|
|
}
|
|
|
|
|
2022-05-20 16:41:38 +03:00
|
|
|
message ShowContacts {}
|
|
|
|
|
2022-05-06 16:38:02 +03:00
|
|
|
message IncomingContactRequest {
|
2022-05-08 00:09:27 +03:00
|
|
|
uint64 requester_id = 1;
|
2022-05-07 05:50:59 +03:00
|
|
|
bool should_notify = 2;
|
2021-09-17 15:36:50 +03:00
|
|
|
}
|
|
|
|
|
2022-03-17 18:50:29 +03:00
|
|
|
message UpdateDiagnostics {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 lamport_timestamp = 2;
|
|
|
|
repeated Diagnostic diagnostics = 3;
|
|
|
|
}
|
|
|
|
|
2022-03-17 20:46:54 +03:00
|
|
|
message Follow {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint32 leader_id = 2;
|
|
|
|
}
|
2022-03-17 18:50:29 +03:00
|
|
|
|
|
|
|
message FollowResponse {
|
2022-03-18 18:00:03 +03:00
|
|
|
optional uint64 active_view_id = 1;
|
2022-03-17 18:50:29 +03:00
|
|
|
repeated View views = 2;
|
|
|
|
}
|
|
|
|
|
2022-03-17 20:46:54 +03:00
|
|
|
message UpdateFollowers {
|
|
|
|
uint64 project_id = 1;
|
2022-03-18 18:00:03 +03:00
|
|
|
repeated uint32 follower_ids = 2;
|
|
|
|
oneof variant {
|
|
|
|
UpdateActiveView update_active_view = 3;
|
|
|
|
View create_view = 4;
|
|
|
|
UpdateView update_view = 5;
|
|
|
|
}
|
2022-03-17 20:46:54 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message Unfollow {
|
|
|
|
uint64 project_id = 1;
|
|
|
|
uint32 leader_id = 2;
|
2022-03-17 18:50:29 +03:00
|
|
|
}
|
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
// Entities
|
|
|
|
|
2022-03-21 21:47:00 +03:00
|
|
|
message UpdateActiveView {
|
|
|
|
optional uint64 id = 1;
|
|
|
|
optional uint32 leader_id = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message UpdateView {
|
|
|
|
uint64 id = 1;
|
|
|
|
optional uint32 leader_id = 2;
|
|
|
|
|
|
|
|
oneof variant {
|
|
|
|
Editor editor = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message Editor {
|
2022-03-22 07:47:24 +03:00
|
|
|
repeated Selection selections = 1;
|
2022-03-23 03:20:13 +03:00
|
|
|
Anchor scroll_top_anchor = 2;
|
|
|
|
float scroll_x = 3;
|
|
|
|
float scroll_y = 4;
|
2022-03-21 21:47:00 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-03-17 18:50:29 +03:00
|
|
|
message View {
|
|
|
|
uint64 id = 1;
|
2022-03-21 21:47:00 +03:00
|
|
|
optional uint32 leader_id = 2;
|
|
|
|
|
2022-03-17 18:50:29 +03:00
|
|
|
oneof variant {
|
2022-03-21 21:47:00 +03:00
|
|
|
Editor editor = 3;
|
2022-03-17 18:50:29 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message Editor {
|
|
|
|
uint64 buffer_id = 1;
|
2022-03-22 07:47:24 +03:00
|
|
|
repeated Selection selections = 2;
|
2022-03-23 03:20:13 +03:00
|
|
|
Anchor scroll_top_anchor = 3;
|
|
|
|
float scroll_x = 4;
|
|
|
|
float scroll_y = 5;
|
2022-03-17 18:50:29 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-11-27 06:35:50 +03:00
|
|
|
message Collaborator {
|
2021-08-06 05:05:58 +03:00
|
|
|
uint32 peer_id = 1;
|
|
|
|
uint32 replica_id = 2;
|
2021-11-26 20:22:34 +03:00
|
|
|
uint64 user_id = 3;
|
2021-08-06 05:05:58 +03:00
|
|
|
}
|
|
|
|
|
2021-06-19 02:26:12 +03:00
|
|
|
message User {
|
2021-06-25 20:20:53 +03:00
|
|
|
uint64 id = 1;
|
|
|
|
string github_login = 2;
|
|
|
|
string avatar_url = 3;
|
2021-06-19 02:26:12 +03:00
|
|
|
}
|
|
|
|
|
2022-01-23 00:29:36 +03:00
|
|
|
message File {
|
|
|
|
uint64 worktree_id = 1;
|
2022-01-23 08:19:04 +03:00
|
|
|
optional uint64 entry_id = 2;
|
2022-01-23 00:29:36 +03:00
|
|
|
string path = 3;
|
|
|
|
Timestamp mtime = 4;
|
|
|
|
}
|
|
|
|
|
2021-06-18 15:52:38 +03:00
|
|
|
message Entry {
|
2021-06-28 20:41:33 +03:00
|
|
|
uint64 id = 1;
|
|
|
|
bool is_dir = 2;
|
2022-05-04 03:55:33 +03:00
|
|
|
bytes path = 3;
|
2021-06-28 20:41:33 +03:00
|
|
|
uint64 inode = 4;
|
|
|
|
Timestamp mtime = 5;
|
|
|
|
bool is_symlink = 6;
|
|
|
|
bool is_ignored = 7;
|
2021-06-15 23:06:50 +03:00
|
|
|
}
|
2021-06-10 04:14:30 +03:00
|
|
|
|
2022-08-23 17:05:56 +03:00
|
|
|
message BufferState {
|
2021-06-25 20:20:53 +03:00
|
|
|
uint64 id = 1;
|
2022-01-23 08:19:04 +03:00
|
|
|
optional File file = 2;
|
2022-02-08 16:50:47 +03:00
|
|
|
string base_text = 3;
|
2022-08-23 17:05:56 +03:00
|
|
|
LineEnding line_ending = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message BufferChunk {
|
|
|
|
uint64 buffer_id = 1;
|
|
|
|
repeated Operation operations = 2;
|
|
|
|
bool is_last = 3;
|
2022-07-04 18:25:19 +03:00
|
|
|
}
|
|
|
|
|
2022-07-04 22:47:40 +03:00
|
|
|
enum LineEnding {
|
2022-07-04 18:25:19 +03:00
|
|
|
Unix = 0;
|
|
|
|
Windows = 1;
|
2022-01-05 05:06:16 +03:00
|
|
|
}
|
|
|
|
|
2021-10-22 21:35:29 +03:00
|
|
|
message SelectionSet {
|
2021-07-02 12:29:36 +03:00
|
|
|
uint32 replica_id = 1;
|
2021-12-13 13:38:38 +03:00
|
|
|
repeated Selection selections = 2;
|
2022-01-05 17:43:26 +03:00
|
|
|
uint32 lamport_timestamp = 3;
|
2022-05-18 21:10:24 +03:00
|
|
|
bool line_mode = 4;
|
2021-06-26 02:26:35 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message Selection {
|
|
|
|
uint64 id = 1;
|
2021-12-09 18:38:46 +03:00
|
|
|
Anchor start = 2;
|
|
|
|
Anchor end = 3;
|
2021-06-26 02:26:35 +03:00
|
|
|
bool reversed = 4;
|
|
|
|
}
|
|
|
|
|
2021-12-09 18:38:46 +03:00
|
|
|
message Anchor {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 local_timestamp = 2;
|
|
|
|
uint64 offset = 3;
|
|
|
|
Bias bias = 4;
|
2022-04-27 17:11:42 +03:00
|
|
|
optional uint64 buffer_id = 5;
|
2021-12-09 18:38:46 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
enum Bias {
|
|
|
|
Left = 0;
|
|
|
|
Right = 1;
|
|
|
|
}
|
|
|
|
|
2021-11-02 01:28:37 +03:00
|
|
|
message Diagnostic {
|
2021-12-09 18:38:46 +03:00
|
|
|
Anchor start = 1;
|
|
|
|
Anchor end = 2;
|
2021-11-02 01:28:37 +03:00
|
|
|
Severity severity = 3;
|
|
|
|
string message = 4;
|
2021-12-22 23:52:41 +03:00
|
|
|
optional string code = 5;
|
2021-12-23 18:47:54 +03:00
|
|
|
uint64 group_id = 6;
|
|
|
|
bool is_primary = 7;
|
|
|
|
bool is_valid = 8;
|
|
|
|
bool is_disk_based = 9;
|
2022-03-15 17:51:59 +03:00
|
|
|
bool is_unnecessary = 10;
|
2021-12-22 23:52:41 +03:00
|
|
|
|
2021-11-02 01:28:37 +03:00
|
|
|
enum Severity {
|
|
|
|
None = 0;
|
|
|
|
Error = 1;
|
|
|
|
Warning = 2;
|
|
|
|
Information = 3;
|
|
|
|
Hint = 4;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-06-15 23:06:50 +03:00
|
|
|
message Operation {
|
|
|
|
oneof variant {
|
|
|
|
Edit edit = 1;
|
2021-06-25 23:46:36 +03:00
|
|
|
Undo undo = 2;
|
2021-06-26 02:26:35 +03:00
|
|
|
UpdateSelections update_selections = 3;
|
2022-01-05 21:53:18 +03:00
|
|
|
UpdateDiagnostics update_diagnostics = 4;
|
2022-02-02 16:07:41 +03:00
|
|
|
UpdateCompletionTriggers update_completion_triggers = 5;
|
2021-06-09 22:15:25 +03:00
|
|
|
}
|
|
|
|
|
2021-06-15 23:06:50 +03:00
|
|
|
message Edit {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 local_timestamp = 2;
|
|
|
|
uint32 lamport_timestamp = 3;
|
|
|
|
repeated VectorClockEntry version = 4;
|
2021-06-23 17:20:02 +03:00
|
|
|
repeated Range ranges = 5;
|
2022-04-28 03:25:38 +03:00
|
|
|
repeated string new_text = 6;
|
2021-06-09 22:15:25 +03:00
|
|
|
}
|
2021-06-25 23:46:36 +03:00
|
|
|
|
|
|
|
message Undo {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 local_timestamp = 2;
|
|
|
|
uint32 lamport_timestamp = 3;
|
2022-03-03 20:07:59 +03:00
|
|
|
repeated VectorClockEntry version = 4;
|
2022-08-17 12:26:05 +03:00
|
|
|
repeated UndoCount counts = 5;
|
2021-06-29 11:25:42 +03:00
|
|
|
}
|
|
|
|
|
2021-06-26 02:26:35 +03:00
|
|
|
message UpdateSelections {
|
|
|
|
uint32 replica_id = 1;
|
2022-01-23 08:19:04 +03:00
|
|
|
uint32 lamport_timestamp = 2;
|
|
|
|
repeated Selection selections = 3;
|
2022-05-18 21:10:24 +03:00
|
|
|
bool line_mode = 4;
|
2021-10-22 21:35:29 +03:00
|
|
|
}
|
2022-02-02 16:07:41 +03:00
|
|
|
|
|
|
|
message UpdateCompletionTriggers {
|
2022-02-08 16:50:47 +03:00
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 lamport_timestamp = 2;
|
|
|
|
repeated string triggers = 3;
|
2022-02-02 16:07:41 +03:00
|
|
|
}
|
2021-06-23 17:20:02 +03:00
|
|
|
}
|
2021-10-22 21:35:29 +03:00
|
|
|
|
2022-01-05 05:06:16 +03:00
|
|
|
message UndoMapEntry {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 local_timestamp = 2;
|
|
|
|
repeated UndoCount counts = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message UndoCount {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 local_timestamp = 2;
|
|
|
|
uint32 count = 3;
|
2021-06-23 17:20:02 +03:00
|
|
|
}
|
2021-06-15 11:42:06 +03:00
|
|
|
|
2021-06-23 17:20:02 +03:00
|
|
|
message VectorClockEntry {
|
|
|
|
uint32 replica_id = 1;
|
|
|
|
uint32 timestamp = 2;
|
2021-06-15 11:42:06 +03:00
|
|
|
}
|
2021-06-22 03:07:56 +03:00
|
|
|
|
|
|
|
message Timestamp {
|
|
|
|
uint64 seconds = 1;
|
|
|
|
uint32 nanos = 2;
|
2021-06-23 17:20:02 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
message Range {
|
|
|
|
uint64 start = 1;
|
|
|
|
uint64 end = 2;
|
|
|
|
}
|
2021-08-06 05:05:58 +03:00
|
|
|
|
2022-02-22 20:08:43 +03:00
|
|
|
message Point {
|
|
|
|
uint32 row = 1;
|
|
|
|
uint32 column = 2;
|
|
|
|
}
|
|
|
|
|
2021-09-16 17:23:20 +03:00
|
|
|
message Nonce {
|
|
|
|
uint64 upper_half = 1;
|
|
|
|
uint64 lower_half = 2;
|
|
|
|
}
|
|
|
|
|
2021-08-06 05:05:58 +03:00
|
|
|
message Channel {
|
|
|
|
uint64 id = 1;
|
|
|
|
string name = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ChannelMessage {
|
|
|
|
uint64 id = 1;
|
|
|
|
string body = 2;
|
|
|
|
uint64 timestamp = 3;
|
|
|
|
uint64 sender_id = 4;
|
2021-09-16 17:23:20 +03:00
|
|
|
Nonce nonce = 5;
|
2021-09-02 19:31:24 +03:00
|
|
|
}
|
2021-09-17 15:36:50 +03:00
|
|
|
|
2021-11-26 20:59:41 +03:00
|
|
|
message Contact {
|
2021-09-17 15:36:50 +03:00
|
|
|
uint64 user_id = 1;
|
2022-09-29 20:40:36 +03:00
|
|
|
bool online = 2;
|
2022-10-07 13:21:56 +03:00
|
|
|
bool busy = 3;
|
|
|
|
bool should_notify = 4;
|
2021-09-17 15:36:50 +03:00
|
|
|
}
|
2022-06-01 23:41:48 +03:00
|
|
|
|
|
|
|
message WorktreeMetadata {
|
|
|
|
uint64 id = 1;
|
|
|
|
string root_name = 2;
|
|
|
|
bool visible = 3;
|
|
|
|
}
|