╭─────────────╮ │scroll to top│ ╰─────────────╯ ╭ UserLogin.zig ────────────────────────────────────────────────╮ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ╰───────────────────────────────────────────────────────────────╯
╭────╮ ╭ clone ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ╮ │http│ ssh │ │ ╰────╯ ╰ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ╯
224 username_input.clear(allocator); 225 password_input.clear(allocator); 226 227 // leave the user tab for the page it belongs to, where the 228 // web's /login redirect also lands 229 try self.session.navigate(self.session.data.current_page.pageRoot()); 230 }, 231 } 232 } 233 234 fn rememberFailure(self: *View, failure: ui.Session.FormFeedback.LoginFailure, username: []const u8) !void { 235 self.session.data.form_feedback = .{ .login = .{ 236 .failure = failure, 237 .username = try self.session.arena.allocator().dupe(u8, username), 238 } }; 239 } 240 }; 241