'use client' import cn from '@/utils/classnames' import Modal from '@/app/components/base/modal' import Input from '@/app/components/base/input' import { useTranslation } from 'react-i18next' import { useState } from 'react' import { useContext } from 'use-context-selector' import s from './index.module.css' import Button from '@/app/components/base/button' import { RiCloseLine } from '@remixicon/react' import { useAppContext } from '@/context/app-context' import { updateWorkspaceInfo } from '@/service/common' import { ToastContext } from '@/app/components/base/toast' import { noop } from 'lodash-es' type IEditWorkspaceModalProps = { onCancel: () => void } const EditWorkspaceModal = ({ onCancel, }: IEditWorkspaceModalProps) => { const { t } = useTranslation() const { notify } = useContext(ToastContext) const { currentWorkspace, isCurrentWorkspaceOwner } = useAppContext() const [name, setName] = useState(currentWorkspace.name) const changeWorkspaceInfo = async (name: string) => { try { await updateWorkspaceInfo({ url: '/workspaces/info', body: { name, }, }) notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') }) location.assign(`${location.origin}`) } catch { notify({ type: 'error', message: t('common.actionMsg.modifiedUnsuccessfully') }) } } return (
{t('common.account.editWorkspaceInfo')}
{t('common.account.workspaceName')}
{ setName(e.target.value) }} onClear={() => { setName(currentWorkspace.name) }} />
) } export default EditWorkspaceModal