Add GetSteamAuthURL/ExchangeSteamLogin (OpenID 2.0) and GetVKOAuthURL/ExchangeVKCode (OAuth 2.0) RPCs with corresponding request message types. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1004 lines
31 KiB
Go
1004 lines
31 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.36.11
|
|
// protoc v7.34.0
|
|
// source: auth.proto
|
|
|
|
package proto
|
|
|
|
import (
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
unsafe "unsafe"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
// TelegramTokenRequest contains the id_token JWT from the new Telegram Login
|
|
type TelegramTokenRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
IdToken string `protobuf:"bytes,1,opt,name=id_token,json=idToken,proto3" json:"id_token,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *TelegramTokenRequest) Reset() {
|
|
*x = TelegramTokenRequest{}
|
|
mi := &file_auth_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *TelegramTokenRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*TelegramTokenRequest) ProtoMessage() {}
|
|
|
|
func (x *TelegramTokenRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[0]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use TelegramTokenRequest.ProtoReflect.Descriptor instead.
|
|
func (*TelegramTokenRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *TelegramTokenRequest) GetIdToken() string {
|
|
if x != nil {
|
|
return x.IdToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// TelegramAuthRequest contains the data sent by the Telegram Login Widget
|
|
type TelegramAuthRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
FirstName string `protobuf:"bytes,2,opt,name=first_name,json=firstName,proto3" json:"first_name,omitempty"`
|
|
LastName string `protobuf:"bytes,3,opt,name=last_name,json=lastName,proto3" json:"last_name,omitempty"`
|
|
Username string `protobuf:"bytes,4,opt,name=username,proto3" json:"username,omitempty"`
|
|
PhotoUrl string `protobuf:"bytes,5,opt,name=photo_url,json=photoUrl,proto3" json:"photo_url,omitempty"`
|
|
AuthDate int64 `protobuf:"varint,6,opt,name=auth_date,json=authDate,proto3" json:"auth_date,omitempty"`
|
|
Hash string `protobuf:"bytes,7,opt,name=hash,proto3" json:"hash,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) Reset() {
|
|
*x = TelegramAuthRequest{}
|
|
mi := &file_auth_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*TelegramAuthRequest) ProtoMessage() {}
|
|
|
|
func (x *TelegramAuthRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[1]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use TelegramAuthRequest.ProtoReflect.Descriptor instead.
|
|
func (*TelegramAuthRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetId() int64 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetFirstName() string {
|
|
if x != nil {
|
|
return x.FirstName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetLastName() string {
|
|
if x != nil {
|
|
return x.LastName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetUsername() string {
|
|
if x != nil {
|
|
return x.Username
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetPhotoUrl() string {
|
|
if x != nil {
|
|
return x.PhotoUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetAuthDate() int64 {
|
|
if x != nil {
|
|
return x.AuthDate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *TelegramAuthRequest) GetHash() string {
|
|
if x != nil {
|
|
return x.Hash
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// GetDiscordOAuthURLRequest — caller provides the redirect_uri for their service
|
|
type GetDiscordOAuthURLRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
RedirectUri string `protobuf:"bytes,1,opt,name=redirect_uri,json=redirectUri,proto3" json:"redirect_uri,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *GetDiscordOAuthURLRequest) Reset() {
|
|
*x = GetDiscordOAuthURLRequest{}
|
|
mi := &file_auth_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *GetDiscordOAuthURLRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*GetDiscordOAuthURLRequest) ProtoMessage() {}
|
|
|
|
func (x *GetDiscordOAuthURLRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[2]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use GetDiscordOAuthURLRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetDiscordOAuthURLRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *GetDiscordOAuthURLRequest) GetRedirectUri() string {
|
|
if x != nil {
|
|
return x.RedirectUri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// OAuthURLResponse returns the full OAuth redirect URL including state
|
|
type OAuthURLResponse struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
|
|
State string `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *OAuthURLResponse) Reset() {
|
|
*x = OAuthURLResponse{}
|
|
mi := &file_auth_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *OAuthURLResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*OAuthURLResponse) ProtoMessage() {}
|
|
|
|
func (x *OAuthURLResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[3]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use OAuthURLResponse.ProtoReflect.Descriptor instead.
|
|
func (*OAuthURLResponse) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *OAuthURLResponse) GetUrl() string {
|
|
if x != nil {
|
|
return x.Url
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *OAuthURLResponse) GetState() string {
|
|
if x != nil {
|
|
return x.State
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// DiscordExchangeRequest — exchange code received in Discord callback
|
|
type DiscordExchangeRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`
|
|
State string `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
|
|
RedirectUri string `protobuf:"bytes,3,opt,name=redirect_uri,json=redirectUri,proto3" json:"redirect_uri,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DiscordExchangeRequest) Reset() {
|
|
*x = DiscordExchangeRequest{}
|
|
mi := &file_auth_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DiscordExchangeRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DiscordExchangeRequest) ProtoMessage() {}
|
|
|
|
func (x *DiscordExchangeRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[4]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DiscordExchangeRequest.ProtoReflect.Descriptor instead.
|
|
func (*DiscordExchangeRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *DiscordExchangeRequest) GetCode() string {
|
|
if x != nil {
|
|
return x.Code
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DiscordExchangeRequest) GetState() string {
|
|
if x != nil {
|
|
return x.State
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DiscordExchangeRequest) GetRedirectUri() string {
|
|
if x != nil {
|
|
return x.RedirectUri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// GetSteamAuthURLRequest — caller provides the redirect_uri for their service
|
|
type GetSteamAuthURLRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
RedirectUri string `protobuf:"bytes,1,opt,name=redirect_uri,json=redirectUri,proto3" json:"redirect_uri,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *GetSteamAuthURLRequest) Reset() {
|
|
*x = GetSteamAuthURLRequest{}
|
|
mi := &file_auth_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *GetSteamAuthURLRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*GetSteamAuthURLRequest) ProtoMessage() {}
|
|
|
|
func (x *GetSteamAuthURLRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[5]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use GetSteamAuthURLRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetSteamAuthURLRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *GetSteamAuthURLRequest) GetRedirectUri() string {
|
|
if x != nil {
|
|
return x.RedirectUri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// SteamExchangeRequest — all OpenID 2.0 params received in the Steam callback
|
|
type SteamExchangeRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
State string `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"`
|
|
OpenidParams map[string]string `protobuf:"bytes,2,rep,name=openid_params,json=openidParams,proto3" json:"openid_params,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *SteamExchangeRequest) Reset() {
|
|
*x = SteamExchangeRequest{}
|
|
mi := &file_auth_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *SteamExchangeRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SteamExchangeRequest) ProtoMessage() {}
|
|
|
|
func (x *SteamExchangeRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[6]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SteamExchangeRequest.ProtoReflect.Descriptor instead.
|
|
func (*SteamExchangeRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *SteamExchangeRequest) GetState() string {
|
|
if x != nil {
|
|
return x.State
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *SteamExchangeRequest) GetOpenidParams() map[string]string {
|
|
if x != nil {
|
|
return x.OpenidParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// GetVKOAuthURLRequest — caller provides the redirect_uri for their service
|
|
type GetVKOAuthURLRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
RedirectUri string `protobuf:"bytes,1,opt,name=redirect_uri,json=redirectUri,proto3" json:"redirect_uri,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *GetVKOAuthURLRequest) Reset() {
|
|
*x = GetVKOAuthURLRequest{}
|
|
mi := &file_auth_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *GetVKOAuthURLRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*GetVKOAuthURLRequest) ProtoMessage() {}
|
|
|
|
func (x *GetVKOAuthURLRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[7]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use GetVKOAuthURLRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetVKOAuthURLRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *GetVKOAuthURLRequest) GetRedirectUri() string {
|
|
if x != nil {
|
|
return x.RedirectUri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// VKExchangeRequest — exchange code received in VK callback
|
|
type VKExchangeRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`
|
|
State string `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
|
|
RedirectUri string `protobuf:"bytes,3,opt,name=redirect_uri,json=redirectUri,proto3" json:"redirect_uri,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *VKExchangeRequest) Reset() {
|
|
*x = VKExchangeRequest{}
|
|
mi := &file_auth_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *VKExchangeRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*VKExchangeRequest) ProtoMessage() {}
|
|
|
|
func (x *VKExchangeRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[8]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use VKExchangeRequest.ProtoReflect.Descriptor instead.
|
|
func (*VKExchangeRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *VKExchangeRequest) GetCode() string {
|
|
if x != nil {
|
|
return x.Code
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *VKExchangeRequest) GetState() string {
|
|
if x != nil {
|
|
return x.State
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *VKExchangeRequest) GetRedirectUri() string {
|
|
if x != nil {
|
|
return x.RedirectUri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// AuthResponse is returned after successful authentication
|
|
type AuthResponse struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
AccessToken string `protobuf:"bytes,1,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
|
|
RefreshToken string `protobuf:"bytes,2,opt,name=refresh_token,json=refreshToken,proto3" json:"refresh_token,omitempty"`
|
|
GlobalUserId int64 `protobuf:"varint,3,opt,name=global_user_id,json=globalUserId,proto3" json:"global_user_id,omitempty"`
|
|
DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
|
|
ExpiresAt int64 `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"` // unix timestamp of access token expiry
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *AuthResponse) Reset() {
|
|
*x = AuthResponse{}
|
|
mi := &file_auth_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *AuthResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AuthResponse) ProtoMessage() {}
|
|
|
|
func (x *AuthResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[9]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AuthResponse.ProtoReflect.Descriptor instead.
|
|
func (*AuthResponse) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *AuthResponse) GetAccessToken() string {
|
|
if x != nil {
|
|
return x.AccessToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthResponse) GetRefreshToken() string {
|
|
if x != nil {
|
|
return x.RefreshToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthResponse) GetGlobalUserId() int64 {
|
|
if x != nil {
|
|
return x.GlobalUserId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AuthResponse) GetDisplayName() string {
|
|
if x != nil {
|
|
return x.DisplayName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthResponse) GetExpiresAt() int64 {
|
|
if x != nil {
|
|
return x.ExpiresAt
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type RefreshTokenRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
RefreshToken string `protobuf:"bytes,1,opt,name=refresh_token,json=refreshToken,proto3" json:"refresh_token,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *RefreshTokenRequest) Reset() {
|
|
*x = RefreshTokenRequest{}
|
|
mi := &file_auth_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *RefreshTokenRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RefreshTokenRequest) ProtoMessage() {}
|
|
|
|
func (x *RefreshTokenRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[10]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RefreshTokenRequest.ProtoReflect.Descriptor instead.
|
|
func (*RefreshTokenRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (x *RefreshTokenRequest) GetRefreshToken() string {
|
|
if x != nil {
|
|
return x.RefreshToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type RevokeTokenRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *RevokeTokenRequest) Reset() {
|
|
*x = RevokeTokenRequest{}
|
|
mi := &file_auth_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *RevokeTokenRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RevokeTokenRequest) ProtoMessage() {}
|
|
|
|
func (x *RevokeTokenRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[11]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RevokeTokenRequest.ProtoReflect.Descriptor instead.
|
|
func (*RevokeTokenRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *RevokeTokenRequest) GetToken() string {
|
|
if x != nil {
|
|
return x.Token
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type RevokeTokenResponse struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *RevokeTokenResponse) Reset() {
|
|
*x = RevokeTokenResponse{}
|
|
mi := &file_auth_proto_msgTypes[12]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *RevokeTokenResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RevokeTokenResponse) ProtoMessage() {}
|
|
|
|
func (x *RevokeTokenResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[12]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RevokeTokenResponse.ProtoReflect.Descriptor instead.
|
|
func (*RevokeTokenResponse) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
func (x *RevokeTokenResponse) GetSuccess() bool {
|
|
if x != nil {
|
|
return x.Success
|
|
}
|
|
return false
|
|
}
|
|
|
|
type ValidateTokenRequest struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *ValidateTokenRequest) Reset() {
|
|
*x = ValidateTokenRequest{}
|
|
mi := &file_auth_proto_msgTypes[13]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *ValidateTokenRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ValidateTokenRequest) ProtoMessage() {}
|
|
|
|
func (x *ValidateTokenRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[13]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ValidateTokenRequest.ProtoReflect.Descriptor instead.
|
|
func (*ValidateTokenRequest) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
func (x *ValidateTokenRequest) GetToken() string {
|
|
if x != nil {
|
|
return x.Token
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type ValidateTokenResponse struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Valid bool `protobuf:"varint,1,opt,name=valid,proto3" json:"valid,omitempty"`
|
|
GlobalUserId int64 `protobuf:"varint,2,opt,name=global_user_id,json=globalUserId,proto3" json:"global_user_id,omitempty"`
|
|
DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
|
|
LinkedPlatforms []string `protobuf:"bytes,4,rep,name=linked_platforms,json=linkedPlatforms,proto3" json:"linked_platforms,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *ValidateTokenResponse) Reset() {
|
|
*x = ValidateTokenResponse{}
|
|
mi := &file_auth_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *ValidateTokenResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ValidateTokenResponse) ProtoMessage() {}
|
|
|
|
func (x *ValidateTokenResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_auth_proto_msgTypes[14]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ValidateTokenResponse.ProtoReflect.Descriptor instead.
|
|
func (*ValidateTokenResponse) Descriptor() ([]byte, []int) {
|
|
return file_auth_proto_rawDescGZIP(), []int{14}
|
|
}
|
|
|
|
func (x *ValidateTokenResponse) GetValid() bool {
|
|
if x != nil {
|
|
return x.Valid
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ValidateTokenResponse) GetGlobalUserId() int64 {
|
|
if x != nil {
|
|
return x.GlobalUserId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ValidateTokenResponse) GetDisplayName() string {
|
|
if x != nil {
|
|
return x.DisplayName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ValidateTokenResponse) GetLinkedPlatforms() []string {
|
|
if x != nil {
|
|
return x.LinkedPlatforms
|
|
}
|
|
return nil
|
|
}
|
|
|
|
var File_auth_proto protoreflect.FileDescriptor
|
|
|
|
const file_auth_proto_rawDesc = "" +
|
|
"\n" +
|
|
"\n" +
|
|
"auth.proto\x12\x04auth\"1\n" +
|
|
"\x14TelegramTokenRequest\x12\x19\n" +
|
|
"\bid_token\x18\x01 \x01(\tR\aidToken\"\xcb\x01\n" +
|
|
"\x13TelegramAuthRequest\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1d\n" +
|
|
"\n" +
|
|
"first_name\x18\x02 \x01(\tR\tfirstName\x12\x1b\n" +
|
|
"\tlast_name\x18\x03 \x01(\tR\blastName\x12\x1a\n" +
|
|
"\busername\x18\x04 \x01(\tR\busername\x12\x1b\n" +
|
|
"\tphoto_url\x18\x05 \x01(\tR\bphotoUrl\x12\x1b\n" +
|
|
"\tauth_date\x18\x06 \x01(\x03R\bauthDate\x12\x12\n" +
|
|
"\x04hash\x18\a \x01(\tR\x04hash\">\n" +
|
|
"\x19GetDiscordOAuthURLRequest\x12!\n" +
|
|
"\fredirect_uri\x18\x01 \x01(\tR\vredirectUri\":\n" +
|
|
"\x10OAuthURLResponse\x12\x10\n" +
|
|
"\x03url\x18\x01 \x01(\tR\x03url\x12\x14\n" +
|
|
"\x05state\x18\x02 \x01(\tR\x05state\"e\n" +
|
|
"\x16DiscordExchangeRequest\x12\x12\n" +
|
|
"\x04code\x18\x01 \x01(\tR\x04code\x12\x14\n" +
|
|
"\x05state\x18\x02 \x01(\tR\x05state\x12!\n" +
|
|
"\fredirect_uri\x18\x03 \x01(\tR\vredirectUri\";\n" +
|
|
"\x16GetSteamAuthURLRequest\x12!\n" +
|
|
"\fredirect_uri\x18\x01 \x01(\tR\vredirectUri\"\xc0\x01\n" +
|
|
"\x14SteamExchangeRequest\x12\x14\n" +
|
|
"\x05state\x18\x01 \x01(\tR\x05state\x12Q\n" +
|
|
"\ropenid_params\x18\x02 \x03(\v2,.auth.SteamExchangeRequest.OpenidParamsEntryR\fopenidParams\x1a?\n" +
|
|
"\x11OpenidParamsEntry\x12\x10\n" +
|
|
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
|
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"9\n" +
|
|
"\x14GetVKOAuthURLRequest\x12!\n" +
|
|
"\fredirect_uri\x18\x01 \x01(\tR\vredirectUri\"`\n" +
|
|
"\x11VKExchangeRequest\x12\x12\n" +
|
|
"\x04code\x18\x01 \x01(\tR\x04code\x12\x14\n" +
|
|
"\x05state\x18\x02 \x01(\tR\x05state\x12!\n" +
|
|
"\fredirect_uri\x18\x03 \x01(\tR\vredirectUri\"\xbe\x01\n" +
|
|
"\fAuthResponse\x12!\n" +
|
|
"\faccess_token\x18\x01 \x01(\tR\vaccessToken\x12#\n" +
|
|
"\rrefresh_token\x18\x02 \x01(\tR\frefreshToken\x12$\n" +
|
|
"\x0eglobal_user_id\x18\x03 \x01(\x03R\fglobalUserId\x12!\n" +
|
|
"\fdisplay_name\x18\x04 \x01(\tR\vdisplayName\x12\x1d\n" +
|
|
"\n" +
|
|
"expires_at\x18\x05 \x01(\x03R\texpiresAt\":\n" +
|
|
"\x13RefreshTokenRequest\x12#\n" +
|
|
"\rrefresh_token\x18\x01 \x01(\tR\frefreshToken\"*\n" +
|
|
"\x12RevokeTokenRequest\x12\x14\n" +
|
|
"\x05token\x18\x01 \x01(\tR\x05token\"/\n" +
|
|
"\x13RevokeTokenResponse\x12\x18\n" +
|
|
"\asuccess\x18\x01 \x01(\bR\asuccess\",\n" +
|
|
"\x14ValidateTokenRequest\x12\x14\n" +
|
|
"\x05token\x18\x01 \x01(\tR\x05token\"\xa1\x01\n" +
|
|
"\x15ValidateTokenResponse\x12\x14\n" +
|
|
"\x05valid\x18\x01 \x01(\bR\x05valid\x12$\n" +
|
|
"\x0eglobal_user_id\x18\x02 \x01(\x03R\fglobalUserId\x12!\n" +
|
|
"\fdisplay_name\x18\x03 \x01(\tR\vdisplayName\x12)\n" +
|
|
"\x10linked_platforms\x18\x04 \x03(\tR\x0flinkedPlatforms2\x91\x06\n" +
|
|
"\vAuthService\x12A\n" +
|
|
"\x10AuthWithTelegram\x12\x19.auth.TelegramAuthRequest\x1a\x12.auth.AuthResponse\x12G\n" +
|
|
"\x15AuthWithTelegramToken\x12\x1a.auth.TelegramTokenRequest\x1a\x12.auth.AuthResponse\x12M\n" +
|
|
"\x12GetDiscordOAuthURL\x12\x1f.auth.GetDiscordOAuthURLRequest\x1a\x16.auth.OAuthURLResponse\x12G\n" +
|
|
"\x13ExchangeDiscordCode\x12\x1c.auth.DiscordExchangeRequest\x1a\x12.auth.AuthResponse\x12G\n" +
|
|
"\x0fGetSteamAuthURL\x12\x1c.auth.GetSteamAuthURLRequest\x1a\x16.auth.OAuthURLResponse\x12D\n" +
|
|
"\x12ExchangeSteamLogin\x12\x1a.auth.SteamExchangeRequest\x1a\x12.auth.AuthResponse\x12C\n" +
|
|
"\rGetVKOAuthURL\x12\x1a.auth.GetVKOAuthURLRequest\x1a\x16.auth.OAuthURLResponse\x12=\n" +
|
|
"\x0eExchangeVKCode\x12\x17.auth.VKExchangeRequest\x1a\x12.auth.AuthResponse\x12=\n" +
|
|
"\fRefreshToken\x12\x19.auth.RefreshTokenRequest\x1a\x12.auth.AuthResponse\x12B\n" +
|
|
"\vRevokeToken\x12\x18.auth.RevokeTokenRequest\x1a\x19.auth.RevokeTokenResponse\x12H\n" +
|
|
"\rValidateToken\x12\x1a.auth.ValidateTokenRequest\x1a\x1b.auth.ValidateTokenResponseB(Z&ai_service/proto/l-ai-core-proto;protob\x06proto3"
|
|
|
|
var (
|
|
file_auth_proto_rawDescOnce sync.Once
|
|
file_auth_proto_rawDescData []byte
|
|
)
|
|
|
|
func file_auth_proto_rawDescGZIP() []byte {
|
|
file_auth_proto_rawDescOnce.Do(func() {
|
|
file_auth_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_auth_proto_rawDesc), len(file_auth_proto_rawDesc)))
|
|
})
|
|
return file_auth_proto_rawDescData
|
|
}
|
|
|
|
var file_auth_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
|
|
var file_auth_proto_goTypes = []any{
|
|
(*TelegramTokenRequest)(nil), // 0: auth.TelegramTokenRequest
|
|
(*TelegramAuthRequest)(nil), // 1: auth.TelegramAuthRequest
|
|
(*GetDiscordOAuthURLRequest)(nil), // 2: auth.GetDiscordOAuthURLRequest
|
|
(*OAuthURLResponse)(nil), // 3: auth.OAuthURLResponse
|
|
(*DiscordExchangeRequest)(nil), // 4: auth.DiscordExchangeRequest
|
|
(*GetSteamAuthURLRequest)(nil), // 5: auth.GetSteamAuthURLRequest
|
|
(*SteamExchangeRequest)(nil), // 6: auth.SteamExchangeRequest
|
|
(*GetVKOAuthURLRequest)(nil), // 7: auth.GetVKOAuthURLRequest
|
|
(*VKExchangeRequest)(nil), // 8: auth.VKExchangeRequest
|
|
(*AuthResponse)(nil), // 9: auth.AuthResponse
|
|
(*RefreshTokenRequest)(nil), // 10: auth.RefreshTokenRequest
|
|
(*RevokeTokenRequest)(nil), // 11: auth.RevokeTokenRequest
|
|
(*RevokeTokenResponse)(nil), // 12: auth.RevokeTokenResponse
|
|
(*ValidateTokenRequest)(nil), // 13: auth.ValidateTokenRequest
|
|
(*ValidateTokenResponse)(nil), // 14: auth.ValidateTokenResponse
|
|
nil, // 15: auth.SteamExchangeRequest.OpenidParamsEntry
|
|
}
|
|
var file_auth_proto_depIdxs = []int32{
|
|
15, // 0: auth.SteamExchangeRequest.openid_params:type_name -> auth.SteamExchangeRequest.OpenidParamsEntry
|
|
1, // 1: auth.AuthService.AuthWithTelegram:input_type -> auth.TelegramAuthRequest
|
|
0, // 2: auth.AuthService.AuthWithTelegramToken:input_type -> auth.TelegramTokenRequest
|
|
2, // 3: auth.AuthService.GetDiscordOAuthURL:input_type -> auth.GetDiscordOAuthURLRequest
|
|
4, // 4: auth.AuthService.ExchangeDiscordCode:input_type -> auth.DiscordExchangeRequest
|
|
5, // 5: auth.AuthService.GetSteamAuthURL:input_type -> auth.GetSteamAuthURLRequest
|
|
6, // 6: auth.AuthService.ExchangeSteamLogin:input_type -> auth.SteamExchangeRequest
|
|
7, // 7: auth.AuthService.GetVKOAuthURL:input_type -> auth.GetVKOAuthURLRequest
|
|
8, // 8: auth.AuthService.ExchangeVKCode:input_type -> auth.VKExchangeRequest
|
|
10, // 9: auth.AuthService.RefreshToken:input_type -> auth.RefreshTokenRequest
|
|
11, // 10: auth.AuthService.RevokeToken:input_type -> auth.RevokeTokenRequest
|
|
13, // 11: auth.AuthService.ValidateToken:input_type -> auth.ValidateTokenRequest
|
|
9, // 12: auth.AuthService.AuthWithTelegram:output_type -> auth.AuthResponse
|
|
9, // 13: auth.AuthService.AuthWithTelegramToken:output_type -> auth.AuthResponse
|
|
3, // 14: auth.AuthService.GetDiscordOAuthURL:output_type -> auth.OAuthURLResponse
|
|
9, // 15: auth.AuthService.ExchangeDiscordCode:output_type -> auth.AuthResponse
|
|
3, // 16: auth.AuthService.GetSteamAuthURL:output_type -> auth.OAuthURLResponse
|
|
9, // 17: auth.AuthService.ExchangeSteamLogin:output_type -> auth.AuthResponse
|
|
3, // 18: auth.AuthService.GetVKOAuthURL:output_type -> auth.OAuthURLResponse
|
|
9, // 19: auth.AuthService.ExchangeVKCode:output_type -> auth.AuthResponse
|
|
9, // 20: auth.AuthService.RefreshToken:output_type -> auth.AuthResponse
|
|
12, // 21: auth.AuthService.RevokeToken:output_type -> auth.RevokeTokenResponse
|
|
14, // 22: auth.AuthService.ValidateToken:output_type -> auth.ValidateTokenResponse
|
|
12, // [12:23] is the sub-list for method output_type
|
|
1, // [1:12] is the sub-list for method input_type
|
|
1, // [1:1] is the sub-list for extension type_name
|
|
1, // [1:1] is the sub-list for extension extendee
|
|
0, // [0:1] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_auth_proto_init() }
|
|
func file_auth_proto_init() {
|
|
if File_auth_proto != nil {
|
|
return
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: unsafe.Slice(unsafe.StringData(file_auth_proto_rawDesc), len(file_auth_proto_rawDesc)),
|
|
NumEnums: 0,
|
|
NumMessages: 16,
|
|
NumExtensions: 0,
|
|
NumServices: 1,
|
|
},
|
|
GoTypes: file_auth_proto_goTypes,
|
|
DependencyIndexes: file_auth_proto_depIdxs,
|
|
MessageInfos: file_auth_proto_msgTypes,
|
|
}.Build()
|
|
File_auth_proto = out.File
|
|
file_auth_proto_goTypes = nil
|
|
file_auth_proto_depIdxs = nil
|
|
}
|