mirror of
https://github.com/Jellify-Music/App.git
synced 2026-01-06 02:50:30 -06:00
player context selector
This commit is contained in:
5
App.tsx
5
App.tsx
@@ -60,11 +60,8 @@ export default function App(): React.JSX.Element {
|
||||
TrackPlayer.updateOptions({
|
||||
capabilities: CAPABILITIES,
|
||||
notificationCapabilities: CAPABILITIES,
|
||||
compactCapabilities: CAPABILITIES,
|
||||
// Reduced interval for smoother progress tracking and earlier prefetch detection
|
||||
progressUpdateEventInterval: 5,
|
||||
// Enable gapless playback
|
||||
alwaysPauseOnInterruption: false,
|
||||
progressUpdateEventInterval: 8,
|
||||
}),
|
||||
)
|
||||
.finally(() => {
|
||||
|
||||
@@ -1999,6 +1999,7 @@ PODS:
|
||||
- ReactCommon/turbomodule/core
|
||||
- SocketRocket
|
||||
- SwiftAudioEx (= 1.1.0)
|
||||
- Yoga
|
||||
- React-NativeModulesApple (0.81.0):
|
||||
- boost
|
||||
- DoubleConversion
|
||||
@@ -2776,7 +2777,7 @@ PODS:
|
||||
- ReactCommon/turbomodule/core
|
||||
- SocketRocket
|
||||
- Yoga
|
||||
- RNSentry (6.18.1):
|
||||
- RNSentry (6.17.0):
|
||||
- boost
|
||||
- DoubleConversion
|
||||
- fast_float
|
||||
@@ -2803,7 +2804,7 @@ PODS:
|
||||
- ReactCodegen
|
||||
- ReactCommon/turbomodule/bridging
|
||||
- ReactCommon/turbomodule/core
|
||||
- Sentry/HybridSDK (= 8.53.2)
|
||||
- Sentry/HybridSDK (= 8.53.1)
|
||||
- SocketRocket
|
||||
- Yoga
|
||||
- RNVectorIcons (10.2.0):
|
||||
@@ -2926,7 +2927,7 @@ PODS:
|
||||
- SDWebImageWebPCoder (0.8.5):
|
||||
- libwebp (~> 1.0)
|
||||
- SDWebImage/Core (~> 5.10)
|
||||
- Sentry/HybridSDK (8.53.2)
|
||||
- Sentry/HybridSDK (8.53.1)
|
||||
- SocketRocket (0.7.1)
|
||||
- SSZipArchive (2.4.3)
|
||||
- SwiftAudioEx (1.1.0)
|
||||
@@ -3291,7 +3292,7 @@ SPEC CHECKSUMS:
|
||||
react-native-ota-hot-update: 5c8fe703c7a789f6de651030e4740923c77fc610
|
||||
react-native-pager-view: 0b0b445d3cb9f8e9972842edf6ddf892b46bdc55
|
||||
react-native-safe-area-context: a72764e0eb5d6b79b7450e5d0ae919eb1a4567b4
|
||||
react-native-track-player: 6dc2e2633265704b8ab6d8124b80239d4ed1f911
|
||||
react-native-track-player: 89d8e641c83a89bea5dee43c381be743282553e9
|
||||
React-NativeModulesApple: b3766e1f87b08064ebc459b9e1538da2447ca874
|
||||
React-oscompat: 34f3d3c06cadcbc470bc4509c717fb9b919eaa8b
|
||||
React-perflogger: a1edb025fd5d44f61bf09307e248f7608d7b2dcf
|
||||
@@ -3337,7 +3338,7 @@ SPEC CHECKSUMS:
|
||||
RNWorklets: e8335dff9d27004709f58316985769040cd1e8f2
|
||||
SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d
|
||||
SDWebImageWebPCoder: 908b83b6adda48effe7667cd2b7f78c897e5111d
|
||||
Sentry: 59993bffde4a1ac297ba6d268dc4bbce068d7c1b
|
||||
Sentry: 1e4e974d45f09d153af4b30b42acfb1c79e957d3
|
||||
SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748
|
||||
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
|
||||
SwiftAudioEx: f6aa653770f3a0d3851edaf8d834a30aee4a7646
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
"@react-navigation/material-top-tabs": "^7.3.6",
|
||||
"@react-navigation/native": "^7.1.17",
|
||||
"@react-navigation/native-stack": "^7.3.25",
|
||||
"@sentry/react-native": "6.18.1",
|
||||
"@sentry/react-native": "6.17.0",
|
||||
"@shopify/flash-list": "^2.0.2",
|
||||
"@tamagui/config": "^1.132.18",
|
||||
"@tanstack/query-async-storage-persister": "^5.83.1",
|
||||
|
||||
@@ -36,10 +36,7 @@ export const Miniplayer = React.memo(function Miniplayer({
|
||||
const nowPlaying = useNowPlayingContext()
|
||||
const useSkip = useSkipContext()
|
||||
const usePrevious = usePreviousContext()
|
||||
// Get progress from the track player with the specified update interval
|
||||
const progress = useProgress(UPDATE_INTERVAL)
|
||||
|
||||
const { width } = useWindowDimensions()
|
||||
const translateX = useSharedValue(0)
|
||||
const translateY = useSharedValue(0)
|
||||
|
||||
@@ -92,17 +89,7 @@ export const Miniplayer = React.memo(function Miniplayer({
|
||||
<>
|
||||
<GestureDetector gesture={gesture}>
|
||||
<YStack>
|
||||
<Progress
|
||||
size={'$1'}
|
||||
value={calculateProgressPercentage(progress)}
|
||||
backgroundColor={'$borderColor'}
|
||||
borderRadius={0}
|
||||
>
|
||||
<Progress.Indicator
|
||||
borderColor={'$primary'}
|
||||
backgroundColor={'$primary'}
|
||||
/>
|
||||
</Progress>
|
||||
<MiniPlayerProgress />
|
||||
|
||||
<XStack
|
||||
alignItems='flex-start'
|
||||
@@ -148,46 +135,23 @@ export const Miniplayer = React.memo(function Miniplayer({
|
||||
</YStack>
|
||||
|
||||
<YStack alignContent='flex-start' marginLeft={'$2'} flex={6}>
|
||||
<XStack gap={'$1'} justifyContent='flex-start' height={'$1'}>
|
||||
<YStack
|
||||
justifyContent='center'
|
||||
marginRight={'$2'}
|
||||
paddingRight={'auto'}
|
||||
>
|
||||
<RunTimeSeconds alignment='left'>
|
||||
{Math.max(0, Math.floor(progress?.position ?? 0))}
|
||||
</RunTimeSeconds>
|
||||
</YStack>
|
||||
<MiniPlayerRuntime />
|
||||
|
||||
<Text color={'$neutral'} textAlign='center'>
|
||||
/
|
||||
</Text>
|
||||
{
|
||||
<View width={'100%'}>
|
||||
<TextTicker {...TextTickerConfig}>
|
||||
<Text bold width={'100%'}>
|
||||
{nowPlaying?.title ?? 'Nothing Playing'}
|
||||
</Text>
|
||||
</TextTicker>
|
||||
|
||||
<YStack justifyContent='center' marginLeft={'$2'}>
|
||||
<RunTimeSeconds color={'$neutral'} alignment='right'>
|
||||
{Math.max(0, Math.floor(progress?.duration ?? 0))}
|
||||
</RunTimeSeconds>
|
||||
</YStack>
|
||||
</XStack>
|
||||
|
||||
{useMemo(
|
||||
() => (
|
||||
<View width={'100%'}>
|
||||
<TextTicker {...TextTickerConfig}>
|
||||
<Text bold width={'100%'}>
|
||||
{nowPlaying?.title ?? 'Nothing Playing'}
|
||||
</Text>
|
||||
</TextTicker>
|
||||
|
||||
<TextTicker {...TextTickerConfig}>
|
||||
<Text height={'$0.5'} width={'100%'}>
|
||||
{nowPlaying?.artist ?? ''}
|
||||
</Text>
|
||||
</TextTicker>
|
||||
</View>
|
||||
),
|
||||
[nowPlaying],
|
||||
)}
|
||||
<TextTicker {...TextTickerConfig}>
|
||||
<Text height={'$0.5'} width={'100%'}>
|
||||
{nowPlaying?.artist ?? ''}
|
||||
</Text>
|
||||
</TextTicker>
|
||||
</View>
|
||||
}
|
||||
</YStack>
|
||||
|
||||
<XStack
|
||||
@@ -208,6 +172,45 @@ export const Miniplayer = React.memo(function Miniplayer({
|
||||
)
|
||||
})
|
||||
|
||||
function MiniPlayerRuntime(): React.JSX.Element {
|
||||
const progress = useProgress(UPDATE_INTERVAL)
|
||||
|
||||
return (
|
||||
<XStack gap={'$1'} justifyContent='flex-start' height={'$1'}>
|
||||
<YStack justifyContent='center' marginRight={'$2'} paddingRight={'auto'}>
|
||||
<RunTimeSeconds alignment='left'>
|
||||
{Math.max(0, Math.floor(progress?.position ?? 0))}
|
||||
</RunTimeSeconds>
|
||||
</YStack>
|
||||
|
||||
<Text color={'$neutral'} textAlign='center'>
|
||||
/
|
||||
</Text>
|
||||
|
||||
<YStack justifyContent='center' marginLeft={'$2'}>
|
||||
<RunTimeSeconds color={'$neutral'} alignment='right'>
|
||||
{Math.max(0, Math.floor(progress?.duration ?? 0))}
|
||||
</RunTimeSeconds>
|
||||
</YStack>
|
||||
</XStack>
|
||||
)
|
||||
}
|
||||
|
||||
function MiniPlayerProgress(): React.JSX.Element {
|
||||
const progress = useProgress(UPDATE_INTERVAL)
|
||||
|
||||
return (
|
||||
<Progress
|
||||
size={'$1'}
|
||||
value={calculateProgressPercentage(progress)}
|
||||
backgroundColor={'$borderColor'}
|
||||
borderRadius={0}
|
||||
>
|
||||
<Progress.Indicator borderColor={'$primary'} backgroundColor={'$primary'} />
|
||||
</Progress>
|
||||
)
|
||||
}
|
||||
|
||||
function calculateProgressPercentage(progress: TrackPlayerProgress | undefined): number {
|
||||
return Math.round(
|
||||
((progress!.position * ProgressMultiplier) / (progress!.duration * ProgressMultiplier)) *
|
||||
|
||||
@@ -8,7 +8,7 @@ import PlayliistTracklistHeader from './components/header'
|
||||
import { usePlaylistContext } from '../../providers/Playlist'
|
||||
import { useAnimatedScrollHandler } from 'react-native-reanimated'
|
||||
import AnimatedDraggableFlatList from '../Global/components/animated-draggable-flat-list'
|
||||
import { useEffect } from 'react'
|
||||
|
||||
export default function Playlist({
|
||||
playlist,
|
||||
navigation,
|
||||
@@ -32,10 +32,6 @@ export default function Playlist({
|
||||
},
|
||||
})
|
||||
|
||||
useEffect(() => {
|
||||
console.debug(`canEdit: ${canEdit}`)
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<AnimatedDraggableFlatList
|
||||
refreshControl={<RefreshControl refreshing={isPending} onRefresh={refetch} />}
|
||||
|
||||
@@ -21,9 +21,9 @@ export const queryClient = new QueryClient({
|
||||
gcTime: Infinity,
|
||||
|
||||
/**
|
||||
* 2 hours as a default.
|
||||
* 24 hours as a default.
|
||||
*/
|
||||
staleTime: 1000 * 60 * 60 * 2, // 2 hours
|
||||
staleTime: 1000 * 60 * 60 * 24, // 24 hours
|
||||
retry(failureCount, error) {
|
||||
if (failureCount > 2) return false
|
||||
|
||||
|
||||
@@ -460,7 +460,6 @@ const PlayerContextInitializer = () => {
|
||||
useTrackPlayerEvents([Event.PlaybackProgressUpdated], (event) => {
|
||||
switch (event.type) {
|
||||
case Event.PlaybackProgressUpdated: {
|
||||
console.debug('Playback progress updated')
|
||||
usePlaybackProgressUpdated.mutate(event)
|
||||
|
||||
// Cache playing track at 20 seconds if it's not already downloaded
|
||||
|
||||
@@ -27,6 +27,8 @@ const MIN_REDUCTION_DB = -10
|
||||
export default function calculateTrackVolume(track: JellifyTrack): number {
|
||||
const { NormalizationGain } = track.item
|
||||
|
||||
console.debug('Normalization gain for track', NormalizationGain)
|
||||
|
||||
/**
|
||||
* If the track has no normalization gain, return 1 to play the track
|
||||
* at the full module volume.
|
||||
|
||||
@@ -56,6 +56,7 @@ const PlaylistContextInitializer = (playlist: BaseItemDto) => {
|
||||
return response.data.Items ? response.data.Items! : []
|
||||
})
|
||||
},
|
||||
staleTime: 1000 * 60 * 60 * 2, // 2 hours, since these are mutable
|
||||
})
|
||||
|
||||
const useUpdatePlaylist = useMutation({
|
||||
|
||||
@@ -37,8 +37,7 @@ export default function Root(): React.JSX.Element {
|
||||
component={Player}
|
||||
options={{
|
||||
headerShown: false,
|
||||
presentation: 'formSheet',
|
||||
sheetAllowedDetents: [1.0],
|
||||
presentation: 'modal',
|
||||
}}
|
||||
/>
|
||||
<RootStack.Screen
|
||||
|
||||
224
yarn.lock
224
yarn.lock
@@ -1152,7 +1152,7 @@
|
||||
minimatch "^3.1.2"
|
||||
strip-json-comments "^3.1.1"
|
||||
|
||||
"@eslint/js@9.33.0", "@eslint/js@^9.33.0":
|
||||
"@eslint/js@9.33.0", "@eslint/js@^9.32.0":
|
||||
version "9.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.33.0.tgz#475c92fdddab59b8b8cab960e3de2564a44bf368"
|
||||
integrity sha512-5K1/mKhWaMfreBGJTwval43JJmkip0RmM+3+IuqupeSKNC/Th2Kc7ucaq5ovTSra/OOKB9c58CGSz3QMVbWt0A==
|
||||
@@ -2164,96 +2164,96 @@
|
||||
resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8"
|
||||
integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==
|
||||
|
||||
"@sentry-internal/browser-utils@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-8.55.0.tgz#d89bae423edd29c39f01285c8e2d59ce9289d9a6"
|
||||
integrity sha512-ROgqtQfpH/82AQIpESPqPQe0UyWywKJsmVIqi3c5Fh+zkds5LUxnssTj3yNd1x+kxaPDVB023jAP+3ibNgeNDw==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
|
||||
"@sentry-internal/feedback@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry-internal/feedback/-/feedback-8.55.0.tgz#170b8e96a36ce6f71f53daad680f1a0c98381314"
|
||||
integrity sha512-cP3BD/Q6pquVQ+YL+rwCnorKuTXiS9KXW8HNKu4nmmBAyf7urjs+F6Hr1k9MXP5yQ8W3yK7jRWd09Yu6DHWOiw==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
|
||||
"@sentry-internal/replay-canvas@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry-internal/replay-canvas/-/replay-canvas-8.55.0.tgz#e65430207a2f18e4a07c25c669ec758d11282aaf"
|
||||
integrity sha512-nIkfgRWk1091zHdu4NbocQsxZF1rv1f7bbp3tTIlZYbrH62XVZosx5iHAuZG0Zc48AETLE7K4AX9VGjvQj8i9w==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.55.0"
|
||||
"@sentry-internal/replay" "8.54.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
|
||||
"@sentry-internal/replay@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry-internal/replay/-/replay-8.55.0.tgz#4c00b22cdf58cac5b3e537f8d4f675f2b021f475"
|
||||
integrity sha512-roCDEGkORwolxBn8xAKedybY+Jlefq3xYmgN2fr3BTnsXjSYOPC7D1/mYqINBat99nDtvgFvNfRcZPiwwZ1hSw==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.55.0"
|
||||
"@sentry-internal/browser-utils" "8.54.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
|
||||
"@sentry/babel-plugin-component-annotate@3.6.1":
|
||||
version "3.6.1"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-3.6.1.tgz#8ab982627f9c2ce4487af4a1b99e0f2eac62e24e"
|
||||
integrity sha512-zmvUa4RpzDG3LQJFpGCE8lniz8Rk1Wa6ZvvK+yEH+snZeaHHRbSnAQBMR607GOClP+euGHNO2YtaY4UAdNTYbg==
|
||||
"@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.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-8.55.0.tgz#9a489e2a54d29c65e6271b4ee594b43679cab7bd"
|
||||
integrity sha512-1A31mCEWCjaMxJt6qGUK+aDnLDcK6AwLAZnqpSchNysGni1pSn1RWSmk9TBF8qyTds5FH8B31H480uxMPUJ7Cw==
|
||||
"@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.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.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.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-darwin/-/cli-darwin-2.50.0.tgz#0fec0ece84afe37b33464ccd514367fc95d507f3"
|
||||
integrity sha512-Aj+cLBZ0dCw+pdUxvJ1U71PnKh2YjvpzLN9h1ZTe8UI3FqmkKkSH/J8mN/5qmR7qUHjDcm2l+wfgVUaaP8CWbA==
|
||||
"@sentry/cli-darwin@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-darwin/-/cli-darwin-2.47.0.tgz#171d4ed94a035b35e7cba21e133351fa1d8a5664"
|
||||
integrity sha512-xEFppdMQogV1A85A/s+Al1VH0NHXk7syy+5BL/jYd168FPeVB3iERP0AwP4h9UhR3/wTe1lTb+tfOKpXrECLCw==
|
||||
|
||||
"@sentry/cli-linux-arm64@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.50.0.tgz#bbafacf82766d45ff05434cd7cabbda7005d1efd"
|
||||
integrity sha512-p6hIh4Bb87qBfEz9w5dxEPAohIKcw68qoy5VUTx+cCanO8uXNWWsT78xtUNFRscW9zc6MxQMSITTWaCEIKvxRA==
|
||||
"@sentry/cli-linux-arm64@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.47.0.tgz#9802fe08164217483926ce8a1becf45f740fea20"
|
||||
integrity sha512-qjF87W0Vo5vITbm4GXjtX8uQCDRg2gVT0yP1Uz12IuBri80iJj66IANX1wbae2mG2Io1Ibc4AKN5FWd2HpPiKw==
|
||||
|
||||
"@sentry/cli-linux-arm@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-arm/-/cli-linux-arm-2.50.0.tgz#e1fed09b94c508db9de5353d8305828b0a3551e9"
|
||||
integrity sha512-SGPAFwOY2of2C+RUBJcxMN2JXikVFEk8ypYOsQTEvV/48cLejcO/O2mHIj/YKgIkrfn3t7LlqdK6g75lkz+F8Q==
|
||||
"@sentry/cli-linux-arm@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-arm/-/cli-linux-arm-2.47.0.tgz#32221dcfe46024babf43d846a1e2d05a57b153a8"
|
||||
integrity sha512-tE8gDcp2qFCTtndz1ViLAo+JNQEEjniBFJAWIFh1utJKwBxBStB0JDporOZHvWUcnSCP5F+W59iuir2YAAQh/w==
|
||||
|
||||
"@sentry/cli-linux-i686@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-i686/-/cli-linux-i686-2.50.0.tgz#95f0eb65bdde4c33e492830ae4ac207b60494f8e"
|
||||
integrity sha512-umhGmbiCUG7MvjTm8lXFmFxQjyTVtYakilBwPTVzRELmNKxxhfKRxwSSA+hUKetAUzNd8fJx8K7yqdw+qRA7Pg==
|
||||
"@sentry/cli-linux-i686@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-i686/-/cli-linux-i686-2.47.0.tgz#e551e813e8060de161d6058664e252c952f22291"
|
||||
integrity sha512-5FYe1dth06xThbr41AOvX67oKZr4xqtDwHJvpFdyCdf+Yh5E5/rtPX35K1beMERgVyT+whRetrNBFAcHnp6LaA==
|
||||
|
||||
"@sentry/cli-linux-x64@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-x64/-/cli-linux-x64-2.50.0.tgz#5266b6b8660e6b72688331b7c702e9d1ca6413ed"
|
||||
integrity sha512-ugIIx9+wUmguxOUe9ZVacvdCffZwqtFSKwpJ06Nqes0XfL4ZER4Qlq3/miCZ8m150C4xK5ym/QCwB41ffBqI4g==
|
||||
"@sentry/cli-linux-x64@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-linux-x64/-/cli-linux-x64-2.47.0.tgz#56c257e4df8466709fb80ec21e1b5350ee713464"
|
||||
integrity sha512-wq67T2UpbTst//1lZGDTeFa7nKsnOpP8rS34TQ3GxsGU1LOjinl9zYl0mUPsoVXIHbWxTHlU6YDNf0q0eB7ddA==
|
||||
|
||||
"@sentry/cli-win32-arm64@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-arm64/-/cli-win32-arm64-2.50.0.tgz#663d75fea42b853940c6faacf7ee76a16b449654"
|
||||
integrity sha512-fMyBSKLrVHY9944t8oTpul+6osyQeuN8GGGP3diDxGQpynYL+vhcHZIpXFRH398+3kedG/IFoY7EwGgIEqWzmw==
|
||||
"@sentry/cli-win32-arm64@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-arm64/-/cli-win32-arm64-2.47.0.tgz#ce7914253f15160373e856e48738932f03adef41"
|
||||
integrity sha512-a1sv44bMe35V9eW9Zk/kYymXswzJ/RHXNRjkFnW1m1iXx6NauQD3sjEgkryu3UmuvKO9g3pBkMMT1u6xB/08QA==
|
||||
|
||||
"@sentry/cli-win32-i686@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-i686/-/cli-win32-i686-2.50.0.tgz#96813ca970f35a839d7f817534ac556bc1df1567"
|
||||
integrity sha512-VbC+l2Y2kB7Lsun2c8t7ZGwmljmXnyncZLW9PjdEyJSTAJ9GnEnSvyFSPXNLV/eHJnfQffzU7QTjU8vkQ7XMYg==
|
||||
"@sentry/cli-win32-i686@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-i686/-/cli-win32-i686-2.47.0.tgz#c6414696b7031a590520b01e8a062e0fe71874be"
|
||||
integrity sha512-QKLSCED00jNHC4cu9GutLWaFAy5vdVGDrIPvVdztSFLS2fRMhRSSPE8tJwlSYh2OfdHhUHQbMOo58cDVfEklBg==
|
||||
|
||||
"@sentry/cli-win32-x64@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-x64/-/cli-win32-x64-2.50.0.tgz#9f644efed8cb75943078a0ca4e414fa21dda6280"
|
||||
integrity sha512-nMktyF93NtQUOViAAKHpHSWACOGjOkKjiewi4pD6W3sWllFiPPyt15XoyApqWwnICDRQu2DI5vnil4ck6/k7mw==
|
||||
"@sentry/cli-win32-x64@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli-win32-x64/-/cli-win32-x64-2.47.0.tgz#96ceaf75a9ffb39fd255f11fa2b85f4e7e26b591"
|
||||
integrity sha512-XcM+I7eWpSp8khy44djunVvQKSMsBP698j0swA41Pd1JL0mxLFV/4P9wfWZw1RRB8R71jks74kZvM45AAh2FZw==
|
||||
|
||||
"@sentry/cli@2.50.0":
|
||||
version "2.50.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.50.0.tgz#7e2298bea9a2bb50126bfb24116ae98199bc1f6f"
|
||||
integrity sha512-OHRRQPUNjBpzOT6arNhxXQ71DKs5jSziCfDzmEGwAs+K8J/I1QxnvJkto88HbXE54oiWhSEJwL0pvcowFXyVbA==
|
||||
"@sentry/cli@2.47.0":
|
||||
version "2.47.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.47.0.tgz#d9a3309d281d03e23651a68e81fbd04c60f52bfe"
|
||||
integrity sha512-M1zAbc74rGqcWXPi4vowNY7plADjsvKVEZhyUcSq+K3JtZOQ1m1QJgSno31hLbK9V4sx4qyDesNEcBtUjof07w==
|
||||
dependencies:
|
||||
https-proxy-agent "^5.0.0"
|
||||
node-fetch "^2.6.7"
|
||||
@@ -2261,55 +2261,55 @@
|
||||
proxy-from-env "^1.1.0"
|
||||
which "^2.0.2"
|
||||
optionalDependencies:
|
||||
"@sentry/cli-darwin" "2.50.0"
|
||||
"@sentry/cli-linux-arm" "2.50.0"
|
||||
"@sentry/cli-linux-arm64" "2.50.0"
|
||||
"@sentry/cli-linux-i686" "2.50.0"
|
||||
"@sentry/cli-linux-x64" "2.50.0"
|
||||
"@sentry/cli-win32-arm64" "2.50.0"
|
||||
"@sentry/cli-win32-i686" "2.50.0"
|
||||
"@sentry/cli-win32-x64" "2.50.0"
|
||||
"@sentry/cli-darwin" "2.47.0"
|
||||
"@sentry/cli-linux-arm" "2.47.0"
|
||||
"@sentry/cli-linux-arm64" "2.47.0"
|
||||
"@sentry/cli-linux-i686" "2.47.0"
|
||||
"@sentry/cli-linux-x64" "2.47.0"
|
||||
"@sentry/cli-win32-arm64" "2.47.0"
|
||||
"@sentry/cli-win32-i686" "2.47.0"
|
||||
"@sentry/cli-win32-x64" "2.47.0"
|
||||
|
||||
"@sentry/core@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/core/-/core-8.55.0.tgz#4964920229fcf649237ef13b1533dfc4b9f6b22e"
|
||||
integrity sha512-6g7jpbefjHYs821Z+EBJ8r4Z7LT5h80YSWRJaylGS4nW5W5Z2KXzpdnyFarv37O7QjauzVC2E+PABmpkw5/JGA==
|
||||
"@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.18.1":
|
||||
version "6.18.1"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-6.18.1.tgz#1addd471d39a160b3c4be81106e3591aa3b679c1"
|
||||
integrity sha512-263Vt51TJ7dEA/zttn2bGv2YAerDEd/KAl/D/YQi5yFRfHFBOp47H3piZbV4v0HE22Ex6yCZQiRgrOjeNmEIhw==
|
||||
"@sentry/react-native@6.17.0":
|
||||
version "6.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-6.17.0.tgz#d897af3861251ced6ca0f60d015e1806b4ec575d"
|
||||
integrity sha512-R8cQHE5wtespva5tYtBc620xI1+w5dI53fotdzX+ONxHs5G31Da9O1OwYLH9hh2WouIf4dDXfBSmnKoVXL79+Q==
|
||||
dependencies:
|
||||
"@sentry/babel-plugin-component-annotate" "3.6.1"
|
||||
"@sentry/browser" "8.55.0"
|
||||
"@sentry/cli" "2.50.0"
|
||||
"@sentry/core" "8.55.0"
|
||||
"@sentry/react" "8.55.0"
|
||||
"@sentry/types" "8.55.0"
|
||||
"@sentry/utils" "8.55.0"
|
||||
"@sentry/babel-plugin-component-annotate" "3.5.0"
|
||||
"@sentry/browser" "8.54.0"
|
||||
"@sentry/cli" "2.47.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
"@sentry/react" "8.54.0"
|
||||
"@sentry/types" "8.54.0"
|
||||
"@sentry/utils" "8.54.0"
|
||||
|
||||
"@sentry/react@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/react/-/react-8.55.0.tgz#309f005837956a98e79275ef8c2c2b5952c8be93"
|
||||
integrity sha512-/qNBvFLpvSa/Rmia0jpKfJdy16d4YZaAnH/TuKLAtm0BWlsPQzbXCU4h8C5Hsst0Do0zG613MEtEmWpWrVOqWA==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.55.0"
|
||||
"@sentry/browser" "8.54.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
hoist-non-react-statics "^3.3.2"
|
||||
|
||||
"@sentry/types@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/types/-/types-8.55.0.tgz#af157791277c09debaca278c02522bd5bd548c32"
|
||||
integrity sha512-6LRT0+r6NWQ+RtllrUW2yQfodST0cJnkOmdpHA75vONgBUhpKwiJ4H7AmgfoTET8w29pU6AnntaGOe0LJbOmog==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
|
||||
"@sentry/utils@8.55.0":
|
||||
version "8.55.0"
|
||||
resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-8.55.0.tgz#6d575a68f4c37a7b45aa808a842693c12108c190"
|
||||
integrity sha512-cYcl39+xcOivBpN9d8ZKbALl+DxZKo/8H0nueJZ0PO4JA+MJGhSm6oHakXxLPaiMoNLTX7yor8ndnQIuFg+vmQ==
|
||||
"@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.55.0"
|
||||
"@sentry/core" "8.54.0"
|
||||
|
||||
"@shopify/flash-list@^2.0.2":
|
||||
version "2.0.2"
|
||||
@@ -3560,7 +3560,7 @@
|
||||
dependencies:
|
||||
csstype "^3.0.2"
|
||||
|
||||
"@types/react@^19.1.10":
|
||||
"@types/react@^19.1.9":
|
||||
version "19.1.10"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-19.1.10.tgz#a05015952ef328e1b85579c839a71304b07d21d9"
|
||||
integrity sha512-EhBeSYX0Y6ye8pNebpKrwFJq7BoQ8J5SO6NlvNwwHjSj6adXJViPQrKlsyPw7hLBLvckEMO1yxeGdR82YBBlDg==
|
||||
|
||||
Reference in New Issue
Block a user