enhance(frontend): ナビゲーションバーのUIを改善

This commit is contained in:
Ebise Lutica 2023-04-11 14:33:48 +09:00 committed by NoriDev
parent bbca11cc60
commit e45ae000ed

View file

@ -62,6 +62,7 @@ import { i18n } from '@/i18n';
import { definePageMetadata } from '@/scripts/page-metadata';
import { eventBus } from '@/scripts/cherrypick/eventBus';
import { deepClone } from '@/scripts/clone';
import {MenuItem} from "@/types/menu";
const Sortable = defineAsyncComponent(() => import('vuedraggable').then(x => x.default));
@ -85,21 +86,32 @@ async function reloadAsk() {
} else eventBus.emit('hasRequireRefresh', true);
}
async function addItem() {
async function addItem(e: MouseEvent) {
const menu = Object.keys(navbarItemDef).filter(k => !defaultStore.state.menu.includes(k));
const { canceled, result: item } = await os.select({
title: i18n.ts.addItem,
items: [...menu.map(k => ({
value: k, text: navbarItemDef[k].title,
})), {
value: '-', text: i18n.ts.divider,
}],
});
if (canceled) return;
os.popupMenu([
...menu.map(k => ({
type: 'button',
text: navbarItemDef[k].title,
icon: navbarItemDef[k].icon,
action() {
items.value = [...items.value, {
id: Math.random().toString(),
type: item,
type: k,
}];
},
})), {
type: 'button',
text: i18n.ts.divider,
// Note:
icon: 'ti',
action() {
items.value = [...items.value, {
id: Math.random().toString(),
type: '-',
}];
},
},
], e.target || e.currentTarget);
}
function removeItem(index: number) {