Client:EmptyView Added a empty room public screen

This commit is contained in:
Akmal Isomadinov 2024-08-01 18:05:07 +05:00
parent 443c23936d
commit 9572d260f6
4 changed files with 55 additions and 12 deletions

View File

@ -12,8 +12,11 @@
"FormRoomEmptyTitle": "Welcome to the Form filling room",
"InviteUsersOptionDescription": "Add portal members for joint editing in the room",
"InviteUsersOptionTitle": "Inviting Attendees",
"PublicRoomEmptyTitle": "Welcome to the Public room",
"ShareOptionDescription": "Copy a public access link or invite other users to the room to start the form filling process.",
"ShareOptionTitle": "Share a room",
"SharePublicRoomOptionDescription": "Enable external link access to other users.",
"SharePublicRoomOptionTitle": "Share the room with all users",
"UploadDeviceOptionDescription": "Upload any type files from your personal device",
"UploadDeviceOptionTitle": "Upload from your Device",
"UploadDevicePDFFormOptionDescription": "Upload a ready PDF form to the room from your device.",

View File

@ -79,10 +79,7 @@ const EmptyFolderContainer = ({
[t, canCreateFiles, type],
);
if (
roomType === RoomsType.FormRoom ||
parentRoomType === FolderType.FormRoom
) {
if (roomType || parentRoomType === FolderType.FormRoom) {
return (
<EmptyViewContainer
type={roomType}

View File

@ -15,6 +15,12 @@ import EmptyFormRoomLightIcon from "PUBLIC_DIR/images/emptyview/empty.form.room.
import EmptyCustomRoomDarkIcon from "PUBLIC_DIR/images/emptyview/empty.custom.room.dark.svg";
import EmptyCustomRoomLightIcon from "PUBLIC_DIR/images/emptyview/empty.custom.room.light.svg";
import EmptyPublicRoomDarkIcon from "PUBLIC_DIR/images/emptyview/empty.public.room.dark.svg";
import EmptyPublicRoomLightIcon from "PUBLIC_DIR/images/emptyview/empty.public.room.light.svg";
import EmptyPublicRoomCollaboratorDarkIcon from "PUBLIC_DIR/images/emptyview/empty.public.room.collaborator.dark.svg";
import EmptyPublicRoomCollaboratorLightIcon from "PUBLIC_DIR/images/emptyview/empty.public.room.collaborator.light.svg";
import EmptyFormRoomCollaboratorDarkIcon from "PUBLIC_DIR/images/emptyview/empty.form.room.collaborator.dark.svg";
import EmptyFormRoomCollaboratorLightIcon from "PUBLIC_DIR/images/emptyview/empty.form.room.collaborator.light.svg";
@ -167,7 +173,7 @@ export const getTitle = (
case RoomsType.EditingRoom:
return "";
case RoomsType.PublicRoom:
return "";
return t("EmptyView:PublicRoomEmptyTitle");
case RoomsType.CustomRoom:
return t("EmptyView:CustomRoomEmptyTitle");
default:
@ -214,7 +220,25 @@ export const getRoomIcon = (
)
.with([RoomsType.EditingRoom, P._], () => <div />)
.with([RoomsType.PublicRoom, P._], () => <div />)
.with(
[
RoomsType.PublicRoom,
P.union(ShareAccessRights.None, ShareAccessRights.RoomManager), // owner, docspace admin, room admin
],
() =>
isBaseTheme ? (
<EmptyPublicRoomLightIcon />
) : (
<EmptyPublicRoomDarkIcon />
),
)
.with([RoomsType.PublicRoom, ShareAccessRights.Collaborator], () =>
isBaseTheme ? (
<EmptyPublicRoomCollaboratorLightIcon />
) : (
<EmptyPublicRoomCollaboratorDarkIcon />
),
)
.with(
[
RoomsType.CustomRoom,
@ -381,7 +405,7 @@ export const getOptions = (
t("EmptyView:InviteUsersOptionDescription"),
);
const shareRoom = {
const shareFillingRoom = {
title: t("EmptyView:ShareOptionTitle"),
description: t("EmptyView:ShareOptionDescription"),
icon: <SharedIcon />,
@ -390,6 +414,15 @@ export const getOptions = (
disabled: false,
};
const sharePublicRoom = {
title: t("EmptyView:SharePublicRoomOptionTitle"),
description: t("EmptyView:SharePublicRoomOptionDescription"),
icon: <SharedIcon />,
key: "share-public-room",
onClick: actions.createAndCopySharedLink,
disabled: false,
};
const createFile: EmptyViewItemType = {
title: t("EmptyView:CreateNewFileTitle"),
description: t("EmptyView:CreateNewFileDescription"),
@ -461,13 +494,23 @@ export const getOptions = (
if (isFormFiller) return [];
if (isCollaborator)
return [uploadPDFFromDocSpace, uploadFromDevicePDF, shareRoom];
return [uploadPDFFromDocSpace, uploadFromDevicePDF, shareFillingRoom];
return [uploadPDFFromDocSpace, uploadFromDevicePDF, shareRoom];
return [uploadPDFFromDocSpace, uploadFromDevicePDF, shareFillingRoom];
case RoomsType.EditingRoom:
return [];
case RoomsType.PublicRoom:
return [];
if (isNotAdmin) return [];
if (isCollaborator)
return [createFile, uploadAllFromDocSpace, uploadFromDeviceAnyFile];
return [
createFile,
sharePublicRoom,
uploadAllFromDocSpace,
uploadFromDeviceAnyFile,
];
case RoomsType.CustomRoom:
if (isNotAdmin) return [];

View File

@ -184,7 +184,7 @@ const EmptyViewContainer = observer(
},
);
const injectedEmptyViewContainer = inject<TStore>(
const InjectedEmptyViewContainer = inject<TStore>(
({ contextOptionsStore, selectedFolderStore, dialogsStore }) => {
const { onClickInviteUsers, onCreateAndCopySharedLink } =
contextOptionsStore;
@ -206,4 +206,4 @@ const injectedEmptyViewContainer = inject<TStore>(
},
)(EmptyViewContainer);
export default injectedEmptyViewContainer;
export default InjectedEmptyViewContainer;