mirror of
https://github.com/aljazceru/claude-code-viewer.git
synced 2026-01-25 00:14:21 +01:00
update design
This commit is contained in:
@@ -5,9 +5,9 @@ import { FileWatcherService } from "../service/events/fileWatcher";
|
||||
import type { InternalEventDeclaration } from "../service/events/InternalEventDeclaration";
|
||||
import { ProjectMetaService } from "../service/project/ProjectMetaService";
|
||||
import { ProjectRepository } from "../service/project/ProjectRepository";
|
||||
import { VirtualConversationDatabase } from "../service/session/PredictSessionsDatabase";
|
||||
import { SessionMetaService } from "../service/session/SessionMetaService";
|
||||
import { SessionRepository } from "../service/session/SessionRepository";
|
||||
import { VirtualConversationDatabase } from "../service/session/VirtualConversationDatabase";
|
||||
import { InitializeService } from "./initialize";
|
||||
|
||||
describe("InitializeService", () => {
|
||||
|
||||
@@ -4,9 +4,9 @@ import { FileWatcherService } from "../service/events/fileWatcher";
|
||||
import type { InternalEventDeclaration } from "../service/events/InternalEventDeclaration";
|
||||
import { ProjectMetaService } from "../service/project/ProjectMetaService";
|
||||
import { ProjectRepository } from "../service/project/ProjectRepository";
|
||||
import { VirtualConversationDatabase } from "../service/session/PredictSessionsDatabase";
|
||||
import { SessionMetaService } from "../service/session/SessionMetaService";
|
||||
import { SessionRepository } from "../service/session/SessionRepository";
|
||||
import { VirtualConversationDatabase } from "../service/session/VirtualConversationDatabase";
|
||||
|
||||
interface InitializeServiceInterface {
|
||||
readonly startInitialization: () => Effect.Effect<void>;
|
||||
|
||||
@@ -24,9 +24,9 @@ import { getMcpList } from "../service/mcp/getMcpList";
|
||||
import { claudeCommandsDirPath } from "../service/paths";
|
||||
import type { ProjectMetaService } from "../service/project/ProjectMetaService";
|
||||
import { ProjectRepository } from "../service/project/ProjectRepository";
|
||||
import type { VirtualConversationDatabase } from "../service/session/PredictSessionsDatabase";
|
||||
import type { SessionMetaService } from "../service/session/SessionMetaService";
|
||||
import { SessionRepository } from "../service/session/SessionRepository";
|
||||
import type { VirtualConversationDatabase } from "../service/session/VirtualConversationDatabase";
|
||||
import type { HonoAppType } from "./app";
|
||||
import { InitializeService } from "./initialize";
|
||||
import { configMiddleware } from "./middleware/config.middleware";
|
||||
@@ -184,6 +184,24 @@ export const routes = (app: HonoAppType) =>
|
||||
},
|
||||
)
|
||||
|
||||
.get("/projects/:projectId/latest-session", async (c) => {
|
||||
const { projectId } = c.req.param();
|
||||
|
||||
const program = Effect.gen(function* () {
|
||||
const { sessions } = yield* sessionRepository.getSessions(
|
||||
projectId,
|
||||
{ maxCount: 1 },
|
||||
);
|
||||
|
||||
return {
|
||||
latestSession: sessions[0] ?? null,
|
||||
};
|
||||
});
|
||||
|
||||
const result = await Runtime.runPromise(runtime)(program);
|
||||
return c.json(result);
|
||||
})
|
||||
|
||||
.get("/projects/:projectId/sessions/:sessionId", async (c) => {
|
||||
const { projectId, sessionId } = c.req.param();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user