Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
eb251a09
Commit
eb251a09
authored
Apr 10, 2024
by
Steven
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: update workspace setting service
parent
4c47e93f
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
737 additions
and
117 deletions
+737
-117
workspace_setting_service.proto
proto/api/v2/workspace_setting_service.proto
+35
-1
README.md
proto/gen/api/v2/README.md
+71
-1
workspace_setting_service.pb.go
proto/gen/api/v2/workspace_setting_service.pb.go
+446
-76
README.md
proto/gen/store/README.md
+1
-1
workspace_setting.pb.go
proto/gen/store/workspace_setting.pb.go
+29
-30
workspace_setting.proto
proto/store/workspace_setting.proto
+2
-2
apidocs.swagger.yaml
server/route/api/v2/apidocs.swagger.yaml
+54
-2
workspace_setting_service.go
server/route/api/v2/workspace_setting_service.go
+99
-4
No files found.
proto/api/v2/workspace_setting_service.proto
View file @
eb251a09
...
...
@@ -48,8 +48,10 @@ message WorkspaceSetting {
// Format: settings/{setting}
string
name
=
1
;
oneof
value
{
// general_setting is the general setting of workspace.
WorkspaceGeneralSetting
general_setting
=
2
;
WorkspaceStorageSetting
storage_setting
=
3
;
WorkspaceMemoRelatedSetting
memo_related_setting
=
4
;
WorkspaceTelegramIntegrationSetting
telegram_integration_setting
=
5
;
}
}
...
...
@@ -65,3 +67,35 @@ message WorkspaceGeneralSetting {
// additional_style is the additional style.
string
additional_style
=
6
;
}
message
WorkspaceStorageSetting
{
// storage_type is the storage type.
StorageType
storage_type
=
1
;
// The local storage path for STORAGE_TYPE_LOCAL.
// e.g. assets/{timestamp}_{filename}
string
local_storage_path
=
2
;
// The max upload size in megabytes.
int64
upload_size_limit_mb
=
3
;
enum
StorageType
{
STORAGE_TYPE_UNSPECIFIED
=
0
;
// STORAGE_TYPE_DATABASE is the database storage type.
STORAGE_TYPE_DATABASE
=
1
;
// STORAGE_TYPE_LOCAL is the local storage type.
STORAGE_TYPE_LOCAL
=
2
;
// STORAGE_TYPE_EXTERNAL is the external storage type.
STORAGE_TYPE_EXTERNAL
=
3
;
}
}
message
WorkspaceMemoRelatedSetting
{
// disallow_public_share disallows set memo as public visible.
bool
disallow_public_visible
=
1
;
// display_with_update_time orders and displays memo with update time.
bool
display_with_update_time
=
2
;
}
message
WorkspaceTelegramIntegrationSetting
{
// bot_token is the telegram bot token.
string
bot_token
=
1
;
}
proto/gen/api/v2/README.md
View file @
eb251a09
...
...
@@ -218,7 +218,12 @@
-
[
SetWorkspaceSettingRequest
](
#memos-api-v2-SetWorkspaceSettingRequest
)
-
[
SetWorkspaceSettingResponse
](
#memos-api-v2-SetWorkspaceSettingResponse
)
-
[
WorkspaceGeneralSetting
](
#memos-api-v2-WorkspaceGeneralSetting
)
-
[
WorkspaceMemoRelatedSetting
](
#memos-api-v2-WorkspaceMemoRelatedSetting
)
-
[
WorkspaceSetting
](
#memos-api-v2-WorkspaceSetting
)
-
[
WorkspaceStorageSetting
](
#memos-api-v2-WorkspaceStorageSetting
)
-
[
WorkspaceTelegramIntegrationSetting
](
#memos-api-v2-WorkspaceTelegramIntegrationSetting
)
-
[
WorkspaceStorageSetting.StorageType
](
#memos-api-v2-WorkspaceStorageSetting-StorageType
)
-
[
WorkspaceSettingService
](
#memos-api-v2-WorkspaceSettingService
)
...
...
@@ -2992,6 +2997,22 @@ Used internally for obfuscating the page token.
<a
name=
"memos-api-v2-WorkspaceMemoRelatedSetting"
></a>
### WorkspaceMemoRelatedSetting
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| disallow_public_visible |
[
bool
](
#bool
)
| | disallow_public_share disallows set memo as public visible. |
| display_with_update_time |
[
bool
](
#bool
)
| | display_with_update_time orders and displays memo with update time. |
<a
name=
"memos-api-v2-WorkspaceSetting"
></a>
### WorkspaceSetting
...
...
@@ -3001,7 +3022,42 @@ Used internally for obfuscating the page token.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| name |
[
string
](
#string
)
| | name is the name of the setting. Format: settings/{setting} |
| general_setting |
[
WorkspaceGeneralSetting
](
#memos-api-v2-WorkspaceGeneralSetting
)
| | general_setting is the general setting of workspace. |
| general_setting |
[
WorkspaceGeneralSetting
](
#memos-api-v2-WorkspaceGeneralSetting
)
| | |
| storage_setting |
[
WorkspaceStorageSetting
](
#memos-api-v2-WorkspaceStorageSetting
)
| | |
| memo_related_setting |
[
WorkspaceMemoRelatedSetting
](
#memos-api-v2-WorkspaceMemoRelatedSetting
)
| | |
| telegram_integration_setting |
[
WorkspaceTelegramIntegrationSetting
](
#memos-api-v2-WorkspaceTelegramIntegrationSetting
)
| | |
<a
name=
"memos-api-v2-WorkspaceStorageSetting"
></a>
### WorkspaceStorageSetting
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| storage_type |
[
WorkspaceStorageSetting.StorageType
](
#memos-api-v2-WorkspaceStorageSetting-StorageType
)
| | storage_type is the storage type. |
| local_storage_path |
[
string
](
#string
)
| | The local storage path for STORAGE_TYPE_LOCAL. e.g. assets/{timestamp}_{filename} |
| upload_size_limit_mb |
[
int64
](
#int64
)
| | The max upload size in megabytes. |
<a
name=
"memos-api-v2-WorkspaceTelegramIntegrationSetting"
></a>
### WorkspaceTelegramIntegrationSetting
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| bot_token |
[
string
](
#string
)
| | bot_token is the telegram bot token. |
...
...
@@ -3009,6 +3065,20 @@ Used internally for obfuscating the page token.
<a
name=
"memos-api-v2-WorkspaceStorageSetting-StorageType"
></a>
### WorkspaceStorageSetting.StorageType
| Name | Number | Description |
| ---- | ------ | ----------- |
| STORAGE_TYPE_UNSPECIFIED | 0 | |
| STORAGE_TYPE_DATABASE | 1 | STORAGE_TYPE_DATABASE is the database storage type. |
| STORAGE_TYPE_LOCAL | 2 | STORAGE_TYPE_LOCAL is the local storage type. |
| STORAGE_TYPE_EXTERNAL | 3 | STORAGE_TYPE_EXTERNAL is the external storage type. |
...
...
proto/gen/api/v2/workspace_setting_service.pb.go
View file @
eb251a09
...
...
@@ -21,6 +21,61 @@ const (
_
=
protoimpl
.
EnforceVersion
(
protoimpl
.
MaxVersion
-
20
)
)
type
WorkspaceStorageSetting_StorageType
int32
const
(
WorkspaceStorageSetting_STORAGE_TYPE_UNSPECIFIED
WorkspaceStorageSetting_StorageType
=
0
// STORAGE_TYPE_DATABASE is the database storage type.
WorkspaceStorageSetting_STORAGE_TYPE_DATABASE
WorkspaceStorageSetting_StorageType
=
1
// STORAGE_TYPE_LOCAL is the local storage type.
WorkspaceStorageSetting_STORAGE_TYPE_LOCAL
WorkspaceStorageSetting_StorageType
=
2
// STORAGE_TYPE_EXTERNAL is the external storage type.
WorkspaceStorageSetting_STORAGE_TYPE_EXTERNAL
WorkspaceStorageSetting_StorageType
=
3
)
// Enum value maps for WorkspaceStorageSetting_StorageType.
var
(
WorkspaceStorageSetting_StorageType_name
=
map
[
int32
]
string
{
0
:
"STORAGE_TYPE_UNSPECIFIED"
,
1
:
"STORAGE_TYPE_DATABASE"
,
2
:
"STORAGE_TYPE_LOCAL"
,
3
:
"STORAGE_TYPE_EXTERNAL"
,
}
WorkspaceStorageSetting_StorageType_value
=
map
[
string
]
int32
{
"STORAGE_TYPE_UNSPECIFIED"
:
0
,
"STORAGE_TYPE_DATABASE"
:
1
,
"STORAGE_TYPE_LOCAL"
:
2
,
"STORAGE_TYPE_EXTERNAL"
:
3
,
}
)
func
(
x
WorkspaceStorageSetting_StorageType
)
Enum
()
*
WorkspaceStorageSetting_StorageType
{
p
:=
new
(
WorkspaceStorageSetting_StorageType
)
*
p
=
x
return
p
}
func
(
x
WorkspaceStorageSetting_StorageType
)
String
()
string
{
return
protoimpl
.
X
.
EnumStringOf
(
x
.
Descriptor
(),
protoreflect
.
EnumNumber
(
x
))
}
func
(
WorkspaceStorageSetting_StorageType
)
Descriptor
()
protoreflect
.
EnumDescriptor
{
return
file_api_v2_workspace_setting_service_proto_enumTypes
[
0
]
.
Descriptor
()
}
func
(
WorkspaceStorageSetting_StorageType
)
Type
()
protoreflect
.
EnumType
{
return
&
file_api_v2_workspace_setting_service_proto_enumTypes
[
0
]
}
func
(
x
WorkspaceStorageSetting_StorageType
)
Number
()
protoreflect
.
EnumNumber
{
return
protoreflect
.
EnumNumber
(
x
)
}
// Deprecated: Use WorkspaceStorageSetting_StorageType.Descriptor instead.
func
(
WorkspaceStorageSetting_StorageType
)
EnumDescriptor
()
([]
byte
,
[]
int
)
{
return
file_api_v2_workspace_setting_service_proto_rawDescGZIP
(),
[]
int
{
6
,
0
}
}
type
GetWorkspaceSettingRequest
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
...
...
@@ -223,6 +278,9 @@ type WorkspaceSetting struct {
// Types that are assignable to Value:
//
// *WorkspaceSetting_GeneralSetting
// *WorkspaceSetting_StorageSetting
// *WorkspaceSetting_MemoRelatedSetting
// *WorkspaceSetting_TelegramIntegrationSetting
Value
isWorkspaceSetting_Value
`protobuf_oneof:"value"`
}
...
...
@@ -279,17 +337,55 @@ func (x *WorkspaceSetting) GetGeneralSetting() *WorkspaceGeneralSetting {
return
nil
}
func
(
x
*
WorkspaceSetting
)
GetStorageSetting
()
*
WorkspaceStorageSetting
{
if
x
,
ok
:=
x
.
GetValue
()
.
(
*
WorkspaceSetting_StorageSetting
);
ok
{
return
x
.
StorageSetting
}
return
nil
}
func
(
x
*
WorkspaceSetting
)
GetMemoRelatedSetting
()
*
WorkspaceMemoRelatedSetting
{
if
x
,
ok
:=
x
.
GetValue
()
.
(
*
WorkspaceSetting_MemoRelatedSetting
);
ok
{
return
x
.
MemoRelatedSetting
}
return
nil
}
func
(
x
*
WorkspaceSetting
)
GetTelegramIntegrationSetting
()
*
WorkspaceTelegramIntegrationSetting
{
if
x
,
ok
:=
x
.
GetValue
()
.
(
*
WorkspaceSetting_TelegramIntegrationSetting
);
ok
{
return
x
.
TelegramIntegrationSetting
}
return
nil
}
type
isWorkspaceSetting_Value
interface
{
isWorkspaceSetting_Value
()
}
type
WorkspaceSetting_GeneralSetting
struct
{
// general_setting is the general setting of workspace.
GeneralSetting
*
WorkspaceGeneralSetting
`protobuf:"bytes,2,opt,name=general_setting,json=generalSetting,proto3,oneof"`
}
type
WorkspaceSetting_StorageSetting
struct
{
StorageSetting
*
WorkspaceStorageSetting
`protobuf:"bytes,3,opt,name=storage_setting,json=storageSetting,proto3,oneof"`
}
type
WorkspaceSetting_MemoRelatedSetting
struct
{
MemoRelatedSetting
*
WorkspaceMemoRelatedSetting
`protobuf:"bytes,4,opt,name=memo_related_setting,json=memoRelatedSetting,proto3,oneof"`
}
type
WorkspaceSetting_TelegramIntegrationSetting
struct
{
TelegramIntegrationSetting
*
WorkspaceTelegramIntegrationSetting
`protobuf:"bytes,5,opt,name=telegram_integration_setting,json=telegramIntegrationSetting,proto3,oneof"`
}
func
(
*
WorkspaceSetting_GeneralSetting
)
isWorkspaceSetting_Value
()
{}
func
(
*
WorkspaceSetting_StorageSetting
)
isWorkspaceSetting_Value
()
{}
func
(
*
WorkspaceSetting_MemoRelatedSetting
)
isWorkspaceSetting_Value
()
{}
func
(
*
WorkspaceSetting_TelegramIntegrationSetting
)
isWorkspaceSetting_Value
()
{}
type
WorkspaceGeneralSetting
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
...
...
@@ -374,6 +470,178 @@ func (x *WorkspaceGeneralSetting) GetAdditionalStyle() string {
return
""
}
type
WorkspaceStorageSetting
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
// storage_type is the storage type.
StorageType
WorkspaceStorageSetting_StorageType
`protobuf:"varint,1,opt,name=storage_type,json=storageType,proto3,enum=memos.api.v2.WorkspaceStorageSetting_StorageType" json:"storage_type,omitempty"`
// The local storage path for STORAGE_TYPE_LOCAL.
// e.g. assets/{timestamp}_{filename}
LocalStoragePath
string
`protobuf:"bytes,2,opt,name=local_storage_path,json=localStoragePath,proto3" json:"local_storage_path,omitempty"`
// The max upload size in megabytes.
UploadSizeLimitMb
int64
`protobuf:"varint,3,opt,name=upload_size_limit_mb,json=uploadSizeLimitMb,proto3" json:"upload_size_limit_mb,omitempty"`
}
func
(
x
*
WorkspaceStorageSetting
)
Reset
()
{
*
x
=
WorkspaceStorageSetting
{}
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_api_v2_workspace_setting_service_proto_msgTypes
[
6
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
func
(
x
*
WorkspaceStorageSetting
)
String
()
string
{
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
*
WorkspaceStorageSetting
)
ProtoMessage
()
{}
func
(
x
*
WorkspaceStorageSetting
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_api_v2_workspace_setting_service_proto_msgTypes
[
6
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
// Deprecated: Use WorkspaceStorageSetting.ProtoReflect.Descriptor instead.
func
(
*
WorkspaceStorageSetting
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_api_v2_workspace_setting_service_proto_rawDescGZIP
(),
[]
int
{
6
}
}
func
(
x
*
WorkspaceStorageSetting
)
GetStorageType
()
WorkspaceStorageSetting_StorageType
{
if
x
!=
nil
{
return
x
.
StorageType
}
return
WorkspaceStorageSetting_STORAGE_TYPE_UNSPECIFIED
}
func
(
x
*
WorkspaceStorageSetting
)
GetLocalStoragePath
()
string
{
if
x
!=
nil
{
return
x
.
LocalStoragePath
}
return
""
}
func
(
x
*
WorkspaceStorageSetting
)
GetUploadSizeLimitMb
()
int64
{
if
x
!=
nil
{
return
x
.
UploadSizeLimitMb
}
return
0
}
type
WorkspaceMemoRelatedSetting
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
// disallow_public_share disallows set memo as public visible.
DisallowPublicVisible
bool
`protobuf:"varint,1,opt,name=disallow_public_visible,json=disallowPublicVisible,proto3" json:"disallow_public_visible,omitempty"`
// display_with_update_time orders and displays memo with update time.
DisplayWithUpdateTime
bool
`protobuf:"varint,2,opt,name=display_with_update_time,json=displayWithUpdateTime,proto3" json:"display_with_update_time,omitempty"`
}
func
(
x
*
WorkspaceMemoRelatedSetting
)
Reset
()
{
*
x
=
WorkspaceMemoRelatedSetting
{}
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_api_v2_workspace_setting_service_proto_msgTypes
[
7
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
func
(
x
*
WorkspaceMemoRelatedSetting
)
String
()
string
{
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
*
WorkspaceMemoRelatedSetting
)
ProtoMessage
()
{}
func
(
x
*
WorkspaceMemoRelatedSetting
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_api_v2_workspace_setting_service_proto_msgTypes
[
7
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
// Deprecated: Use WorkspaceMemoRelatedSetting.ProtoReflect.Descriptor instead.
func
(
*
WorkspaceMemoRelatedSetting
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_api_v2_workspace_setting_service_proto_rawDescGZIP
(),
[]
int
{
7
}
}
func
(
x
*
WorkspaceMemoRelatedSetting
)
GetDisallowPublicVisible
()
bool
{
if
x
!=
nil
{
return
x
.
DisallowPublicVisible
}
return
false
}
func
(
x
*
WorkspaceMemoRelatedSetting
)
GetDisplayWithUpdateTime
()
bool
{
if
x
!=
nil
{
return
x
.
DisplayWithUpdateTime
}
return
false
}
type
WorkspaceTelegramIntegrationSetting
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
// bot_token is the telegram bot token.
BotToken
string
`protobuf:"bytes,1,opt,name=bot_token,json=botToken,proto3" json:"bot_token,omitempty"`
}
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
Reset
()
{
*
x
=
WorkspaceTelegramIntegrationSetting
{}
if
protoimpl
.
UnsafeEnabled
{
mi
:=
&
file_api_v2_workspace_setting_service_proto_msgTypes
[
8
]
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
String
()
string
{
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
*
WorkspaceTelegramIntegrationSetting
)
ProtoMessage
()
{}
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_api_v2_workspace_setting_service_proto_msgTypes
[
8
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
// Deprecated: Use WorkspaceTelegramIntegrationSetting.ProtoReflect.Descriptor instead.
func
(
*
WorkspaceTelegramIntegrationSetting
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_api_v2_workspace_setting_service_proto_rawDescGZIP
(),
[]
int
{
8
}
}
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
GetBotToken
()
string
{
if
x
!=
nil
{
return
x
.
BotToken
}
return
""
}
var
File_api_v2_workspace_setting_service_proto
protoreflect
.
FileDescriptor
var
file_api_v2_workspace_setting_service_proto_rawDesc
=
[]
byte
{
...
...
@@ -406,65 +674,118 @@ var file_api_v2_workspace_setting_service_proto_rawDesc = []byte{
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x1e
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x07
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x22
,
0x
81
,
0x01
,
0x0a
,
0x10
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x
a9
,
0x03
,
0x0a
,
0x10
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x12
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x50
,
0x0a
,
0x0f
,
0x67
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x25
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x47
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x48
,
0x00
,
0x52
,
0x0e
,
0x67
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x42
,
0x07
,
0x0a
,
0x05
,
0x76
,
0x61
,
0x6c
,
0x75
,
0x65
,
0x22
,
0xf5
,
0x01
,
0x0a
,
0x17
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x47
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x21
,
0x0a
,
0x0c
,
0x69
,
0x6e
,
0x73
,
0x74
,
0x61
,
0x6e
,
0x63
,
0x65
,
0x5f
,
0x75
,
0x72
,
0x6c
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0b
,
0x69
,
0x6e
,
0x73
,
0x74
,
0x61
,
0x6e
,
0x63
,
0x65
,
0x55
,
0x72
,
0x6c
,
0x12
,
0x27
,
0x0a
,
0x0f
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x5f
,
0x73
,
0x69
,
0x67
,
0x6e
,
0x75
,
0x70
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x0e
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x53
,
0x69
,
0x67
,
0x6e
,
0x75
,
0x70
,
0x12
,
0x36
,
0x0a
,
0x17
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x5f
,
0x70
,
0x61
,
0x73
,
0x73
,
0x77
,
0x6f
,
0x72
,
0x64
,
0x5f
,
0x6c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x15
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x50
,
0x61
,
0x73
,
0x73
,
0x77
,
0x6f
,
0x72
,
0x64
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x12
,
0x2b
,
0x0a
,
0x11
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x63
,
0x72
,
0x69
,
0x70
,
0x74
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x10
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x53
,
0x63
,
0x72
,
0x69
,
0x70
,
0x74
,
0x12
,
0x29
,
0x0a
,
0x10
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x74
,
0x79
,
0x6c
,
0x65
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0f
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x53
,
0x74
,
0x79
,
0x6c
,
0x65
,
0x32
,
0xef
,
0x02
,
0x0a
,
0x17
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x53
,
0x65
,
0x72
,
0x76
,
0x69
,
0x63
,
0x65
,
0x12
,
0x9e
,
0x01
,
0x0a
,
0x13
,
0x47
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x28
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x47
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x29
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x47
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x73
,
0x70
,
0x6f
,
0x6e
,
0x73
,
0x65
,
0x22
,
0x32
,
0xda
,
0x41
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x82
,
0xd3
,
0xe4
,
0x93
,
0x02
,
0x25
,
0x12
,
0x23
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x76
,
0x32
,
0x2f
,
0x77
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x2f
,
0x7b
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x3d
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x73
,
0x2f
,
0x2a
,
0x7d
,
0x12
,
0xb2
,
0x01
,
0x0a
,
0x13
,
0x53
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x28
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x53
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x29
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x53
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x73
,
0x70
,
0x6f
,
0x6e
,
0x73
,
0x65
,
0x22
,
0x46
,
0xda
,
0x41
,
0x07
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x82
,
0xd3
,
0xe4
,
0x93
,
0x02
,
0x36
,
0x3a
,
0x07
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x32
,
0x2b
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x76
,
0x32
,
0x2f
,
0x77
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x2f
,
0x7b
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x2e
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x3d
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x73
,
0x2f
,
0x2a
,
0x7d
,
0x42
,
0xb4
,
0x01
,
0x0a
,
0x10
,
0x63
,
0x6f
,
0x6d
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x42
,
0x1c
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x53
,
0x65
,
0x72
,
0x76
,
0x69
,
0x63
,
0x65
,
0x50
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x50
,
0x01
,
0x5a
,
0x30
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x75
,
0x73
,
0x65
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2f
,
0x67
,
0x65
,
0x6e
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x76
,
0x32
,
0x3b
,
0x61
,
0x70
,
0x69
,
0x76
,
0x32
,
0xa2
,
0x02
,
0x03
,
0x4d
,
0x41
,
0x58
,
0xaa
,
0x02
,
0x0c
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x41
,
0x70
,
0x69
,
0x2e
,
0x56
,
0x32
,
0xca
,
0x02
,
0x0c
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x41
,
0x70
,
0x69
,
0x5c
,
0x56
,
0x32
,
0xe2
,
0x02
,
0x18
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x41
,
0x70
,
0x69
,
0x5c
,
0x56
,
0x32
,
0x5c
,
0x47
,
0x50
,
0x42
,
0x4d
,
0x65
,
0x74
,
0x61
,
0x64
,
0x61
,
0x74
,
0x61
,
0xea
,
0x02
,
0x0e
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x3a
,
0x3a
,
0x41
,
0x70
,
0x69
,
0x3a
,
0x3a
,
0x56
,
0x32
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
0x72
,
0x61
,
0x6c
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x50
,
0x0a
,
0x0f
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x25
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x48
,
0x00
,
0x52
,
0x0e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x5d
,
0x0a
,
0x14
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x5f
,
0x72
,
0x65
,
0x6c
,
0x61
,
0x74
,
0x65
,
0x64
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x29
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x52
,
0x65
,
0x6c
,
0x61
,
0x74
,
0x65
,
0x64
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x48
,
0x00
,
0x52
,
0x12
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x52
,
0x65
,
0x6c
,
0x61
,
0x74
,
0x65
,
0x64
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x75
,
0x0a
,
0x1c
,
0x74
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x5f
,
0x69
,
0x6e
,
0x74
,
0x65
,
0x67
,
0x72
,
0x61
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x31
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x54
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x49
,
0x6e
,
0x74
,
0x65
,
0x67
,
0x72
,
0x61
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x48
,
0x00
,
0x52
,
0x1a
,
0x74
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x49
,
0x6e
,
0x74
,
0x65
,
0x67
,
0x72
,
0x61
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x42
,
0x07
,
0x0a
,
0x05
,
0x76
,
0x61
,
0x6c
,
0x75
,
0x65
,
0x22
,
0xf5
,
0x01
,
0x0a
,
0x17
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x47
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x21
,
0x0a
,
0x0c
,
0x69
,
0x6e
,
0x73
,
0x74
,
0x61
,
0x6e
,
0x63
,
0x65
,
0x5f
,
0x75
,
0x72
,
0x6c
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0b
,
0x69
,
0x6e
,
0x73
,
0x74
,
0x61
,
0x6e
,
0x63
,
0x65
,
0x55
,
0x72
,
0x6c
,
0x12
,
0x27
,
0x0a
,
0x0f
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x5f
,
0x73
,
0x69
,
0x67
,
0x6e
,
0x75
,
0x70
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x0e
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x53
,
0x69
,
0x67
,
0x6e
,
0x75
,
0x70
,
0x12
,
0x36
,
0x0a
,
0x17
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x5f
,
0x70
,
0x61
,
0x73
,
0x73
,
0x77
,
0x6f
,
0x72
,
0x64
,
0x5f
,
0x6c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x15
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x50
,
0x61
,
0x73
,
0x73
,
0x77
,
0x6f
,
0x72
,
0x64
,
0x4c
,
0x6f
,
0x67
,
0x69
,
0x6e
,
0x12
,
0x2b
,
0x0a
,
0x11
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x63
,
0x72
,
0x69
,
0x70
,
0x74
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x10
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x53
,
0x63
,
0x72
,
0x69
,
0x70
,
0x74
,
0x12
,
0x29
,
0x0a
,
0x10
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x74
,
0x79
,
0x6c
,
0x65
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0f
,
0x61
,
0x64
,
0x64
,
0x69
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x61
,
0x6c
,
0x53
,
0x74
,
0x79
,
0x6c
,
0x65
,
0x22
,
0xc9
,
0x02
,
0x0a
,
0x17
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x54
,
0x0a
,
0x0c
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x5f
,
0x74
,
0x79
,
0x70
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0e
,
0x32
,
0x31
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x2e
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x54
,
0x79
,
0x70
,
0x65
,
0x52
,
0x0b
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x54
,
0x79
,
0x70
,
0x65
,
0x12
,
0x2c
,
0x0a
,
0x12
,
0x6c
,
0x6f
,
0x63
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x5f
,
0x70
,
0x61
,
0x74
,
0x68
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x10
,
0x6c
,
0x6f
,
0x63
,
0x61
,
0x6c
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x50
,
0x61
,
0x74
,
0x68
,
0x12
,
0x2f
,
0x0a
,
0x14
,
0x75
,
0x70
,
0x6c
,
0x6f
,
0x61
,
0x64
,
0x5f
,
0x73
,
0x69
,
0x7a
,
0x65
,
0x5f
,
0x6c
,
0x69
,
0x6d
,
0x69
,
0x74
,
0x5f
,
0x6d
,
0x62
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x11
,
0x75
,
0x70
,
0x6c
,
0x6f
,
0x61
,
0x64
,
0x53
,
0x69
,
0x7a
,
0x65
,
0x4c
,
0x69
,
0x6d
,
0x69
,
0x74
,
0x4d
,
0x62
,
0x22
,
0x79
,
0x0a
,
0x0b
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x61
,
0x67
,
0x65
,
0x54
,
0x79
,
0x70
,
0x65
,
0x12
,
0x1c
,
0x0a
,
0x18
,
0x53
,
0x54
,
0x4f
,
0x52
,
0x41
,
0x47
,
0x45
,
0x5f
,
0x54
,
0x59
,
0x50
,
0x45
,
0x5f
,
0x55
,
0x4e
,
0x53
,
0x50
,
0x45
,
0x43
,
0x49
,
0x46
,
0x49
,
0x45
,
0x44
,
0x10
,
0x00
,
0x12
,
0x19
,
0x0a
,
0x15
,
0x53
,
0x54
,
0x4f
,
0x52
,
0x41
,
0x47
,
0x45
,
0x5f
,
0x54
,
0x59
,
0x50
,
0x45
,
0x5f
,
0x44
,
0x41
,
0x54
,
0x41
,
0x42
,
0x41
,
0x53
,
0x45
,
0x10
,
0x01
,
0x12
,
0x16
,
0x0a
,
0x12
,
0x53
,
0x54
,
0x4f
,
0x52
,
0x41
,
0x47
,
0x45
,
0x5f
,
0x54
,
0x59
,
0x50
,
0x45
,
0x5f
,
0x4c
,
0x4f
,
0x43
,
0x41
,
0x4c
,
0x10
,
0x02
,
0x12
,
0x19
,
0x0a
,
0x15
,
0x53
,
0x54
,
0x4f
,
0x52
,
0x41
,
0x47
,
0x45
,
0x5f
,
0x54
,
0x59
,
0x50
,
0x45
,
0x5f
,
0x45
,
0x58
,
0x54
,
0x45
,
0x52
,
0x4e
,
0x41
,
0x4c
,
0x10
,
0x03
,
0x22
,
0x8e
,
0x01
,
0x0a
,
0x1b
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x52
,
0x65
,
0x6c
,
0x61
,
0x74
,
0x65
,
0x64
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x36
,
0x0a
,
0x17
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x5f
,
0x70
,
0x75
,
0x62
,
0x6c
,
0x69
,
0x63
,
0x5f
,
0x76
,
0x69
,
0x73
,
0x69
,
0x62
,
0x6c
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x15
,
0x64
,
0x69
,
0x73
,
0x61
,
0x6c
,
0x6c
,
0x6f
,
0x77
,
0x50
,
0x75
,
0x62
,
0x6c
,
0x69
,
0x63
,
0x56
,
0x69
,
0x73
,
0x69
,
0x62
,
0x6c
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x18
,
0x64
,
0x69
,
0x73
,
0x70
,
0x6c
,
0x61
,
0x79
,
0x5f
,
0x77
,
0x69
,
0x74
,
0x68
,
0x5f
,
0x75
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x5f
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x15
,
0x64
,
0x69
,
0x73
,
0x70
,
0x6c
,
0x61
,
0x79
,
0x57
,
0x69
,
0x74
,
0x68
,
0x55
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x54
,
0x69
,
0x6d
,
0x65
,
0x22
,
0x42
,
0x0a
,
0x23
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x54
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x49
,
0x6e
,
0x74
,
0x65
,
0x67
,
0x72
,
0x61
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x1b
,
0x0a
,
0x09
,
0x62
,
0x6f
,
0x74
,
0x5f
,
0x74
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x62
,
0x6f
,
0x74
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x32
,
0xef
,
0x02
,
0x0a
,
0x17
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x53
,
0x65
,
0x72
,
0x76
,
0x69
,
0x63
,
0x65
,
0x12
,
0x9e
,
0x01
,
0x0a
,
0x13
,
0x47
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x28
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x47
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x29
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x47
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x73
,
0x70
,
0x6f
,
0x6e
,
0x73
,
0x65
,
0x22
,
0x32
,
0xda
,
0x41
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x82
,
0xd3
,
0xe4
,
0x93
,
0x02
,
0x25
,
0x12
,
0x23
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x76
,
0x32
,
0x2f
,
0x77
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x2f
,
0x7b
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x3d
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x73
,
0x2f
,
0x2a
,
0x7d
,
0x12
,
0xb2
,
0x01
,
0x0a
,
0x13
,
0x53
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x28
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x53
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x71
,
0x75
,
0x65
,
0x73
,
0x74
,
0x1a
,
0x29
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x2e
,
0x53
,
0x65
,
0x74
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x52
,
0x65
,
0x73
,
0x70
,
0x6f
,
0x6e
,
0x73
,
0x65
,
0x22
,
0x46
,
0xda
,
0x41
,
0x07
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x82
,
0xd3
,
0xe4
,
0x93
,
0x02
,
0x36
,
0x3a
,
0x07
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x32
,
0x2b
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x76
,
0x32
,
0x2f
,
0x77
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x2f
,
0x7b
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x2e
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x3d
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x73
,
0x2f
,
0x2a
,
0x7d
,
0x42
,
0xb4
,
0x01
,
0x0a
,
0x10
,
0x63
,
0x6f
,
0x6d
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x61
,
0x70
,
0x69
,
0x2e
,
0x76
,
0x32
,
0x42
,
0x1c
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x53
,
0x65
,
0x72
,
0x76
,
0x69
,
0x63
,
0x65
,
0x50
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x50
,
0x01
,
0x5a
,
0x30
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x75
,
0x73
,
0x65
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2f
,
0x67
,
0x65
,
0x6e
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x76
,
0x32
,
0x3b
,
0x61
,
0x70
,
0x69
,
0x76
,
0x32
,
0xa2
,
0x02
,
0x03
,
0x4d
,
0x41
,
0x58
,
0xaa
,
0x02
,
0x0c
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x41
,
0x70
,
0x69
,
0x2e
,
0x56
,
0x32
,
0xca
,
0x02
,
0x0c
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x41
,
0x70
,
0x69
,
0x5c
,
0x56
,
0x32
,
0xe2
,
0x02
,
0x18
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x41
,
0x70
,
0x69
,
0x5c
,
0x56
,
0x32
,
0x5c
,
0x47
,
0x50
,
0x42
,
0x4d
,
0x65
,
0x74
,
0x61
,
0x64
,
0x61
,
0x74
,
0x61
,
0xea
,
0x02
,
0x0e
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x3a
,
0x3a
,
0x41
,
0x70
,
0x69
,
0x3a
,
0x3a
,
0x56
,
0x32
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
}
var
(
...
...
@@ -479,29 +800,38 @@ func file_api_v2_workspace_setting_service_proto_rawDescGZIP() []byte {
return
file_api_v2_workspace_setting_service_proto_rawDescData
}
var
file_api_v2_workspace_setting_service_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
6
)
var
file_api_v2_workspace_setting_service_proto_enumTypes
=
make
([]
protoimpl
.
EnumInfo
,
1
)
var
file_api_v2_workspace_setting_service_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
9
)
var
file_api_v2_workspace_setting_service_proto_goTypes
=
[]
interface
{}{
(
*
GetWorkspaceSettingRequest
)(
nil
),
// 0: memos.api.v2.GetWorkspaceSettingRequest
(
*
GetWorkspaceSettingResponse
)(
nil
),
// 1: memos.api.v2.GetWorkspaceSettingResponse
(
*
SetWorkspaceSettingRequest
)(
nil
),
// 2: memos.api.v2.SetWorkspaceSettingRequest
(
*
SetWorkspaceSettingResponse
)(
nil
),
// 3: memos.api.v2.SetWorkspaceSettingResponse
(
*
WorkspaceSetting
)(
nil
),
// 4: memos.api.v2.WorkspaceSetting
(
*
WorkspaceGeneralSetting
)(
nil
),
// 5: memos.api.v2.WorkspaceGeneralSetting
(
WorkspaceStorageSetting_StorageType
)(
0
),
// 0: memos.api.v2.WorkspaceStorageSetting.StorageType
(
*
GetWorkspaceSettingRequest
)(
nil
),
// 1: memos.api.v2.GetWorkspaceSettingRequest
(
*
GetWorkspaceSettingResponse
)(
nil
),
// 2: memos.api.v2.GetWorkspaceSettingResponse
(
*
SetWorkspaceSettingRequest
)(
nil
),
// 3: memos.api.v2.SetWorkspaceSettingRequest
(
*
SetWorkspaceSettingResponse
)(
nil
),
// 4: memos.api.v2.SetWorkspaceSettingResponse
(
*
WorkspaceSetting
)(
nil
),
// 5: memos.api.v2.WorkspaceSetting
(
*
WorkspaceGeneralSetting
)(
nil
),
// 6: memos.api.v2.WorkspaceGeneralSetting
(
*
WorkspaceStorageSetting
)(
nil
),
// 7: memos.api.v2.WorkspaceStorageSetting
(
*
WorkspaceMemoRelatedSetting
)(
nil
),
// 8: memos.api.v2.WorkspaceMemoRelatedSetting
(
*
WorkspaceTelegramIntegrationSetting
)(
nil
),
// 9: memos.api.v2.WorkspaceTelegramIntegrationSetting
}
var
file_api_v2_workspace_setting_service_proto_depIdxs
=
[]
int32
{
4
,
// 0: memos.api.v2.GetWorkspaceSettingResponse.setting:type_name -> memos.api.v2.WorkspaceSetting
4
,
// 1: memos.api.v2.SetWorkspaceSettingRequest.setting:type_name -> memos.api.v2.WorkspaceSetting
4
,
// 2: memos.api.v2.SetWorkspaceSettingResponse.setting:type_name -> memos.api.v2.WorkspaceSetting
5
,
// 3: memos.api.v2.WorkspaceSetting.general_setting:type_name -> memos.api.v2.WorkspaceGeneralSetting
0
,
// 4: memos.api.v2.WorkspaceSettingService.GetWorkspaceSetting:input_type -> memos.api.v2.GetWorkspaceSettingRequest
2
,
// 5: memos.api.v2.WorkspaceSettingService.SetWorkspaceSetting:input_type -> memos.api.v2.SetWorkspaceSettingRequest
1
,
// 6: memos.api.v2.WorkspaceSettingService.GetWorkspaceSetting:output_type -> memos.api.v2.GetWorkspaceSettingResponse
3
,
// 7: memos.api.v2.WorkspaceSettingService.SetWorkspaceSetting:output_type -> memos.api.v2.SetWorkspaceSettingResponse
6
,
// [6:8] is the sub-list for method output_type
4
,
// [4:6] is the sub-list for method input_type
4
,
// [4:4] is the sub-list for extension type_name
4
,
// [4:4] is the sub-list for extension extendee
0
,
// [0:4] is the sub-list for field type_name
5
,
// 0: memos.api.v2.GetWorkspaceSettingResponse.setting:type_name -> memos.api.v2.WorkspaceSetting
5
,
// 1: memos.api.v2.SetWorkspaceSettingRequest.setting:type_name -> memos.api.v2.WorkspaceSetting
5
,
// 2: memos.api.v2.SetWorkspaceSettingResponse.setting:type_name -> memos.api.v2.WorkspaceSetting
6
,
// 3: memos.api.v2.WorkspaceSetting.general_setting:type_name -> memos.api.v2.WorkspaceGeneralSetting
7
,
// 4: memos.api.v2.WorkspaceSetting.storage_setting:type_name -> memos.api.v2.WorkspaceStorageSetting
8
,
// 5: memos.api.v2.WorkspaceSetting.memo_related_setting:type_name -> memos.api.v2.WorkspaceMemoRelatedSetting
9
,
// 6: memos.api.v2.WorkspaceSetting.telegram_integration_setting:type_name -> memos.api.v2.WorkspaceTelegramIntegrationSetting
0
,
// 7: memos.api.v2.WorkspaceStorageSetting.storage_type:type_name -> memos.api.v2.WorkspaceStorageSetting.StorageType
1
,
// 8: memos.api.v2.WorkspaceSettingService.GetWorkspaceSetting:input_type -> memos.api.v2.GetWorkspaceSettingRequest
3
,
// 9: memos.api.v2.WorkspaceSettingService.SetWorkspaceSetting:input_type -> memos.api.v2.SetWorkspaceSettingRequest
2
,
// 10: memos.api.v2.WorkspaceSettingService.GetWorkspaceSetting:output_type -> memos.api.v2.GetWorkspaceSettingResponse
4
,
// 11: memos.api.v2.WorkspaceSettingService.SetWorkspaceSetting:output_type -> memos.api.v2.SetWorkspaceSettingResponse
10
,
// [10:12] is the sub-list for method output_type
8
,
// [8:10] is the sub-list for method input_type
8
,
// [8:8] is the sub-list for extension type_name
8
,
// [8:8] is the sub-list for extension extendee
0
,
// [0:8] is the sub-list for field type_name
}
func
init
()
{
file_api_v2_workspace_setting_service_proto_init
()
}
...
...
@@ -582,22 +912,62 @@ func file_api_v2_workspace_setting_service_proto_init() {
return
nil
}
}
file_api_v2_workspace_setting_service_proto_msgTypes
[
6
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
WorkspaceStorageSetting
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_api_v2_workspace_setting_service_proto_msgTypes
[
7
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
WorkspaceMemoRelatedSetting
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_api_v2_workspace_setting_service_proto_msgTypes
[
8
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
WorkspaceTelegramIntegrationSetting
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
}
file_api_v2_workspace_setting_service_proto_msgTypes
[
4
]
.
OneofWrappers
=
[]
interface
{}{
(
*
WorkspaceSetting_GeneralSetting
)(
nil
),
(
*
WorkspaceSetting_StorageSetting
)(
nil
),
(
*
WorkspaceSetting_MemoRelatedSetting
)(
nil
),
(
*
WorkspaceSetting_TelegramIntegrationSetting
)(
nil
),
}
type
x
struct
{}
out
:=
protoimpl
.
TypeBuilder
{
File
:
protoimpl
.
DescBuilder
{
GoPackagePath
:
reflect
.
TypeOf
(
x
{})
.
PkgPath
(),
RawDescriptor
:
file_api_v2_workspace_setting_service_proto_rawDesc
,
NumEnums
:
0
,
NumMessages
:
6
,
NumEnums
:
1
,
NumMessages
:
9
,
NumExtensions
:
0
,
NumServices
:
1
,
},
GoTypes
:
file_api_v2_workspace_setting_service_proto_goTypes
,
DependencyIndexes
:
file_api_v2_workspace_setting_service_proto_depIdxs
,
EnumInfos
:
file_api_v2_workspace_setting_service_proto_enumTypes
,
MessageInfos
:
file_api_v2_workspace_setting_service_proto_msgTypes
,
}
.
Build
()
File_api_v2_workspace_setting_service_proto
=
out
.
File
...
...
proto/gen/store/README.md
View file @
eb251a09
...
...
@@ -521,7 +521,7 @@
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
|
telegram_bot_token |
[
string
](
#string
)
| | telegram_
bot_token is the telegram bot token. |
|
bot_token |
[
string
](
#string
)
| |
bot_token is the telegram bot token. |
...
...
proto/gen/store/workspace_setting.pb.go
View file @
eb251a09
...
...
@@ -464,8 +464,8 @@ type WorkspaceTelegramIntegrationSetting struct {
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
//
telegram_
bot_token is the telegram bot token.
TelegramBotToken
string
`protobuf:"bytes,1,opt,name=telegram_bot_token,json=telegramBotToken,proto3" json:"telegram_
bot_token,omitempty"`
// bot_token is the telegram bot token.
BotToken
string
`protobuf:"bytes,1,opt,name=bot_token,json=botToken,proto3" json:"
bot_token,omitempty"`
}
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
Reset
()
{
...
...
@@ -500,9 +500,9 @@ func (*WorkspaceTelegramIntegrationSetting) Descriptor() ([]byte, []int) {
return
file_store_workspace_setting_proto_rawDescGZIP
(),
[]
int
{
4
}
}
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
Get
Telegram
BotToken
()
string
{
func
(
x
*
WorkspaceTelegramIntegrationSetting
)
GetBotToken
()
string
{
if
x
!=
nil
{
return
x
.
Telegram
BotToken
return
x
.
BotToken
}
return
""
}
...
...
@@ -586,36 +586,35 @@ var file_store_workspace_setting_proto_rawDesc = []byte{
0x37
,
0x0a
,
0x18
,
0x64
,
0x69
,
0x73
,
0x70
,
0x6c
,
0x61
,
0x79
,
0x5f
,
0x77
,
0x69
,
0x74
,
0x68
,
0x5f
,
0x75
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x5f
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x15
,
0x64
,
0x69
,
0x73
,
0x70
,
0x6c
,
0x61
,
0x79
,
0x57
,
0x69
,
0x74
,
0x68
,
0x55
,
0x70
,
0x64
,
0x61
,
0x74
,
0x65
,
0x54
,
0x69
,
0x6d
,
0x65
,
0x22
,
0x
53
,
0x0a
,
0x23
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x64
,
0x61
,
0x74
,
0x65
,
0x54
,
0x69
,
0x6d
,
0x65
,
0x22
,
0x
42
,
0x0a
,
0x23
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x54
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x49
,
0x6e
,
0x74
,
0x65
,
0x67
,
0x72
,
0x61
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x2c
,
0x0a
,
0x12
,
0x74
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x5f
,
0x62
,
0x6f
,
0x74
,
0x5f
,
0x74
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x10
,
0x74
,
0x65
,
0x6c
,
0x65
,
0x67
,
0x72
,
0x61
,
0x6d
,
0x42
,
0x6f
,
0x74
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x2a
,
0xca
,
0x01
,
0x0a
,
0x13
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x4b
,
0x65
,
0x79
,
0x12
,
0x25
,
0x0a
,
0x21
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x4b
,
0x45
,
0x59
,
0x5f
,
0x55
,
0x4e
,
0x53
,
0x50
,
0x45
,
0x43
,
0x49
,
0x46
,
0x49
,
0x45
,
0x44
,
0x10
,
0x00
,
0x12
,
0x1d
,
0x0a
,
0x19
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x47
,
0x45
,
0x4e
,
0x45
,
0x52
,
0x41
,
0x4c
,
0x10
,
0x01
,
0x12
,
0x1d
,
0x0a
,
0x19
,
0x57
,
0x1b
,
0x0a
,
0x09
,
0x62
,
0x6f
,
0x74
,
0x5f
,
0x74
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x62
,
0x6f
,
0x74
,
0x54
,
0x6f
,
0x6b
,
0x65
,
0x6e
,
0x2a
,
0xca
,
0x01
,
0x0a
,
0x13
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x4b
,
0x65
,
0x79
,
0x12
,
0x25
,
0x0a
,
0x21
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x4b
,
0x45
,
0x59
,
0x5f
,
0x55
,
0x4e
,
0x53
,
0x50
,
0x45
,
0x43
,
0x49
,
0x46
,
0x49
,
0x45
,
0x44
,
0x10
,
0x00
,
0x12
,
0x1d
,
0x0a
,
0x19
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x
53
,
0x54
,
0x4f
,
0x52
,
0x41
,
0x47
,
0x45
,
0x10
,
0x02
,
0x12
,
0x22
,
0x0a
,
0x1e
,
0x57
,
0x4f
,
0x5f
,
0x
47
,
0x45
,
0x4e
,
0x45
,
0x52
,
0x41
,
0x4c
,
0x10
,
0x01
,
0x12
,
0x1d
,
0x0a
,
0x19
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x4d
,
0x45
,
0x4d
,
0x4f
,
0x5f
,
0x52
,
0x45
,
0x4c
,
0x41
,
0x54
,
0x45
,
0x44
,
0x10
,
0x03
,
0x12
,
0x2a
,
0x0a
,
0x26
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x54
,
0x45
,
0x4c
,
0x45
,
0x47
,
0x52
,
0x41
,
0x4d
,
0x5f
,
0x49
,
0x4e
,
0x54
,
0x45
,
0x47
,
0x52
,
0x41
,
0x54
,
0x49
,
0x4f
,
0x4e
,
0x10
,
0x04
,
0x42
,
0xa0
,
0x01
,
0x0a
,
0x0f
,
0x63
,
0x6f
,
0x6d
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x42
,
0x15
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x50
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x50
,
0x01
,
0x5a
,
0x29
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x75
,
0x73
,
0x65
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2f
,
0x67
,
0x65
,
0x6e
,
0x2f
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0xa2
,
0x02
,
0x03
,
0x4d
,
0x53
,
0x58
,
0xaa
,
0x02
,
0x0b
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0xca
,
0x02
,
0x0b
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0xe2
,
0x02
,
0x17
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x5c
,
0x47
,
0x50
,
0x42
,
0x4d
,
0x65
,
0x74
,
0x61
,
0x64
,
0x61
,
0x74
,
0x61
,
0xea
,
0x02
,
0x0c
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x3a
,
0x3a
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
0x53
,
0x54
,
0x4f
,
0x52
,
0x41
,
0x47
,
0x45
,
0x10
,
0x02
,
0x12
,
0x22
,
0x0a
,
0x1e
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x4d
,
0x45
,
0x4d
,
0x4f
,
0x5f
,
0x52
,
0x45
,
0x4c
,
0x41
,
0x54
,
0x45
,
0x44
,
0x10
,
0x03
,
0x12
,
0x2a
,
0x0a
,
0x26
,
0x57
,
0x4f
,
0x52
,
0x4b
,
0x53
,
0x50
,
0x41
,
0x43
,
0x45
,
0x5f
,
0x53
,
0x45
,
0x54
,
0x54
,
0x49
,
0x4e
,
0x47
,
0x5f
,
0x54
,
0x45
,
0x4c
,
0x45
,
0x47
,
0x52
,
0x41
,
0x4d
,
0x5f
,
0x49
,
0x4e
,
0x54
,
0x45
,
0x47
,
0x52
,
0x41
,
0x54
,
0x49
,
0x4f
,
0x4e
,
0x10
,
0x04
,
0x42
,
0xa0
,
0x01
,
0x0a
,
0x0f
,
0x63
,
0x6f
,
0x6d
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x42
,
0x15
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x50
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x50
,
0x01
,
0x5a
,
0x29
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x75
,
0x73
,
0x65
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2f
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x2f
,
0x67
,
0x65
,
0x6e
,
0x2f
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0xa2
,
0x02
,
0x03
,
0x4d
,
0x53
,
0x58
,
0xaa
,
0x02
,
0x0b
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0xca
,
0x02
,
0x0b
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0xe2
,
0x02
,
0x17
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x5c
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x5c
,
0x47
,
0x50
,
0x42
,
0x4d
,
0x65
,
0x74
,
0x61
,
0x64
,
0x61
,
0x74
,
0x61
,
0xea
,
0x02
,
0x0c
,
0x4d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x3a
,
0x3a
,
0x53
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
}
var
(
...
...
proto/store/workspace_setting.proto
View file @
eb251a09
...
...
@@ -67,6 +67,6 @@ message WorkspaceMemoRelatedSetting {
}
message
WorkspaceTelegramIntegrationSetting
{
//
telegram_
bot_token is the telegram bot token.
string
telegram_
bot_token
=
1
;
// bot_token is the telegram bot token.
string
bot_token
=
1
;
}
server/route/api/v2/apidocs.swagger.yaml
View file @
eb251a09
...
...
@@ -876,7 +876,12 @@ paths:
properties
:
generalSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceGeneralSetting'
description
:
general_setting is the general setting of workspace.
storageSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceStorageSetting'
memoRelatedSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceMemoRelatedSetting'
telegramIntegrationSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceTelegramIntegrationSetting'
title
:
setting is the setting to update.
tags
:
-
WorkspaceSettingService
...
...
@@ -1954,6 +1959,15 @@ definitions:
additionalStyle
:
type
:
string
description
:
additional_style is the additional style.
apiv2WorkspaceMemoRelatedSetting
:
type
:
object
properties
:
disallowPublicVisible
:
type
:
boolean
description
:
disallow_public_share disallows set memo as public visible.
displayWithUpdateTime
:
type
:
boolean
description
:
display_with_update_time orders and displays memo with update time.
apiv2WorkspaceSetting
:
type
:
object
properties
:
...
...
@@ -1964,7 +1978,45 @@ definitions:
Format: settings/{setting}
generalSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceGeneralSetting'
description
:
general_setting is the general setting of workspace.
storageSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceStorageSetting'
memoRelatedSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceMemoRelatedSetting'
telegramIntegrationSetting
:
$ref
:
'
#/definitions/apiv2WorkspaceTelegramIntegrationSetting'
apiv2WorkspaceStorageSetting
:
type
:
object
properties
:
storageType
:
$ref
:
'
#/definitions/apiv2WorkspaceStorageSettingStorageType'
description
:
storage_type is the storage type.
localStoragePath
:
type
:
string
title
:
|-
The local storage path for STORAGE_TYPE_LOCAL.
e.g. assets/{timestamp}_{filename}
uploadSizeLimitMb
:
type
:
string
format
:
int64
description
:
The max upload size in megabytes.
apiv2WorkspaceStorageSettingStorageType
:
type
:
string
enum
:
-
STORAGE_TYPE_UNSPECIFIED
-
STORAGE_TYPE_DATABASE
-
STORAGE_TYPE_LOCAL
-
STORAGE_TYPE_EXTERNAL
default
:
STORAGE_TYPE_UNSPECIFIED
description
:
|2-
- STORAGE_TYPE_DATABASE: STORAGE_TYPE_DATABASE is the database storage type.
- STORAGE_TYPE_LOCAL: STORAGE_TYPE_LOCAL is the local storage type.
- STORAGE_TYPE_EXTERNAL: STORAGE_TYPE_EXTERNAL is the external storage type.
apiv2WorkspaceTelegramIntegrationSetting
:
type
:
object
properties
:
botToken
:
type
:
string
description
:
bot_token is the telegram bot token.
googlerpcStatus
:
type
:
object
properties
:
...
...
server/route/api/v2/workspace_setting_service.go
View file @
eb251a09
...
...
@@ -54,22 +54,57 @@ func (s *APIV2Service) SetWorkspaceSetting(ctx context.Context, request *apiv2pb
}
func
convertWorkspaceSettingFromStore
(
setting
*
storepb
.
WorkspaceSetting
)
*
apiv2pb
.
WorkspaceSetting
{
return
&
apiv2pb
.
WorkspaceSetting
{
workspaceSetting
:=
&
apiv2pb
.
WorkspaceSetting
{
Name
:
fmt
.
Sprintf
(
"%s%s"
,
WorkspaceSettingNamePrefix
,
setting
.
Key
.
String
()),
Value
:
&
apiv2pb
.
WorkspaceSetting_GeneralSetting
{
}
switch
setting
.
Value
.
(
type
)
{
case
*
storepb
.
WorkspaceSetting_GeneralSetting
:
workspaceSetting
.
Value
=
&
apiv2pb
.
WorkspaceSetting_GeneralSetting
{
GeneralSetting
:
convertWorkspaceGeneralSettingFromStore
(
setting
.
GetGeneralSetting
()),
},
}
case
*
storepb
.
WorkspaceSetting_StorageSetting
:
workspaceSetting
.
Value
=
&
apiv2pb
.
WorkspaceSetting_StorageSetting
{
StorageSetting
:
convertWorkspaceStorageSettingFromStore
(
setting
.
GetStorageSetting
()),
}
case
*
storepb
.
WorkspaceSetting_MemoRelatedSetting
:
workspaceSetting
.
Value
=
&
apiv2pb
.
WorkspaceSetting_MemoRelatedSetting
{
MemoRelatedSetting
:
convertWorkspaceMemoRelatedSettingFromStore
(
setting
.
GetMemoRelatedSetting
()),
}
case
*
storepb
.
WorkspaceSetting_TelegramIntegrationSetting
:
workspaceSetting
.
Value
=
&
apiv2pb
.
WorkspaceSetting_TelegramIntegrationSetting
{
TelegramIntegrationSetting
:
convertWorkspaceTelegramIntegrationSettingFromStore
(
setting
.
GetTelegramIntegrationSetting
()),
}
}
return
workspaceSetting
}
func
convertWorkspaceSettingToStore
(
setting
*
apiv2pb
.
WorkspaceSetting
)
*
storepb
.
WorkspaceSetting
{
settingKeyString
,
_
:=
ExtractWorkspaceSettingKeyFromName
(
setting
.
Name
)
return
&
storepb
.
WorkspaceSetting
{
workspaceSetting
:=
&
storepb
.
WorkspaceSetting
{
Key
:
storepb
.
WorkspaceSettingKey
(
storepb
.
WorkspaceSettingKey_value
[
settingKeyString
]),
Value
:
&
storepb
.
WorkspaceSetting_GeneralSetting
{
GeneralSetting
:
convertWorkspaceGeneralSettingToStore
(
setting
.
GetGeneralSetting
()),
},
}
switch
workspaceSetting
.
Key
{
case
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
:
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_GeneralSetting
{
GeneralSetting
:
convertWorkspaceGeneralSettingToStore
(
setting
.
GetGeneralSetting
()),
}
case
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_STORAGE
:
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_StorageSetting
{
StorageSetting
:
convertWorkspaceStorageSettingToStore
(
setting
.
GetStorageSetting
()),
}
case
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_MEMO_RELATED
:
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_MemoRelatedSetting
{
MemoRelatedSetting
:
convertWorkspaceMemoRelatedSettingToStore
(
setting
.
GetMemoRelatedSetting
()),
}
case
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_TELEGRAM_INTEGRATION
:
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_TelegramIntegrationSetting
{
TelegramIntegrationSetting
:
convertWorkspaceTelegramIntegrationSettingToStore
(
setting
.
GetTelegramIntegrationSetting
()),
}
}
return
workspaceSetting
}
func
convertWorkspaceGeneralSettingFromStore
(
setting
*
storepb
.
WorkspaceGeneralSetting
)
*
apiv2pb
.
WorkspaceGeneralSetting
{
...
...
@@ -97,3 +132,63 @@ func convertWorkspaceGeneralSettingToStore(setting *apiv2pb.WorkspaceGeneralSett
AdditionalStyle
:
setting
.
AdditionalStyle
,
}
}
func
convertWorkspaceStorageSettingFromStore
(
setting
*
storepb
.
WorkspaceStorageSetting
)
*
apiv2pb
.
WorkspaceStorageSetting
{
if
setting
==
nil
{
return
nil
}
return
&
apiv2pb
.
WorkspaceStorageSetting
{
StorageType
:
apiv2pb
.
WorkspaceStorageSetting_StorageType
(
setting
.
StorageType
),
LocalStoragePath
:
setting
.
LocalStoragePath
,
UploadSizeLimitMb
:
setting
.
UploadSizeLimitMb
,
}
}
func
convertWorkspaceStorageSettingToStore
(
setting
*
apiv2pb
.
WorkspaceStorageSetting
)
*
storepb
.
WorkspaceStorageSetting
{
if
setting
==
nil
{
return
nil
}
return
&
storepb
.
WorkspaceStorageSetting
{
StorageType
:
storepb
.
WorkspaceStorageSetting_StorageType
(
setting
.
StorageType
),
LocalStoragePath
:
setting
.
LocalStoragePath
,
UploadSizeLimitMb
:
setting
.
UploadSizeLimitMb
,
}
}
func
convertWorkspaceMemoRelatedSettingFromStore
(
setting
*
storepb
.
WorkspaceMemoRelatedSetting
)
*
apiv2pb
.
WorkspaceMemoRelatedSetting
{
if
setting
==
nil
{
return
nil
}
return
&
apiv2pb
.
WorkspaceMemoRelatedSetting
{
DisallowPublicVisible
:
setting
.
DisallowPublicVisible
,
DisplayWithUpdateTime
:
setting
.
DisplayWithUpdateTime
,
}
}
func
convertWorkspaceMemoRelatedSettingToStore
(
setting
*
apiv2pb
.
WorkspaceMemoRelatedSetting
)
*
storepb
.
WorkspaceMemoRelatedSetting
{
if
setting
==
nil
{
return
nil
}
return
&
storepb
.
WorkspaceMemoRelatedSetting
{
DisallowPublicVisible
:
setting
.
DisallowPublicVisible
,
DisplayWithUpdateTime
:
setting
.
DisplayWithUpdateTime
,
}
}
func
convertWorkspaceTelegramIntegrationSettingFromStore
(
setting
*
storepb
.
WorkspaceTelegramIntegrationSetting
)
*
apiv2pb
.
WorkspaceTelegramIntegrationSetting
{
if
setting
==
nil
{
return
nil
}
return
&
apiv2pb
.
WorkspaceTelegramIntegrationSetting
{
BotToken
:
setting
.
BotToken
,
}
}
func
convertWorkspaceTelegramIntegrationSettingToStore
(
setting
*
apiv2pb
.
WorkspaceTelegramIntegrationSetting
)
*
storepb
.
WorkspaceTelegramIntegrationSetting
{
if
setting
==
nil
{
return
nil
}
return
&
storepb
.
WorkspaceTelegramIntegrationSetting
{
BotToken
:
setting
.
BotToken
,
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment