mirror of
https://github.com/scratchfoundation/scratch-www.git
synced 2025-02-17 08:31:23 -05:00
lint fixes
This commit is contained in:
parent
c09bac2e41
commit
4bf7a2d307
8 changed files with 124 additions and 126 deletions
|
@ -55,7 +55,7 @@ const selectCanRemoveManager = (state, managerId) =>
|
|||
const selectCanPromoteCurators = state => !selectIsMuted(state) && isManager(state);
|
||||
|
||||
const selectCanTransferOwnership = (state, managerId) =>
|
||||
state.managers && state.managers.items && state.managers.items.length > 1 && // there is more than one manager
|
||||
state.managers && state.managers.items && state.managers.items.length > 1 && // there is more than one manager
|
||||
managerId === state.studio.owner && // and the selected manager is the owner
|
||||
isCreator(state); // and the current user is the owner
|
||||
|
||||
|
|
|
@ -204,7 +204,7 @@ const transferOwnership = (newOwnerName, newOwnerId) => ((dispatch, getState) =>
|
|||
dispatch(setInfo({owner: newOwnerId}));
|
||||
return resolve();
|
||||
});
|
||||
}));
|
||||
}));
|
||||
|
||||
export {
|
||||
Errors,
|
||||
|
|
|
@ -22,64 +22,64 @@ const TransferOwnershipConfirmation = ({
|
|||
userId,
|
||||
selectedId
|
||||
}) => {
|
||||
const currentOwnerUsername = items.find(item => item.id===userId).username;
|
||||
const newOwnerUsername = items.find(item => item.id===selectedId).username;
|
||||
return <div className="content">
|
||||
const currentOwnerUsername = items.find(item => item.id === userId).username;
|
||||
const newOwnerUsername = items.find(item => item.id === selectedId).username;
|
||||
return (<div className="content">
|
||||
<ModalInnerContent
|
||||
className="inner"
|
||||
className="inner"
|
||||
>
|
||||
<div>
|
||||
<TransferOwnershipTile
|
||||
key={userId}
|
||||
id={userId}
|
||||
username={currentOwnerUsername}
|
||||
isCreator={false}
|
||||
/>
|
||||
<span>➡️</span>
|
||||
<TransferOwnershipTile
|
||||
key={selectedId}
|
||||
id={selectedId}
|
||||
username={newOwnerUsername}
|
||||
isCreator
|
||||
/>
|
||||
</div>
|
||||
<h3>
|
||||
<FormattedMessage id="studio.transfer.confirmWithPassword" />
|
||||
</h3>
|
||||
<Form
|
||||
onSubmit={formData => {
|
||||
handleTransfer(formData.password, newOwnerUsername, selectedId);
|
||||
}}
|
||||
>
|
||||
<div>
|
||||
<TransferOwnershipTile
|
||||
key={userId}
|
||||
id={userId}
|
||||
username={currentOwnerUsername}
|
||||
isCreator={false}
|
||||
/>
|
||||
<span>➡️</span>
|
||||
<TransferOwnershipTile
|
||||
key={selectedId}
|
||||
id={selectedId}
|
||||
username={newOwnerUsername}
|
||||
isCreator={true}
|
||||
/>
|
||||
</div>
|
||||
<h3>
|
||||
<FormattedMessage id="studio.transfer.confirmWithPassword" />
|
||||
</h3>
|
||||
<Form
|
||||
onSubmit={formData => {
|
||||
handleTransfer(formData.password, newOwnerUsername, selectedId)
|
||||
}}
|
||||
<Input
|
||||
required
|
||||
key="passwordInput"
|
||||
name="password"
|
||||
type="password"
|
||||
/>
|
||||
<a href="/accounts/password_reset/">
|
||||
<FormattedMessage id="studio.transfer.forgotPassword" />
|
||||
</a>
|
||||
<div
|
||||
className="transfer-ownership-button-row transfer-ownership-button-row-split"
|
||||
>
|
||||
<Input
|
||||
required
|
||||
key="passwordInput"
|
||||
name="password"
|
||||
type="password"
|
||||
/>
|
||||
<a href="/accounts/password_reset/">
|
||||
<FormattedMessage id="studio.transfer.forgotPassword" />
|
||||
</a>
|
||||
<div
|
||||
className="transfer-ownership-button-row transfer-ownership-button-row-split"
|
||||
<button
|
||||
className="button"
|
||||
onClick={handleBack}
|
||||
>
|
||||
<button
|
||||
className="button"
|
||||
onClick={handleBack}
|
||||
>
|
||||
<FormattedMessage id="studio.back" />
|
||||
</button>
|
||||
<button
|
||||
className="button"
|
||||
type="submit"
|
||||
>
|
||||
<FormattedMessage id="studio.confirm" />
|
||||
</button>
|
||||
</div>
|
||||
</Form>
|
||||
<FormattedMessage id="studio.back" />
|
||||
</button>
|
||||
<button
|
||||
className="button"
|
||||
type="submit"
|
||||
>
|
||||
<FormattedMessage id="studio.confirm" />
|
||||
</button>
|
||||
</div>
|
||||
</Form>
|
||||
</ModalInnerContent>
|
||||
</div>
|
||||
}
|
||||
</div>);
|
||||
};
|
||||
|
||||
TransferOwnershipConfirmation.propTypes = {
|
||||
handleBack: PropTypes.func,
|
||||
|
@ -103,11 +103,11 @@ TransferOwnershipConfirmation.propTypes = {
|
|||
};
|
||||
|
||||
export default connect(
|
||||
state => ({
|
||||
state => ({
|
||||
userId: selectUserId(state),
|
||||
...managers.selector(state)
|
||||
}),
|
||||
{
|
||||
onLoadMore: loadManagers
|
||||
}
|
||||
)(TransferOwnershipConfirmation);
|
||||
)(TransferOwnershipConfirmation);
|
||||
|
|
|
@ -12,23 +12,23 @@ import './transfer-ownership-modal.scss';
|
|||
const TransferOwnershipInfo = ({
|
||||
handleClose,
|
||||
handleNext
|
||||
}) =>
|
||||
<div className="content">
|
||||
<img
|
||||
src="/svgs/studio/transfer-ownership.svg"
|
||||
className="transfer-ownership-image"
|
||||
/>
|
||||
<ModalInnerContent
|
||||
}) =>
|
||||
(<div className="content">
|
||||
<img
|
||||
src="/svgs/studio/transfer-ownership.svg"
|
||||
className="transfer-ownership-image"
|
||||
/>
|
||||
<ModalInnerContent
|
||||
className="inner"
|
||||
>
|
||||
<h2>
|
||||
<FormattedMessage id="studio.transfer.youAreAboutTo" />
|
||||
</h2>
|
||||
<div className='transfer-ownership-alert-wrapper'>
|
||||
<AlertComponent
|
||||
className='alert-error transfer-ownership-alert'
|
||||
<div className="transfer-ownership-alert-wrapper">
|
||||
<AlertComponent
|
||||
className="alert-error transfer-ownership-alert"
|
||||
icon={errorIcon}
|
||||
id='studio.transfer.cannotUndo'
|
||||
id="studio.transfer.cannotUndo"
|
||||
/>
|
||||
</div>
|
||||
<span
|
||||
|
@ -56,8 +56,8 @@ const TransferOwnershipInfo = ({
|
|||
<FormattedMessage id="studio.next" />
|
||||
</button>
|
||||
</div>
|
||||
</ModalInnerContent>
|
||||
</div>
|
||||
</ModalInnerContent>
|
||||
</div>);
|
||||
|
||||
TransferOwnershipInfo.propTypes = {
|
||||
handleClose: PropTypes.func,
|
||||
|
|
|
@ -24,7 +24,7 @@ const TransferOwnershipModal = ({
|
|||
}) => {
|
||||
const [step, setStep] = useState(STEPS.info);
|
||||
const [selectedId, setSelectedId] = useState(null);
|
||||
return <Modal
|
||||
return (<Modal
|
||||
isOpen
|
||||
className="transfer-ownership-modal"
|
||||
onRequestClose={handleClose}
|
||||
|
@ -50,7 +50,7 @@ const TransferOwnershipModal = ({
|
|||
handleTransfer={handleTransfer}
|
||||
selectedId={selectedId}
|
||||
/>}
|
||||
</Modal>
|
||||
</Modal>);
|
||||
};
|
||||
|
||||
TransferOwnershipModal.propTypes = {
|
||||
|
|
|
@ -25,18 +25,18 @@ const TransferOwnershipSelection = ({
|
|||
if (items.length === 0) onLoadMore();
|
||||
}, []);
|
||||
|
||||
return <div className="content">
|
||||
return (<div className="content">
|
||||
<ModalInnerContent
|
||||
className="inner transfer-tile-background"
|
||||
>
|
||||
<div>
|
||||
<h3>
|
||||
<FormattedMessage id="studio.transfer.whichManager" />
|
||||
</h3>
|
||||
</div>
|
||||
<div className="transfer-ownership-grid">
|
||||
{items.map(item =>
|
||||
userId !== item.id &&
|
||||
className="inner transfer-tile-background"
|
||||
>
|
||||
<div>
|
||||
<h3>
|
||||
<FormattedMessage id="studio.transfer.whichManager" />
|
||||
</h3>
|
||||
</div>
|
||||
<div className="transfer-ownership-grid">
|
||||
{items.map(item =>
|
||||
userId !== item.id &&
|
||||
(<TransferOwnershipTile
|
||||
key={item.username}
|
||||
handleSelected={() => handleSelected(item.id)}
|
||||
|
@ -46,8 +46,8 @@ const TransferOwnershipSelection = ({
|
|||
isCreator={false}
|
||||
selected={item.id === selectedId}
|
||||
/>)
|
||||
)}
|
||||
{/* {moreToLoad &&
|
||||
)}
|
||||
{/* {moreToLoad &&
|
||||
<div className="studio-grid-load-more">
|
||||
<button
|
||||
className={classNames('button', {
|
||||
|
@ -59,27 +59,27 @@ const TransferOwnershipSelection = ({
|
|||
</button>
|
||||
</div>
|
||||
} */}
|
||||
</div>
|
||||
<div
|
||||
className="transfer-ownership-button-row transfer-ownership-button-row-split"
|
||||
</div>
|
||||
<div
|
||||
className="transfer-ownership-button-row transfer-ownership-button-row-split"
|
||||
>
|
||||
<button
|
||||
className="button"
|
||||
onClick={handleBack}
|
||||
>
|
||||
<button
|
||||
className="button"
|
||||
onClick={handleBack}
|
||||
>
|
||||
<FormattedMessage id="studio.back" />
|
||||
</button>
|
||||
<button
|
||||
className="button next-button"
|
||||
disabled={selectedId === null}
|
||||
onClick={handleNext}
|
||||
>
|
||||
<FormattedMessage id="studio.next" />
|
||||
</button>
|
||||
</div>
|
||||
<FormattedMessage id="studio.back" />
|
||||
</button>
|
||||
<button
|
||||
className="button next-button"
|
||||
disabled={selectedId === null}
|
||||
onClick={handleNext}
|
||||
>
|
||||
<FormattedMessage id="studio.next" />
|
||||
</button>
|
||||
</div>
|
||||
</ModalInnerContent>
|
||||
</div>
|
||||
}
|
||||
</div>);
|
||||
};
|
||||
|
||||
TransferOwnershipSelection.propTypes = {
|
||||
handleBack: PropTypes.func,
|
||||
|
@ -101,11 +101,11 @@ TransferOwnershipSelection.propTypes = {
|
|||
};
|
||||
|
||||
export default connect(
|
||||
state => ({
|
||||
state => ({
|
||||
userId: selectUserId(state),
|
||||
...managers.selector(state)
|
||||
}),
|
||||
{
|
||||
onLoadMore: loadManagers
|
||||
}
|
||||
)(TransferOwnershipSelection);
|
||||
)(TransferOwnershipSelection);
|
||||
|
|
|
@ -5,23 +5,21 @@ import classNames from 'classnames';
|
|||
|
||||
const TransferOwnershipTile = ({
|
||||
username, image, isCreator, selected, handleSelected
|
||||
}) => {
|
||||
return (
|
||||
<div
|
||||
className={classNames("studio-member-tile", {"transfer-ownership-tile-selected": selected})}
|
||||
onClick={handleSelected}
|
||||
>
|
||||
<img
|
||||
className="studio-member-image"
|
||||
src={image}
|
||||
/>
|
||||
<div className="studio-member-info">
|
||||
{username}
|
||||
{isCreator && <div className="studio-member-role"><FormattedMessage id="studio.creatorRole" /></div>}
|
||||
</div>
|
||||
}) => (
|
||||
<div
|
||||
className={classNames('studio-member-tile', {'transfer-ownership-tile-selected': selected})}
|
||||
onClick={handleSelected}
|
||||
>
|
||||
<img
|
||||
className="studio-member-image"
|
||||
src={image}
|
||||
/>
|
||||
<div className="studio-member-info">
|
||||
{username}
|
||||
{isCreator && <div className="studio-member-role"><FormattedMessage id="studio.creatorRole" /></div>}
|
||||
</div>
|
||||
);
|
||||
};
|
||||
</div>
|
||||
);
|
||||
|
||||
TransferOwnershipTile.propTypes = {
|
||||
username: PropTypes.string,
|
||||
|
|
|
@ -19,7 +19,7 @@ import {
|
|||
promoteCurator,
|
||||
removeCurator,
|
||||
removeManager,
|
||||
transferOwnership,
|
||||
transferOwnership
|
||||
} from './lib/studio-member-actions';
|
||||
|
||||
import {selectStudioHasReachedManagerLimit} from '../../redux/studio';
|
||||
|
@ -135,14 +135,14 @@ const StudioMemberTile = ({
|
|||
<TransferOwnershipModal
|
||||
handleClose={() => setTransferOwnershipModalOpen(false)}
|
||||
handleTransfer={(password, newOwnerUsername, newOwnerUsernameId) => {
|
||||
onTransferOwnership(/*password, */newOwnerUsername, newOwnerUsernameId)
|
||||
onTransferOwnership(/* password, */newOwnerUsername, newOwnerUsernameId)
|
||||
.then(() => {
|
||||
setTransferOwnershipModalOpen(false);
|
||||
successAlert({
|
||||
id: 'studio.alertTransfer',
|
||||
values: {name: newOwnerUsername}
|
||||
});
|
||||
})
|
||||
});
|
||||
}}
|
||||
/>
|
||||
}
|
||||
|
@ -167,7 +167,7 @@ const ManagerTile = connect(
|
|||
(state, ownProps) => ({
|
||||
canRemove: selectCanRemoveManager(state, ownProps.id),
|
||||
canPromote: false,
|
||||
canTransferOwnership: selectCanTransferOwnership(state, ownProps.id) &&
|
||||
canTransferOwnership: selectCanTransferOwnership(state, ownProps.id) &&
|
||||
selectStudioTransferLaunched(state),
|
||||
isCreator: state.studio.owner === ownProps.id
|
||||
}),
|
||||
|
|
Loading…
Reference in a new issue