mirror of
https://github.com/anultravioletaurora/Jellify.git
synced 2025-12-30 02:09:41 -06:00
Stuck in Info Tab in Settings, Update Deps (#571)
update deps (nitro-modules, screens, navigation) fix issue where going to the info tab of the app settings would lock the user in place
This commit is contained in:
@@ -12,7 +12,7 @@ PODS:
|
||||
- hermes-engine (0.82.1):
|
||||
- hermes-engine/Pre-built (= 0.82.1)
|
||||
- hermes-engine/Pre-built (0.82.1)
|
||||
- NitroImage (0.6.1):
|
||||
- NitroImage (0.8.1):
|
||||
- boost
|
||||
- DoubleConversion
|
||||
- fast_float
|
||||
@@ -42,7 +42,7 @@ PODS:
|
||||
- ReactCommon/turbomodule/core
|
||||
- SocketRocket
|
||||
- Yoga
|
||||
- NitroModules (0.30.2):
|
||||
- NitroModules (0.31.1):
|
||||
- boost
|
||||
- DoubleConversion
|
||||
- fast_float
|
||||
@@ -2931,7 +2931,7 @@ PODS:
|
||||
- RNWorklets
|
||||
- SocketRocket
|
||||
- Yoga
|
||||
- RNScreens (4.17.1):
|
||||
- RNScreens (4.18.0):
|
||||
- boost
|
||||
- DoubleConversion
|
||||
- fast_float
|
||||
@@ -2958,10 +2958,10 @@ PODS:
|
||||
- ReactCodegen
|
||||
- ReactCommon/turbomodule/bridging
|
||||
- ReactCommon/turbomodule/core
|
||||
- RNScreens/common (= 4.17.1)
|
||||
- RNScreens/common (= 4.18.0)
|
||||
- SocketRocket
|
||||
- Yoga
|
||||
- RNScreens/common (4.17.1):
|
||||
- RNScreens/common (4.18.0):
|
||||
- boost
|
||||
- DoubleConversion
|
||||
- fast_float
|
||||
@@ -3453,8 +3453,8 @@ SPEC CHECKSUMS:
|
||||
glog: 5683914934d5b6e4240e497e0f4a3b42d1854183
|
||||
google-cast-sdk: 1fb6724e94cc5ff23b359176e0cf6360586bb97a
|
||||
hermes-engine: 273e30e7fb618279934b0b95ffab60ecedb7acf5
|
||||
NitroImage: f2d14e6531629630904d8ceb4037459d6057440a
|
||||
NitroModules: 72acdf761541be4f8bbb3f0cdca41ae23ce13c50
|
||||
NitroImage: 76da8995cc5476111ac5069300a3ec5de0f65e9b
|
||||
NitroModules: 0ba3a58906a86566ea83abc016f8692374c19761
|
||||
NitroOta: b2adec40232e3da0cc9eeaa3f7e1ec67313b1f17
|
||||
NitroOtaBundleManager: 09eeec5c1d7e33b868b2374ce64613f23ad348cd
|
||||
NitroWebImage: 04de36dd513d350fe3d4d3a9279a95817c1a39f1
|
||||
@@ -3545,7 +3545,7 @@ SPEC CHECKSUMS:
|
||||
RNGestureHandler: f1dd7f92a0faa2868a919ab53bb9d66eb4ebfcf5
|
||||
RNReactNativeHapticFeedback: be4f1b4bf0398c30b59b76ed92ecb0a2ff3a69c6
|
||||
RNReanimated: 732e7d1662f8cc0e533fa32791800de5b5934726
|
||||
RNScreens: 833237c48c756d40764540246a501b47dadb2cac
|
||||
RNScreens: d821082c6dd1cb397cc0c98b026eeafaa68be479
|
||||
RNSentry: 60919c9cdac7e4b35e9f5dd0149f551ec12f35cb
|
||||
RNWorklets: ab618bf7d1c7fd2cb793b9f0f39c3e29274b3ebf
|
||||
SDWebImage: 9f177d83116802728e122410fb25ad88f5c7608a
|
||||
|
||||
18
package.json
18
package.json
@@ -40,13 +40,13 @@
|
||||
"@react-native-community/netinfo": "^11.4.1",
|
||||
"@react-native-masked-view/masked-view": "^0.3.2",
|
||||
"@react-native-vector-icons/material-design-icons": "^12.3.0",
|
||||
"@react-navigation/bottom-tabs": "^7.4.9",
|
||||
"@react-navigation/material-top-tabs": "^7.3.8",
|
||||
"@react-navigation/native": "^7.1.18",
|
||||
"@react-navigation/native-stack": "^7.3.28",
|
||||
"@react-navigation/bottom-tabs": "7.5.0",
|
||||
"@react-navigation/material-top-tabs": "7.3.9",
|
||||
"@react-navigation/native": "7.1.18",
|
||||
"@react-navigation/native-stack": "7.5.0",
|
||||
"@sentry/react-native": "7.1.0",
|
||||
"@shopify/flash-list": "^2.1.0",
|
||||
"@tamagui/config": "1.135.0",
|
||||
"@tamagui/config": "1.135.4",
|
||||
"@tanstack/query-async-storage-persister": "5.89.0",
|
||||
"@tanstack/react-query": "5.89.0",
|
||||
"@tanstack/react-query-persist-client": "5.89.0",
|
||||
@@ -76,15 +76,15 @@
|
||||
"react-native-haptic-feedback": "^2.3.3",
|
||||
"react-native-linear-gradient": "^2.8.3",
|
||||
"react-native-mmkv": "3.3.3",
|
||||
"react-native-nitro-image": "^0.6.1",
|
||||
"react-native-nitro-modules": "^0.30.2",
|
||||
"react-native-nitro-image": "^0.8.1",
|
||||
"react-native-nitro-modules": "^0.31.1",
|
||||
"react-native-nitro-ota": "^0.2.3",
|
||||
"react-native-nitro-web-image": "^0.6.1",
|
||||
"react-native-ota-hot-update": "2.3.1",
|
||||
"react-native-pager-view": "^6.9.1",
|
||||
"react-native-reanimated": "4.1.3",
|
||||
"react-native-safe-area-context": "^5.6.1",
|
||||
"react-native-screens": "4.17.1",
|
||||
"react-native-screens": "4.18.0",
|
||||
"react-native-swipeable-item": "^2.0.9",
|
||||
"react-native-text-ticker": "^1.15.0",
|
||||
"react-native-toast-message": "^2.3.3",
|
||||
@@ -94,7 +94,7 @@
|
||||
"react-native-worklets": "0.6.1",
|
||||
"ruby": "^0.6.1",
|
||||
"scheduler": "^0.26.0",
|
||||
"tamagui": "1.135.0",
|
||||
"tamagui": "1.135.4",
|
||||
"zustand": "^5.0.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/node_modules/react-native-screens/ios/RNSScreen.mm b/node_modules/react-native-screens/ios/RNSScreen.mm
|
||||
index 65c18f1..d6abdd9 100644
|
||||
index 65c18f1..e11b806 100644
|
||||
--- a/node_modules/react-native-screens/ios/RNSScreen.mm
|
||||
+++ b/node_modules/react-native-screens/ios/RNSScreen.mm
|
||||
@@ -928,7 +928,11 @@ - (BOOL)isTransparentModal
|
||||
@@ -10,7 +10,7 @@ index 65c18f1..d6abdd9 100644
|
||||
+ @try {
|
||||
+ [_sheetsScrollView removeObserver:self forKeyPath:@"bounds" context:nil];
|
||||
+ } @catch (NSException *exception) {
|
||||
+ RCTLogWarn(@"[RNScreens] Tried to remove non-registered observer in invalidate: %@", exception);
|
||||
+ RCTLogWarn(@"[RNScreens] Tried to remove observer in invalidate, but it was not registered: %@.", exception);
|
||||
+ }
|
||||
}
|
||||
|
||||
@@ -1,5 +1,128 @@
|
||||
import InfoStack from './info/stack'
|
||||
import { version } from '../../../../package.json'
|
||||
import { Text } from '../../Global/helpers/text'
|
||||
import SettingsListGroup from './settings-list-group'
|
||||
import { Linking } from 'react-native'
|
||||
import { ScrollView, XStack } from 'tamagui'
|
||||
import Icon from '../../Global/components/icon'
|
||||
import usePatrons from '../../../api/queries/patrons'
|
||||
import { useQuery } from '@tanstack/react-query'
|
||||
import INFO_CAPTIONS from '../utils/info-caption'
|
||||
import { ONE_HOUR } from '../../../constants/query-client'
|
||||
import { pickRandomItemFromArray } from '../../../utils/random'
|
||||
import { FlashList } from '@shopify/flash-list'
|
||||
|
||||
export default function InfoTab() {
|
||||
return <InfoStack />
|
||||
const patrons = usePatrons()
|
||||
|
||||
const { data: caption } = useQuery({
|
||||
queryKey: ['Info_Caption'],
|
||||
queryFn: () => `${pickRandomItemFromArray(INFO_CAPTIONS)}`,
|
||||
staleTime: ONE_HOUR,
|
||||
initialData: 'Live and in stereo',
|
||||
})
|
||||
|
||||
return (
|
||||
<ScrollView contentInsetAdjustmentBehavior='automatic'>
|
||||
<SettingsListGroup
|
||||
settingsList={[
|
||||
{
|
||||
title: `Jellify ${version}`,
|
||||
subTitle: caption,
|
||||
iconName: 'jellyfish',
|
||||
iconColor: '$primary',
|
||||
children: (
|
||||
<XStack gap={'$3'} marginTop={'$2'}>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL('https://github.com/Jellify-Music/App')
|
||||
}
|
||||
>
|
||||
<Icon name='code-tags' small color='$borderColor' />
|
||||
<Text>View Source</Text>
|
||||
</XStack>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() => Linking.openURL('https://discord.gg/yf8fBatktn')}
|
||||
>
|
||||
<Icon name='chat' small color='$borderColor' />
|
||||
<Text>Join Discord</Text>
|
||||
</XStack>
|
||||
</XStack>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: 'Caught a bug?',
|
||||
subTitle: "Let's squash it!",
|
||||
iconName: 'bug',
|
||||
iconColor: '$danger',
|
||||
children: (
|
||||
<XStack gap={'$3'} marginTop={'$2'}>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL(
|
||||
'https://github.com/Jellify-Music/App/issues',
|
||||
)
|
||||
}
|
||||
>
|
||||
<Icon name='github' small color='$borderColor' />
|
||||
<Text>Report Issue</Text>
|
||||
</XStack>
|
||||
</XStack>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: 'Powered by listeners like you',
|
||||
subTitle: 'Sponsor on GitHub or Patreon',
|
||||
iconName: 'heart',
|
||||
iconColor: '$secondary',
|
||||
children: (
|
||||
<XStack justifyContent='flex-start' gap={'$4'} marginVertical={'$2'}>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL(
|
||||
'https://github.com/sponsors/anultravioletaurora/',
|
||||
)
|
||||
}
|
||||
>
|
||||
<Icon name='github' small color='$borderColor' />
|
||||
<Text>Sponsors</Text>
|
||||
</XStack>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL('https://patreon.com/anultravioletaurora')
|
||||
}
|
||||
>
|
||||
<Icon name='patreon' small color='$borderColor' />
|
||||
<Text>Patreon</Text>
|
||||
</XStack>
|
||||
</XStack>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: 'Patreon Wall of Fame',
|
||||
subTitle: 'Thank you to these paid members',
|
||||
iconName: 'patreon',
|
||||
iconColor: '$secondary',
|
||||
children: (
|
||||
<FlashList
|
||||
data={patrons}
|
||||
numColumns={2}
|
||||
renderItem={({ item }) => (
|
||||
<XStack alignItems='flex-start' maxWidth={'$20'}>
|
||||
<Text numberOfLines={1} lineBreakStrategyIOS='standard'>
|
||||
{item.fullName}
|
||||
</Text>
|
||||
</XStack>
|
||||
)}
|
||||
/>
|
||||
),
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</ScrollView>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -1,128 +0,0 @@
|
||||
import { version } from '../../../../../package.json'
|
||||
import { Text } from '../../../Global/helpers/text'
|
||||
import SettingsListGroup from '../settings-list-group'
|
||||
import { FlatList, Linking } from 'react-native'
|
||||
import { ScrollView, Separator, XStack, YStack } from 'tamagui'
|
||||
import Icon from '../../../Global/components/icon'
|
||||
import usePatrons from '../../../../api/queries/patrons'
|
||||
import { useQuery } from '@tanstack/react-query'
|
||||
import INFO_CAPTIONS from '../../utils/info-caption'
|
||||
import { ONE_HOUR } from '../../../../constants/query-client'
|
||||
import { pickRandomItemFromArray } from '../../../../utils/random'
|
||||
import { FlashList } from '@shopify/flash-list'
|
||||
|
||||
export default function InfoTabIndex() {
|
||||
const patrons = usePatrons()
|
||||
|
||||
const { data: caption } = useQuery({
|
||||
queryKey: ['Info_Caption'],
|
||||
queryFn: () => `${pickRandomItemFromArray(INFO_CAPTIONS)}`,
|
||||
staleTime: ONE_HOUR,
|
||||
initialData: 'Live and in stereo',
|
||||
})
|
||||
|
||||
return (
|
||||
<ScrollView contentInsetAdjustmentBehavior='automatic'>
|
||||
<SettingsListGroup
|
||||
settingsList={[
|
||||
{
|
||||
title: `Jellify ${version}`,
|
||||
subTitle: caption,
|
||||
iconName: 'jellyfish',
|
||||
iconColor: '$primary',
|
||||
children: (
|
||||
<XStack gap={'$3'} marginTop={'$2'}>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL('https://github.com/Jellify-Music/App')
|
||||
}
|
||||
>
|
||||
<Icon name='code-tags' small color='$borderColor' />
|
||||
<Text>View Source</Text>
|
||||
</XStack>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() => Linking.openURL('https://discord.gg/yf8fBatktn')}
|
||||
>
|
||||
<Icon name='chat' small color='$borderColor' />
|
||||
<Text>Join Discord</Text>
|
||||
</XStack>
|
||||
</XStack>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: 'Caught a bug?',
|
||||
subTitle: "Let's squash it!",
|
||||
iconName: 'bug',
|
||||
iconColor: '$danger',
|
||||
children: (
|
||||
<XStack gap={'$3'} marginTop={'$2'}>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL(
|
||||
'https://github.com/Jellify-Music/App/issues',
|
||||
)
|
||||
}
|
||||
>
|
||||
<Icon name='github' small color='$borderColor' />
|
||||
<Text>Report Issue</Text>
|
||||
</XStack>
|
||||
</XStack>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: 'Powered by listeners like you',
|
||||
subTitle: 'Sponsor on GitHub or Patreon',
|
||||
iconName: 'heart',
|
||||
iconColor: '$secondary',
|
||||
children: (
|
||||
<XStack justifyContent='flex-start' gap={'$4'} marginVertical={'$2'}>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL(
|
||||
'https://github.com/sponsors/anultravioletaurora/',
|
||||
)
|
||||
}
|
||||
>
|
||||
<Icon name='github' small color='$borderColor' />
|
||||
<Text>Sponsors</Text>
|
||||
</XStack>
|
||||
<XStack
|
||||
alignItems='center'
|
||||
onPress={() =>
|
||||
Linking.openURL('https://patreon.com/anultravioletaurora')
|
||||
}
|
||||
>
|
||||
<Icon name='patreon' small color='$borderColor' />
|
||||
<Text>Patreon</Text>
|
||||
</XStack>
|
||||
</XStack>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: 'Patreon Wall of Fame',
|
||||
subTitle: 'Thank you to these paid members',
|
||||
iconName: 'patreon',
|
||||
iconColor: '$secondary',
|
||||
children: (
|
||||
<FlashList
|
||||
data={patrons}
|
||||
numColumns={2}
|
||||
renderItem={({ item }) => (
|
||||
<XStack alignItems='flex-start' maxWidth={'$20'}>
|
||||
<Text numberOfLines={1} lineBreakStrategyIOS='standard'>
|
||||
{item.fullName}
|
||||
</Text>
|
||||
</XStack>
|
||||
)}
|
||||
/>
|
||||
),
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</ScrollView>
|
||||
)
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
import InfoTabIndex from '.'
|
||||
import InfoTabStorage from './storage'
|
||||
import { createNativeStackNavigator } from '@react-navigation/native-stack'
|
||||
const infoStack = createNativeStackNavigator()
|
||||
|
||||
export default function InfoStack() {
|
||||
return (
|
||||
<infoStack.Navigator>
|
||||
<infoStack.Screen
|
||||
name='Index'
|
||||
component={InfoTabIndex}
|
||||
options={{
|
||||
headerShown: false,
|
||||
}}
|
||||
/>
|
||||
|
||||
<infoStack.Screen
|
||||
name='Storage'
|
||||
component={InfoTabStorage}
|
||||
options={{
|
||||
headerShown: false,
|
||||
}}
|
||||
/>
|
||||
</infoStack.Navigator>
|
||||
)
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
import { View } from 'react-native'
|
||||
import { Text } from '../../../Global/helpers/text'
|
||||
export default function InfoTabStorage() {
|
||||
return (
|
||||
<View>
|
||||
<Text>Storage</Text>
|
||||
</View>
|
||||
)
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
export type InfoTabStackParamList = {
|
||||
Index: undefined
|
||||
Storage: undefined
|
||||
}
|
||||
|
||||
export type InfoTabNativeStackNavigationProp =
|
||||
NativeNativeStackNavigationProp<InfoTabStackParamList>
|
||||
Reference in New Issue
Block a user