|
|
@ -10,8 +10,8 @@ import { connect } from 'react-redux';
|
|
|
|
// Components.
|
|
|
|
// Components.
|
|
|
|
import IconButton from 'flavours/glitch/components/icon_button';
|
|
|
|
import IconButton from 'flavours/glitch/components/icon_button';
|
|
|
|
import TextIconButton from './text_icon_button';
|
|
|
|
import TextIconButton from './text_icon_button';
|
|
|
|
import Dropdown from './dropdown';
|
|
|
|
import DropdownContainer from '../containers/dropdown_container';
|
|
|
|
import PrivacyDropdown from './privacy_dropdown';
|
|
|
|
import PrivacyDropdownContainer from '../containers/privacy_dropdown_container';
|
|
|
|
import LanguageDropdown from '../containers/language_dropdown_container';
|
|
|
|
import LanguageDropdown from '../containers/language_dropdown_container';
|
|
|
|
import ImmutablePureComponent from 'react-immutable-pure-component';
|
|
|
|
import ImmutablePureComponent from 'react-immutable-pure-component';
|
|
|
|
|
|
|
|
|
|
|
@ -126,15 +126,11 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
hasPoll: PropTypes.bool,
|
|
|
|
hasPoll: PropTypes.bool,
|
|
|
|
intl: PropTypes.object.isRequired,
|
|
|
|
intl: PropTypes.object.isRequired,
|
|
|
|
onChangeAdvancedOption: PropTypes.func,
|
|
|
|
onChangeAdvancedOption: PropTypes.func,
|
|
|
|
onChangeVisibility: PropTypes.func,
|
|
|
|
|
|
|
|
onChangeContentType: PropTypes.func,
|
|
|
|
onChangeContentType: PropTypes.func,
|
|
|
|
onTogglePoll: PropTypes.func,
|
|
|
|
onTogglePoll: PropTypes.func,
|
|
|
|
onDoodleOpen: PropTypes.func,
|
|
|
|
onDoodleOpen: PropTypes.func,
|
|
|
|
onModalClose: PropTypes.func,
|
|
|
|
|
|
|
|
onModalOpen: PropTypes.func,
|
|
|
|
|
|
|
|
onToggleSpoiler: PropTypes.func,
|
|
|
|
onToggleSpoiler: PropTypes.func,
|
|
|
|
onUpload: PropTypes.func,
|
|
|
|
onUpload: PropTypes.func,
|
|
|
|
privacy: PropTypes.string,
|
|
|
|
|
|
|
|
contentType: PropTypes.string,
|
|
|
|
contentType: PropTypes.string,
|
|
|
|
resetFileKey: PropTypes.number,
|
|
|
|
resetFileKey: PropTypes.number,
|
|
|
|
spoiler: PropTypes.bool,
|
|
|
|
spoiler: PropTypes.bool,
|
|
|
@ -195,12 +191,8 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
hasPoll,
|
|
|
|
hasPoll,
|
|
|
|
onChangeAdvancedOption,
|
|
|
|
onChangeAdvancedOption,
|
|
|
|
onChangeContentType,
|
|
|
|
onChangeContentType,
|
|
|
|
onChangeVisibility,
|
|
|
|
|
|
|
|
onTogglePoll,
|
|
|
|
onTogglePoll,
|
|
|
|
onModalClose,
|
|
|
|
|
|
|
|
onModalOpen,
|
|
|
|
|
|
|
|
onToggleSpoiler,
|
|
|
|
onToggleSpoiler,
|
|
|
|
privacy,
|
|
|
|
|
|
|
|
resetFileKey,
|
|
|
|
resetFileKey,
|
|
|
|
spoiler,
|
|
|
|
spoiler,
|
|
|
|
showContentTypeChoice,
|
|
|
|
showContentTypeChoice,
|
|
|
@ -239,7 +231,7 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
multiple
|
|
|
|
multiple
|
|
|
|
style={{ display: 'none' }}
|
|
|
|
style={{ display: 'none' }}
|
|
|
|
/>
|
|
|
|
/>
|
|
|
|
<Dropdown
|
|
|
|
<DropdownContainer
|
|
|
|
disabled={disabled || !allowMedia}
|
|
|
|
disabled={disabled || !allowMedia}
|
|
|
|
icon='paperclip'
|
|
|
|
icon='paperclip'
|
|
|
|
items={[
|
|
|
|
items={[
|
|
|
@ -255,8 +247,6 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
},
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
]}
|
|
|
|
onChange={this.handleClickAttach}
|
|
|
|
onChange={this.handleClickAttach}
|
|
|
|
onModalClose={onModalClose}
|
|
|
|
|
|
|
|
onModalOpen={onModalOpen}
|
|
|
|
|
|
|
|
title={formatMessage(messages.attach)}
|
|
|
|
title={formatMessage(messages.attach)}
|
|
|
|
/>
|
|
|
|
/>
|
|
|
|
{!!pollLimits && (
|
|
|
|
{!!pollLimits && (
|
|
|
@ -275,15 +265,9 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
/>
|
|
|
|
/>
|
|
|
|
)}
|
|
|
|
)}
|
|
|
|
<hr />
|
|
|
|
<hr />
|
|
|
|
<PrivacyDropdown
|
|
|
|
<PrivacyDropdownContainer disabled={disabled || isEditing} />
|
|
|
|
disabled={disabled || isEditing}
|
|
|
|
|
|
|
|
onChange={onChangeVisibility}
|
|
|
|
|
|
|
|
onModalClose={onModalClose}
|
|
|
|
|
|
|
|
onModalOpen={onModalOpen}
|
|
|
|
|
|
|
|
value={privacy}
|
|
|
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
{showContentTypeChoice && (
|
|
|
|
{showContentTypeChoice && (
|
|
|
|
<Dropdown
|
|
|
|
<DropdownContainer
|
|
|
|
disabled={disabled}
|
|
|
|
disabled={disabled}
|
|
|
|
icon={(contentTypeItems[contentType.split('/')[1]] || {}).icon}
|
|
|
|
icon={(contentTypeItems[contentType.split('/')[1]] || {}).icon}
|
|
|
|
items={[
|
|
|
|
items={[
|
|
|
@ -292,8 +276,6 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
contentTypeItems.markdown,
|
|
|
|
contentTypeItems.markdown,
|
|
|
|
]}
|
|
|
|
]}
|
|
|
|
onChange={onChangeContentType}
|
|
|
|
onChange={onChangeContentType}
|
|
|
|
onModalClose={onModalClose}
|
|
|
|
|
|
|
|
onModalOpen={onModalOpen}
|
|
|
|
|
|
|
|
title={formatMessage(messages.content_type)}
|
|
|
|
title={formatMessage(messages.content_type)}
|
|
|
|
value={contentType}
|
|
|
|
value={contentType}
|
|
|
|
/>
|
|
|
|
/>
|
|
|
@ -308,7 +290,7 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
/>
|
|
|
|
/>
|
|
|
|
)}
|
|
|
|
)}
|
|
|
|
<LanguageDropdown />
|
|
|
|
<LanguageDropdown />
|
|
|
|
<Dropdown
|
|
|
|
<DropdownContainer
|
|
|
|
disabled={disabled || isEditing}
|
|
|
|
disabled={disabled || isEditing}
|
|
|
|
icon='ellipsis-h'
|
|
|
|
icon='ellipsis-h'
|
|
|
|
items={advancedOptions ? [
|
|
|
|
items={advancedOptions ? [
|
|
|
@ -325,8 +307,6 @@ class ComposerOptions extends ImmutablePureComponent {
|
|
|
|
] : null}
|
|
|
|
] : null}
|
|
|
|
onChange={onChangeAdvancedOption}
|
|
|
|
onChange={onChangeAdvancedOption}
|
|
|
|
renderItemContents={this.renderToggleItemContents}
|
|
|
|
renderItemContents={this.renderToggleItemContents}
|
|
|
|
onModalClose={onModalClose}
|
|
|
|
|
|
|
|
onModalOpen={onModalOpen}
|
|
|
|
|
|
|
|
title={formatMessage(messages.advanced_options_icon_title)}
|
|
|
|
title={formatMessage(messages.advanced_options_icon_title)}
|
|
|
|
closeOnChange={false}
|
|
|
|
closeOnChange={false}
|
|
|
|
/>
|
|
|
|
/>
|
|
|
|