@use crate::ActixLoader; @use crate::browse::ViewBrowseState; @use crate::nav::NavState; @use crate::templates::layouts::wide; @use hyaenidae_toolkit::templates::button_group; @use hyaenidae_toolkit::templates::centered; @use hyaenidae_toolkit::{templates::{card, card_body, card_title}, Card}; @use hyaenidae_toolkit::{templates::{tab, tab_group}, Tab}; @use hyaenidae_toolkit::templates::{thumbnail, thumbnail_border, thumbnails}; @use i18n_embed_fl::fl; @(loader: &ActixLoader, browse_view: &ViewBrowseState, nav_state: &NavState) @:wide(loader, &fl!(loader, "site-name"), &fl!(loader, "site-description"), nav_state, {}, { @if browse_view.is_logged_in() {
@:tab_group({ @:tab(Tab::new("/browse").selected(true), { @fl!(loader, "submissions-tab") }) @:tab(Tab::new("/discover"), { @fl!(loader, "profiles-tab") }) })
} @if browse_view.has_submissions() { @if browse_view.has_nav() { @:thumbnail_border({ @:button_group(&browse_view.nav(loader)) }) } @:thumbnails({ @for thumb in browse_view.submissions() { @:thumbnail(&thumb) } }) @if browse_view.has_nav() { @:thumbnail_border({ @:button_group(&browse_view.nav(loader)) }) } } else { @:centered(false, { @if browse_view.is_logged_in() { @:card(&Card::full_width().dark(nav_state.dark()).classes(&["empty-state"]), { @:card_title({ @fl!(loader, "site-name") }) @:card_body({ @fl!(loader, "browse-empty") }) }) } else { @:card(&Card::full_width().dark(nav_state.dark()), { @:card_title({ @fl!(loader, "site-name") }) @:card_body({ @fl!(loader, "browse-logged-out") }) }) } }) } })