Commit 9972a77d authored by Steven's avatar Steven

refactor: memo service

parent 91c2a4ce
...@@ -5,10 +5,10 @@ package memos.api.v1; ...@@ -5,10 +5,10 @@ package memos.api.v1;
import "api/v1/attachment_service.proto"; import "api/v1/attachment_service.proto";
import "api/v1/common.proto"; import "api/v1/common.proto";
import "api/v1/markdown_service.proto"; import "api/v1/markdown_service.proto";
import "api/v1/reaction_service.proto";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/client.proto"; import "google/api/client.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/empty.proto"; import "google/protobuf/empty.proto";
import "google/protobuf/field_mask.proto"; import "google/protobuf/field_mask.proto";
import "google/protobuf/timestamp.proto"; import "google/protobuf/timestamp.proto";
...@@ -22,6 +22,7 @@ service MemoService { ...@@ -22,6 +22,7 @@ service MemoService {
post: "/api/v1/memos" post: "/api/v1/memos"
body: "memo" body: "memo"
}; };
option (google.api.method_signature) = "memo";
} }
// ListMemos lists memos with pagination and filter. // ListMemos lists memos with pagination and filter.
rpc ListMemos(ListMemosRequest) returns (ListMemosResponse) { rpc ListMemos(ListMemosRequest) returns (ListMemosResponse) {
...@@ -29,6 +30,8 @@ service MemoService { ...@@ -29,6 +30,8 @@ service MemoService {
get: "/api/v1/memos" get: "/api/v1/memos"
additional_bindings: {get: "/api/v1/{parent=users/*}/memos"} additional_bindings: {get: "/api/v1/{parent=users/*}/memos"}
}; };
option (google.api.method_signature) = "";
option (google.api.method_signature) = "parent";
} }
// GetMemo gets a memo. // GetMemo gets a memo.
rpc GetMemo(GetMemoRequest) returns (Memo) { rpc GetMemo(GetMemoRequest) returns (Memo) {
...@@ -54,10 +57,12 @@ service MemoService { ...@@ -54,10 +57,12 @@ service MemoService {
patch: "/api/v1/{parent=memos/*}/tags:rename" patch: "/api/v1/{parent=memos/*}/tags:rename"
body: "*" body: "*"
}; };
option (google.api.method_signature) = "parent,old_tag,new_tag";
} }
// DeleteMemoTag deletes a tag for a memo. // DeleteMemoTag deletes a tag for a memo.
rpc DeleteMemoTag(DeleteMemoTagRequest) returns (google.protobuf.Empty) { rpc DeleteMemoTag(DeleteMemoTagRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {delete: "/api/v1/{parent=memos/*}/tags/{tag}"}; option (google.api.http) = {delete: "/api/v1/{parent=memos/*}/tags/{tag}"};
option (google.api.method_signature) = "parent,tag";
} }
// SetMemoAttachments sets attachments for a memo. // SetMemoAttachments sets attachments for a memo.
rpc SetMemoAttachments(SetMemoAttachmentsRequest) returns (google.protobuf.Empty) { rpc SetMemoAttachments(SetMemoAttachmentsRequest) returns (google.protobuf.Empty) {
...@@ -91,7 +96,7 @@ service MemoService { ...@@ -91,7 +96,7 @@ service MemoService {
post: "/api/v1/{name=memos/*}/comments" post: "/api/v1/{name=memos/*}/comments"
body: "comment" body: "comment"
}; };
option (google.api.method_signature) = "name"; option (google.api.method_signature) = "name,comment";
} }
// ListMemoComments lists comments for a memo. // ListMemoComments lists comments for a memo.
rpc ListMemoComments(ListMemoCommentsRequest) returns (ListMemoCommentsResponse) { rpc ListMemoComments(ListMemoCommentsRequest) returns (ListMemoCommentsResponse) {
...@@ -113,8 +118,8 @@ service MemoService { ...@@ -113,8 +118,8 @@ service MemoService {
} }
// DeleteMemoReaction deletes a reaction for a memo. // DeleteMemoReaction deletes a reaction for a memo.
rpc DeleteMemoReaction(DeleteMemoReactionRequest) returns (google.protobuf.Empty) { rpc DeleteMemoReaction(DeleteMemoReactionRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {delete: "/api/v1/reactions/{id}"}; option (google.api.http) = {delete: "/api/v1/{name=reactions/*}"};
option (google.api.method_signature) = "id"; option (google.api.method_signature) = "name";
} }
} }
...@@ -125,56 +130,122 @@ enum Visibility { ...@@ -125,56 +130,122 @@ enum Visibility {
PUBLIC = 3; PUBLIC = 3;
} }
message Memo { message Reaction {
reserved 2; option (google.api.resource) = {
type: "memos.api.v1/Reaction"
pattern: "reactions/{reaction}"
name_field: "name"
singular: "reaction"
plural: "reactions"
};
// The name of the memo. // The resource name of the reaction.
// Format: memos/{memo}, memo is the user defined id or uuid. // Format: reactions/{reaction}
string name = 1 [ string name = 1 [
(google.api.field_behavior) = OUTPUT_ONLY, (google.api.field_behavior) = OUTPUT_ONLY,
(google.api.field_behavior) = IDENTIFIER (google.api.field_behavior) = IDENTIFIER
]; ];
State state = 3; // Output only. The system generated unique identifier.
string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// The resource name of the creator.
// Format: users/{user}
string creator = 3 [
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = {type: "memos.api.v1/User"}
];
// The resource name of the content.
// For memo reactions, this should be the memo's resource name.
// Format: memos/{memo}
string content_id = 4 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Required. The type of reaction (e.g., "👍", "❤️", "😄").
string reaction_type = 5 [(google.api.field_behavior) = REQUIRED];
// Output only. The creation timestamp.
google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
}
message Memo {
option (google.api.resource) = {
type: "memos.api.v1/Memo"
pattern: "memos/{memo}"
name_field: "name"
singular: "memo"
plural: "memos"
};
reserved 2;
// The resource name of the memo.
// Format: memos/{memo}, memo is the user defined id or uuid.
string name = 1 [(google.api.field_behavior) = IDENTIFIER];
// The state of the memo.
State state = 3 [(google.api.field_behavior) = REQUIRED];
// The name of the creator. // The name of the creator.
// Format: users/{user} // Format: users/{user}
string creator = 4; string creator = 4 [
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = {type: "memos.api.v1/User"}
];
google.protobuf.Timestamp create_time = 5; // Output only. The creation timestamp.
google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp update_time = 6; // Output only. The last update timestamp.
google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp display_time = 7; // The display timestamp of the memo.
google.protobuf.Timestamp display_time = 7 [(google.api.field_behavior) = OPTIONAL];
string content = 8; // Required. The content of the memo in Markdown format.
string content = 8 [(google.api.field_behavior) = REQUIRED];
// Output only. The parsed nodes from the content.
repeated Node nodes = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; repeated Node nodes = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
Visibility visibility = 10; // The visibility of the memo.
Visibility visibility = 10 [(google.api.field_behavior) = REQUIRED];
// Output only. The tags extracted from the content.
repeated string tags = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; repeated string tags = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
bool pinned = 12; // Whether the memo is pinned.
bool pinned = 12 [(google.api.field_behavior) = OPTIONAL];
repeated Attachment attachments = 14; // Optional. The attachments of the memo.
repeated Attachment attachments = 14 [(google.api.field_behavior) = OPTIONAL];
repeated MemoRelation relations = 15; // Optional. The relations of the memo.
repeated MemoRelation relations = 15 [(google.api.field_behavior) = OPTIONAL];
// Output only. The reactions to the memo.
repeated Reaction reactions = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; repeated Reaction reactions = 16 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The computed properties of the memo.
Property property = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; Property property = 17 [(google.api.field_behavior) = OUTPUT_ONLY];
// The name of the parent memo. // Output only. The name of the parent memo.
// Format: memos/{id} // Format: memos/{memo}
optional string parent = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; optional string parent = 18 [
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// The snippet of the memo content. Plain text only. // Output only. The snippet of the memo content. Plain text only.
string snippet = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; string snippet = 19 [(google.api.field_behavior) = OUTPUT_ONLY];
// The location of the memo. // Optional. The location of the memo.
optional Location location = 20; optional Location location = 20 [(google.api.field_behavior) = OPTIONAL];
// Computed properties of a memo.
message Property { message Property {
bool has_link = 1; bool has_link = 1;
bool has_task_list = 2; bool has_task_list = 2;
...@@ -184,43 +255,66 @@ message Memo { ...@@ -184,43 +255,66 @@ message Memo {
} }
message Location { message Location {
string placeholder = 1; // A placeholder text for the location.
double latitude = 2; string placeholder = 1 [(google.api.field_behavior) = OPTIONAL];
double longitude = 3;
// The latitude of the location.
double latitude = 2 [(google.api.field_behavior) = OPTIONAL];
// The longitude of the location.
double longitude = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message CreateMemoRequest { message CreateMemoRequest {
// The memo to create. // Required. The memo to create.
Memo memo = 1 [(google.api.field_behavior) = REQUIRED]; Memo memo = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. The memo ID to use for this memo.
// If empty, a unique ID will be generated.
string memo_id = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. If set, validate the request but don't actually create the memo.
bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. An idempotency token.
string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
} }
message ListMemosRequest { message ListMemosRequest {
// The parent is the owner of the memos. // Optional. The parent is the owner of the memos.
// If not specified or `users/-`, it will list all memos. // If not specified or `users/-`, it will list all memos.
string parent = 1; // Format: users/{user}
string parent = 1 [
(google.api.field_behavior) = OPTIONAL,
(google.api.resource_reference) = {type: "memos.api.v1/User"}
];
// The maximum number of memos to return. // Optional. The maximum number of memos to return.
int32 page_size = 2; // The service may return fewer than this value.
// If unspecified, at most 50 memos will be returned.
// The maximum value is 1000; values above 1000 will be coerced to 1000.
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// A page token, received from a previous `ListMemos` call. // Optional. A page token, received from a previous `ListMemos` call.
// Provide this to retrieve the subsequent page. // Provide this to retrieve the subsequent page.
string page_token = 3; string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
// The state of the memos to list. // Optional. The state of the memos to list.
// Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. // Default to `NORMAL`. Set to `ARCHIVED` to list archived memos.
State state = 4; State state = 4 [(google.api.field_behavior) = OPTIONAL];
// What field to sort the results by.
// Default to display_time.
string sort = 5;
// The direction to sort the results by. // Optional. The order to sort results by.
// Default to DESC. // Default to "display_time desc".
Direction direction = 6; // Example: "display_time desc" or "create_time asc"
string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
// Optional. Filter to apply to the list results.
// Filter is a CEL expression to filter memos. // Filter is a CEL expression to filter memos.
// Refer to `Shortcut.filter`. // Refer to `Shortcut.filter`.
string filter = 7; string filter = 6 [(google.api.field_behavior) = OPTIONAL];
// Optional. If true, show deleted memos in the response.
bool show_deleted = 7 [(google.api.field_behavior) = OPTIONAL];
// [Deprecated] Old filter contains some specific conditions to filter memos. // [Deprecated] Old filter contains some specific conditions to filter memos.
// Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']" // Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']"
...@@ -228,136 +322,279 @@ message ListMemosRequest { ...@@ -228,136 +322,279 @@ message ListMemosRequest {
} }
message ListMemosResponse { message ListMemosResponse {
// The list of memos.
repeated Memo memos = 1; repeated Memo memos = 1;
// A token, which can be sent as `page_token` to retrieve the next page. // A token that can be sent as `page_token` to retrieve the next page.
// If this field is omitted, there are no subsequent pages. // If this field is omitted, there are no subsequent pages.
string next_page_token = 2; string next_page_token = 2;
// The total count of memos (may be approximate).
int32 total_size = 3;
} }
message GetMemoRequest { message GetMemoRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Optional. The fields to return in the response.
// If not specified, all fields are returned.
google.protobuf.FieldMask read_mask = 2 [(google.api.field_behavior) = OPTIONAL];
} }
message UpdateMemoRequest { message UpdateMemoRequest {
// The memo to update. // Required. The memo to update.
// The `name` field is required. // The `name` field is required.
Memo memo = 1 [(google.api.field_behavior) = REQUIRED]; Memo memo = 1 [(google.api.field_behavior) = REQUIRED];
google.protobuf.FieldMask update_mask = 2; // Required. The list of fields to update.
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. If set to true, allows updating sensitive fields.
bool allow_missing = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message DeleteMemoRequest { message DeleteMemoRequest {
// The name of the memo. // Required. The resource name of the memo to delete.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Optional. If set to true, the memo will be deleted even if it has associated data.
bool force = 2 [(google.api.field_behavior) = OPTIONAL];
} }
message RenameMemoTagRequest { message RenameMemoTagRequest {
// The parent, who owns the tags. // Required. The parent, who owns the tags.
// Format: memos/{id}. Use "memos/-" to rename all tags. // Format: memos/{memo}. Use "memos/-" to rename all tags.
string parent = 1; string parent = 1 [
string old_tag = 2; (google.api.field_behavior) = REQUIRED,
string new_tag = 3; (google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Required. The old tag name to rename.
string old_tag = 2 [(google.api.field_behavior) = REQUIRED];
// Required. The new tag name.
string new_tag = 3 [(google.api.field_behavior) = REQUIRED];
} }
message DeleteMemoTagRequest { message DeleteMemoTagRequest {
// The parent, who owns the tags. // Required. The parent, who owns the tags.
// Format: memos/{id}. Use "memos/-" to delete all tags. // Format: memos/{memo}. Use "memos/-" to delete all tags.
string parent = 1; string parent = 1 [
string tag = 2; (google.api.field_behavior) = REQUIRED,
bool delete_related_memos = 3; (google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Required. The tag name to delete.
string tag = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. Whether to delete related memos.
bool delete_related_memos = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message SetMemoAttachmentsRequest { message SetMemoAttachmentsRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
repeated Attachment attachments = 2; // Required. The attachments to set for the memo.
repeated Attachment attachments = 2 [(google.api.field_behavior) = REQUIRED];
} }
message ListMemoAttachmentsRequest { message ListMemoAttachmentsRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Optional. The maximum number of attachments to return.
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. A page token for pagination.
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message ListMemoAttachmentsResponse { message ListMemoAttachmentsResponse {
// The list of attachments.
repeated Attachment attachments = 1; repeated Attachment attachments = 1;
// A token for the next page of results.
string next_page_token = 2;
// The total count of attachments.
int32 total_size = 3;
} }
message MemoRelation { message MemoRelation {
Memo memo = 1; // The memo in the relation.
Memo memo = 1 [(google.api.field_behavior) = REQUIRED];
Memo related_memo = 2; // The related memo.
Memo related_memo = 2 [(google.api.field_behavior) = REQUIRED];
// The type of the relation.
enum Type { enum Type {
TYPE_UNSPECIFIED = 0; TYPE_UNSPECIFIED = 0;
REFERENCE = 1; REFERENCE = 1;
COMMENT = 2; COMMENT = 2;
} }
Type type = 3; Type type = 3 [(google.api.field_behavior) = REQUIRED];
// Memo reference in relations.
message Memo { message Memo {
// The name of the memo. // The resource name of the memo.
// Format: memos/{id} // Format: memos/{memo}
string name = 1; string name = 1 [
string uid = 2; (google.api.field_behavior) = REQUIRED,
// The snippet of the memo content. Plain text only. (google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Output only. The unique identifier of the memo.
string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The snippet of the memo content. Plain text only.
string snippet = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; string snippet = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
} }
} }
message SetMemoRelationsRequest { message SetMemoRelationsRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
repeated MemoRelation relations = 2; // Required. The relations to set for the memo.
repeated MemoRelation relations = 2 [(google.api.field_behavior) = REQUIRED];
} }
message ListMemoRelationsRequest { message ListMemoRelationsRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Optional. The maximum number of relations to return.
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. A page token for pagination.
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message ListMemoRelationsResponse { message ListMemoRelationsResponse {
// The list of relations.
repeated MemoRelation relations = 1; repeated MemoRelation relations = 1;
// A token for the next page of results.
string next_page_token = 2;
// The total count of relations.
int32 total_size = 3;
} }
message CreateMemoCommentRequest { message CreateMemoCommentRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// The comment to create. // Required. The comment to create.
Memo comment = 2; Memo comment = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. The comment ID to use.
string comment_id = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message ListMemoCommentsRequest { message ListMemoCommentsRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Optional. The maximum number of comments to return.
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. A page token for pagination.
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. The order to sort results by.
string order_by = 4 [(google.api.field_behavior) = OPTIONAL];
} }
message ListMemoCommentsResponse { message ListMemoCommentsResponse {
// The list of comment memos.
repeated Memo memos = 1; repeated Memo memos = 1;
// A token for the next page of results.
string next_page_token = 2;
// The total count of comments.
int32 total_size = 3;
} }
message ListMemoReactionsRequest { message ListMemoReactionsRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
// Optional. The maximum number of reactions to return.
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. A page token for pagination.
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
} }
message ListMemoReactionsResponse { message ListMemoReactionsResponse {
// The list of reactions.
repeated Reaction reactions = 1; repeated Reaction reactions = 1;
// A token for the next page of results.
string next_page_token = 2;
// The total count of reactions.
int32 total_size = 3;
} }
message UpsertMemoReactionRequest { message UpsertMemoReactionRequest {
// The name of the memo. // Required. The resource name of the memo.
string name = 1; // Format: memos/{memo}
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Memo"}
];
Reaction reaction = 2; // Required. The reaction to upsert.
Reaction reaction = 2 [(google.api.field_behavior) = REQUIRED];
} }
message DeleteMemoReactionRequest { message DeleteMemoReactionRequest {
// The id of the reaction. // Required. The resource name of the reaction to delete.
// Refer to the `Reaction.id`. // Format: reactions/{reaction}
int32 id = 1; string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {type: "memos.api.v1/Reaction"}
];
} }
syntax = "proto3";
package memos.api.v1;
option go_package = "gen/api/v1";
message Reaction {
int32 id = 1;
// The name of the creator.
// Format: users/{user}
string creator = 2;
// The content identifier.
// For memo, it should be the `Memo.name`.
string content_id = 3;
string reaction_type = 4;
}
...@@ -77,6 +77,7 @@ func (Visibility) EnumDescriptor() ([]byte, []int) { ...@@ -77,6 +77,7 @@ func (Visibility) EnumDescriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{0} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{0}
} }
// The type of the relation.
type MemoRelation_Type int32 type MemoRelation_Type int32
const ( const (
...@@ -123,36 +124,143 @@ func (x MemoRelation_Type) Number() protoreflect.EnumNumber { ...@@ -123,36 +124,143 @@ func (x MemoRelation_Type) Number() protoreflect.EnumNumber {
// Deprecated: Use MemoRelation_Type.Descriptor instead. // Deprecated: Use MemoRelation_Type.Descriptor instead.
func (MemoRelation_Type) EnumDescriptor() ([]byte, []int) { func (MemoRelation_Type) EnumDescriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{13, 0} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{14, 0}
}
type Reaction struct {
state protoimpl.MessageState `protogen:"open.v1"`
// The resource name of the reaction.
// Format: reactions/{reaction}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. The system generated unique identifier.
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty"`
// The resource name of the creator.
// Format: users/{user}
Creator string `protobuf:"bytes,3,opt,name=creator,proto3" json:"creator,omitempty"`
// The resource name of the content.
// For memo reactions, this should be the memo's resource name.
// Format: memos/{memo}
ContentId string `protobuf:"bytes,4,opt,name=content_id,json=contentId,proto3" json:"content_id,omitempty"`
// Required. The type of reaction (e.g., "👍", "❤️", "😄").
ReactionType string `protobuf:"bytes,5,opt,name=reaction_type,json=reactionType,proto3" json:"reaction_type,omitempty"`
// Output only. The creation timestamp.
CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Reaction) Reset() {
*x = Reaction{}
mi := &file_api_v1_memo_service_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Reaction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Reaction) ProtoMessage() {}
func (x *Reaction) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_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 Reaction.ProtoReflect.Descriptor instead.
func (*Reaction) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{0}
}
func (x *Reaction) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Reaction) GetUid() string {
if x != nil {
return x.Uid
}
return ""
}
func (x *Reaction) GetCreator() string {
if x != nil {
return x.Creator
}
return ""
}
func (x *Reaction) GetContentId() string {
if x != nil {
return x.ContentId
}
return ""
}
func (x *Reaction) GetReactionType() string {
if x != nil {
return x.ReactionType
}
return ""
}
func (x *Reaction) GetCreateTime() *timestamppb.Timestamp {
if x != nil {
return x.CreateTime
}
return nil
} }
type Memo struct { type Memo struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // The resource name of the memo.
// Format: memos/{memo}, memo is the user defined id or uuid. // Format: memos/{memo}, memo is the user defined id or uuid.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The state of the memo.
State State `protobuf:"varint,3,opt,name=state,proto3,enum=memos.api.v1.State" json:"state,omitempty"` State State `protobuf:"varint,3,opt,name=state,proto3,enum=memos.api.v1.State" json:"state,omitempty"`
// The name of the creator. // The name of the creator.
// Format: users/{user} // Format: users/{user}
Creator string `protobuf:"bytes,4,opt,name=creator,proto3" json:"creator,omitempty"` Creator string `protobuf:"bytes,4,opt,name=creator,proto3" json:"creator,omitempty"`
// Output only. The creation timestamp.
CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
// Output only. The last update timestamp.
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` UpdateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
// The display timestamp of the memo.
DisplayTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=display_time,json=displayTime,proto3" json:"display_time,omitempty"` DisplayTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=display_time,json=displayTime,proto3" json:"display_time,omitempty"`
// Required. The content of the memo in Markdown format.
Content string `protobuf:"bytes,8,opt,name=content,proto3" json:"content,omitempty"` Content string `protobuf:"bytes,8,opt,name=content,proto3" json:"content,omitempty"`
// Output only. The parsed nodes from the content.
Nodes []*Node `protobuf:"bytes,9,rep,name=nodes,proto3" json:"nodes,omitempty"` Nodes []*Node `protobuf:"bytes,9,rep,name=nodes,proto3" json:"nodes,omitempty"`
// The visibility of the memo.
Visibility Visibility `protobuf:"varint,10,opt,name=visibility,proto3,enum=memos.api.v1.Visibility" json:"visibility,omitempty"` Visibility Visibility `protobuf:"varint,10,opt,name=visibility,proto3,enum=memos.api.v1.Visibility" json:"visibility,omitempty"`
// Output only. The tags extracted from the content.
Tags []string `protobuf:"bytes,11,rep,name=tags,proto3" json:"tags,omitempty"` Tags []string `protobuf:"bytes,11,rep,name=tags,proto3" json:"tags,omitempty"`
// Whether the memo is pinned.
Pinned bool `protobuf:"varint,12,opt,name=pinned,proto3" json:"pinned,omitempty"` Pinned bool `protobuf:"varint,12,opt,name=pinned,proto3" json:"pinned,omitempty"`
// Optional. The attachments of the memo.
Attachments []*Attachment `protobuf:"bytes,14,rep,name=attachments,proto3" json:"attachments,omitempty"` Attachments []*Attachment `protobuf:"bytes,14,rep,name=attachments,proto3" json:"attachments,omitempty"`
// Optional. The relations of the memo.
Relations []*MemoRelation `protobuf:"bytes,15,rep,name=relations,proto3" json:"relations,omitempty"` Relations []*MemoRelation `protobuf:"bytes,15,rep,name=relations,proto3" json:"relations,omitempty"`
// Output only. The reactions to the memo.
Reactions []*Reaction `protobuf:"bytes,16,rep,name=reactions,proto3" json:"reactions,omitempty"` Reactions []*Reaction `protobuf:"bytes,16,rep,name=reactions,proto3" json:"reactions,omitempty"`
// Output only. The computed properties of the memo.
Property *Memo_Property `protobuf:"bytes,17,opt,name=property,proto3" json:"property,omitempty"` Property *Memo_Property `protobuf:"bytes,17,opt,name=property,proto3" json:"property,omitempty"`
// The name of the parent memo. // Output only. The name of the parent memo.
// Format: memos/{id} // Format: memos/{memo}
Parent *string `protobuf:"bytes,18,opt,name=parent,proto3,oneof" json:"parent,omitempty"` Parent *string `protobuf:"bytes,18,opt,name=parent,proto3,oneof" json:"parent,omitempty"`
// The snippet of the memo content. Plain text only. // Output only. The snippet of the memo content. Plain text only.
Snippet string `protobuf:"bytes,19,opt,name=snippet,proto3" json:"snippet,omitempty"` Snippet string `protobuf:"bytes,19,opt,name=snippet,proto3" json:"snippet,omitempty"`
// The location of the memo. // Optional. The location of the memo.
Location *Location `protobuf:"bytes,20,opt,name=location,proto3,oneof" json:"location,omitempty"` Location *Location `protobuf:"bytes,20,opt,name=location,proto3,oneof" json:"location,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -160,7 +268,7 @@ type Memo struct { ...@@ -160,7 +268,7 @@ type Memo struct {
func (x *Memo) Reset() { func (x *Memo) Reset() {
*x = Memo{} *x = Memo{}
mi := &file_api_v1_memo_service_proto_msgTypes[0] mi := &file_api_v1_memo_service_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -172,7 +280,7 @@ func (x *Memo) String() string { ...@@ -172,7 +280,7 @@ func (x *Memo) String() string {
func (*Memo) ProtoMessage() {} func (*Memo) ProtoMessage() {}
func (x *Memo) ProtoReflect() protoreflect.Message { func (x *Memo) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[0] mi := &file_api_v1_memo_service_proto_msgTypes[1]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -185,7 +293,7 @@ func (x *Memo) ProtoReflect() protoreflect.Message { ...@@ -185,7 +293,7 @@ func (x *Memo) ProtoReflect() protoreflect.Message {
// Deprecated: Use Memo.ProtoReflect.Descriptor instead. // Deprecated: Use Memo.ProtoReflect.Descriptor instead.
func (*Memo) Descriptor() ([]byte, []int) { func (*Memo) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{0} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{1}
} }
func (x *Memo) GetName() string { func (x *Memo) GetName() string {
...@@ -316,8 +424,11 @@ func (x *Memo) GetLocation() *Location { ...@@ -316,8 +424,11 @@ func (x *Memo) GetLocation() *Location {
type Location struct { type Location struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// A placeholder text for the location.
Placeholder string `protobuf:"bytes,1,opt,name=placeholder,proto3" json:"placeholder,omitempty"` Placeholder string `protobuf:"bytes,1,opt,name=placeholder,proto3" json:"placeholder,omitempty"`
// The latitude of the location.
Latitude float64 `protobuf:"fixed64,2,opt,name=latitude,proto3" json:"latitude,omitempty"` Latitude float64 `protobuf:"fixed64,2,opt,name=latitude,proto3" json:"latitude,omitempty"`
// The longitude of the location.
Longitude float64 `protobuf:"fixed64,3,opt,name=longitude,proto3" json:"longitude,omitempty"` Longitude float64 `protobuf:"fixed64,3,opt,name=longitude,proto3" json:"longitude,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -325,7 +436,7 @@ type Location struct { ...@@ -325,7 +436,7 @@ type Location struct {
func (x *Location) Reset() { func (x *Location) Reset() {
*x = Location{} *x = Location{}
mi := &file_api_v1_memo_service_proto_msgTypes[1] mi := &file_api_v1_memo_service_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -337,7 +448,7 @@ func (x *Location) String() string { ...@@ -337,7 +448,7 @@ func (x *Location) String() string {
func (*Location) ProtoMessage() {} func (*Location) ProtoMessage() {}
func (x *Location) ProtoReflect() protoreflect.Message { func (x *Location) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[1] mi := &file_api_v1_memo_service_proto_msgTypes[2]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -350,7 +461,7 @@ func (x *Location) ProtoReflect() protoreflect.Message { ...@@ -350,7 +461,7 @@ func (x *Location) ProtoReflect() protoreflect.Message {
// Deprecated: Use Location.ProtoReflect.Descriptor instead. // Deprecated: Use Location.ProtoReflect.Descriptor instead.
func (*Location) Descriptor() ([]byte, []int) { func (*Location) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{1} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{2}
} }
func (x *Location) GetPlaceholder() string { func (x *Location) GetPlaceholder() string {
...@@ -376,15 +487,22 @@ func (x *Location) GetLongitude() float64 { ...@@ -376,15 +487,22 @@ func (x *Location) GetLongitude() float64 {
type CreateMemoRequest struct { type CreateMemoRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The memo to create. // Required. The memo to create.
Memo *Memo `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"` Memo *Memo `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"`
// Optional. The memo ID to use for this memo.
// If empty, a unique ID will be generated.
MemoId string `protobuf:"bytes,2,opt,name=memo_id,json=memoId,proto3" json:"memo_id,omitempty"`
// Optional. If set, validate the request but don't actually create the memo.
ValidateOnly bool `protobuf:"varint,3,opt,name=validate_only,json=validateOnly,proto3" json:"validate_only,omitempty"`
// Optional. An idempotency token.
RequestId string `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *CreateMemoRequest) Reset() { func (x *CreateMemoRequest) Reset() {
*x = CreateMemoRequest{} *x = CreateMemoRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[2] mi := &file_api_v1_memo_service_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -396,7 +514,7 @@ func (x *CreateMemoRequest) String() string { ...@@ -396,7 +514,7 @@ func (x *CreateMemoRequest) String() string {
func (*CreateMemoRequest) ProtoMessage() {} func (*CreateMemoRequest) ProtoMessage() {}
func (x *CreateMemoRequest) ProtoReflect() protoreflect.Message { func (x *CreateMemoRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[2] mi := &file_api_v1_memo_service_proto_msgTypes[3]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -409,7 +527,7 @@ func (x *CreateMemoRequest) ProtoReflect() protoreflect.Message { ...@@ -409,7 +527,7 @@ func (x *CreateMemoRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateMemoRequest.ProtoReflect.Descriptor instead. // Deprecated: Use CreateMemoRequest.ProtoReflect.Descriptor instead.
func (*CreateMemoRequest) Descriptor() ([]byte, []int) { func (*CreateMemoRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{2} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{3}
} }
func (x *CreateMemoRequest) GetMemo() *Memo { func (x *CreateMemoRequest) GetMemo() *Memo {
...@@ -419,28 +537,54 @@ func (x *CreateMemoRequest) GetMemo() *Memo { ...@@ -419,28 +537,54 @@ func (x *CreateMemoRequest) GetMemo() *Memo {
return nil return nil
} }
func (x *CreateMemoRequest) GetMemoId() string {
if x != nil {
return x.MemoId
}
return ""
}
func (x *CreateMemoRequest) GetValidateOnly() bool {
if x != nil {
return x.ValidateOnly
}
return false
}
func (x *CreateMemoRequest) GetRequestId() string {
if x != nil {
return x.RequestId
}
return ""
}
type ListMemosRequest struct { type ListMemosRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The parent is the owner of the memos. // Optional. The parent is the owner of the memos.
// If not specified or `users/-`, it will list all memos. // If not specified or `users/-`, it will list all memos.
// Format: users/{user}
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// The maximum number of memos to return. // Optional. The maximum number of memos to return.
// The service may return fewer than this value.
// If unspecified, at most 50 memos will be returned.
// The maximum value is 1000; values above 1000 will be coerced to 1000.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// A page token, received from a previous `ListMemos` call. // Optional. A page token, received from a previous `ListMemos` call.
// Provide this to retrieve the subsequent page. // Provide this to retrieve the subsequent page.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// The state of the memos to list. // Optional. The state of the memos to list.
// Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. // Default to `NORMAL`. Set to `ARCHIVED` to list archived memos.
State State `protobuf:"varint,4,opt,name=state,proto3,enum=memos.api.v1.State" json:"state,omitempty"` State State `protobuf:"varint,4,opt,name=state,proto3,enum=memos.api.v1.State" json:"state,omitempty"`
// What field to sort the results by. // Optional. The order to sort results by.
// Default to display_time. // Default to "display_time desc".
Sort string `protobuf:"bytes,5,opt,name=sort,proto3" json:"sort,omitempty"` // Example: "display_time desc" or "create_time asc"
// The direction to sort the results by. OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
// Default to DESC. // Optional. Filter to apply to the list results.
Direction Direction `protobuf:"varint,6,opt,name=direction,proto3,enum=memos.api.v1.Direction" json:"direction,omitempty"`
// Filter is a CEL expression to filter memos. // Filter is a CEL expression to filter memos.
// Refer to `Shortcut.filter`. // Refer to `Shortcut.filter`.
Filter string `protobuf:"bytes,7,opt,name=filter,proto3" json:"filter,omitempty"` Filter string `protobuf:"bytes,6,opt,name=filter,proto3" json:"filter,omitempty"`
// Optional. If true, show deleted memos in the response.
ShowDeleted bool `protobuf:"varint,7,opt,name=show_deleted,json=showDeleted,proto3" json:"show_deleted,omitempty"`
// [Deprecated] Old filter contains some specific conditions to filter memos. // [Deprecated] Old filter contains some specific conditions to filter memos.
// Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']" // Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']"
OldFilter string `protobuf:"bytes,8,opt,name=old_filter,json=oldFilter,proto3" json:"old_filter,omitempty"` OldFilter string `protobuf:"bytes,8,opt,name=old_filter,json=oldFilter,proto3" json:"old_filter,omitempty"`
...@@ -450,7 +594,7 @@ type ListMemosRequest struct { ...@@ -450,7 +594,7 @@ type ListMemosRequest struct {
func (x *ListMemosRequest) Reset() { func (x *ListMemosRequest) Reset() {
*x = ListMemosRequest{} *x = ListMemosRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[3] mi := &file_api_v1_memo_service_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -462,7 +606,7 @@ func (x *ListMemosRequest) String() string { ...@@ -462,7 +606,7 @@ func (x *ListMemosRequest) String() string {
func (*ListMemosRequest) ProtoMessage() {} func (*ListMemosRequest) ProtoMessage() {}
func (x *ListMemosRequest) ProtoReflect() protoreflect.Message { func (x *ListMemosRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[3] mi := &file_api_v1_memo_service_proto_msgTypes[4]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -475,7 +619,7 @@ func (x *ListMemosRequest) ProtoReflect() protoreflect.Message { ...@@ -475,7 +619,7 @@ func (x *ListMemosRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemosRequest.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemosRequest.ProtoReflect.Descriptor instead.
func (*ListMemosRequest) Descriptor() ([]byte, []int) { func (*ListMemosRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{3} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{4}
} }
func (x *ListMemosRequest) GetParent() string { func (x *ListMemosRequest) GetParent() string {
...@@ -506,25 +650,25 @@ func (x *ListMemosRequest) GetState() State { ...@@ -506,25 +650,25 @@ func (x *ListMemosRequest) GetState() State {
return State_STATE_UNSPECIFIED return State_STATE_UNSPECIFIED
} }
func (x *ListMemosRequest) GetSort() string { func (x *ListMemosRequest) GetOrderBy() string {
if x != nil { if x != nil {
return x.Sort return x.OrderBy
} }
return "" return ""
} }
func (x *ListMemosRequest) GetDirection() Direction { func (x *ListMemosRequest) GetFilter() string {
if x != nil { if x != nil {
return x.Direction return x.Filter
} }
return Direction_DIRECTION_UNSPECIFIED return ""
} }
func (x *ListMemosRequest) GetFilter() string { func (x *ListMemosRequest) GetShowDeleted() bool {
if x != nil { if x != nil {
return x.Filter return x.ShowDeleted
} }
return "" return false
} }
func (x *ListMemosRequest) GetOldFilter() string { func (x *ListMemosRequest) GetOldFilter() string {
...@@ -536,17 +680,20 @@ func (x *ListMemosRequest) GetOldFilter() string { ...@@ -536,17 +680,20 @@ func (x *ListMemosRequest) GetOldFilter() string {
type ListMemosResponse struct { type ListMemosResponse struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The list of memos.
Memos []*Memo `protobuf:"bytes,1,rep,name=memos,proto3" json:"memos,omitempty"` Memos []*Memo `protobuf:"bytes,1,rep,name=memos,proto3" json:"memos,omitempty"`
// A token, which can be sent as `page_token` to retrieve the next page. // A token that can be sent as `page_token` to retrieve the next page.
// If this field is omitted, there are no subsequent pages. // If this field is omitted, there are no subsequent pages.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// The total count of memos (may be approximate).
TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemosResponse) Reset() { func (x *ListMemosResponse) Reset() {
*x = ListMemosResponse{} *x = ListMemosResponse{}
mi := &file_api_v1_memo_service_proto_msgTypes[4] mi := &file_api_v1_memo_service_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -558,7 +705,7 @@ func (x *ListMemosResponse) String() string { ...@@ -558,7 +705,7 @@ func (x *ListMemosResponse) String() string {
func (*ListMemosResponse) ProtoMessage() {} func (*ListMemosResponse) ProtoMessage() {}
func (x *ListMemosResponse) ProtoReflect() protoreflect.Message { func (x *ListMemosResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[4] mi := &file_api_v1_memo_service_proto_msgTypes[5]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -571,7 +718,7 @@ func (x *ListMemosResponse) ProtoReflect() protoreflect.Message { ...@@ -571,7 +718,7 @@ func (x *ListMemosResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemosResponse.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemosResponse.ProtoReflect.Descriptor instead.
func (*ListMemosResponse) Descriptor() ([]byte, []int) { func (*ListMemosResponse) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{4} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{5}
} }
func (x *ListMemosResponse) GetMemos() []*Memo { func (x *ListMemosResponse) GetMemos() []*Memo {
...@@ -588,17 +735,28 @@ func (x *ListMemosResponse) GetNextPageToken() string { ...@@ -588,17 +735,28 @@ func (x *ListMemosResponse) GetNextPageToken() string {
return "" return ""
} }
func (x *ListMemosResponse) GetTotalSize() int32 {
if x != nil {
return x.TotalSize
}
return 0
}
type GetMemoRequest struct { type GetMemoRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. The fields to return in the response.
// If not specified, all fields are returned.
ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *GetMemoRequest) Reset() { func (x *GetMemoRequest) Reset() {
*x = GetMemoRequest{} *x = GetMemoRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[5] mi := &file_api_v1_memo_service_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -610,7 +768,7 @@ func (x *GetMemoRequest) String() string { ...@@ -610,7 +768,7 @@ func (x *GetMemoRequest) String() string {
func (*GetMemoRequest) ProtoMessage() {} func (*GetMemoRequest) ProtoMessage() {}
func (x *GetMemoRequest) ProtoReflect() protoreflect.Message { func (x *GetMemoRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[5] mi := &file_api_v1_memo_service_proto_msgTypes[6]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -623,7 +781,7 @@ func (x *GetMemoRequest) ProtoReflect() protoreflect.Message { ...@@ -623,7 +781,7 @@ func (x *GetMemoRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetMemoRequest.ProtoReflect.Descriptor instead. // Deprecated: Use GetMemoRequest.ProtoReflect.Descriptor instead.
func (*GetMemoRequest) Descriptor() ([]byte, []int) { func (*GetMemoRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{5} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{6}
} }
func (x *GetMemoRequest) GetName() string { func (x *GetMemoRequest) GetName() string {
...@@ -633,19 +791,29 @@ func (x *GetMemoRequest) GetName() string { ...@@ -633,19 +791,29 @@ func (x *GetMemoRequest) GetName() string {
return "" return ""
} }
func (x *GetMemoRequest) GetReadMask() *fieldmaskpb.FieldMask {
if x != nil {
return x.ReadMask
}
return nil
}
type UpdateMemoRequest struct { type UpdateMemoRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The memo to update. // Required. The memo to update.
// The `name` field is required. // The `name` field is required.
Memo *Memo `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"` Memo *Memo `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"`
// Required. The list of fields to update.
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
// Optional. If set to true, allows updating sensitive fields.
AllowMissing bool `protobuf:"varint,3,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *UpdateMemoRequest) Reset() { func (x *UpdateMemoRequest) Reset() {
*x = UpdateMemoRequest{} *x = UpdateMemoRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[6] mi := &file_api_v1_memo_service_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -657,7 +825,7 @@ func (x *UpdateMemoRequest) String() string { ...@@ -657,7 +825,7 @@ func (x *UpdateMemoRequest) String() string {
func (*UpdateMemoRequest) ProtoMessage() {} func (*UpdateMemoRequest) ProtoMessage() {}
func (x *UpdateMemoRequest) ProtoReflect() protoreflect.Message { func (x *UpdateMemoRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[6] mi := &file_api_v1_memo_service_proto_msgTypes[7]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -670,7 +838,7 @@ func (x *UpdateMemoRequest) ProtoReflect() protoreflect.Message { ...@@ -670,7 +838,7 @@ func (x *UpdateMemoRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateMemoRequest.ProtoReflect.Descriptor instead. // Deprecated: Use UpdateMemoRequest.ProtoReflect.Descriptor instead.
func (*UpdateMemoRequest) Descriptor() ([]byte, []int) { func (*UpdateMemoRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{6} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{7}
} }
func (x *UpdateMemoRequest) GetMemo() *Memo { func (x *UpdateMemoRequest) GetMemo() *Memo {
...@@ -687,17 +855,27 @@ func (x *UpdateMemoRequest) GetUpdateMask() *fieldmaskpb.FieldMask { ...@@ -687,17 +855,27 @@ func (x *UpdateMemoRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
return nil return nil
} }
func (x *UpdateMemoRequest) GetAllowMissing() bool {
if x != nil {
return x.AllowMissing
}
return false
}
type DeleteMemoRequest struct { type DeleteMemoRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo to delete.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. If set to true, the memo will be deleted even if it has associated data.
Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *DeleteMemoRequest) Reset() { func (x *DeleteMemoRequest) Reset() {
*x = DeleteMemoRequest{} *x = DeleteMemoRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[7] mi := &file_api_v1_memo_service_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -709,7 +887,7 @@ func (x *DeleteMemoRequest) String() string { ...@@ -709,7 +887,7 @@ func (x *DeleteMemoRequest) String() string {
func (*DeleteMemoRequest) ProtoMessage() {} func (*DeleteMemoRequest) ProtoMessage() {}
func (x *DeleteMemoRequest) ProtoReflect() protoreflect.Message { func (x *DeleteMemoRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[7] mi := &file_api_v1_memo_service_proto_msgTypes[8]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -722,7 +900,7 @@ func (x *DeleteMemoRequest) ProtoReflect() protoreflect.Message { ...@@ -722,7 +900,7 @@ func (x *DeleteMemoRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteMemoRequest.ProtoReflect.Descriptor instead. // Deprecated: Use DeleteMemoRequest.ProtoReflect.Descriptor instead.
func (*DeleteMemoRequest) Descriptor() ([]byte, []int) { func (*DeleteMemoRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{7} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{8}
} }
func (x *DeleteMemoRequest) GetName() string { func (x *DeleteMemoRequest) GetName() string {
...@@ -732,12 +910,21 @@ func (x *DeleteMemoRequest) GetName() string { ...@@ -732,12 +910,21 @@ func (x *DeleteMemoRequest) GetName() string {
return "" return ""
} }
func (x *DeleteMemoRequest) GetForce() bool {
if x != nil {
return x.Force
}
return false
}
type RenameMemoTagRequest struct { type RenameMemoTagRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The parent, who owns the tags. // Required. The parent, who owns the tags.
// Format: memos/{id}. Use "memos/-" to rename all tags. // Format: memos/{memo}. Use "memos/-" to rename all tags.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. The old tag name to rename.
OldTag string `protobuf:"bytes,2,opt,name=old_tag,json=oldTag,proto3" json:"old_tag,omitempty"` OldTag string `protobuf:"bytes,2,opt,name=old_tag,json=oldTag,proto3" json:"old_tag,omitempty"`
// Required. The new tag name.
NewTag string `protobuf:"bytes,3,opt,name=new_tag,json=newTag,proto3" json:"new_tag,omitempty"` NewTag string `protobuf:"bytes,3,opt,name=new_tag,json=newTag,proto3" json:"new_tag,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -745,7 +932,7 @@ type RenameMemoTagRequest struct { ...@@ -745,7 +932,7 @@ type RenameMemoTagRequest struct {
func (x *RenameMemoTagRequest) Reset() { func (x *RenameMemoTagRequest) Reset() {
*x = RenameMemoTagRequest{} *x = RenameMemoTagRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[8] mi := &file_api_v1_memo_service_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -757,7 +944,7 @@ func (x *RenameMemoTagRequest) String() string { ...@@ -757,7 +944,7 @@ func (x *RenameMemoTagRequest) String() string {
func (*RenameMemoTagRequest) ProtoMessage() {} func (*RenameMemoTagRequest) ProtoMessage() {}
func (x *RenameMemoTagRequest) ProtoReflect() protoreflect.Message { func (x *RenameMemoTagRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[8] mi := &file_api_v1_memo_service_proto_msgTypes[9]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -770,7 +957,7 @@ func (x *RenameMemoTagRequest) ProtoReflect() protoreflect.Message { ...@@ -770,7 +957,7 @@ func (x *RenameMemoTagRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use RenameMemoTagRequest.ProtoReflect.Descriptor instead. // Deprecated: Use RenameMemoTagRequest.ProtoReflect.Descriptor instead.
func (*RenameMemoTagRequest) Descriptor() ([]byte, []int) { func (*RenameMemoTagRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{8} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{9}
} }
func (x *RenameMemoTagRequest) GetParent() string { func (x *RenameMemoTagRequest) GetParent() string {
...@@ -796,10 +983,12 @@ func (x *RenameMemoTagRequest) GetNewTag() string { ...@@ -796,10 +983,12 @@ func (x *RenameMemoTagRequest) GetNewTag() string {
type DeleteMemoTagRequest struct { type DeleteMemoTagRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The parent, who owns the tags. // Required. The parent, who owns the tags.
// Format: memos/{id}. Use "memos/-" to delete all tags. // Format: memos/{memo}. Use "memos/-" to delete all tags.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. The tag name to delete.
Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"` Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
// Optional. Whether to delete related memos.
DeleteRelatedMemos bool `protobuf:"varint,3,opt,name=delete_related_memos,json=deleteRelatedMemos,proto3" json:"delete_related_memos,omitempty"` DeleteRelatedMemos bool `protobuf:"varint,3,opt,name=delete_related_memos,json=deleteRelatedMemos,proto3" json:"delete_related_memos,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -807,7 +996,7 @@ type DeleteMemoTagRequest struct { ...@@ -807,7 +996,7 @@ type DeleteMemoTagRequest struct {
func (x *DeleteMemoTagRequest) Reset() { func (x *DeleteMemoTagRequest) Reset() {
*x = DeleteMemoTagRequest{} *x = DeleteMemoTagRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[9] mi := &file_api_v1_memo_service_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -819,7 +1008,7 @@ func (x *DeleteMemoTagRequest) String() string { ...@@ -819,7 +1008,7 @@ func (x *DeleteMemoTagRequest) String() string {
func (*DeleteMemoTagRequest) ProtoMessage() {} func (*DeleteMemoTagRequest) ProtoMessage() {}
func (x *DeleteMemoTagRequest) ProtoReflect() protoreflect.Message { func (x *DeleteMemoTagRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[9] mi := &file_api_v1_memo_service_proto_msgTypes[10]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -832,7 +1021,7 @@ func (x *DeleteMemoTagRequest) ProtoReflect() protoreflect.Message { ...@@ -832,7 +1021,7 @@ func (x *DeleteMemoTagRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteMemoTagRequest.ProtoReflect.Descriptor instead. // Deprecated: Use DeleteMemoTagRequest.ProtoReflect.Descriptor instead.
func (*DeleteMemoTagRequest) Descriptor() ([]byte, []int) { func (*DeleteMemoTagRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{9} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{10}
} }
func (x *DeleteMemoTagRequest) GetParent() string { func (x *DeleteMemoTagRequest) GetParent() string {
...@@ -858,8 +1047,10 @@ func (x *DeleteMemoTagRequest) GetDeleteRelatedMemos() bool { ...@@ -858,8 +1047,10 @@ func (x *DeleteMemoTagRequest) GetDeleteRelatedMemos() bool {
type SetMemoAttachmentsRequest struct { type SetMemoAttachmentsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Required. The attachments to set for the memo.
Attachments []*Attachment `protobuf:"bytes,2,rep,name=attachments,proto3" json:"attachments,omitempty"` Attachments []*Attachment `protobuf:"bytes,2,rep,name=attachments,proto3" json:"attachments,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -867,7 +1058,7 @@ type SetMemoAttachmentsRequest struct { ...@@ -867,7 +1058,7 @@ type SetMemoAttachmentsRequest struct {
func (x *SetMemoAttachmentsRequest) Reset() { func (x *SetMemoAttachmentsRequest) Reset() {
*x = SetMemoAttachmentsRequest{} *x = SetMemoAttachmentsRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[10] mi := &file_api_v1_memo_service_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -879,7 +1070,7 @@ func (x *SetMemoAttachmentsRequest) String() string { ...@@ -879,7 +1070,7 @@ func (x *SetMemoAttachmentsRequest) String() string {
func (*SetMemoAttachmentsRequest) ProtoMessage() {} func (*SetMemoAttachmentsRequest) ProtoMessage() {}
func (x *SetMemoAttachmentsRequest) ProtoReflect() protoreflect.Message { func (x *SetMemoAttachmentsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[10] mi := &file_api_v1_memo_service_proto_msgTypes[11]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -892,7 +1083,7 @@ func (x *SetMemoAttachmentsRequest) ProtoReflect() protoreflect.Message { ...@@ -892,7 +1083,7 @@ func (x *SetMemoAttachmentsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use SetMemoAttachmentsRequest.ProtoReflect.Descriptor instead. // Deprecated: Use SetMemoAttachmentsRequest.ProtoReflect.Descriptor instead.
func (*SetMemoAttachmentsRequest) Descriptor() ([]byte, []int) { func (*SetMemoAttachmentsRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{10} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{11}
} }
func (x *SetMemoAttachmentsRequest) GetName() string { func (x *SetMemoAttachmentsRequest) GetName() string {
...@@ -911,15 +1102,20 @@ func (x *SetMemoAttachmentsRequest) GetAttachments() []*Attachment { ...@@ -911,15 +1102,20 @@ func (x *SetMemoAttachmentsRequest) GetAttachments() []*Attachment {
type ListMemoAttachmentsRequest struct { type ListMemoAttachmentsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. The maximum number of attachments to return.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Optional. A page token for pagination.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoAttachmentsRequest) Reset() { func (x *ListMemoAttachmentsRequest) Reset() {
*x = ListMemoAttachmentsRequest{} *x = ListMemoAttachmentsRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[11] mi := &file_api_v1_memo_service_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -931,7 +1127,7 @@ func (x *ListMemoAttachmentsRequest) String() string { ...@@ -931,7 +1127,7 @@ func (x *ListMemoAttachmentsRequest) String() string {
func (*ListMemoAttachmentsRequest) ProtoMessage() {} func (*ListMemoAttachmentsRequest) ProtoMessage() {}
func (x *ListMemoAttachmentsRequest) ProtoReflect() protoreflect.Message { func (x *ListMemoAttachmentsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[11] mi := &file_api_v1_memo_service_proto_msgTypes[12]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -944,7 +1140,7 @@ func (x *ListMemoAttachmentsRequest) ProtoReflect() protoreflect.Message { ...@@ -944,7 +1140,7 @@ func (x *ListMemoAttachmentsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoAttachmentsRequest.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoAttachmentsRequest.ProtoReflect.Descriptor instead.
func (*ListMemoAttachmentsRequest) Descriptor() ([]byte, []int) { func (*ListMemoAttachmentsRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{11} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{12}
} }
func (x *ListMemoAttachmentsRequest) GetName() string { func (x *ListMemoAttachmentsRequest) GetName() string {
...@@ -954,16 +1150,35 @@ func (x *ListMemoAttachmentsRequest) GetName() string { ...@@ -954,16 +1150,35 @@ func (x *ListMemoAttachmentsRequest) GetName() string {
return "" return ""
} }
func (x *ListMemoAttachmentsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListMemoAttachmentsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
type ListMemoAttachmentsResponse struct { type ListMemoAttachmentsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The list of attachments.
Attachments []*Attachment `protobuf:"bytes,1,rep,name=attachments,proto3" json:"attachments,omitempty"` Attachments []*Attachment `protobuf:"bytes,1,rep,name=attachments,proto3" json:"attachments,omitempty"`
// A token for the next page of results.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// The total count of attachments.
TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoAttachmentsResponse) Reset() { func (x *ListMemoAttachmentsResponse) Reset() {
*x = ListMemoAttachmentsResponse{} *x = ListMemoAttachmentsResponse{}
mi := &file_api_v1_memo_service_proto_msgTypes[12] mi := &file_api_v1_memo_service_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -975,7 +1190,7 @@ func (x *ListMemoAttachmentsResponse) String() string { ...@@ -975,7 +1190,7 @@ func (x *ListMemoAttachmentsResponse) String() string {
func (*ListMemoAttachmentsResponse) ProtoMessage() {} func (*ListMemoAttachmentsResponse) ProtoMessage() {}
func (x *ListMemoAttachmentsResponse) ProtoReflect() protoreflect.Message { func (x *ListMemoAttachmentsResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[12] mi := &file_api_v1_memo_service_proto_msgTypes[13]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -988,7 +1203,7 @@ func (x *ListMemoAttachmentsResponse) ProtoReflect() protoreflect.Message { ...@@ -988,7 +1203,7 @@ func (x *ListMemoAttachmentsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoAttachmentsResponse.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoAttachmentsResponse.ProtoReflect.Descriptor instead.
func (*ListMemoAttachmentsResponse) Descriptor() ([]byte, []int) { func (*ListMemoAttachmentsResponse) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{12} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{13}
} }
func (x *ListMemoAttachmentsResponse) GetAttachments() []*Attachment { func (x *ListMemoAttachmentsResponse) GetAttachments() []*Attachment {
...@@ -998,9 +1213,25 @@ func (x *ListMemoAttachmentsResponse) GetAttachments() []*Attachment { ...@@ -998,9 +1213,25 @@ func (x *ListMemoAttachmentsResponse) GetAttachments() []*Attachment {
return nil return nil
} }
func (x *ListMemoAttachmentsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListMemoAttachmentsResponse) GetTotalSize() int32 {
if x != nil {
return x.TotalSize
}
return 0
}
type MemoRelation struct { type MemoRelation struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The memo in the relation.
Memo *MemoRelation_Memo `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"` Memo *MemoRelation_Memo `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"`
// The related memo.
RelatedMemo *MemoRelation_Memo `protobuf:"bytes,2,opt,name=related_memo,json=relatedMemo,proto3" json:"related_memo,omitempty"` RelatedMemo *MemoRelation_Memo `protobuf:"bytes,2,opt,name=related_memo,json=relatedMemo,proto3" json:"related_memo,omitempty"`
Type MemoRelation_Type `protobuf:"varint,3,opt,name=type,proto3,enum=memos.api.v1.MemoRelation_Type" json:"type,omitempty"` Type MemoRelation_Type `protobuf:"varint,3,opt,name=type,proto3,enum=memos.api.v1.MemoRelation_Type" json:"type,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
...@@ -1009,7 +1240,7 @@ type MemoRelation struct { ...@@ -1009,7 +1240,7 @@ type MemoRelation struct {
func (x *MemoRelation) Reset() { func (x *MemoRelation) Reset() {
*x = MemoRelation{} *x = MemoRelation{}
mi := &file_api_v1_memo_service_proto_msgTypes[13] mi := &file_api_v1_memo_service_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1021,7 +1252,7 @@ func (x *MemoRelation) String() string { ...@@ -1021,7 +1252,7 @@ func (x *MemoRelation) String() string {
func (*MemoRelation) ProtoMessage() {} func (*MemoRelation) ProtoMessage() {}
func (x *MemoRelation) ProtoReflect() protoreflect.Message { func (x *MemoRelation) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[13] mi := &file_api_v1_memo_service_proto_msgTypes[14]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1034,7 +1265,7 @@ func (x *MemoRelation) ProtoReflect() protoreflect.Message { ...@@ -1034,7 +1265,7 @@ func (x *MemoRelation) ProtoReflect() protoreflect.Message {
// Deprecated: Use MemoRelation.ProtoReflect.Descriptor instead. // Deprecated: Use MemoRelation.ProtoReflect.Descriptor instead.
func (*MemoRelation) Descriptor() ([]byte, []int) { func (*MemoRelation) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{13} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{14}
} }
func (x *MemoRelation) GetMemo() *MemoRelation_Memo { func (x *MemoRelation) GetMemo() *MemoRelation_Memo {
...@@ -1060,8 +1291,10 @@ func (x *MemoRelation) GetType() MemoRelation_Type { ...@@ -1060,8 +1291,10 @@ func (x *MemoRelation) GetType() MemoRelation_Type {
type SetMemoRelationsRequest struct { type SetMemoRelationsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Required. The relations to set for the memo.
Relations []*MemoRelation `protobuf:"bytes,2,rep,name=relations,proto3" json:"relations,omitempty"` Relations []*MemoRelation `protobuf:"bytes,2,rep,name=relations,proto3" json:"relations,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -1069,7 +1302,7 @@ type SetMemoRelationsRequest struct { ...@@ -1069,7 +1302,7 @@ type SetMemoRelationsRequest struct {
func (x *SetMemoRelationsRequest) Reset() { func (x *SetMemoRelationsRequest) Reset() {
*x = SetMemoRelationsRequest{} *x = SetMemoRelationsRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[14] mi := &file_api_v1_memo_service_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1081,7 +1314,7 @@ func (x *SetMemoRelationsRequest) String() string { ...@@ -1081,7 +1314,7 @@ func (x *SetMemoRelationsRequest) String() string {
func (*SetMemoRelationsRequest) ProtoMessage() {} func (*SetMemoRelationsRequest) ProtoMessage() {}
func (x *SetMemoRelationsRequest) ProtoReflect() protoreflect.Message { func (x *SetMemoRelationsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[14] mi := &file_api_v1_memo_service_proto_msgTypes[15]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1094,7 +1327,7 @@ func (x *SetMemoRelationsRequest) ProtoReflect() protoreflect.Message { ...@@ -1094,7 +1327,7 @@ func (x *SetMemoRelationsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use SetMemoRelationsRequest.ProtoReflect.Descriptor instead. // Deprecated: Use SetMemoRelationsRequest.ProtoReflect.Descriptor instead.
func (*SetMemoRelationsRequest) Descriptor() ([]byte, []int) { func (*SetMemoRelationsRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{14} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{15}
} }
func (x *SetMemoRelationsRequest) GetName() string { func (x *SetMemoRelationsRequest) GetName() string {
...@@ -1113,15 +1346,20 @@ func (x *SetMemoRelationsRequest) GetRelations() []*MemoRelation { ...@@ -1113,15 +1346,20 @@ func (x *SetMemoRelationsRequest) GetRelations() []*MemoRelation {
type ListMemoRelationsRequest struct { type ListMemoRelationsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. The maximum number of relations to return.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Optional. A page token for pagination.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoRelationsRequest) Reset() { func (x *ListMemoRelationsRequest) Reset() {
*x = ListMemoRelationsRequest{} *x = ListMemoRelationsRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[15] mi := &file_api_v1_memo_service_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1133,7 +1371,7 @@ func (x *ListMemoRelationsRequest) String() string { ...@@ -1133,7 +1371,7 @@ func (x *ListMemoRelationsRequest) String() string {
func (*ListMemoRelationsRequest) ProtoMessage() {} func (*ListMemoRelationsRequest) ProtoMessage() {}
func (x *ListMemoRelationsRequest) ProtoReflect() protoreflect.Message { func (x *ListMemoRelationsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[15] mi := &file_api_v1_memo_service_proto_msgTypes[16]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1146,7 +1384,7 @@ func (x *ListMemoRelationsRequest) ProtoReflect() protoreflect.Message { ...@@ -1146,7 +1384,7 @@ func (x *ListMemoRelationsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoRelationsRequest.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoRelationsRequest.ProtoReflect.Descriptor instead.
func (*ListMemoRelationsRequest) Descriptor() ([]byte, []int) { func (*ListMemoRelationsRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{15} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{16}
} }
func (x *ListMemoRelationsRequest) GetName() string { func (x *ListMemoRelationsRequest) GetName() string {
...@@ -1156,16 +1394,35 @@ func (x *ListMemoRelationsRequest) GetName() string { ...@@ -1156,16 +1394,35 @@ func (x *ListMemoRelationsRequest) GetName() string {
return "" return ""
} }
func (x *ListMemoRelationsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListMemoRelationsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
type ListMemoRelationsResponse struct { type ListMemoRelationsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The list of relations.
Relations []*MemoRelation `protobuf:"bytes,1,rep,name=relations,proto3" json:"relations,omitempty"` Relations []*MemoRelation `protobuf:"bytes,1,rep,name=relations,proto3" json:"relations,omitempty"`
// A token for the next page of results.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// The total count of relations.
TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoRelationsResponse) Reset() { func (x *ListMemoRelationsResponse) Reset() {
*x = ListMemoRelationsResponse{} *x = ListMemoRelationsResponse{}
mi := &file_api_v1_memo_service_proto_msgTypes[16] mi := &file_api_v1_memo_service_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1177,7 +1434,7 @@ func (x *ListMemoRelationsResponse) String() string { ...@@ -1177,7 +1434,7 @@ func (x *ListMemoRelationsResponse) String() string {
func (*ListMemoRelationsResponse) ProtoMessage() {} func (*ListMemoRelationsResponse) ProtoMessage() {}
func (x *ListMemoRelationsResponse) ProtoReflect() protoreflect.Message { func (x *ListMemoRelationsResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[16] mi := &file_api_v1_memo_service_proto_msgTypes[17]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1190,7 +1447,7 @@ func (x *ListMemoRelationsResponse) ProtoReflect() protoreflect.Message { ...@@ -1190,7 +1447,7 @@ func (x *ListMemoRelationsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoRelationsResponse.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoRelationsResponse.ProtoReflect.Descriptor instead.
func (*ListMemoRelationsResponse) Descriptor() ([]byte, []int) { func (*ListMemoRelationsResponse) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{16} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{17}
} }
func (x *ListMemoRelationsResponse) GetRelations() []*MemoRelation { func (x *ListMemoRelationsResponse) GetRelations() []*MemoRelation {
...@@ -1200,19 +1457,36 @@ func (x *ListMemoRelationsResponse) GetRelations() []*MemoRelation { ...@@ -1200,19 +1457,36 @@ func (x *ListMemoRelationsResponse) GetRelations() []*MemoRelation {
return nil return nil
} }
func (x *ListMemoRelationsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListMemoRelationsResponse) GetTotalSize() int32 {
if x != nil {
return x.TotalSize
}
return 0
}
type CreateMemoCommentRequest struct { type CreateMemoCommentRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// The comment to create. // Required. The comment to create.
Comment *Memo `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"` Comment *Memo `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"`
// Optional. The comment ID to use.
CommentId string `protobuf:"bytes,3,opt,name=comment_id,json=commentId,proto3" json:"comment_id,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *CreateMemoCommentRequest) Reset() { func (x *CreateMemoCommentRequest) Reset() {
*x = CreateMemoCommentRequest{} *x = CreateMemoCommentRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[17] mi := &file_api_v1_memo_service_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1224,7 +1498,7 @@ func (x *CreateMemoCommentRequest) String() string { ...@@ -1224,7 +1498,7 @@ func (x *CreateMemoCommentRequest) String() string {
func (*CreateMemoCommentRequest) ProtoMessage() {} func (*CreateMemoCommentRequest) ProtoMessage() {}
func (x *CreateMemoCommentRequest) ProtoReflect() protoreflect.Message { func (x *CreateMemoCommentRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[17] mi := &file_api_v1_memo_service_proto_msgTypes[18]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1237,7 +1511,7 @@ func (x *CreateMemoCommentRequest) ProtoReflect() protoreflect.Message { ...@@ -1237,7 +1511,7 @@ func (x *CreateMemoCommentRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateMemoCommentRequest.ProtoReflect.Descriptor instead. // Deprecated: Use CreateMemoCommentRequest.ProtoReflect.Descriptor instead.
func (*CreateMemoCommentRequest) Descriptor() ([]byte, []int) { func (*CreateMemoCommentRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{17} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{18}
} }
func (x *CreateMemoCommentRequest) GetName() string { func (x *CreateMemoCommentRequest) GetName() string {
...@@ -1254,17 +1528,31 @@ func (x *CreateMemoCommentRequest) GetComment() *Memo { ...@@ -1254,17 +1528,31 @@ func (x *CreateMemoCommentRequest) GetComment() *Memo {
return nil return nil
} }
func (x *CreateMemoCommentRequest) GetCommentId() string {
if x != nil {
return x.CommentId
}
return ""
}
type ListMemoCommentsRequest struct { type ListMemoCommentsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. The maximum number of comments to return.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Optional. A page token for pagination.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// Optional. The order to sort results by.
OrderBy string `protobuf:"bytes,4,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoCommentsRequest) Reset() { func (x *ListMemoCommentsRequest) Reset() {
*x = ListMemoCommentsRequest{} *x = ListMemoCommentsRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[18] mi := &file_api_v1_memo_service_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1276,7 +1564,7 @@ func (x *ListMemoCommentsRequest) String() string { ...@@ -1276,7 +1564,7 @@ func (x *ListMemoCommentsRequest) String() string {
func (*ListMemoCommentsRequest) ProtoMessage() {} func (*ListMemoCommentsRequest) ProtoMessage() {}
func (x *ListMemoCommentsRequest) ProtoReflect() protoreflect.Message { func (x *ListMemoCommentsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[18] mi := &file_api_v1_memo_service_proto_msgTypes[19]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1289,7 +1577,7 @@ func (x *ListMemoCommentsRequest) ProtoReflect() protoreflect.Message { ...@@ -1289,7 +1577,7 @@ func (x *ListMemoCommentsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoCommentsRequest.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoCommentsRequest.ProtoReflect.Descriptor instead.
func (*ListMemoCommentsRequest) Descriptor() ([]byte, []int) { func (*ListMemoCommentsRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{18} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{19}
} }
func (x *ListMemoCommentsRequest) GetName() string { func (x *ListMemoCommentsRequest) GetName() string {
...@@ -1299,16 +1587,42 @@ func (x *ListMemoCommentsRequest) GetName() string { ...@@ -1299,16 +1587,42 @@ func (x *ListMemoCommentsRequest) GetName() string {
return "" return ""
} }
func (x *ListMemoCommentsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListMemoCommentsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
func (x *ListMemoCommentsRequest) GetOrderBy() string {
if x != nil {
return x.OrderBy
}
return ""
}
type ListMemoCommentsResponse struct { type ListMemoCommentsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The list of comment memos.
Memos []*Memo `protobuf:"bytes,1,rep,name=memos,proto3" json:"memos,omitempty"` Memos []*Memo `protobuf:"bytes,1,rep,name=memos,proto3" json:"memos,omitempty"`
// A token for the next page of results.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// The total count of comments.
TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoCommentsResponse) Reset() { func (x *ListMemoCommentsResponse) Reset() {
*x = ListMemoCommentsResponse{} *x = ListMemoCommentsResponse{}
mi := &file_api_v1_memo_service_proto_msgTypes[19] mi := &file_api_v1_memo_service_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1320,7 +1634,7 @@ func (x *ListMemoCommentsResponse) String() string { ...@@ -1320,7 +1634,7 @@ func (x *ListMemoCommentsResponse) String() string {
func (*ListMemoCommentsResponse) ProtoMessage() {} func (*ListMemoCommentsResponse) ProtoMessage() {}
func (x *ListMemoCommentsResponse) ProtoReflect() protoreflect.Message { func (x *ListMemoCommentsResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[19] mi := &file_api_v1_memo_service_proto_msgTypes[20]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1333,7 +1647,7 @@ func (x *ListMemoCommentsResponse) ProtoReflect() protoreflect.Message { ...@@ -1333,7 +1647,7 @@ func (x *ListMemoCommentsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoCommentsResponse.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoCommentsResponse.ProtoReflect.Descriptor instead.
func (*ListMemoCommentsResponse) Descriptor() ([]byte, []int) { func (*ListMemoCommentsResponse) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{19} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{20}
} }
func (x *ListMemoCommentsResponse) GetMemos() []*Memo { func (x *ListMemoCommentsResponse) GetMemos() []*Memo {
...@@ -1343,17 +1657,36 @@ func (x *ListMemoCommentsResponse) GetMemos() []*Memo { ...@@ -1343,17 +1657,36 @@ func (x *ListMemoCommentsResponse) GetMemos() []*Memo {
return nil return nil
} }
func (x *ListMemoCommentsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListMemoCommentsResponse) GetTotalSize() int32 {
if x != nil {
return x.TotalSize
}
return 0
}
type ListMemoReactionsRequest struct { type ListMemoReactionsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Optional. The maximum number of reactions to return.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Optional. A page token for pagination.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoReactionsRequest) Reset() { func (x *ListMemoReactionsRequest) Reset() {
*x = ListMemoReactionsRequest{} *x = ListMemoReactionsRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[20] mi := &file_api_v1_memo_service_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1365,7 +1698,7 @@ func (x *ListMemoReactionsRequest) String() string { ...@@ -1365,7 +1698,7 @@ func (x *ListMemoReactionsRequest) String() string {
func (*ListMemoReactionsRequest) ProtoMessage() {} func (*ListMemoReactionsRequest) ProtoMessage() {}
func (x *ListMemoReactionsRequest) ProtoReflect() protoreflect.Message { func (x *ListMemoReactionsRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[20] mi := &file_api_v1_memo_service_proto_msgTypes[21]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1378,7 +1711,7 @@ func (x *ListMemoReactionsRequest) ProtoReflect() protoreflect.Message { ...@@ -1378,7 +1711,7 @@ func (x *ListMemoReactionsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoReactionsRequest.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoReactionsRequest.ProtoReflect.Descriptor instead.
func (*ListMemoReactionsRequest) Descriptor() ([]byte, []int) { func (*ListMemoReactionsRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{20} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{21}
} }
func (x *ListMemoReactionsRequest) GetName() string { func (x *ListMemoReactionsRequest) GetName() string {
...@@ -1388,16 +1721,35 @@ func (x *ListMemoReactionsRequest) GetName() string { ...@@ -1388,16 +1721,35 @@ func (x *ListMemoReactionsRequest) GetName() string {
return "" return ""
} }
func (x *ListMemoReactionsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListMemoReactionsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
type ListMemoReactionsResponse struct { type ListMemoReactionsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The list of reactions.
Reactions []*Reaction `protobuf:"bytes,1,rep,name=reactions,proto3" json:"reactions,omitempty"` Reactions []*Reaction `protobuf:"bytes,1,rep,name=reactions,proto3" json:"reactions,omitempty"`
// A token for the next page of results.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
// The total count of reactions.
TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *ListMemoReactionsResponse) Reset() { func (x *ListMemoReactionsResponse) Reset() {
*x = ListMemoReactionsResponse{} *x = ListMemoReactionsResponse{}
mi := &file_api_v1_memo_service_proto_msgTypes[21] mi := &file_api_v1_memo_service_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1409,7 +1761,7 @@ func (x *ListMemoReactionsResponse) String() string { ...@@ -1409,7 +1761,7 @@ func (x *ListMemoReactionsResponse) String() string {
func (*ListMemoReactionsResponse) ProtoMessage() {} func (*ListMemoReactionsResponse) ProtoMessage() {}
func (x *ListMemoReactionsResponse) ProtoReflect() protoreflect.Message { func (x *ListMemoReactionsResponse) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[21] mi := &file_api_v1_memo_service_proto_msgTypes[22]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1422,7 +1774,7 @@ func (x *ListMemoReactionsResponse) ProtoReflect() protoreflect.Message { ...@@ -1422,7 +1774,7 @@ func (x *ListMemoReactionsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListMemoReactionsResponse.ProtoReflect.Descriptor instead. // Deprecated: Use ListMemoReactionsResponse.ProtoReflect.Descriptor instead.
func (*ListMemoReactionsResponse) Descriptor() ([]byte, []int) { func (*ListMemoReactionsResponse) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{21} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{22}
} }
func (x *ListMemoReactionsResponse) GetReactions() []*Reaction { func (x *ListMemoReactionsResponse) GetReactions() []*Reaction {
...@@ -1432,10 +1784,26 @@ func (x *ListMemoReactionsResponse) GetReactions() []*Reaction { ...@@ -1432,10 +1784,26 @@ func (x *ListMemoReactionsResponse) GetReactions() []*Reaction {
return nil return nil
} }
func (x *ListMemoReactionsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
func (x *ListMemoReactionsResponse) GetTotalSize() int32 {
if x != nil {
return x.TotalSize
}
return 0
}
type UpsertMemoReactionRequest struct { type UpsertMemoReactionRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // Required. The resource name of the memo.
// Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Required. The reaction to upsert.
Reaction *Reaction `protobuf:"bytes,2,opt,name=reaction,proto3" json:"reaction,omitempty"` Reaction *Reaction `protobuf:"bytes,2,opt,name=reaction,proto3" json:"reaction,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -1443,7 +1811,7 @@ type UpsertMemoReactionRequest struct { ...@@ -1443,7 +1811,7 @@ type UpsertMemoReactionRequest struct {
func (x *UpsertMemoReactionRequest) Reset() { func (x *UpsertMemoReactionRequest) Reset() {
*x = UpsertMemoReactionRequest{} *x = UpsertMemoReactionRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[22] mi := &file_api_v1_memo_service_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1455,7 +1823,7 @@ func (x *UpsertMemoReactionRequest) String() string { ...@@ -1455,7 +1823,7 @@ func (x *UpsertMemoReactionRequest) String() string {
func (*UpsertMemoReactionRequest) ProtoMessage() {} func (*UpsertMemoReactionRequest) ProtoMessage() {}
func (x *UpsertMemoReactionRequest) ProtoReflect() protoreflect.Message { func (x *UpsertMemoReactionRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[22] mi := &file_api_v1_memo_service_proto_msgTypes[23]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1468,7 +1836,7 @@ func (x *UpsertMemoReactionRequest) ProtoReflect() protoreflect.Message { ...@@ -1468,7 +1836,7 @@ func (x *UpsertMemoReactionRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpsertMemoReactionRequest.ProtoReflect.Descriptor instead. // Deprecated: Use UpsertMemoReactionRequest.ProtoReflect.Descriptor instead.
func (*UpsertMemoReactionRequest) Descriptor() ([]byte, []int) { func (*UpsertMemoReactionRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{22} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{23}
} }
func (x *UpsertMemoReactionRequest) GetName() string { func (x *UpsertMemoReactionRequest) GetName() string {
...@@ -1487,16 +1855,16 @@ func (x *UpsertMemoReactionRequest) GetReaction() *Reaction { ...@@ -1487,16 +1855,16 @@ func (x *UpsertMemoReactionRequest) GetReaction() *Reaction {
type DeleteMemoReactionRequest struct { type DeleteMemoReactionRequest struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The id of the reaction. // Required. The resource name of the reaction to delete.
// Refer to the `Reaction.id`. // Format: reactions/{reaction}
Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
} }
func (x *DeleteMemoReactionRequest) Reset() { func (x *DeleteMemoReactionRequest) Reset() {
*x = DeleteMemoReactionRequest{} *x = DeleteMemoReactionRequest{}
mi := &file_api_v1_memo_service_proto_msgTypes[23] mi := &file_api_v1_memo_service_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1508,7 +1876,7 @@ func (x *DeleteMemoReactionRequest) String() string { ...@@ -1508,7 +1876,7 @@ func (x *DeleteMemoReactionRequest) String() string {
func (*DeleteMemoReactionRequest) ProtoMessage() {} func (*DeleteMemoReactionRequest) ProtoMessage() {}
func (x *DeleteMemoReactionRequest) ProtoReflect() protoreflect.Message { func (x *DeleteMemoReactionRequest) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[23] mi := &file_api_v1_memo_service_proto_msgTypes[24]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1521,16 +1889,17 @@ func (x *DeleteMemoReactionRequest) ProtoReflect() protoreflect.Message { ...@@ -1521,16 +1889,17 @@ func (x *DeleteMemoReactionRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteMemoReactionRequest.ProtoReflect.Descriptor instead. // Deprecated: Use DeleteMemoReactionRequest.ProtoReflect.Descriptor instead.
func (*DeleteMemoReactionRequest) Descriptor() ([]byte, []int) { func (*DeleteMemoReactionRequest) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{23} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{24}
} }
func (x *DeleteMemoReactionRequest) GetId() int32 { func (x *DeleteMemoReactionRequest) GetName() string {
if x != nil { if x != nil {
return x.Id return x.Name
} }
return 0 return ""
} }
// Computed properties of a memo.
type Memo_Property struct { type Memo_Property struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
HasLink bool `protobuf:"varint,1,opt,name=has_link,json=hasLink,proto3" json:"has_link,omitempty"` HasLink bool `protobuf:"varint,1,opt,name=has_link,json=hasLink,proto3" json:"has_link,omitempty"`
...@@ -1543,7 +1912,7 @@ type Memo_Property struct { ...@@ -1543,7 +1912,7 @@ type Memo_Property struct {
func (x *Memo_Property) Reset() { func (x *Memo_Property) Reset() {
*x = Memo_Property{} *x = Memo_Property{}
mi := &file_api_v1_memo_service_proto_msgTypes[24] mi := &file_api_v1_memo_service_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1555,7 +1924,7 @@ func (x *Memo_Property) String() string { ...@@ -1555,7 +1924,7 @@ func (x *Memo_Property) String() string {
func (*Memo_Property) ProtoMessage() {} func (*Memo_Property) ProtoMessage() {}
func (x *Memo_Property) ProtoReflect() protoreflect.Message { func (x *Memo_Property) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[24] mi := &file_api_v1_memo_service_proto_msgTypes[25]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1568,7 +1937,7 @@ func (x *Memo_Property) ProtoReflect() protoreflect.Message { ...@@ -1568,7 +1937,7 @@ func (x *Memo_Property) ProtoReflect() protoreflect.Message {
// Deprecated: Use Memo_Property.ProtoReflect.Descriptor instead. // Deprecated: Use Memo_Property.ProtoReflect.Descriptor instead.
func (*Memo_Property) Descriptor() ([]byte, []int) { func (*Memo_Property) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{0, 0} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{1, 0}
} }
func (x *Memo_Property) GetHasLink() bool { func (x *Memo_Property) GetHasLink() bool {
...@@ -1599,13 +1968,15 @@ func (x *Memo_Property) GetHasIncompleteTasks() bool { ...@@ -1599,13 +1968,15 @@ func (x *Memo_Property) GetHasIncompleteTasks() bool {
return false return false
} }
// Memo reference in relations.
type MemoRelation_Memo struct { type MemoRelation_Memo struct {
state protoimpl.MessageState `protogen:"open.v1"` state protoimpl.MessageState `protogen:"open.v1"`
// The name of the memo. // The resource name of the memo.
// Format: memos/{id} // Format: memos/{memo}
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. The unique identifier of the memo.
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty"` Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty"`
// The snippet of the memo content. Plain text only. // Output only. The snippet of the memo content. Plain text only.
Snippet string `protobuf:"bytes,3,opt,name=snippet,proto3" json:"snippet,omitempty"` Snippet string `protobuf:"bytes,3,opt,name=snippet,proto3" json:"snippet,omitempty"`
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
...@@ -1613,7 +1984,7 @@ type MemoRelation_Memo struct { ...@@ -1613,7 +1984,7 @@ type MemoRelation_Memo struct {
func (x *MemoRelation_Memo) Reset() { func (x *MemoRelation_Memo) Reset() {
*x = MemoRelation_Memo{} *x = MemoRelation_Memo{}
mi := &file_api_v1_memo_service_proto_msgTypes[25] mi := &file_api_v1_memo_service_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi) ms.StoreMessageInfo(mi)
} }
...@@ -1625,7 +1996,7 @@ func (x *MemoRelation_Memo) String() string { ...@@ -1625,7 +1996,7 @@ func (x *MemoRelation_Memo) String() string {
func (*MemoRelation_Memo) ProtoMessage() {} func (*MemoRelation_Memo) ProtoMessage() {}
func (x *MemoRelation_Memo) ProtoReflect() protoreflect.Message { func (x *MemoRelation_Memo) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_memo_service_proto_msgTypes[25] mi := &file_api_v1_memo_service_proto_msgTypes[26]
if x != nil { if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil { if ms.LoadMessageInfo() == nil {
...@@ -1638,7 +2009,7 @@ func (x *MemoRelation_Memo) ProtoReflect() protoreflect.Message { ...@@ -1638,7 +2009,7 @@ func (x *MemoRelation_Memo) ProtoReflect() protoreflect.Message {
// Deprecated: Use MemoRelation_Memo.ProtoReflect.Descriptor instead. // Deprecated: Use MemoRelation_Memo.ProtoReflect.Descriptor instead.
func (*MemoRelation_Memo) Descriptor() ([]byte, []int) { func (*MemoRelation_Memo) Descriptor() ([]byte, []int) {
return file_api_v1_memo_service_proto_rawDescGZIP(), []int{13, 0} return file_api_v1_memo_service_proto_rawDescGZIP(), []int{14, 0}
} }
func (x *MemoRelation_Memo) GetName() string { func (x *MemoRelation_Memo) GetName() string {
...@@ -1666,143 +2037,210 @@ var File_api_v1_memo_service_proto protoreflect.FileDescriptor ...@@ -1666,143 +2037,210 @@ var File_api_v1_memo_service_proto protoreflect.FileDescriptor
const file_api_v1_memo_service_proto_rawDesc = "" + const file_api_v1_memo_service_proto_rawDesc = "" +
"\n" + "\n" +
"\x19api/v1/memo_service.proto\x12\fmemos.api.v1\x1a\x1fapi/v1/attachment_service.proto\x1a\x13api/v1/common.proto\x1a\x1dapi/v1/markdown_service.proto\x1a\x1dapi/v1/reaction_service.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xf4\a\n" + "\x19api/v1/memo_service.proto\x12\fmemos.api.v1\x1a\x1fapi/v1/attachment_service.proto\x1a\x13api/v1/common.proto\x1a\x1dapi/v1/markdown_service.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe5\x02\n" +
"\x04Memo\x12\x1a\n" + "\bReaction\x12\x1a\n" +
"\x04name\x18\x01 \x01(\tB\x06\xe0A\x03\xe0A\bR\x04name\x12)\n" + "\x04name\x18\x01 \x01(\tB\x06\xe0A\x03\xe0A\bR\x04name\x12\x15\n" +
"\x05state\x18\x03 \x01(\x0e2\x13.memos.api.v1.StateR\x05state\x12\x18\n" + "\x03uid\x18\x02 \x01(\tB\x03\xe0A\x03R\x03uid\x123\n" +
"\acreator\x18\x04 \x01(\tR\acreator\x12;\n" + "\acreator\x18\x03 \x01(\tB\x19\xe0A\x03\xfaA\x13\n" +
"\vcreate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\n" + "\x11memos.api.v1/UserR\acreator\x128\n" +
"createTime\x12;\n" + "\n" +
"\vupdate_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampR\n" + "content_id\x18\x04 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"updateTime\x12=\n" + "\x11memos.api.v1/MemoR\tcontentId\x12(\n" +
"\fdisplay_time\x18\a \x01(\v2\x1a.google.protobuf.TimestampR\vdisplayTime\x12\x18\n" + "\rreaction_type\x18\x05 \x01(\tB\x03\xe0A\x02R\freactionType\x12@\n" +
"\acontent\x18\b \x01(\tR\acontent\x12-\n" + "\vcreate_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
"\x05nodes\x18\t \x03(\v2\x12.memos.api.v1.NodeB\x03\xe0A\x03R\x05nodes\x128\n" + "createTime:K\xeaAH\n" +
"\x15memos.api.v1/Reaction\x12\x14reactions/{reaction}\x1a\x04name*\treactions2\breaction\"\x8d\t\n" +
"\x04Memo\x12\x17\n" +
"\x04name\x18\x01 \x01(\tB\x03\xe0A\bR\x04name\x12.\n" +
"\x05state\x18\x03 \x01(\x0e2\x13.memos.api.v1.StateB\x03\xe0A\x02R\x05state\x123\n" +
"\acreator\x18\x04 \x01(\tB\x19\xe0A\x03\xfaA\x13\n" +
"\x11memos.api.v1/UserR\acreator\x12@\n" +
"\vcreate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
"createTime\x12@\n" +
"\vupdate_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
"updateTime\x12B\n" +
"\fdisplay_time\x18\a \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x01R\vdisplayTime\x12\x1d\n" +
"\acontent\x18\b \x01(\tB\x03\xe0A\x02R\acontent\x12-\n" +
"\x05nodes\x18\t \x03(\v2\x12.memos.api.v1.NodeB\x03\xe0A\x03R\x05nodes\x12=\n" +
"\n" + "\n" +
"visibility\x18\n" + "visibility\x18\n" +
" \x01(\x0e2\x18.memos.api.v1.VisibilityR\n" + " \x01(\x0e2\x18.memos.api.v1.VisibilityB\x03\xe0A\x02R\n" +
"visibility\x12\x17\n" + "visibility\x12\x17\n" +
"\x04tags\x18\v \x03(\tB\x03\xe0A\x03R\x04tags\x12\x16\n" + "\x04tags\x18\v \x03(\tB\x03\xe0A\x03R\x04tags\x12\x1b\n" +
"\x06pinned\x18\f \x01(\bR\x06pinned\x12:\n" + "\x06pinned\x18\f \x01(\bB\x03\xe0A\x01R\x06pinned\x12?\n" +
"\vattachments\x18\x0e \x03(\v2\x18.memos.api.v1.AttachmentR\vattachments\x128\n" + "\vattachments\x18\x0e \x03(\v2\x18.memos.api.v1.AttachmentB\x03\xe0A\x01R\vattachments\x12=\n" +
"\trelations\x18\x0f \x03(\v2\x1a.memos.api.v1.MemoRelationR\trelations\x129\n" + "\trelations\x18\x0f \x03(\v2\x1a.memos.api.v1.MemoRelationB\x03\xe0A\x01R\trelations\x129\n" +
"\treactions\x18\x10 \x03(\v2\x16.memos.api.v1.ReactionB\x03\xe0A\x03R\treactions\x12<\n" + "\treactions\x18\x10 \x03(\v2\x16.memos.api.v1.ReactionB\x03\xe0A\x03R\treactions\x12<\n" +
"\bproperty\x18\x11 \x01(\v2\x1b.memos.api.v1.Memo.PropertyB\x03\xe0A\x03R\bproperty\x12 \n" + "\bproperty\x18\x11 \x01(\v2\x1b.memos.api.v1.Memo.PropertyB\x03\xe0A\x03R\bproperty\x126\n" +
"\x06parent\x18\x12 \x01(\tB\x03\xe0A\x03H\x00R\x06parent\x88\x01\x01\x12\x1d\n" + "\x06parent\x18\x12 \x01(\tB\x19\xe0A\x03\xfaA\x13\n" +
"\asnippet\x18\x13 \x01(\tB\x03\xe0A\x03R\asnippet\x127\n" + "\x11memos.api.v1/MemoH\x00R\x06parent\x88\x01\x01\x12\x1d\n" +
"\blocation\x18\x14 \x01(\v2\x16.memos.api.v1.LocationH\x01R\blocation\x88\x01\x01\x1a\x96\x01\n" + "\asnippet\x18\x13 \x01(\tB\x03\xe0A\x03R\asnippet\x12<\n" +
"\blocation\x18\x14 \x01(\v2\x16.memos.api.v1.LocationB\x03\xe0A\x01H\x01R\blocation\x88\x01\x01\x1a\x96\x01\n" +
"\bProperty\x12\x19\n" + "\bProperty\x12\x19\n" +
"\bhas_link\x18\x01 \x01(\bR\ahasLink\x12\"\n" + "\bhas_link\x18\x01 \x01(\bR\ahasLink\x12\"\n" +
"\rhas_task_list\x18\x02 \x01(\bR\vhasTaskList\x12\x19\n" + "\rhas_task_list\x18\x02 \x01(\bR\vhasTaskList\x12\x19\n" +
"\bhas_code\x18\x03 \x01(\bR\ahasCode\x120\n" + "\bhas_code\x18\x03 \x01(\bR\ahasCode\x120\n" +
"\x14has_incomplete_tasks\x18\x04 \x01(\bR\x12hasIncompleteTasksB\t\n" + "\x14has_incomplete_tasks\x18\x04 \x01(\bR\x12hasIncompleteTasks:7\xeaA4\n" +
"\x11memos.api.v1/Memo\x12\fmemos/{memo}\x1a\x04name*\x05memos2\x04memoB\t\n" +
"\a_parentB\v\n" + "\a_parentB\v\n" +
"\t_locationJ\x04\b\x02\x10\x03\"f\n" + "\t_locationJ\x04\b\x02\x10\x03\"u\n" +
"\bLocation\x12 \n" + "\bLocation\x12%\n" +
"\vplaceholder\x18\x01 \x01(\tR\vplaceholder\x12\x1a\n" + "\vplaceholder\x18\x01 \x01(\tB\x03\xe0A\x01R\vplaceholder\x12\x1f\n" +
"\blatitude\x18\x02 \x01(\x01R\blatitude\x12\x1c\n" + "\blatitude\x18\x02 \x01(\x01B\x03\xe0A\x01R\blatitude\x12!\n" +
"\tlongitude\x18\x03 \x01(\x01R\tlongitude\"@\n" + "\tlongitude\x18\x03 \x01(\x01B\x03\xe0A\x01R\tlongitude\"\xac\x01\n" +
"\x11CreateMemoRequest\x12+\n" + "\x11CreateMemoRequest\x12+\n" +
"\x04memo\x18\x01 \x01(\v2\x12.memos.api.v1.MemoB\x03\xe0A\x02R\x04memo\"\x93\x02\n" + "\x04memo\x18\x01 \x01(\v2\x12.memos.api.v1.MemoB\x03\xe0A\x02R\x04memo\x12\x1c\n" +
"\x10ListMemosRequest\x12\x16\n" + "\amemo_id\x18\x02 \x01(\tB\x03\xe0A\x01R\x06memoId\x12(\n" +
"\x06parent\x18\x01 \x01(\tR\x06parent\x12\x1b\n" + "\rvalidate_only\x18\x03 \x01(\bB\x03\xe0A\x01R\fvalidateOnly\x12\"\n" +
"\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" +
"\n" + "\n" +
"page_token\x18\x03 \x01(\tR\tpageToken\x12)\n" + "request_id\x18\x04 \x01(\tB\x03\xe0A\x01R\trequestId\"\xbf\x02\n" +
"\x05state\x18\x04 \x01(\x0e2\x13.memos.api.v1.StateR\x05state\x12\x12\n" + "\x10ListMemosRequest\x121\n" +
"\x04sort\x18\x05 \x01(\tR\x04sort\x125\n" + "\x06parent\x18\x01 \x01(\tB\x19\xe0A\x01\xfaA\x13\n" +
"\tdirection\x18\x06 \x01(\x0e2\x17.memos.api.v1.DirectionR\tdirection\x12\x16\n" + "\x11memos.api.v1/UserR\x06parent\x12 \n" +
"\x06filter\x18\a \x01(\tR\x06filter\x12\x1d\n" + "\tpage_size\x18\x02 \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
"\n" + "\n" +
"old_filter\x18\b \x01(\tR\toldFilter\"e\n" + "page_token\x18\x03 \x01(\tB\x03\xe0A\x01R\tpageToken\x12.\n" +
"\x05state\x18\x04 \x01(\x0e2\x13.memos.api.v1.StateB\x03\xe0A\x01R\x05state\x12\x1e\n" +
"\border_by\x18\x05 \x01(\tB\x03\xe0A\x01R\aorderBy\x12\x1b\n" +
"\x06filter\x18\x06 \x01(\tB\x03\xe0A\x01R\x06filter\x12&\n" +
"\fshow_deleted\x18\a \x01(\bB\x03\xe0A\x01R\vshowDeleted\x12\x1d\n" +
"\n" +
"old_filter\x18\b \x01(\tR\toldFilter\"\x84\x01\n" +
"\x11ListMemosResponse\x12(\n" + "\x11ListMemosResponse\x12(\n" +
"\x05memos\x18\x01 \x03(\v2\x12.memos.api.v1.MemoR\x05memos\x12&\n" + "\x05memos\x18\x01 \x03(\v2\x12.memos.api.v1.MemoR\x05memos\x12&\n" +
"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"$\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
"\x0eGetMemoRequest\x12\x12\n" + "\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"}\n" + "total_size\x18\x03 \x01(\x05R\ttotalSize\"}\n" +
"\x0eGetMemoRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12<\n" +
"\tread_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x01R\breadMask\"\xac\x01\n" +
"\x11UpdateMemoRequest\x12+\n" + "\x11UpdateMemoRequest\x12+\n" +
"\x04memo\x18\x01 \x01(\v2\x12.memos.api.v1.MemoB\x03\xe0A\x02R\x04memo\x12;\n" + "\x04memo\x18\x01 \x01(\v2\x12.memos.api.v1.MemoB\x03\xe0A\x02R\x04memo\x12@\n" +
"\vupdate_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskR\n" + "\vupdate_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x02R\n" +
"updateMask\"'\n" + "updateMask\x12(\n" +
"\x11DeleteMemoRequest\x12\x12\n" + "\rallow_missing\x18\x03 \x01(\bB\x03\xe0A\x01R\fallowMissing\"]\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"`\n" + "\x11DeleteMemoRequest\x12-\n" +
"\x14RenameMemoTagRequest\x12\x16\n" + "\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x06parent\x18\x01 \x01(\tR\x06parent\x12\x17\n" + "\x11memos.api.v1/MemoR\x04name\x12\x19\n" +
"\aold_tag\x18\x02 \x01(\tR\x06oldTag\x12\x17\n" + "\x05force\x18\x02 \x01(\bB\x03\xe0A\x01R\x05force\"\x85\x01\n" +
"\anew_tag\x18\x03 \x01(\tR\x06newTag\"r\n" + "\x14RenameMemoTagRequest\x121\n" +
"\x14DeleteMemoTagRequest\x12\x16\n" + "\x06parent\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x06parent\x18\x01 \x01(\tR\x06parent\x12\x10\n" + "\x11memos.api.v1/MemoR\x06parent\x12\x1c\n" +
"\x03tag\x18\x02 \x01(\tR\x03tag\x120\n" + "\aold_tag\x18\x02 \x01(\tB\x03\xe0A\x02R\x06oldTag\x12\x1c\n" +
"\x14delete_related_memos\x18\x03 \x01(\bR\x12deleteRelatedMemos\"k\n" + "\anew_tag\x18\x03 \x01(\tB\x03\xe0A\x02R\x06newTag\"\x97\x01\n" +
"\x19SetMemoAttachmentsRequest\x12\x12\n" + "\x14DeleteMemoTagRequest\x121\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12:\n" + "\x06parent\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\vattachments\x18\x02 \x03(\v2\x18.memos.api.v1.AttachmentR\vattachments\"0\n" + "\x11memos.api.v1/MemoR\x06parent\x12\x15\n" +
"\x1aListMemoAttachmentsRequest\x12\x12\n" + "\x03tag\x18\x02 \x01(\tB\x03\xe0A\x02R\x03tag\x125\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"Y\n" + "\x14delete_related_memos\x18\x03 \x01(\bB\x03\xe0A\x01R\x12deleteRelatedMemos\"\x8b\x01\n" +
"\x19SetMemoAttachmentsRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12?\n" +
"\vattachments\x18\x02 \x03(\v2\x18.memos.api.v1.AttachmentB\x03\xe0A\x02R\vattachments\"\x91\x01\n" +
"\x1aListMemoAttachmentsRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12 \n" +
"\tpage_size\x18\x02 \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
"\n" +
"page_token\x18\x03 \x01(\tB\x03\xe0A\x01R\tpageToken\"\xa0\x01\n" +
"\x1bListMemoAttachmentsResponse\x12:\n" + "\x1bListMemoAttachmentsResponse\x12:\n" +
"\vattachments\x18\x01 \x03(\v2\x18.memos.api.v1.AttachmentR\vattachments\"\xc3\x02\n" + "\vattachments\x18\x01 \x03(\v2\x18.memos.api.v1.AttachmentR\vattachments\x12&\n" +
"\fMemoRelation\x123\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
"\x04memo\x18\x01 \x01(\v2\x1f.memos.api.v1.MemoRelation.MemoR\x04memo\x12B\n" + "\n" +
"\frelated_memo\x18\x02 \x01(\v2\x1f.memos.api.v1.MemoRelation.MemoR\vrelatedMemo\x123\n" + "total_size\x18\x03 \x01(\x05R\ttotalSize\"\xf2\x02\n" +
"\x04type\x18\x03 \x01(\x0e2\x1f.memos.api.v1.MemoRelation.TypeR\x04type\x1aK\n" + "\fMemoRelation\x128\n" +
"\x04Memo\x12\x12\n" + "\x04memo\x18\x01 \x01(\v2\x1f.memos.api.v1.MemoRelation.MemoB\x03\xe0A\x02R\x04memo\x12G\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12\x10\n" + "\frelated_memo\x18\x02 \x01(\v2\x1f.memos.api.v1.MemoRelation.MemoB\x03\xe0A\x02R\vrelatedMemo\x128\n" +
"\x03uid\x18\x02 \x01(\tR\x03uid\x12\x1d\n" + "\x04type\x18\x03 \x01(\x0e2\x1f.memos.api.v1.MemoRelation.TypeB\x03\xe0A\x02R\x04type\x1ak\n" +
"\x04Memo\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12\x15\n" +
"\x03uid\x18\x02 \x01(\tB\x03\xe0A\x03R\x03uid\x12\x1d\n" +
"\asnippet\x18\x03 \x01(\tB\x03\xe0A\x03R\asnippet\"8\n" + "\asnippet\x18\x03 \x01(\tB\x03\xe0A\x03R\asnippet\"8\n" +
"\x04Type\x12\x14\n" + "\x04Type\x12\x14\n" +
"\x10TYPE_UNSPECIFIED\x10\x00\x12\r\n" + "\x10TYPE_UNSPECIFIED\x10\x00\x12\r\n" +
"\tREFERENCE\x10\x01\x12\v\n" + "\tREFERENCE\x10\x01\x12\v\n" +
"\aCOMMENT\x10\x02\"g\n" + "\aCOMMENT\x10\x02\"\x87\x01\n" +
"\x17SetMemoRelationsRequest\x12\x12\n" + "\x17SetMemoRelationsRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x128\n" + "\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\trelations\x18\x02 \x03(\v2\x1a.memos.api.v1.MemoRelationR\trelations\".\n" + "\x11memos.api.v1/MemoR\x04name\x12=\n" +
"\x18ListMemoRelationsRequest\x12\x12\n" + "\trelations\x18\x02 \x03(\v2\x1a.memos.api.v1.MemoRelationB\x03\xe0A\x02R\trelations\"\x8f\x01\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"U\n" + "\x18ListMemoRelationsRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12 \n" +
"\tpage_size\x18\x02 \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
"\n" +
"page_token\x18\x03 \x01(\tB\x03\xe0A\x01R\tpageToken\"\x9c\x01\n" +
"\x19ListMemoRelationsResponse\x128\n" + "\x19ListMemoRelationsResponse\x128\n" +
"\trelations\x18\x01 \x03(\v2\x1a.memos.api.v1.MemoRelationR\trelations\"\\\n" + "\trelations\x18\x01 \x03(\v2\x1a.memos.api.v1.MemoRelationR\trelations\x12&\n" +
"\x18CreateMemoCommentRequest\x12\x12\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x12,\n" + "\n" +
"\acomment\x18\x02 \x01(\v2\x12.memos.api.v1.MemoR\acomment\"-\n" + "total_size\x18\x03 \x01(\x05R\ttotalSize\"\xa0\x01\n" +
"\x17ListMemoCommentsRequest\x12\x12\n" + "\x18CreateMemoCommentRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"D\n" + "\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x121\n" +
"\acomment\x18\x02 \x01(\v2\x12.memos.api.v1.MemoB\x03\xe0A\x02R\acomment\x12\"\n" +
"\n" +
"comment_id\x18\x03 \x01(\tB\x03\xe0A\x01R\tcommentId\"\xae\x01\n" +
"\x17ListMemoCommentsRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12 \n" +
"\tpage_size\x18\x02 \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
"\n" +
"page_token\x18\x03 \x01(\tB\x03\xe0A\x01R\tpageToken\x12\x1e\n" +
"\border_by\x18\x04 \x01(\tB\x03\xe0A\x01R\aorderBy\"\x8b\x01\n" +
"\x18ListMemoCommentsResponse\x12(\n" + "\x18ListMemoCommentsResponse\x12(\n" +
"\x05memos\x18\x01 \x03(\v2\x12.memos.api.v1.MemoR\x05memos\".\n" + "\x05memos\x18\x01 \x03(\v2\x12.memos.api.v1.MemoR\x05memos\x12&\n" +
"\x18ListMemoReactionsRequest\x12\x12\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
"\x04name\x18\x01 \x01(\tR\x04name\"Q\n" + "\n" +
"total_size\x18\x03 \x01(\x05R\ttotalSize\"\x8f\x01\n" +
"\x18ListMemoReactionsRequest\x12-\n" +
"\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x12 \n" +
"\tpage_size\x18\x02 \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
"\n" +
"page_token\x18\x03 \x01(\tB\x03\xe0A\x01R\tpageToken\"\x98\x01\n" +
"\x19ListMemoReactionsResponse\x124\n" + "\x19ListMemoReactionsResponse\x124\n" +
"\treactions\x18\x01 \x03(\v2\x16.memos.api.v1.ReactionR\treactions\"c\n" + "\treactions\x18\x01 \x03(\v2\x16.memos.api.v1.ReactionR\treactions\x12&\n" +
"\x19UpsertMemoReactionRequest\x12\x12\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
"\x04name\x18\x01 \x01(\tR\x04name\x122\n" + "\n" +
"\breaction\x18\x02 \x01(\v2\x16.memos.api.v1.ReactionR\breaction\"+\n" + "total_size\x18\x03 \x01(\x05R\ttotalSize\"\x83\x01\n" +
"\x19DeleteMemoReactionRequest\x12\x0e\n" + "\x19UpsertMemoReactionRequest\x12-\n" +
"\x02id\x18\x01 \x01(\x05R\x02id*P\n" + "\x04name\x18\x01 \x01(\tB\x19\xe0A\x02\xfaA\x13\n" +
"\x11memos.api.v1/MemoR\x04name\x127\n" +
"\breaction\x18\x02 \x01(\v2\x16.memos.api.v1.ReactionB\x03\xe0A\x02R\breaction\"N\n" +
"\x19DeleteMemoReactionRequest\x121\n" +
"\x04name\x18\x01 \x01(\tB\x1d\xe0A\x02\xfaA\x17\n" +
"\x15memos.api.v1/ReactionR\x04name*P\n" +
"\n" + "\n" +
"Visibility\x12\x1a\n" + "Visibility\x12\x1a\n" +
"\x16VISIBILITY_UNSPECIFIED\x10\x00\x12\v\n" + "\x16VISIBILITY_UNSPECIFIED\x10\x00\x12\v\n" +
"\aPRIVATE\x10\x01\x12\r\n" + "\aPRIVATE\x10\x01\x12\r\n" +
"\tPROTECTED\x10\x02\x12\n" + "\tPROTECTED\x10\x02\x12\n" +
"\n" + "\n" +
"\x06PUBLIC\x10\x032\xcd\x10\n" + "\x06PUBLIC\x10\x032\x97\x11\n" +
"\vMemoService\x12^\n" + "\vMemoService\x12e\n" +
"\n" + "\n" +
"CreateMemo\x12\x1f.memos.api.v1.CreateMemoRequest\x1a\x12.memos.api.v1.Memo\"\x1b\x82\xd3\xe4\x93\x02\x15:\x04memo\"\r/api/v1/memos\x12\x85\x01\n" + "CreateMemo\x12\x1f.memos.api.v1.CreateMemoRequest\x1a\x12.memos.api.v1.Memo\"\"\xdaA\x04memo\x82\xd3\xe4\x93\x02\x15:\x04memo\"\r/api/v1/memos\x12\x91\x01\n" +
"\tListMemos\x12\x1e.memos.api.v1.ListMemosRequest\x1a\x1f.memos.api.v1.ListMemosResponse\"7\x82\xd3\xe4\x93\x021Z \x12\x1e/api/v1/{parent=users/*}/memos\x12\r/api/v1/memos\x12b\n" + "\tListMemos\x12\x1e.memos.api.v1.ListMemosRequest\x1a\x1f.memos.api.v1.ListMemosResponse\"C\xdaA\x00\xdaA\x06parent\x82\xd3\xe4\x93\x021Z \x12\x1e/api/v1/{parent=users/*}/memos\x12\r/api/v1/memos\x12b\n" +
"\aGetMemo\x12\x1c.memos.api.v1.GetMemoRequest\x1a\x12.memos.api.v1.Memo\"%\xdaA\x04name\x82\xd3\xe4\x93\x02\x18\x12\x16/api/v1/{name=memos/*}\x12\x7f\n" + "\aGetMemo\x12\x1c.memos.api.v1.GetMemoRequest\x1a\x12.memos.api.v1.Memo\"%\xdaA\x04name\x82\xd3\xe4\x93\x02\x18\x12\x16/api/v1/{name=memos/*}\x12\x7f\n" +
"\n" + "\n" +
"UpdateMemo\x12\x1f.memos.api.v1.UpdateMemoRequest\x1a\x12.memos.api.v1.Memo\"<\xdaA\x10memo,update_mask\x82\xd3\xe4\x93\x02#:\x04memo2\x1b/api/v1/{memo.name=memos/*}\x12l\n" + "UpdateMemo\x12\x1f.memos.api.v1.UpdateMemoRequest\x1a\x12.memos.api.v1.Memo\"<\xdaA\x10memo,update_mask\x82\xd3\xe4\x93\x02#:\x04memo2\x1b/api/v1/{memo.name=memos/*}\x12l\n" +
"\n" + "\n" +
"DeleteMemo\x12\x1f.memos.api.v1.DeleteMemoRequest\x1a\x16.google.protobuf.Empty\"%\xdaA\x04name\x82\xd3\xe4\x93\x02\x18*\x16/api/v1/{name=memos/*}\x12|\n" + "DeleteMemo\x12\x1f.memos.api.v1.DeleteMemoRequest\x1a\x16.google.protobuf.Empty\"%\xdaA\x04name\x82\xd3\xe4\x93\x02\x18*\x16/api/v1/{name=memos/*}\x12\x95\x01\n" +
"\rRenameMemoTag\x12\".memos.api.v1.RenameMemoTagRequest\x1a\x16.google.protobuf.Empty\"/\x82\xd3\xe4\x93\x02):\x01*2$/api/v1/{parent=memos/*}/tags:rename\x12x\n" + "\rRenameMemoTag\x12\".memos.api.v1.RenameMemoTagRequest\x1a\x16.google.protobuf.Empty\"H\xdaA\x16parent,old_tag,new_tag\x82\xd3\xe4\x93\x02):\x01*2$/api/v1/{parent=memos/*}/tags:rename\x12\x85\x01\n" +
"\rDeleteMemoTag\x12\".memos.api.v1.DeleteMemoTagRequest\x1a\x16.google.protobuf.Empty\"+\x82\xd3\xe4\x93\x02%*#/api/v1/{parent=memos/*}/tags/{tag}\x12\x8b\x01\n" + "\rDeleteMemoTag\x12\".memos.api.v1.DeleteMemoTagRequest\x1a\x16.google.protobuf.Empty\"8\xdaA\n" +
"parent,tag\x82\xd3\xe4\x93\x02%*#/api/v1/{parent=memos/*}/tags/{tag}\x12\x8b\x01\n" +
"\x12SetMemoAttachments\x12'.memos.api.v1.SetMemoAttachmentsRequest\x1a\x16.google.protobuf.Empty\"4\xdaA\x04name\x82\xd3\xe4\x93\x02':\x01*2\"/api/v1/{name=memos/*}/attachments\x12\x9d\x01\n" + "\x12SetMemoAttachments\x12'.memos.api.v1.SetMemoAttachmentsRequest\x1a\x16.google.protobuf.Empty\"4\xdaA\x04name\x82\xd3\xe4\x93\x02':\x01*2\"/api/v1/{name=memos/*}/attachments\x12\x9d\x01\n" +
"\x13ListMemoAttachments\x12(.memos.api.v1.ListMemoAttachmentsRequest\x1a).memos.api.v1.ListMemoAttachmentsResponse\"1\xdaA\x04name\x82\xd3\xe4\x93\x02$\x12\"/api/v1/{name=memos/*}/attachments\x12\x85\x01\n" + "\x13ListMemoAttachments\x12(.memos.api.v1.ListMemoAttachmentsRequest\x1a).memos.api.v1.ListMemoAttachmentsResponse\"1\xdaA\x04name\x82\xd3\xe4\x93\x02$\x12\"/api/v1/{name=memos/*}/attachments\x12\x85\x01\n" +
"\x10SetMemoRelations\x12%.memos.api.v1.SetMemoRelationsRequest\x1a\x16.google.protobuf.Empty\"2\xdaA\x04name\x82\xd3\xe4\x93\x02%:\x01*2 /api/v1/{name=memos/*}/relations\x12\x95\x01\n" + "\x10SetMemoRelations\x12%.memos.api.v1.SetMemoRelationsRequest\x1a\x16.google.protobuf.Empty\"2\xdaA\x04name\x82\xd3\xe4\x93\x02%:\x01*2 /api/v1/{name=memos/*}/relations\x12\x95\x01\n" +
"\x11ListMemoRelations\x12&.memos.api.v1.ListMemoRelationsRequest\x1a'.memos.api.v1.ListMemoRelationsResponse\"/\xdaA\x04name\x82\xd3\xe4\x93\x02\"\x12 /api/v1/{name=memos/*}/relations\x12\x88\x01\n" + "\x11ListMemoRelations\x12&.memos.api.v1.ListMemoRelationsRequest\x1a'.memos.api.v1.ListMemoRelationsResponse\"/\xdaA\x04name\x82\xd3\xe4\x93\x02\"\x12 /api/v1/{name=memos/*}/relations\x12\x90\x01\n" +
"\x11CreateMemoComment\x12&.memos.api.v1.CreateMemoCommentRequest\x1a\x12.memos.api.v1.Memo\"7\xdaA\x04name\x82\xd3\xe4\x93\x02*:\acomment\"\x1f/api/v1/{name=memos/*}/comments\x12\x91\x01\n" + "\x11CreateMemoComment\x12&.memos.api.v1.CreateMemoCommentRequest\x1a\x12.memos.api.v1.Memo\"?\xdaA\fname,comment\x82\xd3\xe4\x93\x02*:\acomment\"\x1f/api/v1/{name=memos/*}/comments\x12\x91\x01\n" +
"\x10ListMemoComments\x12%.memos.api.v1.ListMemoCommentsRequest\x1a&.memos.api.v1.ListMemoCommentsResponse\".\xdaA\x04name\x82\xd3\xe4\x93\x02!\x12\x1f/api/v1/{name=memos/*}/comments\x12\x95\x01\n" + "\x10ListMemoComments\x12%.memos.api.v1.ListMemoCommentsRequest\x1a&.memos.api.v1.ListMemoCommentsResponse\".\xdaA\x04name\x82\xd3\xe4\x93\x02!\x12\x1f/api/v1/{name=memos/*}/comments\x12\x95\x01\n" +
"\x11ListMemoReactions\x12&.memos.api.v1.ListMemoReactionsRequest\x1a'.memos.api.v1.ListMemoReactionsResponse\"/\xdaA\x04name\x82\xd3\xe4\x93\x02\"\x12 /api/v1/{name=memos/*}/reactions\x12\x89\x01\n" + "\x11ListMemoReactions\x12&.memos.api.v1.ListMemoReactionsRequest\x1a'.memos.api.v1.ListMemoReactionsResponse\"/\xdaA\x04name\x82\xd3\xe4\x93\x02\"\x12 /api/v1/{name=memos/*}/reactions\x12\x89\x01\n" +
"\x12UpsertMemoReaction\x12'.memos.api.v1.UpsertMemoReactionRequest\x1a\x16.memos.api.v1.Reaction\"2\xdaA\x04name\x82\xd3\xe4\x93\x02%:\x01*\" /api/v1/{name=memos/*}/reactions\x12z\n" + "\x12UpsertMemoReaction\x12'.memos.api.v1.UpsertMemoReactionRequest\x1a\x16.memos.api.v1.Reaction\"2\xdaA\x04name\x82\xd3\xe4\x93\x02%:\x01*\" /api/v1/{name=memos/*}/reactions\x12\x80\x01\n" +
"\x12DeleteMemoReaction\x12'.memos.api.v1.DeleteMemoReactionRequest\x1a\x16.google.protobuf.Empty\"#\xdaA\x02id\x82\xd3\xe4\x93\x02\x18*\x16/api/v1/reactions/{id}B\xa8\x01\n" + "\x12DeleteMemoReaction\x12'.memos.api.v1.DeleteMemoReactionRequest\x1a\x16.google.protobuf.Empty\")\xdaA\x04name\x82\xd3\xe4\x93\x02\x1c*\x1a/api/v1/{name=reactions/*}B\xa8\x01\n" +
"\x10com.memos.api.v1B\x10MemoServiceProtoP\x01Z0github.com/usememos/memos/proto/gen/api/v1;apiv1\xa2\x02\x03MAX\xaa\x02\fMemos.Api.V1\xca\x02\fMemos\\Api\\V1\xe2\x02\x18Memos\\Api\\V1\\GPBMetadata\xea\x02\x0eMemos::Api::V1b\x06proto3" "\x10com.memos.api.v1B\x10MemoServiceProtoP\x01Z0github.com/usememos/memos/proto/gen/api/v1;apiv1\xa2\x02\x03MAX\xaa\x02\fMemos.Api.V1\xca\x02\fMemos\\Api\\V1\xe2\x02\x18Memos\\Api\\V1\\GPBMetadata\xea\x02\x0eMemos::Api::V1b\x06proto3"
var ( var (
...@@ -1818,111 +2256,111 @@ func file_api_v1_memo_service_proto_rawDescGZIP() []byte { ...@@ -1818,111 +2256,111 @@ func file_api_v1_memo_service_proto_rawDescGZIP() []byte {
} }
var file_api_v1_memo_service_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_api_v1_memo_service_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_api_v1_memo_service_proto_msgTypes = make([]protoimpl.MessageInfo, 26) var file_api_v1_memo_service_proto_msgTypes = make([]protoimpl.MessageInfo, 27)
var file_api_v1_memo_service_proto_goTypes = []any{ var file_api_v1_memo_service_proto_goTypes = []any{
(Visibility)(0), // 0: memos.api.v1.Visibility (Visibility)(0), // 0: memos.api.v1.Visibility
(MemoRelation_Type)(0), // 1: memos.api.v1.MemoRelation.Type (MemoRelation_Type)(0), // 1: memos.api.v1.MemoRelation.Type
(*Memo)(nil), // 2: memos.api.v1.Memo (*Reaction)(nil), // 2: memos.api.v1.Reaction
(*Location)(nil), // 3: memos.api.v1.Location (*Memo)(nil), // 3: memos.api.v1.Memo
(*CreateMemoRequest)(nil), // 4: memos.api.v1.CreateMemoRequest (*Location)(nil), // 4: memos.api.v1.Location
(*ListMemosRequest)(nil), // 5: memos.api.v1.ListMemosRequest (*CreateMemoRequest)(nil), // 5: memos.api.v1.CreateMemoRequest
(*ListMemosResponse)(nil), // 6: memos.api.v1.ListMemosResponse (*ListMemosRequest)(nil), // 6: memos.api.v1.ListMemosRequest
(*GetMemoRequest)(nil), // 7: memos.api.v1.GetMemoRequest (*ListMemosResponse)(nil), // 7: memos.api.v1.ListMemosResponse
(*UpdateMemoRequest)(nil), // 8: memos.api.v1.UpdateMemoRequest (*GetMemoRequest)(nil), // 8: memos.api.v1.GetMemoRequest
(*DeleteMemoRequest)(nil), // 9: memos.api.v1.DeleteMemoRequest (*UpdateMemoRequest)(nil), // 9: memos.api.v1.UpdateMemoRequest
(*RenameMemoTagRequest)(nil), // 10: memos.api.v1.RenameMemoTagRequest (*DeleteMemoRequest)(nil), // 10: memos.api.v1.DeleteMemoRequest
(*DeleteMemoTagRequest)(nil), // 11: memos.api.v1.DeleteMemoTagRequest (*RenameMemoTagRequest)(nil), // 11: memos.api.v1.RenameMemoTagRequest
(*SetMemoAttachmentsRequest)(nil), // 12: memos.api.v1.SetMemoAttachmentsRequest (*DeleteMemoTagRequest)(nil), // 12: memos.api.v1.DeleteMemoTagRequest
(*ListMemoAttachmentsRequest)(nil), // 13: memos.api.v1.ListMemoAttachmentsRequest (*SetMemoAttachmentsRequest)(nil), // 13: memos.api.v1.SetMemoAttachmentsRequest
(*ListMemoAttachmentsResponse)(nil), // 14: memos.api.v1.ListMemoAttachmentsResponse (*ListMemoAttachmentsRequest)(nil), // 14: memos.api.v1.ListMemoAttachmentsRequest
(*MemoRelation)(nil), // 15: memos.api.v1.MemoRelation (*ListMemoAttachmentsResponse)(nil), // 15: memos.api.v1.ListMemoAttachmentsResponse
(*SetMemoRelationsRequest)(nil), // 16: memos.api.v1.SetMemoRelationsRequest (*MemoRelation)(nil), // 16: memos.api.v1.MemoRelation
(*ListMemoRelationsRequest)(nil), // 17: memos.api.v1.ListMemoRelationsRequest (*SetMemoRelationsRequest)(nil), // 17: memos.api.v1.SetMemoRelationsRequest
(*ListMemoRelationsResponse)(nil), // 18: memos.api.v1.ListMemoRelationsResponse (*ListMemoRelationsRequest)(nil), // 18: memos.api.v1.ListMemoRelationsRequest
(*CreateMemoCommentRequest)(nil), // 19: memos.api.v1.CreateMemoCommentRequest (*ListMemoRelationsResponse)(nil), // 19: memos.api.v1.ListMemoRelationsResponse
(*ListMemoCommentsRequest)(nil), // 20: memos.api.v1.ListMemoCommentsRequest (*CreateMemoCommentRequest)(nil), // 20: memos.api.v1.CreateMemoCommentRequest
(*ListMemoCommentsResponse)(nil), // 21: memos.api.v1.ListMemoCommentsResponse (*ListMemoCommentsRequest)(nil), // 21: memos.api.v1.ListMemoCommentsRequest
(*ListMemoReactionsRequest)(nil), // 22: memos.api.v1.ListMemoReactionsRequest (*ListMemoCommentsResponse)(nil), // 22: memos.api.v1.ListMemoCommentsResponse
(*ListMemoReactionsResponse)(nil), // 23: memos.api.v1.ListMemoReactionsResponse (*ListMemoReactionsRequest)(nil), // 23: memos.api.v1.ListMemoReactionsRequest
(*UpsertMemoReactionRequest)(nil), // 24: memos.api.v1.UpsertMemoReactionRequest (*ListMemoReactionsResponse)(nil), // 24: memos.api.v1.ListMemoReactionsResponse
(*DeleteMemoReactionRequest)(nil), // 25: memos.api.v1.DeleteMemoReactionRequest (*UpsertMemoReactionRequest)(nil), // 25: memos.api.v1.UpsertMemoReactionRequest
(*Memo_Property)(nil), // 26: memos.api.v1.Memo.Property (*DeleteMemoReactionRequest)(nil), // 26: memos.api.v1.DeleteMemoReactionRequest
(*MemoRelation_Memo)(nil), // 27: memos.api.v1.MemoRelation.Memo (*Memo_Property)(nil), // 27: memos.api.v1.Memo.Property
(State)(0), // 28: memos.api.v1.State (*MemoRelation_Memo)(nil), // 28: memos.api.v1.MemoRelation.Memo
(*timestamppb.Timestamp)(nil), // 29: google.protobuf.Timestamp (*timestamppb.Timestamp)(nil), // 29: google.protobuf.Timestamp
(*Node)(nil), // 30: memos.api.v1.Node (State)(0), // 30: memos.api.v1.State
(*Attachment)(nil), // 31: memos.api.v1.Attachment (*Node)(nil), // 31: memos.api.v1.Node
(*Reaction)(nil), // 32: memos.api.v1.Reaction (*Attachment)(nil), // 32: memos.api.v1.Attachment
(Direction)(0), // 33: memos.api.v1.Direction (*fieldmaskpb.FieldMask)(nil), // 33: google.protobuf.FieldMask
(*fieldmaskpb.FieldMask)(nil), // 34: google.protobuf.FieldMask (*emptypb.Empty)(nil), // 34: google.protobuf.Empty
(*emptypb.Empty)(nil), // 35: google.protobuf.Empty
} }
var file_api_v1_memo_service_proto_depIdxs = []int32{ var file_api_v1_memo_service_proto_depIdxs = []int32{
28, // 0: memos.api.v1.Memo.state:type_name -> memos.api.v1.State 29, // 0: memos.api.v1.Reaction.create_time:type_name -> google.protobuf.Timestamp
29, // 1: memos.api.v1.Memo.create_time:type_name -> google.protobuf.Timestamp 30, // 1: memos.api.v1.Memo.state:type_name -> memos.api.v1.State
29, // 2: memos.api.v1.Memo.update_time:type_name -> google.protobuf.Timestamp 29, // 2: memos.api.v1.Memo.create_time:type_name -> google.protobuf.Timestamp
29, // 3: memos.api.v1.Memo.display_time:type_name -> google.protobuf.Timestamp 29, // 3: memos.api.v1.Memo.update_time:type_name -> google.protobuf.Timestamp
30, // 4: memos.api.v1.Memo.nodes:type_name -> memos.api.v1.Node 29, // 4: memos.api.v1.Memo.display_time:type_name -> google.protobuf.Timestamp
0, // 5: memos.api.v1.Memo.visibility:type_name -> memos.api.v1.Visibility 31, // 5: memos.api.v1.Memo.nodes:type_name -> memos.api.v1.Node
31, // 6: memos.api.v1.Memo.attachments:type_name -> memos.api.v1.Attachment 0, // 6: memos.api.v1.Memo.visibility:type_name -> memos.api.v1.Visibility
15, // 7: memos.api.v1.Memo.relations:type_name -> memos.api.v1.MemoRelation 32, // 7: memos.api.v1.Memo.attachments:type_name -> memos.api.v1.Attachment
32, // 8: memos.api.v1.Memo.reactions:type_name -> memos.api.v1.Reaction 16, // 8: memos.api.v1.Memo.relations:type_name -> memos.api.v1.MemoRelation
26, // 9: memos.api.v1.Memo.property:type_name -> memos.api.v1.Memo.Property 2, // 9: memos.api.v1.Memo.reactions:type_name -> memos.api.v1.Reaction
3, // 10: memos.api.v1.Memo.location:type_name -> memos.api.v1.Location 27, // 10: memos.api.v1.Memo.property:type_name -> memos.api.v1.Memo.Property
2, // 11: memos.api.v1.CreateMemoRequest.memo:type_name -> memos.api.v1.Memo 4, // 11: memos.api.v1.Memo.location:type_name -> memos.api.v1.Location
28, // 12: memos.api.v1.ListMemosRequest.state:type_name -> memos.api.v1.State 3, // 12: memos.api.v1.CreateMemoRequest.memo:type_name -> memos.api.v1.Memo
33, // 13: memos.api.v1.ListMemosRequest.direction:type_name -> memos.api.v1.Direction 30, // 13: memos.api.v1.ListMemosRequest.state:type_name -> memos.api.v1.State
2, // 14: memos.api.v1.ListMemosResponse.memos:type_name -> memos.api.v1.Memo 3, // 14: memos.api.v1.ListMemosResponse.memos:type_name -> memos.api.v1.Memo
2, // 15: memos.api.v1.UpdateMemoRequest.memo:type_name -> memos.api.v1.Memo 33, // 15: memos.api.v1.GetMemoRequest.read_mask:type_name -> google.protobuf.FieldMask
34, // 16: memos.api.v1.UpdateMemoRequest.update_mask:type_name -> google.protobuf.FieldMask 3, // 16: memos.api.v1.UpdateMemoRequest.memo:type_name -> memos.api.v1.Memo
31, // 17: memos.api.v1.SetMemoAttachmentsRequest.attachments:type_name -> memos.api.v1.Attachment 33, // 17: memos.api.v1.UpdateMemoRequest.update_mask:type_name -> google.protobuf.FieldMask
31, // 18: memos.api.v1.ListMemoAttachmentsResponse.attachments:type_name -> memos.api.v1.Attachment 32, // 18: memos.api.v1.SetMemoAttachmentsRequest.attachments:type_name -> memos.api.v1.Attachment
27, // 19: memos.api.v1.MemoRelation.memo:type_name -> memos.api.v1.MemoRelation.Memo 32, // 19: memos.api.v1.ListMemoAttachmentsResponse.attachments:type_name -> memos.api.v1.Attachment
27, // 20: memos.api.v1.MemoRelation.related_memo:type_name -> memos.api.v1.MemoRelation.Memo 28, // 20: memos.api.v1.MemoRelation.memo:type_name -> memos.api.v1.MemoRelation.Memo
1, // 21: memos.api.v1.MemoRelation.type:type_name -> memos.api.v1.MemoRelation.Type 28, // 21: memos.api.v1.MemoRelation.related_memo:type_name -> memos.api.v1.MemoRelation.Memo
15, // 22: memos.api.v1.SetMemoRelationsRequest.relations:type_name -> memos.api.v1.MemoRelation 1, // 22: memos.api.v1.MemoRelation.type:type_name -> memos.api.v1.MemoRelation.Type
15, // 23: memos.api.v1.ListMemoRelationsResponse.relations:type_name -> memos.api.v1.MemoRelation 16, // 23: memos.api.v1.SetMemoRelationsRequest.relations:type_name -> memos.api.v1.MemoRelation
2, // 24: memos.api.v1.CreateMemoCommentRequest.comment:type_name -> memos.api.v1.Memo 16, // 24: memos.api.v1.ListMemoRelationsResponse.relations:type_name -> memos.api.v1.MemoRelation
2, // 25: memos.api.v1.ListMemoCommentsResponse.memos:type_name -> memos.api.v1.Memo 3, // 25: memos.api.v1.CreateMemoCommentRequest.comment:type_name -> memos.api.v1.Memo
32, // 26: memos.api.v1.ListMemoReactionsResponse.reactions:type_name -> memos.api.v1.Reaction 3, // 26: memos.api.v1.ListMemoCommentsResponse.memos:type_name -> memos.api.v1.Memo
32, // 27: memos.api.v1.UpsertMemoReactionRequest.reaction:type_name -> memos.api.v1.Reaction 2, // 27: memos.api.v1.ListMemoReactionsResponse.reactions:type_name -> memos.api.v1.Reaction
4, // 28: memos.api.v1.MemoService.CreateMemo:input_type -> memos.api.v1.CreateMemoRequest 2, // 28: memos.api.v1.UpsertMemoReactionRequest.reaction:type_name -> memos.api.v1.Reaction
5, // 29: memos.api.v1.MemoService.ListMemos:input_type -> memos.api.v1.ListMemosRequest 5, // 29: memos.api.v1.MemoService.CreateMemo:input_type -> memos.api.v1.CreateMemoRequest
7, // 30: memos.api.v1.MemoService.GetMemo:input_type -> memos.api.v1.GetMemoRequest 6, // 30: memos.api.v1.MemoService.ListMemos:input_type -> memos.api.v1.ListMemosRequest
8, // 31: memos.api.v1.MemoService.UpdateMemo:input_type -> memos.api.v1.UpdateMemoRequest 8, // 31: memos.api.v1.MemoService.GetMemo:input_type -> memos.api.v1.GetMemoRequest
9, // 32: memos.api.v1.MemoService.DeleteMemo:input_type -> memos.api.v1.DeleteMemoRequest 9, // 32: memos.api.v1.MemoService.UpdateMemo:input_type -> memos.api.v1.UpdateMemoRequest
10, // 33: memos.api.v1.MemoService.RenameMemoTag:input_type -> memos.api.v1.RenameMemoTagRequest 10, // 33: memos.api.v1.MemoService.DeleteMemo:input_type -> memos.api.v1.DeleteMemoRequest
11, // 34: memos.api.v1.MemoService.DeleteMemoTag:input_type -> memos.api.v1.DeleteMemoTagRequest 11, // 34: memos.api.v1.MemoService.RenameMemoTag:input_type -> memos.api.v1.RenameMemoTagRequest
12, // 35: memos.api.v1.MemoService.SetMemoAttachments:input_type -> memos.api.v1.SetMemoAttachmentsRequest 12, // 35: memos.api.v1.MemoService.DeleteMemoTag:input_type -> memos.api.v1.DeleteMemoTagRequest
13, // 36: memos.api.v1.MemoService.ListMemoAttachments:input_type -> memos.api.v1.ListMemoAttachmentsRequest 13, // 36: memos.api.v1.MemoService.SetMemoAttachments:input_type -> memos.api.v1.SetMemoAttachmentsRequest
16, // 37: memos.api.v1.MemoService.SetMemoRelations:input_type -> memos.api.v1.SetMemoRelationsRequest 14, // 37: memos.api.v1.MemoService.ListMemoAttachments:input_type -> memos.api.v1.ListMemoAttachmentsRequest
17, // 38: memos.api.v1.MemoService.ListMemoRelations:input_type -> memos.api.v1.ListMemoRelationsRequest 17, // 38: memos.api.v1.MemoService.SetMemoRelations:input_type -> memos.api.v1.SetMemoRelationsRequest
19, // 39: memos.api.v1.MemoService.CreateMemoComment:input_type -> memos.api.v1.CreateMemoCommentRequest 18, // 39: memos.api.v1.MemoService.ListMemoRelations:input_type -> memos.api.v1.ListMemoRelationsRequest
20, // 40: memos.api.v1.MemoService.ListMemoComments:input_type -> memos.api.v1.ListMemoCommentsRequest 20, // 40: memos.api.v1.MemoService.CreateMemoComment:input_type -> memos.api.v1.CreateMemoCommentRequest
22, // 41: memos.api.v1.MemoService.ListMemoReactions:input_type -> memos.api.v1.ListMemoReactionsRequest 21, // 41: memos.api.v1.MemoService.ListMemoComments:input_type -> memos.api.v1.ListMemoCommentsRequest
24, // 42: memos.api.v1.MemoService.UpsertMemoReaction:input_type -> memos.api.v1.UpsertMemoReactionRequest 23, // 42: memos.api.v1.MemoService.ListMemoReactions:input_type -> memos.api.v1.ListMemoReactionsRequest
25, // 43: memos.api.v1.MemoService.DeleteMemoReaction:input_type -> memos.api.v1.DeleteMemoReactionRequest 25, // 43: memos.api.v1.MemoService.UpsertMemoReaction:input_type -> memos.api.v1.UpsertMemoReactionRequest
2, // 44: memos.api.v1.MemoService.CreateMemo:output_type -> memos.api.v1.Memo 26, // 44: memos.api.v1.MemoService.DeleteMemoReaction:input_type -> memos.api.v1.DeleteMemoReactionRequest
6, // 45: memos.api.v1.MemoService.ListMemos:output_type -> memos.api.v1.ListMemosResponse 3, // 45: memos.api.v1.MemoService.CreateMemo:output_type -> memos.api.v1.Memo
2, // 46: memos.api.v1.MemoService.GetMemo:output_type -> memos.api.v1.Memo 7, // 46: memos.api.v1.MemoService.ListMemos:output_type -> memos.api.v1.ListMemosResponse
2, // 47: memos.api.v1.MemoService.UpdateMemo:output_type -> memos.api.v1.Memo 3, // 47: memos.api.v1.MemoService.GetMemo:output_type -> memos.api.v1.Memo
35, // 48: memos.api.v1.MemoService.DeleteMemo:output_type -> google.protobuf.Empty 3, // 48: memos.api.v1.MemoService.UpdateMemo:output_type -> memos.api.v1.Memo
35, // 49: memos.api.v1.MemoService.RenameMemoTag:output_type -> google.protobuf.Empty 34, // 49: memos.api.v1.MemoService.DeleteMemo:output_type -> google.protobuf.Empty
35, // 50: memos.api.v1.MemoService.DeleteMemoTag:output_type -> google.protobuf.Empty 34, // 50: memos.api.v1.MemoService.RenameMemoTag:output_type -> google.protobuf.Empty
35, // 51: memos.api.v1.MemoService.SetMemoAttachments:output_type -> google.protobuf.Empty 34, // 51: memos.api.v1.MemoService.DeleteMemoTag:output_type -> google.protobuf.Empty
14, // 52: memos.api.v1.MemoService.ListMemoAttachments:output_type -> memos.api.v1.ListMemoAttachmentsResponse 34, // 52: memos.api.v1.MemoService.SetMemoAttachments:output_type -> google.protobuf.Empty
35, // 53: memos.api.v1.MemoService.SetMemoRelations:output_type -> google.protobuf.Empty 15, // 53: memos.api.v1.MemoService.ListMemoAttachments:output_type -> memos.api.v1.ListMemoAttachmentsResponse
18, // 54: memos.api.v1.MemoService.ListMemoRelations:output_type -> memos.api.v1.ListMemoRelationsResponse 34, // 54: memos.api.v1.MemoService.SetMemoRelations:output_type -> google.protobuf.Empty
2, // 55: memos.api.v1.MemoService.CreateMemoComment:output_type -> memos.api.v1.Memo 19, // 55: memos.api.v1.MemoService.ListMemoRelations:output_type -> memos.api.v1.ListMemoRelationsResponse
21, // 56: memos.api.v1.MemoService.ListMemoComments:output_type -> memos.api.v1.ListMemoCommentsResponse 3, // 56: memos.api.v1.MemoService.CreateMemoComment:output_type -> memos.api.v1.Memo
23, // 57: memos.api.v1.MemoService.ListMemoReactions:output_type -> memos.api.v1.ListMemoReactionsResponse 22, // 57: memos.api.v1.MemoService.ListMemoComments:output_type -> memos.api.v1.ListMemoCommentsResponse
32, // 58: memos.api.v1.MemoService.UpsertMemoReaction:output_type -> memos.api.v1.Reaction 24, // 58: memos.api.v1.MemoService.ListMemoReactions:output_type -> memos.api.v1.ListMemoReactionsResponse
35, // 59: memos.api.v1.MemoService.DeleteMemoReaction:output_type -> google.protobuf.Empty 2, // 59: memos.api.v1.MemoService.UpsertMemoReaction:output_type -> memos.api.v1.Reaction
44, // [44:60] is the sub-list for method output_type 34, // 60: memos.api.v1.MemoService.DeleteMemoReaction:output_type -> google.protobuf.Empty
28, // [28:44] is the sub-list for method input_type 45, // [45:61] is the sub-list for method output_type
28, // [28:28] is the sub-list for extension type_name 29, // [29:45] is the sub-list for method input_type
28, // [28:28] is the sub-list for extension extendee 29, // [29:29] is the sub-list for extension type_name
0, // [0:28] is the sub-list for field type_name 29, // [29:29] is the sub-list for extension extendee
0, // [0:29] is the sub-list for field type_name
} }
func init() { file_api_v1_memo_service_proto_init() } func init() { file_api_v1_memo_service_proto_init() }
...@@ -1933,15 +2371,14 @@ func file_api_v1_memo_service_proto_init() { ...@@ -1933,15 +2371,14 @@ func file_api_v1_memo_service_proto_init() {
file_api_v1_attachment_service_proto_init() file_api_v1_attachment_service_proto_init()
file_api_v1_common_proto_init() file_api_v1_common_proto_init()
file_api_v1_markdown_service_proto_init() file_api_v1_markdown_service_proto_init()
file_api_v1_reaction_service_proto_init() file_api_v1_memo_service_proto_msgTypes[1].OneofWrappers = []any{}
file_api_v1_memo_service_proto_msgTypes[0].OneofWrappers = []any{}
type x struct{} type x struct{}
out := protoimpl.TypeBuilder{ out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{ File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_api_v1_memo_service_proto_rawDesc), len(file_api_v1_memo_service_proto_rawDesc)), RawDescriptor: unsafe.Slice(unsafe.StringData(file_api_v1_memo_service_proto_rawDesc), len(file_api_v1_memo_service_proto_rawDesc)),
NumEnums: 2, NumEnums: 2,
NumMessages: 26, NumMessages: 27,
NumExtensions: 0, NumExtensions: 0,
NumServices: 1, NumServices: 1,
}, },
......
...@@ -35,6 +35,8 @@ var ( ...@@ -35,6 +35,8 @@ var (
_ = metadata.Join _ = metadata.Join
) )
var filter_MemoService_CreateMemo_0 = &utilities.DoubleArray{Encoding: map[string]int{"memo": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_CreateMemo_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_CreateMemo_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq CreateMemoRequest protoReq CreateMemoRequest
...@@ -43,6 +45,12 @@ func request_MemoService_CreateMemo_0(ctx context.Context, marshaler runtime.Mar ...@@ -43,6 +45,12 @@ func request_MemoService_CreateMemo_0(ctx context.Context, marshaler runtime.Mar
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Memo); err != nil && !errors.Is(err, io.EOF) { if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Memo); err != nil && !errors.Is(err, io.EOF) {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_CreateMemo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.CreateMemo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.CreateMemo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -55,6 +63,12 @@ func local_request_MemoService_CreateMemo_0(ctx context.Context, marshaler runti ...@@ -55,6 +63,12 @@ func local_request_MemoService_CreateMemo_0(ctx context.Context, marshaler runti
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Memo); err != nil && !errors.Is(err, io.EOF) { if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Memo); err != nil && !errors.Is(err, io.EOF) {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_CreateMemo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.CreateMemo(ctx, &protoReq) msg, err := server.CreateMemo(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
...@@ -143,6 +157,8 @@ func local_request_MemoService_ListMemos_1(ctx context.Context, marshaler runtim ...@@ -143,6 +157,8 @@ func local_request_MemoService_ListMemos_1(ctx context.Context, marshaler runtim
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_GetMemo_0 = &utilities.DoubleArray{Encoding: map[string]int{"name": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_GetMemo_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_GetMemo_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq GetMemoRequest protoReq GetMemoRequest
...@@ -158,6 +174,12 @@ func request_MemoService_GetMemo_0(ctx context.Context, marshaler runtime.Marsha ...@@ -158,6 +174,12 @@ func request_MemoService_GetMemo_0(ctx context.Context, marshaler runtime.Marsha
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_GetMemo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.GetMemo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.GetMemo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -176,6 +198,12 @@ func local_request_MemoService_GetMemo_0(ctx context.Context, marshaler runtime. ...@@ -176,6 +198,12 @@ func local_request_MemoService_GetMemo_0(ctx context.Context, marshaler runtime.
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_GetMemo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.GetMemo(ctx, &protoReq) msg, err := server.GetMemo(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
...@@ -258,6 +286,8 @@ func local_request_MemoService_UpdateMemo_0(ctx context.Context, marshaler runti ...@@ -258,6 +286,8 @@ func local_request_MemoService_UpdateMemo_0(ctx context.Context, marshaler runti
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_DeleteMemo_0 = &utilities.DoubleArray{Encoding: map[string]int{"name": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_DeleteMemo_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_DeleteMemo_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq DeleteMemoRequest protoReq DeleteMemoRequest
...@@ -273,6 +303,12 @@ func request_MemoService_DeleteMemo_0(ctx context.Context, marshaler runtime.Mar ...@@ -273,6 +303,12 @@ func request_MemoService_DeleteMemo_0(ctx context.Context, marshaler runtime.Mar
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_DeleteMemo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.DeleteMemo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.DeleteMemo(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -291,6 +327,12 @@ func local_request_MemoService_DeleteMemo_0(ctx context.Context, marshaler runti ...@@ -291,6 +327,12 @@ func local_request_MemoService_DeleteMemo_0(ctx context.Context, marshaler runti
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_DeleteMemo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.DeleteMemo(ctx, &protoReq) msg, err := server.DeleteMemo(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
...@@ -446,6 +488,8 @@ func local_request_MemoService_SetMemoAttachments_0(ctx context.Context, marshal ...@@ -446,6 +488,8 @@ func local_request_MemoService_SetMemoAttachments_0(ctx context.Context, marshal
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_ListMemoAttachments_0 = &utilities.DoubleArray{Encoding: map[string]int{"name": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_ListMemoAttachments_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_ListMemoAttachments_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq ListMemoAttachmentsRequest protoReq ListMemoAttachmentsRequest
...@@ -461,6 +505,12 @@ func request_MemoService_ListMemoAttachments_0(ctx context.Context, marshaler ru ...@@ -461,6 +505,12 @@ func request_MemoService_ListMemoAttachments_0(ctx context.Context, marshaler ru
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoAttachments_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.ListMemoAttachments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.ListMemoAttachments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -479,6 +529,12 @@ func local_request_MemoService_ListMemoAttachments_0(ctx context.Context, marsha ...@@ -479,6 +529,12 @@ func local_request_MemoService_ListMemoAttachments_0(ctx context.Context, marsha
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoAttachments_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.ListMemoAttachments(ctx, &protoReq) msg, err := server.ListMemoAttachments(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
...@@ -525,6 +581,8 @@ func local_request_MemoService_SetMemoRelations_0(ctx context.Context, marshaler ...@@ -525,6 +581,8 @@ func local_request_MemoService_SetMemoRelations_0(ctx context.Context, marshaler
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_ListMemoRelations_0 = &utilities.DoubleArray{Encoding: map[string]int{"name": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_ListMemoRelations_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_ListMemoRelations_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq ListMemoRelationsRequest protoReq ListMemoRelationsRequest
...@@ -540,6 +598,12 @@ func request_MemoService_ListMemoRelations_0(ctx context.Context, marshaler runt ...@@ -540,6 +598,12 @@ func request_MemoService_ListMemoRelations_0(ctx context.Context, marshaler runt
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoRelations_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.ListMemoRelations(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.ListMemoRelations(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -558,10 +622,18 @@ func local_request_MemoService_ListMemoRelations_0(ctx context.Context, marshale ...@@ -558,10 +622,18 @@ func local_request_MemoService_ListMemoRelations_0(ctx context.Context, marshale
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoRelations_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.ListMemoRelations(ctx, &protoReq) msg, err := server.ListMemoRelations(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_CreateMemoComment_0 = &utilities.DoubleArray{Encoding: map[string]int{"comment": 0, "name": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}}
func request_MemoService_CreateMemoComment_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_CreateMemoComment_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq CreateMemoCommentRequest protoReq CreateMemoCommentRequest
...@@ -579,6 +651,12 @@ func request_MemoService_CreateMemoComment_0(ctx context.Context, marshaler runt ...@@ -579,6 +651,12 @@ func request_MemoService_CreateMemoComment_0(ctx context.Context, marshaler runt
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_CreateMemoComment_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.CreateMemoComment(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.CreateMemoComment(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -600,10 +678,18 @@ func local_request_MemoService_CreateMemoComment_0(ctx context.Context, marshale ...@@ -600,10 +678,18 @@ func local_request_MemoService_CreateMemoComment_0(ctx context.Context, marshale
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_CreateMemoComment_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.CreateMemoComment(ctx, &protoReq) msg, err := server.CreateMemoComment(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_ListMemoComments_0 = &utilities.DoubleArray{Encoding: map[string]int{"name": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_ListMemoComments_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_ListMemoComments_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq ListMemoCommentsRequest protoReq ListMemoCommentsRequest
...@@ -619,6 +705,12 @@ func request_MemoService_ListMemoComments_0(ctx context.Context, marshaler runti ...@@ -619,6 +705,12 @@ func request_MemoService_ListMemoComments_0(ctx context.Context, marshaler runti
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoComments_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.ListMemoComments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.ListMemoComments(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -637,10 +729,18 @@ func local_request_MemoService_ListMemoComments_0(ctx context.Context, marshaler ...@@ -637,10 +729,18 @@ func local_request_MemoService_ListMemoComments_0(ctx context.Context, marshaler
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoComments_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.ListMemoComments(ctx, &protoReq) msg, err := server.ListMemoComments(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
var filter_MemoService_ListMemoReactions_0 = &utilities.DoubleArray{Encoding: map[string]int{"name": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
func request_MemoService_ListMemoReactions_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { func request_MemoService_ListMemoReactions_0(ctx context.Context, marshaler runtime.Marshaler, client MemoServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var ( var (
protoReq ListMemoReactionsRequest protoReq ListMemoReactionsRequest
...@@ -656,6 +756,12 @@ func request_MemoService_ListMemoReactions_0(ctx context.Context, marshaler runt ...@@ -656,6 +756,12 @@ func request_MemoService_ListMemoReactions_0(ctx context.Context, marshaler runt
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoReactions_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := client.ListMemoReactions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.ListMemoReactions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
} }
...@@ -674,6 +780,12 @@ func local_request_MemoService_ListMemoReactions_0(ctx context.Context, marshale ...@@ -674,6 +780,12 @@ func local_request_MemoService_ListMemoReactions_0(ctx context.Context, marshale
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_MemoService_ListMemoReactions_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
msg, err := server.ListMemoReactions(ctx, &protoReq) msg, err := server.ListMemoReactions(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
} }
...@@ -727,13 +839,13 @@ func request_MemoService_DeleteMemoReaction_0(ctx context.Context, marshaler run ...@@ -727,13 +839,13 @@ func request_MemoService_DeleteMemoReaction_0(ctx context.Context, marshaler run
err error err error
) )
io.Copy(io.Discard, req.Body) io.Copy(io.Discard, req.Body)
val, ok := pathParams["id"] val, ok := pathParams["name"]
if !ok { if !ok {
return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name")
} }
protoReq.Id, err = runtime.Int32(val) protoReq.Name, err = runtime.String(val)
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
msg, err := client.DeleteMemoReaction(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) msg, err := client.DeleteMemoReaction(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err return msg, metadata, err
...@@ -745,13 +857,13 @@ func local_request_MemoService_DeleteMemoReaction_0(ctx context.Context, marshal ...@@ -745,13 +857,13 @@ func local_request_MemoService_DeleteMemoReaction_0(ctx context.Context, marshal
metadata runtime.ServerMetadata metadata runtime.ServerMetadata
err error err error
) )
val, ok := pathParams["id"] val, ok := pathParams["name"]
if !ok { if !ok {
return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "id") return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "name")
} }
protoReq.Id, err = runtime.Int32(val) protoReq.Name, err = runtime.String(val)
if err != nil { if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err) return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "name", err)
} }
msg, err := server.DeleteMemoReaction(ctx, &protoReq) msg, err := server.DeleteMemoReaction(ctx, &protoReq)
return msg, metadata, err return msg, metadata, err
...@@ -1089,7 +1201,7 @@ func RegisterMemoServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux ...@@ -1089,7 +1201,7 @@ func RegisterMemoServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux
var stream runtime.ServerTransportStream var stream runtime.ServerTransportStream
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/memos.api.v1.MemoService/DeleteMemoReaction", runtime.WithHTTPPathPattern("/api/v1/reactions/{id}")) annotatedContext, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/memos.api.v1.MemoService/DeleteMemoReaction", runtime.WithHTTPPathPattern("/api/v1/{name=reactions/*}"))
if err != nil { if err != nil {
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
return return
...@@ -1419,7 +1531,7 @@ func RegisterMemoServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux ...@@ -1419,7 +1531,7 @@ func RegisterMemoServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux
ctx, cancel := context.WithCancel(req.Context()) ctx, cancel := context.WithCancel(req.Context())
defer cancel() defer cancel()
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/memos.api.v1.MemoService/DeleteMemoReaction", runtime.WithHTTPPathPattern("/api/v1/reactions/{id}")) annotatedContext, err := runtime.AnnotateContext(ctx, mux, req, "/memos.api.v1.MemoService/DeleteMemoReaction", runtime.WithHTTPPathPattern("/api/v1/{name=reactions/*}"))
if err != nil { if err != nil {
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
return return
...@@ -1452,7 +1564,7 @@ var ( ...@@ -1452,7 +1564,7 @@ var (
pattern_MemoService_ListMemoComments_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3, 2, 4}, []string{"api", "v1", "memos", "name", "comments"}, "")) pattern_MemoService_ListMemoComments_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3, 2, 4}, []string{"api", "v1", "memos", "name", "comments"}, ""))
pattern_MemoService_ListMemoReactions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3, 2, 4}, []string{"api", "v1", "memos", "name", "reactions"}, "")) pattern_MemoService_ListMemoReactions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3, 2, 4}, []string{"api", "v1", "memos", "name", "reactions"}, ""))
pattern_MemoService_UpsertMemoReaction_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3, 2, 4}, []string{"api", "v1", "memos", "name", "reactions"}, "")) pattern_MemoService_UpsertMemoReaction_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3, 2, 4}, []string{"api", "v1", "memos", "name", "reactions"}, ""))
pattern_MemoService_DeleteMemoReaction_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"api", "v1", "reactions", "id"}, "")) pattern_MemoService_DeleteMemoReaction_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 2, 5, 3}, []string{"api", "v1", "reactions", "name"}, ""))
) )
var ( var (
......
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.6
// protoc (unknown)
// source: api/v1/reaction_service.proto
package apiv1
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)
)
type Reaction struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// The name of the creator.
// Format: users/{user}
Creator string `protobuf:"bytes,2,opt,name=creator,proto3" json:"creator,omitempty"`
// The content identifier.
// For memo, it should be the `Memo.name`.
ContentId string `protobuf:"bytes,3,opt,name=content_id,json=contentId,proto3" json:"content_id,omitempty"`
ReactionType string `protobuf:"bytes,4,opt,name=reaction_type,json=reactionType,proto3" json:"reaction_type,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *Reaction) Reset() {
*x = Reaction{}
mi := &file_api_v1_reaction_service_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *Reaction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Reaction) ProtoMessage() {}
func (x *Reaction) ProtoReflect() protoreflect.Message {
mi := &file_api_v1_reaction_service_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 Reaction.ProtoReflect.Descriptor instead.
func (*Reaction) Descriptor() ([]byte, []int) {
return file_api_v1_reaction_service_proto_rawDescGZIP(), []int{0}
}
func (x *Reaction) GetId() int32 {
if x != nil {
return x.Id
}
return 0
}
func (x *Reaction) GetCreator() string {
if x != nil {
return x.Creator
}
return ""
}
func (x *Reaction) GetContentId() string {
if x != nil {
return x.ContentId
}
return ""
}
func (x *Reaction) GetReactionType() string {
if x != nil {
return x.ReactionType
}
return ""
}
var File_api_v1_reaction_service_proto protoreflect.FileDescriptor
const file_api_v1_reaction_service_proto_rawDesc = "" +
"\n" +
"\x1dapi/v1/reaction_service.proto\x12\fmemos.api.v1\"x\n" +
"\bReaction\x12\x0e\n" +
"\x02id\x18\x01 \x01(\x05R\x02id\x12\x18\n" +
"\acreator\x18\x02 \x01(\tR\acreator\x12\x1d\n" +
"\n" +
"content_id\x18\x03 \x01(\tR\tcontentId\x12#\n" +
"\rreaction_type\x18\x04 \x01(\tR\freactionTypeB\xac\x01\n" +
"\x10com.memos.api.v1B\x14ReactionServiceProtoP\x01Z0github.com/usememos/memos/proto/gen/api/v1;apiv1\xa2\x02\x03MAX\xaa\x02\fMemos.Api.V1\xca\x02\fMemos\\Api\\V1\xe2\x02\x18Memos\\Api\\V1\\GPBMetadata\xea\x02\x0eMemos::Api::V1b\x06proto3"
var (
file_api_v1_reaction_service_proto_rawDescOnce sync.Once
file_api_v1_reaction_service_proto_rawDescData []byte
)
func file_api_v1_reaction_service_proto_rawDescGZIP() []byte {
file_api_v1_reaction_service_proto_rawDescOnce.Do(func() {
file_api_v1_reaction_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_api_v1_reaction_service_proto_rawDesc), len(file_api_v1_reaction_service_proto_rawDesc)))
})
return file_api_v1_reaction_service_proto_rawDescData
}
var file_api_v1_reaction_service_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_api_v1_reaction_service_proto_goTypes = []any{
(*Reaction)(nil), // 0: memos.api.v1.Reaction
}
var file_api_v1_reaction_service_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_api_v1_reaction_service_proto_init() }
func file_api_v1_reaction_service_proto_init() {
if File_api_v1_reaction_service_proto != nil {
return
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_api_v1_reaction_service_proto_rawDesc), len(file_api_v1_reaction_service_proto_rawDesc)),
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_api_v1_reaction_service_proto_goTypes,
DependencyIndexes: file_api_v1_reaction_service_proto_depIdxs,
MessageInfos: file_api_v1_reaction_service_proto_msgTypes,
}.Build()
File_api_v1_reaction_service_proto = out.File
file_api_v1_reaction_service_proto_goTypes = nil
file_api_v1_reaction_service_proto_depIdxs = nil
}
...@@ -391,27 +391,32 @@ paths: ...@@ -391,27 +391,32 @@ paths:
parameters: parameters:
- name: parent - name: parent
description: |- description: |-
The parent is the owner of the memos. Optional. The parent is the owner of the memos.
If not specified or `users/-`, it will list all memos. If not specified or `users/-`, it will list all memos.
Format: users/{user}
in: query in: query
required: false required: false
type: string type: string
- name: pageSize - name: pageSize
description: The maximum number of memos to return. description: |-
Optional. The maximum number of memos to return.
The service may return fewer than this value.
If unspecified, at most 50 memos will be returned.
The maximum value is 1000; values above 1000 will be coerced to 1000.
in: query in: query
required: false required: false
type: integer type: integer
format: int32 format: int32
- name: pageToken - name: pageToken
description: |- description: |-
A page token, received from a previous `ListMemos` call. Optional. A page token, received from a previous `ListMemos` call.
Provide this to retrieve the subsequent page. Provide this to retrieve the subsequent page.
in: query in: query
required: false required: false
type: string type: string
- name: state - name: state
description: |- description: |-
The state of the memos to list. Optional. The state of the memos to list.
Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. Default to `NORMAL`. Set to `ARCHIVED` to list archived memos.
in: query in: query
required: false required: false
...@@ -421,32 +426,27 @@ paths: ...@@ -421,32 +426,27 @@ paths:
- NORMAL - NORMAL
- ARCHIVED - ARCHIVED
default: STATE_UNSPECIFIED default: STATE_UNSPECIFIED
- name: sort - name: orderBy
description: |-
What field to sort the results by.
Default to display_time.
in: query
required: false
type: string
- name: direction
description: |- description: |-
The direction to sort the results by. Optional. The order to sort results by.
Default to DESC. Default to "display_time desc".
Example: "display_time desc" or "create_time asc"
in: query in: query
required: false required: false
type: string type: string
enum:
- DIRECTION_UNSPECIFIED
- ASC
- DESC
default: DIRECTION_UNSPECIFIED
- name: filter - name: filter
description: |- description: |-
Optional. Filter to apply to the list results.
Filter is a CEL expression to filter memos. Filter is a CEL expression to filter memos.
Refer to `Shortcut.filter`. Refer to `Shortcut.filter`.
in: query in: query
required: false required: false
type: string type: string
- name: showDeleted
description: Optional. If true, show deleted memos in the response.
in: query
required: false
type: boolean
- name: oldFilter - name: oldFilter
description: |- description: |-
[Deprecated] Old filter contains some specific conditions to filter memos. [Deprecated] Old filter contains some specific conditions to filter memos.
...@@ -470,38 +470,30 @@ paths: ...@@ -470,38 +470,30 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: memo - name: memo
description: The memo to create. description: Required. The memo to create.
in: body in: body
required: true required: true
schema: schema:
$ref: '#/definitions/apiv1Memo' $ref: '#/definitions/apiv1Memo'
required: required:
- memo - memo
tags: - name: memoId
- MemoService
/api/v1/reactions/{id}:
delete:
summary: DeleteMemoReaction deletes a reaction for a memo.
operationId: MemoService_DeleteMemoReaction
responses:
"200":
description: A successful response.
schema:
type: object
properties: {}
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
description: |- description: |-
The id of the reaction. Optional. The memo ID to use for this memo.
Refer to the `Reaction.id`. If empty, a unique ID will be generated.
in: path in: query
required: true required: false
type: integer type: string
format: int32 - name: validateOnly
description: Optional. If set, validate the request but don't actually create the memo.
in: query
required: false
type: boolean
- name: requestId
description: Optional. An idempotency token.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
/api/v1/users: /api/v1/users:
...@@ -972,7 +964,7 @@ paths: ...@@ -972,7 +964,7 @@ paths:
parameters: parameters:
- name: memo.name - name: memo.name
description: |- description: |-
The name of the memo. The resource name of the memo.
Format: memos/{memo}, memo is the user defined id or uuid. Format: memos/{memo}, memo is the user defined id or uuid.
in: path in: path
required: true required: true
...@@ -980,7 +972,7 @@ paths: ...@@ -980,7 +972,7 @@ paths:
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: memo - name: memo
description: |- description: |-
The memo to update. Required. The memo to update.
The `name` field is required. The `name` field is required.
in: body in: body
required: true required: true
...@@ -989,74 +981,98 @@ paths: ...@@ -989,74 +981,98 @@ paths:
properties: properties:
state: state:
$ref: '#/definitions/v1State' $ref: '#/definitions/v1State'
description: The state of the memo.
creator: creator:
type: string type: string
title: |- title: |-
The name of the creator. The name of the creator.
Format: users/{user} Format: users/{user}
readOnly: true
createTime: createTime:
type: string type: string
format: date-time format: date-time
description: Output only. The creation timestamp.
readOnly: true
updateTime: updateTime:
type: string type: string
format: date-time format: date-time
description: Output only. The last update timestamp.
readOnly: true
displayTime: displayTime:
type: string type: string
format: date-time format: date-time
description: The display timestamp of the memo.
content: content:
type: string type: string
description: Required. The content of the memo in Markdown format.
nodes: nodes:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1Node' $ref: '#/definitions/v1Node'
description: Output only. The parsed nodes from the content.
readOnly: true readOnly: true
visibility: visibility:
$ref: '#/definitions/v1Visibility' $ref: '#/definitions/v1Visibility'
description: The visibility of the memo.
tags: tags:
type: array type: array
items: items:
type: string type: string
description: Output only. The tags extracted from the content.
readOnly: true readOnly: true
pinned: pinned:
type: boolean type: boolean
description: Whether the memo is pinned.
attachments: attachments:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1Attachment' $ref: '#/definitions/v1Attachment'
description: Optional. The attachments of the memo.
relations: relations:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1MemoRelation' $ref: '#/definitions/v1MemoRelation'
description: Optional. The relations of the memo.
reactions: reactions:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1Reaction' $ref: '#/definitions/v1Reaction'
description: Output only. The reactions to the memo.
readOnly: true readOnly: true
property: property:
$ref: '#/definitions/v1MemoProperty' $ref: '#/definitions/v1MemoProperty'
description: Output only. The computed properties of the memo.
readOnly: true readOnly: true
parent: parent:
type: string type: string
title: |- title: |-
The name of the parent memo. Output only. The name of the parent memo.
Format: memos/{id} Format: memos/{memo}
readOnly: true readOnly: true
snippet: snippet:
type: string type: string
description: The snippet of the memo content. Plain text only. description: Output only. The snippet of the memo content. Plain text only.
readOnly: true readOnly: true
location: location:
$ref: '#/definitions/apiv1Location' $ref: '#/definitions/apiv1Location'
description: The location of the memo. description: Optional. The location of the memo.
title: |- title: |-
The memo to update. Required. The memo to update.
The `name` field is required. The `name` field is required.
required: required:
- state
- content
- visibility
- memo - memo
- name: allowMissing
description: Optional. If set to true, allows updating sensitive fields.
in: query
required: false
type: boolean
tags: tags:
- MemoService - MemoService
/api/v1/{name_1}: /api/v1/{name_1}:
...@@ -1230,11 +1246,20 @@ paths: ...@@ -1230,11 +1246,20 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name_4 - name: name_4
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: readMask
description: |-
Optional. The fields to return in the response.
If not specified, all fields are returned.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
delete: delete:
...@@ -1300,11 +1325,18 @@ paths: ...@@ -1300,11 +1325,18 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name_5 - name: name_5
description: The name of the memo. description: |-
Required. The resource name of the memo to delete.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: force
description: Optional. If set to true, the memo will be deleted even if it has associated data.
in: query
required: false
type: boolean
tags: tags:
- MemoService - MemoService
/api/v1/{name_6}: /api/v1/{name_6}:
...@@ -1339,8 +1371,8 @@ paths: ...@@ -1339,8 +1371,8 @@ paths:
tags: tags:
- WebhookService - WebhookService
delete: delete:
summary: DeleteShortcut deletes a shortcut for a user. summary: DeleteMemoReaction deletes a reaction for a memo.
operationId: ShortcutService_DeleteShortcut operationId: MemoService_DeleteMemoReaction
responses: responses:
"200": "200":
description: A successful response. description: A successful response.
...@@ -1354,14 +1386,14 @@ paths: ...@@ -1354,14 +1386,14 @@ paths:
parameters: parameters:
- name: name_6 - name: name_6
description: |- description: |-
Required. The resource name of the shortcut to delete. Required. The resource name of the reaction to delete.
Format: users/{user}/shortcuts/{shortcut} Format: reactions/{reaction}
in: path in: path
required: true required: true
type: string type: string
pattern: users/[^/]+/shortcuts/[^/]+ pattern: reactions/[^/]+
tags: tags:
- ShortcutService - MemoService
/api/v1/{name_7}: /api/v1/{name_7}:
get: get:
summary: Gets a workspace setting. summary: Gets a workspace setting.
...@@ -1386,6 +1418,31 @@ paths: ...@@ -1386,6 +1418,31 @@ paths:
pattern: workspace/settings/[^/]+ pattern: workspace/settings/[^/]+
tags: tags:
- WorkspaceService - WorkspaceService
delete:
summary: DeleteShortcut deletes a shortcut for a user.
operationId: ShortcutService_DeleteShortcut
responses:
"200":
description: A successful response.
schema:
type: object
properties: {}
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name_7
description: |-
Required. The resource name of the shortcut to delete.
Format: users/{user}/shortcuts/{shortcut}
in: path
required: true
type: string
pattern: users/[^/]+/shortcuts/[^/]+
tags:
- ShortcutService
/api/v1/{name_8}:
delete: delete:
summary: DeleteWebhook deletes a webhook. summary: DeleteWebhook deletes a webhook.
operationId: WebhookService_DeleteWebhook operationId: WebhookService_DeleteWebhook
...@@ -1400,7 +1457,7 @@ paths: ...@@ -1400,7 +1457,7 @@ paths:
schema: schema:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name_7 - name: name_8
description: |- description: |-
Required. The resource name of the webhook to delete. Required. The resource name of the webhook to delete.
Format: webhooks/{webhook} Format: webhooks/{webhook}
...@@ -1478,11 +1535,24 @@ paths: ...@@ -1478,11 +1535,24 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: pageSize
description: Optional. The maximum number of attachments to return.
in: query
required: false
type: integer
format: int32
- name: pageToken
description: Optional. A page token for pagination.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
patch: patch:
...@@ -1500,7 +1570,9 @@ paths: ...@@ -1500,7 +1570,9 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
...@@ -1551,11 +1623,29 @@ paths: ...@@ -1551,11 +1623,29 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: pageSize
description: Optional. The maximum number of comments to return.
in: query
required: false
type: integer
format: int32
- name: pageToken
description: Optional. A page token for pagination.
in: query
required: false
type: string
- name: orderBy
description: Optional. The order to sort results by.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
post: post:
...@@ -1572,17 +1662,26 @@ paths: ...@@ -1572,17 +1662,26 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: comment - name: comment
description: The comment to create. description: Required. The comment to create.
in: body in: body
required: true required: true
schema: schema:
$ref: '#/definitions/apiv1Memo' $ref: '#/definitions/apiv1Memo'
required:
- comment
- name: commentId
description: Optional. The comment ID to use.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
/api/v1/{name}/reactions: /api/v1/{name}/reactions:
...@@ -1600,11 +1699,24 @@ paths: ...@@ -1600,11 +1699,24 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: pageSize
description: Optional. The maximum number of reactions to return.
in: query
required: false
type: integer
format: int32
- name: pageToken
description: Optional. A page token for pagination.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
post: post:
...@@ -1621,7 +1733,9 @@ paths: ...@@ -1621,7 +1733,9 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
...@@ -1648,11 +1762,24 @@ paths: ...@@ -1648,11 +1762,24 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: pageSize
description: Optional. The maximum number of relations to return.
in: query
required: false
type: integer
format: int32
- name: pageToken
description: Optional. A page token for pagination.
in: query
required: false
type: string
tags: tags:
- MemoService - MemoService
patch: patch:
...@@ -1670,7 +1797,9 @@ paths: ...@@ -1670,7 +1797,9 @@ paths:
$ref: '#/definitions/googlerpcStatus' $ref: '#/definitions/googlerpcStatus'
parameters: parameters:
- name: name - name: name
description: The name of the memo. description: |-
Required. The resource name of the memo.
Format: memos/{memo}
in: path in: path
required: true required: true
type: string type: string
...@@ -1874,28 +2003,33 @@ paths: ...@@ -1874,28 +2003,33 @@ paths:
parameters: parameters:
- name: parent - name: parent
description: |- description: |-
The parent is the owner of the memos. Optional. The parent is the owner of the memos.
If not specified or `users/-`, it will list all memos. If not specified or `users/-`, it will list all memos.
Format: users/{user}
in: path in: path
required: true required: true
type: string type: string
pattern: users/[^/]+ pattern: users/[^/]+
- name: pageSize - name: pageSize
description: The maximum number of memos to return. description: |-
Optional. The maximum number of memos to return.
The service may return fewer than this value.
If unspecified, at most 50 memos will be returned.
The maximum value is 1000; values above 1000 will be coerced to 1000.
in: query in: query
required: false required: false
type: integer type: integer
format: int32 format: int32
- name: pageToken - name: pageToken
description: |- description: |-
A page token, received from a previous `ListMemos` call. Optional. A page token, received from a previous `ListMemos` call.
Provide this to retrieve the subsequent page. Provide this to retrieve the subsequent page.
in: query in: query
required: false required: false
type: string type: string
- name: state - name: state
description: |- description: |-
The state of the memos to list. Optional. The state of the memos to list.
Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. Default to `NORMAL`. Set to `ARCHIVED` to list archived memos.
in: query in: query
required: false required: false
...@@ -1905,32 +2039,27 @@ paths: ...@@ -1905,32 +2039,27 @@ paths:
- NORMAL - NORMAL
- ARCHIVED - ARCHIVED
default: STATE_UNSPECIFIED default: STATE_UNSPECIFIED
- name: sort - name: orderBy
description: |-
What field to sort the results by.
Default to display_time.
in: query
required: false
type: string
- name: direction
description: |- description: |-
The direction to sort the results by. Optional. The order to sort results by.
Default to DESC. Default to "display_time desc".
Example: "display_time desc" or "create_time asc"
in: query in: query
required: false required: false
type: string type: string
enum:
- DIRECTION_UNSPECIFIED
- ASC
- DESC
default: DIRECTION_UNSPECIFIED
- name: filter - name: filter
description: |- description: |-
Optional. Filter to apply to the list results.
Filter is a CEL expression to filter memos. Filter is a CEL expression to filter memos.
Refer to `Shortcut.filter`. Refer to `Shortcut.filter`.
in: query in: query
required: false required: false
type: string type: string
- name: showDeleted
description: Optional. If true, show deleted memos in the response.
in: query
required: false
type: boolean
- name: oldFilter - name: oldFilter
description: |- description: |-
[Deprecated] Old filter contains some specific conditions to filter memos. [Deprecated] Old filter contains some specific conditions to filter memos.
...@@ -2028,17 +2157,19 @@ paths: ...@@ -2028,17 +2157,19 @@ paths:
parameters: parameters:
- name: parent - name: parent
description: |- description: |-
The parent, who owns the tags. Required. The parent, who owns the tags.
Format: memos/{id}. Use "memos/-" to delete all tags. Format: memos/{memo}. Use "memos/-" to delete all tags.
in: path in: path
required: true required: true
type: string type: string
pattern: memos/[^/]+ pattern: memos/[^/]+
- name: tag - name: tag
description: Required. The tag name to delete.
in: path in: path
required: true required: true
type: string type: string
- name: deleteRelatedMemos - name: deleteRelatedMemos
description: Optional. Whether to delete related memos.
in: query in: query
required: false required: false
type: boolean type: boolean
...@@ -2061,8 +2192,8 @@ paths: ...@@ -2061,8 +2192,8 @@ paths:
parameters: parameters:
- name: parent - name: parent
description: |- description: |-
The parent, who owns the tags. Required. The parent, who owns the tags.
Format: memos/{id}. Use "memos/-" to rename all tags. Format: memos/{memo}. Use "memos/-" to rename all tags.
in: path in: path
required: true required: true
type: string type: string
...@@ -2420,8 +2551,13 @@ definitions: ...@@ -2420,8 +2551,13 @@ definitions:
properties: properties:
oldTag: oldTag:
type: string type: string
description: Required. The old tag name to rename.
newTag: newTag:
type: string type: string
description: Required. The new tag name.
required:
- oldTag
- newTag
MemoServiceSetMemoAttachmentsBody: MemoServiceSetMemoAttachmentsBody:
type: object type: object
properties: properties:
...@@ -2430,6 +2566,9 @@ definitions: ...@@ -2430,6 +2566,9 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/v1Attachment' $ref: '#/definitions/v1Attachment'
description: Required. The attachments to set for the memo.
required:
- attachments
MemoServiceSetMemoRelationsBody: MemoServiceSetMemoRelationsBody:
type: object type: object
properties: properties:
...@@ -2438,11 +2577,17 @@ definitions: ...@@ -2438,11 +2577,17 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/v1MemoRelation' $ref: '#/definitions/v1MemoRelation'
description: Required. The relations to set for the memo.
required:
- relations
MemoServiceUpsertMemoReactionBody: MemoServiceUpsertMemoReactionBody:
type: object type: object
properties: properties:
reaction: reaction:
$ref: '#/definitions/v1Reaction' $ref: '#/definitions/v1Reaction'
description: Required. The reaction to upsert.
required:
- reaction
TableNodeRow: TableNodeRow:
type: object type: object
properties: properties:
...@@ -2635,86 +2780,108 @@ definitions: ...@@ -2635,86 +2780,108 @@ definitions:
properties: properties:
placeholder: placeholder:
type: string type: string
description: A placeholder text for the location.
latitude: latitude:
type: number type: number
format: double format: double
description: The latitude of the location.
longitude: longitude:
type: number type: number
format: double format: double
description: The longitude of the location.
apiv1Memo: apiv1Memo:
type: object type: object
properties: properties:
name: name:
type: string type: string
description: |- description: |-
The name of the memo. The resource name of the memo.
Format: memos/{memo}, memo is the user defined id or uuid. Format: memos/{memo}, memo is the user defined id or uuid.
readOnly: true
state: state:
$ref: '#/definitions/v1State' $ref: '#/definitions/v1State'
description: The state of the memo.
creator: creator:
type: string type: string
title: |- title: |-
The name of the creator. The name of the creator.
Format: users/{user} Format: users/{user}
readOnly: true
createTime: createTime:
type: string type: string
format: date-time format: date-time
description: Output only. The creation timestamp.
readOnly: true
updateTime: updateTime:
type: string type: string
format: date-time format: date-time
description: Output only. The last update timestamp.
readOnly: true
displayTime: displayTime:
type: string type: string
format: date-time format: date-time
description: The display timestamp of the memo.
content: content:
type: string type: string
description: Required. The content of the memo in Markdown format.
nodes: nodes:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1Node' $ref: '#/definitions/v1Node'
description: Output only. The parsed nodes from the content.
readOnly: true readOnly: true
visibility: visibility:
$ref: '#/definitions/v1Visibility' $ref: '#/definitions/v1Visibility'
description: The visibility of the memo.
tags: tags:
type: array type: array
items: items:
type: string type: string
description: Output only. The tags extracted from the content.
readOnly: true readOnly: true
pinned: pinned:
type: boolean type: boolean
description: Whether the memo is pinned.
attachments: attachments:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1Attachment' $ref: '#/definitions/v1Attachment'
description: Optional. The attachments of the memo.
relations: relations:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1MemoRelation' $ref: '#/definitions/v1MemoRelation'
description: Optional. The relations of the memo.
reactions: reactions:
type: array type: array
items: items:
type: object type: object
$ref: '#/definitions/v1Reaction' $ref: '#/definitions/v1Reaction'
description: Output only. The reactions to the memo.
readOnly: true readOnly: true
property: property:
$ref: '#/definitions/v1MemoProperty' $ref: '#/definitions/v1MemoProperty'
description: Output only. The computed properties of the memo.
readOnly: true readOnly: true
parent: parent:
type: string type: string
title: |- title: |-
The name of the parent memo. Output only. The name of the parent memo.
Format: memos/{id} Format: memos/{memo}
readOnly: true readOnly: true
snippet: snippet:
type: string type: string
description: The snippet of the memo content. Plain text only. description: Output only. The snippet of the memo content. Plain text only.
readOnly: true readOnly: true
location: location:
$ref: '#/definitions/apiv1Location' $ref: '#/definitions/apiv1Location'
description: The location of the memo. description: Optional. The location of the memo.
required:
- state
- content
- visibility
apiv1OAuth2Config: apiv1OAuth2Config:
type: object type: object
properties: properties:
...@@ -3157,13 +3324,6 @@ definitions: ...@@ -3157,13 +3324,6 @@ definitions:
properties: properties:
content: content:
type: string type: string
v1Direction:
type: string
enum:
- DIRECTION_UNSPECIFIED
- ASC
- DESC
default: DIRECTION_UNSPECIFIED
v1EmbeddedContentNode: v1EmbeddedContentNode:
type: object type: object
properties: properties:
...@@ -3393,6 +3553,14 @@ definitions: ...@@ -3393,6 +3553,14 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/v1Attachment' $ref: '#/definitions/v1Attachment'
description: The list of attachments.
nextPageToken:
type: string
description: A token for the next page of results.
totalSize:
type: integer
format: int32
description: The total count of attachments.
v1ListMemoCommentsResponse: v1ListMemoCommentsResponse:
type: object type: object
properties: properties:
...@@ -3401,6 +3569,14 @@ definitions: ...@@ -3401,6 +3569,14 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/apiv1Memo' $ref: '#/definitions/apiv1Memo'
description: The list of comment memos.
nextPageToken:
type: string
description: A token for the next page of results.
totalSize:
type: integer
format: int32
description: The total count of comments.
v1ListMemoReactionsResponse: v1ListMemoReactionsResponse:
type: object type: object
properties: properties:
...@@ -3409,6 +3585,14 @@ definitions: ...@@ -3409,6 +3585,14 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/v1Reaction' $ref: '#/definitions/v1Reaction'
description: The list of reactions.
nextPageToken:
type: string
description: A token for the next page of results.
totalSize:
type: integer
format: int32
description: The total count of reactions.
v1ListMemoRelationsResponse: v1ListMemoRelationsResponse:
type: object type: object
properties: properties:
...@@ -3417,6 +3601,14 @@ definitions: ...@@ -3417,6 +3601,14 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/v1MemoRelation' $ref: '#/definitions/v1MemoRelation'
description: The list of relations.
nextPageToken:
type: string
description: A token for the next page of results.
totalSize:
type: integer
format: int32
description: The total count of relations.
v1ListMemosResponse: v1ListMemosResponse:
type: object type: object
properties: properties:
...@@ -3425,11 +3617,16 @@ definitions: ...@@ -3425,11 +3617,16 @@ definitions:
items: items:
type: object type: object
$ref: '#/definitions/apiv1Memo' $ref: '#/definitions/apiv1Memo'
description: The list of memos.
nextPageToken: nextPageToken:
type: string type: string
description: |- description: |-
A token, which can be sent as `page_token` to retrieve the next page. A token that can be sent as `page_token` to retrieve the next page.
If this field is omitted, there are no subsequent pages. If this field is omitted, there are no subsequent pages.
totalSize:
type: integer
format: int32
description: The total count of memos (may be approximate).
v1ListNode: v1ListNode:
type: object type: object
properties: properties:
...@@ -3532,29 +3729,41 @@ definitions: ...@@ -3532,29 +3729,41 @@ definitions:
type: boolean type: boolean
hasIncompleteTasks: hasIncompleteTasks:
type: boolean type: boolean
description: Computed properties of a memo.
v1MemoRelation: v1MemoRelation:
type: object type: object
properties: properties:
memo: memo:
$ref: '#/definitions/v1MemoRelationMemo' $ref: '#/definitions/v1MemoRelationMemo'
description: The memo in the relation.
relatedMemo: relatedMemo:
$ref: '#/definitions/v1MemoRelationMemo' $ref: '#/definitions/v1MemoRelationMemo'
description: The related memo.
type: type:
$ref: '#/definitions/v1MemoRelationType' $ref: '#/definitions/v1MemoRelationType'
required:
- memo
- relatedMemo
- type
v1MemoRelationMemo: v1MemoRelationMemo:
type: object type: object
properties: properties:
name: name:
type: string type: string
title: |- title: |-
The name of the memo. The resource name of the memo.
Format: memos/{id} Format: memos/{memo}
uid: uid:
type: string type: string
description: Output only. The unique identifier of the memo.
readOnly: true
snippet: snippet:
type: string type: string
description: The snippet of the memo content. Plain text only. description: Output only. The snippet of the memo content. Plain text only.
readOnly: true readOnly: true
description: Memo reference in relations.
required:
- name
v1MemoRelationType: v1MemoRelationType:
type: string type: string
enum: enum:
...@@ -3562,6 +3771,7 @@ definitions: ...@@ -3562,6 +3771,7 @@ definitions:
- REFERENCE - REFERENCE
- COMMENT - COMMENT
default: TYPE_UNSPECIFIED default: TYPE_UNSPECIFIED
description: The type of the relation.
v1Node: v1Node:
type: object type: object
properties: properties:
...@@ -3716,21 +3926,39 @@ definitions: ...@@ -3716,21 +3926,39 @@ definitions:
v1Reaction: v1Reaction:
type: object type: object
properties: properties:
id: name:
type: integer type: string
format: int32 title: |-
The resource name of the reaction.
Format: reactions/{reaction}
readOnly: true
uid:
type: string
description: Output only. The system generated unique identifier.
readOnly: true
creator: creator:
type: string type: string
title: |- title: |-
The name of the creator. The resource name of the creator.
Format: users/{user} Format: users/{user}
readOnly: true
contentId: contentId:
type: string type: string
description: |- title: |-
The content identifier. The resource name of the content.
For memo, it should be the `Memo.name`. For memo reactions, this should be the memo's resource name.
Format: memos/{memo}
reactionType: reactionType:
type: string type: string
description: "Required. The type of reaction (e.g., \"\U0001F44D\", \"❤️\", \"\U0001F604\")."
createTime:
type: string
format: date-time
description: Output only. The creation timestamp.
readOnly: true
required:
- contentId
- reactionType
v1ReferencedContentNode: v1ReferencedContentNode:
type: object type: object
properties: properties:
......
...@@ -4,6 +4,7 @@ import ( ...@@ -4,6 +4,7 @@ import (
"context" "context"
"fmt" "fmt"
"log/slog" "log/slog"
"strings"
"time" "time"
"unicode/utf8" "unicode/utf8"
...@@ -99,9 +100,13 @@ func (s *APIV1Service) ListMemos(ctx context.Context, request *v1pb.ListMemosReq ...@@ -99,9 +100,13 @@ func (s *APIV1Service) ListMemos(ctx context.Context, request *v1pb.ListMemosReq
// Exclude comments by default. // Exclude comments by default.
ExcludeComments: true, ExcludeComments: true,
} }
// Handle deprecated old_filter for backward compatibility
if request.OldFilter != "" && request.Filter == "" {
//nolint:staticcheck // SA1019: Using deprecated field for backward compatibility
if err := s.buildMemoFindWithFilter(ctx, memoFind, request.OldFilter); err != nil { if err := s.buildMemoFindWithFilter(ctx, memoFind, request.OldFilter); err != nil {
return nil, status.Errorf(codes.InvalidArgument, "failed to build find memos with filter: %v", err) return nil, status.Errorf(codes.InvalidArgument, "failed to build find memos with filter: %v", err)
} }
}
if request.Parent != "" && request.Parent != "users/-" { if request.Parent != "" && request.Parent != "users/-" {
userID, err := ExtractUserIDFromName(request.Parent) userID, err := ExtractUserIDFromName(request.Parent)
if err != nil { if err != nil {
...@@ -117,9 +122,17 @@ func (s *APIV1Service) ListMemos(ctx context.Context, request *v1pb.ListMemosReq ...@@ -117,9 +122,17 @@ func (s *APIV1Service) ListMemos(ctx context.Context, request *v1pb.ListMemosReq
state := store.Normal state := store.Normal
memoFind.RowStatus = &state memoFind.RowStatus = &state
} }
if request.Direction == v1pb.Direction_ASC {
memoFind.OrderByTimeAsc = true // Parse order_by field (replaces the old sort and direction fields)
if request.OrderBy != "" {
if err := s.parseMemoOrderBy(request.OrderBy, memoFind); err != nil {
return nil, status.Errorf(codes.InvalidArgument, "invalid order_by: %v", err)
}
} else {
// Default ordering by display_time desc
memoFind.OrderByTimeAsc = false
} }
if request.Filter != "" { if request.Filter != "" {
if err := s.validateFilter(ctx, request.Filter); err != nil { if err := s.validateFilter(ctx, request.Filter); err != nil {
return nil, status.Errorf(codes.InvalidArgument, "invalid filter: %v", err) return nil, status.Errorf(codes.InvalidArgument, "invalid filter: %v", err)
...@@ -739,3 +752,38 @@ func substring(s string, length int) string { ...@@ -739,3 +752,38 @@ func substring(s string, length int) string {
return s[:byteIndex] return s[:byteIndex]
} }
// parseMemoOrderBy parses the order_by field and sets the appropriate ordering in memoFind.
func (*APIV1Service) parseMemoOrderBy(orderBy string, memoFind *store.FindMemo) error {
// Parse order_by field like "display_time desc" or "create_time asc"
parts := strings.Fields(strings.TrimSpace(orderBy))
if len(parts) == 0 {
return errors.New("empty order_by")
}
field := parts[0]
direction := "desc" // default
if len(parts) > 1 {
direction = strings.ToLower(parts[1])
if direction != "asc" && direction != "desc" {
return errors.Errorf("invalid order direction: %s, must be 'asc' or 'desc'", parts[1])
}
}
switch field {
case "display_time":
memoFind.OrderByTimeAsc = direction == "asc"
case "create_time":
memoFind.OrderByTimeAsc = direction == "asc"
case "update_time":
memoFind.OrderByUpdatedTs = true
memoFind.OrderByTimeAsc = direction == "asc"
case "name":
// For ordering by memo name/id - not commonly used but supported
memoFind.OrderByTimeAsc = direction == "asc"
default:
return errors.Errorf("unsupported order field: %s, supported fields are: display_time, create_time, update_time, name", field)
}
return nil
}
...@@ -3,10 +3,12 @@ package v1 ...@@ -3,10 +3,12 @@ package v1
import ( import (
"context" "context"
"fmt" "fmt"
"time"
"google.golang.org/grpc/codes" "google.golang.org/grpc/codes"
"google.golang.org/grpc/status" "google.golang.org/grpc/status"
"google.golang.org/protobuf/types/known/emptypb" "google.golang.org/protobuf/types/known/emptypb"
"google.golang.org/protobuf/types/known/timestamppb"
v1pb "github.com/usememos/memos/proto/gen/api/v1" v1pb "github.com/usememos/memos/proto/gen/api/v1"
"github.com/usememos/memos/store" "github.com/usememos/memos/store"
...@@ -55,8 +57,13 @@ func (s *APIV1Service) UpsertMemoReaction(ctx context.Context, request *v1pb.Ups ...@@ -55,8 +57,13 @@ func (s *APIV1Service) UpsertMemoReaction(ctx context.Context, request *v1pb.Ups
} }
func (s *APIV1Service) DeleteMemoReaction(ctx context.Context, request *v1pb.DeleteMemoReactionRequest) (*emptypb.Empty, error) { func (s *APIV1Service) DeleteMemoReaction(ctx context.Context, request *v1pb.DeleteMemoReactionRequest) (*emptypb.Empty, error) {
reactionID, err := ExtractReactionIDFromName(request.Name)
if err != nil {
return nil, status.Errorf(codes.InvalidArgument, "invalid reaction name: %v", err)
}
if err := s.Store.DeleteReaction(ctx, &store.DeleteReaction{ if err := s.Store.DeleteReaction(ctx, &store.DeleteReaction{
ID: request.Id, ID: reactionID,
}); err != nil { }); err != nil {
return nil, status.Errorf(codes.Internal, "failed to delete reaction") return nil, status.Errorf(codes.Internal, "failed to delete reaction")
} }
...@@ -71,10 +78,14 @@ func (s *APIV1Service) convertReactionFromStore(ctx context.Context, reaction *s ...@@ -71,10 +78,14 @@ func (s *APIV1Service) convertReactionFromStore(ctx context.Context, reaction *s
if err != nil { if err != nil {
return nil, err return nil, err
} }
reactionUID := fmt.Sprintf("%d", reaction.ID)
return &v1pb.Reaction{ return &v1pb.Reaction{
Id: reaction.ID, Name: fmt.Sprintf("%s%s", ReactionNamePrefix, reactionUID),
Uid: reactionUID,
Creator: fmt.Sprintf("%s%d", UserNamePrefix, creator.ID), Creator: fmt.Sprintf("%s%d", UserNamePrefix, creator.ID),
ContentId: reaction.ContentID, ContentId: reaction.ContentID,
ReactionType: reaction.ReactionType, ReactionType: reaction.ReactionType,
CreateTime: timestamppb.New(time.Unix(reaction.CreatedTs, 0)),
}, nil }, nil
} }
...@@ -14,6 +14,7 @@ const ( ...@@ -14,6 +14,7 @@ const (
UserNamePrefix = "users/" UserNamePrefix = "users/"
MemoNamePrefix = "memos/" MemoNamePrefix = "memos/"
AttachmentNamePrefix = "attachments/" AttachmentNamePrefix = "attachments/"
ReactionNamePrefix = "reactions/"
InboxNamePrefix = "inboxes/" InboxNamePrefix = "inboxes/"
IdentityProviderNamePrefix = "identityProviders/" IdentityProviderNamePrefix = "identityProviders/"
ActivityNamePrefix = "activities/" ActivityNamePrefix = "activities/"
...@@ -93,6 +94,20 @@ func ExtractAttachmentUIDFromName(name string) (string, error) { ...@@ -93,6 +94,20 @@ func ExtractAttachmentUIDFromName(name string) (string, error) {
return id, nil return id, nil
} }
// ExtractReactionIDFromName returns the reaction ID from a resource name.
// e.g., "reactions/123" -> 123.
func ExtractReactionIDFromName(name string) (int32, error) {
tokens, err := GetNameParentTokens(name, ReactionNamePrefix)
if err != nil {
return 0, err
}
id, err := util.ConvertStringToInt32(tokens[0])
if err != nil {
return 0, errors.Errorf("invalid reaction ID %q", tokens[0])
}
return id, nil
}
// ExtractInboxIDFromName returns the inbox ID from a resource name. // ExtractInboxIDFromName returns the inbox ID from a resource name.
func ExtractInboxIDFromName(name string) (int32, error) { func ExtractInboxIDFromName(name string) (int32, error) {
tokens, err := GetNameParentTokens(name, InboxNamePrefix) tokens, err := GetNameParentTokens(name, InboxNamePrefix)
......
...@@ -9,7 +9,6 @@ type Reaction struct { ...@@ -9,7 +9,6 @@ type Reaction struct {
CreatedTs int64 CreatedTs int64
CreatorID int32 CreatorID int32
// ContentID is the id of the content that the reaction is for. // ContentID is the id of the content that the reaction is for.
// This can be a memo. e.g. memos/101
ContentID string ContentID string
ReactionType string ReactionType string
} }
......
...@@ -396,6 +396,10 @@ const MemoEditor = observer((props: Props) => { ...@@ -396,6 +396,10 @@ const MemoEditor = observer((props: Props) => {
relations: state.relationList, relations: state.relationList,
location: state.location, location: state.location,
}), }),
// Optional fields can be omitted
memoId: "",
validateOnly: false,
requestId: "",
}) })
: memoServiceClient : memoServiceClient
.createMemoComment({ .createMemoComment({
......
...@@ -5,7 +5,7 @@ import useCurrentUser from "@/hooks/useCurrentUser"; ...@@ -5,7 +5,7 @@ import useCurrentUser from "@/hooks/useCurrentUser";
import { userStore } from "@/store/v2"; import { userStore } from "@/store/v2";
import { State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
import { Reaction } from "@/types/proto/api/v1/reaction_service"; import { Reaction } from "@/types/proto/api/v1/memo_service";
import { User } from "@/types/proto/api/v1/user_service"; import { User } from "@/types/proto/api/v1/user_service";
import ReactionSelector from "./ReactionSelector"; import ReactionSelector from "./ReactionSelector";
import ReactionView from "./ReactionView"; import ReactionView from "./ReactionView";
......
...@@ -8,7 +8,7 @@ import { DEFAULT_LIST_MEMOS_PAGE_SIZE } from "@/helpers/consts"; ...@@ -8,7 +8,7 @@ import { DEFAULT_LIST_MEMOS_PAGE_SIZE } from "@/helpers/consts";
import useResponsiveWidth from "@/hooks/useResponsiveWidth"; import useResponsiveWidth from "@/hooks/useResponsiveWidth";
import { Routes } from "@/router"; import { Routes } from "@/router";
import { memoStore, viewStore } from "@/store/v2"; import { memoStore, viewStore } from "@/store/v2";
import { Direction, State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
import Empty from "../Empty"; import Empty from "../Empty";
...@@ -20,7 +20,7 @@ interface Props { ...@@ -20,7 +20,7 @@ interface Props {
listSort?: (list: Memo[]) => Memo[]; listSort?: (list: Memo[]) => Memo[];
owner?: string; owner?: string;
state?: State; state?: State;
direction?: Direction; orderBy?: string;
filter?: string; filter?: string;
oldFilter?: string; oldFilter?: string;
pageSize?: number; pageSize?: number;
...@@ -51,7 +51,7 @@ const PagedMemoList = observer((props: Props) => { ...@@ -51,7 +51,7 @@ const PagedMemoList = observer((props: Props) => {
const response = await memoStore.fetchMemos({ const response = await memoStore.fetchMemos({
parent: props.owner || "", parent: props.owner || "",
state: props.state || State.NORMAL, state: props.state || State.NORMAL,
direction: props.direction || Direction.DESC, orderBy: props.orderBy || "display_time desc",
filter: props.filter || "", filter: props.filter || "",
oldFilter: props.oldFilter || "", oldFilter: props.oldFilter || "",
pageSize: props.pageSize || DEFAULT_LIST_MEMOS_PAGE_SIZE, pageSize: props.pageSize || DEFAULT_LIST_MEMOS_PAGE_SIZE,
...@@ -103,7 +103,7 @@ const PagedMemoList = observer((props: Props) => { ...@@ -103,7 +103,7 @@ const PagedMemoList = observer((props: Props) => {
// Initial load and reload when props change // Initial load and reload when props change
useEffect(() => { useEffect(() => {
refreshList(); refreshList();
}, [props.owner, props.state, props.direction, props.filter, props.oldFilter, props.pageSize]); }, [props.owner, props.state, props.orderBy, props.filter, props.oldFilter, props.pageSize]);
// Auto-fetch more content when list changes and page isn't full // Auto-fetch more content when list changes and page isn't full
useEffect(() => { useEffect(() => {
......
...@@ -36,7 +36,7 @@ const ReactionSelector = observer((props: Props) => { ...@@ -36,7 +36,7 @@ const ReactionSelector = observer((props: Props) => {
(reaction) => reaction.reactionType === reactionType && reaction.creator === currentUser.name, (reaction) => reaction.reactionType === reactionType && reaction.creator === currentUser.name,
); );
for (const reaction of reactions) { for (const reaction of reactions) {
await memoServiceClient.deleteMemoReaction({ id: reaction.id }); await memoServiceClient.deleteMemoReaction({ name: reaction.name });
} }
} else { } else {
await memoServiceClient.upsertMemoReaction({ await memoServiceClient.upsertMemoReaction({
......
...@@ -55,7 +55,7 @@ const ReactionView = observer((props: Props) => { ...@@ -55,7 +55,7 @@ const ReactionView = observer((props: Props) => {
(reaction) => reaction.reactionType === reactionType && reaction.creator === currentUser.name, (reaction) => reaction.reactionType === reactionType && reaction.creator === currentUser.name,
); );
for (const reaction of reactions) { for (const reaction of reactions) {
await memoServiceClient.deleteMemoReaction({ id: reaction.id }); await memoServiceClient.deleteMemoReaction({ name: reaction.name });
} }
} }
} catch { } catch {
......
...@@ -6,7 +6,7 @@ import PagedMemoList from "@/components/PagedMemoList"; ...@@ -6,7 +6,7 @@ import PagedMemoList from "@/components/PagedMemoList";
import useCurrentUser from "@/hooks/useCurrentUser"; import useCurrentUser from "@/hooks/useCurrentUser";
import { viewStore } from "@/store/v2"; import { viewStore } from "@/store/v2";
import memoFilterStore from "@/store/v2/memoFilter"; import memoFilterStore from "@/store/v2/memoFilter";
import { Direction, State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
const Archived = observer(() => { const Archived = observer(() => {
...@@ -46,7 +46,7 @@ const Archived = observer(() => { ...@@ -46,7 +46,7 @@ const Archived = observer(() => {
} }
owner={user.name} owner={user.name}
state={State.ARCHIVED} state={State.ARCHIVED}
direction={viewStore.state.orderByTimeAsc ? Direction.ASC : Direction.DESC} orderBy={viewStore.state.orderByTimeAsc ? "display_time asc" : "display_time desc"}
oldFilter={memoListFilter} oldFilter={memoListFilter}
/> />
); );
......
...@@ -5,7 +5,7 @@ import MobileHeader from "@/components/MobileHeader"; ...@@ -5,7 +5,7 @@ import MobileHeader from "@/components/MobileHeader";
import PagedMemoList from "@/components/PagedMemoList"; import PagedMemoList from "@/components/PagedMemoList";
import useResponsiveWidth from "@/hooks/useResponsiveWidth"; import useResponsiveWidth from "@/hooks/useResponsiveWidth";
import { viewStore } from "@/store/v2"; import { viewStore } from "@/store/v2";
import { Direction, State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
const Explore = observer(() => { const Explore = observer(() => {
...@@ -26,7 +26,7 @@ const Explore = observer(() => { ...@@ -26,7 +26,7 @@ const Explore = observer(() => {
: dayjs(b.displayTime).unix() - dayjs(a.displayTime).unix(), : dayjs(b.displayTime).unix() - dayjs(a.displayTime).unix(),
) )
} }
direction={viewStore.state.orderByTimeAsc ? Direction.ASC : Direction.DESC} orderBy={viewStore.state.orderByTimeAsc ? "display_time asc" : "display_time desc"}
/> />
</div> </div>
</section> </section>
......
...@@ -6,7 +6,7 @@ import PagedMemoList from "@/components/PagedMemoList"; ...@@ -6,7 +6,7 @@ import PagedMemoList from "@/components/PagedMemoList";
import useCurrentUser from "@/hooks/useCurrentUser"; import useCurrentUser from "@/hooks/useCurrentUser";
import { viewStore, userStore } from "@/store/v2"; import { viewStore, userStore } from "@/store/v2";
import memoFilterStore from "@/store/v2/memoFilter"; import memoFilterStore from "@/store/v2/memoFilter";
import { Direction, State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
// Helper function to extract shortcut ID from resource name // Helper function to extract shortcut ID from resource name
...@@ -68,7 +68,7 @@ const Home = observer(() => { ...@@ -68,7 +68,7 @@ const Home = observer(() => {
.sort((a, b) => Number(b.pinned) - Number(a.pinned)) .sort((a, b) => Number(b.pinned) - Number(a.pinned))
} }
owner={user.name} owner={user.name}
direction={viewStore.state.orderByTimeAsc ? Direction.ASC : Direction.DESC} orderBy={viewStore.state.orderByTimeAsc ? "display_time asc" : "display_time desc"}
filter={selectedShortcut?.filter || ""} filter={selectedShortcut?.filter || ""}
oldFilter={memoListFilter} oldFilter={memoListFilter}
/> />
......
...@@ -12,7 +12,7 @@ import UserAvatar from "@/components/UserAvatar"; ...@@ -12,7 +12,7 @@ import UserAvatar from "@/components/UserAvatar";
import useLoading from "@/hooks/useLoading"; import useLoading from "@/hooks/useLoading";
import { viewStore, userStore } from "@/store/v2"; import { viewStore, userStore } from "@/store/v2";
import memoFilterStore from "@/store/v2/memoFilter"; import memoFilterStore from "@/store/v2/memoFilter";
import { Direction, State } from "@/types/proto/api/v1/common"; import { State } from "@/types/proto/api/v1/common";
import { Memo } from "@/types/proto/api/v1/memo_service"; import { Memo } from "@/types/proto/api/v1/memo_service";
import { User } from "@/types/proto/api/v1/user_service"; import { User } from "@/types/proto/api/v1/user_service";
import { useTranslate } from "@/utils/i18n"; import { useTranslate } from "@/utils/i18n";
...@@ -112,7 +112,7 @@ const UserProfile = observer(() => { ...@@ -112,7 +112,7 @@ const UserProfile = observer(() => {
.sort((a, b) => Number(b.pinned) - Number(a.pinned)) .sort((a, b) => Number(b.pinned) - Number(a.pinned))
} }
owner={user.name} owner={user.name}
direction={viewStore.state.orderByTimeAsc ? Direction.ASC : Direction.DESC} orderBy={viewStore.state.orderByTimeAsc ? "display_time asc" : "display_time desc"}
oldFilter={memoListFilter} oldFilter={memoListFilter}
/> />
</> </>
......
...@@ -10,9 +10,8 @@ import { Empty } from "../../google/protobuf/empty"; ...@@ -10,9 +10,8 @@ import { Empty } from "../../google/protobuf/empty";
import { FieldMask } from "../../google/protobuf/field_mask"; import { FieldMask } from "../../google/protobuf/field_mask";
import { Timestamp } from "../../google/protobuf/timestamp"; import { Timestamp } from "../../google/protobuf/timestamp";
import { Attachment } from "./attachment_service"; import { Attachment } from "./attachment_service";
import { Direction, directionFromJSON, directionToNumber, State, stateFromJSON, stateToNumber } from "./common"; import { State, stateFromJSON, stateToNumber } from "./common";
import { Node } from "./markdown_service"; import { Node } from "./markdown_service";
import { Reaction } from "./reaction_service";
export const protobufPackage = "memos.api.v1"; export const protobufPackage = "memos.api.v1";
...@@ -61,45 +60,90 @@ export function visibilityToNumber(object: Visibility): number { ...@@ -61,45 +60,90 @@ export function visibilityToNumber(object: Visibility): number {
} }
} }
export interface Reaction {
/**
* The resource name of the reaction.
* Format: reactions/{reaction}
*/
name: string;
/** Output only. The system generated unique identifier. */
uid: string;
/**
* The resource name of the creator.
* Format: users/{user}
*/
creator: string;
/**
* The resource name of the content.
* For memo reactions, this should be the memo's resource name.
* Format: memos/{memo}
*/
contentId: string;
/** Required. The type of reaction (e.g., "👍", "❤️", "😄"). */
reactionType: string;
/** Output only. The creation timestamp. */
createTime?: Date | undefined;
}
export interface Memo { export interface Memo {
/** /**
* The name of the memo. * The resource name of the memo.
* Format: memos/{memo}, memo is the user defined id or uuid. * Format: memos/{memo}, memo is the user defined id or uuid.
*/ */
name: string; name: string;
/** The state of the memo. */
state: State; state: State;
/** /**
* The name of the creator. * The name of the creator.
* Format: users/{user} * Format: users/{user}
*/ */
creator: string; creator: string;
createTime?: Date | undefined; /** Output only. The creation timestamp. */
updateTime?: Date | undefined; createTime?:
displayTime?: Date | undefined; | Date
| undefined;
/** Output only. The last update timestamp. */
updateTime?:
| Date
| undefined;
/** The display timestamp of the memo. */
displayTime?:
| Date
| undefined;
/** Required. The content of the memo in Markdown format. */
content: string; content: string;
/** Output only. The parsed nodes from the content. */
nodes: Node[]; nodes: Node[];
/** The visibility of the memo. */
visibility: Visibility; visibility: Visibility;
/** Output only. The tags extracted from the content. */
tags: string[]; tags: string[];
/** Whether the memo is pinned. */
pinned: boolean; pinned: boolean;
/** Optional. The attachments of the memo. */
attachments: Attachment[]; attachments: Attachment[];
/** Optional. The relations of the memo. */
relations: MemoRelation[]; relations: MemoRelation[];
/** Output only. The reactions to the memo. */
reactions: Reaction[]; reactions: Reaction[];
/** Output only. The computed properties of the memo. */
property?: property?:
| Memo_Property | Memo_Property
| undefined; | undefined;
/** /**
* The name of the parent memo. * Output only. The name of the parent memo.
* Format: memos/{id} * Format: memos/{memo}
*/ */
parent?: parent?:
| string | string
| undefined; | undefined;
/** The snippet of the memo content. Plain text only. */ /** Output only. The snippet of the memo content. Plain text only. */
snippet: string; snippet: string;
/** The location of the memo. */ /** Optional. The location of the memo. */
location?: Location | undefined; location?: Location | undefined;
} }
/** Computed properties of a memo. */
export interface Memo_Property { export interface Memo_Property {
hasLink: boolean; hasLink: boolean;
hasTaskList: boolean; hasTaskList: boolean;
...@@ -108,49 +152,68 @@ export interface Memo_Property { ...@@ -108,49 +152,68 @@ export interface Memo_Property {
} }
export interface Location { export interface Location {
/** A placeholder text for the location. */
placeholder: string; placeholder: string;
/** The latitude of the location. */
latitude: number; latitude: number;
/** The longitude of the location. */
longitude: number; longitude: number;
} }
export interface CreateMemoRequest { export interface CreateMemoRequest {
/** The memo to create. */ /** Required. The memo to create. */
memo?: Memo | undefined; memo?:
| Memo
| undefined;
/**
* Optional. The memo ID to use for this memo.
* If empty, a unique ID will be generated.
*/
memoId: string;
/** Optional. If set, validate the request but don't actually create the memo. */
validateOnly: boolean;
/** Optional. An idempotency token. */
requestId: string;
} }
export interface ListMemosRequest { export interface ListMemosRequest {
/** /**
* The parent is the owner of the memos. * Optional. The parent is the owner of the memos.
* If not specified or `users/-`, it will list all memos. * If not specified or `users/-`, it will list all memos.
* Format: users/{user}
*/ */
parent: string; parent: string;
/** The maximum number of memos to return. */ /**
* Optional. The maximum number of memos to return.
* The service may return fewer than this value.
* If unspecified, at most 50 memos will be returned.
* The maximum value is 1000; values above 1000 will be coerced to 1000.
*/
pageSize: number; pageSize: number;
/** /**
* A page token, received from a previous `ListMemos` call. * Optional. A page token, received from a previous `ListMemos` call.
* Provide this to retrieve the subsequent page. * Provide this to retrieve the subsequent page.
*/ */
pageToken: string; pageToken: string;
/** /**
* The state of the memos to list. * Optional. The state of the memos to list.
* Default to `NORMAL`. Set to `ARCHIVED` to list archived memos. * Default to `NORMAL`. Set to `ARCHIVED` to list archived memos.
*/ */
state: State; state: State;
/** /**
* What field to sort the results by. * Optional. The order to sort results by.
* Default to display_time. * Default to "display_time desc".
*/ * Example: "display_time desc" or "create_time asc"
sort: string;
/**
* The direction to sort the results by.
* Default to DESC.
*/ */
direction: Direction; orderBy: string;
/** /**
* Optional. Filter to apply to the list results.
* Filter is a CEL expression to filter memos. * Filter is a CEL expression to filter memos.
* Refer to `Shortcut.filter`. * Refer to `Shortcut.filter`.
*/ */
filter: string; filter: string;
/** Optional. If true, show deleted memos in the response. */
showDeleted: boolean;
/** /**
* [Deprecated] Old filter contains some specific conditions to filter memos. * [Deprecated] Old filter contains some specific conditions to filter memos.
* Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']" * Format: "creator == 'users/{user}' && visibilities == ['PUBLIC', 'PROTECTED']"
...@@ -159,74 +222,122 @@ export interface ListMemosRequest { ...@@ -159,74 +222,122 @@ export interface ListMemosRequest {
} }
export interface ListMemosResponse { export interface ListMemosResponse {
/** The list of memos. */
memos: Memo[]; memos: Memo[];
/** /**
* A token, which can be sent as `page_token` to retrieve the next page. * A token that can be sent as `page_token` to retrieve the next page.
* If this field is omitted, there are no subsequent pages. * If this field is omitted, there are no subsequent pages.
*/ */
nextPageToken: string; nextPageToken: string;
/** The total count of memos (may be approximate). */
totalSize: number;
} }
export interface GetMemoRequest { export interface GetMemoRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/**
* Optional. The fields to return in the response.
* If not specified, all fields are returned.
*/
readMask?: string[] | undefined;
} }
export interface UpdateMemoRequest { export interface UpdateMemoRequest {
/** /**
* The memo to update. * Required. The memo to update.
* The `name` field is required. * The `name` field is required.
*/ */
memo?: Memo | undefined; memo?:
updateMask?: string[] | undefined; | Memo
| undefined;
/** Required. The list of fields to update. */
updateMask?:
| string[]
| undefined;
/** Optional. If set to true, allows updating sensitive fields. */
allowMissing: boolean;
} }
export interface DeleteMemoRequest { export interface DeleteMemoRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo to delete.
* Format: memos/{memo}
*/
name: string; name: string;
/** Optional. If set to true, the memo will be deleted even if it has associated data. */
force: boolean;
} }
export interface RenameMemoTagRequest { export interface RenameMemoTagRequest {
/** /**
* The parent, who owns the tags. * Required. The parent, who owns the tags.
* Format: memos/{id}. Use "memos/-" to rename all tags. * Format: memos/{memo}. Use "memos/-" to rename all tags.
*/ */
parent: string; parent: string;
/** Required. The old tag name to rename. */
oldTag: string; oldTag: string;
/** Required. The new tag name. */
newTag: string; newTag: string;
} }
export interface DeleteMemoTagRequest { export interface DeleteMemoTagRequest {
/** /**
* The parent, who owns the tags. * Required. The parent, who owns the tags.
* Format: memos/{id}. Use "memos/-" to delete all tags. * Format: memos/{memo}. Use "memos/-" to delete all tags.
*/ */
parent: string; parent: string;
/** Required. The tag name to delete. */
tag: string; tag: string;
/** Optional. Whether to delete related memos. */
deleteRelatedMemos: boolean; deleteRelatedMemos: boolean;
} }
export interface SetMemoAttachmentsRequest { export interface SetMemoAttachmentsRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Required. The attachments to set for the memo. */
attachments: Attachment[]; attachments: Attachment[];
} }
export interface ListMemoAttachmentsRequest { export interface ListMemoAttachmentsRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Optional. The maximum number of attachments to return. */
pageSize: number;
/** Optional. A page token for pagination. */
pageToken: string;
} }
export interface ListMemoAttachmentsResponse { export interface ListMemoAttachmentsResponse {
/** The list of attachments. */
attachments: Attachment[]; attachments: Attachment[];
/** A token for the next page of results. */
nextPageToken: string;
/** The total count of attachments. */
totalSize: number;
} }
export interface MemoRelation { export interface MemoRelation {
memo?: MemoRelation_Memo | undefined; /** The memo in the relation. */
memo?:
| MemoRelation_Memo
| undefined;
/** The related memo. */
relatedMemo?: MemoRelation_Memo | undefined; relatedMemo?: MemoRelation_Memo | undefined;
type: MemoRelation_Type; type: MemoRelation_Type;
} }
/** The type of the relation. */
export enum MemoRelation_Type { export enum MemoRelation_Type {
TYPE_UNSPECIFIED = "TYPE_UNSPECIFIED", TYPE_UNSPECIFIED = "TYPE_UNSPECIFIED",
REFERENCE = "REFERENCE", REFERENCE = "REFERENCE",
...@@ -266,71 +377,232 @@ export function memoRelation_TypeToNumber(object: MemoRelation_Type): number { ...@@ -266,71 +377,232 @@ export function memoRelation_TypeToNumber(object: MemoRelation_Type): number {
} }
} }
/** Memo reference in relations. */
export interface MemoRelation_Memo { export interface MemoRelation_Memo {
/** /**
* The name of the memo. * The resource name of the memo.
* Format: memos/{id} * Format: memos/{memo}
*/ */
name: string; name: string;
/** Output only. The unique identifier of the memo. */
uid: string; uid: string;
/** The snippet of the memo content. Plain text only. */ /** Output only. The snippet of the memo content. Plain text only. */
snippet: string; snippet: string;
} }
export interface SetMemoRelationsRequest { export interface SetMemoRelationsRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Required. The relations to set for the memo. */
relations: MemoRelation[]; relations: MemoRelation[];
} }
export interface ListMemoRelationsRequest { export interface ListMemoRelationsRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Optional. The maximum number of relations to return. */
pageSize: number;
/** Optional. A page token for pagination. */
pageToken: string;
} }
export interface ListMemoRelationsResponse { export interface ListMemoRelationsResponse {
/** The list of relations. */
relations: MemoRelation[]; relations: MemoRelation[];
/** A token for the next page of results. */
nextPageToken: string;
/** The total count of relations. */
totalSize: number;
} }
export interface CreateMemoCommentRequest { export interface CreateMemoCommentRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** The comment to create. */ /** Required. The comment to create. */
comment?: Memo | undefined; comment?:
| Memo
| undefined;
/** Optional. The comment ID to use. */
commentId: string;
} }
export interface ListMemoCommentsRequest { export interface ListMemoCommentsRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Optional. The maximum number of comments to return. */
pageSize: number;
/** Optional. A page token for pagination. */
pageToken: string;
/** Optional. The order to sort results by. */
orderBy: string;
} }
export interface ListMemoCommentsResponse { export interface ListMemoCommentsResponse {
/** The list of comment memos. */
memos: Memo[]; memos: Memo[];
/** A token for the next page of results. */
nextPageToken: string;
/** The total count of comments. */
totalSize: number;
} }
export interface ListMemoReactionsRequest { export interface ListMemoReactionsRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Optional. The maximum number of reactions to return. */
pageSize: number;
/** Optional. A page token for pagination. */
pageToken: string;
} }
export interface ListMemoReactionsResponse { export interface ListMemoReactionsResponse {
/** The list of reactions. */
reactions: Reaction[]; reactions: Reaction[];
/** A token for the next page of results. */
nextPageToken: string;
/** The total count of reactions. */
totalSize: number;
} }
export interface UpsertMemoReactionRequest { export interface UpsertMemoReactionRequest {
/** The name of the memo. */ /**
* Required. The resource name of the memo.
* Format: memos/{memo}
*/
name: string; name: string;
/** Required. The reaction to upsert. */
reaction?: Reaction | undefined; reaction?: Reaction | undefined;
} }
export interface DeleteMemoReactionRequest { export interface DeleteMemoReactionRequest {
/** /**
* The id of the reaction. * Required. The resource name of the reaction to delete.
* Refer to the `Reaction.id`. * Format: reactions/{reaction}
*/ */
id: number; name: string;
} }
function createBaseReaction(): Reaction {
return { name: "", uid: "", creator: "", contentId: "", reactionType: "", createTime: undefined };
}
export const Reaction: MessageFns<Reaction> = {
encode(message: Reaction, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
if (message.name !== "") {
writer.uint32(10).string(message.name);
}
if (message.uid !== "") {
writer.uint32(18).string(message.uid);
}
if (message.creator !== "") {
writer.uint32(26).string(message.creator);
}
if (message.contentId !== "") {
writer.uint32(34).string(message.contentId);
}
if (message.reactionType !== "") {
writer.uint32(42).string(message.reactionType);
}
if (message.createTime !== undefined) {
Timestamp.encode(toTimestamp(message.createTime), writer.uint32(50).fork()).join();
}
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): Reaction {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseReaction();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.name = reader.string();
continue;
}
case 2: {
if (tag !== 18) {
break;
}
message.uid = reader.string();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.creator = reader.string();
continue;
}
case 4: {
if (tag !== 34) {
break;
}
message.contentId = reader.string();
continue;
}
case 5: {
if (tag !== 42) {
break;
}
message.reactionType = reader.string();
continue;
}
case 6: {
if (tag !== 50) {
break;
}
message.createTime = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
create(base?: DeepPartial<Reaction>): Reaction {
return Reaction.fromPartial(base ?? {});
},
fromPartial(object: DeepPartial<Reaction>): Reaction {
const message = createBaseReaction();
message.name = object.name ?? "";
message.uid = object.uid ?? "";
message.creator = object.creator ?? "";
message.contentId = object.contentId ?? "";
message.reactionType = object.reactionType ?? "";
message.createTime = object.createTime ?? undefined;
return message;
},
};
function createBaseMemo(): Memo { function createBaseMemo(): Memo {
return { return {
name: "", name: "",
...@@ -757,7 +1029,7 @@ export const Location: MessageFns<Location> = { ...@@ -757,7 +1029,7 @@ export const Location: MessageFns<Location> = {
}; };
function createBaseCreateMemoRequest(): CreateMemoRequest { function createBaseCreateMemoRequest(): CreateMemoRequest {
return { memo: undefined }; return { memo: undefined, memoId: "", validateOnly: false, requestId: "" };
} }
export const CreateMemoRequest: MessageFns<CreateMemoRequest> = { export const CreateMemoRequest: MessageFns<CreateMemoRequest> = {
...@@ -765,6 +1037,15 @@ export const CreateMemoRequest: MessageFns<CreateMemoRequest> = { ...@@ -765,6 +1037,15 @@ export const CreateMemoRequest: MessageFns<CreateMemoRequest> = {
if (message.memo !== undefined) { if (message.memo !== undefined) {
Memo.encode(message.memo, writer.uint32(10).fork()).join(); Memo.encode(message.memo, writer.uint32(10).fork()).join();
} }
if (message.memoId !== "") {
writer.uint32(18).string(message.memoId);
}
if (message.validateOnly !== false) {
writer.uint32(24).bool(message.validateOnly);
}
if (message.requestId !== "") {
writer.uint32(34).string(message.requestId);
}
return writer; return writer;
}, },
...@@ -783,6 +1064,30 @@ export const CreateMemoRequest: MessageFns<CreateMemoRequest> = { ...@@ -783,6 +1064,30 @@ export const CreateMemoRequest: MessageFns<CreateMemoRequest> = {
message.memo = Memo.decode(reader, reader.uint32()); message.memo = Memo.decode(reader, reader.uint32());
continue; continue;
} }
case 2: {
if (tag !== 18) {
break;
}
message.memoId = reader.string();
continue;
}
case 3: {
if (tag !== 24) {
break;
}
message.validateOnly = reader.bool();
continue;
}
case 4: {
if (tag !== 34) {
break;
}
message.requestId = reader.string();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -798,6 +1103,9 @@ export const CreateMemoRequest: MessageFns<CreateMemoRequest> = { ...@@ -798,6 +1103,9 @@ export const CreateMemoRequest: MessageFns<CreateMemoRequest> = {
fromPartial(object: DeepPartial<CreateMemoRequest>): CreateMemoRequest { fromPartial(object: DeepPartial<CreateMemoRequest>): CreateMemoRequest {
const message = createBaseCreateMemoRequest(); const message = createBaseCreateMemoRequest();
message.memo = (object.memo !== undefined && object.memo !== null) ? Memo.fromPartial(object.memo) : undefined; message.memo = (object.memo !== undefined && object.memo !== null) ? Memo.fromPartial(object.memo) : undefined;
message.memoId = object.memoId ?? "";
message.validateOnly = object.validateOnly ?? false;
message.requestId = object.requestId ?? "";
return message; return message;
}, },
}; };
...@@ -808,9 +1116,9 @@ function createBaseListMemosRequest(): ListMemosRequest { ...@@ -808,9 +1116,9 @@ function createBaseListMemosRequest(): ListMemosRequest {
pageSize: 0, pageSize: 0,
pageToken: "", pageToken: "",
state: State.STATE_UNSPECIFIED, state: State.STATE_UNSPECIFIED,
sort: "", orderBy: "",
direction: Direction.DIRECTION_UNSPECIFIED,
filter: "", filter: "",
showDeleted: false,
oldFilter: "", oldFilter: "",
}; };
} }
...@@ -829,14 +1137,14 @@ export const ListMemosRequest: MessageFns<ListMemosRequest> = { ...@@ -829,14 +1137,14 @@ export const ListMemosRequest: MessageFns<ListMemosRequest> = {
if (message.state !== State.STATE_UNSPECIFIED) { if (message.state !== State.STATE_UNSPECIFIED) {
writer.uint32(32).int32(stateToNumber(message.state)); writer.uint32(32).int32(stateToNumber(message.state));
} }
if (message.sort !== "") { if (message.orderBy !== "") {
writer.uint32(42).string(message.sort); writer.uint32(42).string(message.orderBy);
}
if (message.direction !== Direction.DIRECTION_UNSPECIFIED) {
writer.uint32(48).int32(directionToNumber(message.direction));
} }
if (message.filter !== "") { if (message.filter !== "") {
writer.uint32(58).string(message.filter); writer.uint32(50).string(message.filter);
}
if (message.showDeleted !== false) {
writer.uint32(56).bool(message.showDeleted);
} }
if (message.oldFilter !== "") { if (message.oldFilter !== "") {
writer.uint32(66).string(message.oldFilter); writer.uint32(66).string(message.oldFilter);
...@@ -888,23 +1196,23 @@ export const ListMemosRequest: MessageFns<ListMemosRequest> = { ...@@ -888,23 +1196,23 @@ export const ListMemosRequest: MessageFns<ListMemosRequest> = {
break; break;
} }
message.sort = reader.string(); message.orderBy = reader.string();
continue; continue;
} }
case 6: { case 6: {
if (tag !== 48) { if (tag !== 50) {
break; break;
} }
message.direction = directionFromJSON(reader.int32()); message.filter = reader.string();
continue; continue;
} }
case 7: { case 7: {
if (tag !== 58) { if (tag !== 56) {
break; break;
} }
message.filter = reader.string(); message.showDeleted = reader.bool();
continue; continue;
} }
case 8: { case 8: {
...@@ -933,16 +1241,16 @@ export const ListMemosRequest: MessageFns<ListMemosRequest> = { ...@@ -933,16 +1241,16 @@ export const ListMemosRequest: MessageFns<ListMemosRequest> = {
message.pageSize = object.pageSize ?? 0; message.pageSize = object.pageSize ?? 0;
message.pageToken = object.pageToken ?? ""; message.pageToken = object.pageToken ?? "";
message.state = object.state ?? State.STATE_UNSPECIFIED; message.state = object.state ?? State.STATE_UNSPECIFIED;
message.sort = object.sort ?? ""; message.orderBy = object.orderBy ?? "";
message.direction = object.direction ?? Direction.DIRECTION_UNSPECIFIED;
message.filter = object.filter ?? ""; message.filter = object.filter ?? "";
message.showDeleted = object.showDeleted ?? false;
message.oldFilter = object.oldFilter ?? ""; message.oldFilter = object.oldFilter ?? "";
return message; return message;
}, },
}; };
function createBaseListMemosResponse(): ListMemosResponse { function createBaseListMemosResponse(): ListMemosResponse {
return { memos: [], nextPageToken: "" }; return { memos: [], nextPageToken: "", totalSize: 0 };
} }
export const ListMemosResponse: MessageFns<ListMemosResponse> = { export const ListMemosResponse: MessageFns<ListMemosResponse> = {
...@@ -953,6 +1261,9 @@ export const ListMemosResponse: MessageFns<ListMemosResponse> = { ...@@ -953,6 +1261,9 @@ export const ListMemosResponse: MessageFns<ListMemosResponse> = {
if (message.nextPageToken !== "") { if (message.nextPageToken !== "") {
writer.uint32(18).string(message.nextPageToken); writer.uint32(18).string(message.nextPageToken);
} }
if (message.totalSize !== 0) {
writer.uint32(24).int32(message.totalSize);
}
return writer; return writer;
}, },
...@@ -979,6 +1290,14 @@ export const ListMemosResponse: MessageFns<ListMemosResponse> = { ...@@ -979,6 +1290,14 @@ export const ListMemosResponse: MessageFns<ListMemosResponse> = {
message.nextPageToken = reader.string(); message.nextPageToken = reader.string();
continue; continue;
} }
case 3: {
if (tag !== 24) {
break;
}
message.totalSize = reader.int32();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -995,12 +1314,13 @@ export const ListMemosResponse: MessageFns<ListMemosResponse> = { ...@@ -995,12 +1314,13 @@ export const ListMemosResponse: MessageFns<ListMemosResponse> = {
const message = createBaseListMemosResponse(); const message = createBaseListMemosResponse();
message.memos = object.memos?.map((e) => Memo.fromPartial(e)) || []; message.memos = object.memos?.map((e) => Memo.fromPartial(e)) || [];
message.nextPageToken = object.nextPageToken ?? ""; message.nextPageToken = object.nextPageToken ?? "";
message.totalSize = object.totalSize ?? 0;
return message; return message;
}, },
}; };
function createBaseGetMemoRequest(): GetMemoRequest { function createBaseGetMemoRequest(): GetMemoRequest {
return { name: "" }; return { name: "", readMask: undefined };
} }
export const GetMemoRequest: MessageFns<GetMemoRequest> = { export const GetMemoRequest: MessageFns<GetMemoRequest> = {
...@@ -1008,6 +1328,9 @@ export const GetMemoRequest: MessageFns<GetMemoRequest> = { ...@@ -1008,6 +1328,9 @@ export const GetMemoRequest: MessageFns<GetMemoRequest> = {
if (message.name !== "") { if (message.name !== "") {
writer.uint32(10).string(message.name); writer.uint32(10).string(message.name);
} }
if (message.readMask !== undefined) {
FieldMask.encode(FieldMask.wrap(message.readMask), writer.uint32(18).fork()).join();
}
return writer; return writer;
}, },
...@@ -1026,6 +1349,14 @@ export const GetMemoRequest: MessageFns<GetMemoRequest> = { ...@@ -1026,6 +1349,14 @@ export const GetMemoRequest: MessageFns<GetMemoRequest> = {
message.name = reader.string(); message.name = reader.string();
continue; continue;
} }
case 2: {
if (tag !== 18) {
break;
}
message.readMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32()));
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1041,12 +1372,13 @@ export const GetMemoRequest: MessageFns<GetMemoRequest> = { ...@@ -1041,12 +1372,13 @@ export const GetMemoRequest: MessageFns<GetMemoRequest> = {
fromPartial(object: DeepPartial<GetMemoRequest>): GetMemoRequest { fromPartial(object: DeepPartial<GetMemoRequest>): GetMemoRequest {
const message = createBaseGetMemoRequest(); const message = createBaseGetMemoRequest();
message.name = object.name ?? ""; message.name = object.name ?? "";
message.readMask = object.readMask ?? undefined;
return message; return message;
}, },
}; };
function createBaseUpdateMemoRequest(): UpdateMemoRequest { function createBaseUpdateMemoRequest(): UpdateMemoRequest {
return { memo: undefined, updateMask: undefined }; return { memo: undefined, updateMask: undefined, allowMissing: false };
} }
export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = { export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = {
...@@ -1057,6 +1389,9 @@ export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = { ...@@ -1057,6 +1389,9 @@ export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = {
if (message.updateMask !== undefined) { if (message.updateMask !== undefined) {
FieldMask.encode(FieldMask.wrap(message.updateMask), writer.uint32(18).fork()).join(); FieldMask.encode(FieldMask.wrap(message.updateMask), writer.uint32(18).fork()).join();
} }
if (message.allowMissing !== false) {
writer.uint32(24).bool(message.allowMissing);
}
return writer; return writer;
}, },
...@@ -1083,6 +1418,14 @@ export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = { ...@@ -1083,6 +1418,14 @@ export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = {
message.updateMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32())); message.updateMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32()));
continue; continue;
} }
case 3: {
if (tag !== 24) {
break;
}
message.allowMissing = reader.bool();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1099,12 +1442,13 @@ export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = { ...@@ -1099,12 +1442,13 @@ export const UpdateMemoRequest: MessageFns<UpdateMemoRequest> = {
const message = createBaseUpdateMemoRequest(); const message = createBaseUpdateMemoRequest();
message.memo = (object.memo !== undefined && object.memo !== null) ? Memo.fromPartial(object.memo) : undefined; message.memo = (object.memo !== undefined && object.memo !== null) ? Memo.fromPartial(object.memo) : undefined;
message.updateMask = object.updateMask ?? undefined; message.updateMask = object.updateMask ?? undefined;
message.allowMissing = object.allowMissing ?? false;
return message; return message;
}, },
}; };
function createBaseDeleteMemoRequest(): DeleteMemoRequest { function createBaseDeleteMemoRequest(): DeleteMemoRequest {
return { name: "" }; return { name: "", force: false };
} }
export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = { export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = {
...@@ -1112,6 +1456,9 @@ export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = { ...@@ -1112,6 +1456,9 @@ export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = {
if (message.name !== "") { if (message.name !== "") {
writer.uint32(10).string(message.name); writer.uint32(10).string(message.name);
} }
if (message.force !== false) {
writer.uint32(16).bool(message.force);
}
return writer; return writer;
}, },
...@@ -1130,6 +1477,14 @@ export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = { ...@@ -1130,6 +1477,14 @@ export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = {
message.name = reader.string(); message.name = reader.string();
continue; continue;
} }
case 2: {
if (tag !== 16) {
break;
}
message.force = reader.bool();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1145,6 +1500,7 @@ export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = { ...@@ -1145,6 +1500,7 @@ export const DeleteMemoRequest: MessageFns<DeleteMemoRequest> = {
fromPartial(object: DeepPartial<DeleteMemoRequest>): DeleteMemoRequest { fromPartial(object: DeepPartial<DeleteMemoRequest>): DeleteMemoRequest {
const message = createBaseDeleteMemoRequest(); const message = createBaseDeleteMemoRequest();
message.name = object.name ?? ""; message.name = object.name ?? "";
message.force = object.force ?? false;
return message; return message;
}, },
}; };
...@@ -1348,7 +1704,7 @@ export const SetMemoAttachmentsRequest: MessageFns<SetMemoAttachmentsRequest> = ...@@ -1348,7 +1704,7 @@ export const SetMemoAttachmentsRequest: MessageFns<SetMemoAttachmentsRequest> =
}; };
function createBaseListMemoAttachmentsRequest(): ListMemoAttachmentsRequest { function createBaseListMemoAttachmentsRequest(): ListMemoAttachmentsRequest {
return { name: "" }; return { name: "", pageSize: 0, pageToken: "" };
} }
export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest> = { export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest> = {
...@@ -1356,6 +1712,12 @@ export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest> ...@@ -1356,6 +1712,12 @@ export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest>
if (message.name !== "") { if (message.name !== "") {
writer.uint32(10).string(message.name); writer.uint32(10).string(message.name);
} }
if (message.pageSize !== 0) {
writer.uint32(16).int32(message.pageSize);
}
if (message.pageToken !== "") {
writer.uint32(26).string(message.pageToken);
}
return writer; return writer;
}, },
...@@ -1374,6 +1736,22 @@ export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest> ...@@ -1374,6 +1736,22 @@ export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest>
message.name = reader.string(); message.name = reader.string();
continue; continue;
} }
case 2: {
if (tag !== 16) {
break;
}
message.pageSize = reader.int32();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.pageToken = reader.string();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1389,12 +1767,14 @@ export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest> ...@@ -1389,12 +1767,14 @@ export const ListMemoAttachmentsRequest: MessageFns<ListMemoAttachmentsRequest>
fromPartial(object: DeepPartial<ListMemoAttachmentsRequest>): ListMemoAttachmentsRequest { fromPartial(object: DeepPartial<ListMemoAttachmentsRequest>): ListMemoAttachmentsRequest {
const message = createBaseListMemoAttachmentsRequest(); const message = createBaseListMemoAttachmentsRequest();
message.name = object.name ?? ""; message.name = object.name ?? "";
message.pageSize = object.pageSize ?? 0;
message.pageToken = object.pageToken ?? "";
return message; return message;
}, },
}; };
function createBaseListMemoAttachmentsResponse(): ListMemoAttachmentsResponse { function createBaseListMemoAttachmentsResponse(): ListMemoAttachmentsResponse {
return { attachments: [] }; return { attachments: [], nextPageToken: "", totalSize: 0 };
} }
export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse> = { export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse> = {
...@@ -1402,6 +1782,12 @@ export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse ...@@ -1402,6 +1782,12 @@ export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse
for (const v of message.attachments) { for (const v of message.attachments) {
Attachment.encode(v!, writer.uint32(10).fork()).join(); Attachment.encode(v!, writer.uint32(10).fork()).join();
} }
if (message.nextPageToken !== "") {
writer.uint32(18).string(message.nextPageToken);
}
if (message.totalSize !== 0) {
writer.uint32(24).int32(message.totalSize);
}
return writer; return writer;
}, },
...@@ -1420,6 +1806,22 @@ export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse ...@@ -1420,6 +1806,22 @@ export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse
message.attachments.push(Attachment.decode(reader, reader.uint32())); message.attachments.push(Attachment.decode(reader, reader.uint32()));
continue; continue;
} }
case 2: {
if (tag !== 18) {
break;
}
message.nextPageToken = reader.string();
continue;
}
case 3: {
if (tag !== 24) {
break;
}
message.totalSize = reader.int32();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1435,6 +1837,8 @@ export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse ...@@ -1435,6 +1837,8 @@ export const ListMemoAttachmentsResponse: MessageFns<ListMemoAttachmentsResponse
fromPartial(object: DeepPartial<ListMemoAttachmentsResponse>): ListMemoAttachmentsResponse { fromPartial(object: DeepPartial<ListMemoAttachmentsResponse>): ListMemoAttachmentsResponse {
const message = createBaseListMemoAttachmentsResponse(); const message = createBaseListMemoAttachmentsResponse();
message.attachments = object.attachments?.map((e) => Attachment.fromPartial(e)) || []; message.attachments = object.attachments?.map((e) => Attachment.fromPartial(e)) || [];
message.nextPageToken = object.nextPageToken ?? "";
message.totalSize = object.totalSize ?? 0;
return message; return message;
}, },
}; };
...@@ -1642,7 +2046,7 @@ export const SetMemoRelationsRequest: MessageFns<SetMemoRelationsRequest> = { ...@@ -1642,7 +2046,7 @@ export const SetMemoRelationsRequest: MessageFns<SetMemoRelationsRequest> = {
}; };
function createBaseListMemoRelationsRequest(): ListMemoRelationsRequest { function createBaseListMemoRelationsRequest(): ListMemoRelationsRequest {
return { name: "" }; return { name: "", pageSize: 0, pageToken: "" };
} }
export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = { export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = {
...@@ -1650,6 +2054,12 @@ export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = { ...@@ -1650,6 +2054,12 @@ export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = {
if (message.name !== "") { if (message.name !== "") {
writer.uint32(10).string(message.name); writer.uint32(10).string(message.name);
} }
if (message.pageSize !== 0) {
writer.uint32(16).int32(message.pageSize);
}
if (message.pageToken !== "") {
writer.uint32(26).string(message.pageToken);
}
return writer; return writer;
}, },
...@@ -1668,6 +2078,22 @@ export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = { ...@@ -1668,6 +2078,22 @@ export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = {
message.name = reader.string(); message.name = reader.string();
continue; continue;
} }
case 2: {
if (tag !== 16) {
break;
}
message.pageSize = reader.int32();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.pageToken = reader.string();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1683,12 +2109,14 @@ export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = { ...@@ -1683,12 +2109,14 @@ export const ListMemoRelationsRequest: MessageFns<ListMemoRelationsRequest> = {
fromPartial(object: DeepPartial<ListMemoRelationsRequest>): ListMemoRelationsRequest { fromPartial(object: DeepPartial<ListMemoRelationsRequest>): ListMemoRelationsRequest {
const message = createBaseListMemoRelationsRequest(); const message = createBaseListMemoRelationsRequest();
message.name = object.name ?? ""; message.name = object.name ?? "";
message.pageSize = object.pageSize ?? 0;
message.pageToken = object.pageToken ?? "";
return message; return message;
}, },
}; };
function createBaseListMemoRelationsResponse(): ListMemoRelationsResponse { function createBaseListMemoRelationsResponse(): ListMemoRelationsResponse {
return { relations: [] }; return { relations: [], nextPageToken: "", totalSize: 0 };
} }
export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> = { export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> = {
...@@ -1696,6 +2124,12 @@ export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> = ...@@ -1696,6 +2124,12 @@ export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> =
for (const v of message.relations) { for (const v of message.relations) {
MemoRelation.encode(v!, writer.uint32(10).fork()).join(); MemoRelation.encode(v!, writer.uint32(10).fork()).join();
} }
if (message.nextPageToken !== "") {
writer.uint32(18).string(message.nextPageToken);
}
if (message.totalSize !== 0) {
writer.uint32(24).int32(message.totalSize);
}
return writer; return writer;
}, },
...@@ -1714,6 +2148,22 @@ export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> = ...@@ -1714,6 +2148,22 @@ export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> =
message.relations.push(MemoRelation.decode(reader, reader.uint32())); message.relations.push(MemoRelation.decode(reader, reader.uint32()));
continue; continue;
} }
case 2: {
if (tag !== 18) {
break;
}
message.nextPageToken = reader.string();
continue;
}
case 3: {
if (tag !== 24) {
break;
}
message.totalSize = reader.int32();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1729,12 +2179,14 @@ export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> = ...@@ -1729,12 +2179,14 @@ export const ListMemoRelationsResponse: MessageFns<ListMemoRelationsResponse> =
fromPartial(object: DeepPartial<ListMemoRelationsResponse>): ListMemoRelationsResponse { fromPartial(object: DeepPartial<ListMemoRelationsResponse>): ListMemoRelationsResponse {
const message = createBaseListMemoRelationsResponse(); const message = createBaseListMemoRelationsResponse();
message.relations = object.relations?.map((e) => MemoRelation.fromPartial(e)) || []; message.relations = object.relations?.map((e) => MemoRelation.fromPartial(e)) || [];
message.nextPageToken = object.nextPageToken ?? "";
message.totalSize = object.totalSize ?? 0;
return message; return message;
}, },
}; };
function createBaseCreateMemoCommentRequest(): CreateMemoCommentRequest { function createBaseCreateMemoCommentRequest(): CreateMemoCommentRequest {
return { name: "", comment: undefined }; return { name: "", comment: undefined, commentId: "" };
} }
export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = { export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = {
...@@ -1745,6 +2197,9 @@ export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = { ...@@ -1745,6 +2197,9 @@ export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = {
if (message.comment !== undefined) { if (message.comment !== undefined) {
Memo.encode(message.comment, writer.uint32(18).fork()).join(); Memo.encode(message.comment, writer.uint32(18).fork()).join();
} }
if (message.commentId !== "") {
writer.uint32(26).string(message.commentId);
}
return writer; return writer;
}, },
...@@ -1771,6 +2226,14 @@ export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = { ...@@ -1771,6 +2226,14 @@ export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = {
message.comment = Memo.decode(reader, reader.uint32()); message.comment = Memo.decode(reader, reader.uint32());
continue; continue;
} }
case 3: {
if (tag !== 26) {
break;
}
message.commentId = reader.string();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1789,12 +2252,13 @@ export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = { ...@@ -1789,12 +2252,13 @@ export const CreateMemoCommentRequest: MessageFns<CreateMemoCommentRequest> = {
message.comment = (object.comment !== undefined && object.comment !== null) message.comment = (object.comment !== undefined && object.comment !== null)
? Memo.fromPartial(object.comment) ? Memo.fromPartial(object.comment)
: undefined; : undefined;
message.commentId = object.commentId ?? "";
return message; return message;
}, },
}; };
function createBaseListMemoCommentsRequest(): ListMemoCommentsRequest { function createBaseListMemoCommentsRequest(): ListMemoCommentsRequest {
return { name: "" }; return { name: "", pageSize: 0, pageToken: "", orderBy: "" };
} }
export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = { export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = {
...@@ -1802,6 +2266,15 @@ export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = { ...@@ -1802,6 +2266,15 @@ export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = {
if (message.name !== "") { if (message.name !== "") {
writer.uint32(10).string(message.name); writer.uint32(10).string(message.name);
} }
if (message.pageSize !== 0) {
writer.uint32(16).int32(message.pageSize);
}
if (message.pageToken !== "") {
writer.uint32(26).string(message.pageToken);
}
if (message.orderBy !== "") {
writer.uint32(34).string(message.orderBy);
}
return writer; return writer;
}, },
...@@ -1820,6 +2293,30 @@ export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = { ...@@ -1820,6 +2293,30 @@ export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = {
message.name = reader.string(); message.name = reader.string();
continue; continue;
} }
case 2: {
if (tag !== 16) {
break;
}
message.pageSize = reader.int32();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.pageToken = reader.string();
continue;
}
case 4: {
if (tag !== 34) {
break;
}
message.orderBy = reader.string();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1835,12 +2332,15 @@ export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = { ...@@ -1835,12 +2332,15 @@ export const ListMemoCommentsRequest: MessageFns<ListMemoCommentsRequest> = {
fromPartial(object: DeepPartial<ListMemoCommentsRequest>): ListMemoCommentsRequest { fromPartial(object: DeepPartial<ListMemoCommentsRequest>): ListMemoCommentsRequest {
const message = createBaseListMemoCommentsRequest(); const message = createBaseListMemoCommentsRequest();
message.name = object.name ?? ""; message.name = object.name ?? "";
message.pageSize = object.pageSize ?? 0;
message.pageToken = object.pageToken ?? "";
message.orderBy = object.orderBy ?? "";
return message; return message;
}, },
}; };
function createBaseListMemoCommentsResponse(): ListMemoCommentsResponse { function createBaseListMemoCommentsResponse(): ListMemoCommentsResponse {
return { memos: [] }; return { memos: [], nextPageToken: "", totalSize: 0 };
} }
export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = { export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = {
...@@ -1848,6 +2348,12 @@ export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = { ...@@ -1848,6 +2348,12 @@ export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = {
for (const v of message.memos) { for (const v of message.memos) {
Memo.encode(v!, writer.uint32(10).fork()).join(); Memo.encode(v!, writer.uint32(10).fork()).join();
} }
if (message.nextPageToken !== "") {
writer.uint32(18).string(message.nextPageToken);
}
if (message.totalSize !== 0) {
writer.uint32(24).int32(message.totalSize);
}
return writer; return writer;
}, },
...@@ -1866,6 +2372,22 @@ export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = { ...@@ -1866,6 +2372,22 @@ export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = {
message.memos.push(Memo.decode(reader, reader.uint32())); message.memos.push(Memo.decode(reader, reader.uint32()));
continue; continue;
} }
case 2: {
if (tag !== 18) {
break;
}
message.nextPageToken = reader.string();
continue;
}
case 3: {
if (tag !== 24) {
break;
}
message.totalSize = reader.int32();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1881,12 +2403,14 @@ export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = { ...@@ -1881,12 +2403,14 @@ export const ListMemoCommentsResponse: MessageFns<ListMemoCommentsResponse> = {
fromPartial(object: DeepPartial<ListMemoCommentsResponse>): ListMemoCommentsResponse { fromPartial(object: DeepPartial<ListMemoCommentsResponse>): ListMemoCommentsResponse {
const message = createBaseListMemoCommentsResponse(); const message = createBaseListMemoCommentsResponse();
message.memos = object.memos?.map((e) => Memo.fromPartial(e)) || []; message.memos = object.memos?.map((e) => Memo.fromPartial(e)) || [];
message.nextPageToken = object.nextPageToken ?? "";
message.totalSize = object.totalSize ?? 0;
return message; return message;
}, },
}; };
function createBaseListMemoReactionsRequest(): ListMemoReactionsRequest { function createBaseListMemoReactionsRequest(): ListMemoReactionsRequest {
return { name: "" }; return { name: "", pageSize: 0, pageToken: "" };
} }
export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = { export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = {
...@@ -1894,6 +2418,12 @@ export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = { ...@@ -1894,6 +2418,12 @@ export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = {
if (message.name !== "") { if (message.name !== "") {
writer.uint32(10).string(message.name); writer.uint32(10).string(message.name);
} }
if (message.pageSize !== 0) {
writer.uint32(16).int32(message.pageSize);
}
if (message.pageToken !== "") {
writer.uint32(26).string(message.pageToken);
}
return writer; return writer;
}, },
...@@ -1912,6 +2442,22 @@ export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = { ...@@ -1912,6 +2442,22 @@ export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = {
message.name = reader.string(); message.name = reader.string();
continue; continue;
} }
case 2: {
if (tag !== 16) {
break;
}
message.pageSize = reader.int32();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.pageToken = reader.string();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1927,12 +2473,14 @@ export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = { ...@@ -1927,12 +2473,14 @@ export const ListMemoReactionsRequest: MessageFns<ListMemoReactionsRequest> = {
fromPartial(object: DeepPartial<ListMemoReactionsRequest>): ListMemoReactionsRequest { fromPartial(object: DeepPartial<ListMemoReactionsRequest>): ListMemoReactionsRequest {
const message = createBaseListMemoReactionsRequest(); const message = createBaseListMemoReactionsRequest();
message.name = object.name ?? ""; message.name = object.name ?? "";
message.pageSize = object.pageSize ?? 0;
message.pageToken = object.pageToken ?? "";
return message; return message;
}, },
}; };
function createBaseListMemoReactionsResponse(): ListMemoReactionsResponse { function createBaseListMemoReactionsResponse(): ListMemoReactionsResponse {
return { reactions: [] }; return { reactions: [], nextPageToken: "", totalSize: 0 };
} }
export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> = { export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> = {
...@@ -1940,6 +2488,12 @@ export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> = ...@@ -1940,6 +2488,12 @@ export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> =
for (const v of message.reactions) { for (const v of message.reactions) {
Reaction.encode(v!, writer.uint32(10).fork()).join(); Reaction.encode(v!, writer.uint32(10).fork()).join();
} }
if (message.nextPageToken !== "") {
writer.uint32(18).string(message.nextPageToken);
}
if (message.totalSize !== 0) {
writer.uint32(24).int32(message.totalSize);
}
return writer; return writer;
}, },
...@@ -1958,6 +2512,22 @@ export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> = ...@@ -1958,6 +2512,22 @@ export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> =
message.reactions.push(Reaction.decode(reader, reader.uint32())); message.reactions.push(Reaction.decode(reader, reader.uint32()));
continue; continue;
} }
case 2: {
if (tag !== 18) {
break;
}
message.nextPageToken = reader.string();
continue;
}
case 3: {
if (tag !== 24) {
break;
}
message.totalSize = reader.int32();
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
...@@ -1973,6 +2543,8 @@ export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> = ...@@ -1973,6 +2543,8 @@ export const ListMemoReactionsResponse: MessageFns<ListMemoReactionsResponse> =
fromPartial(object: DeepPartial<ListMemoReactionsResponse>): ListMemoReactionsResponse { fromPartial(object: DeepPartial<ListMemoReactionsResponse>): ListMemoReactionsResponse {
const message = createBaseListMemoReactionsResponse(); const message = createBaseListMemoReactionsResponse();
message.reactions = object.reactions?.map((e) => Reaction.fromPartial(e)) || []; message.reactions = object.reactions?.map((e) => Reaction.fromPartial(e)) || [];
message.nextPageToken = object.nextPageToken ?? "";
message.totalSize = object.totalSize ?? 0;
return message; return message;
}, },
}; };
...@@ -2038,13 +2610,13 @@ export const UpsertMemoReactionRequest: MessageFns<UpsertMemoReactionRequest> = ...@@ -2038,13 +2610,13 @@ export const UpsertMemoReactionRequest: MessageFns<UpsertMemoReactionRequest> =
}; };
function createBaseDeleteMemoReactionRequest(): DeleteMemoReactionRequest { function createBaseDeleteMemoReactionRequest(): DeleteMemoReactionRequest {
return { id: 0 }; return { name: "" };
} }
export const DeleteMemoReactionRequest: MessageFns<DeleteMemoReactionRequest> = { export const DeleteMemoReactionRequest: MessageFns<DeleteMemoReactionRequest> = {
encode(message: DeleteMemoReactionRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { encode(message: DeleteMemoReactionRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
if (message.id !== 0) { if (message.name !== "") {
writer.uint32(8).int32(message.id); writer.uint32(10).string(message.name);
} }
return writer; return writer;
}, },
...@@ -2057,11 +2629,11 @@ export const DeleteMemoReactionRequest: MessageFns<DeleteMemoReactionRequest> = ...@@ -2057,11 +2629,11 @@ export const DeleteMemoReactionRequest: MessageFns<DeleteMemoReactionRequest> =
const tag = reader.uint32(); const tag = reader.uint32();
switch (tag >>> 3) { switch (tag >>> 3) {
case 1: { case 1: {
if (tag !== 8) { if (tag !== 10) {
break; break;
} }
message.id = reader.int32(); message.name = reader.string();
continue; continue;
} }
} }
...@@ -2078,7 +2650,7 @@ export const DeleteMemoReactionRequest: MessageFns<DeleteMemoReactionRequest> = ...@@ -2078,7 +2650,7 @@ export const DeleteMemoReactionRequest: MessageFns<DeleteMemoReactionRequest> =
}, },
fromPartial(object: DeepPartial<DeleteMemoReactionRequest>): DeleteMemoReactionRequest { fromPartial(object: DeepPartial<DeleteMemoReactionRequest>): DeleteMemoReactionRequest {
const message = createBaseDeleteMemoReactionRequest(); const message = createBaseDeleteMemoReactionRequest();
message.id = object.id ?? 0; message.name = object.name ?? "";
return message; return message;
}, },
}; };
...@@ -2097,6 +2669,7 @@ export const MemoServiceDefinition = { ...@@ -2097,6 +2669,7 @@ export const MemoServiceDefinition = {
responseStream: false, responseStream: false,
options: { options: {
_unknownFields: { _unknownFields: {
8410: [new Uint8Array([4, 109, 101, 109, 111])],
578365826: [ 578365826: [
new Uint8Array([ new Uint8Array([
21, 21,
...@@ -2135,6 +2708,7 @@ export const MemoServiceDefinition = { ...@@ -2135,6 +2708,7 @@ export const MemoServiceDefinition = {
responseStream: false, responseStream: false,
options: { options: {
_unknownFields: { _unknownFields: {
8410: [new Uint8Array([0]), new Uint8Array([6, 112, 97, 114, 101, 110, 116])],
578365826: [ 578365826: [
new Uint8Array([ new Uint8Array([
49, 49,
...@@ -2338,6 +2912,33 @@ export const MemoServiceDefinition = { ...@@ -2338,6 +2912,33 @@ export const MemoServiceDefinition = {
responseStream: false, responseStream: false,
options: { options: {
_unknownFields: { _unknownFields: {
8410: [
new Uint8Array([
22,
112,
97,
114,
101,
110,
116,
44,
111,
108,
100,
95,
116,
97,
103,
44,
110,
101,
119,
95,
116,
97,
103,
]),
],
578365826: [ 578365826: [
new Uint8Array([ new Uint8Array([
41, 41,
...@@ -2396,6 +2997,7 @@ export const MemoServiceDefinition = { ...@@ -2396,6 +2997,7 @@ export const MemoServiceDefinition = {
responseStream: false, responseStream: false,
options: { options: {
_unknownFields: { _unknownFields: {
8410: [new Uint8Array([10, 112, 97, 114, 101, 110, 116, 44, 116, 97, 103])],
578365826: [ 578365826: [
new Uint8Array([ new Uint8Array([
37, 37,
...@@ -2668,7 +3270,7 @@ export const MemoServiceDefinition = { ...@@ -2668,7 +3270,7 @@ export const MemoServiceDefinition = {
responseStream: false, responseStream: false,
options: { options: {
_unknownFields: { _unknownFields: {
8410: [new Uint8Array([4, 110, 97, 109, 101])], 8410: [new Uint8Array([12, 110, 97, 109, 101, 44, 99, 111, 109, 109, 101, 110, 116])],
578365826: [ 578365826: [
new Uint8Array([ new Uint8Array([
42, 42,
...@@ -2886,12 +3488,12 @@ export const MemoServiceDefinition = { ...@@ -2886,12 +3488,12 @@ export const MemoServiceDefinition = {
responseStream: false, responseStream: false,
options: { options: {
_unknownFields: { _unknownFields: {
8410: [new Uint8Array([2, 105, 100])], 8410: [new Uint8Array([4, 110, 97, 109, 101])],
578365826: [ 578365826: [
new Uint8Array([ new Uint8Array([
24, 28,
42, 42,
22, 26,
47, 47,
97, 97,
112, 112,
...@@ -2900,6 +3502,12 @@ export const MemoServiceDefinition = { ...@@ -2900,6 +3502,12 @@ export const MemoServiceDefinition = {
118, 118,
49, 49,
47, 47,
123,
110,
97,
109,
101,
61,
114, 114,
101, 101,
97, 97,
...@@ -2910,9 +3518,7 @@ export const MemoServiceDefinition = { ...@@ -2910,9 +3518,7 @@ export const MemoServiceDefinition = {
110, 110,
115, 115,
47, 47,
123, 42,
105,
100,
125, 125,
]), ]),
], ],
......
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
// protoc-gen-ts_proto v2.6.1
// protoc unknown
// source: api/v1/reaction_service.proto
/* eslint-disable */
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
export const protobufPackage = "memos.api.v1";
export interface Reaction {
id: number;
/**
* The name of the creator.
* Format: users/{user}
*/
creator: string;
/**
* The content identifier.
* For memo, it should be the `Memo.name`.
*/
contentId: string;
reactionType: string;
}
function createBaseReaction(): Reaction {
return { id: 0, creator: "", contentId: "", reactionType: "" };
}
export const Reaction: MessageFns<Reaction> = {
encode(message: Reaction, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
if (message.id !== 0) {
writer.uint32(8).int32(message.id);
}
if (message.creator !== "") {
writer.uint32(18).string(message.creator);
}
if (message.contentId !== "") {
writer.uint32(26).string(message.contentId);
}
if (message.reactionType !== "") {
writer.uint32(34).string(message.reactionType);
}
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): Reaction {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseReaction();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 8) {
break;
}
message.id = reader.int32();
continue;
}
case 2: {
if (tag !== 18) {
break;
}
message.creator = reader.string();
continue;
}
case 3: {
if (tag !== 26) {
break;
}
message.contentId = reader.string();
continue;
}
case 4: {
if (tag !== 34) {
break;
}
message.reactionType = reader.string();
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
create(base?: DeepPartial<Reaction>): Reaction {
return Reaction.fromPartial(base ?? {});
},
fromPartial(object: DeepPartial<Reaction>): Reaction {
const message = createBaseReaction();
message.id = object.id ?? 0;
message.creator = object.creator ?? "";
message.contentId = object.contentId ?? "";
message.reactionType = object.reactionType ?? "";
return message;
},
};
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export type DeepPartial<T> = T extends Builtin ? T
: T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
: T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>;
export interface MessageFns<T> {
encode(message: T, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): T;
create(base?: DeepPartial<T>): T;
fromPartial(object: DeepPartial<T>): T;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment