feat: add EventList and HeaderBar with organize/undo/download
This commit is contained in:
21
src/App.vue
21
src/App.vue
@@ -1,6 +1,8 @@
|
||||
<script setup>
|
||||
import { useCalendar } from './composables/useCalendar.js'
|
||||
import DropZone from './components/DropZone.vue'
|
||||
import HeaderBar from './components/HeaderBar.vue'
|
||||
import EventList from './components/EventList.vue'
|
||||
|
||||
const { isLoaded } = useCalendar()
|
||||
</script>
|
||||
@@ -9,12 +11,16 @@ const { isLoaded } = useCalendar()
|
||||
<div class="app">
|
||||
<header class="app-header">
|
||||
<h1>📅 ICS 日程整理器</h1>
|
||||
<HeaderBar />
|
||||
</header>
|
||||
<main class="app-main">
|
||||
<DropZone v-if="!isLoaded" />
|
||||
<div v-else class="placeholder">
|
||||
<p>文件已加载(列表与编辑器待实现)</p>
|
||||
</div>
|
||||
<template v-else>
|
||||
<EventList />
|
||||
<div class="detail-area">
|
||||
<div class="empty">从左侧选择一个日程进行编辑</div>
|
||||
</div>
|
||||
</template>
|
||||
</main>
|
||||
</div>
|
||||
</template>
|
||||
@@ -38,11 +44,10 @@ body {
|
||||
}
|
||||
.app-header h1 { font-size: 18px; font-weight: 600; }
|
||||
.app-main { flex: 1; display: flex; overflow: hidden; }
|
||||
.placeholder {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
.detail-area { flex: 1; overflow-y: auto; }
|
||||
.empty {
|
||||
text-align: center;
|
||||
padding: 60px 20px;
|
||||
color: #95a5a6;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user