deck display
This commit is contained in:
1 parent
6e609cc9fa
commit
37b3b61f79
9 files changed
+226
-58
No files matched your search
+7
-3
@@ -1,14 +1,16 @@
|
||||
import './style.css';
|
||||
import { renderHomePage } from './home-page.ts';
|
||||
import { renderDecksPage } from './decks-page.ts';
|
||||
import { renderSyncPage } from './sync-page.ts';
|
||||
import { initWorker } from './sqlite-api.ts';
|
||||
|
||||
// Каркас приложения: топ-бар + бургер-меню + две страницы (Главная / Синхронизация).
|
||||
// Каркас приложения: топ-бар + бургер-меню + страницы (Главная / Колоды / Синхронизация).
|
||||
|
||||
type Page = 'home' | 'sync';
|
||||
type Page = 'home' | 'decks' | 'sync';
|
||||
|
||||
const PAGE_TITLES: Record<Page, string> = {
|
||||
home: 'Главная',
|
||||
decks: 'Колоды',
|
||||
sync: 'Синхронизация',
|
||||
};
|
||||
|
||||
@@ -46,6 +48,8 @@ function renderPage(page: Page): void {
|
||||
setActiveButton(page);
|
||||
if (page === 'home') {
|
||||
renderHomePage(pageRoot, {});
|
||||
} else if (page === 'decks') {
|
||||
renderDecksPage(pageRoot);
|
||||
} else {
|
||||
renderSyncPage(pageRoot);
|
||||
}
|
||||
@@ -66,7 +70,7 @@ document.addEventListener('keydown', (e) => {
|
||||
drawer.querySelectorAll<HTMLButtonElement>('.drawer-btn').forEach((btn) => {
|
||||
btn.addEventListener('click', () => {
|
||||
const page = btn.dataset.page as Page | undefined;
|
||||
if (page === 'home' || page === 'sync') renderPage(page);
|
||||
if (page === 'home' || page === 'decks' || page === 'sync') renderPage(page);
|
||||
setDrawer(false);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user