diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e10b0f4..0ab3ebc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,20 +7,23 @@ build-dev: when: on_success only: - main + - dev-restructure image: docker:stable services: - - docker:dind + - name: docker:dind + command: ["--insecure-registry=103.82.242.92:8900"] script: - docker logout - - docker login -u $DEPLOY_USERNAME -p $DEPLOY_TOKEN registry.gitlab.com - - docker build -t registry.gitlab.com/hanifsalafi/web-humas-polri:dev . - - docker push registry.gitlab.com/hanifsalafi/web-humas-polri:dev + - docker login -u $DEPLOY_USERNAME -p $DEPLOY_TOKEN 103.82.242.92:8900 + - docker build -t 103.82.242.92:8900/humas/web-humas-fe:dev . + - docker push 103.82.242.92:8900/humas/web-humas-fe:dev auto-deploy: stage: deploy when: on_success only: - main + - dev-restructure image: curlimages/curl:latest services: - docker:dind diff --git a/app/(admin)/admin/article/detail/[id]/page.tsx b/app/(admin)/admin/article/detail/[id]/page.tsx new file mode 100644 index 0000000..ef37625 --- /dev/null +++ b/app/(admin)/admin/article/detail/[id]/page.tsx @@ -0,0 +1,10 @@ +import FormDetailArticle from '@/components/form/form-detail-article' +import { Card } from '@nextui-org/react' + +export default function DetailArticlePage() { + return ( + + + + ) +} diff --git a/app/(admin)/admin/article/edit/[id]/page.tsx b/app/(admin)/admin/article/edit/[id]/page.tsx new file mode 100644 index 0000000..c8ad851 --- /dev/null +++ b/app/(admin)/admin/article/edit/[id]/page.tsx @@ -0,0 +1,10 @@ +import FormUpdateArticle from '@/components/form/form-edit-article' +import { Card } from '@nextui-org/react' + +export default function UpdateArticlePage() { + return ( + + + + ) +} diff --git a/app/(admin)/admin/article/generate/edit/[id]/page.tsx b/app/(admin)/admin/article/generate/edit/[id]/page.tsx new file mode 100644 index 0000000..943c141 --- /dev/null +++ b/app/(admin)/admin/article/generate/edit/[id]/page.tsx @@ -0,0 +1,14 @@ +"use client"; +import EditGeneratedArticle from "@/components/form/article/edit-generated-article"; +import { Card } from "@nextui-org/react"; +import { useParams } from "next/navigation"; + +export default function EditGeneratedArticlePage() { + const params = useParams(); + const id = String(params.id); + return ( + + + + ); +} diff --git a/app/(admin)/admin/article/generate/page.tsx b/app/(admin)/admin/article/generate/page.tsx new file mode 100644 index 0000000..9ffa6d2 --- /dev/null +++ b/app/(admin)/admin/article/generate/page.tsx @@ -0,0 +1,10 @@ +import GenerateArticleForm from "@/components/form/article/generate-article-form"; +import { Card } from "@nextui-org/react"; + +export default function GenerateArticle() { + return ( + + + + ); +} diff --git a/app/(admin)/admin/article/page.tsx b/app/(admin)/admin/article/page.tsx index f71a4fd..eb6aa4a 100644 --- a/app/(admin)/admin/article/page.tsx +++ b/app/(admin)/admin/article/page.tsx @@ -1,24 +1,31 @@ -"use client" +"use client"; import { AddIcon } from "@/components/icons"; import ArticleTable from "@/components/table/article-table"; import { Button, Card } from "@nextui-org/react"; import Link from "next/link"; export default function BasicPage() { - return ( -
-
- - - - - - - - -
+ return ( +
+
+
+ + + + + +
- ); +
+ +
+
+
+ ); } diff --git a/app/(admin)/admin/basic/page.tsx b/app/(admin)/admin/basic/page.tsx deleted file mode 100644 index f9d5058..0000000 --- a/app/(admin)/admin/basic/page.tsx +++ /dev/null @@ -1,39 +0,0 @@ -"use client" -import { Card, Divider, Image } from "@nextui-org/react"; - -export default function BasicPage() { - return ( -
-
-
-
-
-
-

Basic Table

-

Home{" > "} Basic Table

-
-
- NextUI hero Image -
-
-
-
- -

Basic Table

- -
- {/* - - - - */} -
-
-
-
- ); -} diff --git a/app/(admin)/admin/e-magazine/create/page.tsx b/app/(admin)/admin/e-magazine/create/page.tsx new file mode 100644 index 0000000..429ac76 --- /dev/null +++ b/app/(admin)/admin/e-magazine/create/page.tsx @@ -0,0 +1,16 @@ +import CreateMagazineForm from '@/components/form/magazine/magazine-form' +import MagazineTable from '@/components/table/magazine/magazine-table' +import { Card } from '@nextui-org/react' +import React from 'react' + +const AdminMagazineCreate = () => { + return ( +
+
+ +
+
+ ) +} + +export default AdminMagazineCreate \ No newline at end of file diff --git a/app/(admin)/admin/e-magazine/detail/page.tsx b/app/(admin)/admin/e-magazine/detail/page.tsx new file mode 100644 index 0000000..597c324 --- /dev/null +++ b/app/(admin)/admin/e-magazine/detail/page.tsx @@ -0,0 +1,11 @@ +import CreateMagazineForm from '@/components/form/magazine/magazine-form' +import MagazineTable from '@/components/table/magazine/magazine-table' +import React from 'react' + +const AdminMagazineDetail = () => { + return ( +
+ ) +} + +export default AdminMagazineDetail \ No newline at end of file diff --git a/app/(admin)/admin/e-magazine/page.tsx b/app/(admin)/admin/e-magazine/page.tsx new file mode 100644 index 0000000..b2250f5 --- /dev/null +++ b/app/(admin)/admin/e-magazine/page.tsx @@ -0,0 +1,10 @@ +import MagazineTable from '@/components/table/magazine/magazine-table' +import React from 'react' + +const AdminMagazine = () => { + return ( +
+ ) +} + +export default AdminMagazine \ No newline at end of file diff --git a/app/(admin)/admin/master-menu/create/page.tsx b/app/(admin)/admin/master-menu/create/page.tsx new file mode 100644 index 0000000..637fedf --- /dev/null +++ b/app/(admin)/admin/master-menu/create/page.tsx @@ -0,0 +1,15 @@ +import CreateMagazineForm from '@/components/form/magazine/magazine-form' +import CreateMenuDataForm from '@/components/form/master/master-menu/menu-data/menu-data-form' +import MagazineTable from '@/components/table/magazine/magazine-table' +import { Card } from '@nextui-org/react' +import React from 'react' + +const AdminMenuDataCreate = () => { + return ( + + + + ) +} + +export default AdminMenuDataCreate \ No newline at end of file diff --git a/app/(admin)/admin/master-menu/page.tsx b/app/(admin)/admin/master-menu/page.tsx new file mode 100644 index 0000000..b2f82d0 --- /dev/null +++ b/app/(admin)/admin/master-menu/page.tsx @@ -0,0 +1,17 @@ +import MagazineTable from '@/components/table/magazine/magazine-table' +import MenuDataTable from '@/components/table/master/master-menu/menu-data/menu-data-table' +import { Image } from '@nextui-org/react' +import React from 'react' + +const AdminMenuData = () => { + return ( +
+
+ +
+
+ + ) +} + +export default AdminMenuData \ No newline at end of file diff --git a/app/(admin)/admin/master-module/create/page.tsx b/app/(admin)/admin/master-module/create/page.tsx new file mode 100644 index 0000000..fd07497 --- /dev/null +++ b/app/(admin)/admin/master-module/create/page.tsx @@ -0,0 +1,16 @@ +import CreateMagazineForm from '@/components/form/magazine/magazine-form' +import CreateMenuDataForm from '@/components/form/master/master-menu/menu-data/menu-data-form' +import CreateMasterModuleForm from '@/components/form/master/master-module/master-module-form' +import MagazineTable from '@/components/table/magazine/magazine-table' +import { Card } from '@nextui-org/react' +import React from 'react' + +const AdminMasterModuleCreate = () => { + return ( + + + + ) +} + +export default AdminMasterModuleCreate \ No newline at end of file diff --git a/app/(admin)/admin/master-module/page.tsx b/app/(admin)/admin/master-module/page.tsx new file mode 100644 index 0000000..ec8fe00 --- /dev/null +++ b/app/(admin)/admin/master-module/page.tsx @@ -0,0 +1,16 @@ +import MagazineTable from '@/components/table/magazine/magazine-table' +import MenuDataTable from '@/components/table/master/master-menu/menu-data/menu-data-table' +import MasterModuleTable from '@/components/table/master/master-module/master-module-table' +import React from 'react' + +const AdminMasterModule = () => { + return ( +
+
+ +
+
+ ) +} + +export default AdminMasterModule \ No newline at end of file diff --git a/app/(admin)/admin/master-role/create/page.tsx b/app/(admin)/admin/master-role/create/page.tsx new file mode 100644 index 0000000..ab2c6f9 --- /dev/null +++ b/app/(admin)/admin/master-role/create/page.tsx @@ -0,0 +1,10 @@ +import FormMasterUserRole from '@/components/form/form-master-user-role' +import { Card } from '@nextui-org/react' + +export default function CreateMasterUserRolePage() { + return ( + + + + ) +} diff --git a/app/(admin)/admin/master-role/detail/[id]/page.tsx b/app/(admin)/admin/master-role/detail/[id]/page.tsx new file mode 100644 index 0000000..0fec0be --- /dev/null +++ b/app/(admin)/admin/master-role/detail/[id]/page.tsx @@ -0,0 +1,10 @@ +import FormDetailMasterUserRole from '@/components/form/form-detail-master-user-role' +import { Card } from '@nextui-org/react' + +export default function DetailMasterRolePage() { + return ( + + + + ) +} diff --git a/app/(admin)/admin/master-role/page.tsx b/app/(admin)/admin/master-role/page.tsx new file mode 100644 index 0000000..6abf18b --- /dev/null +++ b/app/(admin)/admin/master-role/page.tsx @@ -0,0 +1,24 @@ +"use client" +import { AddIcon } from "@/components/icons"; +import MasterRoleTable from "@/components/table/master-role-table"; +import { Button, Card } from "@nextui-org/react"; +import Link from "next/link"; + +export default function MasterRolePage() { + return ( +
+
+ + + + + + + + +
+
+ ); +} diff --git a/app/(admin)/admin/master-user-level/create/page.tsx b/app/(admin)/admin/master-user-level/create/page.tsx new file mode 100644 index 0000000..ddc1539 --- /dev/null +++ b/app/(admin)/admin/master-user-level/create/page.tsx @@ -0,0 +1,17 @@ +import CreateMagazineForm from '@/components/form/magazine/magazine-form' +import CreateMenuDataForm from '@/components/form/master/master-menu/menu-data/menu-data-form' +import CreateMasterModuleForm from '@/components/form/master/master-module/master-module-form' +import CreateMasterUserLevelForm from '@/components/form/master/master-user-level/master-user-level-form' +import MagazineTable from '@/components/table/magazine/magazine-table' +import { Card } from '@nextui-org/react' +import React from 'react' + +const AdminMasterUserLevelCreate = () => { + return ( + + + + ) +} + +export default AdminMasterUserLevelCreate \ No newline at end of file diff --git a/app/(admin)/admin/master-user-level/page.tsx b/app/(admin)/admin/master-user-level/page.tsx new file mode 100644 index 0000000..022921e --- /dev/null +++ b/app/(admin)/admin/master-user-level/page.tsx @@ -0,0 +1,17 @@ +import MagazineTable from '@/components/table/magazine/magazine-table' +import MenuDataTable from '@/components/table/master/master-menu/menu-data/menu-data-table' +import MasterModuleTable from '@/components/table/master/master-module/master-module-table' +import MasterUserLevelTable from '@/components/table/master/master-user-level/master-user-level-table' +import React from 'react' + +const AdminMasterUserLevel = () => { + return ( +
+
+ +
+
+ ) +} + +export default AdminMasterUserLevel \ No newline at end of file diff --git a/app/(admin)/admin/master-user/create/page.tsx b/app/(admin)/admin/master-user/create/page.tsx new file mode 100644 index 0000000..a345e3c --- /dev/null +++ b/app/(admin)/admin/master-user/create/page.tsx @@ -0,0 +1,10 @@ +import FormMasterUser from '@/components/form/form-master-user' +import { Card } from '@nextui-org/react' + +export default function CreateMasterUserPage() { + return ( + + + + ) +} diff --git a/app/(admin)/admin/master-user/page.tsx b/app/(admin)/admin/master-user/page.tsx new file mode 100644 index 0000000..81372a0 --- /dev/null +++ b/app/(admin)/admin/master-user/page.tsx @@ -0,0 +1,24 @@ +"use client" +import { AddIcon } from "@/components/icons"; +import MasterUserTable from "@/components/table/master-user-table"; +import { Button, Card } from "@nextui-org/react"; +import Link from "next/link"; + +export default function MasterUserPage() { + return ( +
+
+ + + + + + + + +
+
+ ); +} diff --git a/app/(admin)/admin/menu1/submenu1/page.tsx b/app/(admin)/admin/menu1/submenu1/page.tsx deleted file mode 100644 index e87ac7f..0000000 --- a/app/(admin)/admin/menu1/submenu1/page.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import { ThemeSwitch } from "@/components/theme-switch"; - -export default function Submenu1Page() { - return ( -
Submenu1 -
- ) -} \ No newline at end of file diff --git a/app/(admin)/admin/menu1/submenu2/page.tsx b/app/(admin)/admin/menu1/submenu2/page.tsx deleted file mode 100644 index 648391b..0000000 --- a/app/(admin)/admin/menu1/submenu2/page.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import { ThemeSwitch } from "@/components/theme-switch"; - -export default function Submenu2Page() { - return ( -
Submenu2 -
- ) -} \ No newline at end of file diff --git a/app/(admin)/admin/static-page/create/page.tsx b/app/(admin)/admin/static-page/create/page.tsx new file mode 100644 index 0000000..cd7c356 --- /dev/null +++ b/app/(admin)/admin/static-page/create/page.tsx @@ -0,0 +1,10 @@ +import StaticPageBuilder from "@/components/main/static-page/static-page-main"; +import { Card } from "@nextui-org/react"; + +export default function StaticPageGenerator() { + return ( + + + + ); +} diff --git a/app/(admin)/admin/static-page/page.tsx b/app/(admin)/admin/static-page/page.tsx new file mode 100644 index 0000000..1a64657 --- /dev/null +++ b/app/(admin)/admin/static-page/page.tsx @@ -0,0 +1,26 @@ +import { AddIcon } from "@/components/icons"; +import StaticPageTable from "@/components/table/static-page-table"; +import { Button, Card } from "@nextui-org/react"; +import Link from "next/link"; + +export default function StaticPageGeneratorList() { + return ( + +
+
+
+ + + +
+
+ +
+
+
+
+ ); +} diff --git a/app/(admin)/dashboard-old/page.tsx b/app/(admin)/dashboard-old/page.tsx deleted file mode 100644 index f4f0d25..0000000 --- a/app/(admin)/dashboard-old/page.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import React from 'react' - -const AdminDasboard = () => { - return ( -
AdminDasboard
- ) -} - -export default AdminDasboard \ No newline at end of file diff --git a/app/admin/page.tsx b/app/admin/page.tsx deleted file mode 100644 index bda639f..0000000 --- a/app/admin/page.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react' - -export default function AdminHumasPage() { - return ( -
-
1
-
1
-
- ) -} diff --git a/app/auth/layout.tsx b/app/auth/layout.tsx new file mode 100644 index 0000000..27799fd --- /dev/null +++ b/app/auth/layout.tsx @@ -0,0 +1,9 @@ +import { HumasLayout } from "@/components/layout/humas-layout"; + +export default function AuthLayout({ + children, +}: { + children: React.ReactNode; +}) { + return {children}; +} diff --git a/app/auth/page.tsx b/app/auth/page.tsx new file mode 100644 index 0000000..3701857 --- /dev/null +++ b/app/auth/page.tsx @@ -0,0 +1,8 @@ +import Login from '@/components/form/login' +import React from 'react' + +export default function AuthPage() { + return ( + + ) +} diff --git a/app/docs/layout.tsx b/app/docs/layout.tsx index cd32d40..905fcf5 100644 --- a/app/docs/layout.tsx +++ b/app/docs/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/e-majalah-polri/daftar-majalah/layout.tsx b/app/e-majalah-polri/daftar-majalah/layout.tsx index 5e42303..c4d7ef5 100644 --- a/app/e-majalah-polri/daftar-majalah/layout.tsx +++ b/app/e-majalah-polri/daftar-majalah/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/e-majalah-polri/detail/[id]/layout.tsx b/app/e-majalah-polri/detail/[id]/layout.tsx index f16043a..0b2da42 100644 --- a/app/e-majalah-polri/detail/[id]/layout.tsx +++ b/app/e-majalah-polri/detail/[id]/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/e-majalah-polri/detail/[id]/page.tsx b/app/e-majalah-polri/detail/[id]/page.tsx index 58417a9..7a2cbd1 100644 --- a/app/e-majalah-polri/detail/[id]/page.tsx +++ b/app/e-majalah-polri/detail/[id]/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/form-permohonan-informasi/layout.tsx b/app/form-permohonan-informasi/layout.tsx index 6f7513a..a271636 100644 --- a/app/form-permohonan-informasi/layout.tsx +++ b/app/form-permohonan-informasi/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/kontak-kami/layout.tsx b/app/kontak-kami/layout.tsx index d36e590..1f5cb86 100644 --- a/app/kontak-kami/layout.tsx +++ b/app/kontak-kami/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/kontak-kami/page.tsx b/app/kontak-kami/page.tsx index 8361be2..c85da70 100644 --- a/app/kontak-kami/page.tsx +++ b/app/kontak-kami/page.tsx @@ -1,7 +1,5 @@ -import Contact from '@/components/detail/Contact' +import Contact from "@/components/main/detail/contact"; export default function VisiMisiPage() { - return ( - - ) + return ; } diff --git a/app/layout.tsx b/app/layout.tsx index d2581cc..8a018d7 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -4,44 +4,55 @@ import "@/styles/globals.css"; import clsx from "clsx"; import { Metadata } from "next"; import { Providers } from "./providers"; +import LoadScript from "@/utils/global"; export const metadata: Metadata = { - title: { - default: siteConfig.name, - template: `%s - ${siteConfig.name}`, - }, - description: siteConfig.description, - themeColor: [ - { media: "(prefers-color-scheme: light)", color: "white" }, - { media: "(prefers-color-scheme: dark)", color: "black" }, - ], - icons: { - icon: "/logohumas.ico", - shortcut: "/favicon-16x16.png", - apple: "/apple-touch-icon.png", - }, + title: { + default: siteConfig.name, + template: `%s - ${siteConfig.name}`, + }, + description: siteConfig.description, + themeColor: [ + { media: "(prefers-color-scheme: light)", color: "white" }, + { media: "(prefers-color-scheme: dark)", color: "black" }, + ], + icons: { + icon: "/logohumas.ico", + shortcut: "/favicon-16x16.png", + apple: "/apple-touch-icon.png", + }, }; export default function RootLayout({ - children, + children, }: { - children: React.ReactNode; + children: React.ReactNode; }) { - return ( - - - - -
- {children} -
-
- - - ); + return ( + + + + + + + + +
{children}
+
+ + + ); } diff --git a/app/news/[polda-name]/layout.tsx b/app/news/[polda-name]/layout.tsx index 3164a5f..78853da 100644 --- a/app/news/[polda-name]/layout.tsx +++ b/app/news/[polda-name]/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/news/[polda-name]/page.tsx b/app/news/[polda-name]/page.tsx index 9eced98..78fc48a 100644 --- a/app/news/[polda-name]/page.tsx +++ b/app/news/[polda-name]/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/news/all/layout.tsx b/app/news/all/layout.tsx index 2f57034..e38b5a2 100644 --- a/app/news/all/layout.tsx +++ b/app/news/all/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/news/all/page.tsx b/app/news/all/page.tsx index ffe2efa..fe62296 100644 --- a/app/news/all/page.tsx +++ b/app/news/all/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/news/detail/[id]/layout.tsx b/app/news/detail/[id]/layout.tsx index 1fd5e92..3a26a21 100644 --- a/app/news/detail/[id]/layout.tsx +++ b/app/news/detail/[id]/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/news/detail/[id]/page.tsx b/app/news/detail/[id]/page.tsx index 525c21b..0a5cafc 100644 --- a/app/news/detail/[id]/page.tsx +++ b/app/news/detail/[id]/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/page.tsx b/app/page.tsx index cd8378d..4440f64 100644 --- a/app/page.tsx +++ b/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 ( - <> - - - - - - - ); + return ( + <> + + + + + + + ); } diff --git a/app/portal-ppid/admin/layout.tsx b/app/portal-ppid/admin/layout.tsx index ca3c9d2..efbc13a 100644 --- a/app/portal-ppid/admin/layout.tsx +++ b/app/portal-ppid/admin/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/portal-ppid/e-ppid-polda/layout.tsx b/app/portal-ppid/e-ppid-polda/layout.tsx index f329cb8..2f35c34 100644 --- a/app/portal-ppid/e-ppid-polda/layout.tsx +++ b/app/portal-ppid/e-ppid-polda/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/e-ppid-polda/page.tsx b/app/portal-ppid/e-ppid-polda/page.tsx index c5400a9..60546d8 100644 --- a/app/portal-ppid/e-ppid-polda/page.tsx +++ b/app/portal-ppid/e-ppid-polda/page.tsx @@ -1,7 +1,5 @@ -import PPIDPolda from '@/components/Portal PPID/PPIDPolda' +import PPIDPolda from "@/components/layout/portal-ppid/PPIDPolda"; export default function PPIDSakterPage() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/e-ppid-satker/layout.tsx b/app/portal-ppid/e-ppid-satker/layout.tsx index 60d49f1..68c20d3 100644 --- a/app/portal-ppid/e-ppid-satker/layout.tsx +++ b/app/portal-ppid/e-ppid-satker/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/e-ppid-satker/page.tsx b/app/portal-ppid/e-ppid-satker/page.tsx index c551720..d364c60 100644 --- a/app/portal-ppid/e-ppid-satker/page.tsx +++ b/app/portal-ppid/e-ppid-satker/page.tsx @@ -1,7 +1,5 @@ -import PPIDSatker from '@/components/Portal PPID/PPIDSatker' +import PPIDSatker from "@/components/layout/portal-ppid/PPIDSatker"; export default function PPIDSakterPage() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/informasi-publik/informasi-berkala/page.tsx b/app/portal-ppid/informasi-publik/informasi-berkala/page.tsx index 3d60269..a704fb5 100644 --- a/app/portal-ppid/informasi-publik/informasi-berkala/page.tsx +++ b/app/portal-ppid/informasi-publik/informasi-berkala/page.tsx @@ -1,7 +1,5 @@ -import InformasiBerkala from '@/components/table/informasi-berkala' +import InformasiBerkala from "@/components/table/informasi-berkala-table"; export default function InformasiSMPage() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/informasi-publik/layout.tsx b/app/portal-ppid/informasi-publik/layout.tsx index dcd019e..b644c61 100644 --- a/app/portal-ppid/informasi-publik/layout.tsx +++ b/app/portal-ppid/informasi-publik/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/layanan-informasi/layout.tsx b/app/portal-ppid/layanan-informasi/layout.tsx index b4b25dd..b1e64c0 100644 --- a/app/portal-ppid/layanan-informasi/layout.tsx +++ b/app/portal-ppid/layanan-informasi/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/layanan-informasi/statistik-rekapitulasi/page.tsx b/app/portal-ppid/layanan-informasi/statistik-rekapitulasi/page.tsx index 3974cba..99a656f 100644 --- a/app/portal-ppid/layanan-informasi/statistik-rekapitulasi/page.tsx +++ b/app/portal-ppid/layanan-informasi/statistik-rekapitulasi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/page.tsx b/app/portal-ppid/page.tsx index bc6a029..b698920 100644 --- a/app/portal-ppid/page.tsx +++ b/app/portal-ppid/page.tsx @@ -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 ( - <> - - - - - - ) + return ( + <> + + + + + + ); } diff --git a/app/portal-ppid/polda/[polda-name]/informasi-publik/informasi-berkala/page.tsx b/app/portal-ppid/polda/[polda-name]/informasi-publik/informasi-berkala/page.tsx index 3d60269..a704fb5 100644 --- a/app/portal-ppid/polda/[polda-name]/informasi-publik/informasi-berkala/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/informasi-publik/informasi-berkala/page.tsx @@ -1,7 +1,5 @@ -import InformasiBerkala from '@/components/table/informasi-berkala' +import InformasiBerkala from "@/components/table/informasi-berkala-table"; export default function InformasiSMPage() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/informasi-publik/layout.tsx b/app/portal-ppid/polda/[polda-name]/informasi-publik/layout.tsx index 36d5457..7dc8377 100644 --- a/app/portal-ppid/polda/[polda-name]/informasi-publik/layout.tsx +++ b/app/portal-ppid/polda/[polda-name]/informasi-publik/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/polda/[polda-name]/layanan-informasi/layout.tsx b/app/portal-ppid/polda/[polda-name]/layanan-informasi/layout.tsx index 033e90c..1ca1cb2 100644 --- a/app/portal-ppid/polda/[polda-name]/layanan-informasi/layout.tsx +++ b/app/portal-ppid/polda/[polda-name]/layanan-informasi/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/polda/[polda-name]/layanan-informasi/statistik-rekapitulasi/page.tsx b/app/portal-ppid/polda/[polda-name]/layanan-informasi/statistik-rekapitulasi/page.tsx index 3974cba..99a656f 100644 --- a/app/portal-ppid/polda/[polda-name]/layanan-informasi/statistik-rekapitulasi/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/layanan-informasi/statistik-rekapitulasi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/page.tsx b/app/portal-ppid/polda/[polda-name]/page.tsx index 3ef9c51..a1f7452 100644 --- a/app/portal-ppid/polda/[polda-name]/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/page.tsx @@ -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 ( -
-
- - - - -
-
- ) + return ( +
+
+ + + + +
+
+ ); } diff --git a/app/portal-ppid/polda/[polda-name]/profile/layout.tsx b/app/portal-ppid/polda/[polda-name]/profile/layout.tsx index 36d5457..7dc8377 100644 --- a/app/portal-ppid/polda/[polda-name]/profile/layout.tsx +++ b/app/portal-ppid/polda/[polda-name]/profile/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/polda/[polda-name]/profile/profile-singkat-ppid/page.tsx b/app/portal-ppid/polda/[polda-name]/profile/profile-singkat-ppid/page.tsx index d465284..1c6841c 100644 --- a/app/portal-ppid/polda/[polda-name]/profile/profile-singkat-ppid/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/profile/profile-singkat-ppid/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/profile/sejarah-ppid-polri/page.tsx b/app/portal-ppid/polda/[polda-name]/profile/sejarah-ppid-polri/page.tsx index a84afcd..7dedf21 100644 --- a/app/portal-ppid/polda/[polda-name]/profile/sejarah-ppid-polri/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/profile/sejarah-ppid-polri/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/profile/struktur-ppid/page.tsx b/app/portal-ppid/polda/[polda-name]/profile/struktur-ppid/page.tsx index b8748fb..4284181 100644 --- a/app/portal-ppid/polda/[polda-name]/profile/struktur-ppid/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/profile/struktur-ppid/page.tsx @@ -1,7 +1,5 @@ -import StrukturOrganisasi from "@/components/detail/StrukturOrganisasi"; +import StrukturOrganisasi from "@/components/main/detail/structure"; export default function StructurePPID() { - return ( - - ) -} \ No newline at end of file + return ; +} diff --git a/app/portal-ppid/polda/[polda-name]/profile/tugas-dan-fungsi-ppid/page.tsx b/app/portal-ppid/polda/[polda-name]/profile/tugas-dan-fungsi-ppid/page.tsx index c8c16f0..95eed6b 100644 --- a/app/portal-ppid/polda/[polda-name]/profile/tugas-dan-fungsi-ppid/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/profile/tugas-dan-fungsi-ppid/page.tsx @@ -1,9 +1,5 @@ -import Task from "@/components/detail/TaskDetail"; - - +import Task from "@/components/main/detail/task-detail"; export default function PPIDTask() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/profile/visi-dan-misi-ppid/page.tsx b/app/portal-ppid/polda/[polda-name]/profile/visi-dan-misi-ppid/page.tsx index 978e1a3..7bc1bbf 100644 --- a/app/portal-ppid/polda/[polda-name]/profile/visi-dan-misi-ppid/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/profile/visi-dan-misi-ppid/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/regulasi/layout.tsx b/app/portal-ppid/polda/[polda-name]/regulasi/layout.tsx index ad5c079..61274b1 100644 --- a/app/portal-ppid/polda/[polda-name]/regulasi/layout.tsx +++ b/app/portal-ppid/polda/[polda-name]/regulasi/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/polda/[polda-name]/regulasi/page.tsx b/app/portal-ppid/polda/[polda-name]/regulasi/page.tsx index b634852..360c2f5 100644 --- a/app/portal-ppid/polda/[polda-name]/regulasi/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/regulasi/page.tsx @@ -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 ( -
-
- -
-
- -
-
- ) + return ( +
+
+ +
+
+ +
+
+ ); } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx index 25548d1..7fcf1eb 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/layout.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/layout.tsx index 81cbac5..cca2b7b 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/layout.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/maklumat-pelayanan/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/maklumat-pelayanan/page.tsx index 3ea6d1a..40e6b52 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/maklumat-pelayanan/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/maklumat-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-keberatan/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-keberatan/page.tsx index d818b3f..0ed5fea 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-keberatan/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-keberatan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx index 7890f86..79e7960 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/standar-biaya-pelayanan/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/standar-biaya-pelayanan/page.tsx index 30b992d..11d0ee7 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/standar-biaya-pelayanan/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/standar-biaya-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx index d9db6a2..096c181 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/polda/[polda-name]/standar-layanan/waktu-pelayanan/page.tsx b/app/portal-ppid/polda/[polda-name]/standar-layanan/waktu-pelayanan/page.tsx index ef1a434..d6c27b8 100644 --- a/app/portal-ppid/polda/[polda-name]/standar-layanan/waktu-pelayanan/page.tsx +++ b/app/portal-ppid/polda/[polda-name]/standar-layanan/waktu-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/profile/layout.tsx b/app/portal-ppid/profile/layout.tsx index c67a7ae..b687b58 100644 --- a/app/portal-ppid/profile/layout.tsx +++ b/app/portal-ppid/profile/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/profile/profile-singkat-ppid/page.tsx b/app/portal-ppid/profile/profile-singkat-ppid/page.tsx index d465284..1c6841c 100644 --- a/app/portal-ppid/profile/profile-singkat-ppid/page.tsx +++ b/app/portal-ppid/profile/profile-singkat-ppid/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/profile/sejarah-ppid-polri/page.tsx b/app/portal-ppid/profile/sejarah-ppid-polri/page.tsx index a84afcd..7dedf21 100644 --- a/app/portal-ppid/profile/sejarah-ppid-polri/page.tsx +++ b/app/portal-ppid/profile/sejarah-ppid-polri/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/profile/struktur-ppid/page.tsx b/app/portal-ppid/profile/struktur-ppid/page.tsx index b8748fb..4284181 100644 --- a/app/portal-ppid/profile/struktur-ppid/page.tsx +++ b/app/portal-ppid/profile/struktur-ppid/page.tsx @@ -1,7 +1,5 @@ -import StrukturOrganisasi from "@/components/detail/StrukturOrganisasi"; +import StrukturOrganisasi from "@/components/main/detail/structure"; export default function StructurePPID() { - return ( - - ) -} \ No newline at end of file + return ; +} diff --git a/app/portal-ppid/profile/tugas-dan-fungsi-ppid/page.tsx b/app/portal-ppid/profile/tugas-dan-fungsi-ppid/page.tsx index c8c16f0..95eed6b 100644 --- a/app/portal-ppid/profile/tugas-dan-fungsi-ppid/page.tsx +++ b/app/portal-ppid/profile/tugas-dan-fungsi-ppid/page.tsx @@ -1,9 +1,5 @@ -import Task from "@/components/detail/TaskDetail"; - - +import Task from "@/components/main/detail/task-detail"; export default function PPIDTask() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/profile/visi-dan-misi-ppid/page.tsx b/app/portal-ppid/profile/visi-dan-misi-ppid/page.tsx index 978e1a3..7bc1bbf 100644 --- a/app/portal-ppid/profile/visi-dan-misi-ppid/page.tsx +++ b/app/portal-ppid/profile/visi-dan-misi-ppid/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/regulasi/layout.tsx b/app/portal-ppid/regulasi/layout.tsx index 17eef02..3abfb82 100644 --- a/app/portal-ppid/regulasi/layout.tsx +++ b/app/portal-ppid/regulasi/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/regulasi/page.tsx b/app/portal-ppid/regulasi/page.tsx index b634852..360c2f5 100644 --- a/app/portal-ppid/regulasi/page.tsx +++ b/app/portal-ppid/regulasi/page.tsx @@ -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 ( -
-
- -
-
- -
-
- ) + return ( +
+
+ +
+
+ +
+
+ ); } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx index 3d60269..a704fb5 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx @@ -1,7 +1,5 @@ -import InformasiBerkala from '@/components/table/informasi-berkala' +import InformasiBerkala from "@/components/table/informasi-berkala-table"; export default function InformasiSMPage() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/layout.tsx index 36d5457..7dc8377 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/layout.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/layout.tsx index 033e90c..1ca1cb2 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/layout.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/statistik-rekapitulasi/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/statistik-rekapitulasi/page.tsx index 3974cba..99a656f 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/statistik-rekapitulasi/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/layanan-informasi/statistik-rekapitulasi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx index 7d6e5ce..e6b5a49 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx @@ -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 ( -
- - - - -
- ) + return ( +
+ + + + +
+ ); } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx index 36d5457..7dc8377 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/profile-singkat-ppid/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/profile-singkat-ppid/page.tsx index d465284..1c6841c 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/profile/profile-singkat-ppid/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/profile-singkat-ppid/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/sejarah-ppid-polri/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/sejarah-ppid-polri/page.tsx index a84afcd..7dedf21 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/profile/sejarah-ppid-polri/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/sejarah-ppid-polri/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/struktur-ppid/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/struktur-ppid/page.tsx index b8748fb..4284181 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/profile/struktur-ppid/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/struktur-ppid/page.tsx @@ -1,7 +1,5 @@ -import StrukturOrganisasi from "@/components/detail/StrukturOrganisasi"; +import StrukturOrganisasi from "@/components/main/detail/structure"; export default function StructurePPID() { - return ( - - ) -} \ No newline at end of file + return ; +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/tugas-dan-fungsi-ppid/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/tugas-dan-fungsi-ppid/page.tsx index c8c16f0..95eed6b 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/profile/tugas-dan-fungsi-ppid/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/tugas-dan-fungsi-ppid/page.tsx @@ -1,9 +1,5 @@ -import Task from "@/components/detail/TaskDetail"; - - +import Task from "@/components/main/detail/task-detail"; export default function PPIDTask() { - return ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/visi-dan-misi-ppid/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/visi-dan-misi-ppid/page.tsx index 978e1a3..7bc1bbf 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/profile/visi-dan-misi-ppid/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/visi-dan-misi-ppid/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/layout.tsx index ad5c079..61274b1 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/layout.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/page.tsx index b634852..360c2f5 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/regulasi/page.tsx @@ -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 ( -
-
- -
-
- -
-
- ) + return ( +
+
+ +
+
+ +
+
+ ); } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx index 25548d1..7fcf1eb 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/alur-pelayanan-informasi-publik/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/layout.tsx index 81cbac5..cca2b7b 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/layout.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/maklumat-pelayanan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/maklumat-pelayanan/page.tsx index 3ea6d1a..40e6b52 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/maklumat-pelayanan/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/maklumat-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-keberatan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-keberatan/page.tsx index d818b3f..0ed5fea 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-keberatan/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-keberatan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx index 7890f86..79e7960 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/standar-biaya-pelayanan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/standar-biaya-pelayanan/page.tsx index 30b992d..11d0ee7 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/standar-biaya-pelayanan/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/standar-biaya-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx index d9db6a2..096c181 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/tata-cara-permohonan-informasi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/waktu-pelayanan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/waktu-pelayanan/page.tsx index ef1a434..d6c27b8 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/waktu-pelayanan/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/standar-layanan/waktu-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/alur-pelayanan-informasi-publik/page.tsx b/app/portal-ppid/standar-layanan/alur-pelayanan-informasi-publik/page.tsx index 25548d1..7fcf1eb 100644 --- a/app/portal-ppid/standar-layanan/alur-pelayanan-informasi-publik/page.tsx +++ b/app/portal-ppid/standar-layanan/alur-pelayanan-informasi-publik/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/layout.tsx b/app/portal-ppid/standar-layanan/layout.tsx index 9da02e2..dac7a20 100644 --- a/app/portal-ppid/standar-layanan/layout.tsx +++ b/app/portal-ppid/standar-layanan/layout.tsx @@ -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 ( - - {children} - - ) + return {children}; } diff --git a/app/portal-ppid/standar-layanan/maklumat-pelayanan/page.tsx b/app/portal-ppid/standar-layanan/maklumat-pelayanan/page.tsx index 3ea6d1a..40e6b52 100644 --- a/app/portal-ppid/standar-layanan/maklumat-pelayanan/page.tsx +++ b/app/portal-ppid/standar-layanan/maklumat-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/mekanisme-keberatan/page.tsx b/app/portal-ppid/standar-layanan/mekanisme-keberatan/page.tsx index d818b3f..0ed5fea 100644 --- a/app/portal-ppid/standar-layanan/mekanisme-keberatan/page.tsx +++ b/app/portal-ppid/standar-layanan/mekanisme-keberatan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx b/app/portal-ppid/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx index 7890f86..79e7960 100644 --- a/app/portal-ppid/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx +++ b/app/portal-ppid/standar-layanan/mekanisme-permohonan-penyelesaian-sengketa/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/standar-biaya-pelayanan/page.tsx b/app/portal-ppid/standar-layanan/standar-biaya-pelayanan/page.tsx index 30b992d..11d0ee7 100644 --- a/app/portal-ppid/standar-layanan/standar-biaya-pelayanan/page.tsx +++ b/app/portal-ppid/standar-layanan/standar-biaya-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/tata-cara-permohonan-informasi/page.tsx b/app/portal-ppid/standar-layanan/tata-cara-permohonan-informasi/page.tsx index d9db6a2..096c181 100644 --- a/app/portal-ppid/standar-layanan/tata-cara-permohonan-informasi/page.tsx +++ b/app/portal-ppid/standar-layanan/tata-cara-permohonan-informasi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/portal-ppid/standar-layanan/waktu-pelayanan/page.tsx b/app/portal-ppid/standar-layanan/waktu-pelayanan/page.tsx index ef1a434..d6c27b8 100644 --- a/app/portal-ppid/standar-layanan/waktu-pelayanan/page.tsx +++ b/app/portal-ppid/standar-layanan/waktu-pelayanan/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/profile-pimpinan-polri/layout.tsx b/app/profile-pimpinan-polri/layout.tsx index af17d7f..fbc4cb5 100644 --- a/app/profile-pimpinan-polri/layout.tsx +++ b/app/profile-pimpinan-polri/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/profile-pimpinan-polri/page.tsx b/app/profile-pimpinan-polri/page.tsx index 817125e..24abd0b 100644 --- a/app/profile-pimpinan-polri/page.tsx +++ b/app/profile-pimpinan-polri/page.tsx @@ -1,7 +1,5 @@ -import Propim from '@/components/detail/Propim' +import Task from "@/components/main/detail/propim"; export default function PropimPage() { - return ( - - ) + return ; } diff --git a/app/struktur-organisasi/layout.tsx b/app/struktur-organisasi/layout.tsx index e74f436..467d442 100644 --- a/app/struktur-organisasi/layout.tsx +++ b/app/struktur-organisasi/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/struktur-organisasi/page.tsx b/app/struktur-organisasi/page.tsx index 979ba9a..60a99a0 100644 --- a/app/struktur-organisasi/page.tsx +++ b/app/struktur-organisasi/page.tsx @@ -1,7 +1,5 @@ -import StrukturOragnisasi from "@/components/detail/StrukturOrganisasi"; +import StrukturOragnisasi from "@/components/main/detail/structure"; export default function StrukturPage() { - return ( - - ); + return ; } diff --git a/app/tentang-humas-polri/layout.tsx b/app/tentang-humas-polri/layout.tsx index f5a8621..d312d02 100644 --- a/app/tentang-humas-polri/layout.tsx +++ b/app/tentang-humas-polri/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/tentang-humas-polri/page.tsx b/app/tentang-humas-polri/page.tsx index 2a8bf26..8e7323a 100644 --- a/app/tentang-humas-polri/page.tsx +++ b/app/tentang-humas-polri/page.tsx @@ -1,7 +1,5 @@ -import About from "@/components/detail/About"; +import About from "@/components/main/detail/about"; export default function AboutPage() { - return ( - - ); + return ; } diff --git a/app/tugas-dan-fungsi/layout.tsx b/app/tugas-dan-fungsi/layout.tsx index 652243c..77eb126 100644 --- a/app/tugas-dan-fungsi/layout.tsx +++ b/app/tugas-dan-fungsi/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/tugas-dan-fungsi/page.tsx b/app/tugas-dan-fungsi/page.tsx index 34331c7..70039c6 100644 --- a/app/tugas-dan-fungsi/page.tsx +++ b/app/tugas-dan-fungsi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/app/visi-misi/layout.tsx b/app/visi-misi/layout.tsx index 11f3191..58c7f2e 100644 --- a/app/visi-misi/layout.tsx +++ b/app/visi-misi/layout.tsx @@ -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 ( - - {children} - - ); + return {children}; } diff --git a/app/visi-misi/page.tsx b/app/visi-misi/page.tsx index 7f1e2a4..8ef045e 100644 --- a/app/visi-misi/page.tsx +++ b/app/visi-misi/page.tsx @@ -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 ( - - ) + return ; } diff --git a/components/Landing Page/BannerHumas.tsx b/components/Landing Page/BannerHumas.tsx deleted file mode 100644 index 1c278c5..0000000 --- a/components/Landing Page/BannerHumas.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import React from 'react' - -export default function BannerHumas() { - return ( -
- humasbanner -
-

TRANSPARANSI, PATISIPASI, DAN LAYANAN TERBAIK DARI POLRI UNTUK INDONESIA

-

"Menyajikan Informasi Terpercaya dan Mendekatkan Polri dengan Masyarakat"

-
-
- ) -} diff --git a/components/Landing Page/CategorySatker.tsx b/components/Landing Page/CategorySatker.tsx deleted file mode 100644 index 42cdc25..0000000 --- a/components/Landing Page/CategorySatker.tsx +++ /dev/null @@ -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("inside"); - const [modalPlacement, setModalPlacement] = React.useState("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 ( -
-
Kategori Satker
-
-
-
- {list.map((item: any, index: any) => ( - -
- -

{item.title}

-
- - ))} -
-
-
-
- - - - {(onClose) => ( - <> - Berita Wilayah - - {SatkerAll.map((item: any, index: any) => ( -
- - - -

{item.title}

-
- ))} -
- - - - - )} -
-
-
-
- ) -} diff --git a/components/Landing Page/ENewsPolri.tsx b/components/Landing Page/ENewsPolri.tsx deleted file mode 100644 index fdc3a37..0000000 --- a/components/Landing Page/ENewsPolri.tsx +++ /dev/null @@ -1,62 +0,0 @@ -'use client' -import { Card, CardFooter } from '@nextui-org/react'; -import Image from 'next/image'; -import { useState } from 'react'; -import { ChevronLeftWhite, ChevronRightIcon } from '../icons'; -import Link from 'next/link'; - -export default function ENewsPolri() { - const [limitedData, setLimitedData] = useState([]); - - const eNews = [ - { - id: 1, - title: "Tribrata News Edisi 32 /IV-VI/ENews Polri/2024", - img: "/headernews.png", - }, - { - id: 2, - title: "Tribrata News Edisi 32 /IV-VI/ 2024", - img: "/headernews.png", - }, - { - id: 3, - title: "Tribrata News Edisi 32 /IV-VI/ 2024", - img: "/headernews.png", - }, - ]; - - return ( -
-

E-Majalah Polri

-
- -
- {eNews.map((data: any) => ( -
- - - e-news - -

{data.title}

-
-
- -
- ))} -
- -
- Lihat Semua -
- ) -} diff --git a/components/Landing Page/HeaderNews.tsx b/components/Landing Page/HeaderNews.tsx deleted file mode 100644 index 896becc..0000000 --- a/components/Landing Page/HeaderNews.tsx +++ /dev/null @@ -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 ( -
-
-

Berita Terkini

- -
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-
- - - -
-
-
-
- - {newsData.map((newsItem) => ( - - - headernews - -
- -

{newsItem.title}

- -

{newsItem.date}

-

{newsItem.views}

-
-
-
-
- ))} -
-
- {/* - headernews - -
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-
*/} -
-
- - {/*
- gpr -
-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-
- gpr -
*/} -
-
- ) -} diff --git a/components/Landing Page/MediaSocial.tsx b/components/Landing Page/MediaSocial.tsx deleted file mode 100644 index d7441b6..0000000 --- a/components/Landing Page/MediaSocial.tsx +++ /dev/null @@ -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([]); - - 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 ( -
-

MediaSocial

-
-
-
- -

Twitter

-
-
Lihat Semua
-
-
- -
- {/* {dummyData.map((data: any) => ( -
-
-
- logo -
-
-

{data.division}

-

{data.username}

-
-
-
-
-

Follow

-
-
-
- {data.description} -
Lihat Selengkapnya
-
-
-
- header -
-
-
- ))} */} -
-
-
-
- -

Instagram

-
-
Lihat Semua
-
-
- - {/* {dummyData.map((data: any) => ( -
-
-
-
- logo -
-
-

{data.division}

-

{data.username}

-
-
-
-
-

Lihat Profile

-
-
-
- {data.description} -
Lihat Selengkapnya
-
-
-
- header -
-
-
- ))} */} -
-
-
-
-
- - Facebook -
-
Lihat Semua
-
-
- {dummyData.map((data: any) => ( -
-
-
-
- logo -
-
-

{data.division}

-
-
-
-
Share
-
-
-
- {data.description} -
Lihat Selengkapnya
-
-
-
- header -
-
-
- ))} -
-
-
-
-
- - Tiktok -
-
Lihat Semua
-
-
- {dummyData.map((data: any) => ( -
-
-
-
- logo -
-
-

{data.division}

-
-
-
-
Share
-
-
-
- {data.description} -
Lihat Selengkapnya
-
-
-
- header -
-
-
- ))} -
-
-
-
-
- - Youtube -
-
Lihat Semua
-
-
-
- -
- {/* {dummyData.map((data: any) => ( -
-
-
-
- logo -
-
-

{data.division}

- -
-
-
-
- -
-
-
- {data.description} -
Lihat Selengkapnya
-
-
-
- header -
-
-
- ))} */} -
-
-
- ) -} diff --git a/components/Landing Page/MedolUpdate.tsx b/components/Landing Page/MedolUpdate.tsx deleted file mode 100644 index af27a03..0000000 --- a/components/Landing Page/MedolUpdate.tsx +++ /dev/null @@ -1,246 +0,0 @@ -import { Button, Card, CardBody, CardFooter, Image, Tab, Tabs } from '@nextui-org/react'; -import React 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'; - -export default function MedolUpdate() { - - 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 ( -
-
- Top 5 News Update -
-
- - - - {mediaHubUpdate.map((newsItem) => ( - - - - tes - - -

02-04-2024 09:31 WITA

- Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan -
-
-
- ))} -
-
- -
-
- -
- console.log("item pressed")} className='w-[45%] bg-white text-black'> - - tes - - -

02-04-2024 09:31 WITA

- Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan -
-
- console.log("item pressed")} className='w-[45%] bg-white text-black'> - - tes - - -

02-04-2024 09:16 WIB

- Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak -
-
-
-
- -
-
- -
- console.log("item pressed")} className='w-[45%] bg-white text-black'> - - tes - - -

02-04-2024 09:31 WITA

- Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan -
-
- console.log("item pressed")} className='w-[45%] bg-white text-black'> - - tes - - -

02-04-2024 09:16 WIB

- Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak -
-
-
-
- -
-
- -
- console.log("item pressed")} className='w-[45%] bg-white text-black'> - - tes - - -

02-04-2024 09:31 WITA

- Peringatan Nuzulul Quran, Kapolda Sulbar Harap Kegiatan Ini Tambah Wawasan dan -
-
- console.log("item pressed")} className='w-[45%] bg-white text-black'> - - tes - - -

02-04-2024 09:16 WIB

- Kapolri Tinjau Langsung Kondisi Pelayanan Pemudik di Dermaga 1 Pelabuhan Merak -
-
-
-
- -
-
-
-
-
- ) -} diff --git a/components/Landing Page/RegionalNews.tsx b/components/Landing Page/RegionalNews.tsx deleted file mode 100644 index 0a6f6cb..0000000 --- a/components/Landing Page/RegionalNews.tsx +++ /dev/null @@ -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([]); - const { isOpen, onOpen, onOpenChange } = useDisclosure(); - const [scrollBehavior, setScrollBehavior] = React.useState("inside"); - const [modalPlacement, setModalPlacement] = React.useState("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 ( -
-
Berita Wilayah
-
-
-
- {listPolda.map((item: any, index: any) => ( - -
- -

{item.title}

-
- - ))} -
-
-
-
- - - - {(onClose) => ( - <> - Berita Wilayah - - {listPoldaAll.map((item: any, index: any) => ( -
- -
- -

{item.title}

-
- -
- ))} -
- - - - - )} -
-
-
-
- ) -} diff --git a/components/Portal PPID/FooterPPID.tsx b/components/Portal PPID/FooterPPID.tsx deleted file mode 100644 index 4e40bcb..0000000 --- a/components/Portal PPID/FooterPPID.tsx +++ /dev/null @@ -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 ( - <> - -
© Copyright Humas

  POLRI ®

  All Rights Reserved
- - - ) -} diff --git a/components/Portal PPID/MediaUpdate.tsx b/components/Portal PPID/MediaUpdate.tsx deleted file mode 100644 index 91075d8..0000000 --- a/components/Portal PPID/MediaUpdate.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { ScrollShadow } from '@nextui-org/react' -import React from 'react' -import { EyeIcon } from '../icons' - -export default function MediaUpdate() { - return ( -
-
-

TV Polri

-
-
-
-
-
- Media Update -
-
- -
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-
-
-
-
- ) -} diff --git a/components/Portal PPID/PPIDPolda.tsx b/components/Portal PPID/PPIDPolda.tsx deleted file mode 100644 index 53ab0f9..0000000 --- a/components/Portal PPID/PPIDPolda.tsx +++ /dev/null @@ -1,277 +0,0 @@ -'use client' -import { BreadcrumbItem, Breadcrumbs, Button, Image, Input } from "@nextui-org/react"; -import Link from "next/link"; -import PPIDSidebar from '../Portal PPID/PPIDSidebar'; -import { SearchIcon } from '../icons'; - - -export default function PPIDPolda() { - - const listPoldaAll = [ - { - id: 1, - img: "/assets/polda/polda-metro-jaya.svg", - title: "Polda Metro Jaya", - path: 'polda/polda-metro-jaya' - }, - { - id: 2, - img: "/assets/polda/polda-jawa-barat.svg", - title: "Polda Jawa Barat", - path: 'polda/polda-jawa-barat' - }, - { - id: 3, - img: "/assets/polda/polda-banten.svg", - title: "Polda Banten", - path: 'polda/polda-banten' - }, - { - id: 4, - img: "/assets/polda/polda-jateng.svg", - title: "Polda Jawa Tengah", - path: 'polda/polda-jateng' - }, - { - id: 5, - img: "/assets/polda/polda-diy.svg", - title: "Polda D.I Yogyakarta", - path: 'polda/polda-diy' - }, - { - id: 6, - img: "/assets/polda/polda-jatim.svg", - title: "Polda Jawa Timur", - path: 'polda/polda-jatim' - }, - { - id: 7, - img: "/assets/polda/polda-aceh.svg", - title: "Polda Aceh", - path: 'polda/polda-aceh' - }, - { - id: 8, - img: "/assets/polda/polda-sumut.svg", - title: "Polda Sumatra Utara", - path: 'polda/polda-sumut' - }, - { - id: 9, - img: "/assets/polda/polda-sumbar.svg", - title: "Polda Sumatra Barat", - path: 'polda/polda-sumbar' - }, - { - id: 10, - img: "/assets/polda/polda-riau.svg", - title: "Polda Riau", - path: 'polda/polda-riau' - }, - { - id: 11, - img: "/assets/polda/polda-kepri.svg", - title: "Polda Kep.Riau", - path: 'polda/polda-kepri' - }, - { - id: 12, - img: "/assets/polda/polda-jambi.svg", - title: "Polda Jambi", - path: 'polda/polda-jambi' - }, - { - id: 13, - img: "/assets/polda/polda-sumsel.svg", - title: "Polda Sumatra Selatan", - path: 'polda/polda-sumsel' - }, - { - id: 14, - img: "/assets/polda/polda-babel.svg", - title: "Polda Kep.Bangka Belitung", - path: 'polda/polda-babel' - }, - { - id: 15, - img: "/assets/polda/polda-bengkulu.svg", - title: "Polda Bengkulu", - path: 'polda/polda-bengkulu' - }, - { - id: 16, - img: "/assets/polda/polda-lampung.svg", - title: "Polda Lampung", - path: 'polda/polda-lampung' - }, - { - id: 17, - img: "/assets/polda/polda-ntb.svg", - title: "Polda Nusa Tenggara Barat", - path: 'polda/polda-ntb' - }, - { - id: 18, - img: "/assets/polda/polda-ntt.svg", - title: "Polda Nusa Tenggara Timur", - path: 'polda/polda-ntt' - }, - { - id: 19, - img: "/assets/polda/polda-bali.svg", - title: "Polda Bali", - path: 'polda/polda-bali' - }, - { - id: 20, - img: "/assets/polda/polda-kalbar.svg", - title: "Polda Kalimantan Barat", - path: 'polda/polda-kalbar' - }, - { - id: 21, - img: "/assets/polda/polda-kalteng.svg", - title: "Polda Kalimantan Tengah", - path: 'polda/polda-kalteng' - }, - { - id: 22, - img: "/assets/polda/polda-kalsel.svg", - title: "Polda Kalimantan Selatan", - path: 'polda/polda-kalsel' - }, - { - id: 23, - img: "/assets/polda/polda-kaltim.svg", - title: "Polda Kalimantan Timur", - path: 'polda/polda-kaltim' - }, - { - id: 24, - img: "/assets/polda/polda-kalut.svg", - title: "Polda Kalimantan Utara", - path: 'polda/polda-kalut' - }, - { - id: 25, - img: "/assets/polda/polda-sulteng.svg", - title: "Polda Sulawesi Tengah", - path: 'polda/polda-sulteng' - }, - { - id: 26, - img: "/assets/polda/polda-sulawesi-utara.svg", - title: "Polda Sulawesi Utara", - path: 'polda/polda-sulawesi-utara' - }, - { - id: 27, - img: "/assets/polda/polda-gorontalo.svg", - title: "Polda Gorontalo", - path: 'polda/polda-gorontalo' - }, - { - id: 28, - img: "/assets/polda/polda-sulbar.svg", - title: "Polda Sulawesi Barat", - path: 'polda/polda-sulbar' - }, - { - id: 29, - img: "/assets/polda/polda-sulsel.svg", - title: "Polda Sulawesi Selatan", - path: 'polda/polda-sulsel' - }, - { - id: 30, - img: "/assets/polda/polda-sultenggara.svg", - title: "Polda Sulawesi Tenggara", - path: 'polda/polda-sultenggara' - }, - { - id: 31, - img: "/assets/polda/polda-malut.svg", - title: "Polda Maluku Utara", - path: 'polda/polda-malut' - }, - { - id: 32, - img: "/assets/polda/polda-maluku.svg", - title: "Polda Maluku", - path: 'polda/polda-maluku' - }, - { - id: 33, - img: "/assets/polda/polda-papuabarat.svg", - title: "Polda Papua Barat", - path: 'polda/polda-papuabarat' - }, - { - id: 34, - img: "/assets/polda/polda-papua.svg", - title: "Polda Papua", - path: 'polda/polda-papua' - }, - - ]; - const searchInput = ( - - } - endContent={ - - } - type="search" - /> - ) - - const filters = [ - { label: "Title", value: "title" }, - { label: "Date", value: "date" }, - { label: "Created At", value: "createdAt" }, - ]; - return ( -
-
-
-
E-PPID POLDA
-
- - Beranda - E-PPID Polda - -
-
-
E-PPID POLDA
-
- {listPoldaAll.map((polda) => ( -
- - logo -

{polda.title}

- -
- ))} -
-
-
-
- -
-
-
- -
-
- ) -} diff --git a/components/Portal PPID/PPIDSatker.tsx b/components/Portal PPID/PPIDSatker.tsx deleted file mode 100644 index 25aa5d1..0000000 --- a/components/Portal PPID/PPIDSatker.tsx +++ /dev/null @@ -1,261 +0,0 @@ -'use client' -import { BreadcrumbItem, Breadcrumbs, Button, Input } from "@nextui-org/react"; -import Link from "next/link"; -import PPIDSidebar from '../Portal PPID/PPIDSidebar'; -import { SearchIcon } from '../icons'; - - -export default function PPIDSatker() { - - - const listSatkerAll = [ - { - id: 1, - img: "/assets/satker/siber.svg", - path: 'satuan-kerja/siber' - }, - { - id: 2, - img: "/assets/satker/divkum.svg", - path: 'satuan-kerja/divkum' - }, - { - id: 3, - img: "/assets/satker/puskeu.svg", - path: 'satuan-kerja/puskeu' - }, - { - id: 4, - img: "/assets/satker/ssdm.svg", - path: 'satuan-kerja/ssdm' - }, - { - id: 5, - img: "/assets/satker/itwasum.svg", - path: 'satuan-kerja/itwasum' - }, - { - id: 6, - img: "/assets/satker/stik-ptik.svg", - path: 'satuan-kerja/stik-ptik' - }, - { - id: 7, - img: "/assets/satker/brimob.svg", - path: 'satuan-kerja/brimob' - }, - { - id: 8, - img: "/assets/satker/div-humas.svg", - path: 'satuan-kerja/div-humas' - }, - { - id: 9, - img: "/assets/satker/puslitbang.svg", - path: 'satuan-kerja/puslitbang' - }, - { - id: 10, - img: "/assets/satker/binmas.svg", - path: 'satuan-kerja/binmas' - }, - { - id: 11, - img: "/assets/satker/divtik.svg", - path: 'satuan-kerja/divtik' - }, - { - id: 12, - img: "/assets/satker/spripim.svg", - path: 'satuan-kerja/spripim' - }, - { - id: 13, - img: "/assets/satker/propam.svg", - path: 'satuan-kerja/propam' - }, - { - id: 14, - img: "/assets/satker/baharkam.svg", - path: 'satuan-kerja/sabhara-baharkam' - }, - { - id: 15, - img: "/assets/satker/pusdokkes.svg", - path: 'satuan-kerja/pusdokkes' - }, - { - id: 16, - img: "/assets/satker/baharkam2.svg", - path: 'satuan-kerja/baharkam' - }, - { - id: 17, - img: "/assets/satker/polairud.svg", - path: 'satuan-kerja/polairud' - }, - { - id: 18, - img: "/assets/satker/polair.svg", - path: 'satuan-kerja/polair' - }, - { - id: 19, - img: "/assets/satker/poludara.svg", - path: 'satuan-kerja/poludara' - }, - { - id: 20, - img: "/assets/satker/lemdiklat.svg", - path: 'satuan-kerja/lemdiklat' - }, - { - id: 21, - img: "/assets/satker/akpol.svg", - path: 'satuan-kerja/akpol' - }, - { - id: 22, - img: "/assets/satker/korlantas.svg", - path: 'satuan-kerja/korlantas' - }, - { - id: 23, - img: "/assets/satker/pusinafis.svg", - path: 'satuan-kerja/pusinafis' - }, - { - id: 24, - img: "/assets/satker/pusjarah.svg", - path: 'satuan-kerja/pusjarah' - }, - { - id: 25, - img: "/assets/satker/pusiknas.svg", - path: 'satuan-kerja/pusiknas' - }, - { - id: 26, - img: "/assets/satker/slog.svg", - path: 'satuan-kerja/slog' - }, - { - id: 27, - img: "/assets/satker/baintelkam.svg", - path: 'satuan-kerja/baintelkam' - }, - { - id: 28, - img: "/assets/satker/bareskrim.svg", - path: 'satuan-kerja/bareskrim' - }, - { - id: 29, - img: "/assets/satker/divhubinter.svg", - path: 'satuan-kerja/div-hubinter' - }, - { - id: 30, - img: "/assets/satker/setum.svg", - path: 'satuan-kerja/setum' - }, - { - id: 31, - img: "/assets/satker/puslabfor.svg", - path: 'satuan-kerja/puslabfor' - }, - { - id: 32, - img: "/assets/satker/densus.svg", - path: 'satuan-kerja/densus88' - }, - { - id: 33, - img: "/assets/satker/sahli-kapolri.svg", - path: 'satuan-kerja/sahli-kapolri' - }, - { - id: 34, - img: "/assets/satker/sops.svg", - path: 'satuan-kerja/sops' - }, - { - id: 35, - img: "/assets/satker/srena.svg", - path: 'satuan-kerja/srena' - }, - { - id: 36, - img: "/assets/satker/sespim.svg", - path: 'satuan-kerja/sespim' - }, - { - id: 37, - img: "/assets/satker/setupa.svg", - path: 'satuan-kerja/setupa' - }, - - - - ]; - - const searchInput = ( - - } - endContent={ - - } - type="search" - /> - ) - - const filters = [ - { label: "Title", value: "title" }, - { label: "Date", value: "date" }, - { label: "Created At", value: "createdAt" }, - ]; - return ( -
-
-
-
Satuan Kerja
-
- - Beranda - Satuan Kerja - -
-
-
Satuan Kerja
-
- {listSatkerAll.map((data) => ( -
- - logo - -
- ))} -
-
-
-
- -
-
-
- -
-
- ) -} diff --git a/components/Portal PPID/PPIDSidebar.tsx b/components/Portal PPID/PPIDSidebar.tsx deleted file mode 100644 index c88452b..0000000 --- a/components/Portal PPID/PPIDSidebar.tsx +++ /dev/null @@ -1,103 +0,0 @@ -'use client' -import { Button, Input, ScrollShadow } from '@nextui-org/react' -import React from 'react' -import { EyeIcon } from '../icons' -import GPRKominfo from '../SocialMedia/GprKominfo' -import Link from 'next/link' - -export default function PPIDSidebar() { - return ( -
-
- - satker - -
-
- - satker - -
-
- - permohonan - -
-
-
Permohonan Informasi
-
- -
-
- -
-
Lupa Password?
-
- - - -
-
- - - -
-
- {/*
- -
*/} - {/*
-
- Media Update -
-
- -
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-

Pelihara Kondusifitas Kamtibmas, Personel Polsek Sayan Sambangi Warganya yang Masih Beraktifitas Pada Malam Hari

-

21-07-2023 13:50

-

82

-
-
-
-
*/} -
-
Publikasi -
- publikasi - publikasi - publikasi - publikasi - {/* publikasi */} - publikasi - publikasi -
-
-
-
-
Channel Humas Polri -
- humas-polri - humas-polri - {/* humas-polri */} - humas-polri -
-
-
-
- ) -} diff --git a/components/Portal PPID/ppid-banner.tsx b/components/Portal PPID/ppid-banner.tsx deleted file mode 100644 index d69c288..0000000 --- a/components/Portal PPID/ppid-banner.tsx +++ /dev/null @@ -1,83 +0,0 @@ -'use client' -import { Input } from "@nextui-org/input"; -import { SearchIcon } from "../icons"; -import { usePathname } from "next/navigation"; - -interface PPIDBannerProps { - url: string; -} - -export default function PPIDBanner({ url }: PPIDBannerProps) { - const pathname = usePathname() - let isPolri; - - if (pathname === "/portal-ppid") { - isPolri = true; - } else { - isPolri = false; - } - console.log(isPolri) - - return ( -
-
- ppid-banner -
-

- {`SELAMAT DATANG DI PORTAL E-PPID ${isPolri ? 'POLRI' : url}`} -

-

- Layanan ini merupakan fasilitas daring yang disediakan bagi para pemohon informasi publik, sebagai bagian dari implementasi prinsip keterbukaan informasi publik di Pusat Informasi dan Dokumentasi (PPID) Utama. -

-
- - } - /> -
-
-
-
- //
- //
- // banner - //
- //
- //

- // SELAMAT DATANG DI PORTAl PPID HUBUNGAN MASYARAKAT POLISI REPUBLIK INDONESIA (HUMAS POLRI) - //

- //

- // Layanan ini merupakan fasilitas daring yang disediakan bagi para pemohon informasi publik, sebagai bagian dari
implementasi prinsip keterbukaan informasi publik di Pusat Informasi dan Dokumentasi (PPID) Utama. - //

- // {/*
- // - // } - // /> - //
*/} - //
- //
- ) -} diff --git a/components/SocialMedia/Youtube.tsx b/components/SocialMedia/Youtube.tsx deleted file mode 100644 index 253c4a8..0000000 --- a/components/SocialMedia/Youtube.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import { useEffect } from 'react'; - - -const YoutubeWidget = () => { - - useEffect(() => { - - if (typeof window !== 'undefined') { - const script = document.createElement('script'); - script.src = "https://embedsocial.com/cdn/ht.js"; - script.async = true; - document.head.appendChild(script); - - return () => { - document.head.removeChild(script); - }; - } - }, []); - - - - return ( -
- ); -}; - -export default YoutubeWidget; - - diff --git a/components/detail/Contact.tsx b/components/detail/Contact.tsx deleted file mode 100644 index 0f2e2f8..0000000 --- a/components/detail/Contact.tsx +++ /dev/null @@ -1,218 +0,0 @@ -'use client' -import { zodResolver } from "@hookform/resolvers/zod"; -import { Button } from '@nextui-org/button'; -import { Input, Textarea } from '@nextui-org/input'; -import { Select, SelectItem, SelectSection } from '@nextui-org/react'; -import React, { useState } from 'react'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; -import { Calender, CustomerService, EyeFilledIcon, EyeSlashFilledIcon, Hotline, Location, Mail } from '../icons'; -import Datepicker from "react-tailwindcss-datepicker"; -import Image from "next/image"; - -const schema = z.object({ - name: z.string().min(3).max(50), - email: z.string().email(), -}); -interface FormData { - name: string; - email: string; -} - -const Contact: React.FC = () => { - const [isVisible, setIsVisible] = React.useState(false); - const [selectedGender, setSelectedGender] = React.useState(''); - - const [startDateValue, setStartDateValue] = useState({ - startDate: null, - endDate: null, - }); - - const toggleVisibility = () => setIsVisible(!isVisible); - - const { register, handleSubmit, formState: { errors } } = useForm({ - resolver: zodResolver(schema), - }); - - const onChangeGender = (selectedItem: any) => { - setSelectedGender(selectedItem); - // Lakukan apa pun yang perlu dilakukan saat pilihan jenis kelamin berubah di sini - console.log("Selected Gender:", selectedItem); - }; - - const handleValueChange = (newValue: any, num: any) => { - console.log("start:", newValue); - setStartDateValue(newValue); - } - - - const onSubmit = (data: FormData) => { - console.log(data); - }; - - return ( - //
- //
- // - // - // {errors.name &&

{errors.name.message}

} - //
- //
- // - // - // {errors.email &&

{errors.email.message}

} - //
- // - //
-
-

Kontak Kami

-
-
-
Informasi Kontak
-
Berikut informasi lengkap terkait Divisi Humas Polri
-
-
-
-
Hotline Divisi HumasPolri (021) 72120599
-
-
-
-
Hotline Divisi HumasPolri (021) 72120599
-
-
-
-
Call Center 110
-
-
-
-
ppid@polri.go.id
-
-
-
-
Jl Trunojoyo No.3, RT.2/RW.1, Selong, Kec. Kebayoran Baru, Kota Jakarta Selatan, Daerah Khusus Ibukota Jakarta 12110, Indonesia
-
-
-
-
Hari Senin - Jumat | 08:00 - 15:00 WIB
-
-
-
- {/* maps */} -
-
-
-
Silahkan tuliskan pertanyaan anda kepada kami
-
- -
-
- -
-
- -
-
- -
-
- -
-
- - ar -
-
-
-
- ); -}; - -export default Contact; diff --git a/components/detail/DetailPage.tsx b/components/detail/DetailPage.tsx deleted file mode 100644 index 1b5b562..0000000 --- a/components/detail/DetailPage.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import React from 'react' -import DetailNews from '../page/DetailNews' -import Comment from './Comment' -import SidebarDetail from '../page/SidebarDetail' -import RelatedNews from '../page/RelatedNews' - -export default function NewsDetailPage() { - return ( - <> -
-
- -
-
- -
-
-
- -
-
- -
-
- -
- - ) -} diff --git a/components/detail/ListNews.tsx b/components/detail/ListNews.tsx index 062ef4a..1fd8fe2 100644 --- a/components/detail/ListNews.tsx +++ b/components/detail/ListNews.tsx @@ -1,124 +1,162 @@ -'use client' -import { BreadcrumbItem, Breadcrumbs, Button, Input, Select, SelectItem, SelectSection, Table, TableBody, TableCell, TableColumn, TableHeader, TableRow } from "@nextui-org/react"; -import PPIDSidebar from '../Portal PPID/PPIDSidebar'; -import { EyeFilledIcon, SearchIcon } from '../icons'; +"use client"; +import { + BreadcrumbItem, + Breadcrumbs, + Button, + Input, + Select, + SelectItem, + SelectSection, + Table, + TableBody, + TableCell, + TableColumn, + TableHeader, + TableRow, +} from "@nextui-org/react"; import Link from "next/link"; - +import { SearchIcon } from "../icons"; export default function ListNews() { - const searchInput = ( - - } - endContent={ - - } - type="search" - /> - ) + const searchInput = ( + + } + endContent={ + + } + type="search" + /> + ); - const listNews = [ - { - id: 1, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 2, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 3, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS ", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 4, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 5, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 6, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 7, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 8, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, - { - id: 9, - thumnbnail: '/headernews.png', - title: 'Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara', - date: "06 Maret, 2024 16:14 HUMAS POLRI", - description: "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!" - }, + const listNews = [ + { + id: 1, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 2, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 3, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS ", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 4, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 5, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 6, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 7, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 8, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + { + id: 9, + thumnbnail: "/headernews.png", + title: + "Divisi Humas Polri Gelar Bimtek Dan Uji Konsekuensi Informasi Di Maluku Utara", + date: "06 Maret, 2024 16:14 HUMAS POLRI", + description: + "Lorem, ipsum dolor sit amet consectetur adipisicing elit. Hic, rerum temporibus qui similique odio ducimus sit iure magnam consequatur dolore corrupti quisquam distinctio possimus et optio neque error earum quod!", + }, + ]; - ] - - return ( -
- - Beranda - Berita - -
- {listNews.map((news) => ( - -
-
- -
-
-
{news.title}
-
-
{news.date}
- {/*
jam
+ return ( +
+ + Beranda + Berita + +
+ {listNews.map((news) => ( + +
+
+ +
+
+
+ {news.title} +
+
+
{news.date}
+ {/*
jam
creator
*/} -
-
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quis est quas soluta deserunt ullam. Sapiente facilis modi vitae. Aspernatur excepturi quo amet omnis laudantium inventore praesentium illum hic reiciendis error.
-
-
- - ))} +
+
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Quis + est quas soluta deserunt ullam. Sapiente facilis modi vitae. + Aspernatur excepturi quo amet omnis laudantium inventore + praesentium illum hic reiciendis error. +
+
-
- ) + + ))} +
+
+ ); } diff --git a/components/form/article/edit-generated-article.tsx b/components/form/article/edit-generated-article.tsx new file mode 100644 index 0000000..3c95320 --- /dev/null +++ b/components/form/article/edit-generated-article.tsx @@ -0,0 +1,4 @@ +export default function EditGeneratedArticle(props: { id: string }) { + const { id } = props; + return
{id}
; +} diff --git a/components/form/article/generate-article-form.tsx b/components/form/article/generate-article-form.tsx new file mode 100644 index 0000000..e74a741 --- /dev/null +++ b/components/form/article/generate-article-form.tsx @@ -0,0 +1,605 @@ +"use client"; +import { error } from "@/config/swal"; +import { createArticle } from "@/service/article"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { + Button, + Card, + Chip, + Input, + Select, + SelectItem, + SelectSection, + Selection, + Spinner, +} from "@nextui-org/react"; +import JoditEditor from "jodit-react"; +import Link from "next/link"; +import { useRouter } from "next/navigation"; +import React, { ChangeEvent, useEffect, useRef, useState } from "react"; +import { useForm } from "react-hook-form"; +import Swal from "sweetalert2"; +import withReactContent from "sweetalert2-react-content"; +import * as z from "zod"; +import ReactSelect from "react-select"; +import makeAnimated from "react-select/animated"; +import GenerateSingleArticle from "./generate-single-article-form"; +import { getDetailArticle } from "@/service/generate-article"; +import { delay } from "@/utils/global"; +import GenerateBulkArticle from "./generate-bulk-article-form"; +import generatedArticleIds from "@/store/generated-article-store"; +import SpeechToTextOperator from "./speech-to-text-form"; +import GenerateRewriteArticle from "./generate-rewrite-form"; +import SpeechToText from "./speech-to-text-form"; + +const articleSchema = z.object({ + title: z.string().min(1, { message: "Required" }), + article: z.string().min(1, { message: "Required" }), + slug: z.string().min(1, { message: "Required" }), + tags: z.string().min(0, { message: "Required" }).optional(), + description: z.string().min(0, { message: "Required" }).optional(), +}); + +const dummyCategory = [ + { + id: 1, + label: "Category 1", + value: "category-1", + }, + { + id: 2, + label: "Category 2", + value: "category-2", + }, + { + id: 3, + label: "Category 3", + value: "category-3", + }, + { + id: 4, + label: "Category 4", + value: "category-4", + }, + { + id: 5, + label: "Category 5", + value: "category-5", + }, +]; + +export default function GenerateArticleForm() { + const animatedComponents = makeAnimated(); + + const router = useRouter(); + const [title, setTitle] = useState(""); + const [article, setArticle] = React.useState(new Set([])); + const [slug, setSlug] = useState(""); + const [tags, setTags] = useState([]); + const [newTags, setNewTags] = useState(""); + const editor = useRef(null); + const [content, setContent] = useState(""); + const MySwal = withReactContent(Swal); + const [selectedImages, setSelectedImages] = useState([]); + const [selectedCategory, setSelectedCategory] = useState(); + const [selectedContentType, setSelectedContentType] = + useState("single-article"); + + const [collectSingleArticleId, setCollectSingleArticleId] = useState< + number[] + >([]); + const [collectBulkArticleId, setCollectBulkArticleId] = useState( + [] + ); + const [collectRewriteArticleId, setCollectRewriteArticleId] = useState< + number[] + >([]); + + const [generatedTranscriptId, setGeneratedTranscriptId] = useState(); + + const generatedArticleIdStore = generatedArticleIds( + (state) => state.articleIds + ); + const setGeneratedArticleIdStore = generatedArticleIds( + (state) => state.setArticleIds + ); + + const [selectedGeneratedArticleId, setSelectedGeneratedArticleId] = + useState(); + + const formOptions = { resolver: zodResolver(articleSchema) }; + type MicroIssueSchema = z.infer; + const { + register, + control, + handleSubmit, + setValue, + formState: { errors }, + } = useForm(formOptions); + + const TypeId = [ + { + key: 1, + label: "Article", + }, + { + key: 2, + label: "Magazine", + }, + ]; + + const handleImageChange = (event: ChangeEvent) => { + if (event.target.files) { + const files = Array.from(event.target.files); + setSelectedImages((prevImages) => [...prevImages, ...files]); + } + }; + + const handleRemoveImage = (index: number) => { + setSelectedImages((prevImages) => prevImages.filter((_, i) => i !== index)); + }; + + const handleClose = (tagsToRemove: string) => { + setTags(tags.filter((tag) => tag !== tagsToRemove)); + if (tags.length === 1) { + setTags([]); + } + }; + + const handleAddTags = (e: any) => { + if (newTags.trim() !== "") { + setTags([...tags, newTags.trim()]); + setNewTags(""); + e.preventDefault(); + } + }; + + const handleKeyDown = (event: any) => { + if (event.key === "Enter") { + handleAddTags(event); + } + }; + + async function save(data: any) { + const formData = { + title: title, + typeId: parseInt(String(Array.from(article)[0])), + slug: slug, + tags: tags.join(","), + description: content, + htmlDescription: content, + }; + + console.log("Form Data:", formData); + const response = await createArticle(formData); + + if (response?.error) { + error(response.message); + return false; + } + + successSubmit("/admin/article"); + } + + function successSubmit(redirect: any) { + MySwal.fire({ + title: "Sukses", + icon: "success", + confirmButtonColor: "#3085d6", + confirmButtonText: "OK", + }).then((result) => { + if (result.isConfirmed) { + router.push(redirect); + } + }); + } + + async function onSubmit(data: any) { + MySwal.fire({ + title: "Simpan Data", + text: "", + icon: "warning", + showCancelButton: true, + cancelButtonColor: "#d33", + confirmButtonColor: "#3085d6", + confirmButtonText: "Simpan", + }).then((result) => { + if (result.isConfirmed) { + save(data); + } + }); + } + + const singleArticleId = (id: number) => { + let temp = [...collectSingleArticleId, id]; + setCollectSingleArticleId(temp); + }; + const bulkArticleId = (id: number[]) => { + let temp: number[] = [...collectBulkArticleId, ...id]; + setCollectBulkArticleId(temp); + }; + const rewriteArticleId = (id: number) => { + let temp = [...collectRewriteArticleId, id]; + setCollectRewriteArticleId(temp); + }; + + useEffect(() => { + getArticleDetail(); + }, [selectedGeneratedArticleId]); + + const checkArticleStatus = async (data: string | null) => { + if (data === null) { + delay(10000).then(() => { + getArticleDetail(); + }); + } + }; + + const getArticleDetail = async () => { + if (selectedGeneratedArticleId) { + const res = await getDetailArticle(selectedGeneratedArticleId); + const data = res?.data?.data?.articleBody; + checkArticleStatus(data); + if (data !== null) { + setContent(data); + } + } + }; + + return ( +
+
+ +
+ setTitle(e.target.value)} + label="Judul" + variant="bordered" + placeholder="Enter Text" + labelPlacement="outside" + /> +
+ {title.length === 0 && errors.title && errors.title.message} +
+
+
+ +
+ {errors.article?.message} +
+ {/*

{article}

*/} +
+
+

Category

+ + "!rounded-xl bg-white !border-1 !border-gray-200", + }} + classNamePrefix="select" + onChange={setSelectedCategory} + closeMenuOnSelect={false} + components={animatedComponents} + isClearable={true} + isSearchable={true} + isMulti={true} + placeholder="Category ..." + name="sub-module" + options={dummyCategory} + /> +
+ {(!selectedCategory || selectedCategory?.length < 1) && ( +

Required

+ )} +
+
+
+ setSlug(e.target.value)} + label="Slug" + variant="bordered" + placeholder="Enter Text" + labelPlacement="outside" + /> +
+ {slug.length === 0 && errors.slug && errors.slug.message} +
+
+
+ setNewTags(e.target.value)} + onKeyDown={handleKeyDown} + placeholder="Tambahkan tag baru dan tekan Enter" + /> +
+ {tags.length === 0 && errors.tags && errors.tags.message} +
+
+ {tags.map((tag, index) => ( + handleClose(tag)} + > + {tag} + + ))} +
+
+ + {selectedContentType === "single-article" ? ( +
+ singleArticleId(data)} + /> +
+ {collectSingleArticleId.length > 0 && + collectSingleArticleId.map((data) => ( + + ))} +
+ {selectedGeneratedArticleId && + collectSingleArticleId.includes(selectedGeneratedArticleId) && + (selectedGeneratedArticleId && content !== "" ? ( +
+

Description

+ setContent(newContent)} + className="dark:text-black" + /> +
+ {content?.length === 0 && + errors?.description && + errors?.description?.message} +
+
+ ) : selectedGeneratedArticleId && content == "" ? ( + + ) : collectSingleArticleId.length > 0 ? ( +

Select Article ID

+ ) : ( + "" + ))} +
+ ) : selectedContentType === "bulk-article" ? ( +
+ bulkArticleId(data)} /> +
+ {collectBulkArticleId.length > 0 && + collectBulkArticleId.map((data) => ( + + ))} +
+ {selectedGeneratedArticleId && + collectBulkArticleId.includes(selectedGeneratedArticleId) && + (selectedGeneratedArticleId && content !== "" ? ( +
+

Description

+ setContent(newContent)} + className="dark:text-black" + /> +
+ {content?.length === 0 && + errors?.description && + errors?.description?.message} +
+
+ ) : selectedGeneratedArticleId && content == "" ? ( + + ) : collectSingleArticleId.length > 0 ? ( +

Select Article ID

+ ) : ( + "" + ))} +
+ ) : selectedContentType === "rewrite" ? ( +
+ rewriteArticleId(data)} + initTranscript={generatedTranscriptId} + /> +
+ {collectRewriteArticleId.length > 0 && + collectRewriteArticleId.map((data) => ( + + ))} +
+ {selectedGeneratedArticleId && + collectRewriteArticleId.includes(selectedGeneratedArticleId) && + (selectedGeneratedArticleId && content !== "" ? ( +
+

Description

+ setContent(newContent)} + className="dark:text-black" + /> +
+ {content?.length === 0 && + errors?.description && + errors?.description?.message} +
+
+ ) : selectedGeneratedArticleId && content == "" ? ( + + ) : collectRewriteArticleId.length > 0 ? ( +

Select Article ID

+ ) : ( + "" + ))} +
+ ) : selectedContentType === "speech-to-text" ? ( + { + setGeneratedTranscriptId(transcriptId); + setSelectedContentType("rewrite"); + }} + /> + ) : ( + "" + )} + +
+

Attachment (Opsional)

+
+ +
+ {selectedImages?.length > 0 ? ( +
+

Pratinjau:

+
+ {selectedImages.map((image, index) => ( +
+ handleRemoveImage(index)} + > + X + + Pratinjau Gambar +
+ ))} +
+
+ ) : ( + "" + )} +
+
+ + + + +
+
+
+
+ ); +} diff --git a/components/form/article/generate-bulk-article-form.tsx b/components/form/article/generate-bulk-article-form.tsx new file mode 100644 index 0000000..d13d131 --- /dev/null +++ b/components/form/article/generate-bulk-article-form.tsx @@ -0,0 +1,506 @@ +"use client"; +import { + Button, + Input, + Select, + SelectItem, + SelectSection, +} from "@nextui-org/react"; +import { FormEvent, useState } from "react"; +import { Controller, useFieldArray, useForm } from "react-hook-form"; +import * as z from "zod"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { close, error, loading } from "@/config/swal"; +import { + generateDataArticle, + getGenerateKeywords, + getGenerateTitle, + getGenerateTopicKeywords, + saveBulkArticle, +} from "@/service/generate-article"; + +const writingStyle = [ + { + id: 1, + name: "Friendly", + }, + { + id: 1, + name: "Professional", + }, + { + id: 3, + name: "Informational", + }, + { + id: 4, + name: "Neutral", + }, + { + id: 5, + name: "Witty", + }, +]; + +const articleSize = [ + { + id: 1, + name: "News (300 - 900 words)", + value: "News", + }, + { + id: 2, + name: "Info (900 - 2000 words)", + value: "Info", + }, + { + id: 3, + name: "Detail (2000 - 5000 words)", + value: "Detail", + }, +]; + +const formSchema = z.object({ + rows: z.array( + z.object({ + mainKeyword: z.string().min(1, { + message: "Main Keyword must be at least 2 characters.", + }), + title: z.string().min(1, { + message: "Title must be at least 2 characters.", + }), + additionalKeyword: z.string().min(1, { + message: "Additional Keyword must be at least 2 characters.", + }), + }) + ), +}); + +export default function GenerateBulkArticle(props: { + articleId: (data: number[]) => void; +}) { + const [selectedWritingSyle, setSelectedWritingStyle] = + useState("Informational"); + const [selectedArticleSize, setSelectedArticleSize] = useState("News"); + const [selectedLanguage, setSelectedLanguage] = useState("id"); + + const formOptions = { + resolver: zodResolver(formSchema), + defaultValues: { + rows: [{ mainKeyword: "", title: "", additionalKeyword: "" }], + }, + }; + type UserSettingSchema = z.infer; + const { + register, + control, + handleSubmit, + formState: { errors }, + setValue, + getValues, + trigger, + } = useForm(formOptions); + + const { fields, append, remove } = useFieldArray({ + control, + name: "rows", + }); + + const onSubmit = async () => { + loading(); + const listData = []; + for (let i = 0; i < fields.length; i++) { + listData.push({ + title: getValues(`rows.${i}.title`), + mainKeyword: getValues(`rows.${i}.mainKeyword`), + additionalKeywords: getValues(`rows.${i}.additionalKeyword`), + }); + } + const request = { + style: "Friendly", + website: "None", + connectToWeb: true, + lang: selectedLanguage, + pointOfView: "0", + imageSource: "Web", + targetCountry: null, + articleSize: selectedArticleSize, + projectId: 2, + data: listData, + createdBy: "123123", + clientId: "humasClientIdtest", + }; + + const res = await saveBulkArticle(request); + if (res.error) { + error(res.message); + return false; + } + + console.log("res?s", res?.data?.data); + const temp: number[] = []; + res?.data?.data.map((data: any) => temp.push(data.id)); + props.articleId(temp); + close(); + }; + + const generateTitle = async (keyword: string | undefined, index: number) => { + if (keyword) { + const req = { + keyword: keyword, + style: selectedWritingSyle, + website: "None", + connectToWeb: true, + lang: selectedLanguage, + pointOfView: "None", + clientId: "", + }; + setValue(`rows.${index}.title`, "process..."); + + const res = await getGenerateTitle(req); + const data = res?.data?.data; + setValue(`rows.${index}.title`, data); + } + }; + + const generateKeywords = async ( + keyword: string | undefined, + index: number + ) => { + if (keyword) { + const req = { + keyword: keyword, + style: selectedWritingSyle, + website: "None", + connectToWeb: true, + lang: selectedLanguage, + pointOfView: "0", + clientId: "", + }; + setValue(`rows.${index}.additionalKeyword`, "process..."); + const res = await getGenerateKeywords(req); + const data = res?.data?.data; + setValue(`rows.${index}.additionalKeyword`, data); + } + }; + + const processAll = async () => { + let emptyMainKeyword = 0; + const mainKeyword = getValues(`rows.0.mainKeyword`); + for (let i = 0; i < fields.length; i++) { + const mainKeyNow = getValues(`rows.${i}.mainKeyword`); + if (mainKeyNow === "") { + emptyMainKeyword++; + } + } + if (mainKeyword !== "") { + if (emptyMainKeyword > 0) { + loading(); + const res = await getGenerateTopicKeywords({ + keyword: mainKeyword, + count: emptyMainKeyword, + }); + const data = res?.data?.data; + let j = 0; + for (let i = 0; i < fields.length; i++) { + const mainKeyNow = getValues(`rows.${i}.mainKeyword`); + if (mainKeyNow === "") { + setValue(`rows.${i}.mainKeyword`, data[j]); + + j++; + } + } + for (let i = 0; i < fields.length; i++) { + const mainKeyNow = getValues(`rows.${i}.mainKeyword`); + if (getValues(`rows.${i}.title`) == "") { + generateTitle(mainKeyNow, i); + } + if (getValues(`rows.${i}.additionalKeyword`) == "") { + generateKeywords(mainKeyNow, i); + } + } + + close(); + } else { + loading(); + for (let i = 0; i < fields.length; i++) { + const mainKeyNow = getValues(`rows.${i}.mainKeyword`); + if (getValues(`rows.${i}.title`) == "") { + generateTitle(mainKeyNow, i); + } + if (getValues(`rows.${i}.additionalKeyword`) == "") { + generateKeywords(mainKeyNow, i); + } + } + close(); + } + } + }; + + const processRow = (index: number) => { + const addKeyword = getValues(`rows.${index}.mainKeyword`); + console.log("index", index, addKeyword); + generateTitle(addKeyword, index); + + generateKeywords(addKeyword, index); + }; + + const validateFields = async () => { + const validation = await trigger(); + if (validation) { + onSubmit(); + } + }; + + return ( +
+
+
+ + + +
+
+ {fields.map((field, index) => ( +
+
+
+
+

Main Keyword

+ +
+
+ {index === fields.length - 1 && ( + + )} + {index !== 0 && ( + remove(index)} + className="cursor-pointer mb-2 w-[20px] h-[20px]text-center rounded-full flex justify-center items-center" + > + - + + )} +
+
+ ( + + )} + /> +
+
+
+

Title

+ +
+ ( + + )} + /> +
+ +
+
+
+
+

SEO

+ +
+ ( + + )} + /> +
+
+ +
+ {index === fields.length - 1 && ( + + )} + {index !== 0 && ( + remove(index)} + className="cursor-pointer mb-2 w-[20px] h-[20px]text-center rounded-full flex justify-center items-center" + > + - + + )} +
+
+
+ ))} +
+ + +
+
+ ); +} diff --git a/components/form/article/generate-rewrite-form.tsx b/components/form/article/generate-rewrite-form.tsx new file mode 100644 index 0000000..8466e6e --- /dev/null +++ b/components/form/article/generate-rewrite-form.tsx @@ -0,0 +1,273 @@ +"use client"; +import { + Button, + Input, + Select, + SelectItem, + SelectSection, + Textarea, +} from "@nextui-org/react"; +import { FormEvent, useEffect, useState } from "react"; +import { Controller, useForm } from "react-hook-form"; +import * as z from "zod"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { close, error, loading } from "@/config/swal"; +import { getGenerateRewriter } from "@/service/generate-article"; +import TranscriptDraftTable from "@/components/table/disestages/transcript-draft-table"; +import ArticleDraftTable from "@/components/table/disestages/article-draft-table"; + +const writingStyle = [ + { + id: 1, + name: "Friendly", + }, + { + id: 1, + name: "Professional", + }, + { + id: 3, + name: "Informational", + }, + { + id: 4, + name: "Neutral", + }, + { + id: 5, + name: "Witty", + }, +]; + +const articleSize = [ + { + id: 1, + name: "News (300 - 900 words)", + value: "News", + }, + { + id: 2, + name: "Info (900 - 2000 words)", + value: "Info", + }, + { + id: 3, + name: "Detail (2000 - 5000 words)", + value: "Detail", + }, +]; + +const formSchema = z.object({ + field1: z.string().min(2, { + message: "Required", + }), + advancedConfiguration: z.string().optional(), +}); + +export default function GenerateRewriteArticle(props: { + articleId: (data: number) => void; + initTranscript?: number; +}) { + const [selectedWritingSyle, setSelectedWritingStyle] = + useState("Informational"); + const [selectedArticleSize, setSelectedArticleSize] = useState("News"); + const [selectedLanguage, setSelectedLanguage] = useState("id"); + const [contextType, setContextType] = useState("text"); + + useEffect(() => { + if (props.initTranscript) { + setContextType("transcript"); + } + }, [props.initTranscript]); + + const formOptions = { resolver: zodResolver(formSchema) }; + type UserSettingSchema = z.infer; + const { + control, + handleSubmit, + formState: { errors }, + setValue, + } = useForm(formOptions); + + const onSubmit = async (values: z.infer) => { + loading(); + const request = { + advConfig: values.advancedConfiguration || "", + context: contextType == "url" ? null : values.field1, + style: selectedWritingSyle, + sentiment: "Humorous", + clientId: "humasClientIdtest", + createdBy: "123123", + contextType: contextType, + urlContext: contextType === "url" ? values.field1 : null, + lang: selectedLanguage, + }; + const res = await getGenerateRewriter(request); + close(); + if (res?.error) { + error("Error"); + } + props.articleId(res?.data?.data?.id); + }; + + useEffect(() => { + setValue("field1", ""); + }, [contextType]); + return ( +
+
+
+ + + + +
+
+ {(contextType === "text" || contextType === "url") && ( +

+ {contextType === "text" ? "Enter your text here" : "Insert URL"} +

+ )} + {(contextType === "text" || contextType === "url") && ( + + contextType === "text" ? ( +