Skip to content
Snippets Groups Projects

Обновление Items API Proto для поддержки локализации и переводов

Merged Pavel Antonov requested to merge feature/PRXS-2647-TranslationItemsAPI into master
1 unresolved thread
1 file
+ 29
5
Compare changes
  • Side-by-side
  • Inline
+ 29
5
@@ -65,15 +65,27 @@ message Item {
string updated_by = 9; // id пользователя обновившего текущую ревизию
google.protobuf.Timestamp updated_at = 10; // дата обновления текущей ревизии
google.protobuf.Struct data = 11;
map<string, google.protobuf.Struct> translations = 12;
string revision_id = 13;
string revision_description = 14;
string locale = 18;
bool deleted = 19;
bool hidden = 20;
bool template = 21;
Permissions permissions = 22;
double search_score = 23; // релеватность элемента при полнотекстовом поиске
// string locale = 18; // DEPRECATED: используется locale_id
// При создании или обновлении идентификатор локали в котором создается запись, опционально.
// Если указан, то создается перевод для указанного языка, поле translations игнорируется
string locale_id = 100; // идентификатор локали полученной записи
// Позволяет одновременно установить/получить несколько переводов и производить манипуляции с переводами
// Ключами является идентификатор локали, значениями - данные переводы
map<string, google.protobuf.Struct> translations = 12;
// список идентификаторов локалей для которых есть переводы
// соотвествует ключам в translations
repeated string translations_ids = 101;
}
/**
@@ -131,6 +143,8 @@ message FindOptions {
bool regular = 4;
bool hidden = 5;
bool templates = 6;
string locale_id = 7; // Язык перевода который будет использоваться. Если не указан, то возвращаются данные для языка по умолчанию
repeated string translations_ids = 8; // Список идентификаторов переводов/локалей, которых должны быть включены в результат
}
message UpdateOptions {
@@ -138,7 +152,8 @@ message UpdateOptions {
}
message GetPublishedOptions {
string locale_id = 1;
string locale_id = 7; // Язык перевода который будет использоваться. Если не указан, то возвращаются данные для языка по умолчанию
repeated string translations_ids = 8; // Список идентификаторов переводов/локалей, которых должны быть включены в результат
}
message DeleteOptions {
@@ -160,10 +175,12 @@ message UnpublishOptions {
message FindPublishedOptions {
common.FindOptions options = 2;
string locale_id = 3;
// string locale_id = 3; // язык для поиска переводов. Если не указан, то возвращаются данные для языка по умолчанию
bool regular = 4;
bool hidden = 5;
bool templates = 6;
string locale_id = 7; // Язык перевода который будет использоваться. Если не указан, то возвращаются данные для языка по умолчанию
repeated string translations_ids = 8; // Список идентификаторов переводов/локалей, которых должны быть включены в результат
}
message FindArchivedOptions {
@@ -191,7 +208,7 @@ message AggregateOptions {
message AggregatePublishedOptions {
map<string, string> fields = 1;
}
// TODO: Каким образом будет организована работа с переводами и требуется ли она?
message CreateRequest {
Item item = 1;
@@ -210,12 +227,19 @@ message IntrospectResponse {
repeated common.Error.BadRequest.FieldViolation validation_errors = 3;
}
message GetOptions {
string locale_id = 7; // Язык перевода который будет использоваться. Если не указан, то возвращаются данные для языка по умолчанию
repeated string translations_ids = 8; // Список идентификаторов переводов/локалей, которых должны быть включены в результат
}
message GetRequest {
string space_id = 1;
string env_id = 2;
string collection_id = 3;
string item_id = 4;
GetOptions options = 5;
}
message GetResponse {
Item item = 1;
}
Loading