├── .expo-shared └── assets.json ├── .flowconfig ├── .gitignore ├── .idea ├── .gitignore ├── misc.xml ├── modules.xml ├── react-native-best-buy-app.iml └── vcs.xml ├── .watchmanconfig ├── App.js ├── App.test.js ├── Components ├── AdvancedSearchBar.js ├── CoolCards.js ├── Drawer │ ├── DrawerContent.js │ ├── GuestOptions.js │ └── UserOptions.js ├── HeaderBack.js ├── HomeNavBar.js ├── ItemCards.js ├── Loader.js ├── Loaders │ ├── BubbleLoader.js │ ├── PersonAnimated.js │ ├── SpaceLoader.js │ ├── SpinBubble.js │ └── Splash.js ├── NavBar.js ├── SearchBar.js ├── SocialMediaButtons.js ├── StarRating.js └── TrendCard.js ├── README.md ├── app.json ├── assets ├── GenerateStarRating.js ├── Images │ └── logo.jpg ├── animation │ ├── cart.json │ ├── chill.json │ ├── rocket_blue.json │ ├── space.json │ └── spinner.json ├── categories.js └── styling.js ├── babel.config.js ├── context └── AppContext.js ├── navigation └── Navigation.jsx ├── package.json ├── redux ├── reducers │ ├── InitialLoad.js │ ├── index.js │ └── userModule.js └── store.js ├── screens ├── AboutScreen.js ├── CategoryScreen.js ├── HomeScreen.js ├── LoginScreen.js ├── ProfileScreen.js ├── ResultScreen.js ├── SearchScreen.js ├── ShoppingCartScreen.js ├── ShowCaseScreen.js ├── SignUpScreen.js └── WatchListScreen.js ├── styles ├── constant-properties.js └── styles.js ├── utils └── firebase.js └── yarn.lock /.expo-shared/assets.json: -------------------------------------------------------------------------------- 1 | { 2 | "a54ceccf66d4bbd5e1a586684105c0e4b99e7d64e3a4e7cc6026d53b2a3618bb": true 3 | } -------------------------------------------------------------------------------- /.flowconfig: -------------------------------------------------------------------------------- 1 | [ignore] 2 | ; We fork some components by platform 3 | .*/*[.]android.js 4 | 5 | ; Ignore templates for 'react-native init' 6 | /node_modules/react-native/local-cli/templates/.* 7 | 8 | ; Ignore RN jest 9 | /node_modules/react-native/jest/.* 10 | 11 | ; Ignore RNTester 12 | /node_modules/react-native/RNTester/.* 13 | 14 | ; Ignore the website subdir 15 | /node_modules/react-native/website/.* 16 | 17 | ; Ignore the Dangerfile 18 | /node_modules/react-native/danger/dangerfile.js 19 | 20 | ; Ignore Fbemitter 21 | /node_modules/fbemitter/.* 22 | 23 | ; Ignore "BUCK" generated dirs 24 | /node_modules/react-native/\.buckd/ 25 | 26 | ; Ignore unexpected extra "@providesModule" 27 | .*/node_modules/.*/node_modules/fbjs/.* 28 | 29 | ; Ignore polyfills 30 | /node_modules/react-native/Libraries/polyfills/.* 31 | 32 | ; Ignore various node_modules 33 | /node_modules/react-native-gesture-handler/.* 34 | /node_modules/expo/.* 35 | /node_modules/react-navigation/.* 36 | /node_modules/xdl/.* 37 | /node_modules/reqwest/.* 38 | /node_modules/metro-bundler/.* 39 | 40 | [include] 41 | 42 | [libs] 43 | node_modules/react-native/Libraries/react-native/react-native-interface.js 44 | node_modules/react-native/flow/ 45 | node_modules/expo/flow/ 46 | 47 | [options] 48 | emoji=true 49 | 50 | module.system=haste 51 | 52 | module.file_ext=.js 53 | module.file_ext=.jsx 54 | module.file_ext=.json 55 | module.file_ext=.ios.js 56 | 57 | munge_underscores=true 58 | 59 | module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub' 60 | 61 | suppress_type=$FlowIssue 62 | suppress_type=$FlowFixMe 63 | suppress_type=$FlowFixMeProps 64 | suppress_type=$FlowFixMeState 65 | suppress_type=$FixMe 66 | 67 | suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native_oss[a-z,_]*\\)?)\\) 68 | suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(5[0-6]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native_oss[a-z,_]*\\)?)\\)?:? #[0-9]+ 69 | suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy 70 | suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError 71 | 72 | unsafe.enable_getters_and_setters=true 73 | 74 | [version] 75 | ^0.56.0 76 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | #Constants 4 | private/constants.js 5 | # expo 6 | .expo/ 7 | 8 | # dependencies 9 | /node_modules 10 | 11 | # misc 12 | .env.local 13 | .env.development.local 14 | .env.test.local 15 | .env.production.local 16 | 17 | npm-debug.log* 18 | yarn-debug.log* 19 | yarn-error.log* 20 | 21 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /workspace.xml 3 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/react-native-best-buy-app.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /App.js: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useState } from "react"; 2 | 3 | import { useFonts } from "expo-font"; 4 | import { Ionicons } from "@expo/vector-icons"; 5 | 6 | import AppContext from "./context/AppContext"; 7 | import store from "./redux/store"; 8 | import { initialFetch } from "./redux/reducers/InitialLoad"; 9 | // import { loginSuccess } from "./redux/reducers/userModule"; 10 | import firebaseApp from "./utils/firebase"; 11 | 12 | import Splash from "./Components/Loaders/Splash"; 13 | import { Provider } from "react-redux"; 14 | import Navigation from "./navigation/Navigation"; 15 | 16 | const App = () => { 17 | const [appReady, setAppReady] = useState(false); 18 | 19 | const toggleAppReady = () => { 20 | setAppReady(true); 21 | console.log("Splash Removed"); 22 | }; 23 | 24 | let [fontsLoaded] = useFonts({ 25 | Roboto: require("native-base/Fonts/Roboto.ttf"), 26 | Roboto_medium: require("native-base/Fonts/Roboto_medium.ttf"), 27 | ...Ionicons.font, 28 | }); 29 | 30 | useEffect(() => { 31 | store.dispatch(initialFetch()); 32 | 33 | firebaseApp.auth().onAuthStateChanged((user) => { 34 | if (user) { 35 | // TODO check if theres a better way to do this - adding listener somewhere else ? 36 | store.dispatch(loginSuccess(user)); 37 | console.log("firebase - auth user!"); 38 | } else { 39 | console.log("firebase - guest user"); 40 | } 41 | }); 42 | }, []); 43 | 44 | return ( 45 | 51 | 52 | {!fontsLoaded || !appReady ? : } 53 | 54 | 55 | ); 56 | }; 57 | 58 | export default App; 59 | -------------------------------------------------------------------------------- /App.test.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import App from './App'; 3 | 4 | import renderer from 'react-test-renderer'; 5 | 6 | it('renders without crashing', () => { 7 | const rendered = renderer.create().toJSON(); 8 | expect(rendered).toBeTruthy(); 9 | }); 10 | -------------------------------------------------------------------------------- /Components/AdvancedSearchBar.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { useWindowDimensions, StyleSheet, View } from "react-native"; 3 | // import SearchHeader from "react-native-search-header"; 4 | 5 | const AdvancedSearchBar = () => { 6 | const viewportWidth = useWindowDimensions().width; 7 | 8 | styles = StyleSheet.create({ 9 | container: { 10 | flex: 1, 11 | justifyContent: "flex-start", 12 | alignItems: "center", 13 | }, 14 | header: { 15 | width: viewportWidth, 16 | height: 500, 17 | marginBottom: 6, 18 | }, 19 | }); 20 | 21 | return ( 22 | 23 | 24 | 25 | ); 26 | }; 27 | 28 | export default AdvancedSearchBar; 29 | -------------------------------------------------------------------------------- /Components/CoolCards.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { useWindowDimensions } from "react-native"; 3 | 4 | import Carousel from "react-native-snap-carousel"; 5 | import TrendCard from "./TrendCard"; 6 | 7 | const calculateWidth = (viewportWidth) => { 8 | function wp(percentage) { 9 | const value = (percentage * viewportWidth) / 100; 10 | return Math.round(value); 11 | } 12 | 13 | const slideWidth = wp(75); 14 | const itemHorizontalMargin = wp(2); 15 | 16 | const sliderWidth = viewportWidth; 17 | const itemWidth = slideWidth + itemHorizontalMargin * 2; 18 | 19 | return { sliderWidth, itemWidth }; 20 | }; 21 | 22 | const CoolCards = (props) => { 23 | const renderItem = ({ item, index }) => ( 24 | 25 | ); 26 | 27 | const viewportWidth = useWindowDimensions().width; 28 | const { sliderWidth, itemWidth } = calculateWidth(viewportWidth); 29 | 30 | return ( 31 | 41 | ); 42 | }; 43 | 44 | export default CoolCards; 45 | -------------------------------------------------------------------------------- /Components/Drawer/DrawerContent.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { Image } from "react-native"; 3 | 4 | import { connect } from "react-redux"; 5 | import { logout } from "../../redux/reducers/userModule"; 6 | import * as firebase from "firebase"; 7 | 8 | import { 9 | Body, 10 | Container, 11 | Text, 12 | Header, 13 | Content, 14 | List, 15 | ListItem, 16 | Right, 17 | Left, 18 | Icon, 19 | Button, 20 | } from "native-base"; 21 | import { Col, Row, Grid } from "react-native-easy-grid"; 22 | 23 | import GuestOptions from "./GuestOptions"; 24 | import UserOptions from "./UserOptions"; 25 | import styles from "../../styles/styles"; 26 | 27 | class DrawerContent extends Component { 28 | constructor(props) { 29 | super(props); 30 | this.state = { 31 | isLoggedIn: false, 32 | }; 33 | 34 | //use this word inside function 35 | this.signOut = this.signOut.bind(this); 36 | } 37 | 38 | signOut() { 39 | firebase 40 | .auth() 41 | .signOut() 42 | .then( 43 | () => { 44 | this.props.logout(); 45 | }, 46 | function (error) { 47 | console.error("Sign Out Error", error); 48 | } 49 | ); 50 | } 51 | // componentDidMount() { 52 | // // Listen for authentication state to change. 53 | // firebase.auth().onAuthStateChanged(user => { 54 | // if (user != null) { 55 | // console.log(`User is uthenticated! ${user}`); 56 | // this.setState({ 57 | // isLoggedIn: true 58 | // }); 59 | // } 60 | // }); 61 | // } 62 | render() { 63 | const { navigation, user } = this.props; 64 | 65 | return ( 66 | 67 |
68 | 76 |
77 | 78 | 79 | {user.auth ? ( 80 | 81 | ) : ( 82 | 83 | )} 84 | 85 | 86 | 87 | navigation.navigate("Home")}> 88 | 89 | 94 | 95 | 96 | Home 97 | 98 | 99 | 100 | 101 | 102 | 103 | navigation.navigate("Category")} 106 | > 107 | 108 | 113 | 114 | 115 | Categories 116 | 117 | 118 | 119 | 120 | 121 | 122 | {/* navigation.navigate("WatchList")} 125 | > 126 | 127 | 128 | 129 | 130 | My Watchlist 131 | 132 | 133 | 134 | 135 | */} 136 | 137 | navigation.navigate("ShoppingCart")} 140 | > 141 | 142 | 147 | 148 | 149 | My Cart 150 | 151 | 152 | 153 | 154 | 155 | 156 | navigation.navigate("About")}> 157 | 158 | 163 | 164 | 165 | About 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | {user.auth ? ( 178 | 188 | ) : null} 189 | 190 | 191 | 192 | 193 | 194 |
195 | ); 196 | } 197 | } 198 | 199 | const mapStateToProps = (state) => ({ user: state.user }); 200 | 201 | export default connect(mapStateToProps, { logout })(DrawerContent); 202 | -------------------------------------------------------------------------------- /Components/Drawer/GuestOptions.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { 3 | Text, 4 | Icon, 5 | Button 6 | } from "native-base"; 7 | import { Col, Row } from "react-native-easy-grid"; 8 | 9 | const GuestOptions = props => { 10 | return ( 11 | 12 | 13 | 21 | 22 | 23 | 31 | 32 | 33 | ); 34 | }; 35 | 36 | 37 | 38 | export default GuestOptions; -------------------------------------------------------------------------------- /Components/Drawer/UserOptions.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { 3 | Text, 4 | Icon, 5 | Button 6 | } from "native-base"; 7 | import { Col, Row } from "react-native-easy-grid"; 8 | 9 | const UserOptions = props => { 10 | return ( 11 | 12 | 13 | 21 | 22 | {/* 23 | 31 | */} 32 | 33 | ); 34 | }; 35 | 36 | 37 | export default UserOptions; -------------------------------------------------------------------------------- /Components/HeaderBack.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { 3 | Header, 4 | Title, 5 | Left, 6 | Right, 7 | Body, 8 | Icon, 9 | Text, 10 | Button, 11 | } from "native-base"; 12 | import styles from "../assets/styling"; 13 | 14 | export default ({ goBack, title }) => ( 15 |
16 | 17 | 25 | 26 | 27 | {title} 28 | 29 | 30 |
31 | ); 32 | -------------------------------------------------------------------------------- /Components/HomeNavBar.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { Text, TouchableOpacity } from "react-native"; 3 | 4 | import { Row, Icon } from "native-base"; 5 | import { width, height } from "../styles/constant-properties"; 6 | import styles from "../styles/styles"; 7 | 8 | const HomeNavBar = (props) => { 9 | const calculatedWidth = Math.min(height, width) * 0.76; 10 | return ( 11 | 12 | 13 | 14 | {} /*props.handleNav.navigate("SearchScreen")*/} 16 | rounded 17 | style={{ 18 | width: calculatedWidth, 19 | height: 50, 20 | padding: 10, 21 | backgroundColor: "white", 22 | flexDirection: "row", 23 | justifyContent: "space-between", 24 | alignItems: "center", 25 | borderRadius: 30, 26 | }} 27 | > 28 | I'm looking for.. 29 | 30 | 31 | {} /*props.handleNav.navigate("ShoppingCart")*/} 33 | > 34 | 39 | 40 | 41 | 42 | ); 43 | }; 44 | 45 | export default HomeNavBar; 46 | -------------------------------------------------------------------------------- /Components/ItemCards.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | 4 | const ItemCards = props => { 5 | return ( 6 |
7 | 8 |
9 | ); 10 | }; 11 | 12 | 13 | 14 | export default ItemCards; -------------------------------------------------------------------------------- /Components/Loader.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react' 2 | import { 3 | ActivityIndicator, 4 | StyleSheet, 5 | View, 6 | } from 'react-native' 7 | 8 | export default class Loader extends Component { 9 | render() { 10 | return ( 11 | 12 | 13 | 14 | ) 15 | } 16 | } 17 | 18 | const styles = StyleSheet.create({ 19 | container: { 20 | flex: 1, 21 | justifyContent: 'center' 22 | }, 23 | horizontal: { 24 | flexDirection: 'row', 25 | justifyContent: 'space-around', 26 | padding: 10 27 | } 28 | }) -------------------------------------------------------------------------------- /Components/Loaders/BubbleLoader.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { View, StyleSheet } from "react-native"; 3 | import { Bubbles } from 'react-native-loader'; 4 | 5 | export default class BubbleLoader extends Component { 6 | render() { 7 | return ( 8 | 9 | 10 | 11 | ); 12 | } 13 | } 14 | 15 | const styles = StyleSheet.create({ 16 | container: { 17 | flex: 1, 18 | flexDirection: 'column', 19 | justifyContent: 'center', 20 | alignItems: 'center' 21 | } 22 | }) 23 | -------------------------------------------------------------------------------- /Components/Loaders/PersonAnimated.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import LottieView from 'lottie-react-native'; 3 | // import styles from '../../assets/styling.js'; 4 | 5 | export default class PersonAnimated extends Component { 6 | render() { 7 | return ( 8 | 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Components/Loaders/SpaceLoader.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import LottieView from 'lottie-react-native'; 3 | import styles from '../../assets/styling.js'; 4 | 5 | export default class SpaceLoader extends Component { 6 | render() { 7 | return ( 8 | 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Components/Loaders/SpinBubble.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import LottieView from 'lottie-react-native'; 3 | 4 | class SpinBubble extends Component { 5 | render() { 6 | return ( 7 | 12 | ); 13 | } 14 | } 15 | 16 | export default SpinBubble; -------------------------------------------------------------------------------- /Components/Loaders/Splash.js: -------------------------------------------------------------------------------- 1 | import React, { useContext, useEffect } from "react"; 2 | import LottieView from "lottie-react-native"; 3 | import { connect } from "react-redux"; 4 | import { initialFetch } from "../../redux/reducers/InitialLoad"; 5 | import AppContext from "../../context/AppContext"; 6 | 7 | const Splash = (props) => { 8 | const { initialLoad } = props; 9 | const context = useContext(AppContext); 10 | 11 | useEffect(() => { 12 | if (initialLoad.allItemsReady) { 13 | context.toggleAppReady(); 14 | } 15 | }, [initialLoad.allItemsReady]); 16 | 17 | return ( 18 | 24 | ); 25 | }; 26 | 27 | const mapStateToProps = (state) => ({ initialLoad: state.initialLoad }); 28 | 29 | export default connect(mapStateToProps, { initialFetch })(Splash); 30 | -------------------------------------------------------------------------------- /Components/NavBar.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | import { Icon, Left, Right, Header, Body, Title } from "native-base"; 4 | import styles from "../assets/styling"; 5 | 6 | export default (props) => ( 7 |
8 | 9 | props.drawerOpen()} /> 10 | 11 | 12 | {props.title} 13 | 14 | 15 |
16 | ); 17 | -------------------------------------------------------------------------------- /Components/SearchBar.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { 3 | Header, 4 | Item, 5 | Input, 6 | Icon, 7 | } from "native-base"; 8 | export default class SearchBar extends Component { 9 | render() { 10 | return ( 11 |
12 | 13 | this.props.drawerOpen()} /> 14 | 15 | 16 | 17 | {/* */} 20 |
21 | ); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Components/SocialMediaButtons.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Col, Row } from "react-native-easy-grid"; 3 | import { 4 | Text, 5 | Button, 6 | Icon, 7 | H1, 8 | } from "native-base"; 9 | 10 | const SocialMediaButtons = (props) => { 11 | return ( 12 | 13 | 14 | 15 |

One Click

16 | 17 | 21 |

22 | 31 | 32 | 33 | 34 | ); 35 | }; 36 | 37 | export default SocialMediaButtons; -------------------------------------------------------------------------------- /Components/StarRating.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { 3 | Icon, 4 | } from "native-base"; 5 | 6 | const StarRating = (props) => { 7 | if (props.num == null) { 8 | return ( 9 | 14 | ); 15 | } else { 16 | let total = []; 17 | for (var i = 0; i < props.num; i++) { 18 | total.push( 19 | 26 | ); 27 | } 28 | return total; 29 | } 30 | }; 31 | 32 | export default StarRating; -------------------------------------------------------------------------------- /Components/TrendCard.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | 3 | import StarRating from "./StarRating"; 4 | import { Card, Left, Right, Body, CardItem, Text } from "native-base"; 5 | import ImageLoad from "react-native-image-placeholder"; 6 | import styles from "../styles/styles"; 7 | import { View } from "react-native"; 8 | 9 | const TrendCard = (props) => { 10 | const { data, navigation, index } = props; 11 | return ( 12 | 13 | 17 | // navigation.navigate("ShowCaseScreen", { 18 | // serialNumber: data.sku, 19 | // }) 20 | // } 21 | > 22 | 23 | 31 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | $ {data.prices.current} 47 | 48 | 49 | 50 | ); 51 | }; 52 | 53 | export default TrendCard; 54 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Best Buy App 2 | 3 | E-Commerce mobile application for Android and iOS 4 | 5 | ## Features :white_check_mark: 6 | - [X] user can sign up and login with Facebook, Google or e-mail 7 | - [X] view most popular and trending items in the store 8 | - [X] view items by category 9 | - [X] predictive universal search 10 | - [X] add to items to cart 11 | 12 | ### Upcoming features :memo: 13 | - [ ] Search items with an image 14 | - [ ] Stripe payment service 15 | - [ ] Recommend items based on search history 16 | - [ ] Show recently watched & opened items in search screen 17 | - [ ] Sorting and filtering items 18 | - [ ] Set quantity and view total in shopping cart 19 | - [ ] Messagging service between users 20 | - [ ] Export web portal using React.JS 21 | 22 | 23 | 24 | ### Tech stack :computer: 25 | - Firebase 26 | - React Native 27 | - Redux 28 | - Best Buy API 29 | 30 | ## Demo 31 | 32 | to run the application on your device , install the Expo app available in Google's play store & Apple's store. Open the link in your mobile or scan the QR code in this link below 33 | 34 | https://expo.io/@peckpeck20/best-buy-app 35 | 36 | ## Getting Started 37 | 38 | These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system. 39 | 40 | 41 | ### Installing 42 | 43 | Want to run this project in your own enviroment ? 44 | 45 | 46 | ``` 47 | git clone https://github.com/peckpeck20/react-native-best-buy-app.git 48 | ``` 49 | ``` 50 | navigate to the Private folder, rename constants.text to constants.js and replace values with your own instance keys,etc. 51 | ``` 52 | 53 | ``` 54 | yarn && yarn start 55 | ``` 56 | 57 | 58 | 59 | ## Author 60 | 61 | * **Jose Zapata** 62 | 63 | -------------------------------------------------------------------------------- /app.json: -------------------------------------------------------------------------------- 1 | { 2 | "expo": { 3 | "name": "best-buy-app", 4 | "slug": "best-buy-app", 5 | "version": "0.2.0", 6 | "description": "React Native eCommerce app", 7 | "privacy": "public", 8 | "orientation": "portrait", 9 | "githubUrl": "https://github.com/peckpeck20/react-native-best-buy-app", 10 | "primaryColor": "#5127C6", 11 | "platforms": [ 12 | "android", 13 | "ios" 14 | ] 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/GenerateStarRating.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { 3 | Icon, 4 | } from "native-base"; 5 | //creates number of stars based on input 6 | export const starRating = (num)=> { 7 | if (num === null || num === 0) { 8 | return ( 9 | 14 | ); 15 | } else { 16 | let total = []; 17 | for (var i = 0; i < num; i++) { 18 | total.push( 19 | 26 | ); 27 | } 28 | return total; 29 | } 30 | } -------------------------------------------------------------------------------- /assets/Images/logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peckpeck20/react-native-best-buy-app/e26df83b45011d17164d27052bfaa07901d60262/assets/Images/logo.jpg -------------------------------------------------------------------------------- /assets/animation/cart.json: -------------------------------------------------------------------------------- 1 | {"v":"4.10.1","fr":60,"ip":0,"op":145,"w":800,"h":800,"nm":"ShoppingCart_Preview","ddd":0,"assets":[{"id":"comp_14","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Bottom","parent":5,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[354,-319.667,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[28,-4],[-1,-53],[-25,0],[0,0]],"o":[[0,0],[-28,4],[1,52.991],[36,0],[0,0]],"v":[[-148,-14],[-175,-11],[-247,66],[-173,136],[337,136]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":86,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":36,"st":-165,"bm":0},{"ddd":0,"ind":2,"ty":1,"nm":"Rotator","parent":5,"sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[205.941,-333.843,0],"ix":2},"a":{"a":0,"k":[60,60,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":0,"op":36,"st":-163,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Cart","parent":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[208.059,74.176,0],"ix":2},"a":{"a":0,"k":[75,75,0],"ix":1},"s":{"a":0,"k":[1000,1000,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[38.091,-12.09],[24.311,-12.09],[26.391,-3.9],[38.091,-5.07]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[38.091,-25.872],[21.32,-25.872],[23.271,-16.77],[38.091,-16.77]],"c":true},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ind":2,"ty":"sh","ix":3,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[22.101,-3.251],[19.501,-12.09],[7.151,-12.09],[10.401,-2.081]],"c":true},"ix":2},"nm":"Path 4","mn":"ADBE Vector Shape - Group","hd":false},{"ind":3,"ty":"sh","ix":4,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.121,-25.872],[5.851,-16.77],[18.721,-16.77],[16.641,-25.872]],"c":true},"ix":2},"nm":"Path 5","mn":"ADBE Vector Shape - Group","hd":false},{"ind":4,"ty":"sh","ix":5,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.851,-1.561],[2.47,-12.09],[-12.22,-12.09],[-6.89,-0.26]],"c":true},"ix":2},"nm":"Path 6","mn":"ADBE Vector Shape - Group","hd":false},{"ind":5,"ty":"sh","ix":6,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-14.17,-16.77],[1.3,-16.77],[-1.559,-25.872],[-18.46,-25.872]],"c":true},"ix":2},"nm":"Path 7","mn":"ADBE Vector Shape - Group","hd":false},{"ind":6,"ty":"sh","ix":7,"ks":{"a":0,"k":{"i":[[0,0],[0,-2.859],[0,0],[2.729,-0.261],[0,0],[0,0],[0,0],[0,0],[0,2.6],[-2.6,0],[0,0],[-4.81,-10.14]],"o":[[3.9,0],[0,0],[0,2.73],[0,0],[0,0],[0,0],[0,0],[-2.6,0],[0,-2.6],[0,0],[8.32,0],[0,0]],"v":[[39.522,-32.891],[45.241,-27.691],[45.241,-3.38],[40.432,1.821],[-12.09,7.67],[-14.95,-0.001],[-31.201,-35.622],[-40.561,-35.622],[-45.241,-40.301],[-40.561,-44.982],[-34.581,-44.982],[-21.32,-32.891]],"c":true},"ix":2},"nm":"Path 9","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[70.386,70.416],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":9,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":36,"st":-165,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Cart","parent":5,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":0,"k":-19.745,"ix":3},"y":{"a":0,"k":84.309,"ix":4}},"a":{"a":0,"k":[37.626,115.398,0],"ix":1},"s":{"a":0,"k":[1000,1000,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.551],[4.551,0],[0,4.42],[-4.55,0]],"o":[[0,4.42],[-4.55,0],[0,-4.551],[4.551,0]],"v":[[38.482,36.922],[30.421,44.982],[22.231,36.922],[30.421,28.732]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,-4.551],[4.681,0],[0,4.42],[-4.419,0]],"o":[[0,4.42],[-4.419,0],[0,-4.551],[4.681,0]],"v":[[-16.51,36.922],[-24.701,44.982],[-32.761,36.922],[-24.701,28.732]],"c":true},"ix":2},"nm":"Path 8","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[70.386,70.416],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":36,"st":-165,"bm":0},{"ddd":0,"ind":5,"ty":1,"nm":"BackWheel","parent":6,"sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.07],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p07_1_0p333_0"],"t":8,"s":[0],"e":[-12.9]},{"t":28}],"ix":10},"p":{"s":true,"x":{"a":0,"k":-492,"ix":3},"y":{"a":0,"k":84.167,"ix":4}},"a":{"a":0,"k":[60,84.167,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":0,"op":36,"st":-165,"bm":0},{"ddd":0,"ind":6,"ty":1,"nm":"FrontWheel","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":4,"s":[96.8,115.383,0],"e":[94.2,115.383,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"n":"0p833_0p833_0p333_0","t":8,"s":[94.2,115.383,0],"e":[146.8,115.383,0],"to":[0,0,0],"ti":[0,0,0]},{"t":34}],"ix":2},"a":{"a":0,"k":[60,84.167,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p833_0p833_0p333_0","0p833_0p833_0p333_0","0p833_1_0p333_0"],"t":20,"s":[10,10,100],"e":[0,0,100]},{"t":34}],"ix":6}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":0,"op":36,"st":-165,"bm":0}]},{"id":"comp_15","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Bottom","parent":5,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[354,-319.667,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[28,-4],[-1,-53],[-25,0],[0,0]],"o":[[0,0],[-28,4],[1,52.991],[36,0],[0,0]],"v":[[-148,-14],[-175,-11],[-247,66],[-173,136],[337,136]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":86,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":109,"st":-41,"bm":0},{"ddd":0,"ind":2,"ty":1,"nm":"Rotator","parent":5,"sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":7,"s":[6],"e":[-7]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":29,"s":[-7],"e":[-7]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":39,"s":[-7],"e":[5]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":65,"s":[5],"e":[-2]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":78,"s":[-2],"e":[1]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":93,"s":[1],"e":[0]},{"t":107}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":24,"s":[222.441,-339.343,0],"e":[205.941,-333.843,0],"to":[0,0,0],"ti":[0,0,0]},{"t":33}],"ix":2},"a":{"a":0,"k":[60,60,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":0,"op":109,"st":-39,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Cart","parent":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[208.059,74.176,0],"ix":2},"a":{"a":0,"k":[75,75,0],"ix":1},"s":{"a":0,"k":[1000,1000,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[38.091,-12.09],[24.311,-12.09],[26.391,-3.9],[38.091,-5.07]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[38.091,-25.872],[21.32,-25.872],[23.271,-16.77],[38.091,-16.77]],"c":true},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ind":2,"ty":"sh","ix":3,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[22.101,-3.251],[19.501,-12.09],[7.151,-12.09],[10.401,-2.081]],"c":true},"ix":2},"nm":"Path 4","mn":"ADBE Vector Shape - Group","hd":false},{"ind":3,"ty":"sh","ix":4,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.121,-25.872],[5.851,-16.77],[18.721,-16.77],[16.641,-25.872]],"c":true},"ix":2},"nm":"Path 5","mn":"ADBE Vector Shape - Group","hd":false},{"ind":4,"ty":"sh","ix":5,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.851,-1.561],[2.47,-12.09],[-12.22,-12.09],[-6.89,-0.26]],"c":true},"ix":2},"nm":"Path 6","mn":"ADBE Vector Shape - Group","hd":false},{"ind":5,"ty":"sh","ix":6,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-14.17,-16.77],[1.3,-16.77],[-1.559,-25.872],[-18.46,-25.872]],"c":true},"ix":2},"nm":"Path 7","mn":"ADBE Vector Shape - Group","hd":false},{"ind":6,"ty":"sh","ix":7,"ks":{"a":0,"k":{"i":[[0,0],[0,-2.859],[0,0],[2.729,-0.261],[0,0],[0,0],[0,0],[0,0],[0,2.6],[-2.6,0],[0,0],[-4.81,-10.14]],"o":[[3.9,0],[0,0],[0,2.73],[0,0],[0,0],[0,0],[0,0],[-2.6,0],[0,-2.6],[0,0],[8.32,0],[0,0]],"v":[[39.522,-32.891],[45.241,-27.691],[45.241,-3.38],[40.432,1.821],[-12.09,7.67],[-14.95,-0.001],[-31.201,-35.622],[-40.561,-35.622],[-45.241,-40.301],[-40.561,-44.982],[-34.581,-44.982],[-21.32,-32.891]],"c":true},"ix":2},"nm":"Path 9","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[70.386,70.416],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":9,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":109,"st":-41,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Cart","parent":5,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":0,"k":-19.745,"ix":3},"y":{"a":0,"k":84.309,"ix":4}},"a":{"a":0,"k":[37.626,115.398,0],"ix":1},"s":{"a":0,"k":[1000,1000,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.551],[4.551,0],[0,4.42],[-4.55,0]],"o":[[0,4.42],[-4.55,0],[0,-4.551],[4.551,0]],"v":[[38.482,36.922],[30.421,44.982],[22.231,36.922],[30.421,28.732]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,-4.551],[4.681,0],[0,4.42],[-4.419,0]],"o":[[0,4.42],[-4.419,0],[0,-4.551],[4.681,0]],"v":[[-16.51,36.922],[-24.701,44.982],[-32.761,36.922],[-24.701,28.732]],"c":true},"ix":2},"nm":"Path 8","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[70.386,70.416],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":109,"st":-41,"bm":0},{"ddd":0,"ind":5,"ty":1,"nm":"BackWheel","parent":6,"sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.056],"y":[0]},"n":["0p833_0p833_0p056_0"],"t":21,"s":[-17.4],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":31,"s":[0],"e":[0]},{"i":{"x":[0.82],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p82_1_0p167_0p167"],"t":63,"s":[0],"e":[-2]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0]},"n":["0p833_0p833_0p167_0"],"t":75,"s":[-2],"e":[0]},{"t":84}],"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[-572],"e":[-492]},{"t":22}],"ix":3},"y":{"a":1,"k":[{"i":{"x":[0.274],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p274_1_0p167_0p167"],"t":0,"s":[84.167],"e":[-218.536]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.681],"y":[0]},"n":["0p833_0p833_0p681_0"],"t":10,"s":[-218.536],"e":[84.167]},{"t":22}],"ix":4}},"a":{"a":0,"k":[60,84.167,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0,0,0.595],"y":[1.038,1.038,1]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,16.612]},"n":["0_1p038_0p167_0p167","0_1p038_0p167_0p167","0p595_1_0p167_16p612"],"t":0,"s":[0,0,100],"e":[90.6,90.6,100]},{"i":{"x":[0.833,0.833,0.833],"y":[1,1,1]},"o":{"x":[1,1,1],"y":[0,0,0]},"n":["0p833_1_1_0","0p833_1_1_0","0p833_1_1_0"],"t":16,"s":[90.6,90.6,100],"e":[100,100,100]},{"t":33}],"ix":6}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":0,"op":109,"st":-41,"bm":0},{"ddd":0,"ind":6,"ty":1,"nm":"FrontWheel","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0_1_0p167_0p167"],"t":31,"s":[0],"e":[7.3]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[1],"y":[0]},"n":["0p833_0p833_1_0"],"t":47,"s":[7.3],"e":[0]},{"t":63}],"ix":10},"p":{"a":0,"k":[96.8,115.383,0],"ix":2},"a":{"a":0,"k":[60,84.167,0],"ix":1},"s":{"a":0,"k":[10,10,100],"ix":6}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":0,"op":109,"st":-41,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"ShoppingCart_AnimOff","refId":"comp_14","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400,400,0],"ix":2},"a":{"a":0,"k":[75,75,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":150,"h":150,"ip":109,"op":145,"st":109,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"ShoppingCart_AnimOn","refId":"comp_15","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400,400,0],"ix":2},"a":{"a":0,"k":[75,75,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":150,"h":150,"ip":0,"op":109,"st":0,"bm":0}]} -------------------------------------------------------------------------------- /assets/animation/space.json: -------------------------------------------------------------------------------- 1 | {"v":"4.6.11","fr":29.9700012207031,"ip":0,"op":403.000016414526,"w":550,"h":550,"nm":"1_(MASQUE)_LOADER_NAVI_COMPLET_MASQUE","ddd":0,"assets":[{"id":"comp_4","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Loader","refId":"comp_5","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[300.589,329.42,0]},"a":{"a":0,"k":[75,75,0]},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":33,"s":[0,0,100],"e":[110,110,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":42,"s":[110,110,100],"e":[100,100,100]},{"t":46.0000018736184}]}},"ao":0,"w":150,"h":150,"ip":22.0000008960784,"op":622.000025334579,"st":22.0000008960784,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":3,"nm":"Nul 1","ks":{"o":{"a":0,"k":0},"r":{"a":0,"k":0},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":0,"s":[298.956,761.412,0],"e":[298.956,274.68,0],"to":[0,-55.8420257568359,0],"ti":[0,123.078193664551,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":14.566,"s":[298.956,274.68,0],"e":[298.956,297.412,0],"to":[0,-47.3677558898926,0],"ti":[0,21.4913082122803,0]},{"t":19,"s":[298.956,297.412,0],"h":1},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":25,"s":[298.956,297.412,0],"e":[298.956,291.412,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":28,"s":[298.956,291.412,0],"e":[298.956,309.412,0],"to":[0,0,0],"ti":[0,0,0]},{"t":33,"s":[298.956,309.412,0],"h":1},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":362,"s":[298.956,309.412,0],"e":[298.956,291.412,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"n":"0p667_1_0p167_0","t":367,"s":[298.956,291.412,0],"e":[298.956,297.412,0],"to":[0,0,0],"ti":[0,0,0]},{"t":369,"s":[298.956,297.412,0],"h":1},{"i":{"x":0.574,"y":0.23},"o":{"x":0.222,"y":0},"n":"0p574_0p23_0p222_0","t":377,"s":[298.956,297.412,0],"e":[298.956,286.316,0],"to":[0,-24.2801113128662,0],"ti":[0,-69.855110168457,0]},{"i":{"x":0.698,"y":1},"o":{"x":0.29,"y":0.381},"n":"0p698_1_0p29_0p381","t":381,"s":[298.956,286.316,0],"e":[298.956,761.412,0],"to":[0,152.636810302734,0],"ti":[0,53.05322265625,0]},{"t":399.000016251603}]},"a":{"a":0,"k":[50.646,50.085,0]},"s":{"a":0,"k":[-98,-46,100]}},"ao":0,"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"EYE_4","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[150.023,-2.365,0]},"a":{"a":0,"k":[-1.249,0.802,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":1,"k":[{"i":{"x":0.833,"y":1},"o":{"x":0.167,"y":0},"n":"0p833_1_0p167_0","t":25,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.524,-28.243],[-18.665,-28.243],[-18.665,29.333],[18.524,29.333]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.462,29.007],[-18.726,29.007],[-18.665,29.333],[18.524,29.333]],"c":true}]},{"t":31,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.462,29.007],[-18.726,29.007],[-18.665,29.333],[18.524,29.333]],"c":true}],"h":1},{"i":{"x":0.833,"y":1},"o":{"x":0.333,"y":0},"n":"0p833_1_0p333_0","t":362,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.462,29.007],[-18.726,29.007],[-18.665,29.333],[18.524,29.333]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.524,-28.243],[-18.665,-28.243],[-18.665,29.333],[18.524,29.333]],"c":true}]},{"t":369.000015029678}]},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[32.643,54.604]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":20},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0,0.647,1,0.5,0,0.773,1,1,0,0.898,1]}},"s":{"a":0,"k":[0.048,-26.863]},"e":{"a":0,"k":[0.036,27.208]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.679,0.802],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"EYE_3","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[-48.957,-2.365,0]},"a":{"a":0,"k":[-1.249,0.802,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":1,"k":[{"i":{"x":0.833,"y":1},"o":{"x":0.167,"y":0},"n":"0p833_1_0p167_0","t":25,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.524,-28.243],[-18.665,-28.243],[-18.665,29.333],[18.524,29.333]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.462,29.007],[-18.726,29.007],[-18.665,29.333],[18.524,29.333]],"c":true}]},{"t":31,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.462,29.007],[-18.726,29.007],[-18.665,29.333],[18.524,29.333]],"c":true}],"h":1},{"i":{"x":0.833,"y":1},"o":{"x":0.333,"y":0},"n":"0p833_1_0p333_0","t":362,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.462,29.007],[-18.726,29.007],[-18.665,29.333],[18.524,29.333]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[18.524,-28.243],[-18.665,-28.243],[-18.665,29.333],[18.524,29.333]],"c":true}]},{"t":369.000015029678}]},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[32.643,54.604]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":20},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0,0.647,1,0.5,0,0.773,1,1,0,0.898,1]}},"s":{"a":0,"k":[0.048,-26.863]},"e":{"a":0,"k":[0.036,27.208]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.179,0.802],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"MOUTH 2","parent":2,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p833_1_0p167_0"],"t":30,"s":[100],"e":[0]},{"t":31,"s":[0],"h":1},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p833_1_0p333_0"],"t":362,"s":[0],"e":[100]},{"t":363.000014785293}]},"r":{"a":0,"k":-180},"p":{"a":0,"k":[50.266,-126.123,0]},"a":{"a":0,"k":[-0.488,80.73,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":1,"k":[{"i":{"x":0.833,"y":1},"o":{"x":0.167,"y":0},"n":"0p833_1_0p167_0","t":25,"s":[{"i":[[-15.857,0],[-4.129,14.534],[4.959,0],[0,0],[-1.355,-4.77]],"o":[[15.857,0],[1.355,-4.77],[0,0],[-4.959,0],[4.129,14.534]],"v":[[-0.562,97.524],[32.794,72.346],[25.507,62.851],[-26.632,62.851],[-33.92,72.346]],"c":true}],"e":[{"i":[[-15.857,0],[0.081,0.404],[4.959,0],[0,0],[-1.942,-4.563]],"o":[[15.857,0],[3.231,-3.762],[0,0],[-4.959,0],[0.295,0.029]],"v":[[-0.75,70.149],[32.669,70.346],[25.514,70.101],[-26.625,70.101],[-33.795,70.471]],"c":true}]},{"t":31,"s":[{"i":[[-15.857,0],[0.081,0.404],[4.959,0],[0,0],[-1.942,-4.563]],"o":[[15.857,0],[3.231,-3.762],[0,0],[-4.959,0],[0.295,0.029]],"v":[[-0.75,70.149],[32.669,70.346],[25.514,70.101],[-26.625,70.101],[-33.795,70.471]],"c":true}],"h":1},{"i":{"x":0.833,"y":1},"o":{"x":0.333,"y":0},"n":"0p833_1_0p333_0","t":362,"s":[{"i":[[-15.857,0],[0.081,0.404],[4.959,0],[0,0],[-1.942,-4.563]],"o":[[15.857,0],[3.231,-3.762],[0,0],[-4.959,0],[0.295,0.029]],"v":[[-0.75,70.149],[32.669,70.346],[25.514,70.101],[-26.625,70.101],[-33.795,70.471]],"c":true}],"e":[{"i":[[-15.857,0],[-4.129,14.534],[4.959,0],[0,0],[-1.355,-4.77]],"o":[[15.857,0],[1.355,-4.77],[0,0],[-4.959,0],[4.129,14.534]],"v":[[-0.562,97.524],[32.794,72.346],[25.507,62.851],[-26.632,62.851],[-33.92,72.346]],"c":true}]},{"t":369.000015029678}]},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[89.201,45.254]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0,0.647,1,0.5,0,0.773,1,1,0,0.898,1]}},"s":{"a":0,"k":[0,-10]},"e":{"a":0,"k":[0,15]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.899,79.377],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[78.629,89.387],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"OREILLES 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,49.378,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[-10.756,0],[0,0],[0,3.887],[0,0],[3.887,0],[0,0],[0,-10.756],[0,0]],"o":[[0,0],[3.887,0],[0,0],[0,-3.887],[0,0],[-10.756,0],[0,0],[0,10.756]],"v":[[-162.03,41.583],[-159.878,41.583],[-152.839,34.544],[-152.839,-30.044],[-159.878,-37.083],[-162.03,-37.083],[-181.505,-17.608],[-181.505,22.108]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"},{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[10.756,0],[0,0],[0,3.887],[0,0],[-3.887,0],[0,0],[0,-10.756],[0,0]],"o":[[0,0],[-3.887,0],[0,0],[0,-3.887],[0,0],[10.756,0],[0,0],[0,10.756]],"v":[[162.53,41.583],[160.378,41.583],[153.339,34.544],[153.339,-30.044],[160.378,-37.083],[162.53,-37.083],[182.005,-17.608],[182.005,22.108]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 2"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[381.865,102.994]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"fl","c":{"a":0,"k":[0.7137255,0.7137255,0.7137255,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[-2.567,4.997],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":7,"ty":4,"nm":"REFLET 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,97.204,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[51.338,0],[15.83,-4.715],[5.595,-13.126],[0,-18.767],[-0.01,-0.686],[-51.064,0],[-39.507,26.369],[0,0.687],[7.299,17.12],[13.634,4.06]],"o":[[-51.338,0],[-13.634,4.06],[-7.298,17.12],[0,0.687],[39.507,26.369],[51.064,0],[0.01,-0.686],[0,-18.767],[-5.595,-13.126],[-15.83,-4.715]],"v":[[0.5,-67.137],[-96.314,-56.802],[-126.571,-29.759],[-137.569,24.324],[-137.529,26.38],[0.5,68.137],[138.529,26.38],[138.569,24.324],[127.57,-29.759],[97.313,-56.802]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[304.42,150.008]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,1,1,1,0.32,1,1,1,1,1,1,1,0,0.15,0.5,0.1,1,0.05]}},"s":{"a":0,"k":[0.834,68.979]},"e":{"a":0,"k":[0.889,-35.193]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[0.71,-0.496],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":8,"ty":4,"nm":"SCREEN 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,-0.622,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[13.634,4.06],[51.338,0],[15.83,-4.715],[5.595,-13.126],[0,-18.767],[-4.48,-13.762],[-16.953,-3.409],[-9.056,-18.066],[0,0],[-13.015,0],[0,0],[-7.458,10.648],[0,0],[-19.811,3.983],[-5.363,16.476],[0,14.61],[7.299,17.12]],"o":[[-15.83,-4.715],[-51.338,0],[-13.634,4.06],[-7.298,17.12],[0,14.612],[5.363,16.476],[19.812,3.983],[0,0],[7.458,10.648],[0,0],[13.015,0],[0,0],[9.057,-18.065],[16.952,-3.409],[4.48,-13.764],[0,-18.767],[-5.595,-13.126]],"v":[[97.313,-101.542],[0.5,-111.878],[-96.314,-101.542],[-126.571,-74.499],[-137.569,-20.416],[-130.818,22.345],[-94.639,54.582],[-49.214,89.278],[-45.903,95.883],[-13.25,112.878],[14.25,112.878],[46.902,95.883],[50.214,89.277],[95.639,54.582],[131.817,22.345],[138.569,-20.416],[127.57,-74.499]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[301.025,241.035]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.382,0.382,0.382,0.32,0.236,0.236,0.236,1,0.09,0.09,0.09]}},"s":{"a":0,"k":[-0.439,114.02]},"e":{"a":0,"k":[-0.104,0.656]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.38,-2.633],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":9,"ty":4,"nm":"BORDURE 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,-1.709,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[16.418,0],[0,0],[9.306,13.526],[0,0],[0,0],[16.773,3.372],[6.479,19.902],[0,15.665],[-7.83,18.367],[-16.495,4.913],[-42.183,0],[-23.951,-7.134],[-6.766,-15.872],[0,-20.122],[4.806,-14.765],[20.485,-4.12],[7.668,-15.295],[0,0]],"o":[[0,0],[-16.419,0],[0,0],[0,0],[-7.667,-15.295],[-20.487,-4.12],[-4.806,-14.764],[0,-20.122],[6.766,-15.872],[23.952,-7.134],[42.184,0],[16.495,4.913],[7.83,18.367],[0,15.663],[-6.479,19.902],[-16.773,3.372],[0,0],[-9.306,13.526]],"v":[[14.25,122.878],[-13.25,122.878],[-54.333,101.275],[-54.683,100.682],[-58.154,93.759],[-96.61,64.387],[-140.327,25.44],[-147.569,-20.416],[-135.77,-78.421],[-99.168,-111.126],[0.5,-121.878],[100.168,-111.126],[136.769,-78.421],[148.569,-20.416],[141.327,25.44],[97.611,64.387],[59.153,93.759],[55.332,101.275]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[332.547,254.334]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.382,0.382,0.382,0.32,0.236,0.236,0.236,1,0.09,0.09,0.09]}},"s":{"a":0,"k":[-0.48,-126.818]},"e":{"a":0,"k":[0.434,121.646]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.227,1.214],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[90.763,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":10,"ty":4,"nm":"FRONT 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,75.465,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[3.989,0.953],[7.569,0],[3.758,-0.898],[1.941,-3.613],[0,0],[-6.283,0],[0,0],[2.974,5.535]],"o":[[-1.941,-3.613],[-3.758,-0.898],[-7.569,0],[-3.989,0.953],[0,0],[-2.974,5.535],[0,0],[6.283,0],[0,0]],"v":[[26.612,-132.351],[17.309,-139.558],[0.5,-141.261],[-16.309,-139.558],[-25.612,-132.351],[-39.009,-107.415],[-31.691,-95.175],[32.691,-95.175],[40.009,-107.415]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 3"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[386.594,340.416]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.702,0.702,0.702,0.5,0.802,0.802,0.802,1,0.902,0.902,0.902]}},"s":{"a":0,"k":[6.112,163.985]},"e":{"a":0,"k":[5.423,-153.812]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.703,-118.292],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[23.777,14.294],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":11,"ty":4,"nm":"JOUES 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,75.465,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[5.208,-5.208],[7.518,7.518],[-5.208,5.208],[-7.518,-7.518]],"o":[[-5.208,5.208],[-7.518,-7.518],[5.208,-5.208],[7.518,7.518]],"v":[[-75.763,137.053],[-98.805,132.871],[-102.987,109.829],[-79.945,114.011]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"},{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[5.208,5.208],[-7.518,7.518],[-5.208,-5.208],[7.518,-7.518]],"o":[[-5.208,-5.208],[7.518,-7.518],[5.208,5.208],[-7.518,7.518]],"v":[[76.763,137.053],[80.945,114.011],[103.987,109.829],[99.805,132.871]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 2"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[386.594,340.416]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.702,0.702,0.702,0.5,0.802,0.802,0.802,1,0.902,0.902,0.902]}},"s":{"a":0,"k":[-88.52,144.896]},"e":{"a":0,"k":[-89.502,-145.593]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[0.764,123.54],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[57.743,10.349],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":12,"ty":4,"nm":"OMBRE 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[9.463,36.334,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[58.454,24.297],[0,-59.283],[89.194,0],[19.075,7.929],[-29.911,0],[0,89.194]],"o":[[47.613,28.09],[0,89.194],[-21.945,0],[24.023,14.173],[89.194,0],[0,-67.249]],"v":[[22.658,-154.843],[102.219,-15.657],[-59.281,145.843],[-121.219,133.529],[-39.281,155.843],[122.219,-5.657]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[342.459,338.445]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"fl","c":{"a":0,"k":[0.8656556,0.8656556,0.8656556,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[-5.771,3.723],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":13,"ty":4,"nm":"FOND 2","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[49.769,49.378,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"f","pt":{"a":0,"k":{"i":[[0,-89.194],[89.194,0],[0,89.194],[-89.194,0]],"o":[[0,89.194],[-89.194,0],[0,-89.194],[89.194,0]],"v":[[162,0.5],[0.5,162],[-161,0.5],[0.5,-161]],"c":true}},"o":{"a":0,"k":100},"x":{"a":0,"k":0},"nm":"Masque 1"}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[343.506,341.93]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[0.253,-2.535],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":26,"ty":0,"nm":"CORPS_NAVI","parent":2,"refId":"comp_7","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":-180},"p":{"a":0,"k":[52.32,-446.274,0]},"a":{"a":0,"k":[175,117,0]},"s":{"a":0,"k":[102.041,217.391,100]}},"ao":0,"w":350,"h":234,"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":27,"ty":4,"nm":"Calque de forme 1","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[300,300,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[525.711,525.711]},"p":{"a":0,"k":[0,0]},"nm":"Tracé d'ellipse 1","mn":"ADBE Vector Shape - Ellipse"},{"ty":"st","c":{"a":0,"k":[0.592157,0.592157,0.592157,1]},"o":{"a":0,"k":100},"w":{"a":0,"k":0},"lc":1,"lj":1,"ml":4,"nm":"Contour 1","mn":"ADBE Vector Graphic - Stroke"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.114,0.11,0.388,0.5,0.078,0.076,0.273,1,0.043,0.043,0.157]}},"s":{"a":0,"k":[-6.477,-259.691]},"e":{"a":0,"k":[-2.676,263.914]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.633,-0.008],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1}]},{"id":"comp_5","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Loader_reflexion","refId":"comp_6","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,75,0]},"a":{"a":0,"k":[75,75,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":150,"h":150,"ip":280.000011404634,"op":340.000013848484,"st":280.000011404634,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":0,"nm":"Loader_reflexion","refId":"comp_6","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,75,0]},"a":{"a":0,"k":[75,75,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":150,"h":150,"ip":210.000008553475,"op":270.000010997325,"st":210.000008553475,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":0,"nm":"Loader_reflexion","refId":"comp_6","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,75,0]},"a":{"a":0,"k":[75,75,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":150,"h":150,"ip":140.000005702317,"op":200.000008146167,"st":140.000005702317,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":0,"nm":"Loader_reflexion","refId":"comp_6","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,75,0]},"a":{"a":0,"k":[75,75,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":150,"h":150,"ip":70.0000028511585,"op":130.000005295009,"st":70.0000028511585,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":0,"nm":"Loader_reflexion","refId":"comp_6","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,75,0]},"a":{"a":0,"k":[75,75,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":150,"h":150,"ip":0,"op":60.0000024438501,"st":0,"bm":0,"sr":1}]},{"id":"comp_6","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"1 Silhouettes 5","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":25.469,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":26.74,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":29.706,"s":[100],"e":[0]},{"t":36.4912514863191}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,26.783,0]},"a":{"a":0,"k":[8.55,25.939,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0]],"o":[[-4.584,0],[0,0],[0,4.583],[4.584,0],[0,0],[0,-4.583]],"v":[[0,-25.689],[-8.3,-17.389],[-8.3,17.389],[0,25.689],[8.3,17.389],[8.3,-17.389]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.55,25.939],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":4,"nm":"2 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":28.435,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":29.706,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":32.675,"s":[100],"e":[0]},{"t":39.4600016072388}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[109.096,40.499,0]},"a":{"a":0,"k":[20.846,21.249,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.125,0],[-1.62,1.621],[0,0],[0,2.124],[1.619,1.621],[3.242,-3.242],[0,0],[0,-2.123],[-1.62,-1.621]],"o":[[2.123,0],[0,0],[1.621,-1.618],[0,-2.123],[-3.24,-3.24],[0,0],[-1.621,1.619],[0,2.124],[1.621,1.621]],"v":[[-12.296,20.999],[-6.427,18.568],[18.164,-6.021],[20.596,-11.889],[18.166,-17.757],[6.428,-17.757],[-18.163,6.831],[-20.596,12.7],[-18.165,18.568]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.845,21.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"3 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":31.404,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":32.675,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":35.643,"s":[100],"e":[0]},{"t":42.4275017281075}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[123.218,75,0]},"a":{"a":0,"k":[25.938,8.55,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,0],[0,-4.583],[-4.584,0],[0,0],[0,4.583]],"o":[[0,0],[-4.584,0],[0,4.583],[0,0],[4.584,0],[0,-4.583]],"v":[[17.388,-8.3],[-17.387,-8.3],[-25.688,0],[-17.387,8.3],[17.388,8.3],[25.688,0]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[25.937,8.55],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"4 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":34.373,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":35.643,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":38.61,"s":[100],"e":[0]},{"t":45.3937518489253}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[109.096,108.689,0]},"a":{"a":0,"k":[20.845,21.25,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[3.242,-3.241],[0,-2.124],[-1.62,-1.62],[0,0],[-2.123,0],[-1.621,1.621],[0,2.123],[1.619,1.621]],"o":[[-3.242,-3.241],[-1.62,1.621],[0,2.123],[0,0],[1.621,1.621],[2.124,0],[1.619,-1.621],[0,-2.124],[0,0]],"v":[[-6.426,-17.76],[-18.164,-17.76],[-20.595,-11.891],[-18.164,-6.023],[6.427,18.568],[12.296,21.001],[18.166,18.568],[20.595,12.701],[18.166,6.833]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.845,21.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"5 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":37.339,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":38.61,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":41.579,"s":[100],"e":[0]},{"t":48.3612519697941}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,123.219,0]},"a":{"a":0,"k":[8.55,25.937,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0]],"o":[[-4.584,0],[0,0],[0,4.583],[4.584,0],[0,0],[0,-4.583]],"v":[[0,-25.687],[-8.3,-17.387],[-8.3,17.387],[0,25.687],[8.3,17.387],[8.3,-17.387]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.55,25.937],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"6 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":40.306,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":41.579,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":44.548,"s":[100],"e":[0]},{"t":51.3300020907138}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[40.905,108.69,0]},"a":{"a":0,"k":[20.844,21.25,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[3.242,-3.242],[0,0],[0,-2.124],[-1.62,-1.621],[-2.123,0],[-1.62,1.621],[0,0],[0,2.123],[1.619,1.621]],"o":[[0,0],[-1.62,1.621],[0,2.123],[1.621,1.621],[2.124,0],[0,0],[1.619,-1.621],[0,-2.124],[-3.242,-3.242]],"v":[[6.426,-17.758],[-18.163,6.831],[-20.594,12.699],[-18.163,18.568],[-12.294,20.999],[-6.426,18.568],[18.165,-6.021],[20.594,-11.889],[18.165,-17.758]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.844,21.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":7,"ty":4,"nm":"7 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":43.274,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":44.548,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":47.515,"s":[100],"e":[0]},{"t":54.2975022115825}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[26.782,75,0]},"a":{"a":0,"k":[25.938,8.55,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,4.583],[4.585,0],[0,0],[0,-4.583],[-4.584,0],[0,0]],"o":[[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0],[4.585,0]],"v":[[25.688,0],[17.387,-8.3],[-17.389,-8.3],[-25.688,0],[-17.389,8.3],[17.387,8.3]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[25.938,8.55],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":8,"ty":4,"nm":"8 Silhouettes 2","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":46.243,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":47.515,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":50.483,"s":[100],"e":[0]},{"t":57.2662523325022}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[40.906,40.498,0]},"a":{"a":0,"k":[20.845,21.251,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[3.242,-3.242],[0,-2.123],[-1.62,-1.62],[0,0],[-2.123,0],[-1.621,1.621],[0,2.124],[1.62,1.621]],"o":[[-3.242,-3.242],[-1.62,1.621],[0,2.124],[0,0],[1.621,1.621],[2.124,0],[1.62,-1.621],[0,-2.123],[0,0]],"v":[[-6.426,-17.759],[-18.165,-17.759],[-20.596,-11.891],[-18.165,-6.023],[6.426,18.57],[12.296,21.001],[18.165,18.57],[20.596,12.701],[18.165,6.833]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.845,21.251],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":9,"ty":4,"nm":"1 Silhouettes 4","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":48.978,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":50.249,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":53.215,"s":[100],"e":[0]},{"t":60.0000024438501}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,26.783,0]},"a":{"a":0,"k":[8.55,25.939,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0]],"o":[[-4.584,0],[0,0],[0,4.583],[4.584,0],[0,0],[0,-4.583]],"v":[[0,-25.689],[-8.3,-17.389],[-8.3,17.389],[0,25.689],[8.3,17.389],[8.3,-17.389]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.55,25.939],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":10,"ty":4,"nm":"1 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":0,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":1.273,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":4.239,"s":[100],"e":[0]},{"t":11.0225004489556}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,26.783,0]},"a":{"a":0,"k":[8.55,25.939,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0]],"o":[[-4.584,0],[0,0],[0,4.583],[4.584,0],[0,0],[0,-4.583]],"v":[[0,-25.689],[-8.3,-17.389],[-8.3,17.389],[0,25.689],[8.3,17.389],[8.3,-17.389]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.55,25.939],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":11,"ty":4,"nm":"2 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":2.969,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":4.239,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":7.206,"s":[100],"e":[0]},{"t":13.9912505698753}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[109.096,40.499,0]},"a":{"a":0,"k":[20.846,21.249,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.125,0],[-1.62,1.621],[0,0],[0,2.124],[1.619,1.621],[3.242,-3.242],[0,0],[0,-2.123],[-1.62,-1.621]],"o":[[2.123,0],[0,0],[1.621,-1.618],[0,-2.123],[-3.24,-3.24],[0,0],[-1.621,1.619],[0,2.124],[1.621,1.621]],"v":[[-12.296,20.999],[-6.427,18.568],[18.164,-6.021],[20.596,-11.889],[18.166,-17.757],[6.428,-17.757],[-18.163,6.831],[-20.596,12.7],[-18.165,18.568]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.845,21.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":12,"ty":4,"nm":"3 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":5.935,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":7.206,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":10.175,"s":[100],"e":[0]},{"t":16.960000690795}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[123.218,75,0]},"a":{"a":0,"k":[25.938,8.55,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,0],[0,-4.583],[-4.584,0],[0,0],[0,4.583]],"o":[[0,0],[-4.584,0],[0,4.583],[0,0],[4.584,0],[0,-4.583]],"v":[[17.388,-8.3],[-17.387,-8.3],[-25.688,0],[-17.387,8.3],[17.388,8.3],[25.688,0]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[25.937,8.55],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":13,"ty":4,"nm":"4 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":8.904,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":10.175,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":13.144,"s":[100],"e":[0]},{"t":19.9262508116128}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[109.096,108.689,0]},"a":{"a":0,"k":[20.845,21.25,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[3.242,-3.241],[0,-2.124],[-1.62,-1.62],[0,0],[-2.123,0],[-1.621,1.621],[0,2.123],[1.619,1.621]],"o":[[-3.242,-3.241],[-1.62,1.621],[0,2.123],[0,0],[1.621,1.621],[2.124,0],[1.619,-1.621],[0,-2.124],[0,0]],"v":[[-6.426,-17.76],[-18.164,-17.76],[-20.595,-11.891],[-18.164,-6.023],[6.427,18.568],[12.296,21.001],[18.166,18.568],[20.595,12.701],[18.166,6.833]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.845,21.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":14,"ty":4,"nm":"5 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":11.871,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":13.144,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":16.11,"s":[100],"e":[0]},{"t":22.8937509324816}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,123.219,0]},"a":{"a":0,"k":[8.55,25.937,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0]],"o":[[-4.584,0],[0,0],[0,4.583],[4.584,0],[0,0],[0,-4.583]],"v":[[0,-25.687],[-8.3,-17.387],[-8.3,17.387],[0,25.687],[8.3,17.387],[8.3,-17.387]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.55,25.937],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":15,"ty":4,"nm":"6 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":14.839,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":16.11,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":19.079,"s":[100],"e":[0]},{"t":25.8625010534012}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[40.905,108.69,0]},"a":{"a":0,"k":[20.844,21.25,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[3.242,-3.242],[0,0],[0,-2.124],[-1.62,-1.621],[-2.123,0],[-1.62,1.621],[0,0],[0,2.123],[1.619,1.621]],"o":[[0,0],[-1.62,1.621],[0,2.123],[1.621,1.621],[2.124,0],[0,0],[1.619,-1.621],[0,-2.124],[-3.242,-3.242]],"v":[[6.426,-17.758],[-18.163,6.831],[-20.594,12.699],[-18.163,18.568],[-12.294,20.999],[-6.426,18.568],[18.165,-6.021],[20.594,-11.889],[18.165,-17.758]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.844,21.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":16,"ty":4,"nm":"7 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":17.806,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":19.079,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":22.048,"s":[100],"e":[0]},{"t":28.83000117427}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[26.782,75,0]},"a":{"a":0,"k":[25.938,8.55,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,4.583],[4.585,0],[0,0],[0,-4.583],[-4.584,0],[0,0]],"o":[[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0],[4.585,0]],"v":[[25.688,0],[17.387,-8.3],[-17.389,-8.3],[-25.688,0],[-17.389,8.3],[17.387,8.3]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[25.938,8.55],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":17,"ty":4,"nm":"8 Silhouettes","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":20.775,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":22.048,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":25.015,"s":[100],"e":[0]},{"t":31.7975012951387}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[40.906,40.498,0]},"a":{"a":0,"k":[20.845,21.251,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[3.242,-3.242],[0,-2.123],[-1.62,-1.62],[0,0],[-2.123,0],[-1.621,1.621],[0,2.124],[1.62,1.621]],"o":[[-3.242,-3.242],[-1.62,1.621],[0,2.124],[0,0],[1.621,1.621],[2.124,0],[1.62,-1.621],[0,-2.123],[0,0]],"v":[[-6.426,-17.759],[-18.165,-17.759],[-20.596,-11.891],[-18.165,-6.023],[6.426,18.57],[12.296,21.001],[18.165,18.57],[20.596,12.701],[18.165,6.833]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[20.845,21.251],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":18,"ty":4,"nm":"1 Silhouettes 3","ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":23.509,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":24.781,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":27.748,"s":[100],"e":[0]},{"t":34.5312514064866}]},"r":{"a":0,"k":0},"p":{"a":0,"k":[75,26.783,0]},"a":{"a":0,"k":[8.55,25.939,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.584,0],[0,-4.583],[0,0],[-4.584,0],[0,4.583],[0,0]],"o":[[-4.584,0],[0,0],[0,4.583],[4.584,0],[0,0],[0,-4.583]],"v":[[0,-25.689],[-8.3,-17.389],[-8.3,17.389],[0,25.689],[8.3,17.389],[8.3,-17.389]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0.8980392,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.55,25.939],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1}]},{"id":"comp_7","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Bras_gauche","refId":"comp_8","ks":{"o":{"a":0,"k":100},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":0,"s":[10],"e":[20]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":26,"s":[20],"e":[0]},{"t":30,"s":[0],"h":1},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":362,"s":[0],"e":[20]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p833_1_0p333_0"],"t":367,"s":[20],"e":[10]},{"t":380.000015477717}]},"p":{"a":0,"k":[99.5,42,0]},"a":{"a":0,"k":[67,42,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":285,"h":234,"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":0,"nm":"Bras_droit","refId":"comp_9","ks":{"o":{"a":0,"k":100},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":0,"s":[-10],"e":[-20]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":26,"s":[-20],"e":[0]},{"t":30,"s":[0],"h":1},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":362,"s":[0],"e":[-20]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p833_1_0p333_0"],"t":367,"s":[-20],"e":[-10]},{"t":380.000015477717}]},"p":{"a":0,"k":[250,44.5,0]},"a":{"a":0,"k":[217.5,44.5,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":285,"h":234,"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"Corps_1 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[178.527,175.523,0]},"a":{"a":0,"k":[28.155,25.631,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[1.226,-1.551],[0,0],[-4.653,-4.918],[0,0],[-3.047,0],[-3.115,0.072],[0,0],[4.199,5.309],[0,0],[1.977,0]],"o":[[0,0],[-1.976,0],[0,0],[-4.199,5.309],[0,0],[3.116,0.072],[3.045,0],[0,0],[4.652,-4.918],[0,0],[-1.227,-1.551],[0,0]],"v":[[3.695,33.21],[-2.333,33.21],[-7.404,35.665],[-20.012,51.611],[-19.221,69.426],[-5.57,83.857],[3.695,83.971],[12.958,83.857],[26.609,69.426],[27.4,51.611],[14.793,35.665],[9.721,33.21]],"c":true}},"nm":"Tracé 2","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":1,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.902,0.902,0.902,0.5,0.831,0.831,0.831,1,0.761,0.761,0.761]}},"s":{"a":0,"k":[3.521,52.143]},"e":{"a":0,"k":[3.871,84.428]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[24.46,-32.96],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"Jambe_gauche_1 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[160.893,204.221,0]},"a":{"a":0,"k":[9.295,14.483,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.928,5.33],[0,0],[0,0],[-1.492,-8.575],[5.41,0],[0,0]],"o":[[-1.493,-8.575],[0,0],[0,0],[0.928,5.33],[0,0],[5.41,0]],"v":[[9.163,4.266],[9.054,-11.227],[-0.612,-14.482],[-0.726,4.266],[-9.295,14.482],[0.593,14.482]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[9.295,14.483],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"Jambe_gauche_2 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[128.17,204.859,0]},"a":{"a":0,"k":[43.065,14.094,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.493,-8.575],[5.41,0],[0,0],[0.797,4.104],[-1.415,6.983]],"o":[[0,0],[0.928,5.33],[0,0],[-4.181,0],[-1.087,-5.608],[0,0]],"v":[[41.778,-11.866],[41.887,3.628],[33.316,13.844],[-32.207,13.844],[-40.764,6.775],[-41.399,-13.844]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[43.065,14.094],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"Jambe_gauche_3 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[150.081,224.637,0]},"a":{"a":0,"k":[17.414,9.229,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[-3.866,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[0.311,-2.143],[-3.15,1.812],[-11.802,1.812],[-17.415,9.229],[17.414,9.229],[12.115,-9.23],[6.417,-9.23],[2.227,-9.23],[4.261,-2.143]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[17.414,9.229],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":7,"ty":4,"nm":"Jambe_gauche_4 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[128.9,224.637,0]},"a":{"a":0,"k":[38.845,9.479,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-31.309,-9.23],[-30.65,1.977],[-38.596,9.23],[38.596,9.23],[33.297,-9.23]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[38.845,9.479],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":8,"ty":4,"nm":"Jambe_droite_1 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[261.098,204.859,0]},"a":{"a":0,"k":[9.895,13.844,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.415,6.982],[0,0],[0,0],[0,0],[1.075,-5.546],[4.181,0],[0,0],[-0.797,4.105]],"o":[[0,0],[0,0],[0,0],[1.348,6.928],[-0.797,4.105],[0,0],[4.18,0],[1.088,-5.607]],"v":[[9.186,-13.843],[11.013,-131.348],[0.156,-123.183],[-0.666,-13.611],[-1.338,6.774],[-9.895,13.843],[-0.006,13.843],[8.55,6.774]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[9.895,13.844],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":9,"ty":4,"nm":"Jambe_droite_2 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[228.885,204.859,0]},"a":{"a":0,"k":[43.064,14.094,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.492,-8.575],[-5.41,0],[0,0],[-0.797,4.104],[1.415,6.983]],"o":[[0,0],[-0.928,5.33],[0,0],[4.181,0],[1.088,-5.608],[0,0]],"v":[[-41.779,-11.866],[-41.887,3.628],[-33.318,13.844],[32.207,13.844],[40.764,6.775],[41.4,-13.844]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[43.064,14.094],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":10,"ty":4,"nm":"Jambe_droite_3 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[237.248,224.637,0]},"a":{"a":0,"k":[29.502,9.229,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.474,-5.438],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-24.072,1.318],[-14.14,1.318],[-4.953,9.229],[29.501,9.229],[21.556,1.977],[22.215,-9.23],[-27.771,-9.23],[-29.502,-2.884]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[29.501,9.229],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":11,"ty":4,"nm":"Jambe_droite_4 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[228.154,224.637,0]},"a":{"a":0,"k":[38.845,9.479,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-33.297,-9.23],[-38.595,9.23],[38.595,9.23],[30.65,1.977],[31.309,-9.23]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[38.845,9.479],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":12,"ty":4,"nm":"Corps_2 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[194.622,114.483,0]},"a":{"a":0,"k":[14.153,7.984,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.208,7.734],[-3.208,7.734],[-3.208,-7.734],[3.208,-7.734]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[24.849,7.985],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.208,7.734],[-3.208,7.734],[-3.208,-7.734],[3.208,-7.734]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[14.153,7.985],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 2","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group"},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.208,7.734],[-3.208,7.734],[-3.208,-7.734],[3.208,-7.734]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[3.457,7.985],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 3","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":13,"ty":4,"nm":"Corps_3 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[236.725,57.034,0]},"a":{"a":0,"k":[26.936,35.945,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.485,0],[0.117,0.014],[-0.19,1.626],[-1.761,0.876],[-0.728,-1.464],[1.464,-0.731],[4.899,-42.111]],"o":[[-0.114,0],[-1.628,-0.189],[5.276,-45.364],[1.468,-0.727],[0.73,1.464],[-0.404,0.202],[-0.175,1.513]],"v":[[-23.545,35.695],[-23.891,35.675],[-26.496,32.386],[21.981,-34.968],[25.956,-33.636],[24.628,-29.658],[-20.602,33.07]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.902,0.902,0.902,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[26.936,35.945],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":14,"ty":4,"nm":"Corps_4 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[120.329,57.034,0]},"a":{"a":0,"k":[26.936,35.945,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.114,0],[0.176,1.511],[0.404,0.202],[-0.73,1.464],[-1.464,-0.727],[-5.279,-45.362],[1.627,-0.189]],"o":[[-1.485,0],[-4.9,-42.113],[-1.464,-0.733],[0.731,-1.464],[1.762,0.876],[0.189,1.628],[-0.118,0.014]],"v":[[23.546,35.695],[20.602,33.072],[-24.628,-29.658],[-25.956,-33.636],[-21.982,-34.968],[26.496,32.384],[23.892,35.675]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.902,0.902,0.902,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[26.936,35.945],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":15,"ty":4,"nm":"Corps_5 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[113.594,138.862,0]},"a":{"a":0,"k":[50.975,24.056,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.078,0],[0.126,4.287],[-4.368,0.127],[-0.06,0.298],[0,0],[0,0],[85.702,-2.522]],"o":[[-4.262,0],[-0.129,-4.369],[71.186,-2.096],[0,0],[0,0],[-0.265,1.734],[-0.079,0.002]],"v":[[-42.693,23.806],[-50.596,16.129],[-42.921,7.989],[35.116,-23.806],[42.905,-22.429],[50.725,-21.233],[-42.454,23.802]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.702,0.702,0.702,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[50.974,24.056],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":16,"ty":4,"nm":"Corps_6 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[156.498,116.432,0]},"a":{"a":0,"k":[8.07,8.069,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,4.318],[4.319,0],[0,-4.319],[-4.319,0]],"o":[[0,-4.319],[-4.319,0],[0,4.318],[4.319,0]],"v":[[7.82,0.001],[0,-7.82],[-7.82,0.001],[0,7.82]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.702,0.702,0.702,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[8.07,8.069],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":17,"ty":4,"nm":"Calque de forme 2","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[96.474,132.249,0]},"a":{"a":0,"k":[75.474,21.249,0]},"s":{"a":0,"k":[150.185,120.468,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[19.023,107.992]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"st","c":{"a":0,"k":[0.592157,0.592157,0.592157,1]},"o":{"a":0,"k":100},"w":{"a":0,"k":0},"lc":1,"lj":1,"ml":4,"nm":"Contour 1","mn":"ADBE Vector Graphic - Stroke"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[78.012,21.504],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":18,"ty":4,"nm":"Calque de forme 1","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[252.724,132.249,0]},"a":{"a":0,"k":[75.474,21.249,0]},"s":{"a":0,"k":[150.185,120.468,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[19.023,107.992]},"p":{"a":0,"k":[0,0]},"r":{"a":0,"k":0},"nm":"Tracé rectangulaire 1","mn":"ADBE Vector Shape - Rect"},{"ty":"st","c":{"a":0,"k":[0.592157,0.592157,0.592157,1]},"o":{"a":0,"k":100},"w":{"a":0,"k":0},"lc":1,"lj":1,"ml":4,"nm":"Contour 1","mn":"ADBE Vector Graphic - Stroke"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[78.012,21.504],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":19,"ty":4,"nm":"Corps_7 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[156.499,116.432,0]},"a":{"a":0,"k":[13.844,13.844,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-7.509],[-7.507,0],[0,7.508],[7.508,0]],"o":[[0,7.508],[7.508,0],[0,-7.509],[-7.507,0]],"v":[[-31.93,-0.501],[-18.335,13.093],[-4.74,-0.501],[-18.335,-14.095]],"c":true}},"nm":"Tracé 2","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":1,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0,0.875,1,0.5,0,0.763,1,1,0,0.651,1]}},"s":{"a":0,"k":[-17.488,12.385]},"e":{"a":0,"k":[-18.836,-13.739]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[32.179,14.345],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":20,"ty":4,"nm":"Corps_8 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[178.527,112.505,0]},"a":{"a":0,"k":[44.704,22.993,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[3.857,0],[0,0],[0.499,3.826],[0,0],[-4.637,0],[0,0],[0.6,-4.598],[0,0]],"o":[[0,0],[-3.859,0],[0,0],[-0.6,-4.598],[0,0],[4.636,0],[0,0],[-0.499,3.826]],"v":[[32.308,22.743],[-32.308,22.743],[-39.925,16.057],[-43.854,-14.068],[-36.238,-22.743],[36.237,-22.743],[43.854,-14.068],[39.924,16.057]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.902,0.902,0.902,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[44.704,22.993],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":21,"ty":4,"nm":"Corps_9 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[178.527,143.52,0]},"a":{"a":0,"k":[3.216,32.253,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.638,0],[0,1.638],[0,0],[-1.638,0],[0,-1.638],[0,0]],"o":[[-1.638,0],[0,0],[0,-1.638],[1.638,0],[0,0],[0,1.638]],"v":[[0.001,32.003],[-2.967,29.036],[-2.967,-29.036],[0.001,-32.003],[2.967,-29.036],[2.967,29.036]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.902,0.902,0.902,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[3.216,32.253],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":22,"ty":4,"nm":"Corps_10 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[178.527,100.452,0]},"a":{"a":0,"k":[86.079,100.702,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[-30.291,0],[0,0]],"o":[[0,0],[0,0],[0,0],[30.29,0],[0,0]],"v":[[85.829,-100.452],[-85.829,-100.452],[-66.053,96.496],[0,100.452],[66.052,96.496]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[86.079,100.702],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":23,"ty":4,"nm":"Corps_11 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[178.527,80.178,0]},"a":{"a":0,"k":[117.097,77.104,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-13.422],[0,0],[-4.749,0],[0,0],[0,4.75],[0,0],[13.422,0]],"o":[[-13.422,0],[0,0],[0,4.75],[0,0],[4.748,0],[0,0],[0,-13.422],[0,0]],"v":[[-88.852,-113.61],[-113.154,-89.307],[-113.154,31.501],[-104.557,40.099],[111.943,40.099],[120.542,31.501],[120.542,-89.307],[96.24,-113.61]],"c":true}},"nm":"Tracé 2","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":1,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0,0.875,1,0.5,0,0.763,1,1,0,0.651,1]}},"s":{"a":0,"k":[0,-69.176]},"e":{"a":0,"k":[0.559,-111.693]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[113.403,113.86],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1}]},{"id":"comp_8","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"bras_gauche_1 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[91.003,175.682,0]},"a":{"a":0,"k":[6.803,8.383,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.289,-0.616],[0,0],[0,0],[0.529,2.3],[0,0],[0,0],[0.384,1.706],[0.587,0.283],[0,0],[0.544,-1],[0,0]],"o":[[0,0],[0,0],[1.525,-1.802],[0,0],[0,0],[-1.15,1.317],[-0.144,-0.635],[0,0],[-1.026,-0.494],[0,0],[-0.326,0.598]],"v":[[-6.601,-1.721],[-1.86,8.383],[5.03,2.352],[6.613,-4.166],[6.035,-6.685],[4.606,-5.046],[0.913,-5.981],[-0.243,-7.434],[-1.768,-8.17],[-4.572,-7.268],[-6.543,-3.651]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[6.803,8.383],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":4,"nm":"bras_gauche_2 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[34.268,73.617,0]},"a":{"a":0,"k":[13.41,16.8,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.723,-6.662],[-6.341,-2.592],[-3.358,8.215],[1.098,-1.57],[3.688,1.507],[-2.373,5.807],[-3.835,0.007],[-0.643,1.572],[0,0],[1.267,0]],"o":[[-3.358,8.216],[6.34,2.59],[-1.774,-0.726],[-2.772,3.96],[-4.48,-1.832],[1.924,-4.704],[1.698,-0.003],[0,0],[-1.2,-0.491],[-5.43,-0.001]],"v":[[-9.801,-5.609],[-4.402,13.961],[13.16,3.778],[8.255,5.23],[-2.62,9.599],[-6.434,-4.232],[3.329,-11.975],[7.212,-14.508],[7.751,-15.826],[4.029,-16.549]],"c":true}},"nm":"Tracé 2","mn":"ADBE Vector Shape - Group"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":1,"cix":2,"ix":1,"mn":"ADBE Vector Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.251,0.4,0.749,0.5,0.218,0.345,0.649,1,0.184,0.29,0.549]}},"s":{"a":0,"k":[-10.654,1.154]},"e":{"a":0,"k":[13.658,0.057]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[13.41,16.8],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"bras_gauche_3 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[40.102,72.105,0]},"a":{"a":0,"k":[11.391,8.818,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.042,-2.551],[-2.999,-1.226],[-1.814,1.803],[0,0],[0,0],[0,0],[0.688,-0.16],[0,0],[0,0]],"o":[[-2.072,0.594],[-1.589,3.886],[2.054,0.839],[0,0],[0,0],[0,0],[0.487,-0.511],[0,0],[0,0],[0,0]],"v":[[-0.326,-6.822],[-5.401,-1.872],[-2.847,7.382],[3.413,5.671],[11.972,-2.204],[9.668,-2.191],[14.806,-7.572],[14.13,-8.756],[5.532,-6.756],[6.686,-8.812]],"c":true}},"nm":"Tracé 2","mn":"ADBE Vector Shape - Group"},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0.316,0.129],[-0.88,2.152],[-1.66,-0.678],[0.879,-2.15],[1.421,0]],"o":[[-1.659,-0.678],[0.878,-2.15],[1.659,0.678],[-0.713,1.743],[-0.334,0]],"v":[[-1.593,4.139],[-3.005,-0.986],[1.592,-3.65],[3.006,1.472],[-0.613,4.329]],"c":true}},"nm":"Tracé 3","mn":"ADBE Vector Shape - Group"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0,0.643,1,0.5,0,0.759,1,1,0,0.875,1]}},"s":{"a":0,"k":[-4.574,3.271]},"e":{"a":0,"k":[13.182,-7.535]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[7.24,9.165],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"bras_gauche_4 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[37.17,72.306,0]},"a":{"a":0,"k":[25.077,29.674,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.452,-1.42],[-8.539,-3.589],[-1.124,2.895],[0,0],[2.703,1.156],[6.004,3.616],[1.709,-2.671],[4.541,-13.592]],"o":[[7.339,4.252],[2.861,1.203],[0,0],[1.064,-2.74],[-7.088,-3.03],[-2.716,-1.636],[-6.138,9.593],[-0.897,2.688]],"v":[[-21.264,16.37],[2.545,28.221],[9.828,25.162],[23.763,-10.724],[20.839,-17.727],[1.202,-27.788],[-6.752,-25.957],[-23.93,9.328]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"gr","it":[{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":0,"cix":2,"ix":2,"mn":"ADBE Vector Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[1,1,1,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[25.077,29.674],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"bras_gauche_5 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[70.924,48.401,0]},"a":{"a":0,"k":[24.211,26.207,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.188,0],[0.354,0.139],[-0.594,1.528],[27.161,23.788],[0.591,-0.04],[0.36,-0.425],[1.254,1.058],[-1.057,1.253],[-2.162,0.164],[-1.643,-1.438],[0.262,-0.673]],"o":[[-0.359,0],[-1.526,-0.593],[1.035,-2.665],[-0.433,-0.378],[-0.56,0.043],[-1.05,1.251],[-1.254,-1.055],[1.392,-1.651],[2.172,-0.164],[35.433,31.033],[-0.456,1.173]],"v":[[15.187,25.957],[14.111,25.754],[12.423,21.914],[-15.382,-19.354],[-16.945,-19.877],[-18.369,-19.152],[-22.548,-18.797],[-22.904,-22.977],[-17.393,-25.793],[-11.473,-23.818],[17.951,24.065]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.702,0.702,0.702,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[24.211,26.207],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"bras_gauche_6 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[81.209,101.072,0]},"a":{"a":0,"k":[14.423,65.557,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.311,2.614],[-0.819,14.732],[-1.456,3.747],[19.564,20.014],[5.88,-22.918],[1.041,-18.73],[-4.855,-9.688],[2.316,-1.785],[-3.527,1.952],[-2.39,1.843]],"o":[[-4.855,-9.688],[1.04,-18.73],[1.223,-3.143],[-2.795,-2.859],[-1.457,3.747],[-0.818,14.732],[1.311,2.614],[-4.023,3.103],[5.16,-2.858],[2.315,-1.785]],"v":[[13.769,50.42],[-1.55,1.744],[4.901,-29.682],[-14.123,-65.218],[-4.987,-29.682],[-11.439,1.744],[3.88,50.42],[2.169,57.988],[0.894,65.176],[12.058,57.988]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[14.423,65.557],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":7,"ty":4,"nm":"bras_gauche_7 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[54.426,101.371,0]},"a":{"a":0,"k":[42.118,76.688,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.305,2.603],[-0.819,14.742],[-1.457,3.746],[28.958,25.347],[1.808,-2.144],[1.196,-39.953],[-2.606,-9.68],[-2.43,0.004],[-1.981,-3.562],[-3.85,0.032],[-9.146,3.985],[-4.019,3.102]],"o":[[-4.849,-9.673],[1.04,-18.731],[1.398,-3.595],[-2.111,-1.848],[-9.448,11.201],[-0.711,23.772],[0.631,2.347],[4.365,0],[1.871,3.365],[8.26,-0.07],[12.515,-5.452],[2.304,-1.778]],"v":[[40.563,50.143],[25.233,1.445],[31.685,-29.98],[3.032,-74.59],[-4.105,-74.074],[-41.157,11.852],[-36.898,60.842],[-31.7,64.797],[-21.556,70.768],[-12.473,76.405],[14.827,71.164],[38.86,57.676]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.949,0.949,0.949,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[42.118,76.688],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":8,"ty":4,"nm":"bras_gauche_8 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[68.876,179.527,0]},"a":{"a":0,"k":[29.519,20.299,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[45.372,-7.334],[0,0],[-2.172,-0.52],[0,0],[-1.24,0.354],[0,0],[-0.947,1.844],[1.101,2.148],[0,0],[0,0],[0,0],[0,0],[0,0],[0.529,2.301],[0,0],[1.252,1.049],[0,0]],"o":[[0,0],[0.984,2.005],[0,0],[1.254,0.301],[0,0],[1.994,-0.57],[1.103,-2.147],[0,0],[0,0],[0,0],[0,0],[0,0],[1.525,-1.802],[0,0],[-0.365,-1.59],[0,0],[0,0]],"v":[[-29.268,-3.333],[-21.611,12.265],[-16.628,16.251],[-2.014,19.748],[1.79,19.666],[15.878,15.641],[20.488,11.857],[20.49,5.015],[15.251,-5.209],[13.886,-0.047],[16.445,5.025],[19.516,5.195],[27.156,-1.493],[28.74,-8.012],[27.753,-12.309],[25.261,-16.377],[20.88,-20.049]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[29.519,20.299],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1}]},{"id":"comp_9","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Bras_droit_1 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[201.14,176.2,0]},"a":{"a":0,"k":[6.728,8.342,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.596,1.095],[0,0],[1.88,-0.907],[0.144,-0.635],[1.149,1.316],[0,0],[0,0],[-1.524,-1.803],[0,0],[0,0]],"o":[[0,0],[0.529,-1.128],[0,0],[-0.999,-1.833],[-0.585,0.283],[-0.385,1.706],[0,0],[0,0],[-0.528,2.3],[0,0],[0,0],[0,0]],"v":[[1.775,8.342],[6.357,-1.424],[6.251,-4.96],[5.522,-6.299],[0.381,-7.952],[-0.774,-6.499],[-4.466,-5.564],[-5.946,-7.26],[-6.537,-4.684],[-4.954,1.834],[1.951,7.878],[1.714,8.339]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[6.728,8.342],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":4,"nm":"Bras_droit_2 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[221.298,48.4,0]},"a":{"a":0,"k":[24.206,26.208,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.357,0],[0.455,1.175],[-35.427,31.027],[-2.181,-0.166],[-1.393,-1.653],[1.253,-1.055],[1.052,1.249],[0.56,0.043],[0.431,-0.378],[-1.037,-2.667],[1.529,-0.593]],"o":[[-1.187,0],[-0.26,-0.673],[1.641,-1.438],[2.161,0.162],[1.055,1.253],[-1.254,1.056],[-0.36,-0.425],[-0.589,-0.042],[-27.159,23.786],[0.592,1.526],[-0.352,0.137]],"v":[[-15.189,25.958],[-17.956,24.064],[11.471,-23.817],[17.389,-25.792],[22.902,-22.976],[22.546,-18.796],[18.367,-19.151],[16.943,-19.876],[15.382,-19.355],[-12.424,21.917],[-14.117,25.757]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.702,0.702,0.702,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[24.206,26.208],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"Bras_droit_3 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[256.051,101.653,0]},"a":{"a":0,"k":[23.07,76.124,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.711,23.772],[9.448,11.201],[2.11,-1.848],[0.602,-0.539],[-1.158,-38.715],[2.606,-9.68],[2.431,0.004],[1.981,-3.562],[2.71,-0.769],[-2.298,-0.02],[-1.871,3.365],[-4.365,0],[-0.632,2.347]],"o":[[-1.195,-39.953],[-1.808,-2.144],[-0.627,0.548],[10.135,12.253],[0.711,23.772],[-0.632,2.347],[-4.365,0],[-1.424,2.562],[2.5,0.228],[3.85,0.032],[1.982,-3.562],[2.431,0.004],[2.607,-9.68]],"v":[[22.943,11.57],[-14.109,-74.355],[-21.245,-74.871],[-23.071,-73.245],[13.054,11.57],[8.796,60.561],[3.597,64.515],[-6.547,70.487],[-12.972,75.757],[-5.741,76.124],[3.341,70.487],[13.486,64.515],[18.684,60.561]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[23.071,76.124],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"Bras_droit_4 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[237.838,101.371,0]},"a":{"a":0,"k":[42.118,76.688,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-1.304,2.603],[0.819,14.742],[1.457,3.746],[-28.958,25.347],[-1.809,-2.144],[-1.196,-39.953],[2.606,-9.68],[2.43,0.004],[1.982,-3.562],[3.85,0.032],[9.147,3.985],[4.019,3.102]],"o":[[4.85,-9.673],[-1.04,-18.731],[-1.399,-3.595],[2.111,-1.848],[9.448,11.201],[0.711,23.772],[-0.632,2.347],[-4.366,0],[-1.871,3.365],[-8.26,-0.07],[-12.514,-5.452],[-2.305,-1.778]],"v":[[-40.564,50.143],[-25.234,1.445],[-31.685,-29.98],[-3.032,-74.59],[4.105,-74.074],[41.157,11.852],[36.898,60.842],[31.7,64.797],[21.555,70.768],[12.473,76.405],[-14.828,71.164],[-38.86,57.676]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.949,0.949,0.949,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[42.118,76.688],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"Bras_droit_5 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[235.774,187.013,0]},"a":{"a":0,"k":[16.838,12.468,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.915,0.558],[0,0],[2.172,-0.52],[0,0],[0,0],[-1.254,0.301],[0,0],[-0.984,2.005],[0,0]],"o":[[0,0],[-0.985,2.005],[0,0],[0,0],[1.239,0.354],[0,0],[2.172,-0.52],[0,0],[-3.341,-0.54]],"v":[[7.487,-12.468],[-0.707,4.779],[-5.692,8.765],[-16.837,11.432],[-14.221,12.18],[-10.417,12.262],[4.197,8.765],[9.181,4.779],[16.838,-10.819]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0,0,0,1]},"o":{"a":0,"k":20},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[16.838,12.468],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"Bras_droit_6 Silhouettes","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[223.344,179.527,0]},"a":{"a":0,"k":[29.518,20.299,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-45.372,-7.334],[0,0],[2.172,-0.52],[0,0],[1.24,0.354],[0,0],[0.947,1.844],[-1.1,2.148],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.528,2.301],[0,0],[-1.252,1.049],[0,0]],"o":[[0,0],[-0.985,2.005],[0,0],[-1.254,0.301],[0,0],[-1.994,-0.57],[-1.102,-2.147],[0,0],[0,0],[0,0],[0,0],[0,0],[-1.524,-1.802],[0,0],[0.365,-1.59],[0,0],[0,0]],"v":[[29.268,-3.333],[21.612,12.265],[16.627,16.251],[2.013,19.748],[-1.791,19.666],[-15.879,15.641],[-20.488,11.857],[-20.491,5.015],[-15.252,-5.209],[-13.886,-0.047],[-16.445,5.025],[-19.515,5.195],[-27.157,-1.493],[-28.74,-8.012],[-27.754,-12.309],[-25.262,-16.377],[-20.88,-20.049]],"c":true}},"nm":"Tracé 1","mn":"ADBE Vector Shape - Group"},{"ty":"mm","mm":4,"nm":"Fusionner les tracés 1","mn":"ADBE Vector Filter - Merge"},{"ty":"fl","c":{"a":0,"k":[0.302,0.302,0.302,1]},"o":{"a":0,"k":100},"r":1,"nm":"Fond 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[29.518,20.299],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Groupe 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1}]}],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Calque de forme 1","td":1,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[275,275,0]},"a":{"a":0,"k":[0,0,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[525.711,525.711]},"p":{"a":0,"k":[0,0]},"nm":"Tracé d'ellipse 1","mn":"ADBE Vector Shape - Ellipse"},{"ty":"st","c":{"a":0,"k":[0.592157,0.592157,0.592157,1]},"o":{"a":0,"k":100},"w":{"a":0,"k":0},"lc":1,"lj":1,"ml":4,"nm":"Contour 1","mn":"ADBE Vector Graphic - Stroke"},{"ty":"gf","o":{"a":0,"k":100},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.114,0.11,0.388,0.5,0.078,0.076,0.273,1,0.043,0.043,0.157]}},"s":{"a":0,"k":[-6.477,-259.691]},"e":{"a":0,"k":[-2.676,263.914]},"t":1,"nm":"Fond en dégradé 1","mn":"ADBE Vector Graphic - G-Fill"},{"ty":"tr","p":{"a":0,"k":[-0.633,-0.008],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformer "}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group"}],"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":0,"nm":"1_LOADER_NAVI_COMPLET","tt":1,"refId":"comp_4","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[275,275,0]},"a":{"a":0,"k":[300,300,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":600,"h":600,"ip":0,"op":600.000024438501,"st":0,"bm":0,"sr":1}]} -------------------------------------------------------------------------------- /assets/animation/spinner.json: -------------------------------------------------------------------------------- 1 | {"v":"4.11.1","fr":60,"ip":0,"op":224,"w":1920,"h":1080,"nm":"Comp 7","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[650,650],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"tm","s":{"a":0,"k":99.5,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":2,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.035294119269,0.61960786581,0.992156863213,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":69,"ix":5},"lc":2,"lj":2,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[2.273,-2.984],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.093],"y":[1]},"o":{"x":[0.611],"y":[0]},"n":["0p093_1_0p611_0"],"t":0,"s":[0],"e":[360]},{"i":{"x":[0.254],"y":[1]},"o":{"x":[0.723],"y":[0]},"n":["0p254_1_0p723_0"],"t":65,"s":[360],"e":[0]},{"i":{"x":[0.177],"y":[1]},"o":{"x":[0.589],"y":[0]},"n":["0p177_1_0p589_0"],"t":138,"s":[0],"e":[360]},{"t":207}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":224,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[650,650],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.994889861462,0.995429304534,0.997916666667,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":69,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[2.273,-2.984],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":224,"st":0,"bm":0}]} -------------------------------------------------------------------------------- /assets/styling.js: -------------------------------------------------------------------------------- 1 | import { StyleSheet } from "react-native"; 2 | 3 | const styles = StyleSheet.create({ 4 | container: { 5 | flex: 1, 6 | }, 7 | content: { 8 | padding: 10, 9 | }, 10 | title: { 11 | padding: 15, 12 | }, 13 | background: { 14 | backgroundColor: "#5127C6", 15 | }, 16 | titleColor: { 17 | color: "white", 18 | }, 19 | }); 20 | 21 | export default styles; 22 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = function (api) { 2 | api.cache(true); 3 | return { 4 | presets: ["babel-preset-expo"], 5 | }; 6 | }; 7 | -------------------------------------------------------------------------------- /context/AppContext.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | const AppContext = React.createContext({ 4 | appReady: false, 5 | toggleAppReady: () => {}, 6 | }); 7 | 8 | export default AppContext; 9 | -------------------------------------------------------------------------------- /navigation/Navigation.jsx: -------------------------------------------------------------------------------- 1 | import React, { useContext, useEffect } from "react"; 2 | 3 | import { NavigationContainer } from "@react-navigation/native"; 4 | import { createDrawerNavigator } from "@react-navigation/drawer"; 5 | 6 | // import DrawerContent from "../Components/Drawer/DrawerContent"; 7 | import HomeScreen from "../screens/HomeScreen"; 8 | import LoginScreen from "../screens/LoginScreen"; 9 | // import SignUpScreen from "../screens/SignUpScreen"; 10 | // import ProfileScreen from "../screens/ProfileScreen"; 11 | // import CategoryScreen from "../screens/CategoryScreen"; 12 | // import WatchListScreen from "../screens/WatchListScreen"; 13 | // import ResultScreen from "../screens/ResultScreen"; 14 | // import ShowCaseScreen from "../screens/ShowCaseScreen"; 15 | // import SearchScreen from "../screens/SearchScreen"; 16 | import AboutScreen from "../screens/AboutScreen"; 17 | // import ShoppingCartScreen from "../screens/ShoppingCartScreen"; 18 | 19 | // import { initialFetch } from "../redux/reducers/InitialLoad"; 20 | import { connect } from "react-redux"; 21 | 22 | const Drawer = createDrawerNavigator(); 23 | 24 | const Navigation = (props) => { 25 | return ( 26 | 27 | 28 | 29 | 30 | 31 | 32 | ); 33 | }; 34 | 35 | const mapStateToProps = (state) => ({ user: state.user }); 36 | 37 | export default connect(mapStateToProps, undefined)(Navigation); 38 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "best-buy-app", 3 | "version": "0.2.0", 4 | "private": false, 5 | "devDependencies": { 6 | "@babel/core": "~7.9.0", 7 | "jest-expo": "^39.0.0", 8 | "react-test-renderer": "16.2.0" 9 | }, 10 | "main": "node_modules/expo/AppEntry.js", 11 | "scripts": { 12 | "start": "expo start", 13 | "eject": "expo eject", 14 | "android": "expo start --android", 15 | "ios": "expo start --ios", 16 | "test": "jest", 17 | "reset": "watchman watch-del-all && rm -rf node_modules && yarn && yarn && yarn run start" 18 | }, 19 | "jest": { 20 | "preset": "jest-expo" 21 | }, 22 | "dependencies": { 23 | "@expo/vector-icons": "^10.2.1", 24 | "@react-native-community/masked-view": "0.1.10", 25 | "@react-navigation/drawer": "^5.9.3", 26 | "@react-navigation/native": "^5.7.6", 27 | "@react-navigation/stack": "^5.9.3", 28 | "axios": "^0.20.0", 29 | "expo": "^39.0.0", 30 | "expo-facebook": "~9.0.0", 31 | "expo-font": "~8.3.0", 32 | "expo-google-app-auth": "^7.0.0", 33 | "firebase": "7.9.0", 34 | "lottie-react-native": "~2.6.1", 35 | "native-base": "^2.13.14", 36 | "react": "16.13.1", 37 | "react-native": "https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz", 38 | "react-native-easy-grid": "^0.2.2", 39 | "react-native-gesture-handler": "~1.7.0", 40 | "react-native-image-placeholder": "^1.0.14", 41 | "react-native-loader": "^1.3.1", 42 | "react-native-reanimated": "~1.13.0", 43 | "react-native-safe-area-context": "3.1.4", 44 | "react-native-screens": "~2.10.1", 45 | "react-native-search-header": "^0.3.5", 46 | "react-native-snap-carousel": "^3.9.1", 47 | "react-redux": "^5.1.1", 48 | "redux": "^4.0.5", 49 | "redux-devtools-extension": "^2.13.8", 50 | "redux-thunk": "^2.3.0" 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /redux/reducers/InitialLoad.js: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { bestBuyKey } from "../../private/constants"; 3 | // Initial state 4 | const initialState = { 5 | trendItems: [], 6 | popularItems: [], 7 | allItemsReady: false, 8 | itemsLoading: false, 9 | error: null, 10 | }; 11 | 12 | //Actions 13 | const GET_ALL_DATA_INIT = "GET_ALL_DATA_INIT"; 14 | const GET_ALL_DATA_SUCCESS = "GET_ALL_DATA_SUCCESS"; 15 | const GET_ALL_DATA_FAIL = "GET_ALL_DATA_FAIL"; 16 | 17 | //Action creators 18 | export const getInitialData = () => ({ 19 | type: GET_ALL_DATA_INIT, 20 | }); 21 | 22 | export const getAllDataSuccess = (trendData, popularData) => ({ 23 | type: GET_ALL_DATA_SUCCESS, 24 | trendData: trendData, 25 | popularData: popularData, 26 | }); 27 | 28 | export const getAllDataFail = (error) => ({ 29 | type: GET_ALL_DATA_FAIL, 30 | payload: error, 31 | }); 32 | 33 | export const initialFetch = () => { 34 | const trendingPath = `https://api.bestbuy.com/beta/products/trendingViewed?apiKey=${bestBuyKey}`; 35 | const popularPath = `https://api.bestbuy.com/beta/products/mostViewed?apiKey=${bestBuyKey}`; 36 | 37 | const getPromise = async (endpoint) => await axios.get(endpoint); 38 | 39 | const getTrendItems = () => getPromise(trendingPath); 40 | const getPopularItems = () => getPromise(popularPath); 41 | 42 | return (dispatch) => { 43 | dispatch(getInitialData()); 44 | axios 45 | .all([getTrendItems(), getPopularItems()]) 46 | .then( 47 | axios.spread((trendResult, popularResult) => { 48 | const trends = trendResult.data.results; 49 | const populars = popularResult.data.results; 50 | dispatch(getAllDataSuccess(trends, populars)); 51 | }) 52 | ) 53 | .catch((error) => { 54 | dispatch(getAllDataFail(error)); 55 | }); 56 | }; 57 | }; 58 | 59 | const initialLoad = (state = initialState, action) => { 60 | switch (action.type) { 61 | case GET_ALL_DATA_INIT: 62 | return { 63 | ...state, 64 | itemsLoading: true, 65 | }; 66 | case GET_ALL_DATA_SUCCESS: 67 | return { 68 | ...state, 69 | trendItems: action.trendData, 70 | popularItems: action.popularData, 71 | itemsLoading: false, 72 | allItemsReady: true, 73 | }; 74 | case GET_ALL_DATA_FAIL: 75 | return { 76 | ...state, 77 | itemsLoading: false, 78 | allItemsReady: false, 79 | error: action.payload, 80 | }; 81 | default: 82 | return state; 83 | } 84 | }; 85 | 86 | export default initialLoad; 87 | -------------------------------------------------------------------------------- /redux/reducers/index.js: -------------------------------------------------------------------------------- 1 | import { combineReducers } from 'redux'; 2 | import initialLoad from './InitialLoad'; 3 | import userReducer from './userModule'; 4 | 5 | export default combineReducers({ 6 | user: userReducer, 7 | initialLoad: initialLoad 8 | }) -------------------------------------------------------------------------------- /redux/reducers/userModule.js: -------------------------------------------------------------------------------- 1 | import firebase from "firebase"; 2 | import axios from 'axios'; 3 | import { bestBuyKey } from '../../private/constants'; 4 | import { fbKey, androidID, iosID } from "../../private/constants"; 5 | 6 | // Initial state 7 | const initialState = { 8 | auth: false, 9 | loggingIn: false, 10 | user: {}, 11 | error: null 12 | }; 13 | 14 | //Actions 15 | const REQUEST_LOGIN = 'REQUEST_LOGIN'; 16 | const LOGIN_SUCCESS = 'LOGIN_SUCCESS'; 17 | const LOGIN_FAIL = 'LOGIN_FAIL'; 18 | const LOGOUT = 'LOGOUT'; 19 | const REQUEST_SIGNUP = 'REQUEST_SIGNUP'; 20 | const LOGIN_SIGNUP = 'LOGIN_SIGNUP'; 21 | 22 | //Action creators 23 | export const requestLogin = () => ({ 24 | type: REQUEST_LOGIN 25 | }); 26 | 27 | export const loginSuccess = (user) => ({ 28 | type: LOGIN_SUCCESS, 29 | user: user 30 | }); 31 | 32 | export const loginFail = (error) => ({ 33 | type: LOGIN_FAIL, 34 | error: error 35 | }); 36 | 37 | export const logout = () => ({ 38 | type: LOGOUT 39 | }); 40 | 41 | export const login = () => { 42 | //testing data for validation 43 | const correctEmail = "a"; 44 | const correctPassword = "a"; 45 | 46 | return dispatch => { 47 | dispatch(requestLogin()); 48 | dispatch(loginSuccess({ test: 'user' })); 49 | } 50 | }; 51 | 52 | 53 | //Reducer 54 | export default function UserStateReducer(state = initialState, action = {}) { 55 | switch (action.type) { 56 | case REQUEST_LOGIN: 57 | return { 58 | ...state, 59 | loggingIn: true 60 | }; 61 | // return state 62 | // .set('loggingIn', true); 63 | 64 | case LOGIN_SUCCESS: 65 | return { 66 | ...state, 67 | auth: true, 68 | loggingIn: false, 69 | user: action.user 70 | }; 71 | // return state 72 | // .set('auth', true) 73 | // .set('loggingIn', false) 74 | // .set('user', action.user); 75 | 76 | case LOGIN_FAIL: 77 | return { 78 | ...state, 79 | loggingIn: false, 80 | error: action.error 81 | }; 82 | 83 | case LOGOUT: 84 | return { 85 | ...state, 86 | auth: false, 87 | loggingIn: false, 88 | user: {}, 89 | error: null 90 | } 91 | 92 | default: 93 | return state; 94 | } 95 | } -------------------------------------------------------------------------------- /redux/store.js: -------------------------------------------------------------------------------- 1 | import { createStore, applyMiddleware } from "redux"; 2 | import thunk from 'redux-thunk'; 3 | import { composeWithDevTools } from 'redux-devtools-extension'; 4 | 5 | import rootReducer from './reducers'; 6 | 7 | 8 | 9 | const store = createStore(rootReducer, 10 | composeWithDevTools(applyMiddleware(thunk))) 11 | 12 | export default store; -------------------------------------------------------------------------------- /screens/AboutScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | 3 | import { H1, H3, Container, Content, Icon, Text } from "native-base"; 4 | import styles from "../assets/styling"; 5 | import NavBar from "../Components/NavBar"; 6 | import { Col, Row, Grid } from "react-native-easy-grid"; 7 | 8 | import PersonAnimated from "../Components/Loaders/PersonAnimated"; 9 | import { Button } from "react-native"; 10 | 11 | export default ({ navigation }) => ( 12 | 13 | 14 | 15 | 16 | 17 | 130 | 131 | 132 | 133 | 134 | 135 | 138 | 139 | 140 | 144 | MSRP $ {item.prices.regular} 145 | 146 | 147 | 148 | 149 | Now $ {item.prices.current}{" "} 150 | 151 | 152 | 153 | 154 | 155 | ); 156 | })} 157 | 158 | 159 | 160 | 161 | 162 | 163 | ); 164 | } 165 | } 166 | 167 | const mapStateToProps = (state) => ({ initialLoad: state.initialLoad }); 168 | 169 | export default connect(mapStateToProps, { initialFetch })(HomeScreen); 170 | -------------------------------------------------------------------------------- /screens/LoginScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { Alert } from "react-native"; 3 | import { connect } from 'react-redux'; 4 | import * as Google from 'expo-google-app-auth'; 5 | import * as Facebook from 'expo-facebook'; 6 | import { fbKey, androidID, iosID } from "../private/constants"; 7 | import * as firebase from "firebase"; 8 | import { requestLogin, loginSuccess, loginFail } from '../redux/reducers/userModule'; 9 | 10 | import { 11 | Container, 12 | Content, 13 | Text, 14 | Button, 15 | Icon, 16 | Form, 17 | Item, 18 | Label, 19 | Input 20 | } from "native-base"; 21 | import { Col, Row, Grid } from "react-native-easy-grid"; 22 | 23 | import styles from "../assets/styling"; 24 | import NavBar from "../Components/NavBar"; 25 | import SocialMediaButtons from "../Components/SocialMediaButtons"; 26 | 27 | 28 | 29 | class LoginScreen extends Component { 30 | constructor(props) { 31 | super(props); 32 | this.state = { 33 | email: "", 34 | password: "" 35 | }; 36 | } 37 | 38 | signOut = () => { 39 | firebase 40 | .auth() 41 | .signOut() 42 | .then( 43 | () => { 44 | console.log("Signed Out"); 45 | }, 46 | function (error) { 47 | console.error("Sign Out Error", error); 48 | } 49 | ); 50 | } 51 | 52 | async loginWithFacebook() { 53 | this.props.requestLogin(); 54 | 55 | const { navigate } = this.props.navigation; 56 | const { type, token } = await Facebook.logInWithReadPermissionsAsync( 57 | fbKey, 58 | { permissions: ["public_profile"] } 59 | ); 60 | 61 | if (type === "success") { 62 | const credential = firebase.auth.FacebookAuthProvider.credential(token); 63 | 64 | firebase 65 | .auth() 66 | .signInAndRetrieveDataWithCredential(credential) 67 | // .then(user => this.props.loginSuccess(user)) 68 | .catch(error => { 69 | this.props.loginFail(error); 70 | }); 71 | navigate("Home"); 72 | } 73 | } 74 | 75 | logInUser = (email, password) => { 76 | const { navigate } = this.props.navigation; 77 | try { 78 | if (this.state.password.length < 6) { 79 | alert("Password is too short"); 80 | return; 81 | } 82 | this.props.requestLogin(); 83 | firebase 84 | .auth() 85 | .signInWithEmailAndPassword(email, password) 86 | // .then(user => this.props.loginSuccess(user)); 87 | navigate("Home"); 88 | } catch (error) { 89 | this.props.loginFail(error.toString()); 90 | } 91 | }; 92 | 93 | async signInWithGoogleAsync() { 94 | this.props.requestLogin(); 95 | try { 96 | const { navigate } = this.props.navigation; 97 | const result = await Google.logInAsync({ 98 | androidClientId: androidID, 99 | iosClientId: iosID, 100 | scopes: ["profile", "email"] 101 | }); 102 | //console.log(result); 103 | 104 | if (result.type === "success") { 105 | const credential = firebase.auth.GoogleAuthProvider.credential( 106 | result.idToken, 107 | result.accessToken 108 | ); 109 | //console.log(credential); 110 | firebase 111 | .auth() 112 | .signInAndRetrieveDataWithCredential(credential) 113 | // .then(user => { 114 | // this.props.loginSuccess(user); 115 | // }) 116 | .catch(error => { 117 | this.props.loginFail(error.toString()); 118 | }); 119 | navigate("Home"); 120 | } else { 121 | Alert.alert("Login not sucessfull, try again."); 122 | } 123 | // if (this.props.user.auth === true) { 124 | // () => navigate("Home"); 125 | // } 126 | } catch (e) { 127 | console.log(e.toString()); 128 | } 129 | } 130 | 131 | render() { 132 | return ( 133 | 134 | this.props.navigation.navigate("DrawerToggle")} 137 | /> 138 | 139 | 140 | 146 | 147 |
148 | 149 | 150 | this.setState({ email })} 154 | /> 155 | 156 | 157 | 158 | 159 | this.setState({ password })} 163 | /> 164 | 165 |
166 | 167 |
168 | 173 | 174 | 175 | 184 | 185 | 186 | 187 | this.loginWithFacebook()} google={() => this.signInWithGoogleAsync()} /> 188 | 189 | {/* 190 | 191 | 192 |

One Click

193 | 194 | 198 |

199 | 210 | 211 | 212 | */} 213 | 214 | 215 | 216 | ); 217 | } 218 | } 219 | const mapStateToProps = state => ({ user: state.user }); 220 | export default connect(mapStateToProps, { requestLogin, loginSuccess, loginFail })(LoginScreen); 221 | 222 | {/* */} 231 | -------------------------------------------------------------------------------- /screens/ProfileScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { connect } from 'react-redux'; 3 | 4 | import { 5 | Container, 6 | Content, 7 | Text, 8 | List, 9 | ListItem, 10 | Left, 11 | Body, 12 | Thumbnail, 13 | Icon, 14 | Button, 15 | Item, 16 | Input 17 | } from "native-base"; 18 | import { Col, Row, Grid } from "react-native-easy-grid"; 19 | import NavBar from "../Components/NavBar"; 20 | import styles from "../assets/styling"; 21 | 22 | class ProfileScreen extends Component { 23 | render() { 24 | const { user } = this.props.user; 25 | return ( 26 | 27 | this.props.navigation.navigate("DrawerToggle")} 30 | /> 31 | 32 | {this.props.user.auth ? 33 | 34 | 35 | 36 | 37 | 38 | 39 | 42 | 43 | 44 | {user.displayName} 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | Signed up via : {user.providerData[0].providerId} 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 77 | 78 | 79 | 80 | : 81 | } 89 | 90 | 91 | ); 92 | } 93 | } 94 | 95 | const mapStateToProps = state => ({ user: state.user }); 96 | 97 | export default connect(mapStateToProps, {})(ProfileScreen); 98 | 99 | -------------------------------------------------------------------------------- /screens/ResultScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { Image } from "react-native"; 3 | 4 | import { starRating } from '../assets/GenerateStarRating'; 5 | import axios from "axios"; 6 | import { 7 | Container, 8 | Content, 9 | Card, 10 | CardItem, 11 | Text, 12 | Icon, 13 | Left, 14 | Body, 15 | Right, 16 | } from "native-base"; 17 | import styles from "../assets/styling"; 18 | import { bestBuyKey } from "../private/constants"; 19 | import HeaderBack from "../Components/HeaderBack"; 20 | import SpaceLoader from "../Components/Loaders/SpaceLoader"; 21 | 22 | class ResultScreen extends Component { 23 | constructor(props) { 24 | super(props); 25 | this.state = { 26 | searchData: [], 27 | pageCount: 1, 28 | totalPages: 0, 29 | isReady: false 30 | }; 31 | //use this word inside function 32 | this.fetchItem = this.fetchItem.bind(this); 33 | this.fetchItemsByCategory = this.fetchItemsByCategory.bind(this); 34 | } 35 | 36 | componentDidMount() { 37 | //get props passed from search screens 38 | const { params } = this.props.navigation.state; 39 | if (params.searchQuery) { 40 | this.fetchItem(params.searchQuery); 41 | } 42 | if (params.categoryQuery) { 43 | this.fetchItemsByCategory(params.categoryQuery); 44 | } 45 | 46 | 47 | } 48 | 49 | 50 | //gets all items based on user query 51 | async fetchItem(query) { 52 | const pageCount = this.state.pageCount; 53 | // const path = `https://api.bestbuy.com/v1/products((search=${query}))?apiKey=${bestBuyKey}&sort=customerReviewAverage.asc&show=name,regularPrice,salePrice,customerReviewAverage,freeShipping,shipping,thumbnailImage,image&pageSize=50&page=${pageCount}&format=json`; 54 | const path = `https://api.bestbuy.com/v1/products((search=${query}))?apiKey=${bestBuyKey}&sort=customerReviewCount.dsc&show=name,image,customerReviewAverage,customerReviewCount,bestSellingRank,manufacturer,modelNumber,regularPrice,salePrice,mobileUrl,percentSavings,inStoreAvailability,freeShipping,sku,shippingCost&pageSize=30&page=${pageCount}&format=json`; 55 | // console.log("===================================="); 56 | // console.log(path); 57 | // console.log("===================================="); 58 | 59 | await axios 60 | .get(path) 61 | .then(response => { 62 | this.setState({ 63 | searchData: response.data.products, 64 | totalPages: response.data.totalPages, 65 | isReady: true 66 | }); 67 | console.log("search query success"); 68 | }) 69 | .catch(error => { 70 | console.log(error); 71 | }); 72 | } 73 | //gets all items based on category 74 | async fetchItemsByCategory(query) { 75 | const pageCount = this.state.pageCount; 76 | const path = `https://api.bestbuy.com/v1/products((categoryPath.id=${query}))?apiKey=${bestBuyKey}&sort=customerReviewCount.dsc&show=name,image,customerReviewAverage,customerReviewCount,bestSellingRank,manufacturer,modelNumber,regularPrice,salePrice,mobileUrl,percentSavings,inStoreAvailability,freeShipping,sku,shippingCost&pageSize=30&page=${pageCount}&format=json`; 77 | // console.log("===================================="); 78 | // console.log("category path" + path); 79 | // console.log("===================================="); 80 | 81 | await axios 82 | .get(path) 83 | .then(response => { 84 | this.setState({ 85 | searchData: response.data.products, 86 | totalPages: response.data.totalPages, 87 | isReady: true 88 | }); 89 | // console.log(response); 90 | }) 91 | .catch(error => { 92 | console.log(error); 93 | }); 94 | } 95 | 96 | 97 | 98 | //if 0 then return free shipping 99 | shipping(i) { 100 | if (i == 0) { 101 | return Free shipping; 102 | } else { 103 | return Shipping : {i}; 104 | } 105 | } 106 | //if the item is available return green icon 107 | checkItem(status) { 108 | if (status == true) { 109 | return ( 110 | 116 | ); 117 | } else { 118 | return ( 119 | 125 | ); 126 | } 127 | } 128 | 129 | render() { 130 | const { isReady, searchData } = this.state; 131 | //get params as props from home screen search 132 | const { params } = this.props.navigation.state; 133 | 134 | const itemCards = searchData.map((item, i) => { 135 | return ( 136 | 137 | 141 | this.props.navigation.navigate("ShowCaseScreen", { 142 | serialNumber: item.sku 143 | }) 144 | } 145 | > 146 | 147 | 148 | {item.name} 149 | {item.manufacturer} 150 | 151 | 152 | 153 | 154 | 159 | 160 | 161 | 162 | 163 | $ {item.salePrice} 164 | 165 | 166 | {this.shipping(item.shippingCost)} 167 | Save % {item.percentSavings} 168 | 169 | 170 | {/* */} 171 | 172 | 173 | 174 | {starRating(item.customerReviewAverage)} 175 | 176 | {/* Orders {item.customerReviewCount} */} 177 | 178 | 179 | {this.checkItem(item.inStoreAvailability)} 180 | 181 | 182 | ); 183 | }); 184 | 185 | return ( 186 | !isReady ? : 187 | 188 | this.props.navigation.goBack()} 191 | /> 192 | {itemCards} 193 | 194 | ); 195 | } 196 | } 197 | 198 | export default ResultScreen; 199 | -------------------------------------------------------------------------------- /screens/SearchScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { Container, Content, Button, Text } from "native-base"; 3 | import styles from "../assets/styling"; 4 | import AdvancedSearchBar from "../Components/AdvancedSearchBar"; 5 | 6 | class SearchScreen extends Component { 7 | render() { 8 | return ( 9 | 10 | 11 | 12 | 13 | 14 | ); 15 | } 16 | } 17 | 18 | export default SearchScreen; 19 | -------------------------------------------------------------------------------- /screens/ShoppingCartScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import axios from "axios"; 3 | import { 4 | Container, 5 | Header, 6 | Content, 7 | H1, 8 | Card, 9 | CardItem, 10 | Left, 11 | Right, 12 | Body, 13 | Thumbnail, 14 | Text, 15 | Button, 16 | Icon, 17 | Alert 18 | } from "native-base"; 19 | import { Col, Row, Grid } from "react-native-easy-grid"; 20 | import styles from "../assets/styling"; 21 | import NavBar from "../Components/NavBar"; 22 | import { mLabKey } from "../private/constants"; 23 | 24 | class ShoppingCartScreen extends Component { 25 | constructor(props) { 26 | super(props); 27 | this.state = { 28 | items: [] 29 | }; 30 | //use this word inside function 31 | this.getWatchlist = this.getWatchlist.bind(this); 32 | } 33 | componentDidMount() { 34 | this.getWatchlist(); 35 | 36 | // this.deleteItem(0); 37 | } 38 | async getWatchlist() { 39 | await axios 40 | .get( 41 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile?apiKey=${mLabKey}` 42 | ) 43 | .then(response => { 44 | this.setState({ items: response.data }); 45 | }); 46 | } 47 | 48 | deleteItem(id) { 49 | axios 50 | .delete( 51 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile/${id}?apiKey=${mLabKey}` 52 | ) 53 | .then(() => this.getWatchlist()); 54 | } 55 | 56 | updateItem(id) { 57 | axios.update( 58 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile?apiKey=${mLabKey}`, 59 | { id } 60 | ); 61 | } 62 | 63 | render() { 64 | const allItems = this.state.items; 65 | 66 | const itemsCart = allItems.map((item, i) => { 67 | return ( 68 | 69 | 73 | // this.props.navigation.navigate("ShowCaseScreen", { 74 | // serialNumber: item.sku, 75 | // item: item 76 | // }) 77 | // } 78 | > 79 | 80 | 81 | 82 | 83 | {item.title} 84 | 85 | 86 | 87 | 88 | $ {item.price} 89 | 90 | 91 | 99 | 100 | 101 | 112 | 113 | 114 | 115 | ); 116 | }); 117 | 118 | return ( 119 | 120 | this.props.navigation.navigate("DrawerToggle")} 122 | title="Shopping Cart" 123 | /> 124 | 125 | 126 | 127 | 128 | {itemsCart} 129 | 130 | 131 | 132 | 133 | 134 | ); 135 | } 136 | } 137 | 138 | export default ShoppingCartScreen; 139 | -------------------------------------------------------------------------------- /screens/ShowCaseScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { Image } from "react-native"; 3 | import axios from "axios"; 4 | import { 5 | Container, 6 | Button, 7 | Icon, 8 | Text, 9 | Content, 10 | Card, 11 | CardItem, 12 | Body, 13 | Left, 14 | Right, 15 | } from "native-base"; 16 | import { mLabKey } from "../private/constants"; 17 | 18 | import styles from "../assets/styling"; 19 | import { bestBuyKey } from "../private/constants"; 20 | import HeaderBack from "../Components/HeaderBack"; 21 | import SpinBubble from "../Components/Loaders/SpinBubble"; 22 | 23 | class ShowCaseScreen extends Component { 24 | constructor(props) { 25 | super(props); 26 | this.state = { searchData: {}, isReady: false }; 27 | 28 | //use this word inside function 29 | this.fetchItem = this.fetchItem.bind(this); 30 | } 31 | 32 | //gets item based on serial #y 33 | async fetchItem(query) { 34 | const path = `https://api.bestbuy.com/v1/products(sku=${query})?apiKey=${bestBuyKey}&sort=bestSellingRank.asc&show=bestSellingRank,color,condition,customerReviewAverage,customerReviewCount,description,details.name,details.value,dollarSavings,features.feature,freeShipping,frequentlyPurchasedWith.sku,image,includedItemList.includedItem,inStoreAvailability,inStoreAvailabilityText,longDescription,manufacturer,mobileUrl,modelNumber,name,onlineAvailability,onlineAvailabilityText,onSale,percentSavings,preowned,regularPrice,relatedProducts.sku,salePrice,shipping,shippingCost,shortDescription,sku,thumbnailImage,type,upc,url&format=json`; 35 | 36 | await axios 37 | .get(path) 38 | .then((response) => { 39 | this.setState({ 40 | searchData: response.data.products[0], 41 | isReady: true, 42 | }); 43 | // console.log(response); 44 | }) 45 | .catch((error) => { 46 | console.log(error); 47 | }); 48 | } 49 | 50 | //post item to cart - db 51 | postItem(title, picture, price, sku) { 52 | axios 53 | .post( 54 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile?apiKey=${mLabKey}`, 55 | { title, picture, price, sku } 56 | ) 57 | .then(() => this.props.navigation.navigate("ShoppingCart")); 58 | } 59 | 60 | componentDidMount() { 61 | //get params as props from home screen search 62 | const { params } = this.props.navigation.state; 63 | 64 | const query = params ? params.serialNumber : null; 65 | if (query == null) { 66 | console.log("query is empty"); 67 | } else { 68 | this.fetchItem(query); 69 | } 70 | } 71 | render() { 72 | const item = this.state.searchData; 73 | const { isReady } = this.state; 74 | 75 | return !isReady ? ( 76 | 77 | ) : ( 78 | 79 | this.props.navigation.goBack()} 82 | /> 83 | 84 | 85 | 86 | {item.name} 87 | 88 | 89 | 90 | {item.manufacturer} 91 | {item.modelNumber} 92 | 93 | 94 | {item.color} 95 | {item.salePrice} 96 | 97 | 98 | 99 | 100 | 105 | 106 | 107 | 108 | {item.longDescription} 109 | 110 | 111 | 112 | 113 | 126 | 127 | 128 | 129 | 150 | 151 | 152 | 153 | 154 | 155 | ); 156 | } 157 | } 158 | 159 | export default ShowCaseScreen; 160 | -------------------------------------------------------------------------------- /screens/SignUpScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { connect } from 'react-redux'; 3 | 4 | import { Alert } from "react-native"; 5 | import * as firebase from "firebase"; 6 | import { 7 | Container, 8 | Content, 9 | Text, 10 | Button, 11 | Icon, 12 | Form, 13 | Item, 14 | Label, 15 | Input, 16 | H1, 17 | 18 | } from "native-base"; 19 | import { Col, Row, Grid } from "react-native-easy-grid"; 20 | 21 | import { fbKey, androidID, iosID } from "../private/constants"; 22 | import styles from "../assets/styling"; 23 | import NavBar from "../Components/NavBar"; 24 | import { requestLogin, loginSuccess, loginFail } from '../redux/reducers/userModule'; 25 | import SocialMediaButtons from "../Components/SocialMediaButtons"; 26 | 27 | class SignUpScreen extends Component { 28 | constructor(props) { 29 | super(props); 30 | 31 | this.state = { 32 | email: "", 33 | password: "", 34 | passwordConfirm: "", 35 | user: {}, 36 | loggedIn: false 37 | }; 38 | //use this word inside function 39 | this.signUpUser = this.signUpUser.bind(this); 40 | this.logInUser = this.logInUser.bind(this); 41 | this.loginWithFacebook = this.loginWithFacebook.bind(this); 42 | this.signOut = this.signOut.bind(this); 43 | } 44 | 45 | signUpUser = (email, password) => { 46 | try { 47 | if (this.state.password.length < 6) { 48 | alert("Password is too short"); 49 | return; 50 | } 51 | 52 | firebase.auth().createUserWithEmailAndPassword(email, password); 53 | console.log("sign up complete"); 54 | } catch (error) { 55 | console.log(error.toString()); 56 | } 57 | }; 58 | 59 | logInUser = (email, password) => { 60 | try { 61 | if (this.state.password.length < 6) { 62 | alert("Password is too short"); 63 | return; 64 | } 65 | 66 | firebase 67 | .auth() 68 | .signInWithEmailAndPassword(email, password) 69 | .then(user => { 70 | this.setState({ user, loggedIn: true }); 71 | // console.log(user); 72 | }); 73 | console.log("logged in with email"); 74 | } catch (error) { 75 | console.log(error.toString()); 76 | } 77 | }; 78 | 79 | signOut() { 80 | firebase 81 | .auth() 82 | .signOut() 83 | .then( 84 | () => { 85 | console.log("Signed Out"); 86 | this.setState({ 87 | user: {}, 88 | loggedIn: false 89 | }); 90 | }, 91 | function (error) { 92 | console.error("Sign Out Error", error); 93 | } 94 | ); 95 | } 96 | 97 | async signInWithGoogleAsync() { 98 | this.props.requestLogin(); 99 | try { 100 | const { navigate } = this.props.navigation; 101 | const result = await Expo.Google.logInAsync({ 102 | androidClientId: androidID, 103 | iosClientId: iosID, 104 | scopes: ["profile", "email"] 105 | }); 106 | //console.log(result); 107 | 108 | if (result.type === "success") { 109 | const credential = firebase.auth.GoogleAuthProvider.credential( 110 | result.idToken, 111 | result.accessToken 112 | ); 113 | //console.log(credential); 114 | firebase 115 | .auth() 116 | .signInAndRetrieveDataWithCredential(credential) 117 | // .then(user => { 118 | // this.props.loginSuccess(user); 119 | // }) 120 | .catch(error => { 121 | this.props.loginFail(error.toString()); 122 | }); 123 | navigate("Home"); 124 | } else { 125 | Alert.alert("Login not sucessfull, try again."); 126 | } 127 | // if (this.props.user.auth === true) { 128 | // () => navigate("Home"); 129 | // } 130 | } catch (e) { 131 | console.log(e.toString()); 132 | } 133 | } 134 | 135 | async loginWithFacebook() { 136 | this.props.requestLogin(); 137 | 138 | const { navigate } = this.props.navigation; 139 | const { type, token } = await Expo.Facebook.logInWithReadPermissionsAsync( 140 | fbKey, 141 | { permissions: ["public_profile"] } 142 | ); 143 | 144 | if (type == "success") { 145 | const credential = firebase.auth.FacebookAuthProvider.credential(token); 146 | 147 | firebase 148 | .auth() 149 | .signInAndRetrieveDataWithCredential(credential) 150 | // .then(user => this.props.loginSuccess(user)) 151 | .catch(error => { 152 | this.props.loginFail(error); 153 | }); 154 | navigate("Home"); 155 | } 156 | } 157 | 158 | 159 | render() { 160 | // const loggedIn = this.state.loggedIn; 161 | 162 | // const button = loggedIn ? ( 163 | // 232 |

233 | 243 | 244 | 245 | 246 | this.loginWithFacebook()} google={() => this.signInWithGoogleAsync()} /> 247 | {/* */} 254 | 255 | 256 | 257 | ); 258 | } 259 | } 260 | const mapStateToProps = state => ({ user: state.user }); 261 | export default connect(mapStateToProps, { requestLogin, loginSuccess, loginFail })(SignUpScreen); 262 | -------------------------------------------------------------------------------- /screens/WatchListScreen.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from "react"; 2 | import { KeyboardAvoidingView, Text } from "react-native"; 3 | import { Container, Content, Icon, Button } from "native-base"; 4 | import styles from "../assets/styling"; 5 | import NavBar from "../Components/NavBar"; 6 | import SearchBar from "../Components/SearchBar"; 7 | import { Col, Row, Grid } from "react-native-easy-grid"; 8 | import axios from "axios"; 9 | import { mLabKey } from "../private/constants"; 10 | export default class WatchListScreen extends Component { 11 | // static NavigationOptions = { 12 | // drawerIcon: ( 13 | // 14 | // ) 15 | // }; 16 | constructor(props) { 17 | super(props); 18 | this.state = { 19 | items: [] 20 | }; 21 | } 22 | 23 | getWatchlist() { 24 | axios 25 | .get( 26 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile?apiKey=${mLabKey}` 27 | ) 28 | .then(response => { 29 | this.setState({ items: response }); 30 | console.log("===================================="); 31 | console.log(response); 32 | console.log("===================================="); 33 | }); 34 | } 35 | 36 | postItem(item) { 37 | axios.post( 38 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile?apiKey=${mLabKey}` 39 | ), 40 | { 41 | item: item 42 | }; 43 | } 44 | 45 | deleteItem(id) { 46 | axios.delete( 47 | `https://api.mlab.com/api/1/databases/e-sell-mobile/collections/e-sell-mobile?apiKey=${mLabKey}` 48 | ); 49 | } 50 | componentDidMount() { } 51 | render() { 52 | return ( 53 | 54 | this.props.navigation.navigate("DrawerToggle")} 57 | /> 58 | 59 | {/* 60 | 61 | 62 | 63 | 64 | 65 | */} 66 | 67 | 68 | ); 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /styles/constant-properties.js: -------------------------------------------------------------------------------- 1 | import {Dimensions} from "react-native"; 2 | 3 | export const { width, height } = Dimensions.get("screen"); 4 | -------------------------------------------------------------------------------- /styles/styles.js: -------------------------------------------------------------------------------- 1 | import { StyleSheet } from "react-native"; 2 | 3 | export default styles = StyleSheet.create({ 4 | main: { 5 | backgroundColor: "#5127C6" 6 | }, 7 | mainIcons: { 8 | color: "white", padding: 10 9 | }, 10 | roundedCard: { 11 | flex: 0, 12 | borderBottomColor: "#5127C6", 13 | borderRadius: 10, 14 | borderWidth: 2, 15 | borderColor: '#5127C6', 16 | overflow: 'hidden' 17 | }, 18 | iconSize: { 19 | fontSize: 21 20 | } 21 | }); -------------------------------------------------------------------------------- /utils/firebase.js: -------------------------------------------------------------------------------- 1 | import * as firebase from "firebase"; 2 | import { firebaseConfig } from "../private/constants"; 3 | 4 | firebase.initializeApp(firebaseConfig); 5 | 6 | export default !firebase.apps.length 7 | ? firebase.initializeApp(config) 8 | : firebase.app(); 9 | --------------------------------------------------------------------------------