Loader při zakládání Pizza day, mock data
This commit is contained in:
parent
3f16485368
commit
f5ecedb3b9
@ -64,8 +64,8 @@ Aplikace sestává ze tří modulů.
|
||||
- [ ] Pizzy se samy budou při naklikání přidávat do košíku
|
||||
- [ ] Nutno nejprve vyřešit předávání PHPSESSIONID cookie na pizzachefie.cz pomocí fetch()
|
||||
- [ ] Ceny krabic za pizzu jsou napevno v kódu - problém, pokud se někdy změní
|
||||
- [ ] Prvotní načtení pizz při založení Pizza Day trvá a nic se během toho nezobrazuje (např. loader)
|
||||
- [ ] Umožnit u Pizza day ručně připočíst cenu za přísady
|
||||
- [X] Prvotní načtení pizz při založení Pizza Day trvá a nic se během toho nezobrazuje (např. loader)
|
||||
- [X] Po doručení zobrazit komu zaplatit (kdo objednával)
|
||||
- [x] Zbytečně nescrapovat každý den pizzy z Pizza Chefie, dokud není založen Pizza Day
|
||||
- [x] Umožnit uzamčení objednávek zakladatelem
|
||||
|
@ -16,7 +16,7 @@ import { faCircleCheck, faTrashCan } from '@fortawesome/free-regular-svg-icons';
|
||||
import { useBank } from './context/bank';
|
||||
import { ClientData, Restaurants, Food, Order, Locations, PizzaOrder, PizzaDayState, FoodChoices, Menu } from './types';
|
||||
import Footer from './components/Footer';
|
||||
import { faChainBroken, faChevronLeft, faChevronRight, faSatelliteDish, faSearch } from '@fortawesome/free-solid-svg-icons';
|
||||
import { faChainBroken, faChevronLeft, faChevronRight, faGear, faSatelliteDish, faSearch } from '@fortawesome/free-solid-svg-icons';
|
||||
import Loader from './components/Loader';
|
||||
|
||||
const EVENT_CONNECT = "connect"
|
||||
@ -37,6 +37,7 @@ function App() {
|
||||
const poznamkaRef = useRef<HTMLInputElement>(null);
|
||||
const [failure, setFailure] = useState<boolean>(false);
|
||||
const [dayIndex, setDayIndex] = useState<number>();
|
||||
const [loadingPizzaDay, setLoadingPizzaDay] = useState<boolean>(false);
|
||||
// Prazvláštní workaround, aby socket.io listener viděl aktuální hodnotu
|
||||
// https://medium.com/@kishorkrishna/cant-access-latest-state-inside-socket-io-listener-heres-how-to-fix-it-1522a5abebdb
|
||||
const dayIndexRef = useRef<number | undefined>(dayIndex);
|
||||
@ -353,6 +354,7 @@ function App() {
|
||||
<ul>
|
||||
<li>Oprava generování QR kódů pro Pizza day</li>
|
||||
<li>Serverová validace času odchodu</li>
|
||||
<li>Loader při zakládání Pizza day</li>
|
||||
</ul>
|
||||
</Alert>
|
||||
{dayIndex != null &&
|
||||
@ -464,9 +466,16 @@ function App() {
|
||||
{!data.pizzaDay &&
|
||||
<div style={{ textAlign: 'center' }}>
|
||||
<p>Pro dnešní den není aktuálně založen Pizza day.</p>
|
||||
<Button onClick={async () => {
|
||||
await createPizzaDay();
|
||||
}}>Založit Pizza day</Button>
|
||||
{loadingPizzaDay ?
|
||||
<span>
|
||||
<FontAwesomeIcon icon={faGear} className='fa-spin' /> Zjišťujeme dostupné pizzy
|
||||
</span>
|
||||
:
|
||||
<Button onClick={async () => {
|
||||
setLoadingPizzaDay(true);
|
||||
await createPizzaDay().then(() => setLoadingPizzaDay(false));
|
||||
}}>Založit Pizza day</Button>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
{data.pizzaDay &&
|
||||
|
@ -1,5 +1,6 @@
|
||||
import axios from 'axios';
|
||||
import { load } from 'cheerio';
|
||||
import { getPizzaListMock } from './mock';
|
||||
|
||||
// TODO přesunout do types
|
||||
type PizzaSize = {
|
||||
@ -35,8 +36,14 @@ const boxPrices: { [key: string]: number } = {
|
||||
|
||||
/**
|
||||
* Stáhne a scrapne aktuální pizzy ze stránek Pizza Chefie.
|
||||
*
|
||||
* @param mock zda vrátit pouze mock data
|
||||
*/
|
||||
export async function downloadPizzy(): Promise<Pizza[]> {
|
||||
export async function downloadPizzy(mock: boolean): Promise<Pizza[]> {
|
||||
if (mock) {
|
||||
// Záměrné zpoždění pro testování
|
||||
return new Promise((resolve) => setTimeout(() => resolve(getPizzaListMock()), 3000));
|
||||
}
|
||||
// Získáme seznam pizz
|
||||
const html = await axios.get(pizzyUrl).then(res => res.data);
|
||||
const $ = load(html);
|
||||
|
@ -370,6 +370,756 @@ const MOCK_DATA = {
|
||||
]
|
||||
}
|
||||
|
||||
// Mockovací data pro Pizza day
|
||||
const MOCK_PIZZA_LIST = [
|
||||
{
|
||||
name: "Margherita",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 1,
|
||||
size: "30cm",
|
||||
pizzaPrice: 138,
|
||||
boxPrice: 13,
|
||||
price: 151
|
||||
},
|
||||
{
|
||||
varId: 2,
|
||||
size: "35cm",
|
||||
pizzaPrice: 166,
|
||||
boxPrice: 15,
|
||||
price: 181
|
||||
},
|
||||
{
|
||||
varId: 3,
|
||||
size: "40cm",
|
||||
pizzaPrice: 223,
|
||||
boxPrice: 18,
|
||||
price: 241
|
||||
},
|
||||
{
|
||||
varId: 4,
|
||||
size: "50cm",
|
||||
pizzaPrice: 306,
|
||||
boxPrice: 25,
|
||||
price: 331
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Salami",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"pikantní salám",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 6,
|
||||
size: "30cm",
|
||||
pizzaPrice: 142,
|
||||
boxPrice: 13,
|
||||
price: 155
|
||||
},
|
||||
{
|
||||
varId: 7,
|
||||
size: "35cm",
|
||||
pizzaPrice: 172,
|
||||
boxPrice: 15,
|
||||
price: 187
|
||||
},
|
||||
{
|
||||
varId: 8,
|
||||
size: "40cm",
|
||||
pizzaPrice: 233,
|
||||
boxPrice: 18,
|
||||
price: 251
|
||||
},
|
||||
{
|
||||
varId: 9,
|
||||
size: "50cm",
|
||||
pizzaPrice: 316,
|
||||
boxPrice: 25,
|
||||
price: 341
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Sausage",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"klobása",
|
||||
"pálivé papričky",
|
||||
"česnek",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 10,
|
||||
size: "30cm",
|
||||
pizzaPrice: 142,
|
||||
boxPrice: 13,
|
||||
price: 155
|
||||
},
|
||||
{
|
||||
varId: 11,
|
||||
size: "35cm",
|
||||
pizzaPrice: 172,
|
||||
boxPrice: 15,
|
||||
price: 187
|
||||
},
|
||||
{
|
||||
varId: 12,
|
||||
size: "40cm",
|
||||
pizzaPrice: 233,
|
||||
boxPrice: 18,
|
||||
price: 251
|
||||
},
|
||||
{
|
||||
varId: 13,
|
||||
size: "50cm",
|
||||
pizzaPrice: 316,
|
||||
boxPrice: 25,
|
||||
price: 341
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Classic Ham",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"šunka výběrová",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 14,
|
||||
size: "30cm",
|
||||
pizzaPrice: 142,
|
||||
boxPrice: 13,
|
||||
price: 155
|
||||
},
|
||||
{
|
||||
varId: 15,
|
||||
size: "35cm",
|
||||
pizzaPrice: 172,
|
||||
boxPrice: 15,
|
||||
price: 187
|
||||
},
|
||||
{
|
||||
varId: 16,
|
||||
size: "40cm",
|
||||
pizzaPrice: 233,
|
||||
boxPrice: 18,
|
||||
price: 251
|
||||
},
|
||||
{
|
||||
varId: 17,
|
||||
size: "50cm",
|
||||
pizzaPrice: 294,
|
||||
boxPrice: 25,
|
||||
price: 319
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Quattro Formaggi",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"niva",
|
||||
"mozzarella",
|
||||
"uzený sýr",
|
||||
"eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 22,
|
||||
size: "30cm",
|
||||
pizzaPrice: 162,
|
||||
boxPrice: 13,
|
||||
price: 175
|
||||
},
|
||||
{
|
||||
varId: 23,
|
||||
size: "35cm",
|
||||
pizzaPrice: 186,
|
||||
boxPrice: 15,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 24,
|
||||
size: "40cm",
|
||||
pizzaPrice: 263,
|
||||
boxPrice: 18,
|
||||
price: 281
|
||||
},
|
||||
{
|
||||
varId: 25,
|
||||
size: "50cm",
|
||||
pizzaPrice: 346,
|
||||
boxPrice: 25,
|
||||
price: 371
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Hawai",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"šunka výběrová",
|
||||
"ananas",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 26,
|
||||
size: "30cm",
|
||||
pizzaPrice: 162,
|
||||
boxPrice: 13,
|
||||
price: 175
|
||||
},
|
||||
{
|
||||
varId: 27,
|
||||
size: "35cm",
|
||||
pizzaPrice: 186,
|
||||
boxPrice: 15,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 28,
|
||||
size: "40cm",
|
||||
pizzaPrice: 263,
|
||||
boxPrice: 18,
|
||||
price: 281
|
||||
},
|
||||
{
|
||||
varId: 29,
|
||||
size: "50cm",
|
||||
pizzaPrice: 346,
|
||||
boxPrice: 25,
|
||||
price: 371
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Mushroom",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"žampiony",
|
||||
"zakysaná smetana",
|
||||
"pórek",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 30,
|
||||
size: "30cm",
|
||||
pizzaPrice: 162,
|
||||
boxPrice: 13,
|
||||
price: 175
|
||||
},
|
||||
{
|
||||
varId: 31,
|
||||
size: "35cm",
|
||||
pizzaPrice: 186,
|
||||
boxPrice: 15,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 32,
|
||||
size: "40cm",
|
||||
pizzaPrice: 263,
|
||||
boxPrice: 18,
|
||||
price: 281
|
||||
},
|
||||
{
|
||||
varId: 33,
|
||||
size: "50cm",
|
||||
pizzaPrice: 346,
|
||||
boxPrice: 25,
|
||||
price: 371
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Mexico",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"pikantní salám",
|
||||
"slanina",
|
||||
"pálivé papričky",
|
||||
"červená cibule",
|
||||
"zelené olivy",
|
||||
"kukuřice",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 34,
|
||||
size: "30cm",
|
||||
pizzaPrice: 162,
|
||||
boxPrice: 13,
|
||||
price: 175
|
||||
},
|
||||
{
|
||||
varId: 35,
|
||||
size: "35cm",
|
||||
pizzaPrice: 186,
|
||||
boxPrice: 15,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 36,
|
||||
size: "40cm",
|
||||
pizzaPrice: 263,
|
||||
boxPrice: 18,
|
||||
price: 281
|
||||
},
|
||||
{
|
||||
varId: 37,
|
||||
size: "50cm",
|
||||
pizzaPrice: 346,
|
||||
boxPrice: 25,
|
||||
price: 371
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Bismark",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"slanina",
|
||||
"vejce",
|
||||
"pórek",
|
||||
"mozzarella, eidam 40%",
|
||||
"sýr"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 38,
|
||||
size: "30cm",
|
||||
pizzaPrice: 162,
|
||||
boxPrice: 13,
|
||||
price: 175
|
||||
},
|
||||
{
|
||||
varId: 39,
|
||||
size: "35cm",
|
||||
pizzaPrice: 186,
|
||||
boxPrice: 15,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 40,
|
||||
size: "40cm",
|
||||
pizzaPrice: 263,
|
||||
boxPrice: 18,
|
||||
price: 281
|
||||
},
|
||||
{
|
||||
varId: 41,
|
||||
size: "50cm",
|
||||
pizzaPrice: 346,
|
||||
boxPrice: 25,
|
||||
price: 371
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Tuna",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"tuňák",
|
||||
"červená cibule",
|
||||
"černé olivy",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 42,
|
||||
size: "30cm",
|
||||
pizzaPrice: 172,
|
||||
boxPrice: 13,
|
||||
price: 185
|
||||
},
|
||||
{
|
||||
varId: 43,
|
||||
size: "35cm",
|
||||
pizzaPrice: 212,
|
||||
boxPrice: 15,
|
||||
price: 227
|
||||
},
|
||||
{
|
||||
varId: 44,
|
||||
size: "40cm",
|
||||
pizzaPrice: 293,
|
||||
boxPrice: 18,
|
||||
price: 311
|
||||
},
|
||||
{
|
||||
varId: 45,
|
||||
size: "50cm",
|
||||
pizzaPrice: 376,
|
||||
boxPrice: 25,
|
||||
price: 401
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Spinach",
|
||||
ingredients: [
|
||||
"listový špenát",
|
||||
"kuřecí maso",
|
||||
"smetana",
|
||||
"mozzarella, eidam 40%",
|
||||
"česnek",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 46,
|
||||
size: "30cm",
|
||||
pizzaPrice: 182,
|
||||
boxPrice: 13,
|
||||
price: 195
|
||||
},
|
||||
{
|
||||
varId: 47,
|
||||
size: "35cm",
|
||||
pizzaPrice: 222,
|
||||
boxPrice: 15,
|
||||
price: 237
|
||||
},
|
||||
{
|
||||
varId: 48,
|
||||
size: "40cm",
|
||||
pizzaPrice: 303,
|
||||
boxPrice: 18,
|
||||
price: 321
|
||||
},
|
||||
{
|
||||
varId: 49,
|
||||
size: "50cm",
|
||||
pizzaPrice: 386,
|
||||
boxPrice: 25,
|
||||
price: 411
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Persia",
|
||||
ingredients: [
|
||||
"smetana",
|
||||
"česnek",
|
||||
"slanina",
|
||||
"červené cibule",
|
||||
"paprika mix",
|
||||
"černé olivy",
|
||||
"kuřecí maso",
|
||||
"2 druhy omáček",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 50,
|
||||
size: "30cm",
|
||||
pizzaPrice: 182,
|
||||
boxPrice: 13,
|
||||
price: 195
|
||||
},
|
||||
{
|
||||
varId: 51,
|
||||
size: "35cm",
|
||||
pizzaPrice: 222,
|
||||
boxPrice: 15,
|
||||
price: 237
|
||||
},
|
||||
{
|
||||
varId: 52,
|
||||
size: "40cm",
|
||||
pizzaPrice: 303,
|
||||
boxPrice: 18,
|
||||
price: 321
|
||||
},
|
||||
{
|
||||
varId: 53,
|
||||
size: "50cm",
|
||||
pizzaPrice: 396,
|
||||
boxPrice: 25,
|
||||
price: 421
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "BBQ Dream",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"slanina",
|
||||
"paprika mix",
|
||||
"kuřecí maso",
|
||||
"červená cibule",
|
||||
"BBQ omáčka",
|
||||
"mozzarella, eidam 40%"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 54,
|
||||
size: "30cm",
|
||||
pizzaPrice: 182,
|
||||
boxPrice: 13,
|
||||
price: 195
|
||||
},
|
||||
{
|
||||
varId: 55,
|
||||
size: "35cm",
|
||||
pizzaPrice: 222,
|
||||
boxPrice: 15,
|
||||
price: 237
|
||||
},
|
||||
{
|
||||
varId: 56,
|
||||
size: "40cm",
|
||||
pizzaPrice: 303,
|
||||
boxPrice: 18,
|
||||
price: 321
|
||||
},
|
||||
{
|
||||
varId: 57,
|
||||
size: "50cm",
|
||||
pizzaPrice: 396,
|
||||
boxPrice: 25,
|
||||
price: 421
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Cranberries",
|
||||
ingredients: [
|
||||
"niva",
|
||||
"uzený sýr",
|
||||
"kuřecí maso",
|
||||
"brusinky",
|
||||
"goldi",
|
||||
"mozzarella, eidam 40%",
|
||||
"smetana",
|
||||
"česnek"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 58,
|
||||
size: "30cm",
|
||||
pizzaPrice: 182,
|
||||
boxPrice: 13,
|
||||
price: 195
|
||||
},
|
||||
{
|
||||
varId: 59,
|
||||
size: "35cm",
|
||||
pizzaPrice: 222,
|
||||
boxPrice: 15,
|
||||
price: 237
|
||||
},
|
||||
{
|
||||
varId: 60,
|
||||
size: "40cm",
|
||||
pizzaPrice: 303,
|
||||
boxPrice: 18,
|
||||
price: 321
|
||||
},
|
||||
{
|
||||
varId: 61,
|
||||
size: "50cm",
|
||||
pizzaPrice: 396,
|
||||
boxPrice: 25,
|
||||
price: 421
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Vegetarian",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"listový špenát",
|
||||
"rajčata",
|
||||
"černé olivy",
|
||||
"kukuřice",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 62,
|
||||
size: "30cm",
|
||||
pizzaPrice: 188,
|
||||
boxPrice: 13,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 63,
|
||||
size: "35cm",
|
||||
pizzaPrice: 226,
|
||||
boxPrice: 15,
|
||||
price: 241
|
||||
},
|
||||
{
|
||||
varId: 64,
|
||||
size: "40cm",
|
||||
pizzaPrice: 313,
|
||||
boxPrice: 18,
|
||||
price: 331
|
||||
},
|
||||
{
|
||||
varId: 65,
|
||||
size: "50cm",
|
||||
pizzaPrice: 426,
|
||||
boxPrice: 25,
|
||||
price: 451
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Spicy Devil",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"červené cibule",
|
||||
"kuřecí maso",
|
||||
"pálivé papričky",
|
||||
"parmská šunka",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 66,
|
||||
size: "30cm",
|
||||
pizzaPrice: 188,
|
||||
boxPrice: 13,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 67,
|
||||
size: "35cm",
|
||||
pizzaPrice: 226,
|
||||
boxPrice: 15,
|
||||
price: 241
|
||||
},
|
||||
{
|
||||
varId: 68,
|
||||
size: "40cm",
|
||||
pizzaPrice: 313,
|
||||
boxPrice: 18,
|
||||
price: 331
|
||||
},
|
||||
{
|
||||
varId: 69,
|
||||
size: "50cm",
|
||||
pizzaPrice: 426,
|
||||
boxPrice: 25,
|
||||
price: 451
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Dimi's pizza",
|
||||
ingredients: [
|
||||
"brokolice",
|
||||
"slanina",
|
||||
"kuřecí maso",
|
||||
"kukuřice",
|
||||
"kari",
|
||||
"mozzarella, eidam 40%",
|
||||
"smetana",
|
||||
"červená cibule",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 309,
|
||||
size: "30cm",
|
||||
pizzaPrice: 182,
|
||||
boxPrice: 13,
|
||||
price: 195
|
||||
},
|
||||
{
|
||||
varId: 310,
|
||||
size: "35cm",
|
||||
pizzaPrice: 222,
|
||||
boxPrice: 15,
|
||||
price: 237
|
||||
},
|
||||
{
|
||||
varId: 311,
|
||||
size: "40cm",
|
||||
pizzaPrice: 303,
|
||||
boxPrice: 18,
|
||||
price: 321
|
||||
},
|
||||
{
|
||||
varId: 312,
|
||||
size: "50cm",
|
||||
pizzaPrice: 396,
|
||||
boxPrice: 25,
|
||||
price: 421
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: "Texas Pulled Pork",
|
||||
ingredients: [
|
||||
"tomato",
|
||||
"trhané vepřové maso",
|
||||
"kukuřice",
|
||||
"jalapeňos",
|
||||
"BBQ omáčka",
|
||||
"mozzarella, eidam 40%",
|
||||
"goldi"
|
||||
],
|
||||
sizes: [
|
||||
{
|
||||
varId: 394,
|
||||
size: "30cm",
|
||||
pizzaPrice: 188,
|
||||
boxPrice: 13,
|
||||
price: 201
|
||||
},
|
||||
{
|
||||
varId: 395,
|
||||
size: "35cm",
|
||||
pizzaPrice: 226,
|
||||
boxPrice: 15,
|
||||
price: 241
|
||||
},
|
||||
{
|
||||
varId: 396,
|
||||
size: "40cm",
|
||||
pizzaPrice: 313,
|
||||
boxPrice: 18,
|
||||
price: 331
|
||||
},
|
||||
{
|
||||
varId: 397,
|
||||
size: "50cm",
|
||||
pizzaPrice: 426,
|
||||
boxPrice: 25,
|
||||
price: 451
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
export const getTodayMock = () => {
|
||||
return '2023-05-31'; // středa
|
||||
}
|
||||
@ -384,4 +1134,8 @@ export const getMenuUMotlikuMock = (date: Date) => {
|
||||
|
||||
export const getMenuTechTowerMock = (date: Date) => {
|
||||
return MOCK_DATA['techTower'][getDayOfWeekIndex(date)];
|
||||
}
|
||||
|
||||
export const getPizzaListMock = () => {
|
||||
return MOCK_PIZZA_LIST;
|
||||
}
|
@ -17,7 +17,8 @@ export async function getPizzaList(): Promise<Pizza[] | undefined> {
|
||||
const today = formatDate(getToday());
|
||||
let clientData: ClientData = await storage.getData(today);
|
||||
if (!clientData.pizzaList) {
|
||||
clientData = await savePizzaList(await downloadPizzy());
|
||||
const mock = process.env.MOCK_DATA === 'true';
|
||||
clientData = await savePizzaList(await downloadPizzy(mock));
|
||||
}
|
||||
return Promise.resolve(clientData.pizzaList);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user