diff --git a/package.json b/package.json index 48cc8bfc..93788deb 100644 --- a/package.json +++ b/package.json @@ -200,7 +200,6 @@ "react-responsive": "^9.0.2", "react-textarea-autosize": "^8.5.3", "rn-fetch-blob": "^0.12.0", - "sentry-expo": "~7.0.1", "statsig-react-native-expo": "^4.6.1", "tippy.js": "^6.3.7", "tlds": "^1.234.0", diff --git a/patches/@sentry+react-native+5.32.0.patch b/patches/@sentry+react-native+5.32.0.patch index 056b187b..2962aa44 100644 --- a/patches/@sentry+react-native+5.32.0.patch +++ b/patches/@sentry+react-native+5.32.0.patch @@ -13,19 +13,3 @@ index 7e0b4cd..177454c 100644 } //# sourceMappingURL=ignorerequirecyclelogs.js.map \ No newline at end of file -diff --git a/node_modules/@sentry/react-native/ios/RNSentry.mm b/node_modules/@sentry/react-native/ios/RNSentry.mm -index 392869c..29bcd8b 100644 ---- a/node_modules/@sentry/react-native/ios/RNSentry.mm -+++ b/node_modules/@sentry/react-native/ios/RNSentry.mm -@@ -452,6 +452,11 @@ - (NSDictionary*) fetchNativeStackFramesBy: (NSArray*)instructionsAdd - resolve:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) - { -+ if ([rawBytes isKindOfClass:[NSArray class]]) { -+ resolve(@YES); -+ return; -+ } -+ - NSData *data = [[NSData alloc] initWithBase64EncodedString:rawBytes options:0]; - - SentryEnvelope *envelope = [PrivateSentrySDKOnly envelopeWithData:data]; diff --git a/src/lib/analytics/analytics.tsx b/src/lib/analytics/analytics.tsx index a0cc7cd6..5f93d982 100644 --- a/src/lib/analytics/analytics.tsx +++ b/src/lib/analytics/analytics.tsx @@ -2,12 +2,12 @@ import React from 'react' import {AppState, AppStateStatus} from 'react-native' import AsyncStorage from '@react-native-async-storage/async-storage' import {createClient, SegmentClient} from '@segment/analytics-react-native' +import * as Sentry from '@sentry/react-native' import {sha256} from 'js-sha256' -import {Native} from 'sentry-expo' -import {useSession, SessionAccount} from '#/state/session' -import {ScreenPropertiesMap, TrackPropertiesMap} from './types' import {logger} from '#/logger' +import {SessionAccount, useSession} from '#/state/session' +import {ScreenPropertiesMap, TrackPropertiesMap} from './types' type AppInfo = { build?: string | undefined @@ -72,7 +72,7 @@ export function init(account: SessionAccount | undefined) { if (account.did) { const did_hashed = sha256(account.did) client.identify(did_hashed, {did_hashed}) - Native.setUser({id: did_hashed}) + Sentry.setUser({id: did_hashed}) logger.debug('Ping w/hash') } else { logger.debug('Ping w/o hash') diff --git a/src/lib/analytics/analytics.web.tsx b/src/lib/analytics/analytics.web.tsx index 72b28f9c..c7f0ed3b 100644 --- a/src/lib/analytics/analytics.web.tsx +++ b/src/lib/analytics/analytics.web.tsx @@ -1,11 +1,11 @@ import React from 'react' import {createClient} from '@segment/analytics-react' +import * as Sentry from '@sentry/react-native' import {sha256} from 'js-sha256' -import {Browser} from 'sentry-expo' -import {ScreenPropertiesMap, TrackPropertiesMap} from './types' -import {useSession, SessionAccount} from '#/state/session' import {logger} from '#/logger' +import {SessionAccount, useSession} from '#/state/session' +import {ScreenPropertiesMap, TrackPropertiesMap} from './types' type SegmentClient = ReturnType @@ -70,7 +70,7 @@ export function init(account: SessionAccount | undefined) { if (account.did) { const did_hashed = sha256(account.did) client.identify(did_hashed, {did_hashed}) - Browser.setUser({id: did_hashed}) + Sentry.setUser({id: did_hashed}) logger.debug('Ping w/hash') } else { logger.debug('Ping w/o hash') diff --git a/src/lib/sentry.ts b/src/lib/sentry.ts index 1180b0db..37d41e3a 100644 --- a/src/lib/sentry.ts +++ b/src/lib/sentry.ts @@ -5,7 +5,7 @@ import {Platform} from 'react-native' import {nativeApplicationVersion, nativeBuildVersion} from 'expo-application' -import {init} from 'sentry-expo' +import {init} from '@sentry/react-native' import {BUILD_ENV, IS_DEV, IS_TESTFLIGHT} from 'lib/app-info' @@ -30,10 +30,10 @@ const dist = `${Platform.OS}.${nativeBuildVersion}.${ }${IS_DEV ? 'dev' : ''}` init({ + enabled: !__DEV__, autoSessionTracking: false, dsn: 'https://05bc3789bf994b81bd7ce20c86ccd3ae@o4505071687041024.ingest.sentry.io/4505071690514432', debug: false, // If `true`, Sentry will try to print out useful debugging information if something goes wrong with sending the event. Set it to `false` in production - enableInExpoDevelopment: false, // enable this to test in dev environment: BUILD_ENV ?? 'development', dist, release, diff --git a/src/logger/__tests__/logger.test.ts b/src/logger/__tests__/logger.test.ts index 12d60aba..a3ccd037 100644 --- a/src/logger/__tests__/logger.test.ts +++ b/src/logger/__tests__/logger.test.ts @@ -1,6 +1,6 @@ +import {beforeAll, describe, expect, jest, test} from '@jest/globals' +import * as Sentry from '@sentry/react-native' import {nanoid} from 'nanoid/non-secure' -import {jest, describe, expect, test, beforeAll} from '@jest/globals' -import {Native as Sentry} from 'sentry-expo' import {Logger, LogLevel, sentryTransport} from '#/logger' @@ -16,12 +16,10 @@ jest.mock('#/env', () => ({ LOG_DEBUG: '', })) -jest.mock('sentry-expo', () => ({ - Native: { - addBreadcrumb: jest.fn(), - captureException: jest.fn(), - captureMessage: jest.fn(), - }, +jest.mock('@sentry/react-native', () => ({ + addBreadcrumb: jest.fn(), + captureException: jest.fn(), + captureMessage: jest.fn(), })) beforeAll(() => { diff --git a/src/logger/sentry/index.ts b/src/logger/sentry/index.ts index a2ed8452..e771560e 100644 --- a/src/logger/sentry/index.ts +++ b/src/logger/sentry/index.ts @@ -1 +1 @@ -export {Native as Sentry} from 'sentry-expo' +export * as Sentry from '@sentry/react-native' diff --git a/src/logger/sentry/index.web.ts b/src/logger/sentry/index.web.ts index 072b997f..e771560e 100644 --- a/src/logger/sentry/index.web.ts +++ b/src/logger/sentry/index.web.ts @@ -1 +1 @@ -export {Browser as Sentry} from 'sentry-expo' +export * as Sentry from '@sentry/react-native' diff --git a/yarn.lock b/yarn.lock index 9e7d7635..0ab12b66 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3887,7 +3887,7 @@ dependencies: cross-spawn "^6.0.5" -"@expo/spawn-async@^1.5.0", "@expo/spawn-async@^1.7.0", "@expo/spawn-async@^1.7.2": +"@expo/spawn-async@^1.5.0", "@expo/spawn-async@^1.7.2": version "1.7.2" resolved "https://registry.yarnpkg.com/@expo/spawn-async/-/spawn-async-1.7.2.tgz#fcfe66c3e387245e72154b1a7eae8cada6a47f58" integrity sha512-QdWi16+CHB9JYP7gma19OVVg0BFkvU8zNj9GjWorYI8Iv8FUxjOCcYRuAmX4s/h91e4e7BPsskc8cSrZYho9Ew== @@ -6034,26 +6034,6 @@ "@sentry/types" "7.119.0" "@sentry/utils" "7.119.0" -"@sentry-internal/tracing@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.52.0.tgz#c4e0750ad0c3949c5bb4b59cbb708b0fef274080" - integrity sha512-o1YPcRGtC9tjeFCvWRJsbgK94zpExhzfxWaldAKvi3PuWEmPeewSdO/Q5pBIY1QonvSI+Q3gysLRcVlLYHhO5A== - dependencies: - "@sentry/core" "7.52.0" - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - tslib "^1.9.3" - -"@sentry-internal/tracing@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.52.1.tgz#c98823afd2f9814466fa26f24a1a54fe63b27c24" - integrity sha512-6N99rE+Ek0LgbqSzI/XpsKSLUyJjQ9nychViy+MP60p1x+hllukfTsDbNtUNrPlW0Bx+vqUrWKkAqmTFad94TQ== - dependencies: - "@sentry/core" "7.52.1" - "@sentry/types" "7.52.1" - "@sentry/utils" "7.52.1" - tslib "^1.9.3" - "@sentry/babel-plugin-component-annotate@2.20.1": version "2.20.1" resolved "https://registry.yarnpkg.com/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-2.20.1.tgz#204c63ed006a048f48f633876e1b8bacf87a9722" @@ -6073,30 +6053,6 @@ "@sentry/types" "7.119.0" "@sentry/utils" "7.119.0" -"@sentry/browser@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.52.0.tgz#55d266c89ed668389ff687e5cc885c27016ea85c" - integrity sha512-Sib0T24cQCqqqAhg+nZdfI7qNYGE03jiM3RbY7yG5UoycdnJzWEwrBVSzRTgg3Uya9TRTEGJ+d9vxPIU5TL7TA== - dependencies: - "@sentry-internal/tracing" "7.52.0" - "@sentry/core" "7.52.0" - "@sentry/replay" "7.52.0" - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - tslib "^1.9.3" - -"@sentry/browser@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.52.1.tgz#f112ca4170bb5023f050bdcbcce5621b475a46eb" - integrity sha512-HrCOfieX68t+Wj42VIkraLYwx8kN5311SdBkHccevWs2Y2dZU7R9iLbI87+nb5kpOPQ7jVWW7d6QI/yZmliYgQ== - dependencies: - "@sentry-internal/tracing" "7.52.1" - "@sentry/core" "7.52.1" - "@sentry/replay" "7.52.1" - "@sentry/types" "7.52.1" - "@sentry/utils" "7.52.1" - tslib "^1.9.3" - "@sentry/cli-darwin@2.36.1": version "2.36.1" resolved "https://registry.yarnpkg.com/@sentry/cli-darwin/-/cli-darwin-2.36.1.tgz#786adf6984dbe3c6fb7dac51b625c314117b807d" @@ -6132,17 +6088,6 @@ resolved "https://registry.yarnpkg.com/@sentry/cli-win32-x64/-/cli-win32-x64-2.36.1.tgz#80779b4bffb4e2e32944eae72c60e6f40151b4dc" integrity sha512-wWqht2xghcK3TGnooHZSzA3WSjdtno/xFjZLvWmw38rblGwgKMxLZnlxV6uDyS+OJ6CbfDTlCRay/0TIqA0N8g== -"@sentry/cli@2.17.5": - version "2.17.5" - resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.17.5.tgz#d41e24893a843bcd41e14274044a7ddea9332824" - integrity sha512-0tXjLDpaKB46851EMJ6NbP0o9/gdEaDSLAyjEtXxlVO6+RyhUj6x6jDwn0vis8n/7q0AvbIjAcJrot+TbZP+WQ== - dependencies: - https-proxy-agent "^5.0.0" - node-fetch "^2.6.7" - progress "^2.0.3" - proxy-from-env "^1.1.0" - which "^2.0.2" - "@sentry/cli@2.36.1": version "2.36.1" resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.36.1.tgz#a9146b798cb6d2f782a7a48d74633ddcd88dc8d3" @@ -6170,24 +6115,6 @@ "@sentry/types" "7.119.0" "@sentry/utils" "7.119.0" -"@sentry/core@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.52.0.tgz#6c820ca48fe2f06bfd6b290044c96de2375f2ad4" - integrity sha512-BWdG6vCMeUeMhF4ILpxXTmw70JJvT1MGJcnv09oSupWHTmqy6I19YP6YcEyFuBL4jXPN51eCl7luIdLGJrPbOg== - dependencies: - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - tslib "^1.9.3" - -"@sentry/core@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.52.1.tgz#4de702937ba8944802bb06eb8dfdf089c39f6bab" - integrity sha512-36clugQu5z/9jrit1gzI7KfKbAUimjRab39JeR0mJ6pMuKLTTK7PhbpUAD4AQBs9qVeXN2c7h9SVZiSA0UDvkg== - dependencies: - "@sentry/types" "7.52.1" - "@sentry/utils" "7.52.1" - tslib "^1.9.3" - "@sentry/hub@7.119.0": version "7.119.0" resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-7.119.0.tgz#a94d657b9d3cfd4cc061c5c238f86faefb55d5d8" @@ -6197,16 +6124,6 @@ "@sentry/types" "7.119.0" "@sentry/utils" "7.119.0" -"@sentry/hub@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-7.52.0.tgz#ffc087d58c745d57108862faa0f701b15503dcc2" - integrity sha512-w3d8Pmp3Fx2zbbjz6hAeIbsFEkLyrUs9YTGG2y8oCoTlAtGK+AjdG+Z0H/clAZONflD/je2EmFHCI0EuXE9tEw== - dependencies: - "@sentry/core" "7.52.0" - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - tslib "^1.9.3" - "@sentry/integrations@7.119.0": version "7.119.0" resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.119.0.tgz#5b25c603026dbacfe1ae7bb8d768506a129149fb" @@ -6217,26 +6134,6 @@ "@sentry/utils" "7.119.0" localforage "^1.8.1" -"@sentry/integrations@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.52.0.tgz#632aa5e54bdfdab910a24057c2072634a2670409" - integrity sha512-tqxYzgc71XdFD8MTCsVMCPef08lPY9jULE5Zi7TzjyV2AItDRJPkixG0qjwjOGwCtN/6KKz0lGPGYU8ZDxvsbg== - dependencies: - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - localforage "^1.8.1" - tslib "^1.9.3" - -"@sentry/integrations@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.52.1.tgz#e8a5988477e8d295fa1d90ce5628c1a7794c2a09" - integrity sha512-4uejF01723wzEHjcP5AcNcV+Z/6U27b1LyaDu0jY3XDry98MMjhS/ASzecLpaEFxi3dh/jMTUrNp1u7WMj59Lg== - dependencies: - "@sentry/types" "7.52.1" - "@sentry/utils" "7.52.1" - localforage "^1.8.1" - tslib "^1.9.3" - "@sentry/react-native@5.32.0": version "5.32.0" resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-5.32.0.tgz#14c46a65f7359f5e74a9cef7edb9d7bf9a0a449d" @@ -6252,20 +6149,6 @@ "@sentry/types" "7.119.0" "@sentry/utils" "7.119.0" -"@sentry/react-native@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-5.5.0.tgz#b1283f68465b1772ad6059ebba149673cef33f2d" - integrity sha512-xrES+OAIu3HFhoQSuJjd16Hh02/mByuNoKUjF7e4WDGIiTew3aqlqeLjU7x4npmg5Vbt+ND5jR12u/NmdfArwg== - dependencies: - "@sentry/browser" "7.52.0" - "@sentry/cli" "2.17.5" - "@sentry/core" "7.52.0" - "@sentry/hub" "7.52.0" - "@sentry/integrations" "7.52.0" - "@sentry/react" "7.52.0" - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - "@sentry/react@7.119.0": version "7.119.0" resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.119.0.tgz#79f2c9d94322a3afbfa8af9f5b872f7c2e9b0820" @@ -6277,28 +6160,6 @@ "@sentry/utils" "7.119.0" hoist-non-react-statics "^3.3.2" -"@sentry/react@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.52.0.tgz#d12d270ec82dea0474e69deb9112181affe7c524" - integrity sha512-VQxquyFFlvB81k7UER7tTJxjzbczNI2jqsw6nN1TVDrAIDt8/hT2x7m/M0FlWc88roBKuaMmbvzfNGWaL9abyQ== - dependencies: - "@sentry/browser" "7.52.0" - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - hoist-non-react-statics "^3.3.2" - tslib "^1.9.3" - -"@sentry/react@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.52.1.tgz#5f30919f4680493558c5233165b2092d2b59f6d1" - integrity sha512-RRH+GJE5TNg5QS86bSjSZuR2snpBTOO5/SU9t4BOqZMknzhMVTClGMm84hffJa9pMPMJPQ2fWQAbhrlD8RcF6w== - dependencies: - "@sentry/browser" "7.52.1" - "@sentry/types" "7.52.1" - "@sentry/utils" "7.52.1" - hoist-non-react-statics "^3.3.2" - tslib "^1.9.3" - "@sentry/replay@7.119.0": version "7.119.0" resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.119.0.tgz#50881079d013c77f87a994331d8bcad1d49e0960" @@ -6309,39 +6170,11 @@ "@sentry/types" "7.119.0" "@sentry/utils" "7.119.0" -"@sentry/replay@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.52.0.tgz#4d78e88282d2c1044ea4b648a68d1b22173e810d" - integrity sha512-RRPALjDST2s7MHiMcUJ7Wo4WW7EWfUDYSG0LuhMT8DNc+ZsxQoFsLYX/yz8b3f0IUSr7xKBXP+aPeIy3jDAS2g== - dependencies: - "@sentry/core" "7.52.0" - "@sentry/types" "7.52.0" - "@sentry/utils" "7.52.0" - -"@sentry/replay@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.52.1.tgz#272a0bcb79bb9ffce99b5dcaf864f18d729ce0da" - integrity sha512-A+RaUmpU9/yBHnU3ATemc6wAvobGno0yf5R6fZYkAFoo2FCR2YG6AXxkTazymIf8v2DnLGaSDORYDPdhQClU9A== - dependencies: - "@sentry/core" "7.52.1" - "@sentry/types" "7.52.1" - "@sentry/utils" "7.52.1" - "@sentry/types@7.119.0": version "7.119.0" resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.119.0.tgz#8b3d7a1405c362e75cd900d46089df4e70919d2a" integrity sha512-27qQbutDBPKGbuJHROxhIWc1i0HJaGLA90tjMu11wt0E4UNxXRX+UQl4Twu68v4EV3CPvQcEpQfgsViYcXmq+w== -"@sentry/types@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.52.0.tgz#b7d5372f17355e3991cbe818ad567f3fe277cc6b" - integrity sha512-XnEWpS6P6UdP1FqbmeqhI96Iowqd2jM5R7zJ97txTdAd5NmdHHH0pODTR9NiQViA1WlsXDut7ZLxgPzC9vIcMA== - -"@sentry/types@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.52.1.tgz#bcff6d0462d9b9b7b9ec31c0068fe02d44f25da2" - integrity sha512-OMbGBPrJsw0iEXwZ2bJUYxewI1IEAU2e1aQGc0O6QW5+6hhCh+8HO8Xl4EymqwejjztuwStkl6G1qhK+Q0/Row== - "@sentry/utils@7.119.0": version "7.119.0" resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.119.0.tgz#debe29020f6ef3786a5bd855cf1b97116b7be826" @@ -6349,22 +6182,6 @@ dependencies: "@sentry/types" "7.119.0" -"@sentry/utils@7.52.0": - version "7.52.0" - resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.52.0.tgz#cacc36d905036ba7084c14965e964fc44239d7f0" - integrity sha512-X1NHYuqW0qpZfP731YcVe+cn36wJdAeBHPYPIkXCl4o4GePCJfH/CM/+9V9cZykNjyLrs2Xy/TavSAHNCj8j7w== - dependencies: - "@sentry/types" "7.52.0" - tslib "^1.9.3" - -"@sentry/utils@7.52.1": - version "7.52.1" - resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.52.1.tgz#4a3e49b918f78dba4524c924286210259020cac5" - integrity sha512-MPt1Xu/jluulknW8CmZ2naJ53jEdtdwCBSo6fXJvOTI0SDqwIPbXDVrsnqLAhVJuIN7xbkj96nuY/VBR6S5sWg== - dependencies: - "@sentry/types" "7.52.1" - tslib "^1.9.3" - "@sideway/address@^4.1.3": version "4.1.4" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" @@ -20243,19 +20060,6 @@ send@0.18.0, send@^0.18.0: range-parser "~1.2.1" statuses "2.0.1" -sentry-expo@~7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/sentry-expo/-/sentry-expo-7.0.1.tgz#025f0e90ab7f7cba1e00c892fabc027de21bc5bc" - integrity sha512-8vmOy4R+qM1peQA9EP8rDGUMBhgMU1D5FyuWY9kfNGatmWuvEmlZpVgaXoXaNPIhPgf2TMrvQIlbqLHtTkoeSA== - dependencies: - "@expo/spawn-async" "^1.7.0" - "@sentry/integrations" "7.52.1" - "@sentry/react" "7.52.1" - "@sentry/react-native" "5.5.0" - "@sentry/types" "7.52.1" - mkdirp "^1.0.4" - rimraf "^3.0.2" - serialize-error@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-2.1.0.tgz#50b679d5635cdf84667bdc8e59af4e5b81d5f60a" @@ -20807,16 +20611,7 @@ string-natural-compare@^3.0.1: resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw== -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -20925,7 +20720,7 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -20939,13 +20734,6 @@ strip-ansi@^5.0.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - strip-ansi@^7.0.1: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" @@ -21553,7 +21341,7 @@ tsconfig-paths@^3.14.2: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^1.11.1, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: +tslib@^1.11.1, tslib@^1.8.1, tslib@^1.9.0: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== @@ -22661,7 +22449,7 @@ workbox-window@6.6.1: "@types/trusted-types" "^2.0.2" workbox-core "6.6.1" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -22679,15 +22467,6 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"