diff options
author | Starfall <us@starfall.systems> | 2023-04-14 19:22:47 -0500 |
---|---|---|
committer | Starfall <us@starfall.systems> | 2023-04-14 19:22:47 -0500 |
commit | 4fe1689de43f4404eb9530fcfbcbfb26d6c1c13a (patch) | |
tree | 6811b845bb7f4966b10dcefa3dea404246f161c7 /app/javascript/flavours/glitch/features/compose/index.js | |
parent | 65c1e53a32cabcdbb7bca57002bb0f6acdebe07e (diff) | |
parent | bed63f6dae0879ac840066b031229e0d139089cd (diff) |
Diffstat (limited to 'app/javascript/flavours/glitch/features/compose/index.js')
-rw-r--r-- | app/javascript/flavours/glitch/features/compose/index.js | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/app/javascript/flavours/glitch/features/compose/index.js b/app/javascript/flavours/glitch/features/compose/index.js deleted file mode 100644 index 8ca378672..000000000 --- a/app/javascript/flavours/glitch/features/compose/index.js +++ /dev/null @@ -1,116 +0,0 @@ -import React from 'react'; -import ComposeFormContainer from './containers/compose_form_container'; -import NavigationContainer from './containers/navigation_container'; -import PropTypes from 'prop-types'; -import ImmutablePropTypes from 'react-immutable-proptypes'; -import { connect } from 'react-redux'; -import { mountCompose, unmountCompose } from 'flavours/glitch/actions/compose'; -import { injectIntl, defineMessages } from 'react-intl'; -import classNames from 'classnames'; -import SearchContainer from './containers/search_container'; -import Motion from '../ui/util/optional_motion'; -import spring from 'react-motion/lib/spring'; -import SearchResultsContainer from './containers/search_results_container'; -import { me, mascot } from 'flavours/glitch/initial_state'; -import { cycleElefriendCompose } from 'flavours/glitch/actions/compose'; -import HeaderContainer from './containers/header_container'; -import Column from 'flavours/glitch/components/column'; -import { Helmet } from 'react-helmet'; - -const messages = defineMessages({ - compose: { id: 'navigation_bar.compose', defaultMessage: 'Compose new post' }, -}); - -const mapStateToProps = (state, ownProps) => ({ - elefriend: state.getIn(['compose', 'elefriend']), - showSearch: ownProps.multiColumn ? state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) : false, -}); - -const mapDispatchToProps = (dispatch, { intl }) => ({ - onClickElefriend () { - dispatch(cycleElefriendCompose()); - }, - - onMount () { - dispatch(mountCompose()); - }, - - onUnmount () { - dispatch(unmountCompose()); - }, -}); - -export default @connect(mapStateToProps, mapDispatchToProps) -@injectIntl -class Compose extends React.PureComponent { - static propTypes = { - multiColumn: PropTypes.bool, - showSearch: PropTypes.bool, - elefriend: PropTypes.number, - onClickElefriend: PropTypes.func, - onMount: PropTypes.func, - onUnmount: PropTypes.func, - intl: PropTypes.object.isRequired, - }; - - componentDidMount () { - this.props.onMount(); - } - - componentWillUnmount () { - this.props.onUnmount(); - } - - render () { - const { - elefriend, - intl, - multiColumn, - onClickElefriend, - showSearch, - } = this.props; - const computedClass = classNames('drawer', `mbstobon-${elefriend}`); - - if (multiColumn) { - return ( - <div className={computedClass} role='region' aria-label={intl.formatMessage(messages.compose)}> - <HeaderContainer /> - - {multiColumn && <SearchContainer />} - - <div className='drawer__pager'> - <div className='drawer__inner'> - <NavigationContainer /> - - <ComposeFormContainer /> - - <div className='drawer__inner__mastodon'> - {mascot ? <img alt='' draggable='false' src={mascot} /> : <button className='mastodon' onClick={onClickElefriend} />} - </div> - </div> - - <Motion defaultStyle={{ x: -100 }} style={{ x: spring(showSearch ? 0 : -100, { stiffness: 210, damping: 20 }) }}> - {({ x }) => ( - <div className='drawer__inner darker' style={{ transform: `translateX(${x}%)`, visibility: x === -100 ? 'hidden' : 'visible' }}> - <SearchResultsContainer /> - </div> - )} - </Motion> - </div> - </div> - ); - } - - return ( - <Column> - <NavigationContainer /> - <ComposeFormContainer /> - - <Helmet> - <meta name='robots' content='noindex' /> - </Helmet> - </Column> - ); - } - -} |