Delete unused container components
This commit is contained in:
parent
52621e8db8
commit
36f5b6cea8
3 changed files with 0 additions and 191 deletions
|
@ -1,41 +0,0 @@
|
||||||
import React from 'react';
|
|
||||||
import { Provider } from 'react-redux';
|
|
||||||
import PropTypes from 'prop-types';
|
|
||||||
import configureStore from '../store/configureStore';
|
|
||||||
import { hydrateStore } from '../actions/store';
|
|
||||||
import { IntlProvider, addLocaleData } from 'react-intl';
|
|
||||||
import { getLocale } from '../locales';
|
|
||||||
import Compose from '../features/standalone/compose';
|
|
||||||
import initialState from '../initial_state';
|
|
||||||
import { fetchCustomEmojis } from '../actions/custom_emojis';
|
|
||||||
|
|
||||||
const { localeData, messages } = getLocale();
|
|
||||||
addLocaleData(localeData);
|
|
||||||
|
|
||||||
const store = configureStore();
|
|
||||||
|
|
||||||
if (initialState) {
|
|
||||||
store.dispatch(hydrateStore(initialState));
|
|
||||||
}
|
|
||||||
|
|
||||||
store.dispatch(fetchCustomEmojis());
|
|
||||||
|
|
||||||
export default class TimelineContainer extends React.PureComponent {
|
|
||||||
|
|
||||||
static propTypes = {
|
|
||||||
locale: PropTypes.string.isRequired,
|
|
||||||
};
|
|
||||||
|
|
||||||
render() {
|
|
||||||
const { locale } = this.props;
|
|
||||||
|
|
||||||
return (
|
|
||||||
<IntlProvider locale={locale} messages={messages}>
|
|
||||||
<Provider store={store}>
|
|
||||||
<Compose />
|
|
||||||
</Provider>
|
|
||||||
</IntlProvider>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,92 +0,0 @@
|
||||||
import React, { PureComponent, Fragment } from 'react';
|
|
||||||
import ReactDOM from 'react-dom';
|
|
||||||
import PropTypes from 'prop-types';
|
|
||||||
import { IntlProvider, addLocaleData } from 'react-intl';
|
|
||||||
import { getLocale } from '../locales';
|
|
||||||
import MediaGallery from '../components/media_gallery';
|
|
||||||
import Video from '../features/video';
|
|
||||||
import Card from '../features/status/components/card';
|
|
||||||
import Poll from 'soapbox/components/poll';
|
|
||||||
import ModalRoot from '../components/modal_root';
|
|
||||||
import MediaModal from '../features/ui/components/media_modal';
|
|
||||||
import { List as ImmutableList, fromJS } from 'immutable';
|
|
||||||
|
|
||||||
const { localeData, messages } = getLocale();
|
|
||||||
addLocaleData(localeData);
|
|
||||||
|
|
||||||
const MEDIA_COMPONENTS = { MediaGallery, Video, Card, Poll };
|
|
||||||
|
|
||||||
export default class MediaContainer extends PureComponent {
|
|
||||||
|
|
||||||
static propTypes = {
|
|
||||||
locale: PropTypes.string.isRequired,
|
|
||||||
components: PropTypes.object.isRequired,
|
|
||||||
};
|
|
||||||
|
|
||||||
state = {
|
|
||||||
media: null,
|
|
||||||
index: null,
|
|
||||||
time: null,
|
|
||||||
};
|
|
||||||
|
|
||||||
handleOpenMedia = (media, index) => {
|
|
||||||
document.body.classList.add('with-modals--active');
|
|
||||||
this.setState({ media, index });
|
|
||||||
}
|
|
||||||
|
|
||||||
handleOpenVideo = (video, time) => {
|
|
||||||
const media = ImmutableList([video]);
|
|
||||||
|
|
||||||
document.body.classList.add('with-modals--active');
|
|
||||||
this.setState({ media, time });
|
|
||||||
}
|
|
||||||
|
|
||||||
handleCloseMedia = () => {
|
|
||||||
document.body.classList.remove('with-modals--active');
|
|
||||||
this.setState({ media: null, index: null, time: null });
|
|
||||||
}
|
|
||||||
|
|
||||||
render() {
|
|
||||||
const { locale, components } = this.props;
|
|
||||||
|
|
||||||
return (
|
|
||||||
<IntlProvider locale={locale} messages={messages}>
|
|
||||||
<Fragment>
|
|
||||||
{[].map.call(components, (component, i) => {
|
|
||||||
const componentName = component.getAttribute('data-component');
|
|
||||||
const Component = MEDIA_COMPONENTS[componentName];
|
|
||||||
const { media, card, poll, ...props } = JSON.parse(component.getAttribute('data-props'));
|
|
||||||
|
|
||||||
Object.assign(props, {
|
|
||||||
...(media ? { media: fromJS(media) } : {}),
|
|
||||||
...(card ? { card: fromJS(card) } : {}),
|
|
||||||
...(poll ? { poll: fromJS(poll) } : {}),
|
|
||||||
|
|
||||||
...(componentName === 'Video' ? {
|
|
||||||
onOpenVideo: this.handleOpenVideo,
|
|
||||||
} : {
|
|
||||||
onOpenMedia: this.handleOpenMedia,
|
|
||||||
}),
|
|
||||||
});
|
|
||||||
|
|
||||||
return ReactDOM.createPortal(
|
|
||||||
<Component {...props} key={`media-${i}`} />,
|
|
||||||
component,
|
|
||||||
);
|
|
||||||
})}
|
|
||||||
<ModalRoot onClose={this.handleCloseMedia}>
|
|
||||||
{this.state.media && (
|
|
||||||
<MediaModal
|
|
||||||
media={this.state.media}
|
|
||||||
index={this.state.index || 0}
|
|
||||||
time={this.state.time}
|
|
||||||
onClose={this.handleCloseMedia}
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
</ModalRoot>
|
|
||||||
</Fragment>
|
|
||||||
</IntlProvider>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,58 +0,0 @@
|
||||||
import React, { Fragment } from 'react';
|
|
||||||
import ReactDOM from 'react-dom';
|
|
||||||
import { Provider } from 'react-redux';
|
|
||||||
import PropTypes from 'prop-types';
|
|
||||||
import configureStore from '../store/configureStore';
|
|
||||||
import { hydrateStore } from '../actions/store';
|
|
||||||
import { IntlProvider, addLocaleData } from 'react-intl';
|
|
||||||
import { getLocale } from '../locales';
|
|
||||||
import PublicTimeline from '../features/standalone/public_timeline';
|
|
||||||
import HashtagTimeline from '../features/standalone/hashtag_timeline';
|
|
||||||
import ModalContainer from '../features/ui/containers/modal_container';
|
|
||||||
import initialState from '../initial_state';
|
|
||||||
|
|
||||||
const { localeData, messages } = getLocale();
|
|
||||||
addLocaleData(localeData);
|
|
||||||
|
|
||||||
const store = configureStore();
|
|
||||||
|
|
||||||
if (initialState) {
|
|
||||||
store.dispatch(hydrateStore(initialState));
|
|
||||||
}
|
|
||||||
|
|
||||||
export default class TimelineContainer extends React.PureComponent {
|
|
||||||
|
|
||||||
static propTypes = {
|
|
||||||
locale: PropTypes.string.isRequired,
|
|
||||||
hashtag: PropTypes.string,
|
|
||||||
local: PropTypes.bool,
|
|
||||||
};
|
|
||||||
|
|
||||||
render() {
|
|
||||||
const { locale, hashtag, local } = this.props;
|
|
||||||
|
|
||||||
let timeline;
|
|
||||||
|
|
||||||
if (hashtag) {
|
|
||||||
timeline = <HashtagTimeline hashtag={hashtag} />;
|
|
||||||
} else {
|
|
||||||
timeline = <PublicTimeline local={local} />;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<IntlProvider locale={locale} messages={messages}>
|
|
||||||
<Provider store={store}>
|
|
||||||
<Fragment>
|
|
||||||
{timeline}
|
|
||||||
|
|
||||||
{ReactDOM.createPortal(
|
|
||||||
<ModalContainer />,
|
|
||||||
document.getElementById('modal-container'),
|
|
||||||
)}
|
|
||||||
</Fragment>
|
|
||||||
</Provider>
|
|
||||||
</IntlProvider>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in a new issue