diff --git a/jsapp/js/components/anonymousSubmission.component.tsx b/jsapp/js/components/anonymousSubmission.component.tsx index ffdd0cea3b..28892ed092 100644 --- a/jsapp/js/components/anonymousSubmission.component.tsx +++ b/jsapp/js/components/anonymousSubmission.component.tsx @@ -7,6 +7,7 @@ import styles from './anonymousSubmission.module.scss'; interface AnonymousSubmissionProps { checked: boolean; + disabled: boolean; onChange: (isChecked: boolean) => void; } @@ -15,6 +16,7 @@ export default function AnonymousSubmission(props: AnonymousSubmissionProps) {
{ } render() { + const modifiers = []; + if (this.props.disabled) { + modifiers.push('is-disabled'); + } + return ( - + { disabled={this.props.disabled} data-cy={this.props['data-cy']} /> - + - {this.props.label && + {this.props.label && ( {this.props.label} - } + )} ); diff --git a/jsapp/js/components/permissions/publicShareSettings.component.tsx b/jsapp/js/components/permissions/publicShareSettings.component.tsx index d3099bfdb6..065226617f 100644 --- a/jsapp/js/components/permissions/publicShareSettings.component.tsx +++ b/jsapp/js/components/permissions/publicShareSettings.component.tsx @@ -22,6 +22,7 @@ interface PublicShareSettingsProps { publicPerms: PermissionResponse[]; assetUid: string; deploymentActive: boolean; + disableControls: boolean; } class PublicShareSettings extends React.Component { @@ -87,6 +88,7 @@ class PublicShareSettings extends React.Component { > @@ -99,6 +101,7 @@ class PublicShareSettings extends React.Component { @@ -108,6 +111,7 @@ class PublicShareSettings extends React.Component { diff --git a/jsapp/js/components/permissions/sharingForm.component.tsx b/jsapp/js/components/permissions/sharingForm.component.tsx index 9af97380aa..71a7c1cbb6 100644 --- a/jsapp/js/components/permissions/sharingForm.component.tsx +++ b/jsapp/js/components/permissions/sharingForm.component.tsx @@ -8,6 +8,7 @@ import bem from 'js/bem'; import LoadingSpinner from 'js/components/common/loadingSpinner'; import Button from 'js/components/common/button'; import InlineMessage from 'js/components/common/inlineMessage'; +import {userCan} from 'js/components/permissions/utils'; import {replaceBracketsWithLink} from 'js/textUtils'; import {ANON_USERNAME, ANON_USERNAME_URL} from 'js/users/utils'; import {ASSET_TYPES} from 'js/constants'; @@ -173,7 +174,7 @@ export default class SharingForm extends React.Component< } /** Display pending owner if not already included in list of user permissions */ - renderPendingOwner() { + renderPendingOwner(displayControls: boolean) { if ( this.state.asset?.project_ownership?.status === TransferStatuses.Pending && @@ -185,6 +186,7 @@ export default class SharingForm extends React.Component< return ( ); })} - {this.renderPendingOwner()} + {this.renderPendingOwner(isManagingPossible)} {!this.state.isAddUserEditorVisible && (
); } + +export default ProjectQuickActions