refactor: split tree shell picker runtime

This commit is contained in:
lix-2026
2026-05-26 02:56:16 +08:00
parent 19642cdd7b
commit 40c51c5cc6
5 changed files with 209 additions and 136 deletions
+5
View File
@@ -182,6 +182,10 @@ pub fn build_router(state: AppState) -> Router {
"/api/mnote-browser-runtime/tree-shell-filetree-runtime.js",
get(web_shell::tree_shell_filetree_runtime_asset),
)
.route(
"/api/mnote-browser-runtime/tree-shell-picker-runtime.js",
get(web_shell::tree_shell_picker_runtime_asset),
)
.route(
"/api/mnote-browser-runtime/document-conflict-panel-runtime.js",
get(web_shell::document_conflict_panel_runtime_asset),
@@ -637,6 +641,7 @@ mod tests {
"/api/mnote-browser-runtime/tree-shell-state-runtime.js",
"/api/mnote-browser-runtime/tree-shell-icons-runtime.js",
"/api/mnote-browser-runtime/tree-shell-filetree-runtime.js",
"/api/mnote-browser-runtime/tree-shell-picker-runtime.js",
"/api/mnote-browser-runtime/document-conflict-panel-runtime.js",
"/api/mnote-browser-runtime/document-pane-runtime.js",
"/api/mnote-browser-runtime/document-mindmap-host-runtime.js",
@@ -994,6 +994,20 @@ pub async fn tree_shell_filetree_runtime_asset() -> Response {
.unwrap_or_else(|_| Response::new(Body::empty()))
}
pub async fn tree_shell_picker_runtime_asset() -> Response {
const JS: &str = include_str!("../../browser/tree-shell-picker-runtime.js");
Response::builder()
.status(StatusCode::OK)
.header(
header::CONTENT_TYPE,
"application/javascript; charset=utf-8",
)
.header(header::CACHE_CONTROL, "no-store")
.header(HEADER_MNOTE_WEB_OWNER, "mnote-web")
.body(Body::from(JS))
.unwrap_or_else(|_| Response::new(Body::empty()))
}
pub async fn document_conflict_panel_runtime_asset() -> Response {
// include_str! 路径相对于当前源文件 (src/routes/web_shell.rs -> ../../browser/)
const JS: &str = include_str!("../../browser/document-conflict-panel-runtime.js");