From 51e74eee043e53d661a788ac252819b53de2e972 Mon Sep 17 00:00:00 2001 From: gunshiz Date: Wed, 2 Sep 2026 21:21:03 +0700 Subject: [PATCH] fix(admin) : clarify validation and normalize percent input --- components/admin/autosave-status.tsx | 7 ++- components/admin/guide-overview-form.tsx | 4 +- components/admin/guide-section-editor.tsx | 20 ++++--- lib/guides/percent-input.test.ts | 17 ++++++ lib/guides/percent-input.ts | 10 ++++ lib/guides/validation-messages.test.ts | 17 ++++++ lib/guides/validation-messages.ts | 72 +++++++++++++++++++++++ 7 files changed, 133 insertions(+), 14 deletions(-) create mode 100644 lib/guides/percent-input.test.ts create mode 100644 lib/guides/percent-input.ts create mode 100644 lib/guides/validation-messages.test.ts create mode 100644 lib/guides/validation-messages.ts diff --git a/components/admin/autosave-status.tsx b/components/admin/autosave-status.tsx index 2bbfbae..bbd2944 100644 --- a/components/admin/autosave-status.tsx +++ b/components/admin/autosave-status.tsx @@ -1,7 +1,7 @@ import { AlertCircleIcon, CheckIcon, ClockIcon } from "lucide-react"; import { useState } from "react"; -import { Alert, AlertDescription } from "@/components/ui/alert"; +import { Alert, AlertDescription, AlertTitle } from "@/components/ui/alert"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Spinner } from "@/components/ui/spinner"; @@ -14,13 +14,14 @@ export function AutosaveStatus({ state, issues = [], onSave }: { state: Autosave if (state === "unsaved") return Waiting to save…; if (state === "incomplete") return
{showIssues ?