From 8b2144a017b42becea3786279293037a565cfe6f Mon Sep 17 00:00:00 2001 From: Katie Byers Date: Wed, 11 May 2022 23:00:37 -0700 Subject: [PATCH] remove polyfill --- packages/utils/src/error.ts | 4 +--- packages/utils/src/polyfill.ts | 27 --------------------------- 2 files changed, 1 insertion(+), 30 deletions(-) delete mode 100644 packages/utils/src/polyfill.ts diff --git a/packages/utils/src/error.ts b/packages/utils/src/error.ts index f913d80a7438..30b35c115d14 100644 --- a/packages/utils/src/error.ts +++ b/packages/utils/src/error.ts @@ -1,5 +1,3 @@ -import { setPrototypeOf } from './polyfill'; - /** An error emitted by Sentry SDKs and related utilities. */ export class SentryError extends Error { /** Display name of this error instance. */ @@ -9,6 +7,6 @@ export class SentryError extends Error { super(message); this.name = new.target.prototype.constructor.name; - setPrototypeOf(this, new.target.prototype); + Object.setPrototypeOf(this, new.target.prototype); } } diff --git a/packages/utils/src/polyfill.ts b/packages/utils/src/polyfill.ts deleted file mode 100644 index a11b47fc55e1..000000000000 --- a/packages/utils/src/polyfill.ts +++ /dev/null @@ -1,27 +0,0 @@ -export const setPrototypeOf = - Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties); - -/** - * setPrototypeOf polyfill using __proto__ - */ -// eslint-disable-next-line @typescript-eslint/ban-types -function setProtoOf(obj: TTarget, proto: TProto): TTarget & TProto { - // @ts-ignore __proto__ does not exist on obj - obj.__proto__ = proto; - return obj as TTarget & TProto; -} - -/** - * setPrototypeOf polyfill using mixin - */ -// eslint-disable-next-line @typescript-eslint/ban-types -function mixinProperties(obj: TTarget, proto: TProto): TTarget & TProto { - for (const prop in proto) { - if (!Object.prototype.hasOwnProperty.call(obj, prop)) { - // @ts-ignore typescript complains about indexing so we remove - obj[prop] = proto[prop]; - } - } - - return obj as TTarget & TProto; -}