diff --git a/app/[locale]/layout.tsx b/app/[locale]/layout.tsx
index 5ac83a1..042eead 100644
--- a/app/[locale]/layout.tsx
+++ b/app/[locale]/layout.tsx
@@ -46,3 +46,7 @@ export default async function LocaleLayout({
);
}
+
+
+
+
diff --git a/app/[locale]/market/page.tsx b/app/[locale]/market/page.tsx
new file mode 100644
index 0000000..da8552f
--- /dev/null
+++ b/app/[locale]/market/page.tsx
@@ -0,0 +1,39 @@
+import Header from "@/components/Header";
+import { UnderConstruction } from "@/components/under-construction";
+import { getTranslations } from "next-intl/server";
+
+export async function generateMetadata({
+ params,
+}: {
+ params: Promise<{ locale: string }>;
+}) {
+ const { locale } = await params;
+ const t = await getTranslations({ locale, namespace: "underConstruction" });
+ return {
+ title: t("market.title"),
+ description: t("market.description"),
+ };
+}
+
+export default async function MarketPage({
+ params,
+}: {
+ params: Promise<{ locale: string }>;
+}) {
+ const { locale } = await params;
+ const t = await getTranslations({
+ locale,
+ namespace: "underConstruction.market",
+ });
+
+ return (
+
+
+
+
+ );
+}
diff --git a/app/[locale]/precos/page.tsx b/app/[locale]/precos/page.tsx
new file mode 100644
index 0000000..ed41a69
--- /dev/null
+++ b/app/[locale]/precos/page.tsx
@@ -0,0 +1,39 @@
+import Header from "@/components/Header";
+import { UnderConstruction } from "@/components/under-construction";
+import { getTranslations } from "next-intl/server";
+
+export async function generateMetadata({
+ params,
+}: {
+ params: Promise<{ locale: string }>;
+}) {
+ const { locale } = await params;
+ const t = await getTranslations({ locale, namespace: "underConstruction" });
+ return {
+ title: t("prices.title"),
+ description: t("prices.description"),
+ };
+}
+
+export default async function PricesPage({
+ params,
+}: {
+ params: Promise<{ locale: string }>;
+}) {
+ const { locale } = await params;
+ const t = await getTranslations({
+ locale,
+ namespace: "underConstruction.prices",
+ });
+
+ return (
+
+
+
+
+ );
+}
diff --git a/app/[locale]/sobre/page.tsx b/app/[locale]/sobre/page.tsx
new file mode 100644
index 0000000..c0c4b47
--- /dev/null
+++ b/app/[locale]/sobre/page.tsx
@@ -0,0 +1,39 @@
+import Header from "@/components/Header";
+import { UnderConstruction } from "@/components/under-construction";
+import { getTranslations } from "next-intl/server";
+
+export async function generateMetadata({
+ params,
+}: {
+ params: Promise<{ locale: string }>;
+}) {
+ const { locale } = await params;
+ const t = await getTranslations({ locale, namespace: "underConstruction" });
+ return {
+ title: t("about.title"),
+ description: t("about.description"),
+ };
+}
+
+export default async function AboutPage({
+ params,
+}: {
+ params: Promise<{ locale: string }>;
+}) {
+ const { locale } = await params;
+ const t = await getTranslations({
+ locale,
+ namespace: "underConstruction.about",
+ });
+
+ return (
+
+
+
+
+ );
+}
diff --git a/components/Header.tsx b/components/Header.tsx
index 9e9648d..cd12236 100644
--- a/components/Header.tsx
+++ b/components/Header.tsx
@@ -12,16 +12,17 @@ import { ThemeToggle } from "./theme-toggle";
import { LanguageSwitcher } from "./language-switcher";
import { MobileMenu } from "./mobile-menu";
import { cn } from "@/lib/utils";
-import { useTranslations } from "next-intl";
+import { useTranslations, useLocale } from "next-intl";
import Link from "next/link";
export default function Header() {
const t = useTranslations("header.nav");
+ const locale = useLocale();
const links = [
- { href: "/market", label: t("market") },
- { href: "/sobre", label: t("about") },
- { href: "/precos", label: t("prices") },
+ { href: `/${locale}/market`, label: t("market") },
+ { href: `/${locale}/sobre`, label: t("about") },
+ { href: `/${locale}/precos`, label: t("prices") },
];
return (
diff --git a/components/language-switcher.tsx b/components/language-switcher.tsx
index 183fad3..ca2461c 100644
--- a/components/language-switcher.tsx
+++ b/components/language-switcher.tsx
@@ -56,3 +56,7 @@ export function LanguageSwitcher() {
);
}
+
+
+
+
diff --git a/components/marketplace-filters.tsx b/components/marketplace-filters.tsx
index e81f3e6..68f7545 100644
--- a/components/marketplace-filters.tsx
+++ b/components/marketplace-filters.tsx
@@ -290,3 +290,7 @@ export function MarketplaceFilters({
);
}
+
+
+
+
diff --git a/components/mobile-menu.tsx b/components/mobile-menu.tsx
index e84b9eb..474d20e 100644
--- a/components/mobile-menu.tsx
+++ b/components/mobile-menu.tsx
@@ -62,3 +62,7 @@ export function MobileMenu({ links }: MobileMenuProps) {
);
}
+
+
+
+
diff --git a/components/sections/market-stats.tsx b/components/sections/market-stats.tsx
index f1667b2..ce82537 100644
--- a/components/sections/market-stats.tsx
+++ b/components/sections/market-stats.tsx
@@ -35,13 +35,13 @@ function MiniSparkline({ data, color }: { data: number[]; color: string }) {
}));
return (
-
+
-
+ {/* Background Pattern */}
+
+
+ {/* Content */}
+
+
+
+ {/* Icon */}
+
+
+ {/* Text */}
+
+ {title}
+
+
+ {description}
+
+
+ {/* Buttons */}
+
+
+
+
+
+
+
+
+
+
+ );
+}
diff --git a/i18n/request.ts b/i18n/request.ts
index 0727f1c..0612c92 100644
--- a/i18n/request.ts
+++ b/i18n/request.ts
@@ -12,3 +12,7 @@ export default getRequestConfig(async ({ requestLocale }) => {
};
});
+
+
+
+
diff --git a/i18n/routing.ts b/i18n/routing.ts
index aa119e3..1fe57a4 100644
--- a/i18n/routing.ts
+++ b/i18n/routing.ts
@@ -5,3 +5,7 @@ export const routing = defineRouting({
defaultLocale: "pt",
});
+
+
+
+
diff --git a/messages/en.json b/messages/en.json
index 492a67f..e496758 100644
--- a/messages/en.json
+++ b/messages/en.json
@@ -173,5 +173,19 @@
"viewDetails": "View Details",
"buyNow": "Buy Now"
}
+ },
+ "underConstruction": {
+ "market": {
+ "title": "Market Page Under Construction",
+ "description": "We're preparing an amazing experience for you to explore all available items. Coming soon!"
+ },
+ "about": {
+ "title": "About Page Under Construction",
+ "description": "Soon you'll learn all about Tibia Trade Pagodera's story and mission. Stay tuned!"
+ },
+ "prices": {
+ "title": "Prices Page Under Construction",
+ "description": "We're finalizing our pricing structure and plans. Check back soon!"
+ }
}
}
diff --git a/messages/pt.json b/messages/pt.json
index 36bde26..5e51667 100644
--- a/messages/pt.json
+++ b/messages/pt.json
@@ -173,5 +173,19 @@
"viewDetails": "Ver Detalhes",
"buyNow": "Comprar Agora"
}
+ },
+ "underConstruction": {
+ "market": {
+ "title": "Página do Mercado em Construção",
+ "description": "Estamos preparando uma experiência incrível para você explorar todos os itens disponíveis. Em breve!"
+ },
+ "about": {
+ "title": "Página Sobre em Construção",
+ "description": "Em breve você conhecerá toda a história e missão do Tibia Trade Pagodera. Aguarde!"
+ },
+ "prices": {
+ "title": "Página de Preços em Construção",
+ "description": "Estamos finalizando nossa estrutura de preços e planos. Volte em breve para conferir!"
+ }
}
}