diff --git a/.eslintrc.js b/.eslintrc.js index 1b68613..b8fbdb2 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,7 +1,12 @@ module.exports = { - extends: ["expo", "prettier"], - plugins: ["prettier"], - rules: { - "prettier/prettier": "error", - }, + extends: ['expo', 'prettier'], + plugins: ['prettier'], + rules: { + 'prettier/prettier': [ + 'error', + { + singleQuote: true, + }, + ], + }, }; diff --git a/src/screens/Library/Library.js b/src/screens/Library/Library.js index 8aaa002..fd76250 100644 --- a/src/screens/Library/Library.js +++ b/src/screens/Library/Library.js @@ -1,24 +1,57 @@ -import { View, Image, ScrollView, Pressable, Platform } from "react-native"; -import React from "react"; -import Page from "../../layouts/Page"; -import { background, icons } from "../../assets"; -import SearchBar from "../../components/SearchBar"; -import MyMusic from "./components/MyMusic"; -import BackTracks from "./components/BackTracks"; -import MyClips from "./components/MyClips"; -import LikedMusic from "./components/LikedMusic"; -import LikedPlayback from "./components/LikedPlayback"; -import LikedClips from "./components/LikedClips"; -import { responsiveHeight } from "react-native-responsive-dimensions"; -import MyPlaylist from "./components/MyPlaylist"; -import { navigate } from "../../navigation/NavigationService"; -import { Routes } from "../../navigation"; +import { View, Image, ScrollView, Pressable, Platform } from 'react-native'; +import React from 'react'; +import Page from '../../layouts/Page'; +import { background, icons } from '../../assets'; +import SearchBar from '../../components/SearchBar'; +import MyMusic from './components/MyMusic'; +import BackTracks from './components/BackTracks'; +import MyClips from './components/MyClips'; +import LikedMusic from './components/LikedMusic'; +import LikedPlayback from './components/LikedPlayback'; +import LikedClips from './components/LikedClips'; +import { responsiveHeight } from 'react-native-responsive-dimensions'; +import MyPlaylist from './components/MyPlaylist'; +import { navigate } from '../../navigation/NavigationService'; +import { Routes } from '../../navigation'; +import { useUser } from '../../providers/UserDataProvider'; +import { Text } from 'react-native'; +import { Palette } from '../../styles'; +import { FONT_FAMILY } from '../../styles/Fonts'; const Library = () => { + const { + userProjects = [], + userPlaybacks = [], + userLikedProjects = [], + userLikedPlaybacks = [], + userPlaylists = [], + } = useUser() || {}; + + const hasMyMusic = Array.isArray(userProjects) && userProjects.length > 0; + const hasBackTracks = + Array.isArray(userPlaybacks) && userPlaybacks.length > 0; + const hasLikedMusic = + Array.isArray(userLikedProjects) && userLikedProjects.length > 0; + const hasLikedPlayback = + Array.isArray(userLikedPlaybacks) && userLikedPlaybacks.length > 0; + const hasPlaylists = Array.isArray(userPlaylists) && userPlaylists.length > 0; + + const hasMyClips = false; // À modifier quand les vraies données seront disponibles + const hasLikedClips = false; // À modifier quand les vraies données seront disponibles + + const hasAnySection = + hasMyMusic || + hasBackTracks || + hasLikedMusic || + hasLikedPlayback || + hasPlaylists || + hasMyClips || + hasLikedClips; + return ( - + - + navigate(Routes.Research)}> { flexGrow: 1, gap: 20, paddingBottom: responsiveHeight(20), - paddingTop: Platform.OS !== "android" ? 20 : 0, + paddingTop: Platform.OS !== 'android' ? 20 : 0, }} - showsVerticalScrollIndicator={false} - > - - - - {/**/} - - - {/**/} + showsVerticalScrollIndicator={false}> + {hasMyMusic && } + {hasBackTracks && } + {hasLikedMusic && } + {hasMyClips && } + {hasPlaylists && } + {hasLikedPlayback && } + {hasLikedClips && } + + {!hasAnySection && ( + + + Rien n'est disponible encore ici + + + )}