set ZOO
This commit is contained in:
parent
2c9043428c
commit
fc53a5c7cb
1641
package-lock.json
generated
1641
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -3,9 +3,13 @@
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@chakra-ui/react": "^2.6.1",
|
||||
"@emotion/react": "^11.11.0",
|
||||
"@emotion/styled": "^11.11.0",
|
||||
"@testing-library/jest-dom": "^5.16.5",
|
||||
"@testing-library/react": "^13.4.0",
|
||||
"@testing-library/user-event": "^13.5.0",
|
||||
"framer-motion": "^10.12.16",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"react-scripts": "5.0.1",
|
||||
|
52
src/Animal.js
Normal file
52
src/Animal.js
Normal file
@ -0,0 +1,52 @@
|
||||
import React from "react";
|
||||
import { useState } from "react";
|
||||
import { Button } from "./Button";
|
||||
|
||||
export const Animal = (props) => {
|
||||
// const [animal = props.animal, addAnimal] = useState(false);
|
||||
const animal = props.animal;
|
||||
const nadpis = props.nadpis;
|
||||
const emptyZoo = !props.animal.length;
|
||||
|
||||
// let emptyZoo = () => {
|
||||
// if (animal.length === 0) return true;
|
||||
// else return false;
|
||||
// };
|
||||
|
||||
///const [setAnimal] = useState(animal);
|
||||
|
||||
//if (animal.length === 0) emptyZoo = true;
|
||||
//else emptyZoo = false;
|
||||
|
||||
const handleAddAnimal = () => {
|
||||
//const arr = ['zirafa', 'mroz'];
|
||||
//setAnimal(current => [...current, ...arr]);
|
||||
//emptyZoo = false;
|
||||
console.log("pridal jsi...");
|
||||
};
|
||||
|
||||
const handleDeleteAnimal = () => {
|
||||
//emptyZoo = true;
|
||||
console.log("smazal jsi...");
|
||||
};
|
||||
|
||||
return (
|
||||
<nav>
|
||||
<h1>{nadpis}</h1>
|
||||
{emptyZoo ? (
|
||||
<p>Zoo je prazdne</p>
|
||||
) : (
|
||||
<ul>
|
||||
{animal.map((item) => (
|
||||
<li key={item}>{item}</li>
|
||||
))}
|
||||
</ul>
|
||||
)}
|
||||
|
||||
<Button className="primary" isDisabled={emptyZoo} onClick={handleDeleteAnimal}>
|
||||
Delete
|
||||
</Button>
|
||||
<Button className="secondary" onClick={handleAddAnimal}>Add</Button>
|
||||
</nav>
|
||||
);
|
||||
};
|
64
src/App.css
64
src/App.css
@ -36,3 +36,67 @@
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
nav {
|
||||
height: 100px;
|
||||
background-color: darkslategrey;
|
||||
color: antiquewhite;
|
||||
font-size: 1.2rem;
|
||||
font-weight: 400;
|
||||
padding: 0 1.5rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.2rem;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
ul {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
align-items: center;
|
||||
gap: 2rem;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
li:hover {
|
||||
opacity: 80%;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 0.75rem 1.2rem;
|
||||
border-radius: 0.75rem;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
button:hover {
|
||||
opacity: 80%;
|
||||
}
|
||||
|
||||
.primary {
|
||||
background-color: antiquewhite;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.secondary {
|
||||
background-color: darkslategrey;
|
||||
color: antiquewhite;
|
||||
border: 1px solid antiquewhite;
|
||||
}
|
||||
|
||||
.buttons-wrapper {
|
||||
display: flex;
|
||||
gap: 0.75rem;
|
||||
}
|
16
src/App.js
16
src/App.js
@ -1,16 +1,26 @@
|
||||
import logo from "./logo.svg";
|
||||
import "./App.css";
|
||||
// import `ChakraProvider` component
|
||||
//import { ChakraProvider } from "@chakra-ui/react";
|
||||
import Header from "./Header";
|
||||
import Content from "./Content";
|
||||
import Footer from "./Footer";
|
||||
import { Menu } from "./Menu";
|
||||
import { Button } from "./Button";
|
||||
import { Animal } from "./Animal";
|
||||
//import { Button } from "./Button";
|
||||
//import { Button, ButtonGroup } from "@chakra-ui/react";
|
||||
|
||||
function App() {
|
||||
const menu = ["Uvod", "O nas", "Kontakt", "test"];
|
||||
|
||||
//const animal = [];
|
||||
const animal = ["Lev", "Lachtan", "Varan", "Slon"];
|
||||
|
||||
return (
|
||||
<>
|
||||
<Menu menu={menu} nadpis="ReactGirls" />
|
||||
<Animal animal={animal} nadpis="Super ZOO" />
|
||||
{/* <ChakraProvider>
|
||||
<Button colorScheme="teal">Chakra button</Button>
|
||||
</ChakraProvider> */}
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
@ -1,8 +1,17 @@
|
||||
import { propNames } from "@chakra-ui/react";
|
||||
import React from "react";
|
||||
import { useState } from 'react'
|
||||
|
||||
export const Button = ({ children, onClick }) => {
|
||||
|
||||
|
||||
|
||||
export const Button = ({ children, onClick, isDisabled, className}) => {
|
||||
//const [disabled, setDisabled] = useState(false)
|
||||
// const handleClick = () => {
|
||||
// console.log("klikl jsi");
|
||||
// };
|
||||
return <button onClick={onClick}>{children}</button>;
|
||||
|
||||
|
||||
|
||||
return <button className={className} disabled={isDisabled} onClick={onClick}>{children}</button>;
|
||||
};
|
||||
|
@ -1,6 +1,7 @@
|
||||
import React from "react";
|
||||
import { Button } from "./Button";
|
||||
|
||||
|
||||
export const Menu = (props) => {
|
||||
const menu = props.menu;
|
||||
const nadpis = props.nadpis;
|
||||
|
Loading…
Reference in New Issue
Block a user