import { ReqHandler } from "@ethicdevs/react-monolith";
import { AppRoute, AppRouteParams } from "../../../routes.defs";
import { makeUsersService } from "../../../services/user";
import SettingsView, {
SettingsViewProps,
} from "../../../views/settings/SettingsView";
const getKeysListView: ReqHandler<
AppRouteParams,
AppRoute.SETTINGS_KEYS
> = async (request, reply) => {
const { curr_user_username } = request.session.data;
if (curr_user_username == null) {
return reply.status(404).callNotFound();
}
const usersService = makeUsersService({ request });
const user = await usersService.getUserByUsername(curr_user_username);
if (user == null) {
return reply.status(404).callNotFound();
}
const reqHandler = reply.makeRequestHandler(request, reply);
return reqHandler<SettingsViewProps>(SettingsView.name, {
sshKeys: await usersService.getUserSSHKeys(user),
});
};
export default getKeysListView;