common.pb.go RawHistoryFolder

1// Shared wire-only values for the vev session protocol.
2//
3// Package vev.wire.v1 is the canonical Protobuf contract replacing the
4// custom MsgType codecs. Field numbers are new Protobuf numbers, never
5// preserved legacy MsgType IDs. Semantic validation stays in
6// internal/protocol; sessionwire owns conversion.
7
8// Code generated by protoc-gen-go. DO NOT EDIT.
9// versions:
10// 	protoc-gen-go v1.36.12
11// 	protoc        (unknown)
12// source: common.proto
13
14package wire
15
16import (
17	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
18	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
19	reflect "reflect"
20	sync "sync"
21	unsafe "unsafe"
22)
23
24const (
25	// Verify that this generated code is sufficiently up-to-date.
26	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
27	// Verify that runtime/protoimpl is sufficiently up-to-date.
28	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
29)
30
31// ColorMode is the closed color output mode of one attachment
32// (terminalcap.ColorMode). UNSPECIFIED is never a valid value on the wire.
33type ColorMode int32
34
35const (
36	ColorMode_COLOR_MODE_UNSPECIFIED ColorMode = 0
37	ColorMode_COLOR_MODE_TRUE_COLOR  ColorMode = 1
38	ColorMode_COLOR_MODE_ANSI256     ColorMode = 2
39	ColorMode_COLOR_MODE_ANSI16      ColorMode = 3
40	ColorMode_COLOR_MODE_MONOCHROME  ColorMode = 4
41)
42
43// Enum value maps for ColorMode.
44var (
45	ColorMode_name = map[int32]string{
46		0: "COLOR_MODE_UNSPECIFIED",
47		1: "COLOR_MODE_TRUE_COLOR",
48		2: "COLOR_MODE_ANSI256",
49		3: "COLOR_MODE_ANSI16",
50		4: "COLOR_MODE_MONOCHROME",
51	}
52	ColorMode_value = map[string]int32{
53		"COLOR_MODE_UNSPECIFIED": 0,
54		"COLOR_MODE_TRUE_COLOR":  1,
55		"COLOR_MODE_ANSI256":     2,
56		"COLOR_MODE_ANSI16":      3,
57		"COLOR_MODE_MONOCHROME":  4,
58	}
59)
60
61func (x ColorMode) Enum() *ColorMode {
62	p := new(ColorMode)
63	*p = x
64	return p
65}
66
67func (x ColorMode) String() string {
68	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
69}
70
71func (ColorMode) Descriptor() protoreflect.EnumDescriptor {
72	return file_common_proto_enumTypes[0].Descriptor()
73}
74
75func (ColorMode) Type() protoreflect.EnumType {
76	return &file_common_proto_enumTypes[0]
77}
78
79func (x ColorMode) Number() protoreflect.EnumNumber {
80	return protoreflect.EnumNumber(x)
81}
82
83// Deprecated: Use ColorMode.Descriptor instead.
84func (ColorMode) EnumDescriptor() ([]byte, []int) {
85	return file_common_proto_rawDescGZIP(), []int{0}
86}
87
88// ColorSource records how confidently a color mode was selected
89// (terminalcap.Source). UNSPECIFIED is the explicit "unknown" source.
90type ColorSource int32
91
92const (
93	ColorSource_COLOR_SOURCE_UNSPECIFIED ColorSource = 0
94	ColorSource_COLOR_SOURCE_HEURISTIC   ColorSource = 1
95	ColorSource_COLOR_SOURCE_DECLARED    ColorSource = 2
96	ColorSource_COLOR_SOURCE_FORCED      ColorSource = 3
97)
98
99// Enum value maps for ColorSource.
100var (
101	ColorSource_name = map[int32]string{
102		0: "COLOR_SOURCE_UNSPECIFIED",
103		1: "COLOR_SOURCE_HEURISTIC",
104		2: "COLOR_SOURCE_DECLARED",
105		3: "COLOR_SOURCE_FORCED",
106	}
107	ColorSource_value = map[string]int32{
108		"COLOR_SOURCE_UNSPECIFIED": 0,
109		"COLOR_SOURCE_HEURISTIC":   1,
110		"COLOR_SOURCE_DECLARED":    2,
111		"COLOR_SOURCE_FORCED":      3,
112	}
113)
114
115func (x ColorSource) Enum() *ColorSource {
116	p := new(ColorSource)
117	*p = x
118	return p
119}
120
121func (x ColorSource) String() string {
122	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
123}
124
125func (ColorSource) Descriptor() protoreflect.EnumDescriptor {
126	return file_common_proto_enumTypes[1].Descriptor()
127}
128
129func (ColorSource) Type() protoreflect.EnumType {
130	return &file_common_proto_enumTypes[1]
131}
132
133func (x ColorSource) Number() protoreflect.EnumNumber {
134	return protoreflect.EnumNumber(x)
135}
136
137// Deprecated: Use ColorSource.Descriptor instead.
138func (ColorSource) EnumDescriptor() ([]byte, []int) {
139	return file_common_proto_rawDescGZIP(), []int{1}
140}
141
142// LifecycleID is the opaque 16-byte identity of one session lifecycle
143// (domain.SessionLifecycleID / domain.IncarnationID).
144type LifecycleID struct {
145	state         protoimpl.MessageState `protogen:"open.v1"`
146	Value         []byte                 `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"` // exactly 16 bytes
147	unknownFields protoimpl.UnknownFields
148	sizeCache     protoimpl.SizeCache
149}
150
151func (x *LifecycleID) Reset() {
152	*x = LifecycleID{}
153	mi := &file_common_proto_msgTypes[0]
154	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
155	ms.StoreMessageInfo(mi)
156}
157
158func (x *LifecycleID) String() string {
159	return protoimpl.X.MessageStringOf(x)
160}
161
162func (*LifecycleID) ProtoMessage() {}
163
164func (x *LifecycleID) ProtoReflect() protoreflect.Message {
165	mi := &file_common_proto_msgTypes[0]
166	if x != nil {
167		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
168		if ms.LoadMessageInfo() == nil {
169			ms.StoreMessageInfo(mi)
170		}
171		return ms
172	}
173	return mi.MessageOf(x)
174}
175
176// Deprecated: Use LifecycleID.ProtoReflect.Descriptor instead.
177func (*LifecycleID) Descriptor() ([]byte, []int) {
178	return file_common_proto_rawDescGZIP(), []int{0}
179}
180
181func (x *LifecycleID) GetValue() []byte {
182	if x != nil {
183		return x.Value
184	}
185	return nil
186}
187
188// TabSelector is an exact tab identity handoff (domain.TabSelector).
189type TabSelector struct {
190	state protoimpl.MessageState `protogen:"open.v1"`
191	// Closed taxonomy: 0 = absent, 1 = stable ID, 2 = ordinal.
192	Kind          uint32 `protobuf:"varint,1,opt,name=kind,proto3" json:"kind,omitempty"`
193	StableId      string `protobuf:"bytes,2,opt,name=stable_id,json=stableId,proto3" json:"stable_id,omitempty"`
194	Ordinal       uint32 `protobuf:"varint,3,opt,name=ordinal,proto3" json:"ordinal,omitempty"`
195	RawName       string `protobuf:"bytes,4,opt,name=raw_name,json=rawName,proto3" json:"raw_name,omitempty"`
196	ExpectedCount uint32 `protobuf:"varint,5,opt,name=expected_count,json=expectedCount,proto3" json:"expected_count,omitempty"`
197	unknownFields protoimpl.UnknownFields
198	sizeCache     protoimpl.SizeCache
199}
200
201func (x *TabSelector) Reset() {
202	*x = TabSelector{}
203	mi := &file_common_proto_msgTypes[1]
204	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
205	ms.StoreMessageInfo(mi)
206}
207
208func (x *TabSelector) String() string {
209	return protoimpl.X.MessageStringOf(x)
210}
211
212func (*TabSelector) ProtoMessage() {}
213
214func (x *TabSelector) ProtoReflect() protoreflect.Message {
215	mi := &file_common_proto_msgTypes[1]
216	if x != nil {
217		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
218		if ms.LoadMessageInfo() == nil {
219			ms.StoreMessageInfo(mi)
220		}
221		return ms
222	}
223	return mi.MessageOf(x)
224}
225
226// Deprecated: Use TabSelector.ProtoReflect.Descriptor instead.
227func (*TabSelector) Descriptor() ([]byte, []int) {
228	return file_common_proto_rawDescGZIP(), []int{1}
229}
230
231func (x *TabSelector) GetKind() uint32 {
232	if x != nil {
233		return x.Kind
234	}
235	return 0
236}
237
238func (x *TabSelector) GetStableId() string {
239	if x != nil {
240		return x.StableId
241	}
242	return ""
243}
244
245func (x *TabSelector) GetOrdinal() uint32 {
246	if x != nil {
247		return x.Ordinal
248	}
249	return 0
250}
251
252func (x *TabSelector) GetRawName() string {
253	if x != nil {
254		return x.RawName
255	}
256	return ""
257}
258
259func (x *TabSelector) GetExpectedCount() uint32 {
260	if x != nil {
261		return x.ExpectedCount
262	}
263	return 0
264}
265
266// RemoteTarget is the structured picker-based remote identity
267// (domain.RemoteSessionTarget). Endpoint and display origin stay separate:
268// the latter is presentation-only.
269type RemoteTarget struct {
270	state         protoimpl.MessageState `protogen:"open.v1"`
271	Endpoint      string                 `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
272	DisplayOrigin string                 `protobuf:"bytes,2,opt,name=display_origin,json=displayOrigin,proto3" json:"display_origin,omitempty"`
273	LifecycleId   *LifecycleID           `protobuf:"bytes,3,opt,name=lifecycle_id,json=lifecycleId,proto3" json:"lifecycle_id,omitempty"`
274	SessionName   string                 `protobuf:"bytes,4,opt,name=session_name,json=sessionName,proto3" json:"session_name,omitempty"`
275	LiveTabId     string                 `protobuf:"bytes,5,opt,name=live_tab_id,json=liveTabId,proto3" json:"live_tab_id,omitempty"`
276	StoppedTab    *TabSelector           `protobuf:"bytes,6,opt,name=stopped_tab,json=stoppedTab,proto3" json:"stopped_tab,omitempty"`
277	Stopped       bool                   `protobuf:"varint,7,opt,name=stopped,proto3" json:"stopped,omitempty"`
278	unknownFields protoimpl.UnknownFields
279	sizeCache     protoimpl.SizeCache
280}
281
282func (x *RemoteTarget) Reset() {
283	*x = RemoteTarget{}
284	mi := &file_common_proto_msgTypes[2]
285	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
286	ms.StoreMessageInfo(mi)
287}
288
289func (x *RemoteTarget) String() string {
290	return protoimpl.X.MessageStringOf(x)
291}
292
293func (*RemoteTarget) ProtoMessage() {}
294
295func (x *RemoteTarget) ProtoReflect() protoreflect.Message {
296	mi := &file_common_proto_msgTypes[2]
297	if x != nil {
298		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
299		if ms.LoadMessageInfo() == nil {
300			ms.StoreMessageInfo(mi)
301		}
302		return ms
303	}
304	return mi.MessageOf(x)
305}
306
307// Deprecated: Use RemoteTarget.ProtoReflect.Descriptor instead.
308func (*RemoteTarget) Descriptor() ([]byte, []int) {
309	return file_common_proto_rawDescGZIP(), []int{2}
310}
311
312func (x *RemoteTarget) GetEndpoint() string {
313	if x != nil {
314		return x.Endpoint
315	}
316	return ""
317}
318
319func (x *RemoteTarget) GetDisplayOrigin() string {
320	if x != nil {
321		return x.DisplayOrigin
322	}
323	return ""
324}
325
326func (x *RemoteTarget) GetLifecycleId() *LifecycleID {
327	if x != nil {
328		return x.LifecycleId
329	}
330	return nil
331}
332
333func (x *RemoteTarget) GetSessionName() string {
334	if x != nil {
335		return x.SessionName
336	}
337	return ""
338}
339
340func (x *RemoteTarget) GetLiveTabId() string {
341	if x != nil {
342		return x.LiveTabId
343	}
344	return ""
345}
346
347func (x *RemoteTarget) GetStoppedTab() *TabSelector {
348	if x != nil {
349		return x.StoppedTab
350	}
351	return nil
352}
353
354func (x *RemoteTarget) GetStopped() bool {
355	if x != nil {
356		return x.Stopped
357	}
358	return false
359}
360
361// ExactTarget is the daemon-neutral attach identity
362// (protocol.ExactSessionTarget).
363type ExactTarget struct {
364	state         protoimpl.MessageState `protogen:"open.v1"`
365	LifecycleId   *LifecycleID           `protobuf:"bytes,1,opt,name=lifecycle_id,json=lifecycleId,proto3" json:"lifecycle_id,omitempty"`
366	SessionName   string                 `protobuf:"bytes,2,opt,name=session_name,json=sessionName,proto3" json:"session_name,omitempty"`
367	unknownFields protoimpl.UnknownFields
368	sizeCache     protoimpl.SizeCache
369}
370
371func (x *ExactTarget) Reset() {
372	*x = ExactTarget{}
373	mi := &file_common_proto_msgTypes[3]
374	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
375	ms.StoreMessageInfo(mi)
376}
377
378func (x *ExactTarget) String() string {
379	return protoimpl.X.MessageStringOf(x)
380}
381
382func (*ExactTarget) ProtoMessage() {}
383
384func (x *ExactTarget) ProtoReflect() protoreflect.Message {
385	mi := &file_common_proto_msgTypes[3]
386	if x != nil {
387		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
388		if ms.LoadMessageInfo() == nil {
389			ms.StoreMessageInfo(mi)
390		}
391		return ms
392	}
393	return mi.MessageOf(x)
394}
395
396// Deprecated: Use ExactTarget.ProtoReflect.Descriptor instead.
397func (*ExactTarget) Descriptor() ([]byte, []int) {
398	return file_common_proto_rawDescGZIP(), []int{3}
399}
400
401func (x *ExactTarget) GetLifecycleId() *LifecycleID {
402	if x != nil {
403		return x.LifecycleId
404	}
405	return nil
406}
407
408func (x *ExactTarget) GetSessionName() string {
409	if x != nil {
410		return x.SessionName
411	}
412	return ""
413}
414
415// SessionAttachTarget is exact identity local to the receiving daemon.
416type SessionAttachTarget struct {
417	state            protoimpl.MessageState `protogen:"open.v1"`
418	SessionId        string                 `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
419	LifecycleId      *LifecycleID           `protobuf:"bytes,2,opt,name=lifecycle_id,json=lifecycleId,proto3" json:"lifecycle_id,omitempty"`
420	SessionName      string                 `protobuf:"bytes,3,opt,name=session_name,json=sessionName,proto3" json:"session_name,omitempty"`
421	TabId            string                 `protobuf:"bytes,4,opt,name=tab_id,json=tabId,proto3" json:"tab_id,omitempty"`
422	TabIndex         *int32                 `protobuf:"varint,5,opt,name=tab_index,json=tabIndex,proto3,oneof" json:"tab_index,omitempty"`
423	TabRawName       string                 `protobuf:"bytes,6,opt,name=tab_raw_name,json=tabRawName,proto3" json:"tab_raw_name,omitempty"`
424	TabExpectedCount uint32                 `protobuf:"varint,7,opt,name=tab_expected_count,json=tabExpectedCount,proto3" json:"tab_expected_count,omitempty"`
425	Stopped          bool                   `protobuf:"varint,8,opt,name=stopped,proto3" json:"stopped,omitempty"`
426	unknownFields    protoimpl.UnknownFields
427	sizeCache        protoimpl.SizeCache
428}
429
430func (x *SessionAttachTarget) Reset() {
431	*x = SessionAttachTarget{}
432	mi := &file_common_proto_msgTypes[4]
433	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
434	ms.StoreMessageInfo(mi)
435}
436
437func (x *SessionAttachTarget) String() string {
438	return protoimpl.X.MessageStringOf(x)
439}
440
441func (*SessionAttachTarget) ProtoMessage() {}
442
443func (x *SessionAttachTarget) ProtoReflect() protoreflect.Message {
444	mi := &file_common_proto_msgTypes[4]
445	if x != nil {
446		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
447		if ms.LoadMessageInfo() == nil {
448			ms.StoreMessageInfo(mi)
449		}
450		return ms
451	}
452	return mi.MessageOf(x)
453}
454
455// Deprecated: Use SessionAttachTarget.ProtoReflect.Descriptor instead.
456func (*SessionAttachTarget) Descriptor() ([]byte, []int) {
457	return file_common_proto_rawDescGZIP(), []int{4}
458}
459
460func (x *SessionAttachTarget) GetSessionId() string {
461	if x != nil {
462		return x.SessionId
463	}
464	return ""
465}
466
467func (x *SessionAttachTarget) GetLifecycleId() *LifecycleID {
468	if x != nil {
469		return x.LifecycleId
470	}
471	return nil
472}
473
474func (x *SessionAttachTarget) GetSessionName() string {
475	if x != nil {
476		return x.SessionName
477	}
478	return ""
479}
480
481func (x *SessionAttachTarget) GetTabId() string {
482	if x != nil {
483		return x.TabId
484	}
485	return ""
486}
487
488func (x *SessionAttachTarget) GetTabIndex() int32 {
489	if x != nil && x.TabIndex != nil {
490		return *x.TabIndex
491	}
492	return 0
493}
494
495func (x *SessionAttachTarget) GetTabRawName() string {
496	if x != nil {
497		return x.TabRawName
498	}
499	return ""
500}
501
502func (x *SessionAttachTarget) GetTabExpectedCount() uint32 {
503	if x != nil {
504		return x.TabExpectedCount
505	}
506	return 0
507}
508
509func (x *SessionAttachTarget) GetStopped() bool {
510	if x != nil {
511		return x.Stopped
512	}
513	return false
514}
515
516// RGB is one terminal color triple (renderer.RGB).
517type RGB struct {
518	state         protoimpl.MessageState `protogen:"open.v1"`
519	R             uint32                 `protobuf:"varint,1,opt,name=r,proto3" json:"r,omitempty"`
520	G             uint32                 `protobuf:"varint,2,opt,name=g,proto3" json:"g,omitempty"`
521	B             uint32                 `protobuf:"varint,3,opt,name=b,proto3" json:"b,omitempty"`
522	unknownFields protoimpl.UnknownFields
523	sizeCache     protoimpl.SizeCache
524}
525
526func (x *RGB) Reset() {
527	*x = RGB{}
528	mi := &file_common_proto_msgTypes[5]
529	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
530	ms.StoreMessageInfo(mi)
531}
532
533func (x *RGB) String() string {
534	return protoimpl.X.MessageStringOf(x)
535}
536
537func (*RGB) ProtoMessage() {}
538
539func (x *RGB) ProtoReflect() protoreflect.Message {
540	mi := &file_common_proto_msgTypes[5]
541	if x != nil {
542		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
543		if ms.LoadMessageInfo() == nil {
544			ms.StoreMessageInfo(mi)
545		}
546		return ms
547	}
548	return mi.MessageOf(x)
549}
550
551// Deprecated: Use RGB.ProtoReflect.Descriptor instead.
552func (*RGB) Descriptor() ([]byte, []int) {
553	return file_common_proto_rawDescGZIP(), []int{5}
554}
555
556func (x *RGB) GetR() uint32 {
557	if x != nil {
558		return x.R
559	}
560	return 0
561}
562
563func (x *RGB) GetG() uint32 {
564	if x != nil {
565		return x.G
566	}
567	return 0
568}
569
570func (x *RGB) GetB() uint32 {
571	if x != nil {
572		return x.B
573	}
574	return 0
575}
576
577// ColorCapabilities is the color output capability a client claims for one
578// attachment (terminalcap.ColorCapabilities).
579type ColorCapabilities struct {
580	state         protoimpl.MessageState `protogen:"open.v1"`
581	Mode          ColorMode              `protobuf:"varint,1,opt,name=mode,proto3,enum=vev.wire.v1.ColorMode" json:"mode,omitempty"`
582	Source        ColorSource            `protobuf:"varint,2,opt,name=source,proto3,enum=vev.wire.v1.ColorSource" json:"source,omitempty"`
583	unknownFields protoimpl.UnknownFields
584	sizeCache     protoimpl.SizeCache
585}
586
587func (x *ColorCapabilities) Reset() {
588	*x = ColorCapabilities{}
589	mi := &file_common_proto_msgTypes[6]
590	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
591	ms.StoreMessageInfo(mi)
592}
593
594func (x *ColorCapabilities) String() string {
595	return protoimpl.X.MessageStringOf(x)
596}
597
598func (*ColorCapabilities) ProtoMessage() {}
599
600func (x *ColorCapabilities) ProtoReflect() protoreflect.Message {
601	mi := &file_common_proto_msgTypes[6]
602	if x != nil {
603		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
604		if ms.LoadMessageInfo() == nil {
605			ms.StoreMessageInfo(mi)
606		}
607		return ms
608	}
609	return mi.MessageOf(x)
610}
611
612// Deprecated: Use ColorCapabilities.ProtoReflect.Descriptor instead.
613func (*ColorCapabilities) Descriptor() ([]byte, []int) {
614	return file_common_proto_rawDescGZIP(), []int{6}
615}
616
617func (x *ColorCapabilities) GetMode() ColorMode {
618	if x != nil {
619		return x.Mode
620	}
621	return ColorMode_COLOR_MODE_UNSPECIFIED
622}
623
624func (x *ColorCapabilities) GetSource() ColorSource {
625	if x != nil {
626		return x.Source
627	}
628	return ColorSource_COLOR_SOURCE_UNSPECIFIED
629}
630
631// CellStyle is the bounded style block of one preview cell
632// (renderer.Style). Indexed colors use int32 so -1 (unset) survives.
633type CellStyle struct {
634	state                protoimpl.MessageState `protogen:"open.v1"`
635	Bold                 bool                   `protobuf:"varint,1,opt,name=bold,proto3" json:"bold,omitempty"`
636	Italic               bool                   `protobuf:"varint,2,opt,name=italic,proto3" json:"italic,omitempty"`
637	Inverse              bool                   `protobuf:"varint,3,opt,name=inverse,proto3" json:"inverse,omitempty"`
638	Attrs                uint32                 `protobuf:"varint,4,opt,name=attrs,proto3" json:"attrs,omitempty"`
639	Foreground           int32                  `protobuf:"varint,5,opt,name=foreground,proto3" json:"foreground,omitempty"`
640	Background           int32                  `protobuf:"varint,6,opt,name=background,proto3" json:"background,omitempty"`
641	HasForegroundRgb     bool                   `protobuf:"varint,7,opt,name=has_foreground_rgb,json=hasForegroundRgb,proto3" json:"has_foreground_rgb,omitempty"`
642	HasBackgroundRgb     bool                   `protobuf:"varint,8,opt,name=has_background_rgb,json=hasBackgroundRgb,proto3" json:"has_background_rgb,omitempty"`
643	HasUnderlineColor    bool                   `protobuf:"varint,9,opt,name=has_underline_color,json=hasUnderlineColor,proto3" json:"has_underline_color,omitempty"`
644	HasUnderlineColorRgb bool                   `protobuf:"varint,10,opt,name=has_underline_color_rgb,json=hasUnderlineColorRgb,proto3" json:"has_underline_color_rgb,omitempty"`
645	UnderlineStyle       uint32                 `protobuf:"varint,11,opt,name=underline_style,json=underlineStyle,proto3" json:"underline_style,omitempty"`
646	UnderlineColor       int32                  `protobuf:"varint,12,opt,name=underline_color,json=underlineColor,proto3" json:"underline_color,omitempty"`
647	ForegroundRgb        *RGB                   `protobuf:"bytes,13,opt,name=foreground_rgb,json=foregroundRgb,proto3" json:"foreground_rgb,omitempty"`
648	BackgroundRgb        *RGB                   `protobuf:"bytes,14,opt,name=background_rgb,json=backgroundRgb,proto3" json:"background_rgb,omitempty"`
649	UnderlineColorRgb    *RGB                   `protobuf:"bytes,15,opt,name=underline_color_rgb,json=underlineColorRgb,proto3" json:"underline_color_rgb,omitempty"`
650	unknownFields        protoimpl.UnknownFields
651	sizeCache            protoimpl.SizeCache
652}
653
654func (x *CellStyle) Reset() {
655	*x = CellStyle{}
656	mi := &file_common_proto_msgTypes[7]
657	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
658	ms.StoreMessageInfo(mi)
659}
660
661func (x *CellStyle) String() string {
662	return protoimpl.X.MessageStringOf(x)
663}
664
665func (*CellStyle) ProtoMessage() {}
666
667func (x *CellStyle) ProtoReflect() protoreflect.Message {
668	mi := &file_common_proto_msgTypes[7]
669	if x != nil {
670		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
671		if ms.LoadMessageInfo() == nil {
672			ms.StoreMessageInfo(mi)
673		}
674		return ms
675	}
676	return mi.MessageOf(x)
677}
678
679// Deprecated: Use CellStyle.ProtoReflect.Descriptor instead.
680func (*CellStyle) Descriptor() ([]byte, []int) {
681	return file_common_proto_rawDescGZIP(), []int{7}
682}
683
684func (x *CellStyle) GetBold() bool {
685	if x != nil {
686		return x.Bold
687	}
688	return false
689}
690
691func (x *CellStyle) GetItalic() bool {
692	if x != nil {
693		return x.Italic
694	}
695	return false
696}
697
698func (x *CellStyle) GetInverse() bool {
699	if x != nil {
700		return x.Inverse
701	}
702	return false
703}
704
705func (x *CellStyle) GetAttrs() uint32 {
706	if x != nil {
707		return x.Attrs
708	}
709	return 0
710}
711
712func (x *CellStyle) GetForeground() int32 {
713	if x != nil {
714		return x.Foreground
715	}
716	return 0
717}
718
719func (x *CellStyle) GetBackground() int32 {
720	if x != nil {
721		return x.Background
722	}
723	return 0
724}
725
726func (x *CellStyle) GetHasForegroundRgb() bool {
727	if x != nil {
728		return x.HasForegroundRgb
729	}
730	return false
731}
732
733func (x *CellStyle) GetHasBackgroundRgb() bool {
734	if x != nil {
735		return x.HasBackgroundRgb
736	}
737	return false
738}
739
740func (x *CellStyle) GetHasUnderlineColor() bool {
741	if x != nil {
742		return x.HasUnderlineColor
743	}
744	return false
745}
746
747func (x *CellStyle) GetHasUnderlineColorRgb() bool {
748	if x != nil {
749		return x.HasUnderlineColorRgb
750	}
751	return false
752}
753
754func (x *CellStyle) GetUnderlineStyle() uint32 {
755	if x != nil {
756		return x.UnderlineStyle
757	}
758	return 0
759}
760
761func (x *CellStyle) GetUnderlineColor() int32 {
762	if x != nil {
763		return x.UnderlineColor
764	}
765	return 0
766}
767
768func (x *CellStyle) GetForegroundRgb() *RGB {
769	if x != nil {
770		return x.ForegroundRgb
771	}
772	return nil
773}
774
775func (x *CellStyle) GetBackgroundRgb() *RGB {
776	if x != nil {
777		return x.BackgroundRgb
778	}
779	return nil
780}
781
782func (x *CellStyle) GetUnderlineColorRgb() *RGB {
783	if x != nil {
784		return x.UnderlineColorRgb
785	}
786	return nil
787}
788
789// PreviewCell is one styled viewport cell: rune, continuation flag, style.
790// Cell payloads beyond rune/style never travel on this wire.
791type PreviewCell struct {
792	state         protoimpl.MessageState `protogen:"open.v1"`
793	RuneValue     uint32                 `protobuf:"varint,1,opt,name=rune_value,json=runeValue,proto3" json:"rune_value,omitempty"`
794	Continuation  bool                   `protobuf:"varint,2,opt,name=continuation,proto3" json:"continuation,omitempty"`
795	Style         *CellStyle             `protobuf:"bytes,3,opt,name=style,proto3" json:"style,omitempty"`
796	unknownFields protoimpl.UnknownFields
797	sizeCache     protoimpl.SizeCache
798}
799
800func (x *PreviewCell) Reset() {
801	*x = PreviewCell{}
802	mi := &file_common_proto_msgTypes[8]
803	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
804	ms.StoreMessageInfo(mi)
805}
806
807func (x *PreviewCell) String() string {
808	return protoimpl.X.MessageStringOf(x)
809}
810
811func (*PreviewCell) ProtoMessage() {}
812
813func (x *PreviewCell) ProtoReflect() protoreflect.Message {
814	mi := &file_common_proto_msgTypes[8]
815	if x != nil {
816		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
817		if ms.LoadMessageInfo() == nil {
818			ms.StoreMessageInfo(mi)
819		}
820		return ms
821	}
822	return mi.MessageOf(x)
823}
824
825// Deprecated: Use PreviewCell.ProtoReflect.Descriptor instead.
826func (*PreviewCell) Descriptor() ([]byte, []int) {
827	return file_common_proto_rawDescGZIP(), []int{8}
828}
829
830func (x *PreviewCell) GetRuneValue() uint32 {
831	if x != nil {
832		return x.RuneValue
833	}
834	return 0
835}
836
837func (x *PreviewCell) GetContinuation() bool {
838	if x != nil {
839		return x.Continuation
840	}
841	return false
842}
843
844func (x *PreviewCell) GetStyle() *CellStyle {
845	if x != nil {
846		return x.Style
847	}
848	return nil
849}
850
851// RemoteRegistration is the exact configured identity of one monitored
852// endpoint (domain.RemoteRegistration).
853type RemoteRegistration struct {
854	state         protoimpl.MessageState `protogen:"open.v1"`
855	Endpoint      string                 `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
856	Incarnation   []byte                 `protobuf:"bytes,2,opt,name=incarnation,proto3" json:"incarnation,omitempty"` // exactly 16 bytes
857	Generation    uint64                 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"`
858	unknownFields protoimpl.UnknownFields
859	sizeCache     protoimpl.SizeCache
860}
861
862func (x *RemoteRegistration) Reset() {
863	*x = RemoteRegistration{}
864	mi := &file_common_proto_msgTypes[9]
865	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
866	ms.StoreMessageInfo(mi)
867}
868
869func (x *RemoteRegistration) String() string {
870	return protoimpl.X.MessageStringOf(x)
871}
872
873func (*RemoteRegistration) ProtoMessage() {}
874
875func (x *RemoteRegistration) ProtoReflect() protoreflect.Message {
876	mi := &file_common_proto_msgTypes[9]
877	if x != nil {
878		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
879		if ms.LoadMessageInfo() == nil {
880			ms.StoreMessageInfo(mi)
881		}
882		return ms
883	}
884	return mi.MessageOf(x)
885}
886
887// Deprecated: Use RemoteRegistration.ProtoReflect.Descriptor instead.
888func (*RemoteRegistration) Descriptor() ([]byte, []int) {
889	return file_common_proto_rawDescGZIP(), []int{9}
890}
891
892func (x *RemoteRegistration) GetEndpoint() string {
893	if x != nil {
894		return x.Endpoint
895	}
896	return ""
897}
898
899func (x *RemoteRegistration) GetIncarnation() []byte {
900	if x != nil {
901		return x.Incarnation
902	}
903	return nil
904}
905
906func (x *RemoteRegistration) GetGeneration() uint64 {
907	if x != nil {
908		return x.Generation
909	}
910	return 0
911}
912
913var File_common_proto protoreflect.FileDescriptor
914
915const file_common_proto_rawDesc = "" +
916	"\n" +
917	"\fcommon.proto\x12\vvev.wire.v1\"#\n" +
918	"\vLifecycleID\x12\x14\n" +
919	"\x05value\x18\x01 \x01(\fR\x05value\"\x9a\x01\n" +
920	"\vTabSelector\x12\x12\n" +
921	"\x04kind\x18\x01 \x01(\rR\x04kind\x12\x1b\n" +
922	"\tstable_id\x18\x02 \x01(\tR\bstableId\x12\x18\n" +
923	"\aordinal\x18\x03 \x01(\rR\aordinal\x12\x19\n" +
924	"\braw_name\x18\x04 \x01(\tR\arawName\x12%\n" +
925	"\x0eexpected_count\x18\x05 \x01(\rR\rexpectedCount\"\xa6\x02\n" +
926	"\fRemoteTarget\x12\x1a\n" +
927	"\bendpoint\x18\x01 \x01(\tR\bendpoint\x12%\n" +
928	"\x0edisplay_origin\x18\x02 \x01(\tR\rdisplayOrigin\x12;\n" +
929	"\flifecycle_id\x18\x03 \x01(\v2\x18.vev.wire.v1.LifecycleIDR\vlifecycleId\x12!\n" +
930	"\fsession_name\x18\x04 \x01(\tR\vsessionName\x12\x1e\n" +
931	"\vlive_tab_id\x18\x05 \x01(\tR\tliveTabId\x129\n" +
932	"\vstopped_tab\x18\x06 \x01(\v2\x18.vev.wire.v1.TabSelectorR\n" +
933	"stoppedTab\x12\x18\n" +
934	"\astopped\x18\a \x01(\bR\astopped\"m\n" +
935	"\vExactTarget\x12;\n" +
936	"\flifecycle_id\x18\x01 \x01(\v2\x18.vev.wire.v1.LifecycleIDR\vlifecycleId\x12!\n" +
937	"\fsession_name\x18\x02 \x01(\tR\vsessionName\"\xc5\x02\n" +
938	"\x13SessionAttachTarget\x12\x1d\n" +
939	"\n" +
940	"session_id\x18\x01 \x01(\tR\tsessionId\x12;\n" +
941	"\flifecycle_id\x18\x02 \x01(\v2\x18.vev.wire.v1.LifecycleIDR\vlifecycleId\x12!\n" +
942	"\fsession_name\x18\x03 \x01(\tR\vsessionName\x12\x15\n" +
943	"\x06tab_id\x18\x04 \x01(\tR\x05tabId\x12 \n" +
944	"\ttab_index\x18\x05 \x01(\x05H\x00R\btabIndex\x88\x01\x01\x12 \n" +
945	"\ftab_raw_name\x18\x06 \x01(\tR\n" +
946	"tabRawName\x12,\n" +
947	"\x12tab_expected_count\x18\a \x01(\rR\x10tabExpectedCount\x12\x18\n" +
948	"\astopped\x18\b \x01(\bR\astoppedB\f\n" +
949	"\n" +
950	"_tab_index\"/\n" +
951	"\x03RGB\x12\f\n" +
952	"\x01r\x18\x01 \x01(\rR\x01r\x12\f\n" +
953	"\x01g\x18\x02 \x01(\rR\x01g\x12\f\n" +
954	"\x01b\x18\x03 \x01(\rR\x01b\"q\n" +
955	"\x11ColorCapabilities\x12*\n" +
956	"\x04mode\x18\x01 \x01(\x0e2\x16.vev.wire.v1.ColorModeR\x04mode\x120\n" +
957	"\x06source\x18\x02 \x01(\x0e2\x18.vev.wire.v1.ColorSourceR\x06source\"\xf0\x04\n" +
958	"\tCellStyle\x12\x12\n" +
959	"\x04bold\x18\x01 \x01(\bR\x04bold\x12\x16\n" +
960	"\x06italic\x18\x02 \x01(\bR\x06italic\x12\x18\n" +
961	"\ainverse\x18\x03 \x01(\bR\ainverse\x12\x14\n" +
962	"\x05attrs\x18\x04 \x01(\rR\x05attrs\x12\x1e\n" +
963	"\n" +
964	"foreground\x18\x05 \x01(\x05R\n" +
965	"foreground\x12\x1e\n" +
966	"\n" +
967	"background\x18\x06 \x01(\x05R\n" +
968	"background\x12,\n" +
969	"\x12has_foreground_rgb\x18\a \x01(\bR\x10hasForegroundRgb\x12,\n" +
970	"\x12has_background_rgb\x18\b \x01(\bR\x10hasBackgroundRgb\x12.\n" +
971	"\x13has_underline_color\x18\t \x01(\bR\x11hasUnderlineColor\x125\n" +
972	"\x17has_underline_color_rgb\x18\n" +
973	" \x01(\bR\x14hasUnderlineColorRgb\x12'\n" +
974	"\x0funderline_style\x18\v \x01(\rR\x0eunderlineStyle\x12'\n" +
975	"\x0funderline_color\x18\f \x01(\x05R\x0eunderlineColor\x127\n" +
976	"\x0eforeground_rgb\x18\r \x01(\v2\x10.vev.wire.v1.RGBR\rforegroundRgb\x127\n" +
977	"\x0ebackground_rgb\x18\x0e \x01(\v2\x10.vev.wire.v1.RGBR\rbackgroundRgb\x12@\n" +
978	"\x13underline_color_rgb\x18\x0f \x01(\v2\x10.vev.wire.v1.RGBR\x11underlineColorRgb\"~\n" +
979	"\vPreviewCell\x12\x1d\n" +
980	"\n" +
981	"rune_value\x18\x01 \x01(\rR\truneValue\x12\"\n" +
982	"\fcontinuation\x18\x02 \x01(\bR\fcontinuation\x12,\n" +
983	"\x05style\x18\x03 \x01(\v2\x16.vev.wire.v1.CellStyleR\x05style\"r\n" +
984	"\x12RemoteRegistration\x12\x1a\n" +
985	"\bendpoint\x18\x01 \x01(\tR\bendpoint\x12 \n" +
986	"\vincarnation\x18\x02 \x01(\fR\vincarnation\x12\x1e\n" +
987	"\n" +
988	"generation\x18\x03 \x01(\x04R\n" +
989	"generation*\x8c\x01\n" +
990	"\tColorMode\x12\x1a\n" +
991	"\x16COLOR_MODE_UNSPECIFIED\x10\x00\x12\x19\n" +
992	"\x15COLOR_MODE_TRUE_COLOR\x10\x01\x12\x16\n" +
993	"\x12COLOR_MODE_ANSI256\x10\x02\x12\x15\n" +
994	"\x11COLOR_MODE_ANSI16\x10\x03\x12\x19\n" +
995	"\x15COLOR_MODE_MONOCHROME\x10\x04*{\n" +
996	"\vColorSource\x12\x1c\n" +
997	"\x18COLOR_SOURCE_UNSPECIFIED\x10\x00\x12\x1a\n" +
998	"\x16COLOR_SOURCE_HEURISTIC\x10\x01\x12\x19\n" +
999	"\x15COLOR_SOURCE_DECLARED\x10\x02\x12\x17\n" +
1000	"\x13COLOR_SOURCE_FORCED\x10\x03B-Z+github.com/bnema/vev/internal/protocol/wireb\x06proto3"
1001
1002var (
1003	file_common_proto_rawDescOnce sync.Once
1004	file_common_proto_rawDescData []byte
1005)
1006
1007func file_common_proto_rawDescGZIP() []byte {
1008	file_common_proto_rawDescOnce.Do(func() {
1009		file_common_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_common_proto_rawDesc), len(file_common_proto_rawDesc)))
1010	})
1011	return file_common_proto_rawDescData
1012}
1013
1014var file_common_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
1015var file_common_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
1016var file_common_proto_goTypes = []any{
1017	(ColorMode)(0),              // 0: vev.wire.v1.ColorMode
1018	(ColorSource)(0),            // 1: vev.wire.v1.ColorSource
1019	(*LifecycleID)(nil),         // 2: vev.wire.v1.LifecycleID
1020	(*TabSelector)(nil),         // 3: vev.wire.v1.TabSelector
1021	(*RemoteTarget)(nil),        // 4: vev.wire.v1.RemoteTarget
1022	(*ExactTarget)(nil),         // 5: vev.wire.v1.ExactTarget
1023	(*SessionAttachTarget)(nil), // 6: vev.wire.v1.SessionAttachTarget
1024	(*RGB)(nil),                 // 7: vev.wire.v1.RGB
1025	(*ColorCapabilities)(nil),   // 8: vev.wire.v1.ColorCapabilities
1026	(*CellStyle)(nil),           // 9: vev.wire.v1.CellStyle
1027	(*PreviewCell)(nil),         // 10: vev.wire.v1.PreviewCell
1028	(*RemoteRegistration)(nil),  // 11: vev.wire.v1.RemoteRegistration
1029}
1030var file_common_proto_depIdxs = []int32{
1031	2,  // 0: vev.wire.v1.RemoteTarget.lifecycle_id:type_name -> vev.wire.v1.LifecycleID
1032	3,  // 1: vev.wire.v1.RemoteTarget.stopped_tab:type_name -> vev.wire.v1.TabSelector
1033	2,  // 2: vev.wire.v1.ExactTarget.lifecycle_id:type_name -> vev.wire.v1.LifecycleID
1034	2,  // 3: vev.wire.v1.SessionAttachTarget.lifecycle_id:type_name -> vev.wire.v1.LifecycleID
1035	0,  // 4: vev.wire.v1.ColorCapabilities.mode:type_name -> vev.wire.v1.ColorMode
1036	1,  // 5: vev.wire.v1.ColorCapabilities.source:type_name -> vev.wire.v1.ColorSource
1037	7,  // 6: vev.wire.v1.CellStyle.foreground_rgb:type_name -> vev.wire.v1.RGB
1038	7,  // 7: vev.wire.v1.CellStyle.background_rgb:type_name -> vev.wire.v1.RGB
1039	7,  // 8: vev.wire.v1.CellStyle.underline_color_rgb:type_name -> vev.wire.v1.RGB
1040	9,  // 9: vev.wire.v1.PreviewCell.style:type_name -> vev.wire.v1.CellStyle
1041	10, // [10:10] is the sub-list for method output_type
1042	10, // [10:10] is the sub-list for method input_type
1043	10, // [10:10] is the sub-list for extension type_name
1044	10, // [10:10] is the sub-list for extension extendee
1045	0,  // [0:10] is the sub-list for field type_name
1046}
1047
1048func init() { file_common_proto_init() }
1049func file_common_proto_init() {
1050	if File_common_proto != nil {
1051		return
1052	}
1053	file_common_proto_msgTypes[4].OneofWrappers = []any{}
1054	type x struct{}
1055	out := protoimpl.TypeBuilder{
1056		File: protoimpl.DescBuilder{
1057			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1058			RawDescriptor: unsafe.Slice(unsafe.StringData(file_common_proto_rawDesc), len(file_common_proto_rawDesc)),
1059			NumEnums:      2,
1060			NumMessages:   10,
1061			NumExtensions: 0,
1062			NumServices:   0,
1063		},
1064		GoTypes:           file_common_proto_goTypes,
1065		DependencyIndexes: file_common_proto_depIdxs,
1066		EnumInfos:         file_common_proto_enumTypes,
1067		MessageInfos:      file_common_proto_msgTypes,
1068	}.Build()
1069	File_common_proto = out.File
1070	file_common_proto_goTypes = nil
1071	file_common_proto_depIdxs = nil
1072}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 12

Tags 11

↑↓ moveenter openesc close