'use client' import type { FC } from 'react' import React from 'react' import { useTranslation } from 'react-i18next' import cn from 'classnames' import Indicator from '../../../indicator' import Operate from '../data-source-notion/operate' import { DataSourceType } from './types' import s from './style.module.css' import { Trash03 } from '@/app/components/base/icons/src/vender/line/general' export type ConfigItemType = { id: string logo: any name: string isActive: boolean notionConfig?: { total: number } } type Props = { type: DataSourceType payload: ConfigItemType onRemove: () => void notionActions?: { onChangeAuthorizedPage: () => void } } const ConfigItem: FC = ({ type, payload, onRemove, notionActions, }) => { const { t } = useTranslation() const isNotion = type === DataSourceType.notion const isWebsite = type === DataSourceType.website const onChangeAuthorizedPage = notionActions?.onChangeAuthorizedPage || function () { } return (
{payload.name}
{ payload.isActive ? : }
{ payload.isActive ? t(isNotion ? 'common.dataSource.notion.connected' : 'common.dataSource.website.active') : t(isNotion ? 'common.dataSource.notion.disconnected' : 'common.dataSource.website.inactive') }
{isNotion && ( )} { isWebsite && (
) }
) } export default React.memo(ConfigItem)