import React from "react";
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 RoomDirectoryIcon from "@mui/icons-material/FolderShared";
import AvatarField from "./AvatarField";
const RoomDirectoryPagination = () => (
);
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 unselectAllRooms = useUnselectAll("rooms");
const { createMany, isloading } = useMutation();
const handleSend = values => {
createMany(
["room_directory", "createMany", { ids: selectedIds, data: {} }],
{
onSuccess: data => {
notify("resources.room_directory.action.send_success");
unselectAllRooms();
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 = () => {
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"]}
>
);
const resource = {
name: "room_directory",
icon: RoomDirectoryIcon,
list: RoomDirectoryList,
};
export default resource;