Add data-id attribute to the button of the doc menu #12518 (#12608)

* Add `data-id` attribute to the button of the common MenuItem

* Add `data-id` attribute to the button of the common Menu Item

* Add `data-id` attribute to the button of the common Menu Item

* Add `data-id` attribute to the button of the common Menu Item

* Add `data-id` attribute to the button of the doc tree menu

* rename

* openBy

* sort menu

* riff Card Menu
This commit is contained in:
Jeffrey Chen 2024-09-27 09:18:52 +08:00 committed by GitHub
parent 273b55dbf8
commit 8b0d10bbd4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 122 additions and 20 deletions

View file

@ -447,10 +447,12 @@ export const copySubMenu = (id: string, accelerator = true, focusElement?: Eleme
export const exportMd = (id: string) => { export const exportMd = (id: string) => {
return new MenuItem({ return new MenuItem({
id: "export",
label: window.siyuan.languages.export, label: window.siyuan.languages.export,
type: "submenu", type: "submenu",
icon: "iconUpload", icon: "iconUpload",
submenu: [{ submenu: [{
id: "exportTemplate",
label: window.siyuan.languages.template, label: window.siyuan.languages.template,
iconClass: "ft__error", iconClass: "ft__error",
icon: "iconMarkdown", icon: "iconMarkdown",
@ -520,6 +522,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportMarkdown",
label: "Markdown", label: "Markdown",
icon: "iconMarkdown", icon: "iconMarkdown",
click: () => { click: () => {
@ -532,6 +535,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportSiYuanZip",
label: "SiYuan .sy.zip", label: "SiYuan .sy.zip",
icon: "iconSiYuan", icon: "iconSiYuan",
click: () => { click: () => {
@ -544,6 +548,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportImage",
label: window.siyuan.languages.image, label: window.siyuan.languages.image,
icon: "iconImage", icon: "iconImage",
click: () => { click: () => {
@ -552,12 +557,14 @@ export const exportMd = (id: string) => {
}, },
/// #if !BROWSER /// #if !BROWSER
{ {
id: "exportPDF",
label: "PDF", label: "PDF",
icon: "iconPDF", icon: "iconPDF",
click: () => { click: () => {
saveExport({type: "pdf", id}); saveExport({type: "pdf", id});
} }
}, { }, {
id: "exportHTML_SiYuan",
label: "HTML (SiYuan)", label: "HTML (SiYuan)",
iconClass: "ft__error", iconClass: "ft__error",
icon: "iconHTML5", icon: "iconHTML5",
@ -565,22 +572,26 @@ export const exportMd = (id: string) => {
saveExport({type: "html", id}); saveExport({type: "html", id});
} }
}, { }, {
id: "exportHTML_Markdown",
label: "HTML (Markdown)", label: "HTML (Markdown)",
icon: "iconHTML5", icon: "iconHTML5",
click: () => { click: () => {
saveExport({type: "htmlmd", id}); saveExport({type: "htmlmd", id});
} }
}, { }, {
id: "exportWord",
label: "Word .docx", label: "Word .docx",
icon: "iconExact", icon: "iconExact",
click: () => { click: () => {
saveExport({type: "word", id}); saveExport({type: "word", id});
} }
}, { }, {
id: "exportMore",
label: window.siyuan.languages.more, label: window.siyuan.languages.more,
icon: "iconMore", icon: "iconMore",
type: "submenu", type: "submenu",
submenu: [{ submenu: [{
id: "exportReStructuredText",
label: "reStructuredText", label: "reStructuredText",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -592,6 +603,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportAsciiDoc",
label: "AsciiDoc", label: "AsciiDoc",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -603,6 +615,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportTextile",
label: "Textile", label: "Textile",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -614,6 +627,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportOPML",
label: "OPML", label: "OPML",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -625,6 +639,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportOrgMode",
label: "Org-Mode", label: "Org-Mode",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -636,6 +651,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportMediaWiki",
label: "MediaWiki", label: "MediaWiki",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -647,6 +663,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportODT",
label: "ODT", label: "ODT",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -658,6 +675,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportRTF",
label: "RTF", label: "RTF",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -669,6 +687,7 @@ export const exportMd = (id: string) => {
}); });
} }
}, { }, {
id: "exportEPUB",
label: "EPUB", label: "EPUB",
click: () => { click: () => {
const msgId = showMessage(window.siyuan.languages.exporting, -1); const msgId = showMessage(window.siyuan.languages.exporting, -1);
@ -814,6 +833,7 @@ export const renameMenu = (options: {
type: "notebook" | "file" type: "notebook" | "file"
}) => { }) => {
return new MenuItem({ return new MenuItem({
id: "rename",
accelerator: window.siyuan.config.keymap.editor.general.rename.custom, accelerator: window.siyuan.config.keymap.editor.general.rename.custom,
icon: "iconEdit", icon: "iconEdit",
label: window.siyuan.languages.rename, label: window.siyuan.languages.rename,
@ -825,6 +845,7 @@ export const renameMenu = (options: {
export const movePathToMenu = (paths: string[]) => { export const movePathToMenu = (paths: string[]) => {
return new MenuItem({ return new MenuItem({
id: "move",
label: window.siyuan.languages.move, label: window.siyuan.languages.move,
icon: "iconMove", icon: "iconMove",
accelerator: window.siyuan.config.keymap.general.move.custom, accelerator: window.siyuan.config.keymap.general.move.custom,

View file

@ -52,6 +52,7 @@ const initMultiMenu = (selectItemElements: NodeListOf<Element>, app: App) => {
}); });
if (blockIDs.length > 0) { if (blockIDs.length > 0) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "addToDatabase",
label: window.siyuan.languages.addToDatabase, label: window.siyuan.languages.addToDatabase,
accelerator: window.siyuan.config.keymap.general.addToDatabase.custom, accelerator: window.siyuan.config.keymap.general.addToDatabase.custom,
icon: "iconDatabase", icon: "iconDatabase",
@ -61,6 +62,7 @@ const initMultiMenu = (selectItemElements: NodeListOf<Element>, app: App) => {
}).element); }).element);
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "delete",
icon: "iconTrashcan", icon: "iconTrashcan",
label: window.siyuan.languages.delete, label: window.siyuan.languages.delete,
accelerator: "⌦", accelerator: "⌦",
@ -72,9 +74,10 @@ const initMultiMenu = (selectItemElements: NodeListOf<Element>, app: App) => {
if (blockIDs.length === 0) { if (blockIDs.length === 0) {
return window.siyuan.menus.menu; return window.siyuan.menus.menu;
} }
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_1", type: "separator"}).element);
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
const riffCardMenu = [{ const riffCardMenu = [{
id: "quickMakeCard",
iconHTML: "", iconHTML: "",
accelerator: window.siyuan.config.keymap.editor.general.quickMakeCard.custom, accelerator: window.siyuan.config.keymap.editor.general.quickMakeCard.custom,
label: window.siyuan.languages.quickMakeCard, label: window.siyuan.languages.quickMakeCard,
@ -90,6 +93,7 @@ const initMultiMenu = (selectItemElements: NodeListOf<Element>, app: App) => {
}]); }]);
} }
}, { }, {
id: "removeCard",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.removeCard, label: window.siyuan.languages.removeCard,
click: () => { click: () => {
@ -106,6 +110,7 @@ const initMultiMenu = (selectItemElements: NodeListOf<Element>, app: App) => {
}]; }];
if (window.siyuan.config.flashcard.deck) { if (window.siyuan.config.flashcard.deck) {
riffCardMenu.push({ riffCardMenu.push({
id: "addToDeck",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.addToDeck, label: window.siyuan.languages.addToDeck,
click: () => { click: () => {
@ -114,11 +119,12 @@ const initMultiMenu = (selectItemElements: NodeListOf<Element>, app: App) => {
}); });
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "riffCard",
label: window.siyuan.languages.riffCard, label: window.siyuan.languages.riffCard,
icon: "iconRiffCard", icon: "iconRiffCard",
submenu: riffCardMenu, submenu: riffCardMenu,
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_2", type: "separator"}).element);
} }
openEditorTab(app, blockIDs); openEditorTab(app, blockIDs);
if (app.plugins) { if (app.plugins) {
@ -163,6 +169,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
type: "notebook" type: "notebook"
})); }));
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "config",
label: window.siyuan.languages.config, label: window.siyuan.languages.config,
icon: "iconSettings", icon: "iconSettings",
click: () => { click: () => {
@ -197,6 +204,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
return true; return true;
}); });
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "sort",
icon: "iconSort", icon: "iconSort",
label: window.siyuan.languages.sort, label: window.siyuan.languages.sort,
type: "submenu", type: "submenu",
@ -205,10 +213,12 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
} }
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "riffCard",
label: window.siyuan.languages.riffCard, label: window.siyuan.languages.riffCard,
type: "submenu", type: "submenu",
icon: "iconRiffCard", icon: "iconRiffCard",
submenu: [{ submenu: [{
id: "spaceRepetition",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.spaceRepetition, label: window.siyuan.languages.spaceRepetition,
accelerator: window.siyuan.config.keymap.editor.general.spaceRepetition.custom, accelerator: window.siyuan.config.keymap.editor.general.spaceRepetition.custom,
@ -221,6 +231,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
/// #endif /// #endif
} }
}, { }, {
id: "manage",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.manage, label: window.siyuan.languages.manage,
click: () => { click: () => {
@ -233,6 +244,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
}).element); }).element);
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "search",
label: window.siyuan.languages.search, label: window.siyuan.languages.search,
accelerator: window.siyuan.config.keymap.general.search.custom, accelerator: window.siyuan.config.keymap.general.search.custom,
icon: "iconSearch", icon: "iconSearch",
@ -255,6 +267,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
}).element); }).element);
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "replace",
label: window.siyuan.languages.replace, label: window.siyuan.languages.replace,
accelerator: window.siyuan.config.keymap.general.replace.custom, accelerator: window.siyuan.config.keymap.general.replace.custom,
icon: "iconReplace", icon: "iconReplace",
@ -277,8 +290,9 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
}).element); }).element);
} }
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_1", type: "separator"}).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "close",
label: window.siyuan.languages.close, label: window.siyuan.languages.close,
icon: "iconClose", icon: "iconClose",
click: () => { click: () => {
@ -288,6 +302,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "delete",
icon: "iconTrashcan", icon: "iconTrashcan",
label: window.siyuan.languages.delete, label: window.siyuan.languages.delete,
accelerator: "⌦", accelerator: "⌦",
@ -296,9 +311,10 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
} }
}).element); }).element);
} }
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_2", type: "separator"}).element);
/// #if !BROWSER /// #if !BROWSER
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "showInFolder",
icon: "iconFolder", icon: "iconFolder",
label: window.siyuan.languages.showInFolder, label: window.siyuan.languages.showInFolder,
click: () => { click: () => {
@ -309,10 +325,12 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
genImportMenu(notebookId, "/"); genImportMenu(notebookId, "/");
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "export",
label: window.siyuan.languages.export, label: window.siyuan.languages.export,
type: "submenu", type: "submenu",
icon: "iconUpload", icon: "iconUpload",
submenu: [{ submenu: [{
id: "exportMarkdown",
label: "Markdown", label: "Markdown",
icon: "iconMarkdown", icon: "iconMarkdown",
click: () => { click: () => {
@ -326,6 +344,7 @@ export const initNavigationMenu = (app: App, liElement: HTMLElement) => {
}); });
} }
}, { }, {
id: "exportSiYuanZip",
label: "SiYuan .sy.zip", label: "SiYuan .sy.zip",
icon: "iconSiYuan", icon: "iconSiYuan",
click: () => { click: () => {
@ -378,6 +397,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
const topElement = hasTopClosestByTag(liElement, "UL"); const topElement = hasTopClosestByTag(liElement, "UL");
if (window.siyuan.config.fileTree.sort === 6 || (topElement && topElement.dataset.sortmode === "6")) { if (window.siyuan.config.fileTree.sort === 6 || (topElement && topElement.dataset.sortmode === "6")) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "newDocAbove",
icon: "iconBefore", icon: "iconBefore",
label: window.siyuan.languages.newDocAbove, label: window.siyuan.languages.newDocAbove,
click: () => { click: () => {
@ -400,6 +420,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "newDocBelow",
icon: "iconAfter", icon: "iconAfter",
label: window.siyuan.languages.newDocBelow, label: window.siyuan.languages.newDocBelow,
click: () => { click: () => {
@ -421,13 +442,15 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
}); });
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_1", type: "separator"}).element);
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "copy",
label: window.siyuan.languages.copy, label: window.siyuan.languages.copy,
type: "submenu", type: "submenu",
icon: "iconCopy", icon: "iconCopy",
submenu: (copySubMenu(id, false) as IMenu[]).concat([{ submenu: (copySubMenu(id, false) as IMenu[]).concat([{
id: "duplicate",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.duplicate, label: window.siyuan.languages.duplicate,
accelerator: window.siyuan.config.keymap.editor.general.duplicate.custom, accelerator: window.siyuan.config.keymap.editor.general.duplicate.custom,
@ -442,6 +465,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
Array.from(fileElement.querySelectorAll(".b3-list-item--focus")) Array.from(fileElement.querySelectorAll(".b3-list-item--focus"))
))); )));
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "addToDatabase",
label: window.siyuan.languages.addToDatabase, label: window.siyuan.languages.addToDatabase,
accelerator: window.siyuan.config.keymap.general.addToDatabase.custom, accelerator: window.siyuan.config.keymap.general.addToDatabase.custom,
icon: "iconDatabase", icon: "iconDatabase",
@ -450,6 +474,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "delete",
icon: "iconTrashcan", icon: "iconTrashcan",
label: window.siyuan.languages.delete, label: window.siyuan.languages.delete,
accelerator: "⌦", accelerator: "⌦",
@ -457,7 +482,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
deleteFiles(Array.from(fileElement.querySelectorAll(".b3-list-item--focus"))); deleteFiles(Array.from(fileElement.querySelectorAll(".b3-list-item--focus")));
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_2", type: "separator"}).element);
window.siyuan.menus.menu.append(renameMenu({ window.siyuan.menus.menu.append(renameMenu({
path: pathString, path: pathString,
notebookId, notebookId,
@ -465,6 +490,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
type: "file" type: "file"
})); }));
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "attr",
label: window.siyuan.languages.attr, label: window.siyuan.languages.attr,
icon: "iconAttr", icon: "iconAttr",
click() { click() {
@ -477,6 +503,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
}).element); }).element);
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
const riffCardMenu = [{ const riffCardMenu = [{
id: "spaceRepetition",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.spaceRepetition, label: window.siyuan.languages.spaceRepetition,
accelerator: window.siyuan.config.keymap.editor.general.spaceRepetition.custom, accelerator: window.siyuan.config.keymap.editor.general.spaceRepetition.custom,
@ -489,6 +516,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
/// #endif /// #endif
} }
}, { }, {
id: "manage",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.manage, label: window.siyuan.languages.manage,
click: () => { click: () => {
@ -502,6 +530,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
/// #endif /// #endif
} }
}, { }, {
id: "quickMakeCard",
iconHTML: "", iconHTML: "",
accelerator: window.siyuan.config.keymap.editor.general.quickMakeCard.custom, accelerator: window.siyuan.config.keymap.editor.general.quickMakeCard.custom,
label: window.siyuan.languages.quickMakeCard, label: window.siyuan.languages.quickMakeCard,
@ -517,6 +546,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
}]); }]);
} }
}, { }, {
id: "removeCard",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.removeCard, label: window.siyuan.languages.removeCard,
click: () => { click: () => {
@ -533,6 +563,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
}]; }];
if (window.siyuan.config.flashcard.deck) { if (window.siyuan.config.flashcard.deck) {
riffCardMenu.push({ riffCardMenu.push({
id: "addToDeck",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.addToDeck, label: window.siyuan.languages.addToDeck,
click: () => { click: () => {
@ -541,6 +572,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
}); });
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "riffCard",
label: window.siyuan.languages.riffCard, label: window.siyuan.languages.riffCard,
type: "submenu", type: "submenu",
icon: "iconRiffCard", icon: "iconRiffCard",
@ -548,6 +580,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
}).element); }).element);
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "search",
label: window.siyuan.languages.search, label: window.siyuan.languages.search,
icon: "iconSearch", icon: "iconSearch",
accelerator: window.siyuan.config.keymap.general.search.custom, accelerator: window.siyuan.config.keymap.general.search.custom,
@ -575,6 +608,7 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "replace",
label: window.siyuan.languages.replace, label: window.siyuan.languages.replace,
accelerator: window.siyuan.config.keymap.general.replace.custom, accelerator: window.siyuan.config.keymap.general.replace.custom,
icon: "iconReplace", icon: "iconReplace",
@ -601,11 +635,12 @@ export const initFileMenu = (app: App, notebookId: string, pathString: string, l
/// #endif /// #endif
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_3", type: "separator"}).element);
} }
openEditorTab(app, [id], notebookId, pathString); openEditorTab(app, [id], notebookId, pathString);
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "fileHistory",
label: window.siyuan.languages.fileHistory, label: window.siyuan.languages.fileHistory,
icon: "iconHistory", icon: "iconHistory",
click() { click() {
@ -652,6 +687,7 @@ export const genImportMenu = (notebookId: string, pathString: string) => {
/// #if !BROWSER /// #if !BROWSER
const importstdmd = (label: string, isDoc?: boolean) => { const importstdmd = (label: string, isDoc?: boolean) => {
return { return {
id: isDoc ? "importMarkdownDoc" : "importMarkdownFolder",
icon: isDoc ? "iconMarkdown" : "iconFolder", icon: isDoc ? "iconMarkdown" : "iconFolder",
label, label,
click: async () => { click: async () => {
@ -680,9 +716,11 @@ export const genImportMenu = (notebookId: string, pathString: string) => {
}; };
/// #endif /// #endif
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "import",
icon: "iconDownload", icon: "iconDownload",
label: window.siyuan.languages.import, label: window.siyuan.languages.import,
submenu: [{ submenu: [{
id: "importSiYuanZip",
icon: "iconSiYuan", icon: "iconSiYuan",
label: 'SiYuan .sy.zip<input class="b3-form__upload" type="file" accept="application/zip">', label: 'SiYuan .sy.zip<input class="b3-form__upload" type="file" accept="application/zip">',
bind: (element) => { bind: (element) => {
@ -709,90 +747,105 @@ export const genImportMenu = (notebookId: string, pathString: string) => {
export const sortMenu = (type: "notebooks" | "notebook", sortMode: number, clickEvent: (sort: number) => void) => { export const sortMenu = (type: "notebooks" | "notebook", sortMode: number, clickEvent: (sort: number) => void) => {
const sortMenu: IMenu[] = [{ const sortMenu: IMenu[] = [{
id: "fileNameASC",
icon: sortMode === 0 ? "iconSelect" : undefined, icon: sortMode === 0 ? "iconSelect" : undefined,
label: window.siyuan.languages.fileNameASC, label: window.siyuan.languages.fileNameASC,
click: () => { click: () => {
clickEvent(0); clickEvent(0);
} }
}, { }, {
id: "fileNameDESC",
icon: sortMode === 1 ? "iconSelect" : undefined, icon: sortMode === 1 ? "iconSelect" : undefined,
label: window.siyuan.languages.fileNameDESC, label: window.siyuan.languages.fileNameDESC,
click: () => { click: () => {
clickEvent(1); clickEvent(1);
} }
}, { }, {
id: "fileNameNatASC",
icon: sortMode === 4 ? "iconSelect" : undefined, icon: sortMode === 4 ? "iconSelect" : undefined,
label: window.siyuan.languages.fileNameNatASC, label: window.siyuan.languages.fileNameNatASC,
click: () => { click: () => {
clickEvent(4); clickEvent(4);
} }
}, { }, {
id: "fileNameNatDESC",
icon: sortMode === 5 ? "iconSelect" : undefined, icon: sortMode === 5 ? "iconSelect" : undefined,
label: window.siyuan.languages.fileNameNatDESC, label: window.siyuan.languages.fileNameNatDESC,
click: () => { click: () => {
clickEvent(5); clickEvent(5);
} }
}, {type: "separator"}, { }, {id: "separator_1", type: "separator"}, {
id: "createdASC",
icon: sortMode === 9 ? "iconSelect" : undefined, icon: sortMode === 9 ? "iconSelect" : undefined,
label: window.siyuan.languages.createdASC, label: window.siyuan.languages.createdASC,
click: () => { click: () => {
clickEvent(9); clickEvent(9);
} }
}, { }, {
id: "createdDESC",
icon: sortMode === 10 ? "iconSelect" : undefined, icon: sortMode === 10 ? "iconSelect" : undefined,
label: window.siyuan.languages.createdDESC, label: window.siyuan.languages.createdDESC,
click: () => { click: () => {
clickEvent(10); clickEvent(10);
} }
}, { }, {
id: "modifiedASC",
icon: sortMode === 2 ? "iconSelect" : undefined, icon: sortMode === 2 ? "iconSelect" : undefined,
label: window.siyuan.languages.modifiedASC, label: window.siyuan.languages.modifiedASC,
click: () => { click: () => {
clickEvent(2); clickEvent(2);
} }
}, { }, {
id: "modifiedDESC",
icon: sortMode === 3 ? "iconSelect" : undefined, icon: sortMode === 3 ? "iconSelect" : undefined,
label: window.siyuan.languages.modifiedDESC, label: window.siyuan.languages.modifiedDESC,
click: () => { click: () => {
clickEvent(3); clickEvent(3);
} }
}, {type: "separator"}, { }, {id: "separator_2", type: "separator"}, {
id: "refCountASC",
icon: sortMode === 7 ? "iconSelect" : undefined, icon: sortMode === 7 ? "iconSelect" : undefined,
label: window.siyuan.languages.refCountASC, label: window.siyuan.languages.refCountASC,
click: () => { click: () => {
clickEvent(7); clickEvent(7);
} }
}, { }, {
id: "refCountDESC",
icon: sortMode === 8 ? "iconSelect" : undefined, icon: sortMode === 8 ? "iconSelect" : undefined,
label: window.siyuan.languages.refCountDESC, label: window.siyuan.languages.refCountDESC,
click: () => { click: () => {
clickEvent(8); clickEvent(8);
} }
}, {type: "separator"}, { }, {id: "separator_3", type: "separator"}, {
id: "docSizeASC",
icon: sortMode === 11 ? "iconSelect" : undefined, icon: sortMode === 11 ? "iconSelect" : undefined,
label: window.siyuan.languages.docSizeASC, label: window.siyuan.languages.docSizeASC,
click: () => { click: () => {
clickEvent(11); clickEvent(11);
} }
}, { }, {
id: "docSizeDESC",
icon: sortMode === 12 ? "iconSelect" : undefined, icon: sortMode === 12 ? "iconSelect" : undefined,
label: window.siyuan.languages.docSizeDESC, label: window.siyuan.languages.docSizeDESC,
click: () => { click: () => {
clickEvent(12); clickEvent(12);
} }
}, {type: "separator"}, { }, {id: "separator_4", type: "separator"}, {
id: "subDocCountASC",
icon: sortMode === 13 ? "iconSelect" : undefined, icon: sortMode === 13 ? "iconSelect" : undefined,
label: window.siyuan.languages.subDocCountASC, label: window.siyuan.languages.subDocCountASC,
click: () => { click: () => {
clickEvent(13); clickEvent(13);
} }
}, { }, {
id: "subDocCountDESC",
icon: sortMode === 14 ? "iconSelect" : undefined, icon: sortMode === 14 ? "iconSelect" : undefined,
label: window.siyuan.languages.subDocCountDESC, label: window.siyuan.languages.subDocCountDESC,
click: () => { click: () => {
clickEvent(14); clickEvent(14);
} }
}, {type: "separator"}, { }, {id: "separator_5", type: "separator"}, {
id: "customSort",
icon: sortMode === 6 ? "iconSelect" : undefined, icon: sortMode === 6 ? "iconSelect" : undefined,
label: window.siyuan.languages.customSort, label: window.siyuan.languages.customSort,
click: () => { click: () => {
@ -801,6 +854,7 @@ export const sortMenu = (type: "notebooks" | "notebook", sortMode: number, click
}]; }];
if (type === "notebook") { if (type === "notebook") {
sortMenu.push({ sortMenu.push({
id: "sortByFiletree",
icon: sortMode === 15 ? "iconSelect" : undefined, icon: sortMode === 15 ? "iconSelect" : undefined,
label: window.siyuan.languages.sortByFiletree, label: window.siyuan.languages.sortByFiletree,
click: () => { click: () => {

View file

@ -36,6 +36,7 @@ export const exportAsset = (src: string) => {
export const openEditorTab = (app: App, ids: string[], notebookId?: string, pathString?: string) => { export const openEditorTab = (app: App, ids: string[], notebookId?: string, pathString?: string) => {
/// #if !MOBILE /// #if !MOBILE
const openSubmenus: IMenu[] = [{ const openSubmenus: IMenu[] = [{
id: "insertRight",
icon: "iconLayoutRight", icon: "iconLayoutRight",
label: window.siyuan.languages.insertRight, label: window.siyuan.languages.insertRight,
accelerator: ids.length === 1 ? `${updateHotkeyTip(window.siyuan.config.keymap.editor.general.insertRight.custom)}/${updateHotkeyTip("⌥" + window.siyuan.languages.click)}` : undefined, accelerator: ids.length === 1 ? `${updateHotkeyTip(window.siyuan.config.keymap.editor.general.insertRight.custom)}/${updateHotkeyTip("⌥" + window.siyuan.languages.click)}` : undefined,
@ -62,6 +63,7 @@ export const openEditorTab = (app: App, ids: string[], notebookId?: string, path
} }
} }
}, { }, {
id: "insertBottom",
icon: "iconLayoutBottom", icon: "iconLayoutBottom",
label: window.siyuan.languages.insertBottom, label: window.siyuan.languages.insertBottom,
accelerator: ids.length === 1 ? "⇧" + window.siyuan.languages.click : "", accelerator: ids.length === 1 ? "⇧" + window.siyuan.languages.click : "",
@ -90,6 +92,7 @@ export const openEditorTab = (app: App, ids: string[], notebookId?: string, path
}]; }];
if (window.siyuan.config.fileTree.openFilesUseCurrentTab) { if (window.siyuan.config.fileTree.openFilesUseCurrentTab) {
openSubmenus.push({ openSubmenus.push({
id: "openInNewTab",
label: window.siyuan.languages.openInNewTab, label: window.siyuan.languages.openInNewTab,
accelerator: ids.length === 1 ? "⌥⌘" + window.siyuan.languages.click : undefined, accelerator: ids.length === 1 ? "⌥⌘" + window.siyuan.languages.click : undefined,
click: () => { click: () => {
@ -118,6 +121,7 @@ export const openEditorTab = (app: App, ids: string[], notebookId?: string, path
} }
/// #if !BROWSER /// #if !BROWSER
openSubmenus.push({ openSubmenus.push({
id: "openByNewWindow",
label: window.siyuan.languages.openByNewWindow, label: window.siyuan.languages.openByNewWindow,
icon: "iconOpenWindow", icon: "iconOpenWindow",
click() { click() {
@ -127,8 +131,9 @@ export const openEditorTab = (app: App, ids: string[], notebookId?: string, path
} }
}); });
/// #endif /// #endif
openSubmenus.push({type: "separator"}); openSubmenus.push({id: "separator_1", type: "separator"});
openSubmenus.push({ openSubmenus.push({
id: "preview",
icon: "iconPreview", icon: "iconPreview",
label: window.siyuan.languages.preview, label: window.siyuan.languages.preview,
click: () => { click: () => {
@ -138,8 +143,9 @@ export const openEditorTab = (app: App, ids: string[], notebookId?: string, path
} }
}); });
/// #if !BROWSER /// #if !BROWSER
openSubmenus.push({type: "separator"}); openSubmenus.push({id: "separator_2", type: "separator"});
openSubmenus.push({ openSubmenus.push({
id: "showInFolder",
icon: "iconFolder", icon: "iconFolder",
label: window.siyuan.languages.showInFolder, label: window.siyuan.languages.showInFolder,
click: () => { click: () => {
@ -156,6 +162,7 @@ export const openEditorTab = (app: App, ids: string[], notebookId?: string, path
}); });
/// #endif /// #endif
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "openBy",
label: window.siyuan.languages.openBy, label: window.siyuan.languages.openBy,
icon: "iconOpen", icon: "iconOpen",
submenu: openSubmenus, submenu: openSubmenus,

View file

@ -40,16 +40,17 @@ export const emitOpenMenu = (options: {
}); });
if (pluginSubMenu.menus.length > 0) { if (pluginSubMenu.menus.length > 0) {
if (options.separatorPosition === "top") { if (options.separatorPosition === "top") {
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_pluginTop", type: "separator"}).element);
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "plugin",
label: window.siyuan.languages.plugin, label: window.siyuan.languages.plugin,
icon: "iconPlugin", icon: "iconPlugin",
type: "submenu", type: "submenu",
submenu: pluginSubMenu.menus, submenu: pluginSubMenu.menus,
}).element); }).element);
if (options.separatorPosition === "bottom") { if (options.separatorPosition === "bottom") {
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_pluginBottom", type: "separator"}).element);
} }
} }
}; };

View file

@ -37,6 +37,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
window.siyuan.menus.menu.remove(); window.siyuan.menus.menu.remove();
window.siyuan.menus.menu.element.setAttribute("data-name", "titleMenu"); window.siyuan.menus.menu.element.setAttribute("data-name", "titleMenu");
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "copy",
label: window.siyuan.languages.copy, label: window.siyuan.languages.copy,
icon: "iconCopy", icon: "iconCopy",
type: "submenu", type: "submenu",
@ -46,6 +47,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
window.siyuan.menus.menu.append(movePathToMenu([protyle.path])); window.siyuan.menus.menu.append(movePathToMenu([protyle.path]));
const range = getSelection().rangeCount > 0 ? getSelection().getRangeAt(0) : undefined; const range = getSelection().rangeCount > 0 ? getSelection().getRangeAt(0) : undefined;
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "addToDatabase",
label: window.siyuan.languages.addToDatabase, label: window.siyuan.languages.addToDatabase,
accelerator: window.siyuan.config.keymap.general.addToDatabase.custom, accelerator: window.siyuan.config.keymap.general.addToDatabase.custom,
icon: "iconDatabase", icon: "iconDatabase",
@ -54,6 +56,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "delete",
icon: "iconTrashcan", icon: "iconTrashcan",
label: window.siyuan.languages.delete, label: window.siyuan.languages.delete,
click: () => { click: () => {
@ -62,8 +65,9 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}).element); }).element);
} }
/// #if !MOBILE /// #if !MOBILE
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_1", type: "separator"}).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "outline",
icon: "iconAlignCenter", icon: "iconAlignCenter",
label: window.siyuan.languages.outline, label: window.siyuan.languages.outline,
accelerator: window.siyuan.config.keymap.editor.general.outline.custom, accelerator: window.siyuan.config.keymap.editor.general.outline.custom,
@ -72,6 +76,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "backlinks",
icon: "iconLink", icon: "iconLink",
label: window.siyuan.languages.backlinks, label: window.siyuan.languages.backlinks,
accelerator: window.siyuan.config.keymap.editor.general.backlinks.custom, accelerator: window.siyuan.config.keymap.editor.general.backlinks.custom,
@ -86,6 +91,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "graphView",
icon: "iconGraph", icon: "iconGraph",
label: window.siyuan.languages.graphView, label: window.siyuan.languages.graphView,
accelerator: window.siyuan.config.keymap.editor.general.graphView.custom, accelerator: window.siyuan.config.keymap.editor.general.graphView.custom,
@ -100,8 +106,9 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
} }
}).element); }).element);
/// #endif /// #endif
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_2", type: "separator"}).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "attr",
label: window.siyuan.languages.attr, label: window.siyuan.languages.attr,
icon: "iconAttr", icon: "iconAttr",
accelerator: window.siyuan.config.keymap.editor.general.attr.custom + "/" + updateHotkeyTip("⇧" + window.siyuan.languages.click), accelerator: window.siyuan.config.keymap.editor.general.attr.custom + "/" + updateHotkeyTip("⇧" + window.siyuan.languages.click),
@ -111,6 +118,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}).element); }).element);
if (!window.siyuan.config.readonly) { if (!window.siyuan.config.readonly) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "wechatReminder",
label: window.siyuan.languages.wechatReminder, label: window.siyuan.languages.wechatReminder,
icon: "iconMp", icon: "iconMp",
click() { click() {
@ -118,6 +126,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
} }
}).element); }).element);
const riffCardMenu: IMenu[] = [{ const riffCardMenu: IMenu[] = [{
id: "spaceRepetition",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.spaceRepetition, label: window.siyuan.languages.spaceRepetition,
accelerator: window.siyuan.config.keymap.editor.general.spaceRepetition.custom, accelerator: window.siyuan.config.keymap.editor.general.spaceRepetition.custom,
@ -127,6 +136,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}); });
} }
}, { }, {
id: "manage",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.manage, label: window.siyuan.languages.manage,
click: () => { click: () => {
@ -137,6 +147,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}); });
} }
}, { }, {
id: "quickMakeCard",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.quickMakeCard, label: window.siyuan.languages.quickMakeCard,
accelerator: window.siyuan.config.keymap.editor.general.quickMakeCard.custom, accelerator: window.siyuan.config.keymap.editor.general.quickMakeCard.custom,
@ -152,6 +163,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}]; }];
if (window.siyuan.config.flashcard.deck) { if (window.siyuan.config.flashcard.deck) {
riffCardMenu.push({ riffCardMenu.push({
id: "addToDeck",
iconHTML: "", iconHTML: "",
label: window.siyuan.languages.addToDeck, label: window.siyuan.languages.addToDeck,
click: () => { click: () => {
@ -160,6 +172,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}); });
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "riffCard",
label: window.siyuan.languages.riffCard, label: window.siyuan.languages.riffCard,
type: "submenu", type: "submenu",
icon: "iconRiffCard", icon: "iconRiffCard",
@ -167,6 +180,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
}).element); }).element);
} }
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "search",
label: window.siyuan.languages.search, label: window.siyuan.languages.search,
icon: "iconSearch", icon: "iconSearch",
accelerator: window.siyuan.config.keymap.general.search.custom, accelerator: window.siyuan.config.keymap.general.search.custom,
@ -196,10 +210,11 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
if (!protyle.disabled) { if (!protyle.disabled) {
transferBlockRef(protyle.block.rootID); transferBlockRef(protyle.block.rootID);
} }
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_3", type: "separator"}).element);
/// #if !MOBILE /// #if !MOBILE
if (!protyle.model) { if (!protyle.model) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "openBy",
label: window.siyuan.languages.openBy, label: window.siyuan.languages.openBy,
icon: "iconOpen", icon: "iconOpen",
click() { click() {
@ -214,6 +229,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
/// #endif /// #endif
/// #if !BROWSER /// #if !BROWSER
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "openByNewWindow",
label: window.siyuan.languages.openByNewWindow, label: window.siyuan.languages.openByNewWindow,
icon: "iconOpenWindow", icon: "iconOpenWindow",
click() { click() {
@ -221,6 +237,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
} }
}).element); }).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "showInFolder",
icon: "iconFolder", icon: "iconFolder",
label: window.siyuan.languages.showInFolder, label: window.siyuan.languages.showInFolder,
click: () => { click: () => {
@ -230,6 +247,7 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
/// #endif /// #endif
if (!protyle.disabled) { if (!protyle.disabled) {
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "fileHistory",
label: window.siyuan.languages.fileHistory, label: window.siyuan.languages.fileHistory,
icon: "iconHistory", icon: "iconHistory",
click() { click() {
@ -256,8 +274,9 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
separatorPosition: "top", separatorPosition: "top",
}); });
} }
window.siyuan.menus.menu.append(new MenuItem({type: "separator"}).element); window.siyuan.menus.menu.append(new MenuItem({id: "separator_4", type: "separator"}).element);
window.siyuan.menus.menu.append(new MenuItem({ window.siyuan.menus.menu.append(new MenuItem({
id: "updateAndCreatedAt",
iconHTML: "", iconHTML: "",
type: "readonly", type: "readonly",
// 不能换行,否则移动端间距过大 // 不能换行,否则移动端间距过大