This repository has no description
lustre gleam
0

Configure Feed

Select the types of activity you want to include in your feed.

:lipstick: simplify leader card

author
kacaii.dev
date (Apr 6, 2026, 10:44 AM -0300) commit 74fa95b6 parent a00caa37 change-id qzvmqnys
+5 -38
+5 -38
client/src/client/page/register_crew.gleam
··· 222 222 ]) 223 223 } 224 224 225 - fn view_user_to_leader_card(model: Model, user: User) -> element.Element(Msg) { 225 + fn view_user_to_leader_card(_model: Model, user: User) -> element.Element(Msg) { 226 226 let on_click = event.on_click(UserSelectedLeader(user)) 227 - let hover_style = class("hover:cursor-pointer") 228 - 229 - // - Display "Selected" if user is already the leader. 230 - // - Display the user's role if they are not. 231 - // 232 - let badge_style = class("py-2 px-4 text-sm") 233 - let badge = case model.selected_leader { 234 - option.Some(selected) if selected == user -> 235 - badge.badge([badge.success(), badge_style], [ 236 - icon.user_check([]), 237 - html.text("Leader"), 238 - ]) 227 + let hover_style = class("hover:cursor-pointer hover:border-accent") 239 228 240 - _ -> 241 - badge.badge([badge.outline(), badge_style], [ 242 - icon.user([]), 243 - html.text(user.role |> role.to_string), 244 - ]) 245 - } 246 - 247 - let card_attributes = [ 248 - on_click, 249 - hover_style, 250 - class("flex flex-col items-center p-4"), 251 - class("hover:shadow-xl hover:border-accent"), 252 - ] 253 - 254 - let card_header = 255 - card.header([class("flex gap-2 justify-center items-center")], [ 256 - badge, 257 - html.strong([class("truncate")], [html.text(user.full_name)]), 258 - ]) 259 - 260 - let card_content = 261 - card.content([], [html.p([class("truncate")], [html.text(user.email)])]) 262 - 263 - card.card(card_attributes, [ 264 - html.div([class("flex flex-col gap-2")], [card_header, card_content]), 229 + card.card([on_click, hover_style, class("flex flex-col gap-1 p-2")], [ 230 + card.header([], [html.strong([], [html.text(user.full_name)])]), 231 + card.content([], [html.div([], [html.small([], [html.text(user.email)])])]), 265 232 ]) 266 233 } 267 234