From 1fc5593dd961856cb29f5fae95f85b09f1edf0cb Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Thu, 29 May 2025 01:45:30 -0400 Subject: [PATCH] forgot about the nested type --- .../pages/PageEnigma/TauriEvents/BasicEventWrapper.ts | 10 ++++++++++ .../generations/useGenerationCompleteEvent.ts | 5 +++-- .../generations/useGenerationEnqueueFailureEvent.ts | 7 ++++--- .../generations/useGenerationEnqueueSuccessEvent.ts | 5 +++-- .../generations/useGenerationFailedEvent.ts | 8 ++++++-- 5 files changed, 26 insertions(+), 9 deletions(-) create mode 100644 frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/BasicEventWrapper.ts diff --git a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/BasicEventWrapper.ts b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/BasicEventWrapper.ts new file mode 100644 index 0000000000..a182fa5ed7 --- /dev/null +++ b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/BasicEventWrapper.ts @@ -0,0 +1,10 @@ + +export enum BasicEventStatus { + Success = "success", + Failure = "failure", +}; + +export interface BasicEventWrapper { + status: BasicEventStatus, + data: T, +}; diff --git a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationCompleteEvent.ts b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationCompleteEvent.ts index 5af966355c..42350aa461 100644 --- a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationCompleteEvent.ts +++ b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationCompleteEvent.ts @@ -4,6 +4,7 @@ import { SoundRegistry } from "@storyteller/soundboard"; import { GetAppPreferences } from "@storyteller/tauri-api"; import { toast } from "@storyteller/ui-toaster"; import { GenerationAction, GenerationModel, GenerationServiceProvider } from "./common"; +import { BasicEventWrapper } from "../BasicEventWrapper"; type GenerationCompleteEvent = { action: GenerationAction, @@ -17,7 +18,7 @@ export const useGenerationCompleteEvent = () => { let unlisten: Promise; const setup = async () => { - unlisten = listen('generation-complete-event', async (event) => { + unlisten = listen>('generation-complete-event', async (event) => { console.log("Generation complete event received:", event); const prefs = await GetAppPreferences(); const soundName = prefs.preferences?.generation_success_sound; @@ -25,7 +26,7 @@ export const useGenerationCompleteEvent = () => { const registry = SoundRegistry.getInstance(); registry.playSound(soundName); } - const message = makeMessage(event.payload); + const message = makeMessage(event.payload.data); toast.success(message); }); diff --git a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueFailureEvent.ts b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueFailureEvent.ts index 197bb2d605..0c49aa8dd3 100644 --- a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueFailureEvent.ts +++ b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueFailureEvent.ts @@ -4,6 +4,7 @@ import { SoundRegistry } from "@storyteller/soundboard"; import { GetAppPreferences } from "@storyteller/tauri-api"; import { toast } from "@storyteller/ui-toaster"; import { GenerationAction, GenerationModel, GenerationServiceProvider } from "./common"; +import { BasicEventWrapper } from "../BasicEventWrapper"; type GenerationEnqueueFailureEvent = { action: GenerationAction, @@ -18,7 +19,7 @@ export const useGenerationEnqueueFailureEvent = () => { let unlisten: Promise; const setup = async () => { - unlisten = listen('generation-enqueue-failure-event', async (event) => { + unlisten = listen>('generation-enqueue-failure-event', async (event) => { console.log("Generation enqueue failure event received:", event); const prefs = await GetAppPreferences(); const soundName = prefs.preferences?.enqueue_failure_sound; @@ -26,7 +27,7 @@ export const useGenerationEnqueueFailureEvent = () => { const registry = SoundRegistry.getInstance(); registry.playSound(soundName); } - const message = makeMessage(event.payload); + const message = makeMessage(event.payload.data); toast.error(message); }); @@ -46,7 +47,7 @@ export const useGenerationEnqueueFailureEvent = () => { } const makeMessage = (event: GenerationEnqueueFailureEvent) => { - if (event.reason !== undefined) { + if (!!event.reason) { return event.reason; } switch (event.action) { diff --git a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueSuccessEvent.ts b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueSuccessEvent.ts index 36b0e81c68..50595334c3 100644 --- a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueSuccessEvent.ts +++ b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationEnqueueSuccessEvent.ts @@ -4,6 +4,7 @@ import { SoundRegistry } from "@storyteller/soundboard"; import { GetAppPreferences } from "@storyteller/tauri-api"; import { toast } from "@storyteller/ui-toaster"; import { GenerationAction, GenerationModel, GenerationServiceProvider } from "./common"; +import { BasicEventWrapper } from "../BasicEventWrapper"; type GenerationEnqueueSuccessEvent = { action: GenerationAction, @@ -17,7 +18,7 @@ export const useGenerationEnqueueSuccessEvent = () => { let unlisten: Promise; const setup = async () => { - unlisten = listen('generation-enqueue-success-event', async (event) => { + unlisten = listen>('generation-enqueue-success-event', async (event) => { console.log("Generation enqueue success event received:", event); const prefs = await GetAppPreferences(); const soundName = prefs.preferences?.generation_success_sound; @@ -25,7 +26,7 @@ export const useGenerationEnqueueSuccessEvent = () => { const registry = SoundRegistry.getInstance(); registry.playSound(soundName); } - const message = makeMessage(event.payload); + const message = makeMessage(event.payload.data); toast.success(message); }); diff --git a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationFailedEvent.ts b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationFailedEvent.ts index bd77a3db63..73b9c44b24 100644 --- a/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationFailedEvent.ts +++ b/frontend/apps/editor3d/app/src/pages/PageEnigma/TauriEvents/generations/useGenerationFailedEvent.ts @@ -4,6 +4,7 @@ import { SoundRegistry } from "@storyteller/soundboard"; import { GetAppPreferences } from "@storyteller/tauri-api"; import { toast } from "@storyteller/ui-toaster"; import { GenerationAction, GenerationModel, GenerationServiceProvider } from "./common"; +import { BasicEventWrapper } from "../BasicEventWrapper"; type GenerationFailedEvent = { action: GenerationAction, @@ -18,7 +19,7 @@ export const useGenerationFailedEvent = () => { let unlisten: Promise; const setup = async () => { - unlisten = listen('generation-failed-event', async (event) => { + unlisten = listen>('generation-failed-event', async (event) => { console.log("Generation failed event received:", event); const prefs = await GetAppPreferences(); const soundName = prefs.preferences?.generation_failure_sound; @@ -26,7 +27,7 @@ export const useGenerationFailedEvent = () => { const registry = SoundRegistry.getInstance(); registry.playSound(soundName); } - const message = makeMessage(event.payload); + const message = makeMessage(event.payload.data); toast.error(message); }); @@ -46,6 +47,9 @@ export const useGenerationFailedEvent = () => { } const makeMessage = (event: GenerationFailedEvent) => { + if (!!event.reason) { + return event.reason; + } switch (event.action) { case GenerationAction.GenerateImage: return "Image generation failed!";