import {Constants} from "../constants"; import {showMessage} from "../dialog/message"; import {isMobile} from "./functions"; import {fetchPost} from "./fetch"; import {Dialog} from "../dialog"; import {getOpenNotebookCount} from "./pathName"; import {validateName} from "../editor/rename"; import {setStorageVal} from "../protyle/util/compatibility"; import {openFileById} from "../editor/util"; import {openMobileFileById} from "../mobile/editor"; import {App} from "../index"; export const fetchNewDailyNote = (app: App, notebook: string) => { fetchPost("/api/filetree/createDailyNote", { notebook, app: Constants.SIYUAN_APPID, }, (response) => { /// #if MOBILE openMobileFileById(app, response.data.id); /// #else openFileById({app, id: response.data.id, action: [Constants.CB_GET_FOCUS]}); /// #endif }); }; export const newDailyNote = (app: App) => { const exit = window.siyuan.dialogs.find(item => { if (item.element.getAttribute("data-key") === Constants.DIALOG_DIALYNOTE) { item.destroy(); return true; } }); if (exit) { return; } const openCount = getOpenNotebookCount(); if (openCount === 0) { showMessage(window.siyuan.languages.newFileTip); return; } if (openCount === 1) { let notebookId = ""; window.siyuan.notebooks.find(item => { if (!item.closed) { notebookId = item.id; } }); fetchNewDailyNote(app, notebookId); return; } const localNotebookId = window.siyuan.storage[Constants.LOCAL_DAILYNOTEID]; const localNotebookIsOpen = window.siyuan.notebooks.find((item) => { if (item.id === localNotebookId && !item.closed) { return true; } }); if (localNotebookId && localNotebookIsOpen && !isMobile()) { fetchNewDailyNote(app, localNotebookId); } else { let optionsHTML = ""; window.siyuan.notebooks.forEach(item => { if (!item.closed) { optionsHTML += ``; } }); const dialog = new Dialog({ positionId: Constants.DIALOG_DIALYNOTE, title: window.siyuan.languages.plsChoose, content: `