fix: eslint
This commit is contained in:
parent
fc2dac0241
commit
b44e3356db
@ -13,10 +13,9 @@ const eslintConfig = [
|
||||
...compat.extends("next/core-web-vitals", "next/typescript"),
|
||||
{
|
||||
rules: {
|
||||
"@typescript-eslint/no-unused-vars": "warn",
|
||||
"@typescript-eslint/no-explicit-any": "off",
|
||||
"@typescript-eslint/ban-ts-comment": "off",
|
||||
"@next/next/no-html-link-for-pages": "off"
|
||||
"@next/next/no-html-link-for-pages": "off",
|
||||
},
|
||||
},
|
||||
];
|
||||
|
@ -1,6 +1,6 @@
|
||||
import Blogs from "@/components/Blogs/Blogs";
|
||||
import Parallax from "./home-bg-video/page";
|
||||
import Homepage from "@/components/Homepage";
|
||||
import { BeforeFooterBlock } from "@/components/Blocks/BeforeFooter";
|
||||
|
||||
export const metadata = {
|
||||
title: "HomePage - Cochise Oncology",
|
||||
@ -30,6 +30,7 @@ export default function Home() {
|
||||
<>
|
||||
<Parallax />
|
||||
<Homepage />
|
||||
<BeforeFooterBlock />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
@ -1,9 +1,4 @@
|
||||
import Facts from "@/components/Facts";
|
||||
import Testimonials from "@/components/Testimonials";
|
||||
import TestimonialsDark from "@/components/TestimonialsDark";
|
||||
import { features4 } from "@/data/features";
|
||||
import Image from "next/image";
|
||||
import Link from "next/link";
|
||||
|
||||
export const metadata = {
|
||||
title: "Slick About Dark || Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
|
@ -4,28 +4,17 @@ import Image from "next/image";
|
||||
import Link from "next/link";
|
||||
|
||||
export const metadata = {
|
||||
title:
|
||||
"Slick Portfolio || Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
description:
|
||||
"Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
title: "Slick Portfolio || Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
description: "Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
};
|
||||
const onePage = false;
|
||||
const dark = false;
|
||||
export default function SlickPortfolioPage() {
|
||||
return (
|
||||
<>
|
||||
<section
|
||||
className="page-section bg-gradient-gray-light-1 bg-scroll overflow-hidden"
|
||||
id="home"
|
||||
>
|
||||
<section className="page-section bg-gradient-gray-light-1 bg-scroll overflow-hidden" id="home">
|
||||
{/* <!-- Background Shape --> */}
|
||||
<div className="bg-shape-1 wow fadeIn">
|
||||
<Image
|
||||
src="/assets/images/demo-fancy/bg-shape-1.svg"
|
||||
width={1443}
|
||||
height={844}
|
||||
alt=""
|
||||
/>
|
||||
<Image src="/assets/images/demo-fancy/bg-shape-1.svg" width={1443} height={844} alt="" />
|
||||
</div>
|
||||
{/* <!-- End Background Shape --> */}
|
||||
|
||||
@ -34,22 +23,14 @@ export default function SlickPortfolioPage() {
|
||||
<div className="col-md-10 offset-md-1 col-lg-8 offset-lg-2">
|
||||
<h1 className="hs-title-10 mb-10 wow fadeInUp">Portfolio</h1>
|
||||
|
||||
<p
|
||||
className="section-descr mb-0 wow fadeInUp"
|
||||
data-wow-delay="0.2s"
|
||||
>
|
||||
<p className="section-descr mb-0 wow fadeInUp" data-wow-delay="0.2s">
|
||||
Explore captivating web design solutions.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section
|
||||
className={`page-section scrollSpysection ${
|
||||
dark ? "bg-dark-1 light-content" : ""
|
||||
} `}
|
||||
id="portfolio"
|
||||
>
|
||||
<section className={`page-section scrollSpysection ${dark ? "bg-dark-1 light-content" : ""} `} id="portfolio">
|
||||
<div className="container position-relative">
|
||||
<Portfolio />
|
||||
</div>
|
||||
@ -70,13 +51,10 @@ export default function SlickPortfolioPage() {
|
||||
<div className="col-lg-10 offset-lg-1 col-xl-8 offset-xl-2">
|
||||
<div className="row">
|
||||
<div className="col-md-7 col-lg-8 text-center text-md-start mb-sm-20">
|
||||
<h2 className="section-title-small mb-20">
|
||||
Like our creative works?
|
||||
</h2>
|
||||
<h2 className="section-title-small mb-20">Like our creative works?</h2>
|
||||
<p className="text-gray mb-0">
|
||||
Quisque posuere mollis ullamcorper. Ut eget metus lorem
|
||||
ipsum posuere eget at ex. Aenean consequat vitae lorem in
|
||||
vehicula.
|
||||
Quisque posuere mollis ullamcorper. Ut eget metus lorem ipsum posuere eget at ex. Aenean consequat
|
||||
vitae lorem in vehicula.
|
||||
</p>
|
||||
</div>
|
||||
<div className="col-md-5 col-lg-4 text-center text-md-end pt-2">
|
||||
|
@ -5,28 +5,18 @@ import Image from "next/image";
|
||||
import Link from "next/link";
|
||||
|
||||
export const metadata = {
|
||||
title:
|
||||
"Slick Services || Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
description:
|
||||
"Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
title: "Slick Services || Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
description: "Resonance — One & Multi Page React Nextjs Creative Template",
|
||||
};
|
||||
const onePage = false;
|
||||
|
||||
const dark = false;
|
||||
export default function SlickServicesPage() {
|
||||
return (
|
||||
<>
|
||||
<section
|
||||
className="page-section bg-gradient-gray-light-1 bg-scroll overflow-hidden"
|
||||
id="home"
|
||||
>
|
||||
<section className="page-section bg-gradient-gray-light-1 bg-scroll overflow-hidden" id="home">
|
||||
{/* <!-- Background Shape --> */}
|
||||
<div className="bg-shape-1 wow fadeIn">
|
||||
<Image
|
||||
src="/assets/images/demo-fancy/bg-shape-1.svg"
|
||||
width={1443}
|
||||
height={844}
|
||||
alt=""
|
||||
/>
|
||||
<Image src="/assets/images/demo-fancy/bg-shape-1.svg" width={1443} height={844} alt="" />
|
||||
</div>
|
||||
{/* <!-- End Background Shape --> */}
|
||||
|
||||
@ -35,35 +25,22 @@ export default function SlickServicesPage() {
|
||||
<div className="col-md-10 offset-md-1 col-lg-8 offset-lg-2">
|
||||
<h1 className="hs-title-10 mb-10 wow fadeInUp">Our Services</h1>
|
||||
|
||||
<p
|
||||
className="section-descr mb-0 wow fadeInUp"
|
||||
data-wow-delay="0.2s"
|
||||
>
|
||||
<p className="section-descr mb-0 wow fadeInUp" data-wow-delay="0.2s">
|
||||
Web design that leaves an impression.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section
|
||||
className={`page-section scrollSpysection ${
|
||||
dark ? "bg-dark-1 light-content" : ""
|
||||
} `}
|
||||
id="services"
|
||||
>
|
||||
<section className={`page-section scrollSpysection ${dark ? "bg-dark-1 light-content" : ""} `} id="services">
|
||||
<div className="container position-relative">
|
||||
<div className="row">
|
||||
{/* Left Column */}
|
||||
<div className="col-lg-5 mb-md-60 mb-sm-40">
|
||||
<h2 className="section-caption-slick mb-30 mb-sm-20">
|
||||
WHAT WE DO
|
||||
</h2>
|
||||
<h3 className="section-title mb-30">
|
||||
We provide the best development solutions.
|
||||
</h3>
|
||||
<h2 className="section-caption-slick mb-30 mb-sm-20">WHAT WE DO</h2>
|
||||
<h3 className="section-title mb-30">We provide the best development solutions.</h3>
|
||||
<p className="section-descr mb-50 mb-sm-40">
|
||||
The power of design help us to solve complex problems and
|
||||
cultivate business solutions.
|
||||
The power of design help us to solve complex problems and cultivate business solutions.
|
||||
</p>
|
||||
<div className="local-scroll">
|
||||
<Link
|
||||
@ -84,12 +61,10 @@ export default function SlickServicesPage() {
|
||||
</div>
|
||||
<div className="row mb-50 mb-sm-50">
|
||||
<div className="col-md-10 offset-md-1 col-lg-8 offset-lg-2 col-xl-6 offset-xl-3 text-center">
|
||||
<h2 className="section-title-small mb-20">
|
||||
Why choose Resonance?
|
||||
</h2>
|
||||
<h2 className="section-title-small mb-20">Why choose Resonance?</h2>
|
||||
<p className="text-gray mb-0">
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
|
||||
eiusmod tempor incididunt ut labore et dolore magna aliqua.
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
||||
dolore magna aliqua.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -99,9 +74,7 @@ export default function SlickServicesPage() {
|
||||
</div>
|
||||
</section>
|
||||
<hr className={`mt-0 mb-0 ${dark ? "white" : ""} `} />
|
||||
<section
|
||||
className={`page-section ${dark ? "bg-dark-1 light-content" : ""}`}
|
||||
>
|
||||
<section className={`page-section ${dark ? "bg-dark-1 light-content" : ""}`}>
|
||||
<div className="container position-relative">
|
||||
<div className="row">
|
||||
{/* Images */}
|
||||
@ -155,32 +128,21 @@ export default function SlickServicesPage() {
|
||||
{/* End Images */}
|
||||
{/* Text */}
|
||||
<div className="col-lg-5 d-flex align-items-center">
|
||||
<div
|
||||
className="wow fadeInUp"
|
||||
data-wow-duration="1.2s"
|
||||
data-wow-offset="255"
|
||||
>
|
||||
<h2 className="section-caption-slick mb-30 mb-sm-20">
|
||||
How we work?
|
||||
</h2>
|
||||
<div className="wow fadeInUp" data-wow-duration="1.2s" data-wow-offset="255">
|
||||
<h2 className="section-caption-slick mb-30 mb-sm-20">How we work?</h2>
|
||||
|
||||
<h2 className="section-title mb-30">
|
||||
Get the power of the professional services
|
||||
</h2>
|
||||
<h2 className="section-title mb-30">Get the power of the professional services</h2>
|
||||
|
||||
<p className="text-gray">
|
||||
Pellentesque ultrices purus sit amet velit eleifend, eu
|
||||
iaculis velit malesuada. Proin id mattis elit. Nullam a nisi
|
||||
tellus. Mauris rhoncus diam in sem maximus, nec luctus justo
|
||||
imperdiet. Etiam fermentum vehicula faucibus.
|
||||
Pellentesque ultrices purus sit amet velit eleifend, eu iaculis velit malesuada. Proin id mattis elit.
|
||||
Nullam a nisi tellus. Mauris rhoncus diam in sem maximus, nec luctus justo imperdiet. Etiam fermentum
|
||||
vehicula faucibus.
|
||||
</p>
|
||||
|
||||
<p className="text-gray mb-0">
|
||||
Praesent ullamcorper urna id arcu molestie scelerisque. Sed
|
||||
imperdiet tristique mauris et faucibus. Maecenas semper augue
|
||||
non fringilla placerat. Curabitur luctus erat sit amet
|
||||
ultricies aliquam. Donec dictum convallis mauris et maximus.
|
||||
Nullam massa arcu, porta quis felis et, eleifend varius quam.
|
||||
Praesent ullamcorper urna id arcu molestie scelerisque. Sed imperdiet tristique mauris et faucibus.
|
||||
Maecenas semper augue non fringilla placerat. Curabitur luctus erat sit amet ultricies aliquam. Donec
|
||||
dictum convallis mauris et maximus. Nullam massa arcu, porta quis felis et, eleifend varius quam.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -204,13 +166,10 @@ export default function SlickServicesPage() {
|
||||
<div className="col-lg-10 offset-lg-1 col-xl-8 offset-xl-2">
|
||||
<div className="row">
|
||||
<div className="col-md-7 col-lg-8 text-center text-md-start mb-sm-20">
|
||||
<h2 className="section-title-small mb-20">
|
||||
Like our creative works?
|
||||
</h2>
|
||||
<h2 className="section-title-small mb-20">Like our creative works?</h2>
|
||||
<p className="text-gray mb-0">
|
||||
Quisque posuere mollis ullamcorper. Ut eget metus lorem
|
||||
ipsum posuere eget at ex. Aenean consequat vitae lorem in
|
||||
vehicula.
|
||||
Quisque posuere mollis ullamcorper. Ut eget metus lorem ipsum posuere eget at ex. Aenean consequat
|
||||
vitae lorem in vehicula.
|
||||
</p>
|
||||
</div>
|
||||
<div className="col-md-5 col-lg-4 text-center text-md-end pt-2">
|
||||
|
@ -64,13 +64,13 @@ export function GoogleReviewsBlock() {
|
||||
</div>
|
||||
|
||||
<div className="container px-6">
|
||||
<h2 className="text-3xl font-bold text-center">Reviews</h2>
|
||||
<h2 className="text-3xl font-bold text-center text-white">Reviews</h2>
|
||||
<div className="flex justify-center space-x-2">
|
||||
<h2 className="text-xl text-center font-bold">4.8</h2>
|
||||
<h2 className="text-xl text-center font-bold text-white">4.8</h2>
|
||||
<div className="mt-1">
|
||||
<StarRating size={20} value={4.8} />
|
||||
</div>
|
||||
<div className="text-xs font-semibold mt-1 text-neutral-500">Over 200 Reviews</div>
|
||||
<div className="text-xs font-semibold mt-1 text-white">Over 200 Reviews</div>
|
||||
</div>
|
||||
<div className="mt-20 relative">
|
||||
<Swiper
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { CardTeam } from "@/components/Teams/CardTeam";
|
||||
import Team from "@/components/Team";
|
||||
|
||||
type Team = {
|
||||
id: number;
|
||||
@ -13,27 +13,5 @@ export interface OurTeamProps {
|
||||
}
|
||||
|
||||
export function OurTeamBlock({ team }: OurTeamProps) {
|
||||
return (
|
||||
<section className="page-section bg-gray-light-1 relative">
|
||||
{/* Decoration Circles */}
|
||||
<div className="decoration-12" />
|
||||
<div className="decoration-13" />
|
||||
{/* End Decoration Circles */}
|
||||
<div className="container mx-auto px-6 text-center">
|
||||
<h2 className="text-4xl font-semibold text-gray-800 mb-8">Our Team</h2>
|
||||
<div className="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-6">
|
||||
{team.map((member, idx) => (
|
||||
<CardTeam
|
||||
key={idx}
|
||||
data={{
|
||||
name: member.name,
|
||||
img: member.img.url,
|
||||
role: member.role,
|
||||
}}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
return <Team data={team} />;
|
||||
}
|
||||
|
@ -1,4 +1,3 @@
|
||||
import { blogs9 } from "@/data/blogs";
|
||||
import React from "react";
|
||||
import Image from "next/image";
|
||||
import Link from "next/link";
|
||||
|
@ -1,6 +1,4 @@
|
||||
import { numbers } from "@/data/facts";
|
||||
import { features5 } from "@/data/features";
|
||||
import { services5 } from "@/data/services";
|
||||
import React from "react";
|
||||
|
||||
export default function Facts() {
|
||||
|
@ -1,32 +1,11 @@
|
||||
"use client";
|
||||
|
||||
import { useRef, useState } from "react";
|
||||
import { useRef } from "react";
|
||||
import Link from "next/link";
|
||||
|
||||
export default function Hero6() {
|
||||
const videoRef = useRef<any | null>(null);
|
||||
const [isPlaying, setIsPlaying] = useState(true);
|
||||
const [isMuted, setIsMuted] = useState(true);
|
||||
|
||||
const togglePlayPause = () => {
|
||||
if (isPlaying) {
|
||||
videoRef.current.pause();
|
||||
setIsPlaying(false);
|
||||
} else {
|
||||
videoRef.current.play();
|
||||
setIsPlaying(true);
|
||||
}
|
||||
};
|
||||
|
||||
const toggleMuteUnmute = () => {
|
||||
if (isMuted) {
|
||||
videoRef.current.muted = false;
|
||||
setIsMuted(false);
|
||||
} else {
|
||||
videoRef.current.muted = true;
|
||||
setIsMuted(true);
|
||||
}
|
||||
};
|
||||
return (
|
||||
<section className="home-section bg-dark-1 bg-dark-alpha-30 light-content scrollSpysection" id="home">
|
||||
<div className="container min-height-100vh d-flex align-items-center pt-100 pb-100 pt-sm-120 pb-sm-120">
|
||||
|
@ -1,10 +1,9 @@
|
||||
import { features4 } from "@/data/features";
|
||||
import Image from "next/image";
|
||||
import Link from "next/link";
|
||||
import Blog from "./Blogs/Blog";
|
||||
import Cta3 from "./cta3";
|
||||
import Facts from "./Facts";
|
||||
import Service from "./Service";
|
||||
import { GoogleReviewsBlock } from "./Blocks/GoogleReviews";
|
||||
|
||||
export default function homepage({ onePage = false, dark = false }) {
|
||||
return (
|
||||
@ -100,13 +99,9 @@ export default function homepage({ onePage = false, dark = false }) {
|
||||
<div className="decoration-12 bg-white" />
|
||||
<div className="decoration-13 bg-white" />
|
||||
<div className="col-md-10 offset-md-1 col-lg-8 offset-lg-2 col-xl-6 offset-xl-3 text-center text-white mb-50">
|
||||
<h2 className="section-title-small">Why choose Cochise Oncology?</h2>
|
||||
<p className="mb-0">
|
||||
Here at Cochise Oncology we offer the most up-to-date technology in cancer treatment that rivals the largest
|
||||
and most prestigious centers in the country.
|
||||
</p>
|
||||
<h2 className="section-title-small">Testimonials</h2>
|
||||
</div>
|
||||
<Facts />
|
||||
<GoogleReviewsBlock />
|
||||
</section>
|
||||
<section className={`page-section scrollSpysection ${dark ? "bg-dark-1 light-content" : ""} `} id="services">
|
||||
<div className="container position-relative">
|
||||
@ -157,12 +152,6 @@ export default function homepage({ onePage = false, dark = false }) {
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section className={`page-section scrollSpysection ${dark ? "bg-dark-1 light-content" : ""} `} id="blog">
|
||||
<div className={`bg-shape-3 ${dark ? "opacity-003" : ""} `}>
|
||||
<Image src="/assets/images/demo-slick/bg-shape-3.svg" width={1443} height={644} alt="" />
|
||||
</div>
|
||||
<Blog />
|
||||
</section>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
@ -1,113 +1,28 @@
|
||||
"use client";
|
||||
import { Swiper, SwiperSlide } from "swiper/react";
|
||||
import { Navigation } from "swiper/modules";
|
||||
import { teamMembers } from "@/data/team";
|
||||
import Image from "next/image";
|
||||
import { CardTeam } from "./Teams/CardTeam";
|
||||
|
||||
export default function Team() {
|
||||
export default function Team({ data }: any) {
|
||||
return (
|
||||
<div className="container position-relative">
|
||||
<div className="row">
|
||||
{/* Quote */}
|
||||
<div className="col-md-6 mb-sm-60 mb-xs-40 d-flex flex-column align-items-center">
|
||||
<h2 className="section-caption-slick mb-30 mb-sm-20">Our Teams</h2>
|
||||
<blockquote className="testimonial mb-0 wow fadeInUp">
|
||||
<div className="blockquote-icon" aria-hidden="true">
|
||||
”
|
||||
</div>
|
||||
<p>Our goal is to spend quality time with every patient</p>
|
||||
<footer>
|
||||
<div className="section-line mb-10" />
|
||||
Cecilia Hirales
|
||||
<div className="small">Clinical Director, Co-founder</div>
|
||||
</footer>
|
||||
</blockquote>
|
||||
</div>
|
||||
{/* End Quote */}
|
||||
{/* Team Carousel */}
|
||||
<div className="col-md-6 relative">
|
||||
<div>
|
||||
<Swiper
|
||||
spaceBetween={0}
|
||||
slidesPerView={2}
|
||||
breakpoints={{
|
||||
500: {
|
||||
slidesPerView: 2, // When window width is <= 480px
|
||||
},
|
||||
0: {
|
||||
slidesPerView: 1,
|
||||
},
|
||||
}}
|
||||
modules={[Navigation]}
|
||||
navigation={{
|
||||
prevEl: ".snbp1",
|
||||
nextEl: ".snbn1",
|
||||
}}
|
||||
watchSlidesProgress
|
||||
resizeObserver
|
||||
className="team-carousel owl-carousel owl-theme overflow-hidden position-static"
|
||||
style={{
|
||||
opacity: 1,
|
||||
display: "block",
|
||||
}}
|
||||
>
|
||||
{/* Team item */}
|
||||
{teamMembers.map((member, index) => (
|
||||
<SwiperSlide className="owl-item" key={index}>
|
||||
<div className="team-carousel-item">
|
||||
<div className="team-item">
|
||||
<div className="team-item-image">
|
||||
<Image
|
||||
width={600}
|
||||
height={800}
|
||||
src={member.image}
|
||||
className="wow scaleOutIn"
|
||||
alt="Image Description"
|
||||
/>
|
||||
<div className="team-item-detail">
|
||||
<div className="team-social-links">
|
||||
{member.socials.map((social, socialIndex) => (
|
||||
<a href={social.url} target="_blank" rel="noopener nofollow" key={socialIndex}>
|
||||
<div className="visually-hidden">{social.platform}</div>
|
||||
<i className={social.icon} />
|
||||
</a>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="team-item-descr">
|
||||
<div className="team-item-name">{member.name}</div>
|
||||
<div className="team-item-role">{member.role}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</SwiperSlide>
|
||||
))}
|
||||
<div className="owl-controls clickable">
|
||||
<div className="owl-pagination">
|
||||
<div className="owl-page">
|
||||
<span className=""></span>
|
||||
</div>
|
||||
<div className="owl-page active">
|
||||
<span className=""></span>
|
||||
</div>
|
||||
</div>
|
||||
<div className="owl-buttons">
|
||||
<div className="owl-prev snbp1 owl-prev-testimonial-1" role="button" tabIndex={0}>
|
||||
<span className="visually-hidden">Previous Slide</span>
|
||||
<i className="mi-arrow-left" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div className="owl-next snbn1" role="button" tabIndex={0}>
|
||||
<span className="visually-hidden">Next Slide</span>
|
||||
<i className="mi-arrow-right" aria-hidden="true"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/* End Team item */}
|
||||
</Swiper>
|
||||
<div className="container">
|
||||
<div className="row mb-70 mb-sm-50">
|
||||
<div className="col-md-12 offset-md-2 col-lg-6 offset-lg-3 text-center">
|
||||
<h2 className="section-title mb-30 mb-sm-20">
|
||||
<span className="text-gray">Our</span> Team
|
||||
<span className="text-gray">.</span>
|
||||
</h2>
|
||||
<div className="text-gray">
|
||||
The same color can evoke different emotions, or have various meanings to different individuals and cultures.
|
||||
</div>
|
||||
</div>
|
||||
{/* End Team Carousel */}
|
||||
</div>
|
||||
<div className="row mt-n40">
|
||||
{/* Team item */}
|
||||
{data.map((member: any, index: any) => (
|
||||
<div key={index}>
|
||||
<CardTeam data={member} />
|
||||
</div>
|
||||
))}
|
||||
{/* End Team item */}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
@ -1,27 +1,46 @@
|
||||
"use client";
|
||||
import Image from "next/image";
|
||||
|
||||
export interface CardTeamProps {
|
||||
data: {
|
||||
name: string;
|
||||
role: string;
|
||||
img: string;
|
||||
img: { url: string };
|
||||
};
|
||||
}
|
||||
|
||||
export function CardTeam({ data }: CardTeamProps) {
|
||||
return (
|
||||
<div className="bg-white p-6 rounded-lg shadow-md">
|
||||
<Image
|
||||
src={data.img}
|
||||
alt={data.name}
|
||||
width={80}
|
||||
height={80}
|
||||
className="rounded-full object-cover mx-auto"
|
||||
style={{ width: "80px", height: "80px" }}
|
||||
/>
|
||||
<h3 className="mt-4 text-lg font-medium text-gray-900">{data.name}</h3>
|
||||
<p className="text-gray-600">{data.role}</p>
|
||||
<button className="bg-slate-400 rounded-full p-2 font-semibold text-slate-50 text-xs">BIOGRAPHY</button>
|
||||
<div className="col-md-4 mt-40">
|
||||
<div className="team-item">
|
||||
<div className="team-item-image">
|
||||
<Image
|
||||
src={data.img.url}
|
||||
width={625}
|
||||
height={767}
|
||||
className="wow scaleOutIn"
|
||||
data-wow-duration="1.2s"
|
||||
alt={`Image of ${data.name}`}
|
||||
/>
|
||||
<div className="team-item-detail">
|
||||
<div className="team-social-links">
|
||||
{[
|
||||
{ platform: "Facebook", icon: "fa-facebook-f", url: "#" },
|
||||
{ platform: "Twitter", icon: "fa-twitter", url: "#" },
|
||||
{ platform: "Pinterest", icon: "fa-pinterest-p", url: "#" },
|
||||
].map((social, idx) => (
|
||||
<a key={idx} href={social.url} target="_blank" rel="noopener nofollow">
|
||||
<div className="visually-hidden">{social.platform}</div>
|
||||
<i className={social.icon} />
|
||||
</a>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="team-item-descr">
|
||||
<div className="team-item-name">{data.name}</div>
|
||||
<div className="team-item-role">{data.role}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { MigrateUpArgs, MigrateDownArgs, sql } from '@payloadcms/db-postgres'
|
||||
import { MigrateUpArgs, MigrateDownArgs, sql } from "@payloadcms/db-postgres";
|
||||
|
||||
export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {
|
||||
export async function up({ db }: MigrateUpArgs): Promise<void> {
|
||||
await db.execute(sql`
|
||||
CREATE TYPE "public"."enum_forms_confirmation_type" AS ENUM('message', 'redirect');
|
||||
CREATE TABLE IF NOT EXISTS "users" (
|
||||
@ -705,10 +705,10 @@ export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {
|
||||
CREATE INDEX IF NOT EXISTS "payload_preferences_rels_path_idx" ON "payload_preferences_rels" USING btree ("path");
|
||||
CREATE INDEX IF NOT EXISTS "payload_preferences_rels_users_id_idx" ON "payload_preferences_rels" USING btree ("users_id");
|
||||
CREATE INDEX IF NOT EXISTS "payload_migrations_updated_at_idx" ON "payload_migrations" USING btree ("updated_at");
|
||||
CREATE INDEX IF NOT EXISTS "payload_migrations_created_at_idx" ON "payload_migrations" USING btree ("created_at");`)
|
||||
CREATE INDEX IF NOT EXISTS "payload_migrations_created_at_idx" ON "payload_migrations" USING btree ("created_at");`);
|
||||
}
|
||||
|
||||
export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {
|
||||
export async function down({ db }: MigrateDownArgs): Promise<void> {
|
||||
await db.execute(sql`
|
||||
DROP TABLE "users" CASCADE;
|
||||
DROP TABLE "media" CASCADE;
|
||||
@ -743,5 +743,5 @@ export async function down({ db, payload, req }: MigrateDownArgs): Promise<void>
|
||||
DROP TABLE "payload_preferences" CASCADE;
|
||||
DROP TABLE "payload_preferences_rels" CASCADE;
|
||||
DROP TABLE "payload_migrations" CASCADE;
|
||||
DROP TYPE "public"."enum_forms_confirmation_type";`)
|
||||
DROP TYPE "public"."enum_forms_confirmation_type";`);
|
||||
}
|
||||
|
@ -6,60 +6,6 @@
|
||||
* and re-run `payload generate:types` to regenerate this file.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Supported timezones in IANA format.
|
||||
*
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "supportedTimezones".
|
||||
*/
|
||||
export type SupportedTimezones =
|
||||
| 'Pacific/Midway'
|
||||
| 'Pacific/Niue'
|
||||
| 'Pacific/Honolulu'
|
||||
| 'Pacific/Rarotonga'
|
||||
| 'America/Anchorage'
|
||||
| 'Pacific/Gambier'
|
||||
| 'America/Los_Angeles'
|
||||
| 'America/Tijuana'
|
||||
| 'America/Denver'
|
||||
| 'America/Phoenix'
|
||||
| 'America/Chicago'
|
||||
| 'America/Guatemala'
|
||||
| 'America/New_York'
|
||||
| 'America/Bogota'
|
||||
| 'America/Caracas'
|
||||
| 'America/Santiago'
|
||||
| 'America/Buenos_Aires'
|
||||
| 'America/Sao_Paulo'
|
||||
| 'Atlantic/South_Georgia'
|
||||
| 'Atlantic/Azores'
|
||||
| 'Atlantic/Cape_Verde'
|
||||
| 'Europe/London'
|
||||
| 'Europe/Berlin'
|
||||
| 'Africa/Lagos'
|
||||
| 'Europe/Athens'
|
||||
| 'Africa/Cairo'
|
||||
| 'Europe/Moscow'
|
||||
| 'Asia/Riyadh'
|
||||
| 'Asia/Dubai'
|
||||
| 'Asia/Baku'
|
||||
| 'Asia/Karachi'
|
||||
| 'Asia/Tashkent'
|
||||
| 'Asia/Calcutta'
|
||||
| 'Asia/Dhaka'
|
||||
| 'Asia/Almaty'
|
||||
| 'Asia/Jakarta'
|
||||
| 'Asia/Bangkok'
|
||||
| 'Asia/Shanghai'
|
||||
| 'Asia/Singapore'
|
||||
| 'Asia/Tokyo'
|
||||
| 'Asia/Seoul'
|
||||
| 'Australia/Sydney'
|
||||
| 'Pacific/Guam'
|
||||
| 'Pacific/Noumea'
|
||||
| 'Pacific/Auckland'
|
||||
| 'Pacific/Fiji';
|
||||
|
||||
export interface Config {
|
||||
auth: {
|
||||
users: UserAuthOperations;
|
||||
|
@ -1,10 +1,7 @@
|
||||
import payloadConfig from "@/payload.config";
|
||||
import { draftMode } from "next/headers";
|
||||
import { getPayload } from "payload";
|
||||
|
||||
export const fetchPageBySlug = async ({ slug }: { slug: string | undefined }) => {
|
||||
const { isEnabled: draft } = await draftMode();
|
||||
|
||||
const payload = await getPayload({ config: payloadConfig });
|
||||
|
||||
const result = await payload.find({
|
||||
|
@ -27,7 +27,7 @@ export const parallaxMouseMovement = () => {
|
||||
// });
|
||||
});
|
||||
|
||||
scene.addEventListener("mouseenter", function (e) {
|
||||
scene.addEventListener("mouseenter", function () {
|
||||
this.querySelectorAll(".parallax-mousemove-follow").forEach((el) => {
|
||||
setTimeout(() => {
|
||||
el.style.transition = "all .27s var(--ease-out-short)";
|
||||
@ -36,7 +36,7 @@ export const parallaxMouseMovement = () => {
|
||||
});
|
||||
});
|
||||
|
||||
scene.addEventListener("mouseout", function (e) {
|
||||
scene.addEventListener("mouseout", function () {
|
||||
this.querySelectorAll(".parallax-mousemove-follow").forEach((el) => {
|
||||
el.style.transition = "none";
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user