feat(backend): migrate freelancer and portal runtimes

This commit is contained in:
poyrazavsever
2026-07-17 00:16:38 +03:00
parent 561af11b70
commit 678c0236db
41 changed files with 5293 additions and 2324 deletions
+16 -35
View File
@@ -1,41 +1,22 @@
import { JournalClient, type DailyLogItem } from "@/app/(dashboard)/journal/journal-client";
import { createClient } from "@/lib/supabase/server";
type DailyLogRow = {
id: string;
log_date: string;
mood_score: number;
energy_score: number;
work_satisfaction_score: number | null;
note: string | null;
};
import { requireFreelancerBackend } from "@/server/web/freelancer";
export default async function JournalPage() {
const supabase = await createClient();
const {
data: { user },
} = await supabase.auth.getUser();
if (!user) {
return null;
}
const { data: logRows } = await supabase
.from("daily_logs")
.select("id, log_date, mood_score, energy_score, work_satisfaction_score, note")
.eq("user_id", user.id)
.order("log_date", { ascending: false })
.limit(180);
const logs: DailyLogItem[] = ((logRows || []) as DailyLogRow[]).map((log) => ({
id: log.id,
log_date: log.log_date,
mood_score: Number(log.mood_score),
energy_score: Number(log.energy_score),
work_satisfaction_score:
typeof log.work_satisfaction_score === "number" ? Number(log.work_satisfaction_score) : null,
note: log.note,
}));
const { actor, service } = await requireFreelancerBackend();
const logs: DailyLogItem[] = service.listJournalEntries(actor)
.slice(0, 180)
.flatMap((entry) =>
entry.moodScore == null || entry.energyScore == null
? []
: [{
id: entry.id,
log_date: entry.entryDate,
mood_score: entry.moodScore,
energy_score: entry.energyScore,
work_satisfaction_score: entry.workSatisfactionScore,
note: entry.note,
}],
);
return <JournalClient logs={logs} />;
}