From fa8d92668630af3f088c733248bb1f40ec62de69 Mon Sep 17 00:00:00 2001 From: Rayhan Hassou Date: Thu, 9 Nov 2023 11:45:53 +0100 Subject: [PATCH 1/3] add component for display selected recipes with images --- LeftOvers/App.js | 7 +- LeftOvers/assets/images/Background.png | Bin 0 -> 5352 bytes LeftOvers/assets/images/Union_left.png | Bin 0 -> 409 bytes LeftOvers/assets/images/Union_right.png | Bin 0 -> 397 bytes LeftOvers/assets/images/brochette.png | Bin 0 -> 7698 bytes LeftOvers/assets/images/meat.png | Bin 0 -> 2138 bytes LeftOvers/components/RecipeElementImage.tsx | 89 ++++++++++++++++++ .../components/image_ingredient_component.tsx | 0 8 files changed, 91 insertions(+), 5 deletions(-) create mode 100644 LeftOvers/assets/images/Background.png create mode 100644 LeftOvers/assets/images/Union_left.png create mode 100644 LeftOvers/assets/images/Union_right.png create mode 100644 LeftOvers/assets/images/brochette.png create mode 100644 LeftOvers/assets/images/meat.png create mode 100644 LeftOvers/components/RecipeElementImage.tsx delete mode 100644 LeftOvers/components/image_ingredient_component.tsx diff --git a/LeftOvers/App.js b/LeftOvers/App.js index 2cb99a4..20e452d 100644 --- a/LeftOvers/App.js +++ b/LeftOvers/App.js @@ -1,15 +1,12 @@ -import { StatusBar } from 'expo-status-bar'; import React from 'react'; import { StyleSheet, Text, View, Alert } from 'react-native'; -import CustomButton from './components/CustomButton'; -import FoodElementText from './components/FoodElementText'; +import RecipeElementImage from './components/RecipeElementImage'; export default function App() { return ( - - + ); } diff --git a/LeftOvers/assets/images/Background.png b/LeftOvers/assets/images/Background.png new file mode 100644 index 0000000000000000000000000000000000000000..f18df96804ac8c3d660f2b22ad14aad20bf78bd5 GIT binary patch literal 5352 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 DufMCp literal 0 HcmV?d00001 diff --git a/LeftOvers/assets/images/Union_right.png b/LeftOvers/assets/images/Union_right.png new file mode 100644 index 0000000000000000000000000000000000000000..0d7177ded0526f84a25489d8df92cdb532c0580b GIT binary patch literal 397 zcmV;80doF{P)9v(N7x&%IYD-tK!>@(R)EmrVQd20 z0GR$#a7y2D71R8L)plSYj)hlj4 r?z-&k>Sjmpby9igN-X{FXW@7S#zl0(hsCeJ00000NkvXXu0mjfq35M8 literal 0 HcmV?d00001 diff --git a/LeftOvers/assets/images/brochette.png b/LeftOvers/assets/images/brochette.png new file mode 100644 index 0000000000000000000000000000000000000000..6cac01aa155b36c6f699c1147ddef5e329e7ef89 GIT binary patch literal 7698 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 M07*qoM6N<$f-oCJ%m4rY literal 0 HcmV?d00001 diff --git a/LeftOvers/assets/images/meat.png b/LeftOvers/assets/images/meat.png new file mode 100644 index 0000000000000000000000000000000000000000..f346ca9c365de99a8fd7dfa291229fc5ad22f321 GIT binary patch literal 2138 zcmV-g2&MOlP)%&;EDp1 z7#j$wVi2H0NSh+05)J6sMwP+ZZqTu{O|y1+G;5OO{qWoOdG=pBtEx?F6UR;?&7Wjl z`}p2-&v(B6|Ic?0KoLb0QA80R1CVey%rV9YEHm=;LYn~jQBxB)>ozKsWMt#NkM{ll z7^H`>-GXJplF4*;cZ<~{|J`JIT@`|)+(CzW@1pS;|FQEk{Z`4EZ;ppTFYns5%Yns&ItvaHgjpCdoLt z6s#1#2qJ)Q6)NMzsgi(b8U#I(@Z6j4> zmH>xcSeOnLj?cuxWuiJ{1~Q^^_%StD7ZS)Pys~p59&h&xvR&Oepa58OnAy2f;*xjL zu|YS87*di0!%D%PC}fgf*8$>DfCPS$5dcF45$_W@i!f$7EmLc6Yiy17zO^bkKDgyO<8VZ0#k+D@7 zf1zPD8GGkbV9%_Y0+^iyh)tjhvjAEGKt(kY_=!$q`xJ&BwiyiSLtf;@z_Ki2S=tsT z02V`rq`HoT+#}}>Q$1b^hDjiaN+jlx1YRu*E=3MQWh@iPC$Tw(%^LVUJgf;gKsR(0 zN^67yV8LWi6`bh{-xDK4>o9akCXDRIbsTsqjUmOdP4o9^@o|XHjDQ-CXE;*)uX(Kx zRKvuQ!PbXcTQSk{n>PzrX8(Rd)o7zt>LDQcAXC)|j*yTKjmiGSOA4s|_SIy3D*AX?Ectbohx}QvH~abFza?&4w_d@;qH#2)kyp-7LqDn%*BA`X zrJ-kZ7T%5NAUY{XE(Js!G|^E(Sw^Br1h1KRG|(ZWv0NJlcswGUx-iSl#kCE`t2eg4 z+;>KUC15e$jKvuFB~SSl!P4stLP_6*O5PeBvV#sdV((*61!jOO5ZGMjhr2gk4;-%k zEP{(_92Zxq1mDQANwTkfmT_4K!JboUa=ScP_l&!oMDUoe+UGMdv96It*vqa zmO@~c4b{M$dh}1HAW-3BdRmWChpQ}n=ujGR#8Q(k^ZdS@J43ukx1hl(!~7TVXhx=l z@n{MpX0h66BK?I=`W^CTYf6d7-n?OX_bUPxIsqPkt`{DA>Kp9r*^8qIjjZ3kbC11$ z$Vr`i+wc$eN5WgTa(Y>?MNMiyRCS{c7$%o#*s2get}tKu_B~K_^9`UUqpbVfc;~U6 zf&2IFeFAIy;t3UcU(UJ)2d)2f_w+Q?f96@N$STi+U*b9H5Gd~{b#cwRw-Lsl!~g&Q literal 0 HcmV?d00001 diff --git a/LeftOvers/components/RecipeElementImage.tsx b/LeftOvers/components/RecipeElementImage.tsx new file mode 100644 index 0000000..68bbf4d --- /dev/null +++ b/LeftOvers/components/RecipeElementImage.tsx @@ -0,0 +1,89 @@ +import React from 'react'; +import {StyleSheet,Pressable, Text, View, Image} from 'react-native'; +import brochette from '../assets/images/brochette.png'; +import Union_left from '../assets/images/Union_left.png'; +import Union_right from '../assets/images/Union_right.png'; +import meat from '../assets/images/meat.png'; +import background from '../assets/images/Background.png'; + + + + +export default function RecipeElementImage(props) { + return ( + + + {props.number} + {props.title} + + + {props.description} + + + + Ingredients + + + + + + + + + + + + + ); +} + +const styles = StyleSheet.create({ + button: { + alignItems: 'center', + justifyContent: 'center', + width : 250, + height: 370, + borderRadius: 40, + elevation: 3, + backgroundColor: '#ACA279', + }, + text: { + fontSize: 14, + lineHeight: 21, + fontWeight: 'bold', + letterSpacing: 0.25, + color: '#756C28', + }, + smallText: { + fontSize: 12, + lineHeight: 21, + fontWeight: 'bold', + letterSpacing: 0.25, + color: '#71662A', + textAlign: "center", + }, + title:{ + fontSize: 18, + lineHeight: 21, + fontWeight: 'bold', + letterSpacing: 0.25, + color: '#524B1A', + }, + view: { + width : 240, + height: 360, + borderRadius: 40, + elevation: 3, + borderWidth: 2, + borderColor: 'grey', + alignItems: 'center', // Centre le contenu verticalement + display: "flex", + flexWrap: "wrap", + }, + horizontalAlignement: { + display: "flex", + flexDirection : 'row', + alignItems: 'center', + marginTop: 10, + } +}); \ No newline at end of file diff --git a/LeftOvers/components/image_ingredient_component.tsx b/LeftOvers/components/image_ingredient_component.tsx deleted file mode 100644 index e69de29..0000000 -- 2.36.3 From 5ee03b380b2a1ee9695caa670502920fce417764 Mon Sep 17 00:00:00 2001 From: Rayhan Hassou Date: Thu, 9 Nov 2023 14:49:12 +0100 Subject: [PATCH 2/3] improve the design and the composant --- LeftOvers/App.js | 14 ++++++-- LeftOvers/components/FoodElementText.tsx | 12 +++++-- LeftOvers/components/RecipeElementImage.tsx | 37 ++++++++++++--------- 3 files changed, 43 insertions(+), 20 deletions(-) diff --git a/LeftOvers/App.js b/LeftOvers/App.js index 20e452d..1d4b070 100644 --- a/LeftOvers/App.js +++ b/LeftOvers/App.js @@ -1,12 +1,22 @@ import React from 'react'; -import { StyleSheet, Text, View, Alert } from 'react-native'; +import { StyleSheet, View } from 'react-native'; import RecipeElementImage from './components/RecipeElementImage'; +const generateImageList = () => { + const imageList = []; + const meat = '../assets/images/meat.png'; + for (let i = 0; i < 5; i++) { + imageList.push(meat); + } + return imageList; +}; + export default function App() { + const imageList = []; return ( - + ); } diff --git a/LeftOvers/components/FoodElementText.tsx b/LeftOvers/components/FoodElementText.tsx index 5f3cf9e..2e6062c 100644 --- a/LeftOvers/components/FoodElementText.tsx +++ b/LeftOvers/components/FoodElementText.tsx @@ -4,7 +4,15 @@ import Separator from '../components/Separator'; import plus from '../assets/images/plus.png'; import moins from '../assets/images/minus.png'; -export default function FoodElementText(props) { + + +interface foodElementImageProps { + source : string + title : string +} + + +export default function FoodElementText(props : any) { return ( @@ -27,7 +35,7 @@ const styles = StyleSheet.create({ height: 60, borderRadius: 5, elevation: 3, - backgroundColor: '#ACA279', + backgroundColor: '#E3DEC9', }, text: { fontSize: 15, diff --git a/LeftOvers/components/RecipeElementImage.tsx b/LeftOvers/components/RecipeElementImage.tsx index 68bbf4d..104bbbc 100644 --- a/LeftOvers/components/RecipeElementImage.tsx +++ b/LeftOvers/components/RecipeElementImage.tsx @@ -3,13 +3,17 @@ import {StyleSheet,Pressable, Text, View, Image} from 'react-native'; import brochette from '../assets/images/brochette.png'; import Union_left from '../assets/images/Union_left.png'; import Union_right from '../assets/images/Union_right.png'; -import meat from '../assets/images/meat.png'; import background from '../assets/images/Background.png'; +interface recipeElementImageProps { + number : number + title : string + description : string + imageList : string[] +} - -export default function RecipeElementImage(props) { +export default function RecipeElementImage(props : any) { return ( @@ -19,19 +23,20 @@ export default function RecipeElementImage(props) { {props.description} - - + {props.imageList.length > 0 ? ( + + Ingredients - - + + + ) : null} + - - - - - + {props.imageList.length > 0 && props.imageList.map((source, index) => ( + + ))} - + ); @@ -42,10 +47,10 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'center', width : 250, - height: 370, + height: 350, borderRadius: 40, elevation: 3, - backgroundColor: '#ACA279', + backgroundColor: '#E3DEC9', }, text: { fontSize: 14, @@ -71,7 +76,7 @@ const styles = StyleSheet.create({ }, view: { width : 240, - height: 360, + height: 340, borderRadius: 40, elevation: 3, borderWidth: 2, -- 2.36.3 From 659382d99b1f24640ebb80ff0cfc1f15a0fc895b Mon Sep 17 00:00:00 2001 From: Rayhan Hassou Date: Thu, 9 Nov 2023 15:02:42 +0100 Subject: [PATCH 3/3] improve the design and the composant --- LeftOvers/App.js | 2 +- LeftOvers/components/CustomButton.tsx | 5 +++++ LeftOvers/components/RecipeElementImage.tsx | 11 +++++++---- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/LeftOvers/App.js b/LeftOvers/App.js index 1d4b070..030483c 100644 --- a/LeftOvers/App.js +++ b/LeftOvers/App.js @@ -16,7 +16,7 @@ export default function App() { return ( - + ); } diff --git a/LeftOvers/components/CustomButton.tsx b/LeftOvers/components/CustomButton.tsx index 5f99086..ea913d1 100644 --- a/LeftOvers/components/CustomButton.tsx +++ b/LeftOvers/components/CustomButton.tsx @@ -2,6 +2,11 @@ import React from 'react'; import {StyleSheet,Pressable, Text, View} from 'react-native'; +interface CustomButtonProps { + source : string + title : string +} + export default function CustomButton(props) { return ( diff --git a/LeftOvers/components/RecipeElementImage.tsx b/LeftOvers/components/RecipeElementImage.tsx index 104bbbc..f869d72 100644 --- a/LeftOvers/components/RecipeElementImage.tsx +++ b/LeftOvers/components/RecipeElementImage.tsx @@ -19,10 +19,7 @@ export default function RecipeElementImage(props : any) { {props.number} {props.title} - - - {props.description} - + {props.imageList.length > 0 ? ( @@ -36,6 +33,10 @@ export default function RecipeElementImage(props : any) { ))} + + + {props.description} + @@ -58,6 +59,7 @@ const styles = StyleSheet.create({ fontWeight: 'bold', letterSpacing: 0.25, color: '#756C28', + marginTop: 10, }, smallText: { fontSize: 12, @@ -66,6 +68,7 @@ const styles = StyleSheet.create({ letterSpacing: 0.25, color: '#71662A', textAlign: "center", + marginTop: 5, }, title:{ fontSize: 18, -- 2.36.3