[UI Work] Add Artist, Import Artist, Calendar

This commit is contained in:
Qstick 2017-09-07 23:09:52 -04:00
parent a747c5f135
commit 77f1d2e64c
109 changed files with 891 additions and 1082 deletions

View file

@ -15,7 +15,7 @@ import ModalBody from 'Components/Modal/ModalBody';
import ModalFooter from 'Components/Modal/ModalFooter';
import Table from 'Components/Table/Table';
import TableBody from 'Components/Table/TableBody';
import SelectSeriesModal from 'InteractiveImport/Series/SelectSeriesModal';
import SelectArtistModal from 'InteractiveImport/Series/SelectArtistModal';
import SelectSeasonModal from 'InteractiveImport/Season/SelectSeasonModal';
import InteractiveImportRow from './InteractiveImportRow';
import styles from './InteractiveImportModalContent.css';
@ -78,7 +78,7 @@ class InteractiveImportModalContent extends Component {
lastToggled: null,
selectedState: {},
invalidRowsSelected: [],
isSelectSeriesModalOpen: false,
isSelectArtistModalOpen: false,
isSelectSeasonModalOpen: false
};
}
@ -127,16 +127,16 @@ class InteractiveImportModalContent extends Component {
this.props.onImportModeChange(value);
}
onSelectSeriesPress = () => {
this.setState({ isSelectSeriesModalOpen: true });
onSelectArtistPress = () => {
this.setState({ isSelectArtistModalOpen: true });
}
onSelectSeasonPress = () => {
this.setState({ isSelectSeasonModalOpen: true });
}
onSelectSeriesModalClose = () => {
this.setState({ isSelectSeriesModalOpen: false });
onSelectArtistModalClose = () => {
this.setState({ isSelectArtistModalOpen: false });
}
onSelectSeasonModalClose = () => {
@ -168,7 +168,7 @@ class InteractiveImportModalContent extends Component {
allUnselected,
selectedState,
invalidRowsSelected,
isSelectSeriesModalOpen,
isSelectArtistModalOpen,
isSelectSeasonModalOpen
} = this.state;
@ -249,7 +249,7 @@ class InteractiveImportModalContent extends Component {
}
<div className={downloadId ? styles.leftButtons : styles.centerButtons}>
<Button onPress={this.onSelectSeriesPress}>
<Button onPress={this.onSelectArtistPress}>
Select Series
</Button>
@ -278,10 +278,10 @@ class InteractiveImportModalContent extends Component {
</div>
</ModalFooter>
<SelectSeriesModal
isOpen={isSelectSeriesModalOpen}
<SelectArtistModal
isOpen={isSelectArtistModalOpen}
ids={selectedIds}
onModalClose={this.onSelectSeriesModalClose}
onModalClose={this.onSelectArtistModalClose}
/>
<SelectSeasonModal

View file

@ -9,7 +9,7 @@ import TableRowCellButton from 'Components/Table/Cells/TableRowCellButton';
import TableSelectCell from 'Components/Table/Cells/TableSelectCell';
import Popover from 'Components/Tooltip/Popover';
import EpisodeQuality from 'Episode/EpisodeQuality';
import SelectSeriesModal from 'InteractiveImport/Series/SelectSeriesModal';
import SelectArtistModal from 'InteractiveImport/Series/SelectArtistModal';
import SelectSeasonModal from 'InteractiveImport/Season/SelectSeasonModal';
import SelectEpisodeModal from 'InteractiveImport/Episode/SelectEpisodeModal';
import SelectQualityModal from 'InteractiveImport/Quality/SelectQualityModal';
@ -25,7 +25,7 @@ class InteractiveImportRow extends Component {
super(props, context);
this.state = {
isSelectSeriesModalOpen: false,
isSelectArtistModalOpen: false,
isSelectSeasonModalOpen: false,
isSelectEpisodeModalOpen: false,
isSelectQualityModalOpen: false
@ -87,8 +87,8 @@ class InteractiveImportRow extends Component {
//
// Listeners
onSelectSeriesPress = () => {
this.setState({ isSelectSeriesModalOpen: true });
onSelectArtistPress = () => {
this.setState({ isSelectArtistModalOpen: true });
}
onSelectSeasonPress = () => {
@ -103,8 +103,8 @@ class InteractiveImportRow extends Component {
this.setState({ isSelectQualityModalOpen: true });
}
onSelectSeriesModalClose = (changed) => {
this.setState({ isSelectSeriesModalOpen: false });
onSelectArtistModalClose = (changed) => {
this.setState({ isSelectArtistModalOpen: false });
this.selectRowAfterChange(changed);
}
@ -141,7 +141,7 @@ class InteractiveImportRow extends Component {
} = this.props;
const {
isSelectSeriesModalOpen,
isSelectArtistModalOpen,
isSelectSeasonModalOpen,
isSelectEpisodeModalOpen,
isSelectQualityModalOpen
@ -171,7 +171,7 @@ class InteractiveImportRow extends Component {
</TableRowCell>
<TableRowCellButton
onPress={this.onSelectSeriesPress}
onPress={this.onSelectArtistPress}
>
{
showSeriesPlaceholder ? <InteractiveImportRowCellPlaceholder /> : seriesTitle
@ -238,10 +238,10 @@ class InteractiveImportRow extends Component {
}
</TableRowCell>
<SelectSeriesModal
isOpen={isSelectSeriesModalOpen}
<SelectArtistModal
isOpen={isSelectArtistModalOpen}
ids={[id]}
onModalClose={this.onSelectSeriesModalClose}
onModalClose={this.onSelectArtistModalClose}
/>
<SelectSeasonModal

View file

@ -1,9 +1,9 @@
import PropTypes from 'prop-types';
import React, { Component } from 'react';
import Modal from 'Components/Modal/Modal';
import SelectSeriesModalContentConnector from './SelectSeriesModalContentConnector';
import SelectArtistModalContentConnector from './SelectArtistModalContentConnector';
class SelectSeriesModal extends Component {
class SelectArtistModal extends Component {
//
// Render
@ -20,7 +20,7 @@ class SelectSeriesModal extends Component {
isOpen={isOpen}
onModalClose={onModalClose}
>
<SelectSeriesModalContentConnector
<SelectArtistModalContentConnector
{...otherProps}
onModalClose={onModalClose}
/>
@ -29,9 +29,9 @@ class SelectSeriesModal extends Component {
}
}
SelectSeriesModal.propTypes = {
SelectArtistModal.propTypes = {
isOpen: PropTypes.bool.isRequired,
onModalClose: PropTypes.func.isRequired
};
export default SelectSeriesModal;
export default SelectArtistModal;

View file

@ -8,10 +8,10 @@ import ModalContent from 'Components/Modal/ModalContent';
import ModalHeader from 'Components/Modal/ModalHeader';
import ModalBody from 'Components/Modal/ModalBody';
import ModalFooter from 'Components/Modal/ModalFooter';
import SelectSeriesRow from './SelectSeriesRow';
import styles from './SelectSeriesModalContent.css';
import SelectArtistRow from './SelectArtistRow';
import styles from './SelectArtistModalContent.css';
class SelectSeriesModalContent extends Component {
class SelectArtistModalContent extends Component {
//
// Lifecycle
@ -67,7 +67,7 @@ class SelectSeriesModalContent extends Component {
items.map((item) => {
return item.title.toLowerCase().includes(filter) ?
(
<SelectSeriesRow
<SelectArtistRow
key={item.id}
id={item.id}
title={item.title}
@ -90,10 +90,10 @@ class SelectSeriesModalContent extends Component {
}
}
SelectSeriesModalContent.propTypes = {
SelectArtistModalContent.propTypes = {
items: PropTypes.arrayOf(PropTypes.object).isRequired,
onSeriesSelect: PropTypes.func.isRequired,
onModalClose: PropTypes.func.isRequired
};
export default SelectSeriesModalContent;
export default SelectArtistModalContent;

View file

@ -5,7 +5,7 @@ import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import { updateInteractiveImportItem } from 'Store/Actions/interactiveImportActions';
import createAllSeriesSelector from 'Store/Selectors/createAllSeriesSelector';
import SelectSeriesModalContent from './SelectSeriesModalContent';
import SelectArtistModalContent from './SelectArtistModalContent';
function createMapStateToProps() {
return createSelector(
@ -22,7 +22,7 @@ const mapDispatchToProps = {
updateInteractiveImportItem
};
class SelectSeriesModalContentConnector extends Component {
class SelectArtistModalContentConnector extends Component {
//
// Listeners
@ -47,7 +47,7 @@ class SelectSeriesModalContentConnector extends Component {
render() {
return (
<SelectSeriesModalContent
<SelectArtistModalContent
{...this.props}
onSeriesSelect={this.onSeriesSelect}
/>
@ -55,11 +55,11 @@ class SelectSeriesModalContentConnector extends Component {
}
}
SelectSeriesModalContentConnector.propTypes = {
SelectArtistModalContentConnector.propTypes = {
ids: PropTypes.arrayOf(PropTypes.number).isRequired,
items: PropTypes.arrayOf(PropTypes.object).isRequired,
updateInteractiveImportItem: PropTypes.func.isRequired,
onModalClose: PropTypes.func.isRequired
};
export default connect(createMapStateToProps, mapDispatchToProps)(SelectSeriesModalContentConnector);
export default connect(createMapStateToProps, mapDispatchToProps)(SelectArtistModalContentConnector);

View file

@ -1,9 +1,9 @@
import PropTypes from 'prop-types';
import React, { Component } from 'react';
import Link from 'Components/Link/Link';
import styles from './SelectSeriesRow.css';
import styles from './SelectArtistRow.css';
class SelectSeriesRow extends Component {
class SelectArtistRow extends Component {
//
// Listeners
@ -28,10 +28,10 @@ class SelectSeriesRow extends Component {
}
}
SelectSeriesRow.propTypes = {
SelectArtistRow.propTypes = {
id: PropTypes.number.isRequired,
title: PropTypes.string.isRequired,
onSeriesSelect: PropTypes.func.isRequired
};
export default SelectSeriesRow;
export default SelectArtistRow;