import React, { Fragment } from "react"; import FolderSharedIcon from "@mui/icons-material/FolderShared"; import { BooleanField, BulkDeleteButton, Button, DatagridConfigurable, ExportButton, DeleteButton, List, NumberField, Pagination, SelectColumnsButton, TextField, TopToolbar, useCreate, useListContext, useNotify, useTranslate, useRecordContext, useRefresh, useUnselectAll, } from "react-admin"; import { useMutation } from "react-query"; import AvatarField from "./AvatarField"; const RoomDirectoryPagination = props => ( ); export const RoomDirectoryDeleteButton = props => { const translate = useTranslate(); return ( } /> ); }; export const RoomDirectoryBulkDeleteButton = props => ( } /> ); export const RoomDirectoryBulkSaveButton = () => { const { selectedIds } = useListContext(); const notify = useNotify(); const refresh = useRefresh(); const unselectAll = useUnselectAll(); const { createMany, isloading } = useMutation(); const handleSend = values => { createMany( ["room_directory", "createMany", { ids: selectedIds, data: {} }], { onSuccess: data => { notify("resources.room_directory.action.send_success"); unselectAll("rooms"); refresh(); }, onError: error => notify("resources.room_directory.action.send_failure", { type: "error", }), } ); }; return ( ); }; export const RoomDirectorySaveButton = () => { const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); const [create, { isloading }] = useCreate(); const handleSend = values => { create( "room_directory", { data: { id: record.id } }, { onSuccess: data => { notify("resources.room_directory.action.send_success"); refresh(); }, onError: error => notify("resources.room_directory.action.send_failure", { type: "error", }), } ); }; return ( ); }; const RoomDirectoryBulkActionButtons = () => ( ); const RoomDirectoryListActions = () => ( ); export const RoomDirectoryList = () => ( } perPage={100} actions={} > "/rooms/" + id + "/show"} bulkActionButtons={} omit={["room_id", "canonical_alias", "topic"]} > );