Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • perxis/perxis-proto
1 result
Show changes
Commits on Source (5)
......@@ -30,7 +30,7 @@ enum Target {
/**
Action описывает как коллекцию в системе с предуставновленными действиями, так и возможные дальнейшие действия после
Action описывает как коллекцию в системе с предустановленными действиями, так и возможные дальнейшие действия после
получения ответа (см. `ActionResponse.next`)
Если поле `request` присутствует, но не все требуемые поля заполнены, то значения для них берутся из текущих значений.
......@@ -48,7 +48,7 @@ message Action {
// Kind описывает c какой сущность системы связано действие и что требуется передать в качестве параметров
// Интерфейс загружает пользовательские действия и отображает их в интерфейсе в зависимости от ActionType.
enum Kind {
DEFAULT = 0; // Действие не отображается в интерфейсе и могут используется для выполнения дополнительных запросов (см. `ActionResponse.next`) или напрямую из сторонних приложений.
DEFAULT = 0; // Действие не отображается в интерфейсе и может использоваться для выполнения дополнительных запросов (см. `ActionResponse.next`) или напрямую из сторонних приложений.
SPACE = 1; // Действие связано с пространством (требуется передача space_id). Отображается в меню "Действия".
ENVIRONMENT = 2; // Действие связано с окружением (требуется передача space_id, env_id). Отображается в меню "Действия".
COLLECTION = 3; // Действие связано с коллекцией (требуется передача space_id, env_id, collection_id). Отображается на экране списка записей.
......@@ -64,11 +64,11 @@ message Action {
// Идентификатор действия (в формате URI)
// Варианты использования:
// - пустой - никаких действий не выполняется
// - `action_id` - простое действие (если установлено расширение, то оно используется)
// - `action_id` - простое действие (если установлено значение `extension`, то оно используется)
// - `grpc:///extension_id/action_id` - полное действие с указанием расширения
// - `https://host/path` - действие по HTTP(S)
// - `ui:///path` - действие в интерфейсе
// - `/path` - действие в интерфейсе
// - `/path` - действие в интерфейсе - DEPRECATED: Используйте `ui:///path`
//
// Пример: `https://example.com/api/v1/action` - будет выполнен запрос HTTP по указанному URL.
// Сервер может вернуть ответ в формате JSON или HTML/MD. Дальнейшие действия определяется оп заголовку ответа
......@@ -167,4 +167,4 @@ message ActionRequest {
// Ссылка на документ с параметрами выполнения Action.
// Чтобы при выполнении действия открывалась форма параметров, необходимо указать `Action.params_collection`
content.references.Reference params = 11020;
}
\ No newline at end of file
}
......@@ -50,23 +50,33 @@ service ExtensionManagerService {
rpc UnregisterExtensions(UnregisterExtensionsRequest) returns (UnregisterExtensionsResponse) {}
// Получить список зарегистрированных сервисов
rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить список сервисов
rpc ListRegisteredExtensions(ListRegisteredExtensionsRequest) returns (ListRegisteredExtensionsResponse) {} // Получить список сервисов
// GetInstalledExtensions - получить статус расширения
rpc GetInstalledExtensions(GetInstalledExtensionsRequest) returns (GetInstalledExtensionsResponse) {} // Получить описание сервиса
// ListExtensions - получить статус расширения
rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить описание сервиса
}
// GetInstalledExtensionsRequest - запрос на получение статуса расширений в пространстве и окружении.
// ListExtensionsRequest - запрос на получение статуса расширений в пространстве и окружении.
// Если список расширений в запросе не передан, возвращаются все установленные расширения
message GetInstalledExtensionsRequest {
repeated string extensions = 1; // Имя расширения
//
// Использование флагов `installed`/`uninstalled`:
// - если в ListExtensionsRequest.extensions передан список расширений, то флаги игнорируются
// и возвращается информация о переданных в запросе расширениях
// - `installed:false, uninstalled:false` (равноценно `installed:true, uninstalled:false`) -
// возвращается информация об установленных расширениях
// - `installed:false, uninstalled:true` - вернуть только зарегистрированные, но не установленные расширения
// - `installed:true, uninstalled:true` - вернуть информацию о всех зарегистрированных расширениях
message ListExtensionsRequest {
repeated string extensions = 1; // Имя расширения (опционально), regexp
string space_id = 2; // Пространство имен расширения
string env_id = 3; // Идентификатор окружения
bool installed = 4; // Вернуть установленные расширения (по умолчанию)
bool uninstalled = 5; // Вернуть неустановленные расширения
}
// GetExtensionResponse - описание расширения
message GetInstalledExtensionsResponse {
message Status {
message ListExtensionsResponse {
message ExtensionInfo {
string extension = 10100; // Имя расширения
string title = 10110;
State state = 10120;
......@@ -78,7 +88,7 @@ message GetInstalledExtensionsResponse {
string installed_version = 10510; // Установленная версия расширения
string available_version = 10520; // Доступная версия расширения
}
repeated Status status = 1;
repeated ExtensionInfo extensions = 1;
}
// ExtensionDescriptor описание расширения (возвращается сервисом при регистрации)
......@@ -111,11 +121,11 @@ message ListExtensionsFilter {
// repeated string action = 2; // Список действий обрабатываемых сервисами. Список может содержать регулярные выражения.
}
message ListExtensionsRequest {
message ListRegisteredExtensionsRequest {
ListExtensionsFilter filter = 1;
}
message ListExtensionsResponse {
message ListRegisteredExtensionsResponse {
repeated ExtensionDescriptor extensions = 1;
}
......
......@@ -67,6 +67,7 @@ message Item {
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;
......