Merge remote-tracking branch 'origin/main'

# Conflicts:
#	src/config/firebase.js
This commit is contained in:
Thomas Demirdjian
2025-12-09 09:47:50 +01:00
3 changed files with 69 additions and 97 deletions
+42 -70
View File
@@ -629,80 +629,52 @@ const Home = ({ navigation, route }) => {
return (
<>
{adventureStarted ? (
<View style={styles.root}>
<Page
shareBtn
headerType="NONE"
scrollEnabled={false}
containerStyle={styles.page}
contentContainerStyle={styles.pageContent}
maxWidth={1600}
width="100%"
backgroundColor="#303438"
showReturnHome={isWeb}
onReturnHome={handleReturnToLanding}
>
<View style={styles.inner}>
<ExpoImage
source={homeBackgroundImage}
contentFit="cover"
style={styles.centerImage}
/>
{isWeb ? (
<>
{/* <View style={styles.webReturnButtonWrapper}>
{/* {adventureStarted ? ( */}
<View style={styles.root}>
<Page
shareBtn
headerType="NONE"
scrollEnabled={false}
containerStyle={styles.page}
contentContainerStyle={styles.pageContent}
maxWidth={1600}
width="100%"
backgroundColor="#303438"
showReturnHome={isWeb}
onReturnHome={handleReturnToLanding}
>
<View style={styles.inner}>
<ExpoImage
source={homeBackgroundImage}
contentFit="cover"
style={styles.centerImage}
/>
{isWeb ? (
<>
{/* <View style={styles.webReturnButtonWrapper}>
{returnHomeButton}
</View> */}
<View style={styles.contentOverlay}>
{topBar}
{journeyContent}
</View>
</>
) : (
<View style={[styles.contentOverlay, styles.mobileContent]}>
<View style={styles.contentOverlay}>
{topBar}
<ScrollView
style={styles.mobileScrollView}
contentContainerStyle={styles.mobileScrollContent}
showsVerticalScrollIndicator={false}
>
{journeyContent}
</ScrollView>
{journeyContent}
</View>
)}
</View>
</Page>
</View>
) : (
<>
<Page
shareBtn
title="Landing Page"
backgroundImg={landingBackgroundImage}
contentContainerStyle={styles.pageContent}
backgroundColor="#303438"
>
<View
style={{
flex: 1,
justifyContent: "center",
alignItems: "center",
}}
>
<GradientButton
title="Commencer l'aventure MusicLand"
onPress={handleStartVisit}
/>
</View>
</Page>
<FullscreenIntroVideo
url={videoUrl}
visible={!!videoUrl}
onClose={handleIntroVideoClose}
/>
</>
)}
</>
) : (
<View style={[styles.contentOverlay, styles.mobileContent]}>
{topBar}
<ScrollView
style={styles.mobileScrollView}
contentContainerStyle={styles.mobileScrollContent}
showsVerticalScrollIndicator={false}
>
{journeyContent}
</ScrollView>
</View>
)}
</View>
</Page>
</View>
{!isWeb ? (
<CoinPackModal
visible={isCoinModalVisible}
+25 -25
View File
@@ -119,31 +119,6 @@ export default function LandingPage() {
)}
{selectedLanguage && (
<View style={styles.actions}>
{showFreeCreditsPopup && (
<BlurView style={styles.freeCreditsCard}>
<View style={styles.freeCreditsContent}>
<View style={styles.freeCreditsTextContainer}>
<Text style={styles.freeCreditsTitle}>
Tu as 5 crédits gratuits
</Text>
<Text style={styles.freeCreditsSubtitle}>
pour 1 parcours offert !
</Text>
</View>
<TouchableOpacity
onPress={() => setShowFreeCreditsPopup(false)}
accessibilityRole="button"
accessibilityLabel="Fermer le message des crédits offerts"
style={styles.freeCreditsClose}
>
<Image
source={icons.close}
style={styles.freeCreditsCloseIcon}
/>
</TouchableOpacity>
</View>
</BlurView>
)}
<GradientButton
title="Découvrir Musicland"
onPress={() => setVideoUrl(video?.introWeb)}
@@ -178,6 +153,31 @@ export default function LandingPage() {
containerStyle={styles.actionButton}
/>
) : null}
{showFreeCreditsPopup && (
<BlurView style={styles.freeCreditsCard}>
<View style={styles.freeCreditsContent}>
<View style={styles.freeCreditsTextContainer}>
<Text style={styles.freeCreditsTitle}>
5 crédits offert
</Text>
<Text style={styles.freeCreditsSubtitle}>
pour 1 parcours gratuit !
</Text>
</View>
<TouchableOpacity
onPress={() => setShowFreeCreditsPopup(false)}
accessibilityRole="button"
accessibilityLabel="Fermer le message des crédits offerts"
style={styles.freeCreditsClose}
>
<Image
source={icons.close}
style={styles.freeCreditsCloseIcon}
/>
</TouchableOpacity>
</View>
</BlurView>
)}
</View>
)}
</View>