From cec4259da89c68b731cff1d454f052f4ce25fe78 Mon Sep 17 00:00:00 2001 From: hanif salafi Date: Fri, 13 Dec 2024 07:39:20 +0700 Subject: [PATCH] feat: restructure folder for contributor, supervisor, curator; update landing page pagination (image); etc --- .../agenda-setting/calender-view.tsx | 0 .../{ => contributor}/agenda-setting/data.ts | 0 .../agenda-setting/dragging-events.tsx | 0 .../agenda-setting/event-modal.tsx | 2 +- .../agenda-setting/layout.tsx | 0 .../{ => contributor}/agenda-setting/page.tsx | 0 .../{ => contributor}/agenda-setting/utils.ts | 0 .../blog/components/blog-table.tsx | 0 .../blog/components/columns.tsx | 0 .../{ => contributor}/blog/layout.tsx | 0 .../{ => contributor}/blog/page.tsx | 0 .../audio-visual/components/columns.tsx | 2 +- .../audio-visual/components/table-video.tsx | 0 .../content/audio-visual/create/page.tsx | 0 .../content/audio-visual/layout.tsx | 0 .../content/audio-visual/page.tsx | 2 +- .../content/audio}/components/columns.tsx | 2 +- .../content/audio/components/table-audio.tsx | 0 .../content/audio/layout.tsx | 0 .../{ => contributor}/content/audio/page.tsx | 0 .../content/image}/components/columns.tsx | 2 +- .../content/image/components/table-image.tsx | 0 .../content/image/create/page.tsx | 0 .../content/image/layout.tsx | 0 .../{ => contributor}/content/image/page.tsx | 3 +- .../content/nulis-ai/components/columns.tsx | 2 +- .../nulis-ai/components/table-nulis.tsx | 0 .../content/nulis-ai/layout.tsx | 0 .../content/nulis-ai/page.tsx | 0 .../{ => contributor}/content/spit/layout.tsx | 0 .../{ => contributor}/content/spit/page.tsx | 0 .../content/spit/table-spit/columns.tsx | 0 .../content/spit/table-spit/data.ts | 0 .../content/spit/table-spit/page.tsx | 2 +- .../spit/table-spit/table-pagination.tsx | 0 .../content/teks}/components/columns.tsx | 2 +- .../content/teks/components/table-teks.tsx | 0 .../{ => contributor}/content/teks/layout.tsx | 0 .../{ => contributor}/content/teks/page.tsx | 0 .../planning/mediahub/components/columns.tsx | 0 .../mediahub/components/mediahub-table.tsx | 0 .../planning/mediahub/layout.tsx | 0 .../planning/mediahub/page.tsx | 0 .../medsos-mediahub/components/columns.tsx | 0 .../components/medsos-table.tsx | 0 .../planning/medsos-mediahub/layout.tsx | 0 .../planning/medsos-mediahub/page.tsx | 0 .../schedule/event/components/columns.tsx | 0 .../schedule/event/components/event-table.tsx | 0 .../schedule/event/create/page.tsx | 0 .../schedule/event/layout.tsx | 0 .../{ => contributor}/schedule/event/page.tsx | 3 +- .../press-conference/components/columns.tsx | 2 +- .../components/presscon-table.tsx | 0 .../schedule/press-conference/create/page.tsx | 0 .../press-conference/detail/[id]/page.tsx | 0 .../schedule/press-conference/layout.tsx | 0 .../schedule/press-conference/page.tsx | 3 +- .../press-release/components/columns.tsx | 0 .../components/pressrilis-table.tsx | 0 .../schedule/press-release/create/page.tsx | 0 .../schedule/press-release/layout.tsx | 0 .../schedule/press-release/page.tsx | 3 +- .../task/components/columns.tsx | 0 .../task/components/task-table.tsx | 47 +++++--- .../{ => contributor}/task/create/page.tsx | 0 .../task/detail/[id]/page.tsx | 0 .../{ => contributor}/task/layout.tsx | 0 .../{ => contributor}/task/page.tsx | 3 +- app/[locale]/(protected)/dashboard/page.tsx | 6 +- .../components/collabroation-table.tsx | 0 .../collaboration/components/columns.tsx | 0 .../collaboration/create/page.tsx | 0 .../escalation/table-escalation/columns.tsx | 0 .../table-escalation/escalation-table.tsx | 0 .../internal/components/columns.tsx | 0 .../internal/components/internal-table.tsx | 0 .../communication/internal/create/page.tsx | 0 .../{ => shared}/communication/layout.tsx | 0 .../{ => shared}/communication/page.tsx | 0 .../contest/components/columns.tsx | 0 .../contest/components/contest-table.tsx | 0 .../{ => shared}/contest/layout.tsx | 0 .../(protected)/{ => shared}/contest/page.tsx | 2 +- .../giat-penugasan/audio-visual.tsx | 0 .../curated-content/giat-penugasan/audio.tsx | 0 .../curated-content/giat-penugasan/image.tsx | 0 .../curated-content/giat-penugasan/teks.tsx | 0 .../giat-routine/audio-visual.tsx | 0 .../curated-content/giat-routine/audio.tsx | 0 .../curated-content/giat-routine/image.tsx | 0 .../curated-content/giat-routine/teks.tsx | 0 .../{ => shared}/curated-content/layout.tsx | 0 .../{ => shared}/curated-content/page.tsx | 0 .../account-report/components/column.tsx | 0 .../account-report/components/table.tsx | 0 .../communications/account-report/layout.tsx | 0 .../communications/account-report/page.tsx | 0 .../collaboration/components/column.tsx | 0 .../collaboration/components/table.tsx | 0 .../communications/collaboration/layout.tsx | 0 .../communications/collaboration/page.tsx | 0 .../forward/components/column.tsx | 0 .../forward/components/table.tsx | 0 .../communications/forward/layout.tsx | 0 .../communications/forward/page.tsx | 0 .../internal/components/column.tsx | 0 .../internal/components/table.tsx | 0 .../communications/internal/layout.tsx | 0 .../communications/internal/page.tsx | 0 .../questions/components/column.tsx | 0 .../questions/components/table.tsx | 0 .../communications/questions/layout.tsx | 0 .../communications/questions/page.tsx | 0 .../components/column.tsx | 0 .../components/table.tsx | 0 .../frequently-asked-question/layout.tsx | 0 .../frequently-asked-question/page.tsx | 0 .../knowledge-base/layout.tsx | 0 .../{ => supervisor}/knowledge-base/page.tsx | 0 .../ticketing/components/columns.tsx | 0 .../ticketing/components/table.tsx | 0 .../{ => supervisor}/ticketing/layout.tsx | 0 .../{ => supervisor}/ticketing/page.tsx | 0 app/[locale]/(public)/audio/layout.tsx | 2 +- app/[locale]/(public)/contact/layout.tsx | 2 +- app/[locale]/(public)/document/layout.tsx | 2 +- app/[locale]/(public)/faqs/layout.tsx | 2 +- app/[locale]/(public)/feedback/layout.tsx | 2 +- app/[locale]/(public)/image/filter/page.tsx | 57 ++++----- app/[locale]/(public)/image/layout.tsx | 2 +- app/[locale]/(public)/indeks/layout.tsx | 2 +- app/[locale]/(public)/schedule/layout.tsx | 2 +- app/[locale]/(public)/video/layout.tsx | 2 +- app/[locale]/page.tsx | 2 +- .../form/communication/collaboration-form.tsx | 2 +- .../form/communication/internal-form.tsx | 2 +- components/form/content/image-form.tsx | 2 +- components/form/content/video-form.tsx | 2 +- components/form/schedule/event-form.tsx | 2 +- .../form/schedule/pers-release-form.tsx | 2 +- .../form/schedule/press-conference-form.tsx | 2 +- components/form/task/task-form.tsx | 2 +- components/landing-page/Navbar.tsx | 2 +- components/landing-page/pagination.tsx | 112 ++++++++++++++++++ lib/menus.ts | 106 ++++++++--------- 146 files changed, 252 insertions(+), 149 deletions(-) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/calender-view.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/data.ts (100%) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/dragging-events.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/event-modal.tsx (99%) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/agenda-setting/utils.ts (100%) rename app/[locale]/(protected)/{ => contributor}/blog/components/blog-table.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/blog/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/blog/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/blog/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/audio-visual/components/columns.tsx (98%) rename app/[locale]/(protected)/{ => contributor}/content/audio-visual/components/table-video.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/audio-visual/create/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/audio-visual/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/audio-visual/page.tsx (97%) rename app/[locale]/(protected)/{content/teks => contributor/content/audio}/components/columns.tsx (98%) rename app/[locale]/(protected)/{ => contributor}/content/audio/components/table-audio.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/audio/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/audio/page.tsx (100%) rename app/[locale]/(protected)/{content/audio => contributor/content/image}/components/columns.tsx (98%) rename app/[locale]/(protected)/{ => contributor}/content/image/components/table-image.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/image/create/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/image/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/image/page.tsx (96%) rename app/[locale]/(protected)/{ => contributor}/content/nulis-ai/components/columns.tsx (98%) rename app/[locale]/(protected)/{ => contributor}/content/nulis-ai/components/table-nulis.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/nulis-ai/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/nulis-ai/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/spit/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/spit/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/spit/table-spit/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/spit/table-spit/data.ts (100%) rename app/[locale]/(protected)/{ => contributor}/content/spit/table-spit/page.tsx (99%) rename app/[locale]/(protected)/{ => contributor}/content/spit/table-spit/table-pagination.tsx (100%) rename app/[locale]/(protected)/{content/image => contributor/content/teks}/components/columns.tsx (98%) rename app/[locale]/(protected)/{ => contributor}/content/teks/components/table-teks.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/teks/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/content/teks/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/mediahub/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/mediahub/components/mediahub-table.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/mediahub/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/mediahub/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/medsos-mediahub/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/medsos-mediahub/components/medsos-table.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/medsos-mediahub/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/planning/medsos-mediahub/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/event/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/event/components/event-table.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/event/create/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/event/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/event/page.tsx (91%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-conference/components/columns.tsx (98%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-conference/components/presscon-table.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-conference/create/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-conference/detail/[id]/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-conference/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-conference/page.tsx (90%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-release/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-release/components/pressrilis-table.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-release/create/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-release/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/schedule/press-release/page.tsx (90%) rename app/[locale]/(protected)/{ => contributor}/task/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/task/components/task-table.tsx (83%) rename app/[locale]/(protected)/{ => contributor}/task/create/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/task/detail/[id]/page.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/task/layout.tsx (100%) rename app/[locale]/(protected)/{ => contributor}/task/page.tsx (93%) rename app/[locale]/(protected)/{ => shared}/communication/collaboration/components/collabroation-table.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/collaboration/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/collaboration/create/page.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/escalation/table-escalation/columns.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/escalation/table-escalation/escalation-table.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/internal/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/internal/components/internal-table.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/internal/create/page.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/layout.tsx (100%) rename app/[locale]/(protected)/{ => shared}/communication/page.tsx (100%) rename app/[locale]/(protected)/{ => shared}/contest/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => shared}/contest/components/contest-table.tsx (100%) rename app/[locale]/(protected)/{ => shared}/contest/layout.tsx (100%) rename app/[locale]/(protected)/{ => shared}/contest/page.tsx (95%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-penugasan/audio-visual.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-penugasan/audio.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-penugasan/image.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-penugasan/teks.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-routine/audio-visual.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-routine/audio.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-routine/image.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/giat-routine/teks.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/layout.tsx (100%) rename app/[locale]/(protected)/{ => shared}/curated-content/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/account-report/components/column.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/account-report/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/account-report/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/account-report/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/collaboration/components/column.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/collaboration/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/collaboration/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/collaboration/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/forward/components/column.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/forward/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/forward/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/forward/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/internal/components/column.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/internal/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/internal/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/internal/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/questions/components/column.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/questions/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/questions/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/communications/questions/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/frequently-asked-question/components/column.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/frequently-asked-question/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/frequently-asked-question/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/frequently-asked-question/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/knowledge-base/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/knowledge-base/page.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/ticketing/components/columns.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/ticketing/components/table.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/ticketing/layout.tsx (100%) rename app/[locale]/(protected)/{ => supervisor}/ticketing/page.tsx (100%) create mode 100644 components/landing-page/pagination.tsx diff --git a/app/[locale]/(protected)/agenda-setting/calender-view.tsx b/app/[locale]/(protected)/contributor/agenda-setting/calender-view.tsx similarity index 100% rename from app/[locale]/(protected)/agenda-setting/calender-view.tsx rename to app/[locale]/(protected)/contributor/agenda-setting/calender-view.tsx diff --git a/app/[locale]/(protected)/agenda-setting/data.ts b/app/[locale]/(protected)/contributor/agenda-setting/data.ts similarity index 100% rename from app/[locale]/(protected)/agenda-setting/data.ts rename to app/[locale]/(protected)/contributor/agenda-setting/data.ts diff --git a/app/[locale]/(protected)/agenda-setting/dragging-events.tsx b/app/[locale]/(protected)/contributor/agenda-setting/dragging-events.tsx similarity index 100% rename from app/[locale]/(protected)/agenda-setting/dragging-events.tsx rename to app/[locale]/(protected)/contributor/agenda-setting/dragging-events.tsx diff --git a/app/[locale]/(protected)/agenda-setting/event-modal.tsx b/app/[locale]/(protected)/contributor/agenda-setting/event-modal.tsx similarity index 99% rename from app/[locale]/(protected)/agenda-setting/event-modal.tsx rename to app/[locale]/(protected)/contributor/agenda-setting/event-modal.tsx index c84fdc07..864ea8d2 100644 --- a/app/[locale]/(protected)/agenda-setting/event-modal.tsx +++ b/app/[locale]/(protected)/contributor/agenda-setting/event-modal.tsx @@ -112,7 +112,7 @@ const EventModal = ({ confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/agenda-setting"); + router.push("/contributor/agenda-setting"); }); }; diff --git a/app/[locale]/(protected)/agenda-setting/layout.tsx b/app/[locale]/(protected)/contributor/agenda-setting/layout.tsx similarity index 100% rename from app/[locale]/(protected)/agenda-setting/layout.tsx rename to app/[locale]/(protected)/contributor/agenda-setting/layout.tsx diff --git a/app/[locale]/(protected)/agenda-setting/page.tsx b/app/[locale]/(protected)/contributor/agenda-setting/page.tsx similarity index 100% rename from app/[locale]/(protected)/agenda-setting/page.tsx rename to app/[locale]/(protected)/contributor/agenda-setting/page.tsx diff --git a/app/[locale]/(protected)/agenda-setting/utils.ts b/app/[locale]/(protected)/contributor/agenda-setting/utils.ts similarity index 100% rename from app/[locale]/(protected)/agenda-setting/utils.ts rename to app/[locale]/(protected)/contributor/agenda-setting/utils.ts diff --git a/app/[locale]/(protected)/blog/components/blog-table.tsx b/app/[locale]/(protected)/contributor/blog/components/blog-table.tsx similarity index 100% rename from app/[locale]/(protected)/blog/components/blog-table.tsx rename to app/[locale]/(protected)/contributor/blog/components/blog-table.tsx diff --git a/app/[locale]/(protected)/blog/components/columns.tsx b/app/[locale]/(protected)/contributor/blog/components/columns.tsx similarity index 100% rename from app/[locale]/(protected)/blog/components/columns.tsx rename to app/[locale]/(protected)/contributor/blog/components/columns.tsx diff --git a/app/[locale]/(protected)/blog/layout.tsx b/app/[locale]/(protected)/contributor/blog/layout.tsx similarity index 100% rename from app/[locale]/(protected)/blog/layout.tsx rename to app/[locale]/(protected)/contributor/blog/layout.tsx diff --git a/app/[locale]/(protected)/blog/page.tsx b/app/[locale]/(protected)/contributor/blog/page.tsx similarity index 100% rename from app/[locale]/(protected)/blog/page.tsx rename to app/[locale]/(protected)/contributor/blog/page.tsx diff --git a/app/[locale]/(protected)/content/audio-visual/components/columns.tsx b/app/[locale]/(protected)/contributor/content/audio-visual/components/columns.tsx similarity index 98% rename from app/[locale]/(protected)/content/audio-visual/components/columns.tsx rename to app/[locale]/(protected)/contributor/content/audio-visual/components/columns.tsx index f2dcd85f..4984ce42 100644 --- a/app/[locale]/(protected)/content/audio-visual/components/columns.tsx +++ b/app/[locale]/(protected)/contributor/content/audio-visual/components/columns.tsx @@ -139,7 +139,7 @@ const columns: ColumnDef[] = [ - + View diff --git a/app/[locale]/(protected)/content/audio-visual/components/table-video.tsx b/app/[locale]/(protected)/contributor/content/audio-visual/components/table-video.tsx similarity index 100% rename from app/[locale]/(protected)/content/audio-visual/components/table-video.tsx rename to app/[locale]/(protected)/contributor/content/audio-visual/components/table-video.tsx diff --git a/app/[locale]/(protected)/content/audio-visual/create/page.tsx b/app/[locale]/(protected)/contributor/content/audio-visual/create/page.tsx similarity index 100% rename from app/[locale]/(protected)/content/audio-visual/create/page.tsx rename to app/[locale]/(protected)/contributor/content/audio-visual/create/page.tsx diff --git a/app/[locale]/(protected)/content/audio-visual/layout.tsx b/app/[locale]/(protected)/contributor/content/audio-visual/layout.tsx similarity index 100% rename from app/[locale]/(protected)/content/audio-visual/layout.tsx rename to app/[locale]/(protected)/contributor/content/audio-visual/layout.tsx diff --git a/app/[locale]/(protected)/content/audio-visual/page.tsx b/app/[locale]/(protected)/contributor/content/audio-visual/page.tsx similarity index 97% rename from app/[locale]/(protected)/content/audio-visual/page.tsx rename to app/[locale]/(protected)/contributor/content/audio-visual/page.tsx index affcc207..264adef7 100644 --- a/app/[locale]/(protected)/content/audio-visual/page.tsx +++ b/app/[locale]/(protected)/contributor/content/audio-visual/page.tsx @@ -58,7 +58,7 @@ const ReactTableVideoPage = () => { Konten Video
- + - + View diff --git a/app/[locale]/(protected)/content/audio/components/table-audio.tsx b/app/[locale]/(protected)/contributor/content/audio/components/table-audio.tsx similarity index 100% rename from app/[locale]/(protected)/content/audio/components/table-audio.tsx rename to app/[locale]/(protected)/contributor/content/audio/components/table-audio.tsx diff --git a/app/[locale]/(protected)/content/audio/layout.tsx b/app/[locale]/(protected)/contributor/content/audio/layout.tsx similarity index 100% rename from app/[locale]/(protected)/content/audio/layout.tsx rename to app/[locale]/(protected)/contributor/content/audio/layout.tsx diff --git a/app/[locale]/(protected)/content/audio/page.tsx b/app/[locale]/(protected)/contributor/content/audio/page.tsx similarity index 100% rename from app/[locale]/(protected)/content/audio/page.tsx rename to app/[locale]/(protected)/contributor/content/audio/page.tsx diff --git a/app/[locale]/(protected)/content/audio/components/columns.tsx b/app/[locale]/(protected)/contributor/content/image/components/columns.tsx similarity index 98% rename from app/[locale]/(protected)/content/audio/components/columns.tsx rename to app/[locale]/(protected)/contributor/content/image/components/columns.tsx index f2dcd85f..4984ce42 100644 --- a/app/[locale]/(protected)/content/audio/components/columns.tsx +++ b/app/[locale]/(protected)/contributor/content/image/components/columns.tsx @@ -139,7 +139,7 @@ const columns: ColumnDef[] = [ - + View diff --git a/app/[locale]/(protected)/content/image/components/table-image.tsx b/app/[locale]/(protected)/contributor/content/image/components/table-image.tsx similarity index 100% rename from app/[locale]/(protected)/content/image/components/table-image.tsx rename to app/[locale]/(protected)/contributor/content/image/components/table-image.tsx diff --git a/app/[locale]/(protected)/content/image/create/page.tsx b/app/[locale]/(protected)/contributor/content/image/create/page.tsx similarity index 100% rename from app/[locale]/(protected)/content/image/create/page.tsx rename to app/[locale]/(protected)/contributor/content/image/create/page.tsx diff --git a/app/[locale]/(protected)/content/image/layout.tsx b/app/[locale]/(protected)/contributor/content/image/layout.tsx similarity index 100% rename from app/[locale]/(protected)/content/image/layout.tsx rename to app/[locale]/(protected)/contributor/content/image/layout.tsx diff --git a/app/[locale]/(protected)/content/image/page.tsx b/app/[locale]/(protected)/contributor/content/image/page.tsx similarity index 96% rename from app/[locale]/(protected)/content/image/page.tsx rename to app/[locale]/(protected)/contributor/content/image/page.tsx index 9d929942..d58f7f98 100644 --- a/app/[locale]/(protected)/content/image/page.tsx +++ b/app/[locale]/(protected)/contributor/content/image/page.tsx @@ -6,7 +6,6 @@ import { UploadIcon } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Icon } from "@iconify/react/dist/iconify.js"; import { Link } from "@/components/navigation"; -import TicketingTable from "../../ticketing/components/table"; const ReactTableImagePage = () => { return ( @@ -58,7 +57,7 @@ const ReactTableImagePage = () => { Konten Foto
- + - + View diff --git a/app/[locale]/(protected)/content/nulis-ai/components/table-nulis.tsx b/app/[locale]/(protected)/contributor/content/nulis-ai/components/table-nulis.tsx similarity index 100% rename from app/[locale]/(protected)/content/nulis-ai/components/table-nulis.tsx rename to app/[locale]/(protected)/contributor/content/nulis-ai/components/table-nulis.tsx diff --git a/app/[locale]/(protected)/content/nulis-ai/layout.tsx b/app/[locale]/(protected)/contributor/content/nulis-ai/layout.tsx similarity index 100% rename from app/[locale]/(protected)/content/nulis-ai/layout.tsx rename to app/[locale]/(protected)/contributor/content/nulis-ai/layout.tsx diff --git a/app/[locale]/(protected)/content/nulis-ai/page.tsx b/app/[locale]/(protected)/contributor/content/nulis-ai/page.tsx similarity index 100% rename from app/[locale]/(protected)/content/nulis-ai/page.tsx rename to app/[locale]/(protected)/contributor/content/nulis-ai/page.tsx diff --git a/app/[locale]/(protected)/content/spit/layout.tsx b/app/[locale]/(protected)/contributor/content/spit/layout.tsx similarity index 100% rename from app/[locale]/(protected)/content/spit/layout.tsx rename to app/[locale]/(protected)/contributor/content/spit/layout.tsx diff --git a/app/[locale]/(protected)/content/spit/page.tsx b/app/[locale]/(protected)/contributor/content/spit/page.tsx similarity index 100% rename from app/[locale]/(protected)/content/spit/page.tsx rename to app/[locale]/(protected)/contributor/content/spit/page.tsx diff --git a/app/[locale]/(protected)/content/spit/table-spit/columns.tsx b/app/[locale]/(protected)/contributor/content/spit/table-spit/columns.tsx similarity index 100% rename from app/[locale]/(protected)/content/spit/table-spit/columns.tsx rename to app/[locale]/(protected)/contributor/content/spit/table-spit/columns.tsx diff --git a/app/[locale]/(protected)/content/spit/table-spit/data.ts b/app/[locale]/(protected)/contributor/content/spit/table-spit/data.ts similarity index 100% rename from app/[locale]/(protected)/content/spit/table-spit/data.ts rename to app/[locale]/(protected)/contributor/content/spit/table-spit/data.ts diff --git a/app/[locale]/(protected)/content/spit/table-spit/page.tsx b/app/[locale]/(protected)/contributor/content/spit/table-spit/page.tsx similarity index 99% rename from app/[locale]/(protected)/content/spit/table-spit/page.tsx rename to app/[locale]/(protected)/contributor/content/spit/table-spit/page.tsx index b343e6a3..8b51bf27 100644 --- a/app/[locale]/(protected)/content/spit/table-spit/page.tsx +++ b/app/[locale]/(protected)/contributor/content/spit/table-spit/page.tsx @@ -177,7 +177,7 @@ const columns: ColumnDef[] = [ - + View diff --git a/app/[locale]/(protected)/content/spit/table-spit/table-pagination.tsx b/app/[locale]/(protected)/contributor/content/spit/table-spit/table-pagination.tsx similarity index 100% rename from app/[locale]/(protected)/content/spit/table-spit/table-pagination.tsx rename to app/[locale]/(protected)/contributor/content/spit/table-spit/table-pagination.tsx diff --git a/app/[locale]/(protected)/content/image/components/columns.tsx b/app/[locale]/(protected)/contributor/content/teks/components/columns.tsx similarity index 98% rename from app/[locale]/(protected)/content/image/components/columns.tsx rename to app/[locale]/(protected)/contributor/content/teks/components/columns.tsx index f2dcd85f..4984ce42 100644 --- a/app/[locale]/(protected)/content/image/components/columns.tsx +++ b/app/[locale]/(protected)/contributor/content/teks/components/columns.tsx @@ -139,7 +139,7 @@ const columns: ColumnDef[] = [ - + View diff --git a/app/[locale]/(protected)/content/teks/components/table-teks.tsx b/app/[locale]/(protected)/contributor/content/teks/components/table-teks.tsx similarity index 100% rename from app/[locale]/(protected)/content/teks/components/table-teks.tsx rename to app/[locale]/(protected)/contributor/content/teks/components/table-teks.tsx diff --git a/app/[locale]/(protected)/content/teks/layout.tsx b/app/[locale]/(protected)/contributor/content/teks/layout.tsx similarity index 100% rename from app/[locale]/(protected)/content/teks/layout.tsx rename to app/[locale]/(protected)/contributor/content/teks/layout.tsx diff --git a/app/[locale]/(protected)/content/teks/page.tsx b/app/[locale]/(protected)/contributor/content/teks/page.tsx similarity index 100% rename from app/[locale]/(protected)/content/teks/page.tsx rename to app/[locale]/(protected)/contributor/content/teks/page.tsx diff --git a/app/[locale]/(protected)/planning/mediahub/components/columns.tsx b/app/[locale]/(protected)/contributor/planning/mediahub/components/columns.tsx similarity index 100% rename from app/[locale]/(protected)/planning/mediahub/components/columns.tsx rename to app/[locale]/(protected)/contributor/planning/mediahub/components/columns.tsx diff --git a/app/[locale]/(protected)/planning/mediahub/components/mediahub-table.tsx b/app/[locale]/(protected)/contributor/planning/mediahub/components/mediahub-table.tsx similarity index 100% rename from app/[locale]/(protected)/planning/mediahub/components/mediahub-table.tsx rename to app/[locale]/(protected)/contributor/planning/mediahub/components/mediahub-table.tsx diff --git a/app/[locale]/(protected)/planning/mediahub/layout.tsx b/app/[locale]/(protected)/contributor/planning/mediahub/layout.tsx similarity index 100% rename from app/[locale]/(protected)/planning/mediahub/layout.tsx rename to app/[locale]/(protected)/contributor/planning/mediahub/layout.tsx diff --git a/app/[locale]/(protected)/planning/mediahub/page.tsx b/app/[locale]/(protected)/contributor/planning/mediahub/page.tsx similarity index 100% rename from app/[locale]/(protected)/planning/mediahub/page.tsx rename to app/[locale]/(protected)/contributor/planning/mediahub/page.tsx diff --git a/app/[locale]/(protected)/planning/medsos-mediahub/components/columns.tsx b/app/[locale]/(protected)/contributor/planning/medsos-mediahub/components/columns.tsx similarity index 100% rename from app/[locale]/(protected)/planning/medsos-mediahub/components/columns.tsx rename to app/[locale]/(protected)/contributor/planning/medsos-mediahub/components/columns.tsx diff --git a/app/[locale]/(protected)/planning/medsos-mediahub/components/medsos-table.tsx b/app/[locale]/(protected)/contributor/planning/medsos-mediahub/components/medsos-table.tsx similarity index 100% rename from app/[locale]/(protected)/planning/medsos-mediahub/components/medsos-table.tsx rename to app/[locale]/(protected)/contributor/planning/medsos-mediahub/components/medsos-table.tsx diff --git a/app/[locale]/(protected)/planning/medsos-mediahub/layout.tsx b/app/[locale]/(protected)/contributor/planning/medsos-mediahub/layout.tsx similarity index 100% rename from app/[locale]/(protected)/planning/medsos-mediahub/layout.tsx rename to app/[locale]/(protected)/contributor/planning/medsos-mediahub/layout.tsx diff --git a/app/[locale]/(protected)/planning/medsos-mediahub/page.tsx b/app/[locale]/(protected)/contributor/planning/medsos-mediahub/page.tsx similarity index 100% rename from app/[locale]/(protected)/planning/medsos-mediahub/page.tsx rename to app/[locale]/(protected)/contributor/planning/medsos-mediahub/page.tsx diff --git a/app/[locale]/(protected)/schedule/event/components/columns.tsx b/app/[locale]/(protected)/contributor/schedule/event/components/columns.tsx similarity index 100% rename from app/[locale]/(protected)/schedule/event/components/columns.tsx rename to app/[locale]/(protected)/contributor/schedule/event/components/columns.tsx diff --git a/app/[locale]/(protected)/schedule/event/components/event-table.tsx b/app/[locale]/(protected)/contributor/schedule/event/components/event-table.tsx similarity index 100% rename from app/[locale]/(protected)/schedule/event/components/event-table.tsx rename to app/[locale]/(protected)/contributor/schedule/event/components/event-table.tsx diff --git a/app/[locale]/(protected)/schedule/event/create/page.tsx b/app/[locale]/(protected)/contributor/schedule/event/create/page.tsx similarity index 100% rename from app/[locale]/(protected)/schedule/event/create/page.tsx rename to app/[locale]/(protected)/contributor/schedule/event/create/page.tsx diff --git a/app/[locale]/(protected)/schedule/event/layout.tsx b/app/[locale]/(protected)/contributor/schedule/event/layout.tsx similarity index 100% rename from app/[locale]/(protected)/schedule/event/layout.tsx rename to app/[locale]/(protected)/contributor/schedule/event/layout.tsx diff --git a/app/[locale]/(protected)/schedule/event/page.tsx b/app/[locale]/(protected)/contributor/schedule/event/page.tsx similarity index 91% rename from app/[locale]/(protected)/schedule/event/page.tsx rename to app/[locale]/(protected)/contributor/schedule/event/page.tsx index 0277772a..ab934287 100644 --- a/app/[locale]/(protected)/schedule/event/page.tsx +++ b/app/[locale]/(protected)/contributor/schedule/event/page.tsx @@ -5,7 +5,6 @@ import { UploadIcon } from "lucide-react"; import PressConferenceTable from "../press-conference/components/presscon-table"; import EventTable from "./components/event-table"; import { Link } from "@/components/navigation"; -import TicketingTable from "../../ticketing/components/table"; const EventPage = async () => { return ( @@ -20,7 +19,7 @@ const EventPage = async () => { Jadwal Event
- +
- +
- + - +
+ +
diff --git a/app/[locale]/(protected)/task/create/page.tsx b/app/[locale]/(protected)/contributor/task/create/page.tsx similarity index 100% rename from app/[locale]/(protected)/task/create/page.tsx rename to app/[locale]/(protected)/contributor/task/create/page.tsx diff --git a/app/[locale]/(protected)/task/detail/[id]/page.tsx b/app/[locale]/(protected)/contributor/task/detail/[id]/page.tsx similarity index 100% rename from app/[locale]/(protected)/task/detail/[id]/page.tsx rename to app/[locale]/(protected)/contributor/task/detail/[id]/page.tsx diff --git a/app/[locale]/(protected)/task/layout.tsx b/app/[locale]/(protected)/contributor/task/layout.tsx similarity index 100% rename from app/[locale]/(protected)/task/layout.tsx rename to app/[locale]/(protected)/contributor/task/layout.tsx diff --git a/app/[locale]/(protected)/task/page.tsx b/app/[locale]/(protected)/contributor/task/page.tsx similarity index 93% rename from app/[locale]/(protected)/task/page.tsx rename to app/[locale]/(protected)/contributor/task/page.tsx index 4564e125..00f328ef 100644 --- a/app/[locale]/(protected)/task/page.tsx +++ b/app/[locale]/(protected)/contributor/task/page.tsx @@ -7,7 +7,6 @@ import SiteBreadcrumb from "@/components/site-breadcrumb"; import { Link } from "@/components/navigation"; import { checkAuthorization, checkLoginSession } from "@/lib/utils"; import React, { useEffect } from "react"; -import TicketingTable from "../ticketing/components/table"; const TaskPage = () => { useEffect(() => { @@ -31,7 +30,7 @@ const TaskPage = () => { Table Penugasan
- +
- {/* + {/*
- - - - - - - 1 - - - - 2 - - - - 3 - - - - - - - - - ); }; diff --git a/app/[locale]/(public)/image/layout.tsx b/app/[locale]/(public)/image/layout.tsx index b9f5668d..2cb8c934 100644 --- a/app/[locale]/(public)/image/layout.tsx +++ b/app/[locale]/(public)/image/layout.tsx @@ -7,7 +7,7 @@ import DashCodeHeader from "@/components/partials/header"; import { auth } from "@/lib/auth"; import { redirect } from "@/components/navigation"; import Footer from "@/components/landing-page/footer"; -import Navbar from "@/components/landing-page/Navbar"; +import Navbar from "@/components/landing-page/navbar"; const layout = async ({ children }: { children: React.ReactNode }) => { return ( diff --git a/app/[locale]/(public)/indeks/layout.tsx b/app/[locale]/(public)/indeks/layout.tsx index b9f5668d..2cb8c934 100644 --- a/app/[locale]/(public)/indeks/layout.tsx +++ b/app/[locale]/(public)/indeks/layout.tsx @@ -7,7 +7,7 @@ import DashCodeHeader from "@/components/partials/header"; import { auth } from "@/lib/auth"; import { redirect } from "@/components/navigation"; import Footer from "@/components/landing-page/footer"; -import Navbar from "@/components/landing-page/Navbar"; +import Navbar from "@/components/landing-page/navbar"; const layout = async ({ children }: { children: React.ReactNode }) => { return ( diff --git a/app/[locale]/(public)/schedule/layout.tsx b/app/[locale]/(public)/schedule/layout.tsx index b9f5668d..2cb8c934 100644 --- a/app/[locale]/(public)/schedule/layout.tsx +++ b/app/[locale]/(public)/schedule/layout.tsx @@ -7,7 +7,7 @@ import DashCodeHeader from "@/components/partials/header"; import { auth } from "@/lib/auth"; import { redirect } from "@/components/navigation"; import Footer from "@/components/landing-page/footer"; -import Navbar from "@/components/landing-page/Navbar"; +import Navbar from "@/components/landing-page/navbar"; const layout = async ({ children }: { children: React.ReactNode }) => { return ( diff --git a/app/[locale]/(public)/video/layout.tsx b/app/[locale]/(public)/video/layout.tsx index b9f5668d..2cb8c934 100644 --- a/app/[locale]/(public)/video/layout.tsx +++ b/app/[locale]/(public)/video/layout.tsx @@ -7,7 +7,7 @@ import DashCodeHeader from "@/components/partials/header"; import { auth } from "@/lib/auth"; import { redirect } from "@/components/navigation"; import Footer from "@/components/landing-page/footer"; -import Navbar from "@/components/landing-page/Navbar"; +import Navbar from "@/components/landing-page/navbar"; const layout = async ({ children }: { children: React.ReactNode }) => { return ( diff --git a/app/[locale]/page.tsx b/app/[locale]/page.tsx index 4adf2105..1e479373 100644 --- a/app/[locale]/page.tsx +++ b/app/[locale]/page.tsx @@ -8,7 +8,7 @@ import Coverage from "@/components/landing-page/coverage"; import Hero from "@/components/landing-page/hero"; import Footer from "@/components/landing-page/footer"; import Division from "@/components/landing-page/division"; -import Navbar from "@/components/landing-page/Navbar"; +import Navbar from "@/components/landing-page/navbar"; const Home = ({ params: { locale } }: { params: { locale: string } }) => { return ( diff --git a/components/form/communication/collaboration-form.tsx b/components/form/communication/collaboration-form.tsx index fbb02466..f7555e3e 100644 --- a/components/form/communication/collaboration-form.tsx +++ b/components/form/communication/collaboration-form.tsx @@ -168,7 +168,7 @@ export default function FormCollaboration() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/communication"); + router.push("/contributor/communication"); }); }; diff --git a/components/form/communication/internal-form.tsx b/components/form/communication/internal-form.tsx index 86ab54a4..c75cae40 100644 --- a/components/form/communication/internal-form.tsx +++ b/components/form/communication/internal-form.tsx @@ -168,7 +168,7 @@ export default function FormInternal() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/communication"); + router.push("/contributor/communication"); }); }; diff --git a/components/form/content/image-form.tsx b/components/form/content/image-form.tsx index 74830c3c..ec996b60 100644 --- a/components/form/content/image-form.tsx +++ b/components/form/content/image-form.tsx @@ -168,7 +168,7 @@ export default function FormImage() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/content/image"); + router.push("/contributor/content/image"); }); }; diff --git a/components/form/content/video-form.tsx b/components/form/content/video-form.tsx index 48357d84..23c57810 100644 --- a/components/form/content/video-form.tsx +++ b/components/form/content/video-form.tsx @@ -168,7 +168,7 @@ export default function FormVideo() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/content/audio-visual"); + router.push("/contributor/content/audio-visual"); }); }; diff --git a/components/form/schedule/event-form.tsx b/components/form/schedule/event-form.tsx index 4b720e72..e6dabeb8 100644 --- a/components/form/schedule/event-form.tsx +++ b/components/form/schedule/event-form.tsx @@ -129,7 +129,7 @@ export default function FormEvent() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/schedule/event"); + router.push("/contributor/schedule/event"); }); }; diff --git a/components/form/schedule/pers-release-form.tsx b/components/form/schedule/pers-release-form.tsx index 54a97e26..cbd0f9a2 100644 --- a/components/form/schedule/pers-release-form.tsx +++ b/components/form/schedule/pers-release-form.tsx @@ -129,7 +129,7 @@ export default function FormPressRelease() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/schedule/press-release"); + router.push("/contributor/schedule/press-release"); }); }; diff --git a/components/form/schedule/press-conference-form.tsx b/components/form/schedule/press-conference-form.tsx index 2d72f477..7bd9b3c2 100644 --- a/components/form/schedule/press-conference-form.tsx +++ b/components/form/schedule/press-conference-form.tsx @@ -129,7 +129,7 @@ export default function FormPressConference() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/schedule/press-conference"); + router.push("/contributor/schedule/press-conference"); }); }; diff --git a/components/form/task/task-form.tsx b/components/form/task/task-form.tsx index 3415ec29..69b89bc3 100644 --- a/components/form/task/task-form.tsx +++ b/components/form/task/task-form.tsx @@ -121,7 +121,7 @@ export default function FormTask() { confirmButtonColor: "#3085d6", confirmButtonText: "OK", }).then(() => { - router.push("/en/task"); + router.push("/contributor/task"); }); }; diff --git a/components/landing-page/Navbar.tsx b/components/landing-page/Navbar.tsx index 0dda790e..ee6bd654 100644 --- a/components/landing-page/Navbar.tsx +++ b/components/landing-page/Navbar.tsx @@ -87,7 +87,7 @@ const Navbar = () => {
- + ; + totalPage: number; // Total jumlah halaman + totalData: number; // Total jumlah data + visiblePageCount?: number; // Jumlah halaman yang ditampilkan (default 5) +} + +const LandingPagination = ({ + table, + totalPage, + totalData, + visiblePageCount = 5, +}: DataTablePaginationProps) => { + const router = useRouter(); + const searchParams = useSearchParams(); + + const [currentPageIndex, setCurrentPageIndex] = useState(1); + + useEffect(() => { + const pageFromUrl = searchParams?.get('page'); + if (pageFromUrl) { + const pageIndex = Math.min(Math.max(1, Number(pageFromUrl)), totalPage); + setCurrentPageIndex(pageIndex); + table.setPageIndex(pageIndex - 1); // Sinkronisasi tabel dengan URL + } + }, [searchParams, totalPage, table]); + + const handlePageChange = (pageIndex: number) => { + const clampedPageIndex = Math.min(Math.max(1, pageIndex), totalPage); + const searchParams = new URLSearchParams(window.location.search); + searchParams.set('page', clampedPageIndex.toString()); + + router.push(`${window.location.pathname}?${searchParams.toString()}`); + setCurrentPageIndex(clampedPageIndex); + table.setPageIndex(clampedPageIndex - 1); // Perbarui tabel dengan index berbasis 0 + }; + + const generatePageNumbers = () => { + const halfVisible = Math.floor(visiblePageCount / 2); + let startPage = Math.max(1, currentPageIndex - halfVisible); + let endPage = Math.min(totalPage, startPage + visiblePageCount - 1); + + if (endPage - startPage + 1 < visiblePageCount) { + startPage = Math.max(1, endPage - visiblePageCount + 1); + } + + return Array.from({ length: endPage - startPage + 1 }, (_, i) => startPage + i); + }; + + return ( +
+
+ + + {generatePageNumbers().map((pageIndex) => ( + + ))} + + +
+
+ ); +}; + +export default LandingPagination; \ No newline at end of file diff --git a/lib/menus.ts b/lib/menus.ts index 2ead339f..8aacc1dd 100644 --- a/lib/menus.ts +++ b/lib/menus.ts @@ -57,50 +57,50 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "content", - href: "/content/image", + href: "/contributor/content/image", label: t("content"), active: pathname.includes("/content"), icon: "line-md:youtube", submenus: [ { - href: "/content/image", + href: "/contributor/content/image", label: t("image"), - active: pathname === "/content/image", + active: pathname.includes("/content/image"), icon: "ic:outline-image", children: [], }, { - href: "/content/audio-visual", + href: "/contributor/content/video", label: t("video"), - active: pathname === "/content/audio-visual", + active: pathname.includes("/content/video"), icon: "line-md:youtube", children: [], }, { - href: "/content/teks", + href: "/contributor/content/teks", label: t("text"), - active: pathname === "/content/teks", + active: pathname.includes("/content/text"), icon: "heroicons:document", children: [], }, { - href: "/content/audio", + href: "/contributor/content/audio", label: t("audio"), - active: pathname === "/content/audio", + active: pathname.includes("/content/audio"), icon: "heroicons:share", children: [], }, { - href: "/content/spit", + href: "/contributor/content/spit", label: "spit", - active: pathname === "/content/spit", + active: pathname.includes("/content/spit"), icon: "heroicons:credit-card", children: [], }, { - href: "/content/nulis-ai", + href: "/contributor/content/nulis-ai", label: "nulis ai", - active: pathname === "/content/nulisai", + active: pathname.includes("/content/nulisai"), icon: "heroicons:credit-card", children: [], }, @@ -114,7 +114,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "agenda-setting", - href: "/agenda-setting", + href: "/contributor/agenda-setting", label: t("agenda-setting"), active: pathname.includes("/agenda-setting"), icon: "iconoir:journal-page", @@ -128,22 +128,22 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "planning", - href: "/planning", + href: "/contributor/planning", label: t("planning"), active: pathname.includes("/planning"), icon: "pajamas:planning", submenus: [ { - href: "/planning/mediahub", + href: "/contributor/planning/mediahub", label: "mediaHub", - active: pathname === "/planning/mediahub", + active: pathname.includes("/planning/mediahub"), icon: "heroicons:arrow-trending-up", children: [], }, { - href: "/planning/medsos-mediahub", + href: "/contributor/planning/medsos-mediahub", label: "medsos mediahub", - active: pathname === "/planning/medsos-mediahub", + active: pathname.includes("/planning/medsos-mediahub"), icon: "heroicons:shopping-cart", children: [], }, @@ -157,7 +157,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "task", - href: "/task", + href: "/contributor/task", label: t("task"), active: pathname.includes("/task"), icon: "fluent:clipboard-task-add-24-regular", @@ -171,29 +171,29 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "schedule", - href: "/schedule", + href: "/contributor/schedule", label: t("schedule"), active: pathname.includes("/schedule"), icon: "uil:schedule", submenus: [ { - href: "/schedule/press-conference", - label: "konfesensi pers", - active: pathname === "/schedule/press-conference", + href: "/contributor/schedule/press-conference", + label: "konferensi pers", + active: pathname.includes("/schedule/press-conference"), icon: "heroicons:arrow-trending-up", children: [], }, { - href: "/schedule/event", + href: "/contributor/schedule/event", label: "event", - active: pathname === "/schedule/event", + active: pathname.includes("/schedule/event"), icon: "heroicons:shopping-cart", children: [], }, { - href: "/schedule/press-release", + href: "/contributor/schedule/press-release", label: "pers rilis", - active: pathname === "/schedule/press-release", + active: pathname.includes("/schedule/press-release"), icon: "heroicons:shopping-cart", children: [], }, @@ -207,7 +207,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "blog", - href: "/blog", + href: "/contributor/blog", label: t("blog"), active: pathname.includes("/blog"), icon: "fluent:clipboard-text-32-regular", @@ -221,7 +221,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "curatedcontent", - href: "/curated-content", + href: "/shared/curated-content", label: t("curated-content"), active: pathname.includes("/curated-content"), icon: "pixelarticons:calendar-text", @@ -235,7 +235,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "communication", - href: "/communication", + href: "/shared/communication", label: t("communication"), active: pathname.includes("/communication"), icon: "token:chat", @@ -249,7 +249,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "contest", - href: "/contest", + href: "/shared/contest", label: t("contest"), active: pathname.includes("/contest"), icon: "ic:outline-emoji-events", @@ -1403,7 +1403,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "ticketing", - href: "/ticketing", + href: "/supervisor/ticketing", label: t("ticketing"), active: pathname.includes("/ticketing"), icon: "mdi:ticket-outline", @@ -1417,7 +1417,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "knowledge-base", - href: "/knowledge-base", + href: "/supervisor/knowledge-base", label: t("knowledge-base"), active: pathname.includes("/knowledge-base"), icon: "hugeicons:knowledge-02", @@ -1431,7 +1431,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "faq", - href: "/frequently-asked-question", + href: "/supervisor/faq", label: t("faq"), active: pathname.includes("/frequently-asked-question"), icon: "wpf:faq", @@ -1445,41 +1445,41 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "communication", - href: "/communications", + href: "/supervisor/communications", label: t("communication"), active: pathname.includes("/communications"), icon: "icon-park-outline:communication", submenus: [ { - href: "/communications/questions", + href: "/supervisor/communications/questions", label: t("questions"), active: pathname.includes("/communications/questions"), icon: "solar:inbox-line-outline", children: [], }, { - href: "/communications/internal", + href: "/supervisor/communications/internal", label: t("internal"), active: pathname.includes("/communications/internal"), icon: "ri:chat-private-line", children: [], }, { - href: "/communications/forward", + href: "/supervisor/communications/forward", label: t("forward"), active: pathname.includes("/communications/forward"), icon: "ri:share-forward-2-fill", children: [], }, { - href: "/communications/collaboration", + href: "/supervisor/communications/collaboration", label: t("collaboration"), active: pathname.includes("/communications/collaboration"), icon: "clarity:employee-group-line", children: [], }, { - href: "/communications/account-report", + href: "/supervisor/communications/account-report", label: t("account-report"), active: pathname.includes("/communications/account-report"), icon: "uiw:user-delete", @@ -1495,7 +1495,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "settings", - href: "/settings", + href: "/supervisor/settings", label: t("settings"), active: pathname.includes("/settings"), icon: "uil:setting", @@ -1541,7 +1541,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "content-production", - href: "/content-production", + href: "/curator/content-production", label: t("content-production"), active: pathname.includes("/content-production"), icon: "fluent:content-view-gallery-16-regular", @@ -1555,7 +1555,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "pattern-relation", - href: "/pattern-relation", + href: "/curator/pattern-relation", label: t("pattern-relation"), active: pathname.includes("/pattern-relation"), icon: "oui:app-index-pattern", @@ -1569,7 +1569,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "agenda-setting", - href: "/agenda-setting", + href: "/curator/agenda-setting", label: t("agenda-setting"), active: pathname.includes("/agenda-setting"), icon: "iconoir:journal-page", @@ -1583,20 +1583,20 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "task-plan", - href: "/task-plan", + href: "/curator/task-plan", label: t("task-plan"), active: pathname.includes("/task-plan"), icon: "pajamas:planning", submenus: [ { - href: "/task-plan/mediahub", + href: "/curator/task-plan/mediahub", label: "mediaHub", active: pathname === "/task-plan/mediahub", icon: "heroicons:arrow-trending-up", children: [], }, { - href: "/task-plan/medsos-mediahub", + href: "/curator/task-plan/medsos-mediahub", label: "medsos mediahub", active: pathname === "/task-plan/medsos-mediahub", icon: "heroicons:shopping-cart", @@ -1612,7 +1612,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "curatedcontent", - href: "/curated-content", + href: "/shared/curated-content", label: t("curated-content"), active: pathname.includes("/curated-content"), icon: "pixelarticons:calendar-text", @@ -1626,7 +1626,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "media-tracking", - href: "/media-tracking", + href: "/curator/media-tracking", label: t("media-tracking"), active: pathname.includes("/media-tracking"), icon: "material-symbols:map-search-outline", @@ -1640,7 +1640,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "communication", - href: "/communication", + href: "/shared/communication", label: t("communication"), active: pathname.includes("/communication"), icon: "token:chat", @@ -1654,7 +1654,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "contest", - href: "/contest", + href: "/shared/contest", label: t("contest"), active: pathname.includes("/contest"), icon: "ic:outline-emoji-events", @@ -1668,7 +1668,7 @@ export function getMenuList(pathname: string, t: any): Group[] { menus: [ { id: "feedback", - href: "/feedback", + href: "/curator/feedback", label: t("feedback"), active: pathname.includes("/feedback"), icon: "mdi:feedback-outline",