( name: Prop, creator: () => NonNullable<SentryCarrier[Prop]>, obj = GLOBAL_OBJ, )
| 82 | * @returns the singleton |
| 83 | */ |
| 84 | export function getGlobalSingleton<Prop extends keyof SentryCarrier>( |
| 85 | name: Prop, |
| 86 | creator: () => NonNullable<SentryCarrier[Prop]>, |
| 87 | obj = GLOBAL_OBJ, |
| 88 | ): NonNullable<SentryCarrier[Prop]> { |
| 89 | const __SENTRY__ = (obj.__SENTRY__ = obj.__SENTRY__ || {}); |
| 90 | const carrier = (__SENTRY__[SDK_VERSION] = __SENTRY__[SDK_VERSION] || {}); |
| 91 | // Note: We do not want to set `carrier.version` here, as this may be called before any `init` is called, e.g. for the default scopes |
| 92 | return carrier[name] || (carrier[name] = creator()); |
| 93 | } |
no outgoing calls
no test coverage detected