feat: tambah dependensi 'jose' versi 5.9.2 pada package.json

refactor: rapikan identasi dan buat field 'expires' opsional di model UserSession pada schema prisma

chore: bersihkan import tidak terpakai di route login dan register API
This commit is contained in:
2024-09-18 14:39:39 +08:00
parent 2ccbca6566
commit 6ee43ed20f
83 changed files with 794 additions and 273 deletions

View File

@@ -1,8 +1,4 @@
import { redirect } from "next/navigation";
import { myConsole } from "@/app/fun/my_console";
import prisma from "@/app/lib/prisma";
import { RouterAdminDashboard } from "@/app/lib/router_hipmi/router_admin";
import { NextResponse } from "next/server";

View File

@@ -1,6 +1,5 @@
import { myConsole } from "@/app/fun/my_console";
import { PwdCookies } from "@/app/lib";
import prisma from "@/app/lib/prisma";
import { ServerEnv } from "@/app/lib/server_env";
import { sealData } from "iron-session";
import { cookies } from "next/headers";
import { NextResponse } from "next/server";
@@ -16,8 +15,6 @@ export async function POST(req: Request) {
},
});
myConsole(cekUsername);
if (cekUsername)
return NextResponse.json({ status: 400, message: "Username sudah ada" });
@@ -35,7 +32,7 @@ export async function POST(req: Request) {
username: data.username,
}),
{
password: PwdCookies,
password: ServerEnv.value?.WIBU_PWD as string,
}
);

View File

@@ -1,6 +1,5 @@
import { myConsole } from "@/app/fun/my_console";
import { PwdCookies } from "@/app/lib";
import prisma from "@/app/lib/prisma";
import { ServerEnv } from "@/app/lib/server_env";
import { sealData } from "iron-session";
import { revalidatePath } from "next/cache";
import { cookies } from "next/headers";
@@ -22,8 +21,6 @@ export async function POST(req: Request) {
},
});
myConsole(data);
if (!data) return NextResponse.json({ status: 404 });
if (data) {
@@ -33,7 +30,7 @@ export async function POST(req: Request) {
username: data.username,
}),
{
password: await PwdCookies,
password: ServerEnv.value?.WIBU_PWD as string,
}
);

View File

@@ -0,0 +1,19 @@
import _ from "lodash";
import { cookies } from "next/headers";
export async function GET(req: Request) {
try {
const cekCookies = cookies();
const c = cekCookies.get("ssn");
if (!c || !c?.value || _.isEmpty(c?.value) || _.isUndefined(c?.value)) {
return Response.json({ success: false });
}
return Response.json({ success: true });
} catch (error) {
console.log(error);
}
return Response.json({ success: false });
}

View File

@@ -1,6 +1,7 @@
import { AdminLayout } from "@/app_modules/admin/main_dashboard";
import adminNotifikasi_countNotifikasi from "@/app_modules/admin/notifikasi/fun/count/count_is_read";
import adminNotifikasi_getByUserId from "@/app_modules/admin/notifikasi/fun/get/get_notifikasi_by_user_id";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id";
import React from "react";
@@ -11,6 +12,8 @@ export default async function Layout({
children: React.ReactNode;
}) {
const userId = await user_funGetOneUserId();
if (!userId) return <CheckCookies_UiView />;
const dataUser = await user_getOneByUserId(userId);
const listNotif = await adminNotifikasi_getByUserId();
const countNotifikasi = await adminNotifikasi_countNotifikasi();

View File

@@ -1,9 +1,12 @@
import { Validasi } from "@/app_modules/auth";
import { auth_getKodeOtpById } from "@/app_modules/auth/fun/get_kode_otp_by_id";
import { ServerEnv } from "@/app/lib/server_env";
export default async function Page({ params }: { params: { id: string } }) {
let kodeOtpId = params.id;
const dataOtp = await auth_getKodeOtpById(kodeOtpId);
return <Validasi dataOtp={dataOtp} />;
}

View File

@@ -0,0 +1,5 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
export default function Page() {
return <CheckCookies_UiView />;
}

View File

@@ -1,4 +1,5 @@
import adminColab_getOneRoomChatById from "@/app_modules/admin/colab/fun/get/get_one_room_chat_by_id";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import {
Colab_DetailGrupDiskusi,
Colab_GroupChatView,
@@ -11,6 +12,8 @@ import _ from "lodash";
export default async function Page({ params }: { params: { id: string } }) {
const roomId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const getData = (await adminColab_getOneRoomChatById({ roomId: roomId }))
.data;
const dataRoom = _.omit(getData, [

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Colab_MainDetail } from "@/app_modules/colab";
import colab_funCekPartisipasiById from "@/app_modules/colab/fun/get/cek_partisipasi_by_user_id";
import colab_getListPartisipanByColabId from "@/app_modules/colab/fun/get/get_list_partisipan_by_id";
@@ -7,6 +8,8 @@ import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
let colabId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataColab = await colab_getOneCollaborationById(colabId);
const listPartisipan = await colab_getListPartisipanByColabId(colabId);
const cekPartisipan = await colab_funCekPartisipasiById(colabId);

View File

@@ -1,10 +1,12 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Colab_Beranda } from "@/app_modules/colab";
import colab_getListAllProyek from "@/app_modules/colab/fun/get/get_list_all_proyek";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
const listData = await colab_getListAllProyek({page: 1});
const listData = await colab_getListAllProyek({ page: 1 });
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,16 +1,18 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { CreateCeritaPenggalangDonasi } from "@/app_modules/donasi";
import { Donasi_getTemporaryCreate } from "@/app_modules/donasi/fun/get/get_temporary_create";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
const getTemporaryCreate = await Donasi_getTemporaryCreate(params.id);
const userId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>
<CreateCeritaPenggalangDonasi
dataTemporary={getTemporaryCreate as any}
userId={userId}
userId={userLoginId}
/>
</>
);

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { DetailMainDonasi } from "@/app_modules/donasi";
import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
@@ -8,6 +9,8 @@ export default async function Page({ params }: { params: { id: string } }) {
const dataDonasi = await Donasi_getOneById(donasiId);
const countDonatur = await Donasi_getCountDonatur(donasiId)
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { DetailPublishDonasi } from "@/app_modules/donasi";
import { Donasi_getCountDonatur } from "@/app_modules/donasi/fun/count/get_count_donatur";
import { Donasi_getOneById } from "@/app_modules/donasi/fun/get/get_one_donasi_by_id";
@@ -5,14 +6,19 @@ import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
const dataPublish = await Donasi_getOneById(params.id);
const countDonatur= await Donasi_getCountDonatur(params.id)
const countDonatur = await Donasi_getCountDonatur(params.id);
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
// console.log(userLoginId)
return (
<>
<DetailPublishDonasi dataPublish={dataPublish as any} countDonatur={countDonatur} userLoginId={userLoginId}/>
<DetailPublishDonasi
dataPublish={dataPublish as any}
countDonatur={countDonatur}
userLoginId={userLoginId}
/>
</>
);
}

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { LayoutDonasi } from "@/app_modules/donasi";
import { Donasi_getNotifByUserId } from "@/app_modules/donasi/fun/get/get_notif_by_user_id";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
@@ -8,16 +9,16 @@ export default async function Layout({
}: {
children: React.ReactNode;
}) {
const userId = await user_funGetOneUserId();
// console.log(userId)
const isRead = await Donasi_getNotifByUserId(userId).then((res: any) =>
res.map((val: any) => val.isRead)
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const isRead = await Donasi_getNotifByUserId(userLoginId).then((res: any) =>
res.map((val: any) => val.isRead)
);
// console.log(isRead)
return (
<>
<LayoutDonasi userId={userId} isRead={isRead as any}>
<LayoutDonasi userId={userLoginId} isRead={isRead as any}>
{children}
</LayoutDonasi>
</>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Donasi_MetodePembayaran } from "@/app_modules/donasi";
import { Donasi_getMasterBank } from "@/app_modules/donasi/fun/master/get_bank";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
@@ -5,9 +6,11 @@ import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({params}: {params: {id: string}}) {
let donasiId= params.id
const listBank = await Donasi_getMasterBank()
const authorId = await user_funGetOneUserId()
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return<>
<Donasi_MetodePembayaran listBank={listBank} donasiId={donasiId} authorId={authorId}/>
<Donasi_MetodePembayaran listBank={listBank} donasiId={donasiId} authorId={userLoginId}/>
</>
}

View File

@@ -1,13 +1,16 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Event_Create } from "@/app_modules/event";
import { Event_getMasterTipeAcara } from "@/app_modules/event/fun/master/get_tipe_acara";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import _ from "lodash";
export default async function Page() {
const userId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const listTipeAcara = await Event_getMasterTipeAcara();
return (
<Event_Create listTipeAcara={listTipeAcara as any} authorId={userId} />
<Event_Create listTipeAcara={listTipeAcara as any} authorId={userLoginId} />
);
}

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Event_DetailMain } from "@/app_modules/event";
import { Event_countTotalPesertaById } from "@/app_modules/event/fun/count/count_total_peserta_by_id";
import { Event_CekUserJoinById } from "@/app_modules/event/fun/get/cek_user_join_by_id";
@@ -7,11 +8,13 @@ import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
let eventId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataEvent = await Event_getOneById(eventId);
const listPeserta = await Event_getListPesertaById(eventId);
const userLoginId = await user_funGetOneUserId();
const isJoin = await Event_CekUserJoinById(eventId, userLoginId);
const totalPeserta = await Event_countTotalPesertaById(eventId)
const totalPeserta = await Event_countTotalPesertaById(eventId);
return (
<>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Event_StatusPage } from "@/app_modules/event";
import { event_getAllDraft } from "@/app_modules/event/fun/get/status/get_all_draft";
import { event_getAllReject } from "@/app_modules/event/fun/get/status/get_all_reject";
@@ -6,7 +7,9 @@ import { event_funGetAllStatusPublish } from "@/app_modules/event/fun/get/status
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
const authorId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const listPublish = await event_funGetAllStatusPublish({ page: 1 });
const listReview = await event_getAllReview({ page: 1 });
const listDraft = await event_getAllDraft({ page: 1 });
@@ -14,7 +17,7 @@ export default async function Page() {
return (
<Event_StatusPage
authorId={authorId}
authorId={userLoginId}
listPublish={listPublish}
listReview={listReview}
listDraft={listDraft}

View File

@@ -6,11 +6,13 @@ import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { RouterForum } from "@/app/lib/router_hipmi/router_forum";
import { redirect } from "next/navigation";
import { forum_countTotalKomenById } from "@/app_modules/forum/fun/count/count_total_komentar_by_id";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
export default async function Page({ params }: { params: { id: string } }) {
let postingId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataPosting = await forum_getOnePostingById(postingId);
const listKomentar = await forum_funGetAllKomentarById({
postingId: postingId,

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { LayoutForum_Main } from "@/app_modules/forum";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id";
@@ -8,8 +9,10 @@ export default async function Layout({
}: {
children: React.ReactNode;
}) {
const authorId = await user_funGetOneUserId();
const dataAuthor = await user_getOneByUserId(authorId);
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataAuthor = await user_getOneByUserId(userLoginId);
return (
<>

View File

@@ -1,10 +1,14 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Forum_Beranda } from "@/app_modules/forum";
import { forum_new_getAllPosting } from "@/app_modules/forum/fun/get/new_get_all_posting";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page() {
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const listForum = await forum_new_getAllPosting({ page: 1 });
const userLoginId = await user_funGetOneUserId();
// console.log(JSON.stringify(listForum, null, 2));

View File

@@ -1,9 +1,12 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Forum_ReportKomentarLainnya } from "@/app_modules/forum";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
let komentarId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,9 +1,12 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Forum_ReportPostingLainnya } from "@/app_modules/forum";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
let postingId = params.id;
const userLoginId = await user_funGetOneUserId()
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { Forum_ReportPosting } from "@/app_modules/forum";
import { forum_getMasterKategoriReport } from "@/app_modules/forum/fun/master/get_master_kategori_report";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
@@ -5,7 +6,8 @@ import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
export default async function Page({ params }: { params: { id: string } }) {
let postingId = params.id;
const listReport = await forum_getMasterKategoriReport();
const userLoginId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,5 +1,6 @@
import { RouterAdminDashboard } from "@/app/lib/router_hipmi/router_admin";
import { RouterHome } from "@/app/lib/router_hipmi/router_home";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { HomeView } from "@/app_modules/home";
import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id";
@@ -8,8 +9,10 @@ import notifikasi_countUserNotifikasi from "@/app_modules/notifikasi/fun/count/f
import { redirect } from "next/navigation";
export default async function Page() {
const userId = await user_funGetOneUserId();
const dataUser = await user_getOneByUserId(userId);
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataUser = await user_getOneByUserId(userLoginId);
const dataJob = await job_getTwoForHomeView();
if (dataUser?.active === false) {
@@ -19,14 +22,11 @@ export default async function Page() {
if (dataUser?.masterUserRoleId === "2" || dataUser?.masterUserRoleId === "3")
return redirect(RouterAdminDashboard.splash_admin);
// if (dataUser?.Profile === null) return <ComponentGlobal_V2_LoadingPage />;
// await new Promise((a, b) => {
// setTimeout(a, 3000);
// });
const countNotifikasi = await notifikasi_countUserNotifikasi();
// const cekCookies = await fetch("/api/check-cookies");
// console.log(await cekCookies.json());
return (
<>
<HomeView

View File

@@ -1,20 +1,19 @@
import { funGetUserProfile } from "@/app_modules/fun_global/get_user_profile";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { DetailInvestasi } from "@/app_modules/investasi";
import getOneInvestasiById from "@/app_modules/investasi/fun/get_one_investasi_by_id";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import funProgressBar from "@/app_modules/investasi/fun/fun_progress_bar";
import funTotalInvestorByIdInvestasi from "@/app_modules/investasi/fun/fun_total_investor_by_id";
export default async function Page({ params }: { params: { id: string } }) {
const investasiId = params.id
const investasiId = params.id;
const dataInvestasi = await getOneInvestasiById(investasiId);
const loginUserId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>
<DetailInvestasi
dataInvestasi={dataInvestasi as any}
loginUserId={loginUserId}
loginUserId={userLoginId}
/>
</>
);

View File

@@ -15,6 +15,7 @@ import {
export default async function Page() {
const userId = await user_funGetOneUserId();
if (!userId) return <div>{"User Tidak ditemukan"}</div>;
const listStatus = await getStatusInvestasi();
const dataDraft = await getPortoByStatusId(userId, 1);
const dataReview = await getPortoByStatusId(userId, 2);
@@ -30,12 +31,10 @@ export default async function Page() {
page: 1,
statusId: "3",
});
const listDataReject = await investasi_funGetAllInvestasiNonPublishByUserId({
page: 1,
statusId: "4",
});
const listDataReject = await investasi_funGetAllInvestasiNonPublishByUserId({
page: 1,
statusId: "4",
});
return (
<>

View File

@@ -4,11 +4,14 @@ import getMaster_StatusTransaksiInvestasi from "@/app_modules/investasi/fun/mast
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { investasi_funGetTransaksiByUserId } from "@/app_modules/investasi/_fun";
import { Investasi_UiDaftarTransaksi } from "@/app_modules/investasi/_ui";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
export default async function Page() {
const userId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const statusTransaksi = await getMaster_StatusTransaksiInvestasi();
const listTransaksi = await getListAllTransaksiById_Investasi(userId);
const listTransaksi = await getListAllTransaksiById_Investasi(userLoginId);
// NEW
const dataTransaksi = await investasi_funGetTransaksiByUserId({ page: 1 });

View File

@@ -3,9 +3,12 @@ import getOneInvestasiById from "@/app_modules/investasi/fun/get_one_investasi_b
import getMaster_NamaBank from "@/app_modules/investasi/fun/master/get_nama_bank";
import { user_funGetOneUserId } from "@/app_modules/fun_global";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
export default async function Page({ params }: { params: { id: string } }) {
const authorId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataInvestasi = await getOneInvestasiById(params.id);
const namaBank = await getMaster_NamaBank();
// console.log(namaBank)
@@ -14,7 +17,7 @@ export default async function Page({ params }: { params: { id: string } }) {
<MetodeTransferInvestasi
dataInvestasi={dataInvestasi as any}
namaBank={namaBank as any}
authorId={authorId}
authorId={userLoginId}
/>
</>
);

View File

@@ -1,11 +1,14 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global";
import { funGetUserProfile } from "@/app_modules/fun_global/get_user_profile";
import { ProsesTransaksiInvestasi } from "@/app_modules/investasi";
import getOneInvestasiById from "@/app_modules/investasi/fun/get_one_investasi_by_id";
export default async function Page({ params }: { params: { id: string } }) {
const authorId = await user_funGetOneUserId();
const userLogin = await funGetUserProfile(authorId);
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const userLogin = await funGetUserProfile(userLoginId);
const dataInvestasi = await getOneInvestasiById(params.id);
// console.log(dataInvestasi);

View File

@@ -1,3 +1,5 @@
import { funGetUserIdByToken } from "@/app_modules/_global/fun/get";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { KatalogLayout } from "@/app_modules/katalog/main";
import { Profile_getOneProfileAndUserById } from "@/app_modules/katalog/profile/fun/get/get_one_user_profile";
@@ -10,10 +12,10 @@ export default async function Layout({
params: { id: string };
}) {
const profileId = params.id;
const dataProfile = await Profile_getOneProfileAndUserById(profileId)
const dataProfile = await Profile_getOneProfileAndUserById(profileId);
const authorId = dataProfile?.userId;
const userLoginId = await user_funGetOneUserId();
const userLoginId = await funGetUserIdByToken();
return (
<>

View File

@@ -1,21 +1,25 @@
import { funGetUserIdByToken } from "@/app_modules/_global/fun/get";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { Katalog_MainView } from "@/app_modules/katalog";
import { funGetListPortofolio } from "@/app_modules/katalog/portofolio/fun/get/get_list_portofolio";
import { Profile_getOneProfileAndUserById } from "@/app_modules/katalog/profile/fun/get/get_one_user_profile";
export default async function Page({ params }: { params: { id: string } }) {
let profileId = params.id;
const userLoginId = await user_funGetOneUserId();
const listPorto = await funGetListPortofolio(profileId);
const dataProfile = await Profile_getOneProfileAndUserById(profileId);
const userLoginId = await funGetUserIdByToken();
return (
<>
<Katalog_MainView
profile={dataProfile as any}
listPorto={listPorto as any}
userLoginId={userLoginId}
userLoginId={userLoginId as any}
/>
</>
);

19
src/app/dev/layout.tsx Normal file
View File

@@ -0,0 +1,19 @@
import { funCheckToken } from "@/app_modules/_global/fun/get";
import { redirect } from "next/navigation";
import { RouterAuth } from "../lib/router_hipmi/router_auth";
import { CheckCookies_UiLayout } from "@/app_modules/check_cookies";
export default async function Layout({
children,
}: {
children: React.ReactNode;
}) {
// const cekCookies = await funCheckToken();
// if (cekCookies === false) redirect(RouterAuth.login);
return (
<>
<CheckCookies_UiLayout>{children}</CheckCookies_UiLayout>
</>
);
}

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { PortofolioLayout } from "@/app_modules/katalog/portofolio";
import { portofolio_getOneById } from "@/app_modules/katalog/portofolio/fun/get/get_one_portofolio";
@@ -12,8 +13,8 @@ export default async function Layout({
let portoId = params.id;
const getPorto = await portofolio_getOneById(portoId);
const userLoginId = await user_funGetOneUserId();
// console.log(userLoginId);
// console.log(getPorto?.Profile?.User?.id);
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>
<PortofolioLayout

View File

@@ -1,13 +1,15 @@
import { RouterAdminDashboard } from "@/app/lib/router_hipmi/router_admin";
import { RouterHome } from "@/app/lib/router_hipmi/router_home";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { Home_UserNonActive } from "@/app_modules/home";
import { user_getOneByUserId } from "@/app_modules/home/fun/get/get_one_user_by_id";
import { redirect } from "next/navigation";
export default async function Page() {
const userId = await user_funGetOneUserId();
const dataUser = await user_getOneByUserId(userId);
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataUser = await user_getOneByUserId(userLoginId);
if (dataUser?.active === true) {
return redirect(RouterHome.main_home);

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global";
import { LayoutVote_DetailKontribusi } from "@/app_modules/vote";
import React from "react";
@@ -10,7 +11,9 @@ export default async function Layout({
params: { id: string };
}) {
const votingId = params.id;
const userLoginId = await user_funGetOneUserId();
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global/get_user_token";
import { LayoutVote_MainDetail } from "@/app_modules/vote";
import React from "react";
@@ -11,6 +12,7 @@ export default async function Layout({
}) {
const votingId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -5,15 +5,19 @@ import { Vote_getHasilVoteById } from "@/app_modules/vote/fun/get/get_list_hasil
import { Vote_getListKontributorById } from "@/app_modules/vote/fun/get/get_list_kontributor_by_id";
import { voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get/fun_get_one_by_id";
import { Vote_getOnePilihanVotingByUserId } from "@/app_modules/vote/fun/get/get_one_pilihan_voting_by_user_id";
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
export default async function Page({ params }: { params: { id: string } }) {
const voteId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataVote = await voting_funGetOneVotingbyId(voteId);
const hasilVoting = await Vote_getHasilVoteById(voteId as any);
const isKontributor = await Vote_cekKontributorById(voteId);
const pilihanKontributor = await Vote_getOnePilihanVotingByUserId(voteId);
const listKontributor = await Vote_getListKontributorById(voteId);
const userLoginId = await user_funGetOneUserId();
return (
<>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global";
import { LayoutVote_DetailPublish } from "@/app_modules/vote";
import { Voting_funGetOneVotingbyId } from "@/app_modules/vote/fun/get";
@@ -12,16 +13,14 @@ export default async function Layout({
}) {
const votingId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
const dataVoting = await Voting_funGetOneVotingbyId(votingId);
const authorId = dataVoting?.authorId;
return (
<>
<LayoutVote_DetailPublish
votingId={votingId}
userLoginId={userLoginId}
>
<LayoutVote_DetailPublish votingId={votingId} userLoginId={userLoginId}>
{children}
</LayoutVote_DetailPublish>
</>

View File

@@ -1,3 +1,4 @@
import { CheckCookies_UiView } from "@/app_modules/check_cookies";
import { user_funGetOneUserId } from "@/app_modules/fun_global";
import { LayoutVote_DetailSemuaRiwayat } from "@/app_modules/vote";
import React from "react";
@@ -9,9 +10,9 @@ export default async function Layout({
children: React.ReactNode;
params: { id: string };
}) {
const votingId = params.id;
const userLoginId = await user_funGetOneUserId();
const votingId = params.id;
const userLoginId = await user_funGetOneUserId();
if (!userLoginId) return <CheckCookies_UiView />;
return (
<>

View File

@@ -1,6 +0,0 @@
export function myConsole(value: any) {
const onData = false
if (onData) {
console.log(value);
}
}

View File

@@ -2,9 +2,37 @@ import MqttLoader from "@/util/mqtt_loader";
import RootStyleRegistry from "./emotion";
import "./globals.css";
import { TokenProvider } from "./lib/token";
import dotenv from "dotenv";
import { ServerEnv } from "./lib/server_env";
dotenv.config({
path: ".env",
});
const token = process.env.WS_APIKEY;
const pwdCookies = process.env.PWD;
const DATABASE_URL = process.env.DATABASE_URL!;
const WIBU_PWD = process.env.WIBU_PWD!;
const Client_KEY = process.env.Client_KEY!;
const Server_KEY = process.env.Server_KEY!;
const MAPBOX_TOKEN = process.env.MAPBOX_TOKEN!;
const WS_APIKEY = process.env.WS_APIKEY!;
if (!DATABASE_URL) throw new Error("Require DATABASE_URL");
if (!WIBU_PWD) throw new Error("Require PWD");
if (!Client_KEY) throw new Error("Require Client_KEY");
if (!Server_KEY) throw new Error("Require Server_KEY");
if (!MAPBOX_TOKEN) throw new Error("Require MAPBOX_TOKEN");
if (!WS_APIKEY) throw new Error("Require WS_APIKEY");
const envObject = {
DATABASE_URL,
WIBU_PWD,
Client_KEY,
Server_KEY,
MAPBOX_TOKEN,
WS_APIKEY,
};
ServerEnv.set(envObject);
export default function RootLayout({
children,
@@ -12,11 +40,11 @@ export default function RootLayout({
children: React.ReactNode;
}) {
if (!token) return <>Require Token Storage</>;
console.log(pwdCookies)
return (
<RootStyleRegistry>
<MqttLoader />
<TokenProvider token={token} />
<TokenProvider token={token} envObject={envObject} />
{children}
</RootStyleRegistry>
);

View File

@@ -1,9 +1,7 @@
import APIs from "./APIs";
import DIRECTORY_ID from "./id-derectory";
import prisma from "./prisma";
import { PwdCookies } from "./pwd";
export { DIRECTORY_ID };
export { prisma };
export { APIs };
export { PwdCookies };

View File

@@ -1,5 +0,0 @@
import "dotenv/config";
const dotenv = require("dotenv").config(".env");
const PwdCookies = dotenv?.parsed.PWD;
export { PwdCookies };

View File

@@ -2,4 +2,5 @@ export const RouterAuth = {
login: "/dev/auth/login",
validasi: "/dev/auth/validasi/",
register: "/dev/auth/register/",
check_cookies: "/dev/check-cookies",
};

15
src/app/lib/server_env.ts Normal file
View File

@@ -0,0 +1,15 @@
type ENV = {
DATABASE_URL: string;
WIBU_PWD: string;
Client_KEY: string;
Server_KEY: string;
MAPBOX_TOKEN: string;
WS_APIKEY: string;
};
export class ServerEnv {
static value: ENV | null = null;
static set(val: ENV) {
ServerEnv.value = val;
}
}

View File

@@ -10,8 +10,31 @@ class TokenStorage {
}
}
function TokenProvider({ token }: { token: string }) {
type ENV = {
DATABASE_URL: string;
WIBU_PWD: string;
Client_KEY: string;
Server_KEY: string;
MAPBOX_TOKEN: string;
WS_APIKEY: string;
};
export class GlobalEnv {
static value: ENV | null = null;
static set(val: ENV) {
GlobalEnv.value = val;
}
}
function TokenProvider({
token,
envObject,
}: {
token: string;
envObject: ENV;
}) {
TokenStorage.set(token);
GlobalEnv.set(envObject);
return null;
}

View File

@@ -1,51 +1,9 @@
"use client";
import Coba from "@/ui/Coba";
import { useState } from "react";
// Beda Package
import InfiniteScroll from "react-infinite-scroll-component";
import { ServerEnv } from "../lib/server_env";
export default function App() {
const [data, setData] = useState<any[]>([]);
const [isLoading, setIsLoading] = useState(false);
const ttlData = Array.from({ length: 21 });
const [list, setList] = useState<any[]>(ttlData);
// useShallowEffect(() => {
// setData(createItems());
// }, []);
// const next = async (direction: ScrollDirection) => {
// console.log("next", direction);
// try {
// setIsLoading(true);
// const newData = await loadMore();
// const d = direction === "up" ? [...newData, ...data] : [];
// setData(d);
// } finally {
// setIsLoading(false);
// }
// };
// const ref = useInfiniteScroll({
// next,
// rowCount: data.length,
// hasMore: { up: true },
// });
const fetchMoreData = () => {
setTimeout(() => {
setList(list.concat(Array.from({ length: 20 })));
}, 100);
};
const style = {
height: 30,
border: "1px solid green",
margin: 6,
padding: 8,
};
return <></>;
return (
<div>
<pre>{JSON.stringify(ServerEnv.value, null, 2)}</pre>
</div>
);
}