diff options
author | Claire <claire.github-309c@sitedethib.com> | 2023-02-26 15:06:03 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-26 15:06:03 +0100 |
commit | 6a4be4e96677eb3e1303ddcab8f8b4bea7298453 (patch) | |
tree | 52627bf6dd64b0a33e280442b2de60b4e802a544 /app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js | |
parent | 45087c1092143e95dfcc85b6c9abc5c6c0a0a5c2 (diff) | |
parent | b91756fd4d475edff890e460c44b3a7245ad51e2 (diff) |
Merge pull request #2119 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js')
-rw-r--r-- | app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js b/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js deleted file mode 100644 index 02cf72289..000000000 --- a/app/javascript/flavours/glitch/features/compose/components/privacy_dropdown.js +++ /dev/null @@ -1,88 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import ImmutablePropTypes from 'react-immutable-proptypes'; -import { defineMessages, injectIntl } from 'react-intl'; -import Dropdown from './dropdown'; - -const messages = defineMessages({ - public_short: { id: 'privacy.public.short', defaultMessage: 'Public' }, - public_long: { id: 'privacy.public.long', defaultMessage: 'Visible for all' }, - unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' }, - unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Visible for all, but opted-out of discovery features' }, - private_short: { id: 'privacy.private.short', defaultMessage: 'Followers only' }, - private_long: { id: 'privacy.private.long', defaultMessage: 'Visible for followers only' }, - direct_short: { id: 'privacy.direct.short', defaultMessage: 'Only people I mention' }, - direct_long: { id: 'privacy.direct.long', defaultMessage: 'Visible for mentioned users only' }, - change_privacy: { id: 'privacy.change', defaultMessage: 'Adjust status privacy' }, -}); - -export default @injectIntl -class PrivacyDropdown extends React.PureComponent { - - static propTypes = { - isUserTouching: PropTypes.func, - onModalOpen: PropTypes.func, - onModalClose: PropTypes.func, - value: PropTypes.string.isRequired, - onChange: PropTypes.func.isRequired, - noDirect: PropTypes.bool, - container: PropTypes.func, - disabled: PropTypes.bool, - intl: PropTypes.object.isRequired, - }; - - render () { - const { value, onChange, onModalOpen, onModalClose, disabled, noDirect, container, isUserTouching, intl: { formatMessage } } = this.props; - - // We predefine our privacy items so that we can easily pick the - // dropdown icon later. - const privacyItems = { - direct: { - icon: 'envelope', - meta: formatMessage(messages.direct_long), - name: 'direct', - text: formatMessage(messages.direct_short), - }, - private: { - icon: 'lock', - meta: formatMessage(messages.private_long), - name: 'private', - text: formatMessage(messages.private_short), - }, - public: { - icon: 'globe', - meta: formatMessage(messages.public_long), - name: 'public', - text: formatMessage(messages.public_short), - }, - unlisted: { - icon: 'unlock', - meta: formatMessage(messages.unlisted_long), - name: 'unlisted', - text: formatMessage(messages.unlisted_short), - }, - }; - - const items = [privacyItems.public, privacyItems.unlisted, privacyItems.private]; - - if (!noDirect) { - items.push(privacyItems.direct); - } - - return ( - <Dropdown - disabled={disabled} - icon={(privacyItems[value] || {}).icon} - items={items} - onChange={onChange} - isUserTouching={isUserTouching} - onModalClose={onModalClose} - onModalOpen={onModalOpen} - title={formatMessage(messages.change_privacy)} - container={container} - value={value} - /> - ); - } - -} |