feat: TranslationHub, Pair-Review-Button (Action-Bar), reviewed für Bilder
- TranslationHub (/translations): Coverage-Matrix, Batch-Übersetzen pro Tabelle×Sprache - Pair Status: StatusSelect ersetzt durch Action-Bar ✓Reviewed/↩Draft/🚫Block, Reviewed kaskadiert via /pairs/:id/review (Backend prüft 3-Sprachen-Vollständigkeit) - Top-Nav: 'Übersetzungen' zwischen Inhalte und Audio - Dashboard: Übersetzungen-Kachel - tables.js: pictures-Status um 'reviewed' erweitert Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -10,6 +10,7 @@ import AudioHub from './pages/AudioHub';
|
||||
import WordGenerator from './pages/WordGenerator';
|
||||
import Publish from './pages/Publish';
|
||||
import Settings from './pages/Settings';
|
||||
import TranslationHub from './pages/TranslationHub';
|
||||
|
||||
function RequireAuth({ children }) {
|
||||
const user = getUser();
|
||||
@@ -28,6 +29,7 @@ export default function App() {
|
||||
<Route path="/content" element={<RequireAuth><ContentHub /></RequireAuth>} />
|
||||
<Route path="/content/creation" element={<RequireAuth><ContentCreation /></RequireAuth>} />
|
||||
<Route path="/audio" element={<RequireAuth><AudioHub /></RequireAuth>} />
|
||||
<Route path="/translations" element={<RequireAuth><TranslationHub /></RequireAuth>} />
|
||||
<Route path="/content/words" element={<RequireAuth><WordGenerator /></RequireAuth>} />
|
||||
<Route path="/publish" element={<RequireAuth><Publish /></RequireAuth>} />
|
||||
<Route path="/settings" element={<RequireAuth><Settings /></RequireAuth>} />
|
||||
|
||||
Reference in New Issue
Block a user