stripe and small fixes
This commit is contained in:
+16
-38
@@ -403,54 +403,32 @@ export const VOICE = [
|
||||
{
|
||||
title: 'BASE',
|
||||
data: [
|
||||
'Une voix féminine interprétera ta chanson.',
|
||||
'Une voix masculine interprétera ta chanson.',
|
||||
'Deux voix pour interpréter ta chanson.',
|
||||
'Solo vocal puissant et dramatique.',
|
||||
'Un chœur gospel pour (dimension spirituelle ou émotionnelle).',
|
||||
'Un cri brut et puissant (émotion intense).',
|
||||
'Un couplet interprété en rap.',
|
||||
'Voix qui raconte une histoire, souvent sans chanter.',
|
||||
'Paroles déclamées plutôt que chantées, souvent dans un style poétique ou de slam.',
|
||||
'Technique vocale entre parler et chanter, typique de la musique expressionniste.',
|
||||
'Une voix féminine',
|
||||
'Une voix masculine',
|
||||
'Deux voix',
|
||||
'Un couplet rap',
|
||||
'Voix parlée',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'SENSIBILITÉ',
|
||||
data: [
|
||||
'Voix séduisante et sensuelle.',
|
||||
'Voix profonde et résonnante.',
|
||||
'Voix légère et aérienne.',
|
||||
'Voix relaxante et sophistiquée.',
|
||||
'Voix synthétique.',
|
||||
'Voix découpées pour un style EDM ou future bass.',
|
||||
'Effet de distorsion (rendu + agressif).',
|
||||
'Slam (Chant parlé).',
|
||||
'Rap moderne.',
|
||||
'Voix douce et intime',
|
||||
'Voix profonde et résonnante',
|
||||
'Voix légère et aérienne',
|
||||
'Voix sensuelle et chaleureuse',
|
||||
'Voix énergique et puissante',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'TECHNIQUE',
|
||||
data: [
|
||||
"Chant chargé d'émotion.",
|
||||
'Technique vocale rugueuse pour le métal ou le rock.',
|
||||
'Voix robotisée ou mécanique, genres électro ou futuristes.',
|
||||
'Voix étrange (atmosphère de science-fiction ou de mystère).',
|
||||
'Voix grave et intimidante (effet dramatique).',
|
||||
'Voix pure et céleste, évoquant la tranquillité ou le divin.',
|
||||
"Voix douce et aérienne, avec une touche d'intimité.",
|
||||
'Voix chantée dans une tonalité plus aiguë que la normale.',
|
||||
"Voix d'enfant (+ d'innocence).",
|
||||
'Chant en murmure (+ intime).',
|
||||
'Multiples voix superposées (effet harmonique riche).',
|
||||
'Voix légère et innocente.',
|
||||
'Voix soprano puissante (style opéra).',
|
||||
'Chant puissant (styles pop et Broadway).',
|
||||
'Mélange subtil de chuchotements et d’harmoniques.',
|
||||
'Voix rauque et granuleuse, utilisée dans le blues ou le rock.',
|
||||
'Chœur avec une tonalité légère et céleste.',
|
||||
'Inspiration et expiration sonores (effets dramatiques).',
|
||||
'Changements de volume ou de tonalité dans une même phrase.',
|
||||
"Chant chargé d'émotion",
|
||||
'Chant en murmure',
|
||||
'Voix robotisée',
|
||||
'Multiples voix superposées',
|
||||
'Voix rauque et granuleuse',
|
||||
'Voix aiguë et brillante',
|
||||
],
|
||||
},
|
||||
]
|
||||
|
||||
@@ -5,7 +5,7 @@ import { loadStripe } from '@stripe/stripe-js'
|
||||
import * as WebBrowser from 'expo-web-browser'
|
||||
import Overlay from '../components/Overlay'
|
||||
import Button from '../components/Button'
|
||||
import useLayoutType from '../hooks/useLayoutType'
|
||||
import { Palette } from '../styles'
|
||||
import { mainBorderRadius } from '../styles/Style'
|
||||
import { STRIPE_PUBLISHABLE_KEY_LIVE, STRIPE_PUBLISHABLE_KEY_TEST } from '../data/keys'
|
||||
import { getFunctionsClient } from '../config/firebase'
|
||||
@@ -81,7 +81,6 @@ export const useStripe = () => {
|
||||
}
|
||||
|
||||
const StripeProvider = ({ children }) => {
|
||||
const { isMobile } = useLayoutType()
|
||||
const { currentUserData } = useUserData() || {}
|
||||
const canUseEmbeddedCheckout = isWeb && Boolean(stripePromise)
|
||||
|
||||
@@ -373,18 +372,13 @@ const StripeProvider = ({ children }) => {
|
||||
return (
|
||||
<StripeContext.Provider value={providerValue}>
|
||||
{children}
|
||||
<Overlay isVisible={clientSecret !== null} setIsVisible={closeEmbeddedCheckout}>
|
||||
<View style={[StyleSheet.absoluteFillObject, styles.overlayContent]}>
|
||||
<View
|
||||
style={[
|
||||
styles.embeddedWrapper,
|
||||
{
|
||||
width: isMobile ? '99%' : '95%',
|
||||
height: isMobile ? '92vh' : '96vh',
|
||||
maxWidth: isMobile ? '100%' : '1400px',
|
||||
},
|
||||
]}
|
||||
<Overlay
|
||||
isVisible={clientSecret !== null}
|
||||
setIsVisible={closeEmbeddedCheckout}
|
||||
contentContainerStyle={styles.overlayContentFull}
|
||||
>
|
||||
<View style={[StyleSheet.absoluteFillObject, styles.overlayContent]}>
|
||||
<View style={[styles.embeddedWrapper, styles.embeddedWrapperFull]}>
|
||||
{clientSecret && stripePromise ? (
|
||||
<EmbeddedCheckoutProvider stripe={stripePromise} options={{ clientSecret }}>
|
||||
<EmbeddedCheckout
|
||||
@@ -396,7 +390,14 @@ const StripeProvider = ({ children }) => {
|
||||
</EmbeddedCheckoutProvider>
|
||||
) : null}
|
||||
</View>
|
||||
<Button type="secondary" isAbsoluteBottom text="Fermer" onPress={closeEmbeddedCheckout} />
|
||||
<Button
|
||||
type="primary"
|
||||
isAbsoluteBottom
|
||||
text="Fermer"
|
||||
onPress={closeEmbeddedCheckout}
|
||||
containerStyle={styles.closeButton}
|
||||
textStyle={styles.closeButtonText}
|
||||
/>
|
||||
</View>
|
||||
</Overlay>
|
||||
</StripeContext.Provider>
|
||||
@@ -409,11 +410,37 @@ const styles = StyleSheet.create({
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center',
|
||||
},
|
||||
overlayContentFull: {
|
||||
justifyContent: 'flex-start',
|
||||
alignItems: 'stretch',
|
||||
},
|
||||
embeddedWrapper: {
|
||||
alignSelf: 'center',
|
||||
borderRadius: mainBorderRadius,
|
||||
overflow: 'hidden',
|
||||
},
|
||||
embeddedWrapperFull: {
|
||||
width: '100%',
|
||||
height: '100%',
|
||||
maxWidth: '100%',
|
||||
borderRadius: 0,
|
||||
alignSelf: 'stretch',
|
||||
},
|
||||
closeButton: {
|
||||
height: 56,
|
||||
borderWidth: 2,
|
||||
borderColor: Palette.white,
|
||||
shadowColor: Palette.primary,
|
||||
shadowOpacity: 0.6,
|
||||
shadowRadius: 10,
|
||||
shadowOffset: { width: 0, height: 6 },
|
||||
elevation: 6,
|
||||
},
|
||||
closeButtonText: {
|
||||
color: Palette.white,
|
||||
fontSize: 16,
|
||||
letterSpacing: 0.3,
|
||||
},
|
||||
})
|
||||
|
||||
export default StripeProvider
|
||||
|
||||
@@ -489,7 +489,7 @@ const HitParade = () => {
|
||||
fontFamily: FONT_FAMILY.HelveticaNeueBold,
|
||||
}}
|
||||
>
|
||||
Chansons
|
||||
Chansons librairie
|
||||
</Text>
|
||||
{/* </BorderGradient> */}
|
||||
</BlurView>
|
||||
|
||||
@@ -98,8 +98,9 @@ const PublishYoutube = () => {
|
||||
}
|
||||
setSaving(true)
|
||||
try {
|
||||
const publishCallable = firebase.functions().httpsCallable('youtube-publishPlaybackToYoutube')
|
||||
await publishCallable({ projectId })
|
||||
// publication sur youtube en standby
|
||||
// const publishCallable = firebase.functions().httpsCallable('youtube-publishPlaybackToYoutube')
|
||||
// await publishCallable({ projectId })
|
||||
setTooltip?.({
|
||||
type: 'success',
|
||||
text: 'Publication lancée sur YouTube',
|
||||
|
||||
Reference in New Issue
Block a user