feat(modals): port SignedOut and SignOutSessions

This commit is contained in:
Paul Makles
2022-06-18 11:56:05 +01:00
parent 0ee7b73d61
commit 374be319c4
9 changed files with 60 additions and 56 deletions

View File

@@ -0,0 +1,40 @@
import { Text } from "preact-i18n";
import { useCallback } from "preact/hooks";
import { Modal } from "@revoltchat/ui";
import { noopTrue } from "../../../lib/js";
import { ModalProps } from "../types";
/**
* Confirm whether a user wants to sign out of all other sessions
*/
export function SignOutSessions(props: ModalProps<"sign_out_sessions">) {
const onClick = useCallback(() => {
props.onDeleting();
props.client.api.delete("/auth/session/all").then(props.onDelete);
return true;
}, []);
return (
<Modal
{...props}
title={<Text id={"app.special.modals.sessions.title"} />}
actions={[
{
onClick: noopTrue,
palette: "accent",
confirmation: true,
children: <Text id="app.special.modals.actions.back" />,
},
{
onClick,
confirmation: true,
children: <Text id="app.special.modals.sessions.accept" />,
},
]}>
<Text id="app.special.modals.sessions.short" /> <br />
</Modal>
);
}