humas restructure
This commit is contained in:
parent
afec24a759
commit
949b0e1924
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
40
app/page.tsx
40
app/page.tsx
|
|
@ -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>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 />;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
)
|
||||
}
|
||||
|
|
@ -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>
|
||||
)
|
||||
}
|
||||
|
|
@ -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>
|
||||
)
|
||||
}
|
||||
|
|
@ -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 >
|
||||
)
|
||||
}
|
||||
|
|
@ -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>
|
||||
)
|
||||
}
|
||||
|
|
@ -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>
|
||||
)
|
||||
}
|
||||
|
|
@ -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'>© Copyright Humas<p className='text-red-700'> POLRI ®</p> All Rights Reserved</div>
|
||||
</>
|
||||
|
||||
)
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue