diff --git a/app/[locale]/admin/items/new/page.tsx b/app/[locale]/admin/items/new/page.tsx index 8b124c1..490855d 100644 --- a/app/[locale]/admin/items/new/page.tsx +++ b/app/[locale]/admin/items/new/page.tsx @@ -1,12 +1,12 @@ import type { Metadata } from "next"; import { cookies } from "next/headers"; import { redirect } from "next/navigation"; -import Header from "@/components/Header"; import { AdminItemCreatePage } from "@/components/admin/items/AdminItemCreatePage"; -import { getSession } from "@/lib/redis/session"; -import { getUserById } from "@/lib/prisma/queries/users"; +import Header from "@/components/Header"; import { searchAdminItems } from "@/lib/prisma/queries/items"; import { getActiveServers } from "@/lib/prisma/queries/servers"; +import { getUserById } from "@/lib/prisma/queries/users"; +import { getSession } from "@/lib/redis/session"; export async function generateMetadata(): Promise { return { @@ -57,4 +57,3 @@ export default async function AdminNewItemPage({ ); } - diff --git a/app/[locale]/admin/page.tsx b/app/[locale]/admin/page.tsx index b27f80a..0889359 100644 --- a/app/[locale]/admin/page.tsx +++ b/app/[locale]/admin/page.tsx @@ -1,12 +1,12 @@ import type { Metadata } from "next"; import { cookies } from "next/headers"; import { redirect } from "next/navigation"; +import { AdminPanelTabs } from "@/components/admin/AdminPanelTabs"; import Header from "@/components/Header"; -import { getSession } from "@/lib/redis/session"; +import { searchAdminItems } from "@/lib/prisma/queries/items"; import { getAllSubscriptionTiers } from "@/lib/prisma/queries/subscription-tiers"; import { getUserById } from "@/lib/prisma/queries/users"; -import { AdminPanelTabs } from "@/components/admin/AdminPanelTabs"; -import { searchAdminItems } from "@/lib/prisma/queries/items"; +import { getSession } from "@/lib/redis/session"; export async function generateMetadata(): Promise { return { @@ -30,7 +30,8 @@ export default async function AdminPage({ searchParams instanceof Promise ? await searchParams : searchParams; const tabParam = resolvedSearchParams?.tab; const initialTab = - typeof tabParam === "string" && ["overview", "subscriptions", "items"].includes(tabParam) + typeof tabParam === "string" && + ["overview", "subscriptions", "items"].includes(tabParam) ? (tabParam as "overview" | "subscriptions" | "items") : "overview"; @@ -58,14 +59,24 @@ export default async function AdminPage({ ...tier, price_monthly: tier.price_monthly ? Number(tier.price_monthly) : null, price_yearly: tier.price_yearly ? Number(tier.price_yearly) : null, - created_at: tier.created_at instanceof Date ? tier.created_at.toISOString() : tier.created_at, - updated_at: tier.updated_at instanceof Date ? tier.updated_at.toISOString() : tier.updated_at, + created_at: + tier.created_at instanceof Date + ? tier.created_at.toISOString() + : tier.created_at, + updated_at: + tier.updated_at instanceof Date + ? tier.updated_at.toISOString() + : tier.updated_at, features: featureList.map((feature) => ({ ...feature, created_at: - feature.created_at instanceof Date ? feature.created_at.toISOString() : feature.created_at ?? null, + feature.created_at instanceof Date + ? feature.created_at.toISOString() + : (feature.created_at ?? null), updated_at: - feature.updated_at instanceof Date ? feature.updated_at.toISOString() : feature.updated_at ?? null, + feature.updated_at instanceof Date + ? feature.updated_at.toISOString() + : (feature.updated_at ?? null), })), }; }); @@ -75,9 +86,12 @@ export default async function AdminPage({
-

Painel administrativo

+

+ Painel administrativo +

- Centralize a gestão de planos, permissões e o catálogo de itens. Utilize as abas para acessar cada área temática. + Centralize a gestão de planos, permissões e o catálogo de itens. + Utilize as abas para acessar cada área temática.

@@ -92,4 +106,3 @@ export default async function AdminPage({ ); } - diff --git a/app/[locale]/admin/subscriptions/page.tsx b/app/[locale]/admin/subscriptions/page.tsx index 4ddf09a..b337f0a 100644 --- a/app/[locale]/admin/subscriptions/page.tsx +++ b/app/[locale]/admin/subscriptions/page.tsx @@ -4,8 +4,7 @@ import { redirect } from "next/navigation"; export async function generateMetadata(): Promise { return { title: "Assinaturas e Permissões", - description: - "Redirecionando para o painel administrativo centralizado.", + description: "Redirecionando para o painel administrativo centralizado.", }; } @@ -17,4 +16,3 @@ export default async function AdminSubscriptionsRedirect({ const { locale } = await params; redirect(`/${locale}/admin?tab=subscriptions`); } - diff --git a/app/[locale]/apoiar/obrigado/page.tsx b/app/[locale]/apoiar/obrigado/page.tsx index bc818c1..c8dda26 100644 --- a/app/[locale]/apoiar/obrigado/page.tsx +++ b/app/[locale]/apoiar/obrigado/page.tsx @@ -1,13 +1,13 @@ "use client"; -import { useEffect } from "react"; -import { useParams } from "next/navigation"; import confetti from "canvas-confetti"; -import Header from "@/components/Header"; -import { Button } from "@/components/ui/button"; -import { BlurFade } from "@/components/ui/blur-fade"; -import { Heart, Share2, Home } from "lucide-react"; +import { Heart, Home, Share2 } from "lucide-react"; import Link from "next/link"; +import { useParams } from "next/navigation"; +import { useEffect } from "react"; +import Header from "@/components/Header"; +import { BlurFade } from "@/components/ui/blur-fade"; +import { Button } from "@/components/ui/button"; export default function ThankYouPage() { const params = useParams(); diff --git a/app/[locale]/apoiar/page.tsx b/app/[locale]/apoiar/page.tsx index 684040c..6961624 100644 --- a/app/[locale]/apoiar/page.tsx +++ b/app/[locale]/apoiar/page.tsx @@ -1,20 +1,19 @@ -import Header from "@/components/Header"; +import { Heart } from "lucide-react"; +import type { Metadata } from "next"; +import { getTranslations } from "next-intl/server"; import { DonationCard } from "@/components/donation-card"; -import { BlurFade } from "@/components/ui/blur-fade"; -import { NumberTicker } from "@/components/ui/number-ticker"; -import { Badge } from "@/components/ui/badge"; -import { Button } from "@/components/ui/button"; +import Header from "@/components/Header"; +import { ShareButton } from "@/components/share-button"; import { Accordion, AccordionContent, AccordionItem, AccordionTrigger, } from "@/components/ui/accordion"; -import { Heart } from "lucide-react"; -import { getTranslations } from "next-intl/server"; -import Link from "next/link"; -import { ShareButton } from "@/components/share-button"; -import type { Metadata } from "next"; +import { Badge } from "@/components/ui/badge"; +import { BlurFade } from "@/components/ui/blur-fade"; +import { Button } from "@/components/ui/button"; +import { NumberTicker } from "@/components/ui/number-ticker"; export async function generateMetadata({ params, @@ -60,7 +59,7 @@ export default async function SupportPage({ }; // Custos mensais REAIS - const monthlyCosts = { + const _monthlyCosts = { vps: 69, // R$ 69/mês devHours: 40, // média horas/mês devRate: 50, // R$ 50/hora diff --git a/app/[locale]/layout.tsx b/app/[locale]/layout.tsx index 3154006..a073cc8 100644 --- a/app/[locale]/layout.tsx +++ b/app/[locale]/layout.tsx @@ -1,7 +1,7 @@ import type { Metadata } from "next"; +import Script from "next/script"; import { NextIntlClientProvider } from "next-intl"; import { getMessages, setRequestLocale } from "next-intl/server"; -import Script from "next/script"; import { ThemeProvider } from "@/components/theme-provider"; import { QueryProvider } from "@/lib/providers/query-provider"; @@ -113,14 +113,19 @@ export default async function LocaleLayout({ - -