feat: getWorkspaces ipc

This commit is contained in:
linonetwo
2023-01-09 16:27:09 +08:00
parent a409009d65
commit e9ee729b5d
12 changed files with 155 additions and 9 deletions

View File

@@ -3,6 +3,7 @@ name = "ipc_types"
version = "0.1.0"
[dependencies]
jwst-storage = { path = "../../src-OctoBase/libs/jwst-storage", features = ["sqlite", "server"] }
project-root = "0.2.2"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

View File

@@ -1,6 +1,7 @@
#[allow(unused_imports)]
extern crate serde;
extern crate schemars;
extern crate jwst_storage;
pub mod blob;
pub mod document;

View File

@@ -1,7 +1,8 @@
use jwst_storage::model::WorkspaceWithPermission;
use schemars::JsonSchema;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, JsonSchema)]
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
pub struct CreateWorkspace {
// TODO: make all id string, on Octobase side, and rewrite all related tests
pub user_id: i32,
@@ -11,21 +12,34 @@ pub struct CreateWorkspace {
pub name: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, JsonSchema)]
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
pub struct GetWorkspaces {
// TODO: make all id string, on Octobase side, and rewrite all related tests
pub user_id: i32,
}
#[derive(Debug, Clone, Serialize, JsonSchema)]
pub struct CreateWorkspaceResult {
pub id: String,
pub name: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, JsonSchema)]
#[derive(Debug, Clone, Serialize, JsonSchema)]
pub struct GetWorkspacesResult {
pub workspaces: Vec<WorkspaceWithPermission>,
}
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
pub struct UpdateWorkspace {
pub id: i64,
pub public: bool,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, JsonSchema)]
#[derive(Debug, Clone, Serialize, JsonSchema)]
pub enum IWorkspaceParameters {
CreateWorkspace(CreateWorkspace),
GetWorkspaces(GetWorkspaces),
GetWorkspacesResult(GetWorkspacesResult),
UpdateWorkspace(UpdateWorkspace),
CreateWorkspaceResult(CreateWorkspaceResult),
}