summaryrefslogtreecommitdiffhomepage
path: root/js/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/server')
-rw-r--r--js/src/server/server.ts54
1 files changed, 37 insertions, 17 deletions
diff --git a/js/src/server/server.ts b/js/src/server/server.ts
index f56c87283..98b2cf5cb 100644
--- a/js/src/server/server.ts
+++ b/js/src/server/server.ts
@@ -43,26 +43,46 @@ export namespace Server {
},
}),
)
- .get("/event", async (c) => {
- log.info("event connected");
- return streamSSE(c, async (stream) => {
- stream.writeSSE({
- data: JSON.stringify({}),
- });
- const unsub = Bus.subscribeAll(async (event) => {
- await stream.writeSSE({
- data: JSON.stringify(event),
+ .get(
+ "/event",
+ describeRoute({
+ description: "Get events",
+ responses: {
+ 200: {
+ description: "Event stream",
+ content: {
+ "application/json": {
+ schema: resolver(
+ Bus.payloads().openapi({
+ ref: "Event",
+ }),
+ ),
+ },
+ },
+ },
+ },
+ }),
+ async (c) => {
+ log.info("event connected");
+ return streamSSE(c, async (stream) => {
+ stream.writeSSE({
+ data: JSON.stringify({}),
});
- });
- await new Promise<void>((resolve) => {
- stream.onAbort(() => {
- unsub();
- resolve();
- log.info("event disconnected");
+ const unsub = Bus.subscribeAll(async (event) => {
+ await stream.writeSSE({
+ data: JSON.stringify(event),
+ });
+ });
+ await new Promise<void>((resolve) => {
+ stream.onAbort(() => {
+ unsub();
+ resolve();
+ log.info("event disconnected");
+ });
});
});
- });
- })
+ },
+ )
.post(
"/session_create",
describeRoute({