tui-pages changes and enum for what is allowed on a global table that the modules uses
This commit is contained in:
@@ -43,6 +43,10 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|||||||
.type_attribute(".komp_ac.tables_data.GetAdjacentTableDataResponse", serde)
|
.type_attribute(".komp_ac.tables_data.GetAdjacentTableDataResponse", serde)
|
||||||
.type_attribute(".komp_ac.tables_data.ResolvedTableLinkStatus", serde)
|
.type_attribute(".komp_ac.tables_data.ResolvedTableLinkStatus", serde)
|
||||||
.type_attribute(".komp_ac.tables_data.RowNavigationMode", serde)
|
.type_attribute(".komp_ac.tables_data.RowNavigationMode", serde)
|
||||||
|
.field_attribute(
|
||||||
|
".komp_ac.table_definition.TableDetail.catalog_features",
|
||||||
|
"#[serde(default)]",
|
||||||
|
)
|
||||||
.field_attribute(
|
.field_attribute(
|
||||||
".komp_ac.table_validation.FieldValidation.locked",
|
".komp_ac.table_validation.FieldValidation.locked",
|
||||||
"#[serde(default)]",
|
"#[serde(default)]",
|
||||||
|
|||||||
@@ -651,6 +651,29 @@ message TableDetail {
|
|||||||
|
|
||||||
// True when module-owned storage supports catalog-managed rows and settings.
|
// True when module-owned storage supports catalog-managed rows and settings.
|
||||||
bool catalog_managed = 14;
|
bool catalog_managed = 14;
|
||||||
|
|
||||||
|
// Supported catalog operations, not user permissions or a guarantee that a
|
||||||
|
// particular request is valid. Column restrictions, locks, existing data and
|
||||||
|
// optimistic concurrency checks still apply. Unknown values must be ignored.
|
||||||
|
repeated CatalogFeature catalog_features = 15;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum CatalogFeature {
|
||||||
|
CATALOG_FEATURE_UNSPECIFIED = 0;
|
||||||
|
CATALOG_FEATURE_WRITE_ROWS = 1;
|
||||||
|
CATALOG_FEATURE_DELETE_ROWS = 2;
|
||||||
|
CATALOG_FEATURE_ARCHIVE_ROWS = 3;
|
||||||
|
CATALOG_FEATURE_COLUMN_PRESENTATION = 4;
|
||||||
|
CATALOG_FEATURE_COLUMN_REQUIRED = 5;
|
||||||
|
CATALOG_FEATURE_COLUMN_FORM_VISIBILITY = 6;
|
||||||
|
CATALOG_FEATURE_COLUMN_OPTION_ALIASES = 7;
|
||||||
|
CATALOG_FEATURE_ROW_DISPLAY_COLUMNS = 8;
|
||||||
|
CATALOG_FEATURE_VALIDATION = 9;
|
||||||
|
CATALOG_FEATURE_SCRIPTS = 10;
|
||||||
|
CATALOG_FEATURE_ADD_COLUMNS = 11;
|
||||||
|
CATALOG_FEATURE_REPLACE_DEFINITION = 12;
|
||||||
|
CATALOG_FEATURE_INDEXES = 13;
|
||||||
|
CATALOG_FEATURE_DELETE_TABLE = 14;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Server-owned behavior for one logical column returned in table details.
|
// Server-owned behavior for one logical column returned in table details.
|
||||||
|
|||||||
Binary file not shown.
@@ -693,6 +693,12 @@ pub struct TableDetail {
|
|||||||
/// True when module-owned storage supports catalog-managed rows and settings.
|
/// True when module-owned storage supports catalog-managed rows and settings.
|
||||||
#[prost(bool, tag = "14")]
|
#[prost(bool, tag = "14")]
|
||||||
pub catalog_managed: bool,
|
pub catalog_managed: bool,
|
||||||
|
/// Supported catalog operations, not user permissions or a guarantee that a
|
||||||
|
/// particular request is valid. Column restrictions, locks, existing data and
|
||||||
|
/// optimistic concurrency checks still apply. Unknown values must be ignored.
|
||||||
|
#[prost(enumeration = "CatalogFeature", repeated, tag = "15")]
|
||||||
|
#[serde(default)]
|
||||||
|
pub catalog_features: ::prost::alloc::vec::Vec<i32>,
|
||||||
}
|
}
|
||||||
/// Server-owned behavior for one logical column returned in table details.
|
/// Server-owned behavior for one logical column returned in table details.
|
||||||
#[derive(serde::Serialize, serde::Deserialize)]
|
#[derive(serde::Serialize, serde::Deserialize)]
|
||||||
@@ -1234,6 +1240,72 @@ impl ManagedTableKind {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#[derive(serde::Serialize, serde::Deserialize)]
|
||||||
|
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
|
||||||
|
#[repr(i32)]
|
||||||
|
pub enum CatalogFeature {
|
||||||
|
Unspecified = 0,
|
||||||
|
WriteRows = 1,
|
||||||
|
DeleteRows = 2,
|
||||||
|
ArchiveRows = 3,
|
||||||
|
ColumnPresentation = 4,
|
||||||
|
ColumnRequired = 5,
|
||||||
|
ColumnFormVisibility = 6,
|
||||||
|
ColumnOptionAliases = 7,
|
||||||
|
RowDisplayColumns = 8,
|
||||||
|
Validation = 9,
|
||||||
|
Scripts = 10,
|
||||||
|
AddColumns = 11,
|
||||||
|
ReplaceDefinition = 12,
|
||||||
|
Indexes = 13,
|
||||||
|
DeleteTable = 14,
|
||||||
|
}
|
||||||
|
impl CatalogFeature {
|
||||||
|
/// String value of the enum field names used in the ProtoBuf definition.
|
||||||
|
///
|
||||||
|
/// The values are not transformed in any way and thus are considered stable
|
||||||
|
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
|
||||||
|
pub fn as_str_name(&self) -> &'static str {
|
||||||
|
match self {
|
||||||
|
Self::Unspecified => "CATALOG_FEATURE_UNSPECIFIED",
|
||||||
|
Self::WriteRows => "CATALOG_FEATURE_WRITE_ROWS",
|
||||||
|
Self::DeleteRows => "CATALOG_FEATURE_DELETE_ROWS",
|
||||||
|
Self::ArchiveRows => "CATALOG_FEATURE_ARCHIVE_ROWS",
|
||||||
|
Self::ColumnPresentation => "CATALOG_FEATURE_COLUMN_PRESENTATION",
|
||||||
|
Self::ColumnRequired => "CATALOG_FEATURE_COLUMN_REQUIRED",
|
||||||
|
Self::ColumnFormVisibility => "CATALOG_FEATURE_COLUMN_FORM_VISIBILITY",
|
||||||
|
Self::ColumnOptionAliases => "CATALOG_FEATURE_COLUMN_OPTION_ALIASES",
|
||||||
|
Self::RowDisplayColumns => "CATALOG_FEATURE_ROW_DISPLAY_COLUMNS",
|
||||||
|
Self::Validation => "CATALOG_FEATURE_VALIDATION",
|
||||||
|
Self::Scripts => "CATALOG_FEATURE_SCRIPTS",
|
||||||
|
Self::AddColumns => "CATALOG_FEATURE_ADD_COLUMNS",
|
||||||
|
Self::ReplaceDefinition => "CATALOG_FEATURE_REPLACE_DEFINITION",
|
||||||
|
Self::Indexes => "CATALOG_FEATURE_INDEXES",
|
||||||
|
Self::DeleteTable => "CATALOG_FEATURE_DELETE_TABLE",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// Creates an enum from field names used in the ProtoBuf definition.
|
||||||
|
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
|
||||||
|
match value {
|
||||||
|
"CATALOG_FEATURE_UNSPECIFIED" => Some(Self::Unspecified),
|
||||||
|
"CATALOG_FEATURE_WRITE_ROWS" => Some(Self::WriteRows),
|
||||||
|
"CATALOG_FEATURE_DELETE_ROWS" => Some(Self::DeleteRows),
|
||||||
|
"CATALOG_FEATURE_ARCHIVE_ROWS" => Some(Self::ArchiveRows),
|
||||||
|
"CATALOG_FEATURE_COLUMN_PRESENTATION" => Some(Self::ColumnPresentation),
|
||||||
|
"CATALOG_FEATURE_COLUMN_REQUIRED" => Some(Self::ColumnRequired),
|
||||||
|
"CATALOG_FEATURE_COLUMN_FORM_VISIBILITY" => Some(Self::ColumnFormVisibility),
|
||||||
|
"CATALOG_FEATURE_COLUMN_OPTION_ALIASES" => Some(Self::ColumnOptionAliases),
|
||||||
|
"CATALOG_FEATURE_ROW_DISPLAY_COLUMNS" => Some(Self::RowDisplayColumns),
|
||||||
|
"CATALOG_FEATURE_VALIDATION" => Some(Self::Validation),
|
||||||
|
"CATALOG_FEATURE_SCRIPTS" => Some(Self::Scripts),
|
||||||
|
"CATALOG_FEATURE_ADD_COLUMNS" => Some(Self::AddColumns),
|
||||||
|
"CATALOG_FEATURE_REPLACE_DEFINITION" => Some(Self::ReplaceDefinition),
|
||||||
|
"CATALOG_FEATURE_INDEXES" => Some(Self::Indexes),
|
||||||
|
"CATALOG_FEATURE_DELETE_TABLE" => Some(Self::DeleteTable),
|
||||||
|
_ => None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
/// How a column type is spelled in ColumnDefinition.field_type.
|
/// How a column type is spelled in ColumnDefinition.field_type.
|
||||||
#[derive(serde::Serialize, serde::Deserialize)]
|
#[derive(serde::Serialize, serde::Deserialize)]
|
||||||
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
|
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
|
||||||
|
|||||||
2
server
2
server
Submodule server updated: 5c98e443a2...8d7fba32dd
Submodule tui-pages updated: ce4bc49fa6...2e784b636e
Reference in New Issue
Block a user