import { useState } from "react"; import { Button, Card, Popconfirm } from "antd"; import { DeleteOutlined, PlusOutlined } from "@ant-design/icons"; import { useTranslation } from "react-i18next"; import { ProTable, type ProColumns } from "@ant-design/pro-table"; import type { DisplayNameInfo, DisplayNameProps } from "./types"; import DisplayNameModal from "./display-name-modal"; const DisplayNameTable: React.FC = ({ data, onChange, onDelete }) => { const { t: $t } = useTranslation(); const [modalVisible, setModalVisible] = useState(false); const dataSource = Object.entries(data || {}).map(([culture, displayName]) => ({ culture, displayName, key: culture, })); const columns: ProColumns[] = [ { title: $t("AbpOpenIddict.DisplayName:CultureName"), dataIndex: "culture", align: "left", width: 200, }, { title: $t("AbpOpenIddict.DisplayName:DisplayName"), dataIndex: "displayName", align: "left", width: 200, }, { title: $t("AbpUi.Actions"), width: 180, fixed: "right", render: (_, record) => ( onDelete?.(record)} > ), }, ]; return ( <> columns={columns} dataSource={dataSource} search={false} pagination={false} toolBarRender={() => [ , ]} /> setModalVisible(false)} onChange={(info) => { onChange?.(info); setModalVisible(false); }} /> ); }; export default DisplayNameTable;