import React, { Fragment } from "react"; import PersonPinIcon from "@material-ui/icons/PersonPin"; import SettingsInputComponentIcon from "@material-ui/icons/SettingsInputComponent"; import { ArrayInput, ArrayField, Datagrid, DateField, Create, Edit, List, Filter, Toolbar, SimpleForm, SimpleFormIterator, TabbedForm, FormTab, BooleanField, BooleanInput, ImageField, PasswordInput, TextField, TextInput, ReferenceField, SelectInput, BulkDeleteButton, DeleteButton, SaveButton, regex, useTranslate, Pagination, } from "react-admin"; import { ServerNoticeButton, ServerNoticeBulkButton } from "./ServerNotices"; const UserPagination = props => ( ); const UserFilter = props => ( ); const UserBulkActionButtons = props => { const translate = useTranslate(); return ( ); }; export const UserList = props => ( } filterDefaultValues={{ guests: true, deactivated: false }} bulkActionButtons={} pagination={} > {/* Hack since the users endpoint does not give displaynames in the list*/} ); // https://matrix.org/docs/spec/appendices#user-identifiers const validateUser = regex( /^@[a-z0-9._=\-/]+:.*/, "synapseadmin.users.invalid_user_id" ); const UserEditToolbar = props => { const translate = useTranslate(); return ( ); }; export const UserCreate = props => ( ); const UserTitle = ({ record }) => { const translate = useTranslate(); return ( {translate("resources.users.name")}{" "} {record ? `"${record.displayname}"` : ""} ); }; export const UserEdit = props => ( }> }> }> } > );