import React, { useState } from 'react' import { LiveEditor } from 'react-live' import { useConfigs } from 'lib/config-context' import { useTheme, useToasts, useClipboard } from 'components' import CopyIcon from '@geist-ui/react-icons/copy' import RightIcon from '@geist-ui/react-icons/chevronRight' interface Props { code: string } const Editor: React.FC = ({ code }) => { const theme = useTheme() const { copy } = useClipboard() const { isChinese } = useConfigs() const [visible, setVisible] = useState(false) const [, setToast] = useToasts() const clickHandler = (event: React.MouseEvent) => { event.stopPropagation() event.preventDefault() setVisible(!visible) } const copyHandler = (event: React.MouseEvent) => { event.stopPropagation() event.preventDefault() copy(code) setToast({ text: isChinese ? '代码已拷贝至剪切板。' : 'code copied.' }) } return (
{isChinese ? '编辑代码' : 'Code Editor'}
{visible && ( )}
) } export default Editor