/* * Vencord, a modification for Discord's desktop app * Copyright (c) 2023 Vendicated and contributors * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ import { ModalContent, ModalFooter, ModalHeader, ModalProps, ModalRoot, openModal, } from "@utils/modal"; import { findLazy } from "@webpack"; import { Button, Forms, React, Switch, TextInput } from "@webpack/common"; import { encrypt } from "../index"; const ComponentDispatch = findLazy(m => m.emitter?._events?.INSERT_TEXT); function EncModal(props: ModalProps) { const [secret, setSecret] = React.useState(""); const [cover, setCover] = React.useState(""); const [password, setPassword] = React.useState("password"); const [noCover, setNoCover] = React.useState(false); const isValid = secret && (noCover || (cover && /\w \w/.test(cover))); return ( Encrypt Message Secret { setSecret(e); }} /> Cover (2 or more Words!!) { setCover(e); }} /> Password { setPassword(e); }} /> { setNoCover(e); }} > Don't use a Cover ); } export function buildEncModal(): any { openModal(props => ); }