From 93b071144acbd1e5b8a7cc5398412c13c9e07f14 Mon Sep 17 00:00:00 2001 From: Francesco Novy Date: Wed, 13 Sep 2023 15:29:55 +0200 Subject: [PATCH] ref(wasm): Refactor Wasm integration to use `processEvent` --- packages/wasm/src/index.ts | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/packages/wasm/src/index.ts b/packages/wasm/src/index.ts index c07f9cd7ca16..a45b18ac4e96 100644 --- a/packages/wasm/src/index.ts +++ b/packages/wasm/src/index.ts @@ -1,4 +1,4 @@ -import type { Event, EventProcessor, Hub, Integration, StackFrame } from '@sentry/types'; +import type { Event, Integration, StackFrame } from '@sentry/types'; import { patchWebAssembly } from './patchWebAssembly'; import { getImage, getImages } from './registry'; @@ -49,26 +49,27 @@ export class Wasm implements Integration { /** * @inheritDoc */ - public setupOnce(addGlobalEventProcessor: (callback: EventProcessor) => void, _getCurrentHub: () => Hub): void { + public setupOnce(_addGlobaleventProcessor: unknown, _getCurrentHub: unknown): void { patchWebAssembly(); + } - addGlobalEventProcessor((event: Event) => { - let haveWasm = false; + /** @inheritDoc */ + public processEvent(event: Event): Event { + let haveWasm = false; - if (event.exception && event.exception.values) { - event.exception.values.forEach(exception => { - if (exception?.stacktrace?.frames) { - haveWasm = haveWasm || patchFrames(exception.stacktrace.frames); - } - }); - } + if (event.exception && event.exception.values) { + event.exception.values.forEach(exception => { + if (exception?.stacktrace?.frames) { + haveWasm = haveWasm || patchFrames(exception.stacktrace.frames); + } + }); + } - if (haveWasm) { - event.debug_meta = event.debug_meta || {}; - event.debug_meta.images = [...(event.debug_meta.images || []), ...getImages()]; - } + if (haveWasm) { + event.debug_meta = event.debug_meta || {}; + event.debug_meta.images = [...(event.debug_meta.images || []), ...getImages()]; + } - return event; - }); + return event; } }