import * as React from 'react' import { Dialog, TextField } from "mdui" import showSnackbar from '../../utils/showSnackbar.ts' import { CallbackError } from 'lingchair-client-protocol' import useEventListener from '../../utils/useEventListener.ts' import ClientCache from '../../ClientCache.ts' export default function AddFavourtieChatDialog({ useRef }: { useRef: React.MutableRefObject }) { const inputTargetRef = React.useRef(null) useEventListener(useRef, 'closed', () => { inputTargetRef.current!.value = '' }) async function addFavouriteChat() { try { await (await ClientCache.getMySelf())!.addFavouriteChatsOrThrow([inputTargetRef.current!.value]) inputTargetRef.current!.value = '' showSnackbar({ message: '添加成功!' }) } catch (e) { if (e instanceof CallbackError) showSnackbar({ message: '添加收藏对话失败: ' + e.message }) } } return ( { if (event.key == 'Enter') addFavouriteChat() }}> useRef.current!.open = false}>取消 addFavouriteChat()}>添加 ) }