Pokračuj v předchozím příkladu, kde jsi vytvořila typy pro emailovou zprávu a schránku.
Vytvoř postupně následující funkce:
-
getUnread- funkce bude jako parametr přijímat emailovou schránku typuInboxa vrátí pole nepřečtených zpráv typuEmailMessage.Pro výběr nepřečtených zpráv použij metodu pole
filter.V
main.tsfunkci zavolej, výsledek vypiš do konzole a přesvědč se, že se ti vrátily jen nepřečtené zprávy. -
markAsRead- funkce bude jako parametr přijímat dvě hodnoty:- emailovou schránku typu
Inbox idzprávy (číslo), kterou chceme označit jako přečtenou.
Funkce vrátí nové pole (typu
Inbox, tj. pole emailových zpráv), kde bude zpráva s předanýmidoznačená jako přečtená.Pro vytvoření nového pole se zprávami použij metodu pole
map.V
main.tsfunkci zavolej. Jako parametr předej id zprávy, o které víš, že je nepřečtená. Výsledné pole vypiš do konzole a podívej se, zda je zpráva označená jako přečtená. - emailovou schránku typu
Bonus
Pokud už se nudíš, vytvoř navíc ještě funkci
-
findBySender, která jako parametr bude přijímat:- poštovní schránku typu
Inbox - emailovou adresu (string)
Najdi ve schránce všechny zprávy, které ve vlastnosti
frommají uvedenou emailovou adresu, a vrať z funkce jejich pole (tj. pole zpráv typuEmailMessage).V
main.tsfunkci vyzkoušej a nech si vyhledat zprávy s konkrétním odesílatelem. - poštovní schránku typu