···16161717type ExcludeFail<T> = T extends LuminaryFailResponse ? never : T;
1818type UnwrapSuccess<T> = T extends { success: true; data: infer D } ? D : T;
1919+2020+/**
2121+ * Transform OpenAPI type definition to unwrap responses as if they could never fail.
2222+ *
2323+ * This is done because the handling of errors is done in the middleware.
2424+ */
1925type CaughtPaths = {
2026 [P in keyof paths]: {
2127 [M in keyof paths[P]]: paths[P][M] extends { responses: infer R }
+2-1
packages/panel/src/lib/api/realtime.svelte.ts
···2020 */
2121export const getList = () => list;
22222323+export const putProject = (project: LuminaryProject) => (list = { ...list, [project.name]: project });
2424+2325/**
2426 * Subscribes to real-time updates from the server.
2527 */
···4648 });
47494850 backoff.reset();
4949- list = {};
50515152 try {
5253 for await (const event of parseServerSentEvents(