MCPcopy Create free account
hub / github.com/GCWing/BitFun / update_workspace_info

Function update_workspace_info

src/apps/desktop/src/api/commands.rs:1888–1930  ·  view source on GitHub ↗
(
    state: State<'_, AppState>,
    app: tauri::AppHandle,
    request: UpdateWorkspaceInfoRequest,
)

Source from the content-addressed store, hash-verified

1886
1887#[tauri::command]
1888pub async fn update_workspace_info(
1889 state: State<'_, AppState>,
1890 app: tauri::AppHandle,
1891 request: UpdateWorkspaceInfoRequest,
1892) -> Result<WorkspaceInfoDto, String> {
1893 let updates = bitfun_core::service::workspace::WorkspaceInfoUpdates {
1894 name: request.name,
1895 description: request.description,
1896 tags: request.tags,
1897 related_paths: request.related_paths,
1898 };
1899
1900 match state
1901 .workspace_service
1902 .update_workspace_info(&request.workspace_id, updates)
1903 .await
1904 {
1905 Ok(workspace_info) => {
1906 let is_active_workspace = state
1907 .workspace_service
1908 .get_current_workspace()
1909 .await
1910 .map(|workspace| workspace.id == workspace_info.id)
1911 .unwrap_or(false);
1912
1913 if is_active_workspace {
1914 apply_active_workspace_context(&state, &app, &workspace_info, None).await;
1915 }
1916
1917 info!(
1918 "Workspace info updated: workspace_id={}, path={}",
1919 workspace_info.id,
1920 workspace_info.root_path.display()
1921 );
1922
1923 Ok(WorkspaceInfoDto::from_workspace_info(&workspace_info))
1924 }
1925 Err(error) => {
1926 error!("Failed to update workspace info: {}", error);
1927 Err(format!("Failed to update workspace info: {}", error))
1928 }
1929 }
1930}
1931
1932#[tauri::command]
1933pub async fn get_current_workspace(

Callers

nothing calls this directly

Calls 3

update_workspace_infoMethod · 0.80
get_current_workspaceMethod · 0.45

Tested by

no test coverage detected