Skip to content

Commit

Permalink
solution
Browse files Browse the repository at this point in the history
  • Loading branch information
IvanOlecsandrovych committed Aug 11, 2023
1 parent f3b767d commit ba2b100
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 26 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ and use it 3 times inside the `App` instead of static markup.
## Instructions
- Implement a solution following the [React task guideline](https://github.com/mate-academy/react_task-guideline#react-tasks-guideline).
- Open one more terminal and run tests with `npm test` to ensure your solution is correct.
- Replace `<your_account>` with your Github username in the [DEMO LINK](https://<your_account>.github.io/react_person/) and add it to the PR description.
- Replace `<your_account>` with your Github username in the [DEMO LINK](https://IvanOlecsandrovych.github.io/react_person/) and add it to the PR description.
12 changes: 4 additions & 8 deletions src/App.jsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import React from 'react';
import './App.scss';
import { Person } from './components/Person/Person';

export const misha = {
name: 'Misha',
Expand All @@ -26,20 +27,15 @@ export const alex = {
export const App = () => (
<div className="App">
<section className="Person">
<h2 className="Person__name">My name is Misha</h2>
<p className="Person__age">I am 37</p>
<p className="Person__partner">Natasha is my wife</p>
<Person person={misha} />
</section>

<section className="Person">
<h2 className="Person__name">My name is Olya</h2>
<p className="Person__partner">Maksym is my husband</p>
<Person person={olya} />
</section>

<section className="Person">
<h2 className="Person__name">My name is Alex</h2>
<p className="Person__age">I am 25</p>
<p className="Person__partner">I am not married</p>
<Person person={alex} />
</section>
</div>
);
16 changes: 0 additions & 16 deletions src/App.scss
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,3 @@ iframe {
display: none;
}

.Person {
width: fit-content;
margin-bottom: 16px;
padding: 8px;
border: 1px solid #000;
border-radius: 8px;

&__name {
margin-top: 8px;
}

&__age {
color: #00f;
font-weight: bold;
}
}
28 changes: 27 additions & 1 deletion src/components/Person/Person.jsx
Original file line number Diff line number Diff line change
@@ -1 +1,27 @@
// export const Person = ({ person }) => ();
import './Person.scss';

export const Person = ({ person }) => (
<>
<h2 className="Person__name">
{`My name is ${person.name}`}
</h2>

{ person.age && (
<p className="Person__age">
{`I am ${person.age}`}
</p>
) }

<p className="Person__partner">
{ person.isMarried ? (
`${person.partnerName} is my ${wifeOrHusband(person.sex)}`
) : (
'I am not married'
)}
</p>
</>
);

function wifeOrHusband(sex) {
return sex === 'm' ? 'wife' : 'husband';
}
16 changes: 16 additions & 0 deletions src/components/Person/Person.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
.Person {
width: fit-content;
margin-bottom: 16px;
padding: 8px;
border: 1px solid #000;
border-radius: 8px;

&__name {
margin-top: 8px;
}

&__age {
color: #00f;
font-weight: bold;
}
}

0 comments on commit ba2b100

Please sign in to comment.