From 2e426ab3e91b04e267db05fda47cd37beeb84f58 Mon Sep 17 00:00:00 2001 From: Violet Caulfield <42452695+anultravioletaurora@users.noreply.github.com> Date: Wed, 9 Jul 2025 11:55:44 -0500 Subject: [PATCH] Maestro Tests for Search * maestro search instrumentation * select search tab in maestro * adding sentry back in, updating search maestro * fix tests * fix maestro flow --- ios/Jellify.xcodeproj/project.pbxproj | 18 ++- ios/Podfile.lock | 37 +++++ jest/setup-sentry.ts | 6 +- maestro-tests/flow.yaml | 1 + maestro-tests/musicplayer.yaml | 6 + maestro-tests/search.yaml | 17 +++ package.json | 3 +- src/components/Player/mini-player.tsx | 2 +- src/components/Search/index.tsx | 8 +- src/components/jellify.tsx | 8 +- src/screens/tabs.tsx | 20 ++- yarn.lock | 196 +++++++++++++++++++++++++- 12 files changed, 298 insertions(+), 24 deletions(-) create mode 100644 maestro-tests/search.yaml diff --git a/ios/Jellify.xcodeproj/project.pbxproj b/ios/Jellify.xcodeproj/project.pbxproj index 022239a6..b7900e4f 100644 --- a/ios/Jellify.xcodeproj/project.pbxproj +++ b/ios/Jellify.xcodeproj/project.pbxproj @@ -523,14 +523,10 @@ inputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); - outputPaths = ( - ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks.sh\"\n"; @@ -544,14 +540,10 @@ inputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-resources-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - ); name = "[CP] Copy Pods Resources"; outputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-resources-${CONFIGURATION}-output-files.xcfilelist", ); - outputPaths = ( - ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-resources.sh\"\n"; @@ -831,7 +823,10 @@ "-DFOLLY_CFG_NO_COROUTINES=1", "-DFOLLY_HAVE_CLOCK_GETTIME=1", ); - OTHER_LDFLAGS = "$(inherited) "; + OTHER_LDFLAGS = ( + "$(inherited)", + " ", + ); REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG"; @@ -917,7 +912,10 @@ "-DFOLLY_CFG_NO_COROUTINES=1", "-DFOLLY_HAVE_CLOCK_GETTIME=1", ); - OTHER_LDFLAGS = "$(inherited) "; + OTHER_LDFLAGS = ( + "$(inherited)", + " ", + ); REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 1f2dee43..e0ac1a09 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -2750,6 +2750,36 @@ PODS: - ReactCommon/turbomodule/core - SocketRocket - Yoga + - RNSentry (6.16.1): + - boost + - DoubleConversion + - fast_float + - fmt + - glog + - hermes-engine + - RCT-Folly + - RCT-Folly/Fabric + - RCTRequired + - RCTTypeSafety + - React-Core + - React-debug + - React-Fabric + - React-featureflags + - React-graphics + - React-hermes + - React-ImageManager + - React-jsi + - React-NativeModulesApple + - React-RCTFabric + - React-renderercss + - React-rendererdebug + - React-utils + - ReactCodegen + - ReactCommon/turbomodule/bridging + - ReactCommon/turbomodule/core + - Sentry/HybridSDK (= 8.53.1) + - SocketRocket + - Yoga - RNVectorIcons (10.2.0): - boost - DoubleConversion @@ -2785,6 +2815,7 @@ PODS: - SDWebImageWebPCoder (0.8.5): - libwebp (~> 1.0) - SDWebImage/Core (~> 5.10) + - Sentry/HybridSDK (8.53.1) - SocketRocket (0.7.1) - SSZipArchive (2.4.3) - SwiftAudioEx (1.1.0) @@ -2886,6 +2917,7 @@ DEPENDENCIES: - RNReactNativeHapticFeedback (from `../node_modules/react-native-haptic-feedback`) - RNReanimated (from `../node_modules/react-native-reanimated`) - RNScreens (from `../node_modules/react-native-screens`) + - "RNSentry (from `../node_modules/@sentry/react-native`)" - RNVectorIcons (from `../node_modules/react-native-vector-icons`) - SDWebImage - SocketRocket (~> 0.7.1) @@ -2896,6 +2928,7 @@ SPEC REPOS: - libwebp - SDWebImage - SDWebImageWebPCoder + - Sentry - SocketRocket - SSZipArchive - SwiftAudioEx @@ -3090,6 +3123,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native-reanimated" RNScreens: :path: "../node_modules/react-native-screens" + RNSentry: + :path: "../node_modules/@sentry/react-native" RNVectorIcons: :path: "../node_modules/react-native-vector-icons" Yoga: @@ -3191,9 +3226,11 @@ SPEC CHECKSUMS: RNReactNativeHapticFeedback: 8eb91a6f48567d02ec8026e515102e18c41030cf RNReanimated: bc1ddb7a5352648bcf0d592256069833bf935a46 RNScreens: ee2abe7e0c548eed14e92742e81ed991165c56aa + RNSentry: 456930310ee103d93f6cdf15a988d787120f5208 RNVectorIcons: ef9b4b0b786053ebdd63ee2972f48de9633ba166 SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d + Sentry: 1e4e974d45f09d153af4b30b42acfb1c79e957d3 SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748 SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef SwiftAudioEx: f6aa653770f3a0d3851edaf8d834a30aee4a7646 diff --git a/jest/setup-sentry.ts b/jest/setup-sentry.ts index e81f54fe..5a7d8b0a 100644 --- a/jest/setup-sentry.ts +++ b/jest/setup-sentry.ts @@ -1,3 +1,3 @@ -// jest.mock('@sentry/react-native', () => ({ -// init: jest.fn(), -// })) +jest.mock('@sentry/react-native', () => ({ + init: jest.fn(), +})) diff --git a/maestro-tests/flow.yaml b/maestro-tests/flow.yaml index 0bcdd57b..bcf3759b 100644 --- a/maestro-tests/flow.yaml +++ b/maestro-tests/flow.yaml @@ -2,4 +2,5 @@ appId: com.jellify --- - launchApp - runFlow: login.yaml +- runFlow: search.yaml - runFlow: musicplayer.yaml diff --git a/maestro-tests/musicplayer.yaml b/maestro-tests/musicplayer.yaml index d65226c1..5860cea6 100644 --- a/maestro-tests/musicplayer.yaml +++ b/maestro-tests/musicplayer.yaml @@ -1,5 +1,11 @@ appId: com.jellify --- +# Navigate to the home screen +- tapOn: + id: "home-tab-icon" + +- assertVisible: + id: "recently-played-0" #Check if the song is visible - tapOn: diff --git a/maestro-tests/search.yaml b/maestro-tests/search.yaml new file mode 100644 index 00000000..ac2f7f29 --- /dev/null +++ b/maestro-tests/search.yaml @@ -0,0 +1,17 @@ +appId: com.jellify +--- + +- tapOn: + id: "search-tab-icon" + +- assertVisible: + id: "search-input" + +- tapOn: + id: "search-input" +- inputText: "bbno$" + +- assertVisible: + id: "artist-search-result-0" +- tapOn: + id: "artist-search-result-0" diff --git a/package.json b/package.json index 4eb9d93c..35e1dc0e 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ "@react-navigation/material-top-tabs": "^7.3.2", "@react-navigation/native": "^7.1.14", "@react-navigation/native-stack": "^7.3.21", + "@sentry/react-native": "^6.16.1", "@shopify/flash-list": "^2.0.0-rc.10", "@tamagui/config": "^1.129.12", "@tanstack/query-sync-storage-persister": "^5.81.5", @@ -133,4 +134,4 @@ "engines": { "node": ">=18" } -} \ No newline at end of file +} diff --git a/src/components/Player/mini-player.tsx b/src/components/Player/mini-player.tsx index 9710afe3..e08e71b9 100644 --- a/src/components/Player/mini-player.tsx +++ b/src/components/Player/mini-player.tsx @@ -1,6 +1,7 @@ import React, { useMemo, useCallback } from 'react' import { getToken, + getTokenValue, Progress, useTheme, useWindowDimensions, @@ -88,7 +89,6 @@ export const Miniplayer = React.memo(function Miniplayer({ return ( - {/* */} {nowPlaying && ( <> diff --git a/src/components/Search/index.tsx b/src/components/Search/index.tsx index ef7d43de..4c35487e 100644 --- a/src/components/Search/index.tsx +++ b/src/components/Search/index.tsx @@ -9,7 +9,7 @@ import { useQuery } from '@tanstack/react-query' import { FlatList } from 'react-native' import { H3 } from '../Global/helpers/text' import { fetchSearchSuggestions } from '../../api/queries/suggestions' -import { getToken, Spinner, YStack } from 'tamagui' +import { getToken, Separator, Spinner, YStack } from 'tamagui' import Suggestions from './suggestions' import { isEmpty } from 'lodash' import HorizontalCardList from '../Global/components/horizontal-list' @@ -70,6 +70,7 @@ export default function Search({ onChangeText={(value) => handleSearchStringUpdate(value)} value={searchString} marginHorizontal={'$2'} + testID='search-input' /> {!isEmpty(items) && ( @@ -78,9 +79,11 @@ export default function Search({ result.Type === 'MusicArtist')} - renderItem={({ item: artistResult }) => { + testID='artist-search-results' + renderItem={({ index, item: artistResult }) => { return ( { navigation.push('Artist', { @@ -97,6 +100,7 @@ export default function Search({ )} } + ItemSeparatorComponent={() => } ListEmptyComponent={() => { return ( diff --git a/src/components/jellify.tsx b/src/components/jellify.tsx index 62666124..2a81e095 100644 --- a/src/components/jellify.tsx +++ b/src/components/jellify.tsx @@ -15,7 +15,7 @@ import { } from '@typedigital/telemetrydeck-react' import telemetryDeckConfig from '../../telemetrydeck.json' import glitchtipConfig from '../../glitchtip.json' -// import * as Sentry from '@sentry/react-native' +import * as Sentry from '@sentry/react-native' import { useTheme } from 'tamagui' import Toast from 'react-native-toast-message' import JellifyToastConfig from '../constants/toast.config' @@ -53,9 +53,9 @@ function JellifyLoggingWrapper({ children }: { children: React.ReactNode }): Rea const telemetrydeck = createTelemetryDeck(telemetryDeckConfig) // only initialize Sentry when we actually have a valid DSN and are sending metrics - // if (sendMetrics && glitchtipConfig.dsn) { - // Sentry.init(glitchtipConfig) - // } + if (sendMetrics && glitchtipConfig.dsn) { + Sentry.init(glitchtipConfig) + } return {children} } diff --git a/src/screens/tabs.tsx b/src/screens/tabs.tsx index e3c23dbd..dfbff852 100644 --- a/src/screens/tabs.tsx +++ b/src/screens/tabs.tsx @@ -12,6 +12,7 @@ import LibraryStack from './Library' import InternetConnectionWatcher from '../components/Network/internetConnectionWatcher' import { StackParamList } from '../components/types' import { NativeStackNavigationProp } from '@react-navigation/native-stack' +import BlurView from 'blur-react-native' const Tab = createBottomTabNavigator() @@ -39,6 +40,17 @@ export function Tabs({ animation: 'shift', tabBarActiveTintColor: theme.primary.val, tabBarInactiveTintColor: theme.neutral.val, + tabBarBackground() { + return ( + + ) + }, }} tabBar={(props) => ( <> @@ -64,6 +76,7 @@ export function Tabs({ name='jellyfish-outline' color={color} size={size} + testID='home-tab-icon' /> ), }} @@ -90,7 +103,12 @@ export function Tabs({ options={{ headerShown: false, tabBarIcon: ({ color, size }) => ( - + ), }} /> diff --git a/yarn.lock b/yarn.lock index 1d1c6b14..d2b210c5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2223,6 +2223,153 @@ resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== +"@sentry-internal/browser-utils@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-8.54.0.tgz#2d68c7fa843db867ed98059faf1a750be3eca95a" + integrity sha512-DKWCqb4YQosKn6aD45fhKyzhkdG7N6goGFDeyTaJFREJDFVDXiNDsYZu30nJ6BxMM7uQIaARhPAC5BXfoED3pQ== + dependencies: + "@sentry/core" "8.54.0" + +"@sentry-internal/feedback@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-8.54.0.tgz#52c3a63aa5b520eca7acfa1376621e8441984126" + integrity sha512-nQqRacOXoElpE0L0ADxUUII0I3A94niqG9Z4Fmsw6057QvyrV/LvTiMQBop6r5qLjwMqK+T33iR4/NQI5RhsXQ== + dependencies: + "@sentry/core" "8.54.0" + +"@sentry-internal/replay-canvas@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-8.54.0.tgz#e57a3893db2bb0ea7ad9dc2a804bb035142fe3ba" + integrity sha512-K/On3OAUBeq/TV2n+1EvObKC+WMV9npVXpVyJqCCyn8HYMm8FUGzuxeajzm0mlW4wDTPCQor6mK9/IgOquUzCw== + dependencies: + "@sentry-internal/replay" "8.54.0" + "@sentry/core" "8.54.0" + +"@sentry-internal/replay@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/replay/-/replay-8.54.0.tgz#b92990a51ffbe8d92998ff8188db9e3a6f9d1e18" + integrity sha512-8xuBe06IaYIGJec53wUC12tY2q4z2Z0RPS2s1sLtbA00EvK1YDGuXp96IDD+HB9mnDMrQ/jW5f97g9TvPsPQUg== + dependencies: + "@sentry-internal/browser-utils" "8.54.0" + "@sentry/core" "8.54.0" + +"@sentry/babel-plugin-component-annotate@3.5.0": + version "3.5.0" + resolved "https://registry.yarnpkg.com/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-3.5.0.tgz#1b0d01f903b725da876117d551610085c3dd21c7" + integrity sha512-s2go8w03CDHbF9luFGtBHKJp4cSpsQzNVqgIa9Pfa4wnjipvrK6CxVT4icpLA3YO6kg5u622Yoa5GF3cJdippw== + +"@sentry/browser@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-8.54.0.tgz#5487075908aac564892e689e1b6d233fdb314f5b" + integrity sha512-BgUtvxFHin0fS0CmJVKTLXXZcke0Av729IVfi+2fJ4COX8HO7/HAP02RKaSQGmL2HmvWYTfNZ7529AnUtrM4Rg== + dependencies: + "@sentry-internal/browser-utils" "8.54.0" + "@sentry-internal/feedback" "8.54.0" + "@sentry-internal/replay" "8.54.0" + "@sentry-internal/replay-canvas" "8.54.0" + "@sentry/core" "8.54.0" + +"@sentry/cli-darwin@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-darwin/-/cli-darwin-2.46.0.tgz#e07ff66f03e8cb6e1988b7673ae5dbd6ff957b1d" + integrity sha512-5Ll+e5KAdIk9OYiZO8aifMBRNWmNyPjSqdjaHlBC1Qfh7pE3b1zyzoHlsUazG0bv0sNrSGea8e7kF5wIO1hvyg== + +"@sentry/cli-linux-arm64@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.46.0.tgz#d5b27e5813e7b3add65c9e3dbdd75a8bea4ef324" + integrity sha512-OEJN8yAjI9y5B4telyqzu27Hi3+S4T8VxZCqJz1+z2Mp0Q/MZ622AahVPpcrVq/5bxrnlZR16+lKh8L1QwNFPg== + +"@sentry/cli-linux-arm@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-linux-arm/-/cli-linux-arm-2.46.0.tgz#d2a0f21cd208ef8e844bc5e565b337640d125441" + integrity sha512-WRrLNq/TEX/TNJkGqq6Ad0tGyapd5dwlxtsPbVBrIdryuL1mA7VCBoaHBr3kcwJLsgBHFH0lmkMee2ubNZZdkg== + +"@sentry/cli-linux-i686@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-linux-i686/-/cli-linux-i686-2.46.0.tgz#73368ebe30236c8647caec420f717a7f45410f29" + integrity sha512-xko3/BVa4LX8EmRxVOCipV+PwfcK5Xs8lP6lgF+7NeuAHMNL4DqF6iV9rrN8gkGUHCUI9RXSve37uuZnFy55+Q== + +"@sentry/cli-linux-x64@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-linux-x64/-/cli-linux-x64-2.46.0.tgz#49da3dfd873e0e72abef968e1c213b9397e5d70e" + integrity sha512-hJ1g5UEboYcOuRia96LxjJ0jhnmk8EWLDvlGnXLnYHkwy3ree/L7sNgdp/QsY8Z4j2PGO5f22Va+UDhSjhzlfQ== + +"@sentry/cli-win32-arm64@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-win32-arm64/-/cli-win32-arm64-2.46.0.tgz#4e26b254d5283eb114ac916ac504283a30b2ecdb" + integrity sha512-mN7cpPoCv2VExFRGHt+IoK11yx4pM4ADZQGEso5BAUZ5duViXB2WrAXCLd8DrwMnP0OE978a7N8OtzsFqjkbNA== + +"@sentry/cli-win32-i686@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-win32-i686/-/cli-win32-i686-2.46.0.tgz#72f7c0a611f17b7e5b34e2b47309d165195a8276" + integrity sha512-6F73AUE3lm71BISUO19OmlnkFD5WVe4/wA1YivtLZTc1RU3eUYJLYxhDfaH3P77+ycDppQ2yCgemLRaA4A8mNQ== + +"@sentry/cli-win32-x64@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli-win32-x64/-/cli-win32-x64-2.46.0.tgz#8cfd438ec365b0ee925d9724a24b533b4cb75587" + integrity sha512-yuGVcfepnNL84LGA0GjHzdMIcOzMe0bjPhq/rwPsPN+zu11N+nPR2wV2Bum4U0eQdqYH3iAlMdL5/BEQfuLJww== + +"@sentry/cli@2.46.0": + version "2.46.0" + resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.46.0.tgz#790864874ea04f804053aa85dc94501b2cc321bb" + integrity sha512-nqoPl7UCr446QFkylrsRrUXF51x8Z9dGquyf4jaQU+OzbOJMqclnYEvU6iwbwvaw3tu/2DnoZE/Og+Nq1h63sA== + 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" + optionalDependencies: + "@sentry/cli-darwin" "2.46.0" + "@sentry/cli-linux-arm" "2.46.0" + "@sentry/cli-linux-arm64" "2.46.0" + "@sentry/cli-linux-i686" "2.46.0" + "@sentry/cli-linux-x64" "2.46.0" + "@sentry/cli-win32-arm64" "2.46.0" + "@sentry/cli-win32-i686" "2.46.0" + "@sentry/cli-win32-x64" "2.46.0" + +"@sentry/core@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-8.54.0.tgz#a2ebec965cadcb6de89e116689feeef79d5862a6" + integrity sha512-03bWf+D1j28unOocY/5FDB6bUHtYlm6m6ollVejhg45ZmK9iPjdtxNWbrLsjT1WRym0Tjzowu+A3p+eebYEv0Q== + +"@sentry/react-native@^6.16.1": + version "6.16.1" + resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-6.16.1.tgz#c3a6b8974030ff3f3e72ec12617f15aa94ca85c3" + integrity sha512-T172mEcdd2BmMsHjbRIlRgePz46OoUC2MNrciOSBfsxcy1YdWmMKcmVRiwSEi5CQm9077+4B0aHNsmYqOgufng== + dependencies: + "@sentry/babel-plugin-component-annotate" "3.5.0" + "@sentry/browser" "8.54.0" + "@sentry/cli" "2.46.0" + "@sentry/core" "8.54.0" + "@sentry/react" "8.54.0" + "@sentry/types" "8.54.0" + "@sentry/utils" "8.54.0" + +"@sentry/react@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry/react/-/react-8.54.0.tgz#16cec103b5d5697bdfebacf6e2d35f19699b3ab3" + integrity sha512-42T/fp8snYN19Fy/2P0Mwotu4gcdy+1Lx+uYCNcYP1o7wNGigJ7qb27sW7W34GyCCHjoCCfQgeOqDQsyY8LC9w== + dependencies: + "@sentry/browser" "8.54.0" + "@sentry/core" "8.54.0" + hoist-non-react-statics "^3.3.2" + +"@sentry/types@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-8.54.0.tgz#1d57bb094443081de4e0d8b638e6ebc40f5ddd36" + integrity sha512-wztdtr7dOXQKi0iRvKc8XJhJ7HaAfOv8lGu0yqFOFwBZucO/SHnu87GOPi8mvrTiy1bentQO5l+zXWAaMvG4uw== + dependencies: + "@sentry/core" "8.54.0" + +"@sentry/utils@8.54.0": + version "8.54.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-8.54.0.tgz#5e28e03a249451b4a55200a0787f4e2c59bab2c5" + integrity sha512-JL8UDjrsKxKclTdLXfuHfE7B3KbrAPEYP7tMyN/xiO2vsF6D84fjwYyalO0ZMtuFZE6vpSze8ZOLEh6hLnPYsw== + dependencies: + "@sentry/core" "8.54.0" + "@shopify/flash-list@^2.0.0-rc.10": version "2.0.0-rc.10" resolved "https://registry.yarnpkg.com/@shopify/flash-list/-/flash-list-2.0.0-rc.10.tgz#3786f5292e770d4ed4a5841866ece1e8942e4844" @@ -3771,6 +3918,13 @@ acorn@^8.14.0, acorn@^8.15.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + agent-base@^7.1.2: version "7.1.4" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.4.tgz#e3cd76d4c548ee895d3c3fd8dc1f6c5b9032e7a8" @@ -5921,7 +6075,7 @@ hey-listen@^1.0.8: resolved "https://registry.yarnpkg.com/hey-listen/-/hey-listen-1.0.8.tgz#8e59561ff724908de1aa924ed6ecc84a56a9aa68" integrity sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q== -hoist-non-react-statics@^3.3.0: +hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== @@ -5944,6 +6098,14 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" +https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + https-proxy-agent@^7.0.5: version "7.0.6" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz#da8dfeac7da130b05c2ba4b59c9b6cd66611a6b9" @@ -7633,6 +7795,13 @@ nocache@^3.0.1: resolved "https://registry.yarnpkg.com/nocache/-/nocache-3.0.4.tgz#5b37a56ec6e09fc7d401dceaed2eab40c8bfdf79" integrity sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw== +node-fetch@^2.6.7: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -8101,6 +8270,11 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: ansi-styles "^5.0.0" react-is "^18.0.0" +progress@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + promise@^8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a" @@ -9393,6 +9567,11 @@ toidentifier@1.0.1: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + "trimArguments@https://github.com/fresheneesz/trimArguments/archive/c9c023c9ff1e0aec4b67370a80a92dacadcf8b11.tar.gz": version "1.0.1" resolved "https://github.com/fresheneesz/trimArguments/archive/c9c023c9ff1e0aec4b67370a80a92dacadcf8b11.tar.gz#c4d002edfcf799bdc993170f1f809f79e3257386" @@ -9677,6 +9856,11 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + webidl-conversions@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" @@ -9696,6 +9880,14 @@ whatwg-url-without-unicode@8.0.0-3: punycode "^2.1.1" webidl-conversions "^5.0.0" +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" @@ -9754,7 +9946,7 @@ which-typed-array@^1.1.16, which-typed-array@^1.1.19: gopd "^1.2.0" has-tostringtag "^1.0.2" -which@^2.0.1: +which@^2.0.1, which@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==