Fix regression on disabled elements for SecureComponent (#1478)

Signed-off-by: Lenin Alevski <alevsk.8772@gmail.com>
This commit is contained in:
Lenin Alevski
2022-01-27 15:10:05 -06:00
committed by GitHub
parent 382e315668
commit 0286010053

View File

@@ -58,12 +58,15 @@ const SecureComponent = ({
resource,
}: ISecureComponentProps) => {
const permissionGranted = hasPermission(resource, scopes, matchAll);
const childComponent = <>{children}</>;
if (!permissionGranted && !errorProps) return <RenderError />;
if (!permissionGranted && errorProps) {
return cloneElement(childComponent, { ...errorProps });
return Array.isArray(children) ? (
<>{children.map((child) => cloneElement(child, { ...errorProps }))}</>
) : (
cloneElement(children, { ...errorProps })
);
}
return childComponent;
return <>{children}</>;
};
export default SecureComponent;