Skip to content

Commit 0a0887e

Browse files
authored
ref(core): Extract _ensureBeforeSendRv into func (#4288)
Extract out protected method `_ensureBeforeSendRv` from `baseclient` as it doesn't use any class props - this helps save a small amount of bundle size.
1 parent 15ab761 commit 0a0887e

File tree

1 file changed

+22
-24
lines changed

1 file changed

+22
-24
lines changed

packages/core/src/baseclient.ts

+22-24
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,7 @@ export abstract class BaseClient<B extends Backend, O extends Options> implement
562562
}
563563

564564
const beforeSendResult = beforeSend(prepared, hint);
565-
return this._ensureBeforeSendRv(beforeSendResult);
565+
return _ensureBeforeSendRv(beforeSendResult);
566566
})
567567
.then(processedEvent => {
568568
if (processedEvent === null) {
@@ -611,29 +611,27 @@ export abstract class BaseClient<B extends Backend, O extends Options> implement
611611
},
612612
);
613613
}
614+
}
614615

615-
/**
616-
* Verifies that return value of configured `beforeSend` is of expected type.
617-
*/
618-
protected _ensureBeforeSendRv(
619-
rv: PromiseLike<Event | null> | Event | null,
620-
): PromiseLike<Event | null> | Event | null {
621-
const nullErr = '`beforeSend` method has to return `null` or a valid event.';
622-
if (isThenable(rv)) {
623-
return (rv as PromiseLike<Event | null>).then(
624-
event => {
625-
if (!(isPlainObject(event) || event === null)) {
626-
throw new SentryError(nullErr);
627-
}
628-
return event;
629-
},
630-
e => {
631-
throw new SentryError(`beforeSend rejected with ${e}`);
632-
},
633-
);
634-
} else if (!(isPlainObject(rv) || rv === null)) {
635-
throw new SentryError(nullErr);
636-
}
637-
return rv;
616+
/**
617+
* Verifies that return value of configured `beforeSend` is of expected type.
618+
*/
619+
function _ensureBeforeSendRv(rv: PromiseLike<Event | null> | Event | null): PromiseLike<Event | null> | Event | null {
620+
const nullErr = '`beforeSend` method has to return `null` or a valid event.';
621+
if (isThenable(rv)) {
622+
return rv.then(
623+
event => {
624+
if (!(isPlainObject(event) || event === null)) {
625+
throw new SentryError(nullErr);
626+
}
627+
return event;
628+
},
629+
e => {
630+
throw new SentryError(`beforeSend rejected with ${e}`);
631+
},
632+
);
633+
} else if (!(isPlainObject(rv) || rv === null)) {
634+
throw new SentryError(nullErr);
638635
}
636+
return rv;
639637
}

0 commit comments

Comments
 (0)