feat: 优化表单验证、添加深色模式支持
This commit is contained in:
@@ -67,7 +67,7 @@ export default async function AdminRedPacketPage({ params }: Props) {
|
|||||||
|
|
||||||
<section className="rounded-lg border p-3">
|
<section className="rounded-lg border p-3">
|
||||||
<div className="text-gray-500 mb-1">红包规则</div>
|
<div className="text-gray-500 mb-1">红包规则</div>
|
||||||
<pre className="text-sm bg-gray-50 rounded p-2 overflow-x-auto">
|
<pre className="text-sm bg-gray-50 dark:bg-gray-900 rounded p-2 overflow-x-auto">
|
||||||
{JSON.stringify(redPacket.rule, null, 2)}
|
{JSON.stringify(redPacket.rule, null, 2)}
|
||||||
</pre>
|
</pre>
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ export function CreateRedPacketPage() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="min-h-screen bg-gray-100 px-4 py-6">
|
<div className="min-h-screen bg-gray-100 dark:bg-zinc-900 px-4 py-6">
|
||||||
<div className="mx-auto max-w-md space-y-5">
|
<div className="mx-auto max-w-md space-y-5">
|
||||||
<h1 className="text-center text-2xl font-semibold">创建红包</h1>
|
<h1 className="text-center text-2xl font-semibold">创建红包</h1>
|
||||||
|
|
||||||
@@ -318,7 +318,7 @@ export function CreateRedPacketPage() {
|
|||||||
/* ---------- UI helpers ---------- */
|
/* ---------- UI helpers ---------- */
|
||||||
|
|
||||||
function Card({ children }: { children: React.ReactNode }) {
|
function Card({ children }: { children: React.ReactNode }) {
|
||||||
return <div className="space-y-4 rounded-2xl bg-white p-4">{children}</div>
|
return <div className="space-y-4 rounded-2xl bg-white dark:bg-black p-4">{children}</div>
|
||||||
}
|
}
|
||||||
|
|
||||||
function Field({
|
function Field({
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ export default function RootLayout({
|
|||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
}>) {
|
}>) {
|
||||||
return (
|
return (
|
||||||
<html lang="en">
|
<html lang="en" className="dark">
|
||||||
<body
|
<body
|
||||||
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
|
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ export async function createRedPacket(
|
|||||||
|
|
||||||
count: payload.count,
|
count: payload.count,
|
||||||
|
|
||||||
currencyName: payload.currency.name,
|
currencyName: payload.currency.name.trim(),
|
||||||
currencyPrecision: payload.currency.precision,
|
currencyPrecision: payload.currency.precision,
|
||||||
|
|
||||||
rule: payload.rule,
|
rule: payload.rule,
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ export function validateCreateRedPacketPayload(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* 金额单位 */
|
/* 金额单位 */
|
||||||
if (!currency.name) {
|
if (!currency.name.trim()) {
|
||||||
return { ok: false, message: "金额单位名称不能为空" }
|
return { ok: false, message: "金额单位名称不能为空" }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user