mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	feat: review buttons makeover (#4513)
This commit is contained in:
		
							parent
							
								
									40325a0eb4
								
							
						
					
					
						commit
						b6830b805b
					
				@ -189,6 +189,9 @@ export const ChangeRequestOverview: FC = () => {
 | 
				
			|||||||
    const hasApprovedAlready = changeRequest.approvals.some(
 | 
					    const hasApprovedAlready = changeRequest.approvals.some(
 | 
				
			||||||
        approval => approval.createdBy.id === user?.id
 | 
					        approval => approval.createdBy.id === user?.id
 | 
				
			||||||
    );
 | 
					    );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    const countOfChanges = changesCount(changeRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
        <>
 | 
					        <>
 | 
				
			||||||
            <ChangeRequestHeader changeRequest={changeRequest} />
 | 
					            <ChangeRequestHeader changeRequest={changeRequest} />
 | 
				
			||||||
@ -199,7 +202,7 @@ export const ChangeRequestOverview: FC = () => {
 | 
				
			|||||||
                </StyledAsideBox>
 | 
					                </StyledAsideBox>
 | 
				
			||||||
                <StyledPaper elevation={0}>
 | 
					                <StyledPaper elevation={0}>
 | 
				
			||||||
                    <StyledInnerContainer>
 | 
					                    <StyledInnerContainer>
 | 
				
			||||||
                        Requested Changes ({changesCount(changeRequest)})
 | 
					                        Requested Changes ({countOfChanges})
 | 
				
			||||||
                        <ChangeRequest
 | 
					                        <ChangeRequest
 | 
				
			||||||
                            changeRequest={changeRequest}
 | 
					                            changeRequest={changeRequest}
 | 
				
			||||||
                            onRefetch={refetchChangeRequest}
 | 
					                            onRefetch={refetchChangeRequest}
 | 
				
			||||||
@ -256,7 +259,9 @@ export const ChangeRequestOverview: FC = () => {
 | 
				
			|||||||
                                        }
 | 
					                                        }
 | 
				
			||||||
                                        onApprove={onApprove}
 | 
					                                        onApprove={onApprove}
 | 
				
			||||||
                                        disabled={!allowChangeRequestActions}
 | 
					                                        disabled={!allowChangeRequestActions}
 | 
				
			||||||
                                    />
 | 
					                                    >
 | 
				
			||||||
 | 
					                                        Review changes ({countOfChanges})
 | 
				
			||||||
 | 
					                                    </ReviewButton>
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                            />
 | 
					                            />
 | 
				
			||||||
                            <ConditionallyRender
 | 
					                            <ConditionallyRender
 | 
				
			||||||
 | 
				
			|||||||
@ -5,6 +5,8 @@ import { useChangeRequest } from 'hooks/api/getters/useChangeRequest/useChangeRe
 | 
				
			|||||||
import {
 | 
					import {
 | 
				
			||||||
    ClickAwayListener,
 | 
					    ClickAwayListener,
 | 
				
			||||||
    Grow,
 | 
					    Grow,
 | 
				
			||||||
 | 
					    ListItemIcon,
 | 
				
			||||||
 | 
					    ListItemText,
 | 
				
			||||||
    MenuItem,
 | 
					    MenuItem,
 | 
				
			||||||
    MenuList,
 | 
					    MenuList,
 | 
				
			||||||
    Paper,
 | 
					    Paper,
 | 
				
			||||||
@ -18,12 +20,14 @@ import { useAuthUser } from 'hooks/api/getters/useAuth/useAuthUser';
 | 
				
			|||||||
import AccessContext from 'contexts/AccessContext';
 | 
					import AccessContext from 'contexts/AccessContext';
 | 
				
			||||||
import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig';
 | 
					import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig';
 | 
				
			||||||
import { ConditionallyRender } from 'component/common/ConditionallyRender/ConditionallyRender';
 | 
					import { ConditionallyRender } from 'component/common/ConditionallyRender/ConditionallyRender';
 | 
				
			||||||
 | 
					import CheckBox from '@mui/icons-material/Check';
 | 
				
			||||||
 | 
					import Clear from '@mui/icons-material/Clear';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const ReviewButton: FC<{
 | 
					export const ReviewButton: FC<{
 | 
				
			||||||
    disabled: boolean;
 | 
					    disabled: boolean;
 | 
				
			||||||
    onReject: () => void;
 | 
					    onReject: () => void;
 | 
				
			||||||
    onApprove: () => void;
 | 
					    onApprove: () => void;
 | 
				
			||||||
}> = ({ disabled, onReject, onApprove }) => {
 | 
					}> = ({ disabled, onReject, onApprove, children }) => {
 | 
				
			||||||
    const { uiConfig } = useUiConfig();
 | 
					    const { uiConfig } = useUiConfig();
 | 
				
			||||||
    const { isAdmin } = useContext(AccessContext);
 | 
					    const { isAdmin } = useContext(AccessContext);
 | 
				
			||||||
    const projectId = useRequiredPathParam('projectId');
 | 
					    const projectId = useRequiredPathParam('projectId');
 | 
				
			||||||
@ -48,6 +52,9 @@ export const ReviewButton: FC<{
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        setOpen(false);
 | 
					        setOpen(false);
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					    const popperWidth = anchorRef.current
 | 
				
			||||||
 | 
					        ? anchorRef.current.offsetWidth
 | 
				
			||||||
 | 
					        : null;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
        <React.Fragment>
 | 
					        <React.Fragment>
 | 
				
			||||||
@ -67,11 +74,12 @@ export const ReviewButton: FC<{
 | 
				
			|||||||
                projectId={projectId}
 | 
					                projectId={projectId}
 | 
				
			||||||
                environmentId={data?.environment}
 | 
					                environmentId={data?.environment}
 | 
				
			||||||
            >
 | 
					            >
 | 
				
			||||||
                Review changes
 | 
					                {children}
 | 
				
			||||||
            </PermissionButton>
 | 
					            </PermissionButton>
 | 
				
			||||||
            <Popper
 | 
					            <Popper
 | 
				
			||||||
                sx={{
 | 
					                sx={{
 | 
				
			||||||
                    zIndex: 1,
 | 
					                    zIndex: 1,
 | 
				
			||||||
 | 
					                    width: popperWidth,
 | 
				
			||||||
                }}
 | 
					                }}
 | 
				
			||||||
                open={open}
 | 
					                open={open}
 | 
				
			||||||
                anchorEl={anchorRef.current}
 | 
					                anchorEl={anchorRef.current}
 | 
				
			||||||
@ -96,7 +104,12 @@ export const ReviewButton: FC<{
 | 
				
			|||||||
                                    autoFocusItem
 | 
					                                    autoFocusItem
 | 
				
			||||||
                                >
 | 
					                                >
 | 
				
			||||||
                                    <MenuItem onClick={onApprove}>
 | 
					                                    <MenuItem onClick={onApprove}>
 | 
				
			||||||
 | 
					                                        <ListItemIcon>
 | 
				
			||||||
 | 
					                                            <CheckBox fontSize="small" />
 | 
				
			||||||
 | 
					                                        </ListItemIcon>
 | 
				
			||||||
 | 
					                                        <ListItemText>
 | 
				
			||||||
                                            Approve changes
 | 
					                                            Approve changes
 | 
				
			||||||
 | 
					                                        </ListItemText>
 | 
				
			||||||
                                    </MenuItem>
 | 
					                                    </MenuItem>
 | 
				
			||||||
                                    <ConditionallyRender
 | 
					                                    <ConditionallyRender
 | 
				
			||||||
                                        condition={Boolean(
 | 
					                                        condition={Boolean(
 | 
				
			||||||
@ -104,7 +117,12 @@ export const ReviewButton: FC<{
 | 
				
			|||||||
                                        )}
 | 
					                                        )}
 | 
				
			||||||
                                        show={
 | 
					                                        show={
 | 
				
			||||||
                                            <MenuItem onClick={onReject}>
 | 
					                                            <MenuItem onClick={onReject}>
 | 
				
			||||||
 | 
					                                                <ListItemIcon>
 | 
				
			||||||
 | 
					                                                    <Clear fontSize="small" />
 | 
				
			||||||
 | 
					                                                </ListItemIcon>
 | 
				
			||||||
 | 
					                                                <ListItemText>
 | 
				
			||||||
                                                    Reject changes
 | 
					                                                    Reject changes
 | 
				
			||||||
 | 
					                                                </ListItemText>
 | 
				
			||||||
                                            </MenuItem>
 | 
					                                            </MenuItem>
 | 
				
			||||||
                                        }
 | 
					                                        }
 | 
				
			||||||
                                    />
 | 
					                                    />
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user