update
This commit is contained in:
@@ -4,6 +4,8 @@ import { fetchProjekte } from './api.js'
|
||||
import SeitenLeiste from './components/SeitenLeiste.vue'
|
||||
import FeatureListe from './components/FeatureListe.vue'
|
||||
import KontextMenue from './components/KontextMenue.vue'
|
||||
import PruefPanel from './components/PruefPanel.vue'
|
||||
import { offen as pruefungOffen, starte as startePruefung, schliesse as schliessePruefung } from './composables/pruefung.js'
|
||||
|
||||
const projekte = ref([])
|
||||
const aktivesProjekt = ref(null)
|
||||
@@ -29,6 +31,9 @@ function umbenannt(alt, neu) {
|
||||
ladeProjekte()
|
||||
}
|
||||
|
||||
// Prüfung gehört zum Projekt — beim Wechsel wird sie verworfen
|
||||
watch(aktivesProjekt, () => { if (pruefungOffen.value) schliessePruefung() })
|
||||
|
||||
// Zuletzt aktives Projekt überlebt das Neuladen
|
||||
watch(aktivesProjekt, name => {
|
||||
if (name) localStorage.setItem('aktivesProjekt', name)
|
||||
@@ -51,7 +56,7 @@ onMounted(async () => {
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="raster">
|
||||
<div class="raster" :class="{ pruefung: pruefungOffen }">
|
||||
<SeitenLeiste
|
||||
:projekte="projekte"
|
||||
:aktiv="aktivesProjekt"
|
||||
@@ -59,6 +64,12 @@ onMounted(async () => {
|
||||
@geaendert="ladeProjekte"
|
||||
@umbenannt="umbenannt"
|
||||
>
|
||||
<button
|
||||
v-if="aktivesProjekt"
|
||||
class="icon-knopf"
|
||||
title="Karten prüfen"
|
||||
@click="startePruefung(aktivesProjekt)"
|
||||
>⌾</button>
|
||||
<button class="icon-knopf" :title="dunkel ? 'Hellmodus' : 'Dunkelmodus'" @click="wechsleDarkMode">
|
||||
{{ dunkel ? '☀' : '☾' }}
|
||||
</button>
|
||||
@@ -70,6 +81,7 @@ onMounted(async () => {
|
||||
<p v-else-if="!meldung" class="leer">Projekt wählen oder anlegen.</p>
|
||||
</main>
|
||||
|
||||
<PruefPanel v-if="pruefungOffen" />
|
||||
<KontextMenue />
|
||||
</div>
|
||||
</template>
|
||||
@@ -80,6 +92,7 @@ onMounted(async () => {
|
||||
grid-template-columns: 220px 1fr;
|
||||
min-height: 100vh;
|
||||
}
|
||||
.raster.pruefung { grid-template-columns: 220px 1fr 260px; }
|
||||
main {
|
||||
padding: 1.2rem 1.5rem;
|
||||
min-width: 0;
|
||||
|
||||
Reference in New Issue
Block a user