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
c93b1efb
Commit
c93b1efb
authored
Apr 10, 2024
by
Steven
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: update workspace setting store
parent
58ae3217
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
210 additions
and
72 deletions
+210
-72
README.md
proto/gen/store/README.md
+20
-1
workspace_setting.pb.go
proto/gen/store/workspace_setting.pb.go
+166
-57
workspace_setting.proto
proto/store/workspace_setting.proto
+11
-1
workspace_setting_service.go
server/route/api/v2/workspace_setting_service.go
+3
-3
workspace_setting.go
store/db/mysql/workspace_setting.go
+2
-2
workspace_setting.go
store/db/postgres/workspace_setting.go
+2
-2
workspace_setting.go
store/db/sqlite/workspace_setting.go
+2
-2
migrator.go
store/migrator.go
+1
-1
workspace_setting.go
store/workspace_setting.go
+1
-1
workspace_setting_test.go
test/store/workspace_setting_test.go
+2
-2
No files found.
proto/gen/store/README.md
View file @
c93b1efb
...
...
@@ -38,6 +38,7 @@
-
[
store/workspace_setting.proto
](
#store_workspace_setting-proto
)
-
[
WorkspaceGeneralSetting
](
#memos-store-WorkspaceGeneralSetting
)
-
[
WorkspaceMemoRelatedSetting
](
#memos-store-WorkspaceMemoRelatedSetting
)
-
[
WorkspaceSetting
](
#memos-store-WorkspaceSetting
)
-
[
WorkspaceSettingKey
](
#memos-store-WorkspaceSettingKey
)
...
...
@@ -457,6 +458,22 @@
<a
name=
"memos-store-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-store-WorkspaceSetting"
></a>
### WorkspaceSetting
...
...
@@ -466,7 +483,8 @@
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| key |
[
WorkspaceSettingKey
](
#memos-store-WorkspaceSettingKey
)
| | |
| general |
[
WorkspaceGeneralSetting
](
#memos-store-WorkspaceGeneralSetting
)
| | |
| general_setting |
[
WorkspaceGeneralSetting
](
#memos-store-WorkspaceGeneralSetting
)
| | |
| memo_related_setting |
[
WorkspaceMemoRelatedSetting
](
#memos-store-WorkspaceMemoRelatedSetting
)
| | |
...
...
@@ -484,6 +502,7 @@
| ---- | ------ | ----------- |
| WORKSPACE_SETTING_KEY_UNSPECIFIED | 0 | |
| WORKSPACE_SETTING_GENERAL | 1 | WORKSPACE_SETTING_GENERAL is the key for general settings. |
| WORKSPACE_SETTING_MEMO_RELATED | 2 | WORKSPACE_SETTING_MEMO_RELATED is the key for memo related settings. |
...
...
proto/gen/store/workspace_setting.pb.go
View file @
c93b1efb
...
...
@@ -26,6 +26,8 @@ const (
WorkspaceSettingKey_WORKSPACE_SETTING_KEY_UNSPECIFIED
WorkspaceSettingKey
=
0
// WORKSPACE_SETTING_GENERAL is the key for general settings.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
WorkspaceSettingKey
=
1
// WORKSPACE_SETTING_MEMO_RELATED is the key for memo related settings.
WorkspaceSettingKey_WORKSPACE_SETTING_MEMO_RELATED
WorkspaceSettingKey
=
2
)
// Enum value maps for WorkspaceSettingKey.
...
...
@@ -33,10 +35,12 @@ var (
WorkspaceSettingKey_name
=
map
[
int32
]
string
{
0
:
"WORKSPACE_SETTING_KEY_UNSPECIFIED"
,
1
:
"WORKSPACE_SETTING_GENERAL"
,
2
:
"WORKSPACE_SETTING_MEMO_RELATED"
,
}
WorkspaceSettingKey_value
=
map
[
string
]
int32
{
"WORKSPACE_SETTING_KEY_UNSPECIFIED"
:
0
,
"WORKSPACE_SETTING_GENERAL"
:
1
,
"WORKSPACE_SETTING_MEMO_RELATED"
:
2
,
}
)
...
...
@@ -75,7 +79,8 @@ type WorkspaceSetting struct {
Key
WorkspaceSettingKey
`protobuf:"varint,1,opt,name=key,proto3,enum=memos.store.WorkspaceSettingKey" json:"key,omitempty"`
// Types that are assignable to Value:
//
// *WorkspaceSetting_General
// *WorkspaceSetting_GeneralSetting
// *WorkspaceSetting_MemoRelatedSetting
Value
isWorkspaceSetting_Value
`protobuf_oneof:"value"`
}
...
...
@@ -125,9 +130,16 @@ func (m *WorkspaceSetting) GetValue() isWorkspaceSetting_Value {
return
nil
}
func
(
x
*
WorkspaceSetting
)
GetGeneral
()
*
WorkspaceGeneralSetting
{
if
x
,
ok
:=
x
.
GetValue
()
.
(
*
WorkspaceSetting_General
);
ok
{
return
x
.
General
func
(
x
*
WorkspaceSetting
)
GetGeneralSetting
()
*
WorkspaceGeneralSetting
{
if
x
,
ok
:=
x
.
GetValue
()
.
(
*
WorkspaceSetting_GeneralSetting
);
ok
{
return
x
.
GeneralSetting
}
return
nil
}
func
(
x
*
WorkspaceSetting
)
GetMemoRelatedSetting
()
*
WorkspaceMemoRelatedSetting
{
if
x
,
ok
:=
x
.
GetValue
()
.
(
*
WorkspaceSetting_MemoRelatedSetting
);
ok
{
return
x
.
MemoRelatedSetting
}
return
nil
}
...
...
@@ -136,11 +148,17 @@ type isWorkspaceSetting_Value interface {
isWorkspaceSetting_Value
()
}
type
WorkspaceSetting_General
struct
{
General
*
WorkspaceGeneralSetting
`protobuf:"bytes,2,opt,name=general
,proto3,oneof"`
type
WorkspaceSetting_General
Setting
struct
{
General
Setting
*
WorkspaceGeneralSetting
`protobuf:"bytes,2,opt,name=general_setting,json=generalSetting
,proto3,oneof"`
}
func
(
*
WorkspaceSetting_General
)
isWorkspaceSetting_Value
()
{}
type
WorkspaceSetting_MemoRelatedSetting
struct
{
MemoRelatedSetting
*
WorkspaceMemoRelatedSetting
`protobuf:"bytes,3,opt,name=memo_related_setting,json=memoRelatedSetting,proto3,oneof"`
}
func
(
*
WorkspaceSetting_GeneralSetting
)
isWorkspaceSetting_Value
()
{}
func
(
*
WorkspaceSetting_MemoRelatedSetting
)
isWorkspaceSetting_Value
()
{}
type
WorkspaceGeneralSetting
struct
{
state
protoimpl
.
MessageState
...
...
@@ -226,53 +244,129 @@ func (x *WorkspaceGeneralSetting) GetAdditionalStyle() string {
return
""
}
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_store_workspace_setting_proto_msgTypes
[
2
]
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_store_workspace_setting_proto_msgTypes
[
2
]
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_store_workspace_setting_proto_rawDescGZIP
(),
[]
int
{
2
}
}
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
}
var
File_store_workspace_setting_proto
protoreflect
.
FileDescriptor
var
file_store_workspace_setting_proto_rawDesc
=
[]
byte
{
0x0a
,
0x1d
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x2f
,
0x77
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x12
,
0x0b
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x22
,
0x
91
,
0x01
,
0x0a
,
0x0b
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x22
,
0x
fe
,
0x01
,
0x0a
,
0x10
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x12
,
0x32
,
0x0a
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0e
,
0x32
,
0x20
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
0x2e
,
0x57
,
0x6f
,
0x72
,
0x6b
,
0x73
,
0x70
,
0x61
,
0x63
,
0x65
,
0x53
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x4b
,
0x65
,
0x79
,
0x52
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x40
,
0x0a
,
0x07
,
0x67
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x24
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
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
,
0x07
,
0x67
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
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
,
0x2a
,
0x5b
,
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
,
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
,
0x52
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x12
,
0x4f
,
0x0a
,
0x0f
,
0x67
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x61
,
0x6c
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x24
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
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
,
0x12
,
0x5c
,
0x0a
,
0x14
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x5f
,
0x72
,
0x65
,
0x6c
,
0x61
,
0x74
,
0x65
,
0x64
,
0x5f
,
0x73
,
0x65
,
0x74
,
0x74
,
0x69
,
0x6e
,
0x67
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x28
,
0x2e
,
0x6d
,
0x65
,
0x6d
,
0x6f
,
0x73
,
0x2e
,
0x73
,
0x74
,
0x6f
,
0x72
,
0x65
,
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
,
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
,
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
,
0x2a
,
0x7f
,
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
,
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
,
0x02
,
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
(
...
...
@@ -288,20 +382,22 @@ func file_store_workspace_setting_proto_rawDescGZIP() []byte {
}
var
file_store_workspace_setting_proto_enumTypes
=
make
([]
protoimpl
.
EnumInfo
,
1
)
var
file_store_workspace_setting_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
2
)
var
file_store_workspace_setting_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
3
)
var
file_store_workspace_setting_proto_goTypes
=
[]
interface
{}{
(
WorkspaceSettingKey
)(
0
),
// 0: memos.store.WorkspaceSettingKey
(
*
WorkspaceSetting
)(
nil
),
// 1: memos.store.WorkspaceSetting
(
*
WorkspaceGeneralSetting
)(
nil
),
// 2: memos.store.WorkspaceGeneralSetting
(
WorkspaceSettingKey
)(
0
),
// 0: memos.store.WorkspaceSettingKey
(
*
WorkspaceSetting
)(
nil
),
// 1: memos.store.WorkspaceSetting
(
*
WorkspaceGeneralSetting
)(
nil
),
// 2: memos.store.WorkspaceGeneralSetting
(
*
WorkspaceMemoRelatedSetting
)(
nil
),
// 3: memos.store.WorkspaceMemoRelatedSetting
}
var
file_store_workspace_setting_proto_depIdxs
=
[]
int32
{
0
,
// 0: memos.store.WorkspaceSetting.key:type_name -> memos.store.WorkspaceSettingKey
2
,
// 1: memos.store.WorkspaceSetting.general:type_name -> memos.store.WorkspaceGeneralSetting
2
,
// [2:2] is the sub-list for method output_type
2
,
// [2:2] is the sub-list for method input_type
2
,
// [2:2] is the sub-list for extension type_name
2
,
// [2:2] is the sub-list for extension extendee
0
,
// [0:2] is the sub-list for field type_name
2
,
// 1: memos.store.WorkspaceSetting.general_setting:type_name -> memos.store.WorkspaceGeneralSetting
3
,
// 2: memos.store.WorkspaceSetting.memo_related_setting:type_name -> memos.store.WorkspaceMemoRelatedSetting
3
,
// [3:3] is the sub-list for method output_type
3
,
// [3:3] is the sub-list for method input_type
3
,
// [3:3] is the sub-list for extension type_name
3
,
// [3:3] is the sub-list for extension extendee
0
,
// [0:3] is the sub-list for field type_name
}
func
init
()
{
file_store_workspace_setting_proto_init
()
}
...
...
@@ -334,9 +430,22 @@ func file_store_workspace_setting_proto_init() {
return
nil
}
}
file_store_workspace_setting_proto_msgTypes
[
2
]
.
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_store_workspace_setting_proto_msgTypes
[
0
]
.
OneofWrappers
=
[]
interface
{}{
(
*
WorkspaceSetting_General
)(
nil
),
(
*
WorkspaceSetting_GeneralSetting
)(
nil
),
(
*
WorkspaceSetting_MemoRelatedSetting
)(
nil
),
}
type
x
struct
{}
out
:=
protoimpl
.
TypeBuilder
{
...
...
@@ -344,7 +453,7 @@ func file_store_workspace_setting_proto_init() {
GoPackagePath
:
reflect
.
TypeOf
(
x
{})
.
PkgPath
(),
RawDescriptor
:
file_store_workspace_setting_proto_rawDesc
,
NumEnums
:
1
,
NumMessages
:
2
,
NumMessages
:
3
,
NumExtensions
:
0
,
NumServices
:
0
,
},
...
...
proto/store/workspace_setting.proto
View file @
c93b1efb
...
...
@@ -8,12 +8,15 @@ enum WorkspaceSettingKey {
WORKSPACE_SETTING_KEY_UNSPECIFIED
=
0
;
// WORKSPACE_SETTING_GENERAL is the key for general settings.
WORKSPACE_SETTING_GENERAL
=
1
;
// WORKSPACE_SETTING_MEMO_RELATED is the key for memo related settings.
WORKSPACE_SETTING_MEMO_RELATED
=
2
;
}
message
WorkspaceSetting
{
WorkspaceSettingKey
key
=
1
;
oneof
value
{
WorkspaceGeneralSetting
general
=
2
;
WorkspaceGeneralSetting
general_setting
=
2
;
WorkspaceMemoRelatedSetting
memo_related_setting
=
3
;
}
}
...
...
@@ -29,3 +32,10 @@ message WorkspaceGeneralSetting {
// additional_style is the additional style.
string
additional_style
=
6
;
}
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
;
}
server/route/api/v2/workspace_setting_service.go
View file @
c93b1efb
...
...
@@ -57,7 +57,7 @@ func convertWorkspaceSettingFromStore(setting *storepb.WorkspaceSetting) *apiv2p
return
&
apiv2pb
.
WorkspaceSetting
{
Name
:
fmt
.
Sprintf
(
"%s%s"
,
WorkspaceSettingNamePrefix
,
setting
.
Key
.
String
()),
Value
:
&
apiv2pb
.
WorkspaceSetting_GeneralSetting
{
GeneralSetting
:
convertWorkspaceGeneralSettingFromStore
(
setting
.
GetGeneral
()),
GeneralSetting
:
convertWorkspaceGeneralSettingFromStore
(
setting
.
GetGeneral
Setting
()),
},
}
}
...
...
@@ -66,8 +66,8 @@ func convertWorkspaceSettingToStore(setting *apiv2pb.WorkspaceSetting) *storepb.
settingKeyString
,
_
:=
ExtractWorkspaceSettingKeyFromName
(
setting
.
Name
)
return
&
storepb
.
WorkspaceSetting
{
Key
:
storepb
.
WorkspaceSettingKey
(
storepb
.
WorkspaceSettingKey_value
[
settingKeyString
]),
Value
:
&
storepb
.
WorkspaceSetting_General
{
General
:
convertWorkspaceGeneralSettingToStore
(
setting
.
GetGeneralSetting
()),
Value
:
&
storepb
.
WorkspaceSetting_General
Setting
{
General
Setting
:
convertWorkspaceGeneralSettingToStore
(
setting
.
GetGeneralSetting
()),
},
}
}
...
...
store/db/mysql/workspace_setting.go
View file @
c93b1efb
...
...
@@ -74,7 +74,7 @@ func (d *DB) UpsertWorkspaceSettingV1(ctx context.Context, upsert *storepb.Works
ON DUPLICATE KEY UPDATE value = ?`
var
valueString
string
if
upsert
.
Key
==
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
{
valueBytes
,
err
:=
protojson
.
Marshal
(
upsert
.
GetGeneral
())
valueBytes
,
err
:=
protojson
.
Marshal
(
upsert
.
GetGeneral
Setting
())
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -116,7 +116,7 @@ func (d *DB) ListWorkspaceSettingsV1(ctx context.Context, find *store.FindWorksp
if
err
:=
protojson
.
Unmarshal
([]
byte
(
valueString
),
generalSetting
);
err
!=
nil
{
return
nil
,
err
}
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_General
{
General
:
generalSetting
}
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_General
Setting
{
GeneralSetting
:
generalSetting
}
}
else
{
// Skip unknown workspace setting key.
continue
...
...
store/db/postgres/workspace_setting.go
View file @
c93b1efb
...
...
@@ -84,7 +84,7 @@ func (d *DB) UpsertWorkspaceSettingV1(ctx context.Context, upsert *storepb.Works
SET value = EXCLUDED.value`
var
valueString
string
if
upsert
.
Key
==
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
{
valueBytes
,
err
:=
protojson
.
Marshal
(
upsert
.
GetGeneral
())
valueBytes
,
err
:=
protojson
.
Marshal
(
upsert
.
GetGeneral
Setting
())
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -126,7 +126,7 @@ func (d *DB) ListWorkspaceSettingsV1(ctx context.Context, find *store.FindWorksp
if
err
:=
protojson
.
Unmarshal
([]
byte
(
valueString
),
generalSetting
);
err
!=
nil
{
return
nil
,
err
}
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_General
{
General
:
generalSetting
}
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_General
Setting
{
GeneralSetting
:
generalSetting
}
}
else
{
// Skip unknown workspace setting key.
continue
...
...
store/db/sqlite/workspace_setting.go
View file @
c93b1efb
...
...
@@ -84,7 +84,7 @@ func (d *DB) UpsertWorkspaceSettingV1(ctx context.Context, upsert *storepb.Works
SET value = EXCLUDED.value`
var
valueString
string
if
upsert
.
Key
==
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
{
valueBytes
,
err
:=
protojson
.
Marshal
(
upsert
.
GetGeneral
())
valueBytes
,
err
:=
protojson
.
Marshal
(
upsert
.
GetGeneral
Setting
())
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -125,7 +125,7 @@ func (d *DB) ListWorkspaceSettingsV1(ctx context.Context, find *store.FindWorksp
if
err
:=
protojson
.
Unmarshal
([]
byte
(
valueString
),
generalSetting
);
err
!=
nil
{
return
nil
,
err
}
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_General
{
General
:
generalSetting
}
workspaceSetting
.
Value
=
&
storepb
.
WorkspaceSetting_General
Setting
{
GeneralSetting
:
generalSetting
}
}
else
{
// Skip unknown workspace setting key.
continue
...
...
store/migrator.go
View file @
c93b1efb
...
...
@@ -52,7 +52,7 @@ func (s *Store) MigrateWorkspaceSetting(ctx context.Context) error {
if
_
,
err
:=
s
.
UpsertWorkspaceSettingV1
(
ctx
,
&
storepb
.
WorkspaceSetting
{
Key
:
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
,
Value
:
&
storepb
.
WorkspaceSetting_General
{
General
:
workspaceGeneralSetting
},
Value
:
&
storepb
.
WorkspaceSetting_General
Setting
{
GeneralSetting
:
workspaceGeneralSetting
},
});
err
!=
nil
{
return
errors
.
Wrap
(
err
,
"failed to upsert workspace general setting"
)
}
...
...
store/workspace_setting.go
View file @
c93b1efb
...
...
@@ -123,7 +123,7 @@ func (s *Store) GetWorkspaceGeneralSetting(ctx context.Context) (*storepb.Worksp
workspaceGeneralSetting
:=
&
storepb
.
WorkspaceGeneralSetting
{}
if
workspaceSetting
!=
nil
{
workspaceGeneralSetting
=
workspaceSetting
.
GetGeneral
()
workspaceGeneralSetting
=
workspaceSetting
.
GetGeneral
Setting
()
}
return
workspaceGeneralSetting
,
nil
}
test/store/workspace_setting_test.go
View file @
c93b1efb
...
...
@@ -15,8 +15,8 @@ func TestWorkspaceSettingV1Store(t *testing.T) {
ts
:=
NewTestingStore
(
ctx
,
t
)
workspaceSetting
,
err
:=
ts
.
UpsertWorkspaceSettingV1
(
ctx
,
&
storepb
.
WorkspaceSetting
{
Key
:
storepb
.
WorkspaceSettingKey_WORKSPACE_SETTING_GENERAL
,
Value
:
&
storepb
.
WorkspaceSetting_General
{
General
:
&
storepb
.
WorkspaceGeneralSetting
{
Value
:
&
storepb
.
WorkspaceSetting_General
Setting
{
General
Setting
:
&
storepb
.
WorkspaceGeneralSetting
{
DisallowSignup
:
true
,
},
},
...
...
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