import * as React from 'react' import { Button, Dialog, TextField } from "mdui" import useEventListener from "../useEventListener.ts" import { checkApiSuccessOrSncakbar, snackbar } from "../snackbar.ts" import Client from "../../api/Client.ts" import * as CryptoJS from 'crypto-js' import data from "../../Data.ts" import EventBus from "../../EventBus.ts" interface Refs { addContactDialogRef: React.MutableRefObject } export default function AddContactDialog({ addContactDialogRef, }: Refs) { const inputTargetRef = React.useRef(null) async function addContact() { const re = await Client.invoke("User.addContact", { target: inputTargetRef.current!.value, token: data.access_token, }) if (checkApiSuccessOrSncakbar(re, "添加失敗")) return snackbar({ message: "添加成功!", placement: "top", }) EventBus.emit('ContactsList.updateContacts') inputTargetRef.current!.value = '' addContactDialogRef.current!.open = false } return ( { if (event.key == 'Enter') addContact() }}> addContactDialogRef.current!.open = false}>取消 addContact()}>添加 ) }