@sentry/browser
Advanced tools
@@ -19,3 +19,3 @@ Object.defineProperty(exports, '__esModule', { value: true }); | ||
| * dsn: '___PUBLIC_DSN___', | ||
| * integrations: [Sentry.unleashIntegration({unleashClientClass: UnleashClient})], | ||
| * integrations: [Sentry.unleashIntegration({featureFlagClientClass: UnleashClient})], | ||
| * }); | ||
@@ -27,3 +27,2 @@ * | ||
| * unleash.isEnabled('my-feature'); | ||
| * unleash.getVariant('other-feature'); | ||
| * Sentry.captureException(new Error('something went wrong')); | ||
@@ -33,3 +32,9 @@ * ``` | ||
| const unleashIntegration = core.defineIntegration( | ||
| ({ unleashClientClass }) => { | ||
| // eslint-disable-next-line deprecation/deprecation | ||
| ({ featureFlagClientClass, unleashClientClass }) => { | ||
| const _unleashClientClass = featureFlagClientClass ? featureFlagClientClass : unleashClientClass; | ||
| if (!_unleashClientClass) { | ||
| throw new Error('featureFlagClientClass option is required'); | ||
| } | ||
| return { | ||
@@ -43,3 +48,3 @@ name: 'Unleash', | ||
| setupOnce() { | ||
| const unleashClientPrototype = unleashClientClass.prototype ; | ||
| const unleashClientPrototype = _unleashClientClass.prototype ; | ||
| core.fill(unleashClientPrototype, 'isEnabled', _wrappedIsEnabled); | ||
@@ -46,0 +51,0 @@ }, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"integration.js","sources":["../../../../../../src/integrations/featureFlags/unleash/integration.ts"],"sourcesContent":["import type { Client, Event, EventHint, IntegrationFn } from '@sentry/core';\n\nimport { defineIntegration, fill, logger } from '@sentry/core';\nimport { DEBUG_BUILD } from '../../../debug-build';\nimport { copyFlagsFromScopeToEvent, insertFlagToScope } from '../../../utils/featureFlags';\nimport type { UnleashClient, UnleashClientClass } from './types';\n\n/**\n * Sentry integration for capturing feature flag evaluations from the Unleash SDK.\n *\n * See the [feature flag documentation](https://develop.sentry.dev/sdk/expected-features/#feature-flags) for more information.\n *\n * @example\n * ```\n * import { UnleashClient } from 'unleash-proxy-client';\n * import * as Sentry from '@sentry/browser';\n *\n * Sentry.init({\n * dsn: '___PUBLIC_DSN___',\n * integrations: [Sentry.unleashIntegration({unleashClientClass: UnleashClient})],\n * });\n *\n * const unleash = new UnleashClient(...);\n * unleash.start();\n *\n * unleash.isEnabled('my-feature');\n * unleash.getVariant('other-feature');\n * Sentry.captureException(new Error('something went wrong'));\n * ```\n */\nexport const unleashIntegration = defineIntegration(\n ({ unleashClientClass }: { unleashClientClass: UnleashClientClass }) => {\n return {\n name: 'Unleash',\n\n processEvent(event: Event, _hint: EventHint, _client: Client): Event {\n return copyFlagsFromScopeToEvent(event);\n },\n\n setupOnce() {\n const unleashClientPrototype = unleashClientClass.prototype as UnleashClient;\n fill(unleashClientPrototype, 'isEnabled', _wrappedIsEnabled);\n },\n };\n },\n) satisfies IntegrationFn;\n\n/**\n * Wraps the UnleashClient.isEnabled method to capture feature flag evaluations. Its only side effect is writing to Sentry scope.\n *\n * This wrapper is safe for all isEnabled signatures. If the signature does not match (this: UnleashClient, toggleName: string, ...args: unknown[]) => boolean,\n * we log an error and return the original result.\n *\n * @param original - The original method.\n * @returns Wrapped method. Results should match the original.\n */\nfunction _wrappedIsEnabled(\n original: (this: UnleashClient, ...args: unknown[]) => unknown,\n): (this: UnleashClient, ...args: unknown[]) => unknown {\n return function (this: UnleashClient, ...args: unknown[]): unknown {\n const toggleName = args[0];\n const result = original.apply(this, args);\n\n if (typeof toggleName === 'string' && typeof result === 'boolean') {\n insertFlagToScope(toggleName, result);\n } else if (DEBUG_BUILD) {\n logger.error(\n `[Feature Flags] UnleashClient.isEnabled does not match expected signature. arg0: ${toggleName} (${typeof toggleName}), result: ${result} (${typeof result})`,\n );\n }\n return result;\n };\n}\n"],"names":["defineIntegration","copyFlagsFromScopeToEvent","fill","insertFlagToScope","DEBUG_BUILD","logger"],"mappings":";;;;;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,kBAAmB,GAAEA,sBAAiB;AACnD,EAAE,CAAC,EAAE,kBAAmB,EAAC,KAAiD;AAC1E,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,SAAS;;AAErB,MAAM,YAAY,CAAC,KAAK,EAAS,KAAK,EAAa,OAAO,EAAiB;AAC3E,QAAQ,OAAOC,sCAAyB,CAAC,KAAK,CAAC;AAC/C,OAAO;;AAEP,MAAM,SAAS,GAAG;AAClB,QAAQ,MAAM,sBAAA,GAAyB,kBAAkB,CAAC,SAAU;AACpE,QAAQC,SAAI,CAAC,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,CAAC;AACpE,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB;AAC1B,EAAE,QAAQ;AACV,EAAwD;AACxD,EAAE,OAAO,WAA+B,GAAG,IAAI,EAAsB;AACrE,IAAI,MAAM,UAAW,GAAE,IAAI,CAAC,CAAC,CAAC;AAC9B,IAAI,MAAM,MAAO,GAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;;AAE7C,IAAI,IAAI,OAAO,UAAW,KAAI,QAAS,IAAG,OAAO,MAAA,KAAW,SAAS,EAAE;AACvE,MAAMC,8BAAiB,CAAC,UAAU,EAAE,MAAM,CAAC;AAC3C,KAAM,MAAK,IAAIC,sBAAW,EAAE;AAC5B,MAAMC,WAAM,CAAC,KAAK;AAClB,QAAQ,CAAC,iFAAiF,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,MAAM,CAAC,CAAC,CAAC;AACrK,OAAO;AACP;AACA,IAAI,OAAO,MAAM;AACjB,GAAG;AACH;;;;"} | ||
| {"version":3,"file":"integration.js","sources":["../../../../../../src/integrations/featureFlags/unleash/integration.ts"],"sourcesContent":["import type { Client, Event, EventHint, IntegrationFn } from '@sentry/core';\n\nimport { defineIntegration, fill, logger } from '@sentry/core';\nimport { DEBUG_BUILD } from '../../../debug-build';\nimport { copyFlagsFromScopeToEvent, insertFlagToScope } from '../../../utils/featureFlags';\nimport type { UnleashClient, UnleashClientClass } from './types';\n\ntype UnleashIntegrationOptions = {\n featureFlagClientClass?: UnleashClientClass;\n\n /**\n * @deprecated Use `featureFlagClientClass` instead.\n */\n unleashClientClass?: UnleashClientClass;\n};\n\n/**\n * Sentry integration for capturing feature flag evaluations from the Unleash SDK.\n *\n * See the [feature flag documentation](https://develop.sentry.dev/sdk/expected-features/#feature-flags) for more information.\n *\n * @example\n * ```\n * import { UnleashClient } from 'unleash-proxy-client';\n * import * as Sentry from '@sentry/browser';\n *\n * Sentry.init({\n * dsn: '___PUBLIC_DSN___',\n * integrations: [Sentry.unleashIntegration({featureFlagClientClass: UnleashClient})],\n * });\n *\n * const unleash = new UnleashClient(...);\n * unleash.start();\n *\n * unleash.isEnabled('my-feature');\n * Sentry.captureException(new Error('something went wrong'));\n * ```\n */\nexport const unleashIntegration = defineIntegration(\n // eslint-disable-next-line deprecation/deprecation\n ({ featureFlagClientClass, unleashClientClass }: UnleashIntegrationOptions) => {\n const _unleashClientClass = featureFlagClientClass ? featureFlagClientClass : unleashClientClass;\n if (!_unleashClientClass) {\n throw new Error('featureFlagClientClass option is required');\n }\n\n return {\n name: 'Unleash',\n\n processEvent(event: Event, _hint: EventHint, _client: Client): Event {\n return copyFlagsFromScopeToEvent(event);\n },\n\n setupOnce() {\n const unleashClientPrototype = _unleashClientClass.prototype as UnleashClient;\n fill(unleashClientPrototype, 'isEnabled', _wrappedIsEnabled);\n },\n };\n },\n) satisfies IntegrationFn;\n\n/**\n * Wraps the UnleashClient.isEnabled method to capture feature flag evaluations. Its only side effect is writing to Sentry scope.\n *\n * This wrapper is safe for all isEnabled signatures. If the signature does not match (this: UnleashClient, toggleName: string, ...args: unknown[]) => boolean,\n * we log an error and return the original result.\n *\n * @param original - The original method.\n * @returns Wrapped method. Results should match the original.\n */\nfunction _wrappedIsEnabled(\n original: (this: UnleashClient, ...args: unknown[]) => unknown,\n): (this: UnleashClient, ...args: unknown[]) => unknown {\n return function (this: UnleashClient, ...args: unknown[]): unknown {\n const toggleName = args[0];\n const result = original.apply(this, args);\n\n if (typeof toggleName === 'string' && typeof result === 'boolean') {\n insertFlagToScope(toggleName, result);\n } else if (DEBUG_BUILD) {\n logger.error(\n `[Feature Flags] UnleashClient.isEnabled does not match expected signature. arg0: ${toggleName} (${typeof toggleName}), result: ${result} (${typeof result})`,\n );\n }\n return result;\n };\n}\n"],"names":["defineIntegration","copyFlagsFromScopeToEvent","fill","insertFlagToScope","DEBUG_BUILD","logger"],"mappings":";;;;;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,kBAAmB,GAAEA,sBAAiB;AACnD;AACA,EAAE,CAAC,EAAE,sBAAsB,EAAE,kBAAmB,EAAC,KAAgC;AACjF,IAAI,MAAM,mBAAoB,GAAE,yBAAyB,sBAAA,GAAyB,kBAAkB;AACpG,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC9B,MAAM,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC;AAClE;;AAEA,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,SAAS;;AAErB,MAAM,YAAY,CAAC,KAAK,EAAS,KAAK,EAAa,OAAO,EAAiB;AAC3E,QAAQ,OAAOC,sCAAyB,CAAC,KAAK,CAAC;AAC/C,OAAO;;AAEP,MAAM,SAAS,GAAG;AAClB,QAAQ,MAAM,sBAAA,GAAyB,mBAAmB,CAAC,SAAU;AACrE,QAAQC,SAAI,CAAC,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,CAAC;AACpE,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB;AAC1B,EAAE,QAAQ;AACV,EAAwD;AACxD,EAAE,OAAO,WAA+B,GAAG,IAAI,EAAsB;AACrE,IAAI,MAAM,UAAW,GAAE,IAAI,CAAC,CAAC,CAAC;AAC9B,IAAI,MAAM,MAAO,GAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;;AAE7C,IAAI,IAAI,OAAO,UAAW,KAAI,QAAS,IAAG,OAAO,MAAA,KAAW,SAAS,EAAE;AACvE,MAAMC,8BAAiB,CAAC,UAAU,EAAE,MAAM,CAAC;AAC3C,KAAM,MAAK,IAAIC,sBAAW,EAAE;AAC5B,MAAMC,WAAM,CAAC,KAAK;AAClB,QAAQ,CAAC,iFAAiF,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,MAAM,CAAC,CAAC,CAAC;AACrK,OAAO;AACP;AACA,IAAI,OAAO,MAAM;AACjB,GAAG;AACH;;;;"} |
@@ -17,3 +17,3 @@ import { defineIntegration, fill, logger } from '@sentry/core'; | ||
| * dsn: '___PUBLIC_DSN___', | ||
| * integrations: [Sentry.unleashIntegration({unleashClientClass: UnleashClient})], | ||
| * integrations: [Sentry.unleashIntegration({featureFlagClientClass: UnleashClient})], | ||
| * }); | ||
@@ -25,3 +25,2 @@ * | ||
| * unleash.isEnabled('my-feature'); | ||
| * unleash.getVariant('other-feature'); | ||
| * Sentry.captureException(new Error('something went wrong')); | ||
@@ -31,3 +30,9 @@ * ``` | ||
| const unleashIntegration = defineIntegration( | ||
| ({ unleashClientClass }) => { | ||
| // eslint-disable-next-line deprecation/deprecation | ||
| ({ featureFlagClientClass, unleashClientClass }) => { | ||
| const _unleashClientClass = featureFlagClientClass ? featureFlagClientClass : unleashClientClass; | ||
| if (!_unleashClientClass) { | ||
| throw new Error('featureFlagClientClass option is required'); | ||
| } | ||
| return { | ||
@@ -41,3 +46,3 @@ name: 'Unleash', | ||
| setupOnce() { | ||
| const unleashClientPrototype = unleashClientClass.prototype ; | ||
| const unleashClientPrototype = _unleashClientClass.prototype ; | ||
| fill(unleashClientPrototype, 'isEnabled', _wrappedIsEnabled); | ||
@@ -44,0 +49,0 @@ }, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"integration.js","sources":["../../../../../../src/integrations/featureFlags/unleash/integration.ts"],"sourcesContent":["import type { Client, Event, EventHint, IntegrationFn } from '@sentry/core';\n\nimport { defineIntegration, fill, logger } from '@sentry/core';\nimport { DEBUG_BUILD } from '../../../debug-build';\nimport { copyFlagsFromScopeToEvent, insertFlagToScope } from '../../../utils/featureFlags';\nimport type { UnleashClient, UnleashClientClass } from './types';\n\n/**\n * Sentry integration for capturing feature flag evaluations from the Unleash SDK.\n *\n * See the [feature flag documentation](https://develop.sentry.dev/sdk/expected-features/#feature-flags) for more information.\n *\n * @example\n * ```\n * import { UnleashClient } from 'unleash-proxy-client';\n * import * as Sentry from '@sentry/browser';\n *\n * Sentry.init({\n * dsn: '___PUBLIC_DSN___',\n * integrations: [Sentry.unleashIntegration({unleashClientClass: UnleashClient})],\n * });\n *\n * const unleash = new UnleashClient(...);\n * unleash.start();\n *\n * unleash.isEnabled('my-feature');\n * unleash.getVariant('other-feature');\n * Sentry.captureException(new Error('something went wrong'));\n * ```\n */\nexport const unleashIntegration = defineIntegration(\n ({ unleashClientClass }: { unleashClientClass: UnleashClientClass }) => {\n return {\n name: 'Unleash',\n\n processEvent(event: Event, _hint: EventHint, _client: Client): Event {\n return copyFlagsFromScopeToEvent(event);\n },\n\n setupOnce() {\n const unleashClientPrototype = unleashClientClass.prototype as UnleashClient;\n fill(unleashClientPrototype, 'isEnabled', _wrappedIsEnabled);\n },\n };\n },\n) satisfies IntegrationFn;\n\n/**\n * Wraps the UnleashClient.isEnabled method to capture feature flag evaluations. Its only side effect is writing to Sentry scope.\n *\n * This wrapper is safe for all isEnabled signatures. If the signature does not match (this: UnleashClient, toggleName: string, ...args: unknown[]) => boolean,\n * we log an error and return the original result.\n *\n * @param original - The original method.\n * @returns Wrapped method. Results should match the original.\n */\nfunction _wrappedIsEnabled(\n original: (this: UnleashClient, ...args: unknown[]) => unknown,\n): (this: UnleashClient, ...args: unknown[]) => unknown {\n return function (this: UnleashClient, ...args: unknown[]): unknown {\n const toggleName = args[0];\n const result = original.apply(this, args);\n\n if (typeof toggleName === 'string' && typeof result === 'boolean') {\n insertFlagToScope(toggleName, result);\n } else if (DEBUG_BUILD) {\n logger.error(\n `[Feature Flags] UnleashClient.isEnabled does not match expected signature. arg0: ${toggleName} (${typeof toggleName}), result: ${result} (${typeof result})`,\n );\n }\n return result;\n };\n}\n"],"names":[],"mappings":";;;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,kBAAmB,GAAE,iBAAiB;AACnD,EAAE,CAAC,EAAE,kBAAmB,EAAC,KAAiD;AAC1E,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,SAAS;;AAErB,MAAM,YAAY,CAAC,KAAK,EAAS,KAAK,EAAa,OAAO,EAAiB;AAC3E,QAAQ,OAAO,yBAAyB,CAAC,KAAK,CAAC;AAC/C,OAAO;;AAEP,MAAM,SAAS,GAAG;AAClB,QAAQ,MAAM,sBAAA,GAAyB,kBAAkB,CAAC,SAAU;AACpE,QAAQ,IAAI,CAAC,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,CAAC;AACpE,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB;AAC1B,EAAE,QAAQ;AACV,EAAwD;AACxD,EAAE,OAAO,WAA+B,GAAG,IAAI,EAAsB;AACrE,IAAI,MAAM,UAAW,GAAE,IAAI,CAAC,CAAC,CAAC;AAC9B,IAAI,MAAM,MAAO,GAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;;AAE7C,IAAI,IAAI,OAAO,UAAW,KAAI,QAAS,IAAG,OAAO,MAAA,KAAW,SAAS,EAAE;AACvE,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC;AAC3C,KAAM,MAAK,IAAI,WAAW,EAAE;AAC5B,MAAM,MAAM,CAAC,KAAK;AAClB,QAAQ,CAAC,iFAAiF,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,MAAM,CAAC,CAAC,CAAC;AACrK,OAAO;AACP;AACA,IAAI,OAAO,MAAM;AACjB,GAAG;AACH;;;;"} | ||
| {"version":3,"file":"integration.js","sources":["../../../../../../src/integrations/featureFlags/unleash/integration.ts"],"sourcesContent":["import type { Client, Event, EventHint, IntegrationFn } from '@sentry/core';\n\nimport { defineIntegration, fill, logger } from '@sentry/core';\nimport { DEBUG_BUILD } from '../../../debug-build';\nimport { copyFlagsFromScopeToEvent, insertFlagToScope } from '../../../utils/featureFlags';\nimport type { UnleashClient, UnleashClientClass } from './types';\n\ntype UnleashIntegrationOptions = {\n featureFlagClientClass?: UnleashClientClass;\n\n /**\n * @deprecated Use `featureFlagClientClass` instead.\n */\n unleashClientClass?: UnleashClientClass;\n};\n\n/**\n * Sentry integration for capturing feature flag evaluations from the Unleash SDK.\n *\n * See the [feature flag documentation](https://develop.sentry.dev/sdk/expected-features/#feature-flags) for more information.\n *\n * @example\n * ```\n * import { UnleashClient } from 'unleash-proxy-client';\n * import * as Sentry from '@sentry/browser';\n *\n * Sentry.init({\n * dsn: '___PUBLIC_DSN___',\n * integrations: [Sentry.unleashIntegration({featureFlagClientClass: UnleashClient})],\n * });\n *\n * const unleash = new UnleashClient(...);\n * unleash.start();\n *\n * unleash.isEnabled('my-feature');\n * Sentry.captureException(new Error('something went wrong'));\n * ```\n */\nexport const unleashIntegration = defineIntegration(\n // eslint-disable-next-line deprecation/deprecation\n ({ featureFlagClientClass, unleashClientClass }: UnleashIntegrationOptions) => {\n const _unleashClientClass = featureFlagClientClass ? featureFlagClientClass : unleashClientClass;\n if (!_unleashClientClass) {\n throw new Error('featureFlagClientClass option is required');\n }\n\n return {\n name: 'Unleash',\n\n processEvent(event: Event, _hint: EventHint, _client: Client): Event {\n return copyFlagsFromScopeToEvent(event);\n },\n\n setupOnce() {\n const unleashClientPrototype = _unleashClientClass.prototype as UnleashClient;\n fill(unleashClientPrototype, 'isEnabled', _wrappedIsEnabled);\n },\n };\n },\n) satisfies IntegrationFn;\n\n/**\n * Wraps the UnleashClient.isEnabled method to capture feature flag evaluations. Its only side effect is writing to Sentry scope.\n *\n * This wrapper is safe for all isEnabled signatures. If the signature does not match (this: UnleashClient, toggleName: string, ...args: unknown[]) => boolean,\n * we log an error and return the original result.\n *\n * @param original - The original method.\n * @returns Wrapped method. Results should match the original.\n */\nfunction _wrappedIsEnabled(\n original: (this: UnleashClient, ...args: unknown[]) => unknown,\n): (this: UnleashClient, ...args: unknown[]) => unknown {\n return function (this: UnleashClient, ...args: unknown[]): unknown {\n const toggleName = args[0];\n const result = original.apply(this, args);\n\n if (typeof toggleName === 'string' && typeof result === 'boolean') {\n insertFlagToScope(toggleName, result);\n } else if (DEBUG_BUILD) {\n logger.error(\n `[Feature Flags] UnleashClient.isEnabled does not match expected signature. arg0: ${toggleName} (${typeof toggleName}), result: ${result} (${typeof result})`,\n );\n }\n return result;\n };\n}\n"],"names":[],"mappings":";;;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,kBAAmB,GAAE,iBAAiB;AACnD;AACA,EAAE,CAAC,EAAE,sBAAsB,EAAE,kBAAmB,EAAC,KAAgC;AACjF,IAAI,MAAM,mBAAoB,GAAE,yBAAyB,sBAAA,GAAyB,kBAAkB;AACpG,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC9B,MAAM,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC;AAClE;;AAEA,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,SAAS;;AAErB,MAAM,YAAY,CAAC,KAAK,EAAS,KAAK,EAAa,OAAO,EAAiB;AAC3E,QAAQ,OAAO,yBAAyB,CAAC,KAAK,CAAC;AAC/C,OAAO;;AAEP,MAAM,SAAS,GAAG;AAClB,QAAQ,MAAM,sBAAA,GAAyB,mBAAmB,CAAC,SAAU;AACrE,QAAQ,IAAI,CAAC,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,CAAC;AACpE,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB;AAC1B,EAAE,QAAQ;AACV,EAAwD;AACxD,EAAE,OAAO,WAA+B,GAAG,IAAI,EAAsB;AACrE,IAAI,MAAM,UAAW,GAAE,IAAI,CAAC,CAAC,CAAC;AAC9B,IAAI,MAAM,MAAO,GAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;;AAE7C,IAAI,IAAI,OAAO,UAAW,KAAI,QAAS,IAAG,OAAO,MAAA,KAAW,SAAS,EAAE;AACvE,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC;AAC3C,KAAM,MAAK,IAAI,WAAW,EAAE;AAC5B,MAAM,MAAM,CAAC,KAAK;AAClB,QAAQ,CAAC,iFAAiF,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,MAAM,CAAC,CAAC,CAAC;AACrK,OAAO;AACP;AACA,IAAI,OAAO,MAAM;AACjB,GAAG;AACH;;;;"} |
@@ -1,1 +0,1 @@ | ||
| {"type":"module","version":"8.55.0","sideEffects":false} | ||
| {"type":"module","version":"8.55.1","sideEffects":false} |
| import { UnleashClientClass } from './types'; | ||
| type UnleashIntegrationOptions = { | ||
| featureFlagClientClass?: UnleashClientClass; | ||
| /** | ||
| * @deprecated Use `featureFlagClientClass` instead. | ||
| */ | ||
| unleashClientClass?: UnleashClientClass; | ||
| }; | ||
| /** | ||
@@ -14,3 +21,3 @@ * Sentry integration for capturing feature flag evaluations from the Unleash SDK. | ||
| * dsn: '___PUBLIC_DSN___', | ||
| * integrations: [Sentry.unleashIntegration({unleashClientClass: UnleashClient})], | ||
| * integrations: [Sentry.unleashIntegration({featureFlagClientClass: UnleashClient})], | ||
| * }); | ||
@@ -22,9 +29,7 @@ * | ||
| * unleash.isEnabled('my-feature'); | ||
| * unleash.getVariant('other-feature'); | ||
| * Sentry.captureException(new Error('something went wrong')); | ||
| * ``` | ||
| */ | ||
| export declare const unleashIntegration: (args_0: { | ||
| unleashClientClass: UnleashClientClass; | ||
| }) => import("@sentry/core").Integration; | ||
| export declare const unleashIntegration: (args_0: UnleashIntegrationOptions) => import("@sentry/core").Integration; | ||
| export {}; | ||
| //# sourceMappingURL=integration.d.ts.map |
| import type { UnleashClientClass } from './types'; | ||
| type UnleashIntegrationOptions = { | ||
| featureFlagClientClass?: UnleashClientClass; | ||
| /** | ||
| * @deprecated Use `featureFlagClientClass` instead. | ||
| */ | ||
| unleashClientClass?: UnleashClientClass; | ||
| }; | ||
| /** | ||
@@ -14,3 +21,3 @@ * Sentry integration for capturing feature flag evaluations from the Unleash SDK. | ||
| * dsn: '___PUBLIC_DSN___', | ||
| * integrations: [Sentry.unleashIntegration({unleashClientClass: UnleashClient})], | ||
| * integrations: [Sentry.unleashIntegration({featureFlagClientClass: UnleashClient})], | ||
| * }); | ||
@@ -22,9 +29,7 @@ * | ||
| * unleash.isEnabled('my-feature'); | ||
| * unleash.getVariant('other-feature'); | ||
| * Sentry.captureException(new Error('something went wrong')); | ||
| * ``` | ||
| */ | ||
| export declare const unleashIntegration: (args_0: { | ||
| unleashClientClass: UnleashClientClass; | ||
| }) => import("@sentry/core").Integration; | ||
| export declare const unleashIntegration: (args_0: UnleashIntegrationOptions) => import("@sentry/core").Integration; | ||
| export {}; | ||
| //# sourceMappingURL=integration.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../../../../src/integrations/featureFlags/unleash/integration.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAiB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,kBAAkB;wBACkB,kBAAkB;wCAc1C,CAAC"} | ||
| {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../../../../src/integrations/featureFlags/unleash/integration.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAiB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEjE,KAAK,yBAAyB,GAAG;IAC/B,sBAAsB,CAAC,EAAE,kBAAkB,CAAC;IAE5C;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,kBAAkB,2EAqBN,CAAC"} |
+7
-7
| { | ||
| "name": "@sentry/browser", | ||
| "version": "8.55.0", | ||
| "version": "8.55.1", | ||
| "description": "Official Sentry SDK for browsers", | ||
@@ -43,10 +43,10 @@ "repository": "git://github.com/getsentry/sentry-javascript.git", | ||
| "dependencies": { | ||
| "@sentry-internal/browser-utils": "8.55.0", | ||
| "@sentry-internal/feedback": "8.55.0", | ||
| "@sentry-internal/replay": "8.55.0", | ||
| "@sentry-internal/replay-canvas": "8.55.0", | ||
| "@sentry/core": "8.55.0" | ||
| "@sentry-internal/browser-utils": "8.55.1", | ||
| "@sentry-internal/feedback": "8.55.1", | ||
| "@sentry-internal/replay": "8.55.1", | ||
| "@sentry-internal/replay-canvas": "8.55.1", | ||
| "@sentry/core": "8.55.1" | ||
| }, | ||
| "devDependencies": { | ||
| "@sentry-internal/integration-shims": "8.55.0", | ||
| "@sentry-internal/integration-shims": "8.55.1", | ||
| "fake-indexeddb": "^4.0.1" | ||
@@ -53,0 +53,0 @@ }, |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
1073953
0.2%11378
0.16%+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
Updated