2022-05-26 15:18:53 +08:00
|
|
|
import {openMobileFileById} from "../editor";
|
2023-04-27 10:14:58 +08:00
|
|
|
import {processSync, progressLoading, progressStatus, reloadSync, transactionError} from "../../dialog/processSystem";
|
2023-01-24 15:11:47 +08:00
|
|
|
import {Constants} from "../../constants";
|
2023-05-18 19:27:21 +08:00
|
|
|
import {App} from "../../index";
|
2022-05-26 15:18:53 +08:00
|
|
|
|
2023-05-18 19:27:21 +08:00
|
|
|
export const onMessage = (app: App, data: IWebSocketData) => {
|
2022-05-26 15:18:53 +08:00
|
|
|
if (data) {
|
|
|
|
|
switch (data.cmd) {
|
2023-04-27 10:14:58 +08:00
|
|
|
case "syncMergeResult":
|
2023-05-18 19:27:21 +08:00
|
|
|
reloadSync(app, data.data);
|
2023-04-27 10:14:58 +08:00
|
|
|
break;
|
2023-03-03 10:39:05 +08:00
|
|
|
case "readonly":
|
|
|
|
|
window.siyuan.config.editor.readOnly = data.data;
|
|
|
|
|
break;
|
2022-05-26 15:18:53 +08:00
|
|
|
case"progress":
|
|
|
|
|
progressLoading(data);
|
|
|
|
|
break;
|
|
|
|
|
case"syncing":
|
2023-01-24 15:05:25 +08:00
|
|
|
processSync(data);
|
2023-09-02 19:16:53 +08:00
|
|
|
if (data.code === 1) {
|
2023-03-05 15:08:25 +08:00
|
|
|
document.getElementById("toolbarSync").classList.add("fn__none");
|
2023-01-19 11:49:31 +08:00
|
|
|
}
|
2022-05-26 15:18:53 +08:00
|
|
|
break;
|
2023-01-24 13:21:23 +08:00
|
|
|
case "openFileById":
|
2023-05-18 19:27:21 +08:00
|
|
|
openMobileFileById(app, data.data.id, [Constants.CB_GET_FOCUS]);
|
2023-01-24 13:21:23 +08:00
|
|
|
break;
|
2022-05-26 15:18:53 +08:00
|
|
|
case"txerr":
|
2023-03-27 15:30:13 +08:00
|
|
|
transactionError();
|
2022-05-26 15:18:53 +08:00
|
|
|
break;
|
2022-08-28 12:41:49 +08:00
|
|
|
case"statusbar":
|
|
|
|
|
progressStatus(data);
|
|
|
|
|
break;
|
2022-05-26 15:18:53 +08:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|