feat: integrate Cloudinary image upload, Instagram Feed, and fix Next.js warnings

This commit is contained in:
2026-06-09 21:28:45 +03:00
parent 2b3392dcb1
commit a4ad9344a0
52 changed files with 4300 additions and 263 deletions
+1 -1
View File
@@ -37,7 +37,7 @@ export default async function LocaleLayout({
return (
<html lang={locale} data-scroll-behavior="smooth" className={`${marcellus.variable}`}>
<body className="bg-sand text-midnight font-body antialiased relative">
<body suppressHydrationWarning className="bg-sand text-midnight font-body antialiased relative">
<NextIntlClientProvider messages={messages}>
{children}
</NextIntlClientProvider>
+33 -6
View File
@@ -9,6 +9,14 @@ import Gallery from '@/components/Gallery';
import Contact from '@/components/Contact';
import Footer from '@/components/Footer';
import WhatsAppButton from '@/components/WhatsAppButton';
import WelcomePopup from '@/components/WelcomePopup';
import { getEvents } from '@/app/actions/events';
import { getGalleryImages } from '@/app/actions/gallery';
import { getContactSettings } from '@/app/actions/contact';
import { getBeachSettings } from '@/app/actions/beach';
import { getAboutSettings } from '@/app/actions/about';
import { getInstagramPosts } from '@/app/actions/instagram';
import InstagramFeed from '@/components/InstagramFeed';
export default async function Page({
params
@@ -16,20 +24,39 @@ export default async function Page({
params: Promise<{ locale: string }>
}) {
const { locale } = await params;
const eventsResult = await getEvents();
const dbEvents = eventsResult.success ? eventsResult.data : [];
const galleryResult = await getGalleryImages();
const dbGallery = galleryResult.success ? galleryResult.data : [];
const contactResult = await getContactSettings();
const dbContact = contactResult.success ? contactResult.data : null;
const beachResult = await getBeachSettings();
const dbBeach = beachResult.success ? beachResult.data : null;
const aboutResult = await getAboutSettings();
const dbAbout = aboutResult.success ? aboutResult.data : null;
const instaResult = await getInstagramPosts();
const instaPosts = instaResult.success ? instaResult.data : [];
return (
<main className="min-h-screen bg-cream selection:bg-turquoise selection:text-white">
<Navbar locale={locale} />
<Hero />
<About />
<Accommodation />
<Beach />
<About dbAbout={dbAbout} />
<Beach dbBeach={dbBeach} />
<Dining />
<Events />
<Gallery />
<Contact />
<Events dbEvents={dbEvents} />
<Gallery dbGallery={dbGallery} />
<InstagramFeed posts={instaPosts} />
<Contact dbContact={dbContact} />
<Footer />
<WhatsAppButton />
<WelcomePopup />
</main>
);
}