From 47c04de6feeb7b00eb0b045a7a8524ecae0834e2 Mon Sep 17 00:00:00 2001 From: Evandro Fonseca Junior Date: Tue, 11 Nov 2025 03:08:36 -0300 Subject: [PATCH] style: clean up code formatting and remove trailing whitespace refactor: reorganize imports and fix type imports --- app/[locale]/admin/items/new/page.tsx | 7 +- app/[locale]/admin/page.tsx | 35 +- app/[locale]/admin/subscriptions/page.tsx | 4 +- app/[locale]/apoiar/obrigado/page.tsx | 12 +- app/[locale]/apoiar/page.tsx | 21 +- app/[locale]/layout.tsx | 17 +- app/[locale]/library/LibraryClient.tsx | 139 +- app/[locale]/library/page.tsx | 26 +- app/[locale]/market/MarketClient.tsx | 460 ++++--- app/[locale]/market/analytics/page.tsx | 6 +- app/[locale]/market/page.tsx | 50 +- app/[locale]/page.tsx | 6 +- app/[locale]/precos/page.tsx | 6 +- app/[locale]/sobre/page.tsx | 4 +- .../admin/categories/[name]/fields/route.ts | 28 +- app/api/admin/categories/route.ts | 40 +- app/api/admin/items/analyze/route.ts | 12 +- app/api/admin/items/route.ts | 132 +- app/api/auth/login/route.ts | 44 +- app/api/auth/me/route.ts | 17 +- app/api/auth/refresh/route.ts | 15 +- app/api/auth/register/route.ts | 51 +- app/api/auth/session/route.ts | 53 +- app/api/chats/[chatId]/messages/route.ts | 74 +- app/api/chats/[chatId]/route.ts | 18 +- app/api/chats/mark-all-read/route.ts | 12 +- app/api/chats/route.ts | 33 +- app/api/chats/unread-count/route.ts | 6 +- app/api/donations/create/route.ts | 16 +- app/api/donations/status/route.ts | 8 +- app/api/donations/verify/route.ts | 8 +- app/api/images/route.ts | 54 +- app/api/items/categories/route.ts | 9 +- app/api/items/route.ts | 28 +- app/api/listings/[id]/activate/route.ts | 23 +- app/api/listings/[id]/bid/route.ts | 47 +- app/api/listings/[id]/bids/route.ts | 21 +- app/api/listings/[id]/favorite/route.ts | 40 +- .../[id]/intentions/[intentionId]/route.ts | 117 +- app/api/listings/[id]/intentions/route.ts | 110 +- app/api/listings/[id]/mark-sold/route.ts | 57 +- app/api/listings/[id]/pause/route.ts | 23 +- app/api/listings/[id]/purchase/route.ts | 74 +- app/api/listings/[id]/route.ts | 97 +- app/api/listings/[id]/seller/route.ts | 26 +- app/api/listings/[id]/views/route.ts | 17 +- app/api/listings/my/route.ts | 12 +- app/api/listings/route.ts | 44 +- app/api/notifications/[id]/read/route.ts | 17 +- app/api/notifications/route.ts | 21 +- app/api/notifications/unread-count/route.ts | 9 +- .../[intentionId]/payment-method/route.ts | 75 +- app/api/purchase-intentions/my/route.ts | 26 +- app/api/servers/route.ts | 9 +- app/api/socket/route.ts | 1 - app/api/subscription-tiers/[id]/route.ts | 46 +- app/api/subscription-tiers/assign/route.ts | 44 +- app/api/subscription-tiers/route.ts | 17 +- app/api/telemetry/route.ts | 55 +- app/api/users/[id]/route.ts | 19 +- app/api/users/characters/[id]/route.ts | 66 +- app/api/users/characters/route.ts | 30 +- app/api/users/me/route.ts | 27 +- app/api/webhooks/abacatepay/route.ts | 13 +- app/layout.tsx | 16 +- app/sitemap.ts | 2 +- components/Header.tsx | 64 +- components/admin/AdminPanelTabs.tsx | 40 +- components/admin/AdminSubscriptionTab.tsx | 5 +- .../admin/items/AdminItemCreatePage.tsx | 26 +- .../admin/items/AdminItemCreateView.tsx | 13 +- components/admin/items/AdminItemForm.tsx | 1200 ++++++++++++----- components/admin/items/AdminItemManager.tsx | 255 +++- components/admin/items/ItemAiAssistant.tsx | 132 +- components/admin/items/ItemCreationModal.tsx | 2 + components/admin/items/ItemImageCapture.tsx | 3 +- components/admin/subscription-dashboard.tsx | 145 +- components/auth/login-dialog.tsx | 5 +- components/auth/register-dialog.tsx | 138 +- components/chat/ChatHeader.tsx | 28 +- components/chat/ChatModal.tsx | 15 +- components/chat/MessageBubble.tsx | 13 +- components/chat/MessageInput.tsx | 9 +- components/chat/MessageList.tsx | 11 +- components/donation-card.tsx | 53 +- components/donation-footer-card.tsx | 8 +- components/item-card.tsx | 320 +++-- components/language-switcher.tsx | 12 +- components/marketplace-filters.tsx | 98 +- components/marketplace/AdCard.tsx | 763 +++++++---- components/marketplace/AnalyticsDashboard.tsx | 14 +- components/marketplace/AuctionCountdown.tsx | 19 +- components/marketplace/BidModal.tsx | 114 +- components/marketplace/CreateAdModal.tsx | 46 +- .../marketplace/IntentionDetailModal.tsx | 119 +- components/marketplace/ItemSearch.tsx | 65 +- .../marketplace/ListingDetailsModal.tsx | 252 +++- components/marketplace/MyAdsIntentionList.tsx | 64 +- components/marketplace/MyAdsPanel.tsx | 140 +- .../marketplace/MyPurchaseIntentionsPanel.tsx | 480 ++++--- components/marketplace/PurchaseModal.tsx | 131 +- components/marketplace/SellerInfo.tsx | 17 +- components/messages/ChatListItem.tsx | 17 +- components/messages/MessagesBell.tsx | 10 +- components/messages/MessagesPanel.tsx | 38 +- components/mobile-menu.tsx | 15 +- components/notifications/NotificationBell.tsx | 21 +- .../notifications/NotificationDropdown.tsx | 28 +- components/offer-card.tsx | 26 +- .../ChangePaymentMethodButton.tsx | 34 +- components/sections/escrow-banner.tsx | 2 +- components/sections/escrow-explanation.tsx | 24 +- components/sections/featured-items.tsx | 17 +- components/sections/hero-section.tsx | 4 +- components/sections/how-it-works.tsx | 4 +- components/sections/market-example.tsx | 16 +- components/sections/market-offers.tsx | 4 +- components/sections/market-stats.tsx | 20 +- components/theme-provider.tsx | 2 +- components/theme-toggle.tsx | 11 +- components/ui/accordion.tsx | 4 +- components/ui/animated-gradient-text.tsx | 14 +- components/ui/animated-list.tsx | 46 +- components/ui/avatar.tsx | 20 +- components/ui/badge.tsx | 18 +- components/ui/bento-grid.tsx | 9 +- components/ui/blur-fade.tsx | 50 +- components/ui/button.tsx | 20 +- components/ui/card.tsx | 26 +- components/ui/checkbox.tsx | 19 +- components/ui/dialog.tsx | 12 +- components/ui/dot-pattern.tsx | 65 +- components/ui/dropdown-menu.tsx | 71 +- components/ui/globe.tsx | 84 +- components/ui/input.tsx | 10 +- components/ui/label.tsx | 5 +- components/ui/magic-card.tsx | 73 +- components/ui/morphing-text.tsx | 122 +- components/ui/navigation-menu.tsx | 48 +- components/ui/neon-gradient-card.tsx | 62 +- components/ui/number-ticker.tsx | 44 +- components/ui/particles.tsx | 293 ++-- components/ui/price-display.tsx | 2 +- components/ui/select.tsx | 59 +- components/ui/separator.tsx | 14 +- components/ui/sheet.tsx | 43 +- components/ui/shimmer-button.tsx | 39 +- components/ui/shine-border.tsx | 16 +- components/ui/skeleton.tsx | 5 - components/ui/tabs.tsx | 22 +- components/ui/textarea.tsx | 4 +- components/ui/word-rotate.tsx | 28 +- components/under-construction.tsx | 6 +- i18n/request.ts | 5 - i18n/routing.ts | 5 - lib/abacatepay.ts | 12 +- lib/ai/generate-item-structure.ts | 33 +- lib/ai/item-prompt.ts | 26 +- lib/ai/token-pricing.ts | 10 +- lib/ai/token-usage.ts | 6 +- lib/auth/jwt.ts | 11 +- lib/auth/middleware.ts | 34 +- lib/auth/password.ts | 3 +- lib/background-jobs/telemetry-aggregator.ts | 13 +- lib/chat/system-messages.ts | 15 +- lib/currency-utils.ts | 2 +- lib/db/index.ts | 34 +- lib/db/migrations/run-migrations.ts | 25 +- lib/db/queries/bids.ts | 11 +- lib/db/queries/characters.ts | 27 +- lib/db/queries/items.ts | 15 +- lib/db/queries/listings.ts | 171 ++- lib/db/queries/notifications.ts | 38 +- lib/db/queries/servers.ts | 31 +- lib/db/queries/telemetry.ts | 90 +- lib/db/queries/transactions.ts | 26 +- lib/db/queries/users.ts | 27 +- lib/db/seeds/servers-seed.ts | 16 +- lib/db/test-connection.ts | 19 +- lib/hooks/use-chat.ts | 44 +- lib/hooks/use-listings.ts | 1 - lib/hooks/use-purchase-intentions.ts | 41 +- lib/hooks/use-servers.ts | 6 +- lib/hooks/use-session-query.ts | 1 - lib/hooks/use-session.ts | 3 +- lib/hooks/use-socket.ts | 24 +- lib/hooks/use-telemetry.ts | 34 +- lib/image/resize.ts | 1 - lib/item-images.ts | 27 +- lib/items-db.ts | 87 +- lib/items/import-from-sqlite.ts | 54 +- lib/items/sqlite-manager.ts | 47 +- lib/mock-data.ts | 2 +- lib/mongodb/connection.ts | 5 +- lib/mongodb/models/Chat.ts | 11 +- lib/mongodb/models/Message.ts | 10 +- lib/payment-cache.ts | 2 +- lib/payment-helper.ts | 2 +- lib/prisma/app.ts | 1 - lib/prisma/items-queries.ts | 74 +- lib/prisma/items.ts | 4 +- lib/prisma/queries/bids.ts | 23 +- lib/prisma/queries/characters.ts | 35 +- lib/prisma/queries/favorites.ts | 41 +- lib/prisma/queries/items.ts | 110 +- lib/prisma/queries/listings.ts | 256 +++- lib/prisma/queries/notifications.ts | 27 +- lib/prisma/queries/purchase-intentions.ts | 54 +- lib/prisma/queries/servers.ts | 82 +- lib/prisma/queries/subscription-tiers.ts | 24 +- lib/prisma/queries/telemetry.ts | 71 +- lib/prisma/queries/transactions.ts | 64 +- lib/prisma/queries/users.ts | 25 +- lib/providers/query-provider.tsx | 3 +- lib/rate-limiter.ts | 31 +- lib/redis/index.ts | 7 +- lib/redis/session.ts | 10 +- lib/secure-logger.ts | 4 +- lib/socket/server.ts | 183 +-- lib/telemetry/MarketTelemetry.ts | 85 +- lib/utils.ts | 13 +- lib/utils/countries.ts | 1 - lib/utils/formatters.ts | 75 +- lib/validation-schemas.ts | 348 ++--- lib/validation/chat-schemas.ts | 7 +- lib/validators/document-validator.ts | 16 +- messages/en.json | 8 +- messages/pt.json | 8 +- scripts/populate-items-table.ts | 9 +- server.ts | 5 +- tests/run-tests.ts | 4 +- types/item.ts | 6 +- 232 files changed, 7140 insertions(+), 4798 deletions(-) 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({ - -