Fixed: Rotating mobile device when modal is open won't reset modal

Closes #3333
This commit is contained in:
Mark McDowall 2020-04-25 11:59:29 -07:00
parent 9d766cfed5
commit 5a7dec34cc
33 changed files with 104 additions and 113 deletions

View File

@ -7,7 +7,7 @@ import TableBody from 'Components/Table/TableBody';
import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper'; import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper';
import TablePager from 'Components/Table/TablePager'; import TablePager from 'Components/Table/TablePager';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
@ -56,7 +56,7 @@ class Blacklist extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -103,7 +103,7 @@ class Blacklist extends Component {
/> />
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -8,7 +8,7 @@ import TableBody from 'Components/Table/TableBody';
import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper'; import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper';
import TablePager from 'Components/Table/TablePager'; import TablePager from 'Components/Table/TablePager';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
@ -96,7 +96,7 @@ class History extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetchingAny && !isAllPopulated && isFetchingAny && !isAllPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -147,7 +147,7 @@ class History extends Component {
/> />
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -13,7 +13,7 @@ import Table from 'Components/Table/Table';
import TableBody from 'Components/Table/TableBody'; import TableBody from 'Components/Table/TableBody';
import TablePager from 'Components/Table/TablePager'; import TablePager from 'Components/Table/TablePager';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
@ -191,7 +191,7 @@ class Queue extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isRefreshing && !isAllPopulated && isRefreshing && !isAllPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -248,7 +248,7 @@ class Queue extends Component {
/> />
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
<RemoveQueueItemsModal <RemoveQueueItemsModal
isOpen={isConfirmRemoveModalOpen} isOpen={isConfirmRemoveModalOpen}

View File

@ -8,7 +8,7 @@ import Icon from 'Components/Icon';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import TextInput from 'Components/Form/TextInput'; import TextInput from 'Components/Form/TextInput';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import AddNewSeriesSearchResultConnector from './AddNewSeriesSearchResultConnector'; import AddNewSeriesSearchResultConnector from './AddNewSeriesSearchResultConnector';
import styles from './AddNewSeries.css'; import styles from './AddNewSeries.css';
@ -88,7 +88,7 @@ class AddNewSeries extends Component {
return ( return (
<PageContent title="Add New Series"> <PageContent title="Add New Series">
<PageContentBodyConnector> <PageContentBody>
<div className={styles.searchContainer}> <div className={styles.searchContainer}>
<div className={styles.searchIconContainer}> <div className={styles.searchIconContainer}>
<Icon <Icon
@ -191,7 +191,7 @@ class AddNewSeries extends Component {
} }
<div /> <div />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -5,7 +5,7 @@ import selectAll from 'Utilities/Table/selectAll';
import toggleSelected from 'Utilities/Table/toggleSelected'; import toggleSelected from 'Utilities/Table/toggleSelected';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import ImportSeriesTableConnector from './ImportSeriesTableConnector'; import ImportSeriesTableConnector from './ImportSeriesTableConnector';
import ImportSeriesFooterConnector from './ImportSeriesFooterConnector'; import ImportSeriesFooterConnector from './ImportSeriesFooterConnector';
@ -97,7 +97,7 @@ class ImportSeries extends Component {
return ( return (
<PageContent title="Import Series"> <PageContent title="Import Series">
<PageContentBodyConnector <PageContentBody
registerScroller={this.setScrollerRef} registerScroller={this.setScrollerRef}
onScroll={this.onScroll} onScroll={this.onScroll}
> >
@ -133,7 +133,7 @@ class ImportSeries extends Component {
onRemoveSelectedStateItem={this.onRemoveSelectedStateItem} onRemoveSelectedStateItem={this.onRemoveSelectedStateItem}
/> />
} }
</PageContentBodyConnector> </PageContentBody>
{ {
!rootFoldersError && rootFoldersPopulated && !!unmappedFolders.length && !rootFoldersError && rootFoldersPopulated && !!unmappedFolders.length &&

View File

@ -7,7 +7,7 @@ import FieldSet from 'Components/FieldSet';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import FileBrowserModal from 'Components/FileBrowser/FileBrowserModal'; import FileBrowserModal from 'Components/FileBrowser/FileBrowserModal';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import RootFolders from 'RootFolder/RootFolders'; import RootFolders from 'RootFolder/RootFolders';
import styles from './ImportSeriesSelectFolder.css'; import styles from './ImportSeriesSelectFolder.css';
@ -53,7 +53,7 @@ class ImportSeriesSelectFolder extends Component {
return ( return (
<PageContent title="Import Series"> <PageContent title="Import Series">
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -132,7 +132,7 @@ class ImportSeriesSelectFolder extends Component {
/> />
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -3,7 +3,7 @@ import React, { Component } from 'react';
import { align, icons } from 'Helpers/Props'; import { align, icons } from 'Helpers/Props';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import Measure from 'Components/Measure'; import Measure from 'Components/Measure';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
@ -138,7 +138,7 @@ class CalendarPage extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector <PageContentBody
className={styles.calendarPageBody} className={styles.calendarPageBody}
innerClassName={styles.calendarInnerPageBody} innerClassName={styles.calendarInnerPageBody}
> >
@ -159,7 +159,7 @@ class CalendarPage extends Component {
hasSeries && hasSeries &&
<LegendConnector /> <LegendConnector />
} }
</PageContentBodyConnector> </PageContentBody>
<CalendarLinkModal <CalendarLinkModal
isOpen={isCalendarLinkModalOpen} isOpen={isCalendarLinkModalOpen}

View File

@ -1,5 +1,6 @@
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import React, { Component } from 'react'; import React, { Component } from 'react';
import { isMobile as isMobileUtil } from 'Utilities/mobile';
import { isLocked } from 'Utilities/scrollLock'; import { isLocked } from 'Utilities/scrollLock';
import { scrollDirections } from 'Helpers/Props'; import { scrollDirections } from 'Helpers/Props';
import OverlayScroller from 'Components/Scroller/OverlayScroller'; import OverlayScroller from 'Components/Scroller/OverlayScroller';
@ -8,6 +9,15 @@ import styles from './PageContentBody.css';
class PageContentBody extends Component { class PageContentBody extends Component {
//
// Lifecycle
constructor(props, context) {
super(props, context);
this._isMobile = isMobileUtil();
}
// //
// Listeners // Listeners
@ -26,13 +36,12 @@ class PageContentBody extends Component {
const { const {
className, className,
innerClassName, innerClassName,
isSmallScreen,
children, children,
dispatch, dispatch,
...otherProps ...otherProps
} = this.props; } = this.props;
const ScrollerComponent = isSmallScreen ? Scroller : OverlayScroller; const ScrollerComponent = this._isMobile ? Scroller : OverlayScroller;
return ( return (
<ScrollerComponent <ScrollerComponent
@ -52,7 +61,6 @@ class PageContentBody extends Component {
PageContentBody.propTypes = { PageContentBody.propTypes = {
className: PropTypes.string, className: PropTypes.string,
innerClassName: PropTypes.string, innerClassName: PropTypes.string,
isSmallScreen: PropTypes.bool.isRequired,
children: PropTypes.node.isRequired, children: PropTypes.node.isRequired,
onScroll: PropTypes.func, onScroll: PropTypes.func,
dispatch: PropTypes.func dispatch: PropTypes.func

View File

@ -1,17 +0,0 @@
import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector';
import PageContentBody from './PageContentBody';
function createMapStateToProps() {
return createSelector(
createDimensionsSelector(),
(dimensions) => {
return {
isSmallScreen: dimensions.isSmallScreen
};
}
);
}
export default connect(createMapStateToProps, null, null, { forwardRef: true })(PageContentBody);

View File

@ -1,17 +1,17 @@
import React from 'react'; import React from 'react';
import ErrorBoundaryError from 'Components/Error/ErrorBoundaryError'; import ErrorBoundaryError from 'Components/Error/ErrorBoundaryError';
import PageContentBodyConnector from './PageContentBodyConnector'; import PageContentBody from './PageContentBody';
import styles from './PageContentError.css'; import styles from './PageContentError.css';
function PageContentError(props) { function PageContentError(props) {
return ( return (
<div className={styles.content}> <div className={styles.content}>
<PageContentBodyConnector> <PageContentBody>
<ErrorBoundaryError <ErrorBoundaryError
{...props} {...props}
message='There was an error loading this page' message='There was an error loading this page'
/> />
</PageContentBodyConnector> </PageContentBody>
</div> </div>
); );
} }

View File

@ -6,7 +6,7 @@ import toggleSelected from 'Utilities/Table/toggleSelected';
import { align, sortDirections } from 'Helpers/Props'; import { align, sortDirections } from 'Helpers/Props';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import FilterMenu from 'Components/Menu/FilterMenu'; import FilterMenu from 'Components/Menu/FilterMenu';
@ -137,7 +137,7 @@ class SeasonPass extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -183,7 +183,7 @@ class SeasonPass extends Component {
!error && isPopulated && !items.length && !error && isPopulated && !items.length &&
<NoSeries totalItems={totalItems} /> <NoSeries totalItems={totalItems} />
} }
</PageContentBodyConnector> </PageContentBody>
<SeasonPassFooter <SeasonPassFooter
selectedCount={this.getSelectedIds().length} selectedCount={this.getSelectedIds().length}

View File

@ -15,7 +15,7 @@ import Measure from 'Components/Measure';
import MonitorToggleButton from 'Components/MonitorToggleButton'; import MonitorToggleButton from 'Components/MonitorToggleButton';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
@ -310,7 +310,7 @@ class SeriesDetails extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector innerClassName={styles.innerContentBody}> <PageContentBody innerClassName={styles.innerContentBody}>
<div className={styles.header}> <div className={styles.header}>
<div <div
className={styles.backdrop} className={styles.backdrop}
@ -646,7 +646,7 @@ class SeriesDetails extends Component {
showImportMode={false} showImportMode={false}
onModalClose={this.onInteractiveImportModalClose} onModalClose={this.onInteractiveImportModalClose}
/> />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -6,7 +6,7 @@ import toggleSelected from 'Utilities/Table/toggleSelected';
import { align, sortDirections } from 'Helpers/Props'; import { align, sortDirections } from 'Helpers/Props';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import FilterMenu from 'Components/Menu/FilterMenu'; import FilterMenu from 'Components/Menu/FilterMenu';
@ -192,7 +192,7 @@ class SeriesEditor extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -239,7 +239,7 @@ class SeriesEditor extends Component {
!error && isPopulated && !items.length && !error && isPopulated && !items.length &&
<NoSeries totalItems={totalItems} /> <NoSeries totalItems={totalItems} />
} }
</PageContentBodyConnector> </PageContentBody>
<SeriesEditorFooter <SeriesEditorFooter
seriesIds={selectedSeriesIds} seriesIds={selectedSeriesIds}

View File

@ -5,7 +5,7 @@ import hasDifferentItemsOrOrder from 'Utilities/Object/hasDifferentItemsOrOrder'
import { align, icons, sortDirections } from 'Helpers/Props'; import { align, icons, sortDirections } from 'Helpers/Props';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageJumpBar from 'Components/Page/PageJumpBar'; import PageJumpBar from 'Components/Page/PageJumpBar';
import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper'; import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
@ -281,7 +281,7 @@ class SeriesIndex extends Component {
</PageToolbar> </PageToolbar>
<div className={styles.pageContentBodyWrapper}> <div className={styles.pageContentBodyWrapper}>
<PageContentBodyConnector <PageContentBody
registerScroller={this.setScrollerRef} registerScroller={this.setScrollerRef}
className={styles.contentBody} className={styles.contentBody}
innerClassName={styles[`${view}InnerContentBody`]} innerClassName={styles[`${view}InnerContentBody`]}
@ -318,7 +318,7 @@ class SeriesIndex extends Component {
!error && isPopulated && !items.length && !error && isPopulated && !items.length &&
<NoSeries totalItems={totalItems} /> <NoSeries totalItems={totalItems} />
} }
</PageContentBodyConnector> </PageContentBody>
{ {
isLoaded && !!jumpBarItems.order.length && isLoaded && !!jumpBarItems.order.length &&

View File

@ -2,7 +2,7 @@ import PropTypes from 'prop-types';
import React, { Component, Fragment } from 'react'; import React, { Component, Fragment } from 'react';
import { icons } from 'Helpers/Props'; import { icons } from 'Helpers/Props';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
@ -77,7 +77,7 @@ class DownloadClientSettings extends Component {
onSavePress={this.onSavePress} onSavePress={this.onSavePress}
/> />
<PageContentBodyConnector> <PageContentBody>
<DownloadClientsConnector /> <DownloadClientsConnector />
<DownloadClientOptionsConnector <DownloadClientOptionsConnector
@ -86,7 +86,7 @@ class DownloadClientSettings extends Component {
/> />
<RemotePathMappingsConnector /> <RemotePathMappingsConnector />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -4,7 +4,7 @@ import React, { Component } from 'react';
import { kinds } from 'Helpers/Props'; import { kinds } from 'Helpers/Props';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import Form from 'Components/Form/Form'; import Form from 'Components/Form/Form';
import ConfirmModal from 'Components/Modal/ConfirmModal'; import ConfirmModal from 'Components/Modal/ConfirmModal';
@ -117,7 +117,7 @@ class GeneralSettings extends Component {
{...otherProps} {...otherProps}
/> />
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -179,7 +179,7 @@ class GeneralSettings extends Component {
/> />
</Form> </Form>
} }
</PageContentBodyConnector> </PageContentBody>
<ConfirmModal <ConfirmModal
isOpen={this.state.isRestartRequiredModalOpen} isOpen={this.state.isRestartRequiredModalOpen}

View File

@ -2,7 +2,7 @@ import PropTypes from 'prop-types';
import React, { Component, Fragment } from 'react'; import React, { Component, Fragment } from 'react';
import { icons } from 'Helpers/Props'; import { icons } from 'Helpers/Props';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
@ -76,14 +76,14 @@ class IndexerSettings extends Component {
onSavePress={this.onSavePress} onSavePress={this.onSavePress}
/> />
<PageContentBodyConnector> <PageContentBody>
<IndexersConnector /> <IndexersConnector />
<IndexerOptionsConnector <IndexerOptionsConnector
onChildMounted={this.onChildMounted} onChildMounted={this.onChildMounted}
onChildStateChange={this.onChildStateChange} onChildStateChange={this.onChildStateChange}
/> />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -4,7 +4,7 @@ import { inputTypes, sizes } from 'Helpers/Props';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import FieldSet from 'Components/FieldSet'; import FieldSet from 'Components/FieldSet';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import Form from 'Components/Form/Form'; import Form from 'Components/Form/Form';
import FormGroup from 'Components/Form/FormGroup'; import FormGroup from 'Components/Form/FormGroup';
@ -64,7 +64,7 @@ class MediaManagement extends Component {
onSavePress={onSavePress} onSavePress={onSavePress}
/> />
<PageContentBodyConnector> <PageContentBody>
<NamingConnector /> <NamingConnector />
{ {
@ -449,7 +449,7 @@ class MediaManagement extends Component {
<RootFoldersConnector /> <RootFoldersConnector />
<AddRootFolderConnector /> <AddRootFolderConnector />
</FieldSet> </FieldSet>
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,6 +1,6 @@
import React from 'react'; import React from 'react';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import MetadatasConnector from './Metadata/MetadatasConnector'; import MetadatasConnector from './Metadata/MetadatasConnector';
@ -11,9 +11,9 @@ function MetadataSettings() {
showSave={false} showSave={false}
/> />
<PageContentBodyConnector> <PageContentBody>
<MetadatasConnector /> <MetadatasConnector />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,6 +1,6 @@
import React from 'react'; import React from 'react';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import NotificationsConnector from './Notifications/NotificationsConnector'; import NotificationsConnector from './Notifications/NotificationsConnector';
@ -11,9 +11,9 @@ function NotificationSettings() {
showSave={false} showSave={false}
/> />
<PageContentBodyConnector> <PageContentBody>
<NotificationsConnector /> <NotificationsConnector />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -2,7 +2,7 @@ import React, { Component } from 'react';
import { DndProvider } from 'react-dnd'; import { DndProvider } from 'react-dnd';
import HTML5Backend from 'react-dnd-html5-backend'; import HTML5Backend from 'react-dnd-html5-backend';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import QualityProfilesConnector from './Quality/QualityProfilesConnector'; import QualityProfilesConnector from './Quality/QualityProfilesConnector';
import LanguageProfilesConnector from './Language/LanguageProfilesConnector'; import LanguageProfilesConnector from './Language/LanguageProfilesConnector';
@ -24,14 +24,14 @@ class Profiles extends Component {
showSave={false} showSave={false}
/> />
<PageContentBodyConnector> <PageContentBody>
<DndProvider backend={HTML5Backend}> <DndProvider backend={HTML5Backend}>
<QualityProfilesConnector /> <QualityProfilesConnector />
<LanguageProfilesConnector /> <LanguageProfilesConnector />
<DelayProfilesConnector /> <DelayProfilesConnector />
<ReleaseProfilesConnector /> <ReleaseProfilesConnector />
</DndProvider> </DndProvider>
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,6 +1,6 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import QualityDefinitionsConnector from './Definition/QualityDefinitionsConnector'; import QualityDefinitionsConnector from './Definition/QualityDefinitionsConnector';
@ -54,12 +54,12 @@ class Quality extends Component {
onSavePress={this.onSavePress} onSavePress={this.onSavePress}
/> />
<PageContentBodyConnector> <PageContentBody>
<QualityDefinitionsConnector <QualityDefinitionsConnector
onChildMounted={this.onChildMounted} onChildMounted={this.onChildMounted}
onChildStateChange={this.onChildStateChange} onChildStateChange={this.onChildStateChange}
/> />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,7 +1,7 @@
import React from 'react'; import React from 'react';
import Link from 'Components/Link/Link'; import Link from 'Components/Link/Link';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from './SettingsToolbarConnector'; import SettingsToolbarConnector from './SettingsToolbarConnector';
import styles from './Settings.css'; import styles from './Settings.css';
@ -12,7 +12,7 @@ function Settings() {
hasPendingChanges={false} hasPendingChanges={false}
/> />
<PageContentBodyConnector> <PageContentBody>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/mediamanagement" to="/settings/mediamanagement"
@ -122,7 +122,7 @@ function Settings() {
<div className={styles.summary}> <div className={styles.summary}>
Calendar, date and color impaired options Calendar, date and color impaired options
</div> </div>
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,6 +1,6 @@
import React from 'react'; import React from 'react';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import TagsConnector from './TagsConnector'; import TagsConnector from './TagsConnector';
@ -11,9 +11,9 @@ function TagSettings() {
showSave={false} showSave={false}
/> />
<PageContentBodyConnector> <PageContentBody>
<TagsConnector /> <TagsConnector />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -4,7 +4,7 @@ import { inputTypes } from 'Helpers/Props';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import FieldSet from 'Components/FieldSet'; import FieldSet from 'Components/FieldSet';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector'; import SettingsToolbarConnector from 'Settings/SettingsToolbarConnector';
import Form from 'Components/Form/Form'; import Form from 'Components/Form/Form';
import FormGroup from 'Components/Form/FormGroup'; import FormGroup from 'Components/Form/FormGroup';
@ -65,7 +65,7 @@ class UISettings extends Component {
onSavePress={onSavePress} onSavePress={onSavePress}
/> />
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && isFetching &&
<LoadingIndicator /> <LoadingIndicator />
@ -176,7 +176,7 @@ class UISettings extends Component {
</FieldSet> </FieldSet>
</Form> </Form>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -5,7 +5,7 @@ import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import Table from 'Components/Table/Table'; import Table from 'Components/Table/Table';
import TableBody from 'Components/Table/TableBody'; import TableBody from 'Components/Table/TableBody';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
@ -93,7 +93,7 @@ class Backups extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -141,7 +141,7 @@ class Backups extends Component {
</TableBody> </TableBody>
</Table> </Table>
} }
</PageContentBodyConnector> </PageContentBody>
<RestoreBackupModalConnector <RestoreBackupModalConnector
isOpen={this.state.isRestoreModalOpen} isOpen={this.state.isRestoreModalOpen}

View File

@ -7,7 +7,7 @@ import TableBody from 'Components/Table/TableBody';
import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper'; import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptionsModalWrapper';
import TablePager from 'Components/Table/TablePager'; import TablePager from 'Components/Table/TablePager';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton'; import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
@ -73,7 +73,7 @@ function LogsTable(props) {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -116,7 +116,7 @@ function LogsTable(props) {
/> />
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -6,7 +6,7 @@ import Link from 'Components/Link/Link';
import LoadingIndicator from 'Components/Loading/LoadingIndicator'; import LoadingIndicator from 'Components/Loading/LoadingIndicator';
import Table from 'Components/Table/Table'; import Table from 'Components/Table/Table';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
@ -73,7 +73,7 @@ class LogFiles extends Component {
/> />
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
<Alert> <Alert>
<div> <div>
Log files are located in: {location} Log files are located in: {location}
@ -119,7 +119,7 @@ class LogFiles extends Component {
!isFetching && !items.length && !isFetching && !items.length &&
<div>No log files</div> <div>No log files</div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,6 +1,6 @@
import React, { Component } from 'react'; import React, { Component } from 'react';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import HealthConnector from './Health/HealthConnector'; import HealthConnector from './Health/HealthConnector';
import DiskSpaceConnector from './DiskSpace/DiskSpaceConnector'; import DiskSpaceConnector from './DiskSpace/DiskSpaceConnector';
import AboutConnector from './About/AboutConnector'; import AboutConnector from './About/AboutConnector';
@ -14,12 +14,12 @@ class Status extends Component {
render() { render() {
return ( return (
<PageContent title="Status"> <PageContent title="Status">
<PageContentBodyConnector> <PageContentBody>
<HealthConnector /> <HealthConnector />
<DiskSpaceConnector /> <DiskSpaceConnector />
<AboutConnector /> <AboutConnector />
<MoreInfo /> <MoreInfo />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -1,16 +1,16 @@
import React from 'react'; import React from 'react';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import ScheduledTasksConnector from './Scheduled/ScheduledTasksConnector'; import ScheduledTasksConnector from './Scheduled/ScheduledTasksConnector';
import QueuedTasksConnector from './Queued/QueuedTasksConnector'; import QueuedTasksConnector from './Queued/QueuedTasksConnector';
function Tasks() { function Tasks() {
return ( return (
<PageContent title="Tasks"> <PageContent title="Tasks">
<PageContentBodyConnector> <PageContentBody>
<ScheduledTasksConnector /> <ScheduledTasksConnector />
<QueuedTasksConnector /> <QueuedTasksConnector />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -8,7 +8,7 @@ import SpinnerButton from 'Components/Link/SpinnerButton';
import Icon from 'Components/Icon'; import Icon from 'Components/Icon';
import Label from 'Components/Label'; import Label from 'Components/Label';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import UpdateChanges from './UpdateChanges'; import UpdateChanges from './UpdateChanges';
import styles from './Updates.css'; import styles from './Updates.css';
@ -45,7 +45,7 @@ class Updates extends Component {
return ( return (
<PageContent title="Updates"> <PageContent title="Updates">
<PageContentBodyConnector> <PageContentBody>
{ {
!isPopulated && !hasError && !isPopulated && !hasError &&
<LoadingIndicator /> <LoadingIndicator />
@ -194,7 +194,7 @@ class Updates extends Component {
Failed to update settings Failed to update settings
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -12,7 +12,7 @@ import Table from 'Components/Table/Table';
import TableBody from 'Components/Table/TableBody'; import TableBody from 'Components/Table/TableBody';
import TablePager from 'Components/Table/TablePager'; import TablePager from 'Components/Table/TablePager';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
@ -188,7 +188,7 @@ class CutoffUnmet extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -262,7 +262,7 @@ class CutoffUnmet extends Component {
/> />
</div> </div>
} }
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }

View File

@ -12,7 +12,7 @@ import Table from 'Components/Table/Table';
import TableBody from 'Components/Table/TableBody'; import TableBody from 'Components/Table/TableBody';
import TablePager from 'Components/Table/TablePager'; import TablePager from 'Components/Table/TablePager';
import PageContent from 'Components/Page/PageContent'; import PageContent from 'Components/Page/PageContent';
import PageContentBodyConnector from 'Components/Page/PageContentBodyConnector'; import PageContentBody from 'Components/Page/PageContentBody';
import PageToolbar from 'Components/Page/Toolbar/PageToolbar'; import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection'; import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator'; import PageToolbarSeparator from 'Components/Page/Toolbar/PageToolbarSeparator';
@ -201,7 +201,7 @@ class Missing extends Component {
</PageToolbarSection> </PageToolbarSection>
</PageToolbar> </PageToolbar>
<PageContentBodyConnector> <PageContentBody>
{ {
isFetching && !isPopulated && isFetching && !isPopulated &&
<LoadingIndicator /> <LoadingIndicator />
@ -280,7 +280,7 @@ class Missing extends Component {
isOpen={isInteractiveImportModalOpen} isOpen={isInteractiveImportModalOpen}
onModalClose={this.onInteractiveImportModalClose} onModalClose={this.onInteractiveImportModalClose}
/> />
</PageContentBodyConnector> </PageContentBody>
</PageContent> </PageContent>
); );
} }