humas restructure

This commit is contained in:
Rama Priyanto 2024-11-05 13:15:40 +07:00
parent afec24a759
commit 949b0e1924
208 changed files with 8988 additions and 7349 deletions

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function AuthLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,15 +1,11 @@
'use client'
"use client";
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function DocsLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function EMajalahLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function DetailEMajalahLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,8 +1,6 @@
import EMagazineDetail from '@/components/detail/E-MagazineDetail'
import React from 'react'
import EMagazineDetail from "@/components/main/detail/e-magazine-detail";
import React from "react";
export default function EnewsDetailPage() {
return (
<EMagazineDetail />
)
return <EMagazineDetail />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function ApplicationLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function KontakLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,7 +1,5 @@
import Contact from '@/components/detail/Contact'
import Contact from "@/components/main/detail/contact";
export default function VisiMisiPage() {
return (
<Contact />
)
return <Contact />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function PoldaNewsLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,8 +1,6 @@
import ListNews from '@/components/detail/ListNews'
import React from 'react'
import ListNews from "@/components/main/detail/list-news";
import React from "react";
export default function PoldaNewsPage() {
return (
<ListNews />
)
return <ListNews />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function AllNewsLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,8 +1,6 @@
import ListNews from '@/components/detail/ListNews'
import React from 'react'
import ListNews from "@/components/main/detail/list-news";
import React from "react";
export default function ListNewsPage() {
return (
<ListNews />
)
return <ListNews />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function NewsLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,8 +1,6 @@
import DetailPage from '@/components/detail/DetailPage'
import React from 'react'
import DetailPage from "@/components/main/detail/new-detail";
import React from "react";
export default function NewsPage() {
return (
<DetailPage />
)
return <DetailPage />;
}

View File

@ -1,27 +1,27 @@
'use client'
import BannerHumas from "@/components/Landing Page/BannerHumas";
import BodyLayout from "@/components/Landing Page/BodyLayout";
import HeaderNews from "@/components/Landing Page/HeaderNews";
import { HumasLayout } from "@/components/layout/HumasLayout";
"use client";
import BannerHumas from "@/components/landing/BannerHumas";
import BodyLayout from "@/components/landing/BodyLayout";
import HeaderNews from "@/components/landing/HeaderNews";
import { HumasLayout } from "@/components/layout/humas-layout";
import { useEffect, useState } from "react";
export default function Home() {
const [hasMounted, setHasMounted] = useState(false);
const [hasMounted, setHasMounted] = useState(false);
useEffect(() => {
setHasMounted(true);
}, []);
useEffect(() => {
setHasMounted(true);
}, []);
// Render
if (!hasMounted) return null;
// Render
if (!hasMounted) return null;
return (
<>
<HumasLayout>
<BannerHumas />
<HeaderNews />
<BodyLayout />
</HumasLayout>
</>
);
return (
<>
<HumasLayout>
<BannerHumas />
<HeaderNews />
<BodyLayout />
</HumasLayout>
</>
);
}

View File

@ -1,13 +1,9 @@
import { PPIDAdminLayout } from "@/components/layout/PPIDAdminLayout";
import { PPIDAdminLayout } from "@/components/layout/ppid-admin-layout";
export default function LayoutAdmin({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<PPIDAdminLayout >
{children}
</PPIDAdminLayout>
);
return <PPIDAdminLayout>{children}</PPIDAdminLayout>;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function EPPIDPoldaLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,7 +1,5 @@
import PPIDPolda from '@/components/Portal PPID/PPIDPolda'
import PPIDPolda from "@/components/layout/portal-ppid/PPIDPolda";
export default function PPIDSakterPage() {
return (
<PPIDPolda />
)
return <PPIDPolda />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function EPPIDSatkerLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,7 +1,5 @@
import PPIDSatker from '@/components/Portal PPID/PPIDSatker'
import PPIDSatker from "@/components/layout/portal-ppid/PPIDSatker";
export default function PPIDSakterPage() {
return (
<PPIDSatker />
)
return <PPIDSatker />;
}

View File

@ -1,7 +1,5 @@
import InformasiBerkala from '@/components/table/informasi-berkala'
import InformasiBerkala from "@/components/table/informasi-berkala-table";
export default function InformasiSMPage() {
return (
<InformasiBerkala />
)
return <InformasiBerkala />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function InfoPublicLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function LayananInformasiLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,8 +1,6 @@
import StatiticAndRecap from '@/components/detail/StatistikRekapitulas'
import React from 'react'
import StatiticAndRecap from "@/components/main/detail/statistic-recap";
import React from "react";
export default function StatisticPage() {
return (
<StatiticAndRecap />
)
return <StatiticAndRecap />;
}

View File

@ -1,23 +1,22 @@
'use client'
import FooterPPID from '@/components/Portal PPID/FooterPPID';
import PPIDbody from '@/components/Portal PPID/PpidMain';
import PPIDBanner from '@/components/Portal PPID/ppid-banner';
import NavbarPPID from '@/components/navbar/NavbarPPID';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import NavbarPPID from "@/components/layout/navbar/NavbarPPID";
import FooterPPID from "@/components/layout/portal-ppid/FooterPPID";
import PPIDBanner from "@/components/layout/portal-ppid/ppid-banner";
import PPIDbody from "@/components/layout/portal-ppid/PpidMain";
import { usePathname } from "next/navigation";
import React from "react";
export default function PortalPPID(url: any) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<>
<NavbarPPID />
<PPIDBanner url={url} />
<PPIDbody />
<FooterPPID />
</>
)
return (
<>
<NavbarPPID />
<PPIDBanner url={url} />
<PPIDbody />
<FooterPPID />
</>
);
}

View File

@ -1,7 +1,5 @@
import InformasiBerkala from '@/components/table/informasi-berkala'
import InformasiBerkala from "@/components/table/informasi-berkala-table";
export default function InformasiSMPage() {
return (
<InformasiBerkala />
)
return <InformasiBerkala />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function DinamicSatkerLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
// const pathname = usePathname();
// console.log(pathname)
// const pathname = usePathname();
// console.log(pathname)
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function LayananInformasiLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,8 +1,6 @@
import StatiticAndRecap from '@/components/detail/StatistikRekapitulas'
import React from 'react'
import StatiticAndRecap from "@/components/main/detail/statistic-recap";
import React from "react";
export default function StatisticPage() {
return (
<StatiticAndRecap />
)
return <StatiticAndRecap />;
}

View File

@ -1,24 +1,27 @@
'use client'
import PPIDSatkerMain from '@/components/Portal PPID/PPIDMainSatker';
import PPIDBanner from '@/components/Portal PPID/ppid-banner';
import FooterSatker from '@/components/navbar/FooterSatker';
import NavbarSatker from '@/components/navbar/NavbarSatker';
import { usePathname } from 'next/navigation';
import React from 'react'
"use client";
import FooterSatker from "@/components/layout/navbar/FooterSatker";
import NavbarSatker from "@/components/layout/navbar/NavbarSatker";
import PPIDBanner from "@/components/layout/portal-ppid/ppid-banner";
import PPIDSatkerMain from "@/components/layout/portal-ppid/PPIDMainSatker";
import { usePathname } from "next/navigation";
import React from "react";
export default function PoldaPage() {
const pathname = usePathname();
const url: string = pathname.split('polda/')[1].replace(/-/g, ' ').toUpperCase();
const pathname = usePathname();
const url: string = pathname
.split("polda/")[1]
.replace(/-/g, " ")
.toUpperCase();
return (
<div className='text-black'>
<div className='text-black'>
<NavbarSatker />
<PPIDBanner url={url} />
<PPIDSatkerMain />
<FooterSatker />
</div>
</div>
)
return (
<div className="text-black">
<div className="text-black">
<NavbarSatker />
<PPIDBanner url={url} />
<PPIDSatkerMain />
<FooterSatker />
</div>
</div>
);
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function DinamicSatkerLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
// const pathname = usePathname();
// console.log(pathname)
// const pathname = usePathname();
// console.log(pathname)
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,8 +1,6 @@
import About from '@/components/detail/About'
import React from 'react'
import About from "@/components/main/detail/about";
import React from "react";
export default function PPIDProfile() {
return (
<About />
)
return <About />;
}

View File

@ -1,8 +1,6 @@
import HistoryPPID from '@/components/page/HistoryPPID'
import React from 'react'
import HistoryPPID from "@/components/page/history-ppid";
import React from "react";
export default function PPIDProfilePage() {
return (
<HistoryPPID />
)
return <HistoryPPID />;
}

View File

@ -1,7 +1,5 @@
import StrukturOrganisasi from "@/components/detail/StrukturOrganisasi";
import StrukturOrganisasi from "@/components/main/detail/structure";
export default function StructurePPID() {
return (
<StrukturOrganisasi />
)
}
return <StrukturOrganisasi />;
}

View File

@ -1,9 +1,5 @@
import Task from "@/components/detail/TaskDetail";
import Task from "@/components/main/detail/task-detail";
export default function PPIDTask() {
return (
<Task />
)
return <Task />;
}

View File

@ -1,8 +1,6 @@
import VisiMisi from '@/components/detail/VisiMisi'
import React from 'react'
import VisiMisi from "@/components/main/detail/visi-misi";
import React from "react";
export default function VMPPID() {
return (
<VisiMisi />
)
return <VisiMisi />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function RegulasiLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,15 +1,15 @@
import PPIDSidebar from '@/components/Portal PPID/PPIDSidebar'
import RegulationTable from '@/components/table/tabel-regulasi'
import PPIDSidebar from "@/components/layout/portal-ppid/PPIDSidebar";
import RegulationTable from "@/components/table/tabel-regulasi";
export default function RegulasiPage() {
return (
<div className='md:flex'>
<div className='w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] px-2 md:px-0 lg:px-5'>
<RegulationTable />
</div>
<div className='w-auto md:w-1/3 lg:w-[25%]'>
<PPIDSidebar />
</div>
</div>
)
return (
<div className="md:flex">
<div className="w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] px-2 md:px-0 lg:px-5">
<RegulationTable />
</div>
<div className="w-auto md:w-1/3 lg:w-[25%]">
<PPIDSidebar />
</div>
</div>
);
}

View File

@ -1,8 +1,6 @@
import ServiceFlow from '@/components/detail/ServiceFlow'
import React from 'react'
import ServiceFlow from "@/components/main/detail/service-flow";
import React from "react";
export default function ServiceFlowPage() {
return (
<ServiceFlow />
)
return <ServiceFlow />;
}

View File

@ -1,20 +1,16 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function StandarLayananLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,8 +1,6 @@
import ServiceAnnouncement from '@/components/detail/ServiceAnnouncement'
import React from 'react'
import ServiceAnnouncement from "@/components/main/detail/service-announcement";
import React from "react";
export default function ServiceAnnouncePage() {
return (
<ServiceAnnouncement />
)
return <ServiceAnnouncement />;
}

View File

@ -1,8 +1,6 @@
import ObjectionMecanism from '@/components/detail/ObjectionMecanism'
import React from 'react'
import ObjectionMecanism from "@/components/main/detail/objection-mecanism";
import React from "react";
export default function ObjectionMecanismPage() {
return (
<ObjectionMecanism />
)
return <ObjectionMecanism />;
}

View File

@ -1,8 +1,6 @@
import RequestDispute from '@/components/detail/RequestDispute'
import React from 'react'
import RequestDispute from "@/components/main/detail/reqeust-dispute";
import React from "react";
export default function RequestDisputePage() {
return (
<RequestDispute />
)
return <RequestDispute />;
}

View File

@ -1,8 +1,6 @@
import ServiceFee from '@/components/detail/ServiceFee'
import React from 'react'
import ServiceFee from "@/components/main/detail/service-fee";
import React from "react";
export default function ServiceFeePage() {
return (
<ServiceFee />
)
return <ServiceFee />;
}

View File

@ -1,8 +1,6 @@
import RequestInformation from '@/components/detail/RequestInformation'
import React from 'react'
import RequestInformation from "@/components/main/detail/request-information";
import React from "react";
export default function RequestInformationPage() {
return (
<RequestInformation />
)
return <RequestInformation />;
}

View File

@ -1,8 +1,6 @@
import ServiceTime from '@/components/detail/ServiceTime'
import React from 'react'
import ServiceTime from "@/components/main/detail/serive-time";
import React from "react";
export default function ServiceTimePage() {
return (
<ServiceTime />
)
return <ServiceTime />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function PPIDProfileLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,8 +1,6 @@
import About from '@/components/detail/About'
import React from 'react'
import About from "@/components/main/detail/about";
import React from "react";
export default function PPIDProfile() {
return (
<About />
)
return <About />;
}

View File

@ -1,8 +1,6 @@
import HistoryPPID from '@/components/page/HistoryPPID'
import React from 'react'
import HistoryPPID from "@/components/page/history-ppid";
import React from "react";
export default function PPIDProfilePage() {
return (
<HistoryPPID />
)
return <HistoryPPID />;
}

View File

@ -1,7 +1,5 @@
import StrukturOrganisasi from "@/components/detail/StrukturOrganisasi";
import StrukturOrganisasi from "@/components/main/detail/structure";
export default function StructurePPID() {
return (
<StrukturOrganisasi />
)
}
return <StrukturOrganisasi />;
}

View File

@ -1,9 +1,5 @@
import Task from "@/components/detail/TaskDetail";
import Task from "@/components/main/detail/task-detail";
export default function PPIDTask() {
return (
<Task />
)
return <Task />;
}

View File

@ -1,8 +1,6 @@
import VisiMisi from '@/components/detail/VisiMisi'
import React from 'react'
import VisiMisi from "@/components/main/detail/visi-misi";
import React from "react";
export default function VMPPID() {
return (
<VisiMisi />
)
return <VisiMisi />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function RegulasiLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,15 +1,15 @@
import PPIDSidebar from '@/components/Portal PPID/PPIDSidebar'
import RegulationTable from '@/components/table/tabel-regulasi'
import PPIDSidebar from "@/components/layout/portal-ppid/PPIDSidebar";
import RegulationTable from "@/components/table/tabel-regulasi";
export default function RegulasiPage() {
return (
<div className='md:flex'>
<div className='w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] px-2 md:px-0 lg:px-5'>
<RegulationTable />
</div>
<div className='w-auto md:w-1/3 lg:w-[25%]'>
<PPIDSidebar />
</div>
</div>
)
return (
<div className="md:flex">
<div className="w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] px-2 md:px-0 lg:px-5">
<RegulationTable />
</div>
<div className="w-auto md:w-1/3 lg:w-[25%]">
<PPIDSidebar />
</div>
</div>
);
}

View File

@ -1,7 +1,5 @@
import InformasiBerkala from '@/components/table/informasi-berkala'
import InformasiBerkala from "@/components/table/informasi-berkala-table";
export default function InformasiSMPage() {
return (
<InformasiBerkala />
)
return <InformasiBerkala />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function DinamicSatkerLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
// const pathname = usePathname();
// console.log(pathname)
// const pathname = usePathname();
// console.log(pathname)
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function LayananInformasiLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,8 +1,6 @@
import StatiticAndRecap from '@/components/detail/StatistikRekapitulas'
import React from 'react'
import StatiticAndRecap from "@/components/main/detail/statistic-recap";
import React from "react";
export default function StatisticPage() {
return (
<StatiticAndRecap />
)
return <StatiticAndRecap />;
}

View File

@ -1,20 +1,24 @@
'use client'
import PPIDSatkerMain from '@/components/Portal PPID/PPIDMainSatker';
import PPIDBanner from '@/components/Portal PPID/ppid-banner';
import FooterSatker from '@/components/navbar/FooterSatker';
import NavbarSatker from '@/components/navbar/NavbarSatker';
import { usePathname } from 'next/navigation';
"use client";
import FooterSatker from "@/components/layout/navbar/FooterSatker";
import NavbarSatker from "@/components/layout/navbar/NavbarSatker";
import PPIDBanner from "@/components/layout/portal-ppid/ppid-banner";
import PPIDSatkerMain from "@/components/layout/portal-ppid/PPIDMainSatker";
import { usePathname } from "next/navigation";
export default function SatkerPage() {
const pathname = usePathname();
const url: string = pathname.split('satuan-kerja/')[1].replace(/-/g, ' ').toUpperCase();
const pathname = usePathname();
const url: string = pathname
.split("satuan-kerja/")[1]
.replace(/-/g, " ")
.toUpperCase();
return (
<div className='text-black'>
<NavbarSatker />
<PPIDBanner url={url} />
<PPIDSatkerMain />
<FooterSatker />
</div>
)
return (
<div className="text-black">
<NavbarSatker />
<PPIDBanner url={url} />
<PPIDSatkerMain />
<FooterSatker />
</div>
);
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function DinamicSatkerLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
// const pathname = usePathname();
// console.log(pathname)
// const pathname = usePathname();
// console.log(pathname)
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,8 +1,6 @@
import About from '@/components/detail/About'
import React from 'react'
import About from "@/components/main/detail/about";
import React from "react";
export default function PPIDProfile() {
return (
<About />
)
return <About />;
}

View File

@ -1,8 +1,6 @@
import HistoryPPID from '@/components/page/HistoryPPID'
import React from 'react'
import HistoryPPID from "@/components/page/history-ppid";
import React from "react";
export default function PPIDProfilePage() {
return (
<HistoryPPID />
)
return <HistoryPPID />;
}

View File

@ -1,7 +1,5 @@
import StrukturOrganisasi from "@/components/detail/StrukturOrganisasi";
import StrukturOrganisasi from "@/components/main/detail/structure";
export default function StructurePPID() {
return (
<StrukturOrganisasi />
)
}
return <StrukturOrganisasi />;
}

View File

@ -1,9 +1,5 @@
import Task from "@/components/detail/TaskDetail";
import Task from "@/components/main/detail/task-detail";
export default function PPIDTask() {
return (
<Task />
)
return <Task />;
}

View File

@ -1,8 +1,6 @@
import VisiMisi from '@/components/detail/VisiMisi'
import React from 'react'
import VisiMisi from "@/components/main/detail/visi-misi";
import React from "react";
export default function VMPPID() {
return (
<VisiMisi />
)
return <VisiMisi />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React from 'react';
"use client";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React from "react";
export default function RegulasiLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,15 +1,15 @@
import PPIDSidebar from '@/components/Portal PPID/PPIDSidebar'
import RegulationTable from '@/components/table/tabel-regulasi'
import PPIDSidebar from "@/components/layout/portal-ppid/PPIDSidebar";
import RegulationTable from "@/components/table/tabel-regulasi";
export default function RegulasiPage() {
return (
<div className='md:flex'>
<div className='w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] px-2 md:px-0 lg:px-5'>
<RegulationTable />
</div>
<div className='w-auto md:w-1/3 lg:w-[25%]'>
<PPIDSidebar />
</div>
</div>
)
return (
<div className="md:flex">
<div className="w-auto bg-[#E2E2E2] md:w-2/3 lg:w-[75%] px-2 md:px-0 lg:px-5">
<RegulationTable />
</div>
<div className="w-auto md:w-1/3 lg:w-[25%]">
<PPIDSidebar />
</div>
</div>
);
}

View File

@ -1,8 +1,6 @@
import ServiceFlow from '@/components/detail/ServiceFlow'
import React from 'react'
import ServiceFlow from "@/components/main/detail/service-flow";
import React from "react";
export default function ServiceFlowPage() {
return (
<ServiceFlow />
)
return <ServiceFlow />;
}

View File

@ -1,20 +1,16 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { SatkerLayout } from '@/components/layout/SatKerLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { SatkerLayout } from "@/components/layout/satker-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function StandarLayananLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<SatkerLayout>
{children}
</SatkerLayout>
)
return <SatkerLayout>{children}</SatkerLayout>;
}

View File

@ -1,8 +1,6 @@
import ServiceAnnouncement from '@/components/detail/ServiceAnnouncement'
import React from 'react'
import ServiceAnnouncement from "@/components/main/detail/service-announcement";
import React from "react";
export default function ServiceAnnouncePage() {
return (
<ServiceAnnouncement />
)
return <ServiceAnnouncement />;
}

View File

@ -1,8 +1,6 @@
import ObjectionMecanism from '@/components/detail/ObjectionMecanism'
import React from 'react'
import ObjectionMecanism from "@/components/main/detail/objection-mecanism";
import React from "react";
export default function ObjectionMecanismPage() {
return (
<ObjectionMecanism />
)
return <ObjectionMecanism />;
}

View File

@ -1,8 +1,6 @@
import RequestDispute from '@/components/detail/RequestDispute'
import React from 'react'
import RequestDispute from "@/components/main/detail/reqeust-dispute";
import React from "react";
export default function RequestDisputePage() {
return (
<RequestDispute />
)
return <RequestDispute />;
}

View File

@ -1,8 +1,6 @@
import ServiceFee from '@/components/detail/ServiceFee'
import React from 'react'
import ServiceFee from "@/components/main/detail/service-fee";
import React from "react";
export default function ServiceFeePage() {
return (
<ServiceFee />
)
return <ServiceFee />;
}

View File

@ -1,8 +1,6 @@
import RequestInformation from '@/components/detail/RequestInformation'
import React from 'react'
import RequestInformation from "@/components/main/detail/request-information";
import React from "react";
export default function RequestInformationPage() {
return (
<RequestInformation />
)
return <RequestInformation />;
}

View File

@ -1,8 +1,6 @@
import ServiceTime from '@/components/detail/ServiceTime'
import React from 'react'
import ServiceTime from "@/components/main/detail/serive-time";
import React from "react";
export default function ServiceTimePage() {
return (
<ServiceTime />
)
return <ServiceTime />;
}

View File

@ -1,8 +1,6 @@
import ServiceFlow from '@/components/detail/ServiceFlow'
import React from 'react'
import ServiceFlow from "@/components/main/detail/service-flow";
import React from "react";
export default function ServiceFlowPage() {
return (
<ServiceFlow />
)
return <ServiceFlow />;
}

View File

@ -1,19 +1,15 @@
'use client'
import { PPIDLayout } from '@/components/layout/PPIDLayout';
import { usePathname } from 'next/navigation';
import React, { Children } from 'react'
"use client";
import { PPIDLayout } from "@/components/layout/ppid-layout";
import { usePathname } from "next/navigation";
import React, { Children } from "react";
export default function StandarLayananLayout({
children,
children,
}: {
children: React.ReactNode
children: React.ReactNode;
}) {
const pathname = usePathname();
console.log(pathname)
const pathname = usePathname();
console.log(pathname);
return (
<PPIDLayout>
{children}
</PPIDLayout>
)
return <PPIDLayout>{children}</PPIDLayout>;
}

View File

@ -1,8 +1,6 @@
import ServiceAnnouncement from '@/components/detail/ServiceAnnouncement'
import React from 'react'
import ServiceAnnouncement from "@/components/main/detail/service-announcement";
import React from "react";
export default function ServiceAnnouncePage() {
return (
<ServiceAnnouncement />
)
return <ServiceAnnouncement />;
}

View File

@ -1,8 +1,6 @@
import ObjectionMecanism from '@/components/detail/ObjectionMecanism'
import React from 'react'
import ObjectionMecanism from "@/components/main/detail/objection-mecanism";
import React from "react";
export default function ObjectionMecanismPage() {
return (
<ObjectionMecanism />
)
return <ObjectionMecanism />;
}

View File

@ -1,8 +1,6 @@
import RequestDispute from '@/components/detail/RequestDispute'
import React from 'react'
import RequestDispute from "@/components/main/detail/reqeust-dispute";
import React from "react";
export default function RequestDisputePage() {
return (
<RequestDispute />
)
return <RequestDispute />;
}

View File

@ -1,8 +1,6 @@
import ServiceFee from '@/components/detail/ServiceFee'
import React from 'react'
import ServiceFee from "@/components/main/detail/service-fee";
import React from "react";
export default function ServiceFeePage() {
return (
<ServiceFee />
)
return <ServiceFee />;
}

View File

@ -1,8 +1,6 @@
import RequestInformation from '@/components/detail/RequestInformation'
import React from 'react'
import RequestInformation from "@/components/main/detail/request-information";
import React from "react";
export default function RequestInformationPage() {
return (
<RequestInformation />
)
return <RequestInformation />;
}

View File

@ -1,8 +1,6 @@
import ServiceTime from '@/components/detail/ServiceTime'
import React from 'react'
import ServiceTime from "@/components/main/detail/serive-time";
import React from "react";
export default function ServiceTimePage() {
return (
<ServiceTime />
)
return <ServiceTime />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function PropimLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,7 +1,5 @@
import Propim from '@/components/detail/Propim'
import Task from "@/components/main/detail/propim";
export default function PropimPage() {
return (
<Propim />
)
return <Task />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function StrukturLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,7 +1,5 @@
import StrukturOragnisasi from "@/components/detail/StrukturOrganisasi";
import StrukturOragnisasi from "@/components/main/detail/structure";
export default function StrukturPage() {
return (
<StrukturOragnisasi />
);
return <StrukturOragnisasi />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function AboutLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,7 +1,5 @@
import About from "@/components/detail/About";
import About from "@/components/main/detail/about";
export default function AboutPage() {
return (
<About />
);
return <About />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function TaskLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,8 +1,6 @@
import Task from '@/components/detail/TaskDetail'
import React from 'react'
import Task from "@/components/main/detail/task-detail";
import React from "react";
export default function TaskPage() {
return (
<Task />
)
return <Task />;
}

View File

@ -1,13 +1,9 @@
import { HumasLayout } from "@/components/layout/HumasLayout";
import { HumasLayout } from "@/components/layout/humas-layout";
export default function VisiMisiLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return (
<HumasLayout>
{children}
</HumasLayout>
);
return <HumasLayout>{children}</HumasLayout>;
}

View File

@ -1,8 +1,6 @@
import VisiMisi from '@/components/detail/VisiMisi'
import React from 'react'
import VisiMisi from "@/components/main/detail/visi-misi";
import React from "react";
export default function VisiMisiPage() {
return (
<VisiMisi />
)
return <VisiMisi />;
}

View File

@ -1,16 +0,0 @@
import React from 'react'
export default function BannerHumas() {
return (
<div className='bg-white relative text-white'>
<img src="headerbanner1.png"
alt="humasbanner"
className='w-full relative bottom-0 md:bottom-10'
/>
<div className='absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-center w-full md:w-[75%]'>
<p className='text-sm lg:text-4xl font-bold pb-1 md:pb-5'>TRANSPARANSI, PATISIPASI, DAN LAYANAN TERBAIK DARI POLRI UNTUK INDONESIA</p>
<p className='text-xs md:text-medium'>"Menyajikan Informasi Terpercaya dan Mendekatkan Polri dengan Masyarakat"</p>
</div>
</div>
)
}

View File

@ -1,358 +0,0 @@
'use client'
import { Button } from '@nextui-org/button';
import { Image, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, ModalProps, useDisclosure } from '@nextui-org/react';
import { ChevronLeftWhite, ChevronRightWhite } from '../icons';
import React from 'react';
import Link from 'next/link';
export default function CategorySatker() {
const { isOpen, onOpen, onOpenChange } = useDisclosure();
const [scrollBehavior, setScrollBehavior] = React.useState<ModalProps["scrollBehavior"]>("inside");
const [modalPlacement, setModalPlacement] = React.useState<any>("auto");
const list = [
{
id: 1,
img: "/assets/satker2/siber.svg",
title: "Siber",
path: '/news/siber'
},
{
id: 2,
img: "/assets/satker2/divkum.svg",
title: "Divkum",
path: '/news/divkum'
},
{
id: 3,
img: "/assets/satker2/puskeu.svg",
title: "Puskeu",
path: '/news/puskeu'
},
{
id: 4,
img: "/assets/satker2/ssdm.svg",
title: "SSDM",
path: '/news/ssdm'
},
{
id: 5,
img: "/assets/satker2/itwasum.svg",
title: "Itwasum",
path: '/news/itwasum'
},
];
const SatkerAll = [
{
id: 1,
img: "/assets/satker2/siber.svg",
title: "Siber",
path: '/news/siber'
},
{
id: 2,
img: "/assets/satker2/divkum.svg",
title: "Divkum",
path: '/news/divkum'
},
{
id: 3,
img: "/assets/satker2/puskeu.svg",
title: "Puskeu",
path: '/news/puskeu'
},
{
id: 4,
img: "/assets/satker2/ssdm.svg",
title: "SSDM",
path: '/news/ssdm'
},
{
id: 5,
img: "/assets/satker2/itwasum.svg",
title: "Itwasum",
path: '/news/itwasum'
},
{
id: 6,
img: "/assets/satker2/stik-ptik.svg",
title: "STIK-PTIK",
path: '/news/stik-ptik'
},
{
id: 7,
img: "/assets/satker2/brimob.svg",
title: "BRIMOB",
path: '/news/brimob'
},
{
id: 8,
img: "/assets/satker2/humas.svg",
title: "DIV HUMAS",
path: '/news/humas'
},
{
id: 9,
img: "/assets/satker2/puslitbang.svg",
title: "PUSLITBANG",
path: '/news/puslitbang'
},
{
id: 10,
img: "/assets/satker2/binmas.svg",
title: "BINMAS",
path: '/news/binmas'
},
{
id: 11,
img: "/assets/satker2/divtik.svg",
title: "DIV TIK",
path: '/news/divtik'
},
{
id: 12,
img: "/assets/satker2/spripim.svg",
title: "SPRIPIM",
path: '/news/spripim'
},
{
id: 13,
img: "/assets/satker2/propam.svg",
title: "DIV PROPAM",
path: '/news/propam'
},
{
id: 14,
img: "/assets/satker2/sabbaharkam.svg",
title: "KORPS SABHARA BAHARKAM",
path: '/news/sabhara-baharkam'
},
{
id: 15,
img: "/assets/satker2/pusdokes.svg",
title: "PUSDOKKES",
path: '/news/pusdokkes'
},
{
id: 16,
img: "/assets/satker2/baharkam.svg",
title: "baharkam",
path: '/news/baharkam'
},
{
id: 17,
img: "/assets/satker2/polairud.svg",
title: "POLAIURD",
path: '/news/polairud'
},
{
id: 18,
img: "/assets/satker2/polair.svg",
title: "POLAIR",
path: '/news/polair'
},
{
id: 19,
img: "/assets/satker2/poludara.svg",
title: "POLUDARA",
path: '/news/poludara'
},
{
id: 20,
img: "/assets/satker2/lemdiklat.svg",
title: "LEMDIKLAT",
path: '/news/lemdiklat'
},
{
id: 21,
img: "/assets/satker2/akpol.svg",
title: "AKPOL",
path: '/news/akpol'
},
{
id: 22,
img: "/assets/satker2/korlantas.svg",
title: "KORLANTAS",
path: '/news/korlantas'
},
{
id: 21,
img: "/assets/satker2/pusinafis.svg",
title: "PUSINAFIS",
path: '/news/pusinafis'
},
{
id: 22,
img: "/assets/satker2/pusjarah.svg",
title: "PUSJARAH",
path: '/news/pusjarah'
},
{
id: 23,
img: "/assets/satker2/pusiknas.svg",
title: "PUSIKNAS",
path: '/news/pusiknas'
},
{
id: 24,
img: "/assets/satker2/slog.svg",
title: "SLOG",
path: '/news/slog'
},
{
id: 25,
img: "/assets/satker2/baintelkam.svg",
title: "BAINTELKAM",
path: '/news/baintelkam'
},
{
id: 26,
img: "/assets/satker2/bareskrim.svg",
title: "BARESKRIM",
path: '/news/bareskrim'
},
{
id: 27,
img: "/assets/satker2/hubinter.svg",
title: "DIVHUBINTER",
path: '/news/divhubinter'
},
{
id: 28,
img: "/assets/satker2/setum.svg",
title: "SETUM",
path: '/news/setum'
},
{
id: 29,
img: "/assets/satker2/puslabfor.svg",
title: "PUSLABFOR",
path: '/news/puslabfor'
},
{
id: 30,
img: "/assets/satker2/densus88.svg",
title: "DENSUS 88",
path: '/news/densus88'
},
{
id: 31,
img: "/assets/satker2/sahlikapolri.svg",
title: "SAHLI KAPOLRI",
path: '/news/sahli-kapolri'
},
{
id: 32,
img: "/assets/satker2/sops.svg",
title: "SOPS",
path: '/news/sops'
},
{
id: 33,
img: "/assets/satker2/srena.svg",
title: "SRENA",
path: '/news/srena'
},
{
id: 34,
img: "/assets/satker2/sespim.svg",
title: "SESPIM POLRI",
path: '/news/sespim-polri'
},
{
id: 35,
img: "/assets/satker2/setupa.svg",
title: "SETUPA POLRI",
path: '/news/setupa-polri'
},
]
// useEffect(() => {
// function updateLimitedData() {
// if (window.matchMedia("(max-width: 767px)").matches) {
// setLimitedData(list.slice(0, 2));
// } else if (window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches) {
// setLimitedData(list.slice(0, 3));
// } else {
// setLimitedData(list.slice(0, 5));
// }
// }
// updateLimitedData();
// window.addEventListener('resize', updateLimitedData);
// return () => {
// window.removeEventListener('resize', updateLimitedData);
// };
// }, [list]);
return (
<div className='text-center bg-[#DD8306] rounded-none md:rounded-lg h-auto lg:h-[338px] space-y-0 py-4 md:space-y-7 flex flex-col justify-center'>
<div className='text-white font-bold text-2xl underline underline-offset-4 decoration-red-600'>Kategori Satker</div>
<div className='flex items-center justify-around'>
<div><ChevronLeftWhite /></div>
<div className="gap-2 md:gap-4 lg:gap-6 grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5">
{list.map((item: any, index: any) => (
<Link href={item.path}>
<div key={index} className='w-[157px] h-[140px] flex flex-col items-center justify-evenly '>
<Image
radius="lg"
src={item.img}
/>
<p className='text-xs font-bold text-white'>{item.title}</p>
</div>
</Link>
))}
</div>
<div><ChevronRightWhite /></div>
</div>
<div>
<Button
onPress={onOpen}
className='bg-white text-[#DD8306] font-bold'
size='sm'
>
Lihat Lebih Banyak
</Button>
<Modal isOpen={isOpen} onOpenChange={onOpenChange}
size='full'
scrollBehavior={scrollBehavior}
placement={modalPlacement}
classNames={{
wrapper: "bg-white",
base: "bg-white min-h-full",
}}
>
<ModalContent>
{(onClose) => (
<>
<ModalHeader className="flex flex-col text-[#DD8306] items-center min-h text-3xl font-semibold">Berita Wilayah</ModalHeader>
<ModalBody className='flex flex-row flex-wrap justify-center text-center'>
{SatkerAll.map((item: any, index: any) => (
<div key={index.id} className='w-[140px] h-[115px] flex flex-col items-center justify-center rounded-lg shadow-sm'>
<Link href={item.path}>
<Image
radius="lg"
className="h-[59px] "
src={item.img}
/>
</Link>
<p className='text-xs font-bold text-[#DD8306] pt-2'>{item.title}</p>
</div>
))}
</ModalBody>
<ModalFooter>
<Button color="danger" variant="light" onPress={onClose}>
Tutup
</Button>
</ModalFooter>
</>
)}
</ModalContent>
</Modal>
</div>
</div>
)
}

View File

@ -1,205 +0,0 @@
'use client'
import { Button, Card, CardFooter, ScrollShadow } from '@nextui-org/react'
import Image from 'next/image'
import { EyeIcon } from '../icons'
import { Swiper, SwiperSlide } from 'swiper/react';
import 'swiper/css';
import 'swiper/css/pagination';
import { Autoplay, Pagination, Navigation } from 'swiper/modules';
import Link from 'next/link';
import GPRKominfo from '../SocialMedia/GprKominfo';
import { useEffect, useState } from 'react';
import { getListArticle } from '@/service/article';
export default function HeaderNews() {
const [article, setArticle] = useState();
useEffect(() => {
async function getArticle() {
const response = await getListArticle();
console.log("res", response?.data?.data);
}
getArticle();
}, []);
const newsData = [
{
id: 1,
title: 'Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari',
date: '21-07-2023 13:50',
views: 82,
imageUrl: '/headernews.png'
},
{
id: 2,
title: 'Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari',
date: '21-07-2023 13:50',
views: 82,
imageUrl: '/headernews.png'
},
{
id: 3,
title: 'Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari',
date: '21-07-2023 13:50',
views: 82,
imageUrl: '/headernews.png'
},
{
id: 4,
title: 'Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari',
date: '21-07-2023 13:50',
views: 82,
imageUrl: '/headernews.png'
},
{
id: 5,
title: 'Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari',
date: '21-07-2023 13:50',
views: 82,
imageUrl: '/headernews.png'
},
{
id: 6,
title: 'Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari',
date: '21-07-2023 13:50',
views: 82,
imageUrl: '/headernews.png'
},
];
return (
<div className='lg:flex items-center bg-white gap-3 p-2'>
<div className='w-auto lg:w-[25%] p-2 bg-[#020101] text-white rounded-md'>
<p className='text-lg font-bold h-10 text-center'>Berita Terkini</p>
<ScrollShadow hideScrollBar className=" h-[443px]">
<div className='text-xs text-left m-2 p-2 bg-[#1E1616] rounded-md'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
<div className='text-xs text-left m-2 p-2 bg-[#1E1616] rounded-md'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
<div className='text-xs text-left m-2 p-2 bg-[#1E1616] rounded-md'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
<div className='text-xs text-left m-2 p-2 bg-[#1E1616] rounded-md'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
</ScrollShadow>
<div className='m-2'>
<Link href='/news/all'>
<Button
className='w-full bg-[#DD8306] font-bold rounded-bl-md rounded-br-md focus:outline-none'
radius='none'
>
Lihat Semua
</Button>
</Link>
</div>
</div>
<div className='w-auto lg:w-[50%]'>
<div>
<Swiper
centeredSlides={true}
autoplay={{
delay: 5000,
disableOnInteraction: false,
}}
pagination={{
clickable: true,
}}
navigation={true}
modules={[Autoplay, Pagination, Navigation]}
className="mySwiper"
>
{newsData.map((newsItem) => (
<SwiperSlide key={newsItem.id}>
<Card
isFooterBlurred
radius="lg"
className="border-none"
>
<Image
alt="headernews"
className="object-cover"
height={660}
src={newsItem.imageUrl}
width={460}
layout="responsive"
/>
<CardFooter className="before:bg-white/10 border-white/20 border-1 overflow-hidden py-1 md:absolute before:rounded-xl rounded-large bottom-1 w-[calc(100%_-_8px)] shadow-small ml-1 z-10">
<div className='text-white'>
<Link href={`news/detail/${newsItem.id}`}>
<p className='text-left font-semibold'>{newsItem.title}</p>
</Link>
<p className='py-[2px] text-left text-sm'>{newsItem.date}</p>
<p className='flex items-center gap-1 text-sm'><EyeIcon />{newsItem.views}</p>
</div>
</CardFooter>
</Card>
</SwiperSlide>
))}
</Swiper>
</div>
{/* <Card
isFooterBlurred
radius="lg"
className="border-none"
>
<Image
alt="headernews"
className="object-cover"
height={660}
src="/headernews.png"
width={460}
layout="responsive"
/>
<CardFooter className="before:bg-white/10 border-white/20 border-1 overflow-hidden py-1 md:absolute before:rounded-xl rounded-large bottom-1 w-[calc(100%_-_8px)] shadow-small ml-1 z-10">
<div className='text-white'>
<p className='text-left font-semibold'>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px] text-left text-sm'>21-07-2023 13:50</p>
<p className='flex items-center gap-1 text-sm'><EyeIcon />82</p>
</div>
</CardFooter>
</Card> */}
</div>
<div className='w-auto lg:w-[25%] p-2 rounded-md text-white dark:text-black '>
<GPRKominfo />
{/* <div className='text-lg font-bold border-5 border-blue-950 rounded-tr-lg rounded-tl-lg'>
<img src="/gprheader.png" alt="gpr" className='w-full' />
</div>
<div className='overflow-y-scroll h-[343px] border-5 border-blue-950 text-black'>
<div className='text-xs text-left m-2 p-2 bg-[#FFFFFF] rounded-md border-dashed border-2 border-sky-500'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
<div className='text-xs text-left m-2 p-2 bg-[#FFFFFF] rounded-md border-dashed border-2 border-sky-500'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
<div className='text-xs text-left m-2 p-2 bg-[#FFFFFF] rounded-md border-dashed border-2 border-sky-500'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
<div className='text-xs text-left m-2 p-2 bg-[#FFFFFF] rounded-md border-dashed border-2 border-sky-500'>
<p>Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari</p>
<p className='py-[2px]'>21-07-2023 13:50</p>
<p className='flex items-center gap-1'><EyeIcon />82</p>
</div>
</div>
<div className=' border-5 border-blue-950 rounded-bl-lg rounded-br-lg'>
<img src="/gprfooter.png" alt="gpr" className='w-full' />
</div> */}
</div>
</div>
)
}

View File

@ -1,300 +0,0 @@
import Link from 'next/link';
import Facebookwidget from '../SocialMedia/Facebook';
import InstagramWidget from '../SocialMedia/Instagram';
import TwitterWidget from '../SocialMedia/Twitter';
import { ChevronRightIcon, FbIcon, IgIcon, TtIcon, TwitterIcon, YtIcon } from '../icons';
export default function MediaSocial() {
// const [limitedData, setLimitedData] = useState<any>([]);
const dummyData = [
{
id: 1,
logo: "/logohumas.png",
division: "Divisi Humas Polri",
type: "/temp/offical.svg",
username: "@DivHumas_Polri",
followIcon: "/temp/iconX.svg",
description:
"Pada pembukaan KTT ke-43 ASEAN, Presiden RI, H. Joko Widodo menegaskan bahwa kesatuan ASEAN sampai saat ini masih terjaga dan terpelihara dengan baik.",
imageUrl: "/headernews.png",
},
{
id: 2,
logo: "/logohumas.png",
division: "Divisi Humas Polri",
username: "@DivHumas_Polri",
type: "/temp/offical.svg",
followIcon: "/temp/iconX.svg",
description:
"Pada pembukaan KTT ke-43 ASEAN, Presiden RI, H. Joko Widodo menegaskan bahwa kesatuan ASEAN sampai saat ini masih terjaga dan terpelihara dengan baik.",
imageUrl: "/headernews.png",
},
{
id: 3,
logo: "/logohumas.png",
division: "Divisi Humas Polri",
type: "/temp/offical.svg",
username: "@DivHumas_Polri",
followIcon: "/temp/iconX.svg",
description:
"Pada pembukaan KTT ke-43 ASEAN, Presiden RI, H. Joko Widodo menegaskan bahwa kesatuan ASEAN sampai saat ini masih terjaga dan terpelihara dengan baik.",
imageUrl: "/headernews.png",
},
// {
// id: 4,
// logo: "/logohumas.png",
// division: "Divisi Humas Polri",
// username: "@DivHumas_Polri",
// followIcon: "/temp/iconX.svg",
// description:
// "Pada pembukaan KTT ke-43 ASEAN, Presiden RI, H. Joko Widodo menegaskan bahwa kesatuan ASEAN sampai saat ini masih terjaga dan terpelihara dengan baik.",
// imageUrl: "/headernews.png",
// },
// {
// id: 4,
// logo: "/logohumas.png",
// division: "Divisi Humas Polri",
// username: "@DivHumas_Polri",
// followIcon: "/temp/iconX.svg",
// description:
// "Pada pembukaan KTT ke-43 ASEAN, Presiden RI, H. Joko Widodo menegaskan bahwa kesatuan ASEAN sampai saat ini masih terjaga dan terpelihara dengan baik.",
// imageUrl: "/headernews.png",
// },
];
// useEffect(() => {
// function updateLimitedData() {
// if (window.matchMedia("(max-width: 767px)").matches) {
// setLimitedData(dummyData.slice(0, 1));
// } else if (window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches) {
// setLimitedData(dummyData.slice(0, 2));
// } else {
// setLimitedData(dummyData.slice(0, 3));
// }
// }
// updateLimitedData();
// window.addEventListener('resize', updateLimitedData);
// return () => {
// window.removeEventListener('resize', updateLimitedData);
// };
// }, [dummyData]);
return (
<div className='space-y-5 md:space-y-7'>
<p className='text-2xl font- underline underline-offset-8 decoration-red-700'>MediaSocial</p>
<div>
<div className='flex items-center justify-between pb-3'>
<div className='font-semibold flex items-center'>
<TwitterIcon color='#1DA1F2' />
<p className='pl-2'>Twitter</p>
</div>
<div className='text-xs text-[#DD8306] flex items-center'>Lihat Semua <ChevronRightIcon /></div>
</div>
<div>
<TwitterWidget />
</div>
{/* {dummyData.map((data: any) => (
<div
key={data.id}
className='bg-white text-black h-[2] w-auto md:w-[315px] border-2 rounded-md px-5 py-3'
>
<div className='h-[20%] flex items-center text-xs justify-between'>
<div className='flex gap-2'2
<div className='h-[50px]'>
<img src={data.logo} alt="logo" className='h-[50px]' />
</div>
<div className='flex flex-col gap-1'>
<p className='flex gap-1'>{data.division} <img src={data.type} alt="" /></p>
<p className='text-blue-500'>{data.username}</p>
</div>
</div>
<div className='space-y-1 flex flex-col items-end'>
<div><img src={data.followIcon} alt="" /></div>
<p className='text-blue-500 font-bold'>Follow</p>
</div>
</div>
<div className='h-[35%] text-xs'>
{data.description}
<a className='text-blue-500'><br />Lihat Selengkapnya</a>
</div>
<div className='h-[45%]'>
<div className='flex justify-center'>
<img src={data.imageUrl} alt="header" className='h-[165px]' />
</div>
</div>
</div>
))} */}
</div>
<div>
<div className='flex items-center justify-between pb-3'>
<div className='font-semibold flex items-center'>
<IgIcon height={50} color='#1DA1F2' />
<p className='pl-2'>Instagram</p>
</div>
<div className='text-xs text-[#DD8306]'><Link href='https://www.instagram.com/divisihumaspolri/' className='flex items-center'>Lihat Semua <ChevronRightIcon /></Link> </div>
</div>
<div className=''>
<InstagramWidget />
{/* {dummyData.map((data: any) => (
<div
key={data.id}
className='bg-white text-black h-[400px] w-auto md:w-[315px] border-2 rounded-md px-5 py-3'
>
<div className='h-[20%] flex items-center text-xs justify-between'>
<div className='flex gap-2'>
<div className='h-[50px]'>
<img src={data.logo} alt="logo" className='h-[50px]' />
</div>
<div className='flex flex-col gap-1'>
<p className='flex gap-1'>{data.division} <img src={data.type} alt="" /></p>
<p className='text-blue-500'>{data.username}</p>
</div>
</div>
<div className='flex flex-col items-end'>
<div><img src='/temp/iconIG.svg' alt="" /></div>
<p className='text-blue-500 font-bold'><u>Lihat Profile</u></p>
</div>
</div>
<div className='h-[35%] text-xs'>
{data.description}
<a className='text-blue-500'><br />Lihat Selengkapnya</a>
</div>
<div className='h-[45%]'>
<div className='flex justify-center'>
<img src={data.imageUrl} alt="header" className='h-[165px]' />
</div>
</div>
</div>
))} */}
</div>
</div>
<div>
<div className='flex items-center justify-between pb-3'>
<div className='font-semibold flex items-center'>
<FbIcon color='#1DA1F2' />
Facebook
</div>
<div className='text-xs text-[#DD8306] flex items-center'>Lihat Semua <ChevronRightIcon /></div>
</div>
<div className='md:flex flex-wrap gap-4 justify-center'>
{dummyData.map((data: any) => (
<div
key={data.id}
className='bg-white text-black h-[400px] w-auto md:w-[315px] border-2 rounded-md px-5 py-3'
>
<div className='h-[20%] flex items-center text-xs justify-between'>
<div className='flex gap-2'>
<div className='h-[50px]'>
<img src={data.logo} alt="logo" className='h-[50px]' />
</div>
<div className='flex flex-col gap-1 justify-center'>
<p className='flex gap-1'>{data.division} <img src={data.type} alt="" /></p>
</div>
</div>
<div className=''>
<div className='flex gap-1 text-blue-500'><img src="/temp/share.svg" alt="" />Share</div>
</div>
</div>
<div className='h-[35%] text-xs'>
{data.description}
<a className='text-blue-500'><br />Lihat Selengkapnya</a>
</div>
<div className='h-[45%]'>
<div className='flex justify-center'>
<img src={data.imageUrl} alt="header" className='h-[165px]' />
</div>
</div>
</div>
))}
</div>
</div>
<div>
<div className='flex items-center justify-between pb-3'>
<div className='font-semibold flex items-center'>
<TtIcon color='#1DA1F2' />
Tiktok
</div>
<div className='text-xs text-[#DD8306] flex items-center'>Lihat Semua <ChevronRightIcon /></div>
</div>
<div className='md:flex flex-wrap gap-4 justify-center'>
{dummyData.map((data: any) => (
<div
key={data.id}
className='bg-white text-black h-[400px] w-auto md:w-[315px] border-2 rounded-md px-5 py-3'
>
<div className='h-[20%] flex items-center text-xs justify-between'>
<div className='flex gap-2'>
<div className='h-[50px]'>
<img src={data.logo} alt="logo" className='h-[50px]' />
</div>
<div className='flex flex-col gap-1 justify-center'>
<p className='flex gap-1'>{data.division} <img src={data.type} alt="" /></p>
</div>
</div>
<div className=''>
<div className='flex gap-1 text-blue-500'><img src="/temp/share.svg" alt="" />Share</div>
</div>
</div>
<div className='h-[35%] text-xs'>
{data.description}
<a className='text-blue-500'><br />Lihat Selengkapnya</a>
</div>
<div className='h-[45%]'>
<div className='flex justify-center'>
<img src={data.imageUrl} alt="header" className='h-[165px]' />
</div>
</div>
</div>
))}
</div>
</div>
<div>
<div className='flex items-center justify-between pb-3'>
<div className='font-semibold flex items-center'>
<YtIcon color='#1DA1F2' />
Youtube
</div>
<div className='text-xs text-[#DD8306]'><Link href='https://www.youtube.com/channel/UCPiCGqy-07vQJUySV5Gs-kA' className='flex items-center' target='_blank'> Lihat Semua <ChevronRightIcon /></Link></div>
</div>
<div className=''>
<div className=' rounded-md '>
<Facebookwidget />
</div>
{/* {dummyData.map((data: any) => (
<div
key={data.id}
className='bg-white text-black h-[400px] w-auto md:w-[315px] border-2 rounded-md px-5 py-3'
>
<div className='h-[20%] flex items-center text-xs justify-between'>
<div className='flex gap-2'>
<div className='h-[50px]'>
<img src={data.logo} alt="logo" className='h-[50px]' />
</div>
<div className='flex flex-col gap-1 justify-center'>
<p className='flex gap-1'>{data.division} <img src={data.type} alt="" /></p>
</div>
</div>
<div className='space-y-1 flex flex-col items-end'>
<div><DotsIcon /></div>
</div>
</div>
<div className='h-[35%] text-xs'>
{data.description}
<a className='text-blue-500'><br />Lihat Selengkapnya</a>
</div>
<div className='h-[45%]'>
<div className='flex justify-center'>
<img src={data.imageUrl} alt="header" className='h-[165px]' />
</div>
</div>
</div>
))} */}
</div>
</div>
</div >
)
}

View File

@ -1,261 +0,0 @@
import { Button, Card, CardBody, CardFooter, Image, Tab, Tabs } from '@nextui-org/react';
import React, { useEffect, useState } from 'react'
import { Swiper, SwiperSlide } from 'swiper/react';
import 'swiper/css';
import 'swiper/css/navigation';
import 'swiper/css/pagination';
import { Navigation, Pagination } from 'swiper/modules';
import { top5NewsMediahub } from '@/service/medol-news-update';
import Link from 'next/link';
export default function MedolUpdate() {
const [mediahubUpdate, setMediahubUpdate] = useState<any>();
useEffect(() => {
async function getMedihubUpdate() {
const res = await top5NewsMediahub();
setMediahubUpdate(res.data?.data?.content);
// console.log("List Top5News", res.data.data?.content);
}
getMedihubUpdate()
}, []);
const mediaHubUpdate = [
{
id: 1,
image: '/temp/mediahub1.png',
title: 'Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan',
createdDate: '12 Januari 2024',
time: '13:00 WITA'
},
{
id: 2,
image: '/temp/mediahub2.png',
title: 'Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak',
createdDate: '14 Januari 2024',
time: '13:00 WIB'
},
{
id: 3,
image: '/temp/mediahub2.png',
title: 'Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak',
createdDate: '14 Januari 2024',
time: '13:00 WIB'
},
{
id: 4,
image: '/temp/mediahub2.png',
title: 'Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak',
createdDate: '14 Januari 2024',
time: '13:00 WIB'
},
{
id: 5,
image: '/temp/mediahub2.png',
title: 'Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak',
createdDate: '14 Januari 2024',
time: '13:00 WIB'
},
]
return (
<div className='border-2 rounded-lg py-2'>
<div className='text-2xl font-semibold underline underline-offset-4 text-center decoration-red-600 '>
Top 5 News Update
</div>
<div className='bg-white text-black p-1 md:p-5 space-y-5'>
<Tabs
classNames={{
tabList: "bg-white shadow-lg border",
tabContent: 'group-data-[selected=true]:text-[white] text-warning'
}}
aria-label="Options" color='warning' className='flex justify-center'>
<Tab key="mediahub" title="MediaHUB Update">
<Swiper
navigation={true}
modules={[Navigation, Pagination]}
spaceBetween={40}
slidesPerView={2}
pagination={true}
className="mySwiper">
{mediahubUpdate?.map((newsItem: any) => (
<SwiperSlide>
<Link href={newsItem?.pageUrl} target='_blank'>
<Card isPressable shadow="sm" className=' bg-white text-black border-2'>
<CardBody className="overflow-visible p-0">
<Image
radius="lg"
width="300%"
alt="tes"
className="object-cover h-[270px]"
src={newsItem.thumbnailLink}
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:31 WITA</p>
<b className=''>{newsItem?.title}</b>
</CardFooter>
</Card>
</Link>
</SwiperSlide>
))}
</Swiper>
<div className='text-center pt-6'>
<Button
className='bg-white text-[#DD8306] font-bold w-56'
size='sm'
color='warning'
variant='bordered'
>
Lihat Lebih Banyak
</Button>
</div>
</Tab>
<Tab key="tbnews" title="Tribrata News Update">
<div className='flex gap-5 justify-center pt-3'>
<Card shadow="sm" isPressable onPress={() => console.log("item pressed")} className='w-[45%] bg-white text-black'>
<CardBody className="overflow-visible p-0">
<Image
shadow="sm"
radius="lg"
width="300%"
alt="tes"
className="object-cover h-[270px]"
src='/temp/mediahub1.png'
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:31 WITA</p>
<b className=''>Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan</b>
</CardFooter>
</Card>
<Card shadow="sm" isPressable onPress={() => console.log("item pressed")} className='w-[45%] bg-white text-black'>
<CardBody className="overflow-visible p-0">
<Image
shadow="sm"
radius="lg"
width="100%"
alt="tes"
className="w-full object-cover h-[270px]"
src='/temp/mediahub2.png'
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:16 WIB</p>
<b>Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak</b>
</CardFooter>
</Card>
</div>
<div className='text-center pt-6'>
<Button
className='bg-white text-[#DD8306] font-bold w-56'
size='sm'
color='warning'
variant='bordered'
>
Lihat Lebih Banyak
</Button>
</div>
</Tab>
<Tab key="inp" title="Indonesia Nasional Police Update">
<div className='flex gap-5 justify-center pt-3'>
<Card shadow="sm" isPressable onPress={() => console.log("item pressed")} className='w-[45%] bg-white text-black'>
<CardBody className="overflow-visible p-0">
<Image
shadow="sm"
radius="lg"
width="300%"
alt="tes"
className="object-cover h-[270px]"
src='/temp/mediahub1.png'
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:31 WITA</p>
<b className=''>Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan</b>
</CardFooter>
</Card>
<Card shadow="sm" isPressable onPress={() => console.log("item pressed")} className='w-[45%] bg-white text-black'>
<CardBody className="overflow-visible p-0">
<Image
shadow="sm"
radius="lg"
width="100%"
alt="tes"
className="w-full object-cover h-[270px]"
src='/temp/mediahub2.png'
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:16 WIB</p>
<b>Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak</b>
</CardFooter>
</Card>
</div>
<div className='text-center pt-6'>
<Button
className='bg-white text-[#DD8306] font-bold w-56'
size='sm'
color='warning'
variant='bordered'
>
Lihat Lebih Banyak
</Button>
</div>
</Tab>
<Tab key="polritv" title="Polri TV Update">
<div className='flex gap-5 justify-center pt-3'>
<Card shadow="sm" isPressable onPress={() => console.log("item pressed")} className='w-[45%] bg-white text-black'>
<CardBody className="overflow-visible p-0">
<Image
shadow="sm"
radius="lg"
width="300%"
alt="tes"
className="object-cover h-[270px]"
src='/temp/mediahub1.png'
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:31 WITA</p>
<b className=''>Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan</b>
</CardFooter>
</Card>
<Card shadow="sm" isPressable onPress={() => console.log("item pressed")} className='w-[45%] bg-white text-black'>
<CardBody className="overflow-visible p-0">
<Image
shadow="sm"
radius="lg"
width="100%"
alt="tes"
className="w-full object-cover h-[270px]"
src='/temp/mediahub2.png'
/>
</CardBody>
<CardFooter className="flex flex-col items-start text-left">
<p className='text-xs'>02-04-2024 09:16 WIB</p>
<b>Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak</b>
</CardFooter>
</Card>
</div>
<div className='text-center pt-6'>
<Button
className='bg-white text-[#DD8306] font-bold w-56'
size='sm'
color='warning'
variant='bordered'
>
Lihat Lebih Banyak
</Button>
</div>
</Tab>
</Tabs>
</div>
</div>
)
}

View File

@ -1,357 +0,0 @@
'use client'
import { Button } from '@nextui-org/button';
import { Image, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, ModalProps, useDisclosure } from '@nextui-org/react';
import { ChevronLeftWhite, ChevronRightWhite } from '../icons';
import React, { useEffect, useState } from 'react';
import Link from 'next/link';
export default function RegionalNews() {
const [limitedData, setLimitedData] = useState<any>([]);
const { isOpen, onOpen, onOpenChange } = useDisclosure();
const [scrollBehavior, setScrollBehavior] = React.useState<ModalProps["scrollBehavior"]>("inside");
const [modalPlacement, setModalPlacement] = React.useState<any>("auto");
const listPolda = [
{
id: 1,
img: "/temp/poldametro.svg",
title: "Polda Metro Jaya",
path: '/news/polda-metro-jaya'
},
{
id: 2,
img: "/temp/polda-sumut.svg",
title: "Polda Sumatra Utara",
path: '/news/polda-sumatra-utara'
},
{
id: 3,
img: "/temp/polda-banten.svg",
title: "Polda Banten",
path: '/news/polda-banten'
},
{
id: 4,
img: "/temp/polda-jateng.svg",
title: "Polda Jawa Tengah",
path: '/news/polda-jateng'
},
{
id: 5,
img: "/temp/polda-jatim.svg",
title: "Polda Jawa Timur",
path: 'news/polda-jatim'
},
];
const listPoldaAll = [
{
id: 1,
img: "/assets/polda/polda-metro-jaya.svg",
title: "Polda Metro Jaya",
path: '/news/polda-metro-jaya'
},
{
id: 2,
img: "/assets/polda/polda-jawa-barat.svg",
title: "Polda Jawa Barat",
path: '/news/polda-jawa-barat'
},
{
id: 3,
img: "/assets/polda/polda-banten.svg",
title: "Polda Banten",
path: '/news/polda-banten'
},
{
id: 4,
img: "/assets/polda/polda-jateng.svg",
title: "Polda Jawa Tengah",
path: '/news/polda-jateng'
},
{
id: 5,
img: "/assets/polda/polda-diy.svg",
title: "Polda D.I Yogyakarta",
path: '/news/polda-daerah-istimewa-yogyakarta'
},
{
id: 6,
img: "/assets/polda/polda-jatim.svg",
title: "Polda Jawa Timur",
path: '/news/polda-jawa-timur'
},
{
id: 7,
img: "/assets/polda/polda-aceh.svg",
title: "Polda Aceh",
path: '/news/polda-aceh'
},
{
id: 8,
img: "/assets/polda/polda-sumut.svg",
title: "Polda Sumatra Utara",
path: '/news/polda-sumatra-utara'
},
{
id: 9,
img: "/assets/polda/polda-sumbar.svg",
title: "Polda Sumatra Barat",
path: '/news/polda-sumatra-barat'
},
{
id: 10,
img: "/assets/polda/polda-riau.svg",
title: "Polda Riau",
path: '/news/polda-riau'
},
{
id: 11,
img: "/assets/polda/polda-kepri.svg",
title: "Polda Kep.Riau",
path: '/news/polda-kepulauan-riau'
},
{
id: 12,
img: "/assets/polda/polda-jambi.svg",
title: "Polda Jambi",
path: '/news/polda-jambi'
},
{
id: 13,
img: "/assets/polda/polda-jambi.svg",
title: "Polda Jambi",
path: '/news/polda-jambi'
},
{
id: 14,
img: "/assets/polda/polda-sumsel.svg",
title: "Polda Sumatra Selatan",
path: '/news/polda-sumatra-selatan'
},
{
id: 15,
img: "/assets/polda/polda-sumsel.svg",
title: "Polda Kep.Bangka Belitung",
path: '/news/polda-bangka-belitung'
},
{
id: 16,
img: "/assets/polda/polda-bengkulu.svg",
title: "Polda Bengkulu",
path: '/news/polda-bengkulu'
},
{
id: 17,
img: "/assets/polda/polda-lampung.svg",
title: "Polda Lampung",
path: '/news/polda-lampung'
},
{
id: 18,
img: "/assets/polda/polda-ntb.svg",
title: "Polda Nusa Tenggara Barat",
path: '/news/polda-ntb'
},
{
id: 19,
img: "/assets/polda/polda-ntb.svg",
title: "Polda Nusa Tenggara Barat",
path: '/news/polda-ntb'
},
{
id: 20,
img: "/assets/polda/polda-ntt.svg",
title: "Polda Nusa Tenggara Timur",
path: '/news/polda-ntt'
},
{
id: 21,
img: "/assets/polda/polda-bali.svg",
title: "Polda Bali",
path: '/news/polda-bali'
},
{
id: 22,
img: "/assets/polda/polda-kalbar.svg",
title: "Polda Kalimantan Barat",
path: '/news/polda-kalimantan-barat'
},
{
id: 23,
img: "/assets/polda/polda-kalteng.svg",
title: "Polda Kalimantan Tengah",
path: '/news/polda-kalimantan-tengah'
},
{
id: 24,
img: "/assets/polda/polda-kalsel.svg",
title: "Polda Kalimantan Selatan",
path: '/news/polda-kalimantan-selatan'
},
{
id: 25,
img: "/assets/polda/polda-kaltim.svg",
title: "Polda Kalimantan Timur",
path: '/news/polda-kalimantan-timur'
},
{
id: 26,
img: "/assets/polda/polda-kalut.svg",
title: "Polda Kalimantan Utara",
path: '/news/polda-kalimantan-utara'
},
{
id: 27,
img: "/assets/polda/polda-sulteng.svg",
title: "Polda Sulawesi Tengah",
path: '/news/polda-sulawesi-tengah'
},
{
id: 28,
img: "/assets/polda/polda-sulawesi-utara.svg",
title: "Polda Sulawesi Utara",
path: '/news/polda-sulawesi-utara'
},
{
id: 29,
img: "/assets/polda/polda-gorontalo.svg",
title: "Polda Gorontalo",
path: '/news/polda-gorontalo'
},
{
id: 30,
img: "/assets/polda/polda-sulbar.svg",
title: "Polda Sulawesi Barat",
path: '/news/polda-sulawesi-barat'
},
{
id: 31,
img: "/assets/polda/polda-sulsel.svg",
title: "Polda Sulawesi Selatan",
path: '/news/polda-sulawesi-selatan'
},
{
id: 32,
img: "/assets/polda/polda-sultenggara.svg",
title: "Polda Sulawesi Tenggara",
path: '/news/polda-sulawesi-tenggara'
},
{
id: 33,
img: "/assets/polda/polda-malut.svg",
title: "Polda Maluku Utara",
path: '/news/polda-maluku-utara'
},
{
id: 34,
img: "/assets/polda/polda-maluku.svg",
title: "Polda Maluku",
path: '/news/polda-maluku'
},
{
id: 35,
img: "/assets/polda/polda-papuabarat.svg",
title: "Polda Papua Barat",
path: '/news/polda-papua-barat'
},
{
id: 36,
img: "/assets/polda/polda-papua.svg",
title: "Polda Papua",
path: '/news/polda-papua'
},
];
// useEffect(() => {
// function updateLimitedData() {
// if (window.matchMedia("(max-width: 767px)").matches) {
// setLimitedData(list.slice(0, 2));
// } else if (window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches) {
// setLimitedData(list.slice(0, 3));
// } else {
// setLimitedData(list.slice(0, 5));
// }
// }
// updateLimitedData();
// window.addEventListener('resize', updateLimitedData);
// return () => {
// window.removeEventListener('resize', updateLimitedData);
// };
// }, [list]);
return (
<div className='text-center border-3 border-[#DD8306] rounded-none md:rounded-lg h-auto lg:h-[338px] py-4 flex flex-col justify-around'>
<div className='font-bold text-2xl underline underline-offset-4 decoration-red-600 text-[#DD8306]'>Berita Wilayah</div>
<div className='flex items-center justify-around'>
<div><ChevronLeftWhite color='orange' /></div>
<div className="gap-2 md:gap-4 lg:gap-6 grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5">
{listPolda.map((item: any, index: any) => (
<Link href={item.path}>
<div key={item.id} className='w-[157px] h-[141px] flex flex-col items-center justify-evenly'>
<Image
radius="lg"
className="h-[59px]"
src={item.img}
/>
<p className='text-xs font-bold text-[#DD8306]'>{item.title}</p>
</div>
</Link>
))}
</div>
<div><ChevronRightWhite color='orange' /></div>
</div>
<div>
<Button
onPress={onOpen}
className='bg-[#DD8306] text-white font-bold'
size='sm'
>
Lihat Lebih Banyak
</Button>
<Modal isOpen={isOpen} onOpenChange={onOpenChange}
size='full'
scrollBehavior={scrollBehavior}
placement={modalPlacement}
classNames={{
wrapper: "bg-white",
base: "bg-white min-h-full",
// body: "w-full bg-white",
// footer: "bg-white"
}}
>
<ModalContent>
{(onClose) => (
<>
<ModalHeader className="flex flex-col text-[#DD8306] items-center min-h mb- text-3xl font-semibold">Berita Wilayah</ModalHeader>
<ModalBody className='flex flex-row flex-wrap justify-center text-center'>
{listPoldaAll.map((item: any, index: any) => (
<div key={index.id} className='w-[140px] h-[115px] flex flex-col items-center justify-center border-2 rounded-lg shadow-sm'>
<Link href={item.path}>
<div className='flex flex-col items-center '>
<Image
radius="lg"
className="h-[59px]"
src={item.img}
/>
<p className='text-xs font-bold text-[#DD8306]'>{item.title}</p>
</div>
</Link>
</div>
))}
</ModalBody>
<ModalFooter>
<Button color="danger" variant="light" onPress={onClose}>
Tutup
</Button>
</ModalFooter>
</>
)}
</ModalContent>
</Modal>
</div>
</div>
)
}

View File

@ -1,87 +0,0 @@
'use client'
import React from 'react'
import { FbIcon, Hotline, IgIcon, Location, Mail, TtIcon, TwIcon, WorldIcon, YtIcon } from '../icons'
export default function FooterPPID() {
return (
<>
<div id='footer-ppid' className='scroll-smooth w-full bg-[#1F1A17] flex flex-col md:grid md:grid-cols-3 lg:grid-cols-4 gap-0 md:gap-3 lg:gap-7 p-2 lg:p-16 text-sm'>
<div className=' flex-col hidden lg:block'>
<img src="/e-ppid.png" alt="logo" />
</div>
<div className='text-sm space-y-3 text-white'>
<div className='border-b-2 border-white border-dashed pb-0 md:pb-2 font-semibold'>Kontak Kami</div>
<div className='flex gap-2'>
<div><Location /></div>
<div>Jl Trunojoyo No.3, RT.2/RW.1, Selong, Kec. Kebayoran Baru, Kota Jakarta Selatan, Daerah Khusus Ibukota Jakarta 12110, Indonesia</div>
</div>
<div className='flex gap-2'>
<div><Hotline /></div>
<div>Hotline Divisi HumasPolri (021) 72120599</div>
</div>
<div className='flex gap-2'>
<div><Hotline /></div>
<div>Call Center 110</div>
</div>
<div className='flex gap-2'>
<div><Mail /></div>
<div>ppid@polri.go.id</div>
</div>
</div>
<div>
<div className='text-sm space-y-3 text-white'>
<div className='border-b-2 border-white border-dashed pb-2 text-white font-semibold'>Tautan</div>
<div className='grid grid-cols-2 gap-2'>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>Polri.go.id</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>TBNews</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>Humas Polri</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>MediaHub</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>Satu Data</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>PUSIKNAS</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>SPIT</div>
</div>
<div className='flex gap-2'>
<div><WorldIcon /></div>
<div>POLRI TV</div>
</div>
</div>
</div>
</div>
<div>
<div className='text-sm space-y-3 text-white'>
<div className='border-b-2 border-white border-dashed pb-2 '>Social Media Humas</div>
<div className="flex gap-1 lg:gap-3 items-center">
<div><FbIcon /></div>
<div><IgIcon /></div>
<div><YtIcon /></div>
<div><TwIcon /></div>
<div><TtIcon /></div>
</div>
</div>
</div>
</div>
<div className='dark:bg-black text-black dark:text-white text-center py-2 text-xs md:text-sm flex justify-center font-normal'>&copy; Copyright Humas<p className='text-red-700'>&nbsp; POLRI &reg;</p>&nbsp; All Rights Reserved</div>
</>
)
}

Some files were not shown because too many files have changed in this diff Show More