feat: enhance DND nesting & promotion, isolated tags API, fix completion bounce UI, add Admin i18n switcher, refine typography & polish UX (v0.7.2)
Build and Push Docker Image / build-and-push (push) Successful in 9m59s

This commit is contained in:
2026-08-22 10:01:05 +09:00
parent 0f44090210
commit 8e5b9238e2
10 changed files with 189 additions and 76 deletions
+4 -2
View File
@@ -5,6 +5,7 @@ import { TaskList, Task, List, User } from "../tasks/TaskList";
import { useUserPrefs, usePrefsStyle } from "@/lib/useUserPrefs";
import { TaskDetail } from "../tasks/TaskDetail";
import { CommandPalette } from "../ui/CommandPalette";
import { useI18n } from "@/lib/i18n";
import {
getDemoStore,
saveDemoStore,
@@ -58,6 +59,7 @@ export function AppShell({ user, isDemo = false }: AppShellProps) {
const [showCompleted, setShowCompleted] = useState(false);
const [cmdPaletteOpen, setCmdPaletteOpen] = useState(false);
const [refreshKey, setRefreshKey] = useState(0);
const { t } = useI18n();
// Global user preferences (reactive)
const { prefs, updatePrefs } = useUserPrefs();
@@ -677,12 +679,12 @@ export function AppShell({ user, isDemo = false }: AppShellProps) {
<div className="undo-toast-content">
<span className="undo-toast-icon">🗑</span>
<span className="undo-toast-msg">
<strong>{undoToast.title || "할 일"}</strong>() .
<strong>{undoToast.title || t("tasks")}</strong> {t("taskUndoHint")}
</span>
</div>
<div className="undo-toast-actions">
<button type="button" className="undo-toast-btn" onClick={handleUndoDelete}>
{t("undoDelete")}
</button>
<button
type="button"