diff --git a/app/javascript/gabsocial/components/modal/pro_upgrade_modal.js b/app/javascript/gabsocial/components/modal/pro_upgrade_modal.js index a130cb05..7172b303 100644 --- a/app/javascript/gabsocial/components/modal/pro_upgrade_modal.js +++ b/app/javascript/gabsocial/components/modal/pro_upgrade_modal.js @@ -1,57 +1,101 @@ import { defineMessages, injectIntl } from 'react-intl' import ImmutablePureComponent from 'react-immutable-pure-component' +import { + URL_GAB_PRO, + DEFAULT_THEME, +} from '../../constants' import Button from '../button' import Text from '../text' +import Icon from '../icon' +import Image from '../image' import ModalLayout from './modal_layout' const messages = defineMessages({ title: { id: 'promo.gab_pro', defaultMessage: 'Upgrade to GabPRO' }, + upgrade: { id: 'promo.upgrade', defaultMessage: 'Upgrade' }, + learnMore: { id: 'promo.learn_more', defaultMessage: 'Learn more' }, text: { id: 'pro_upgrade_modal.text', defaultMessage: 'Gab is fully funded by people like you. Please consider supporting us on our mission to defend free expression online for all people.' }, - benefits: { id: 'pro_upgrade_modal.benefits', defaultMessage: 'Here are just some of the benefits that thousands of GabPRO members receive:' }, + benefits: { id: 'pro_upgrade_modal.benefits', defaultMessage: 'Here are some benefits that GabPRO members receive:' }, +}) + +const mapStateToProps = (state) => ({ + theme: state.getIn(['settings', 'displayOptions', 'theme'], DEFAULT_THEME), }) export default @injectIntl +@connect(mapStateToProps) class ProUpgradeModal extends ImmutablePureComponent { static propTypes = { intl: PropTypes.object.isRequired, onClose: PropTypes.func.isRequired, + theme: PropTypes.string.isRequired, } render() { - const { intl, onClose } = this.props + const { + intl, + onClose, + theme, + } = this.props + + const imgSuffix = (theme === 'light' || !theme) ? 'light' : 'dark' + + const title = ( + + + Upgrade to Gab + + PRO + + ) return ( - + {intl.formatMessage(messages.text)} - + {intl.formatMessage(messages.benefits)}
- • Schedule Posts - • Get Verified - • Create Groups - • Larger Video and Image Uploads - • Receive the PRO Badge - • Remove in-feed promotions - • Compose Rich Text posts (Bold, Italic, Underline and more) +
- +
+ + +
) diff --git a/public/headers/pro-features-dark.png b/public/headers/pro-features-dark.png new file mode 100644 index 00000000..9c8550ca Binary files /dev/null and b/public/headers/pro-features-dark.png differ diff --git a/public/headers/pro-features-light.png b/public/headers/pro-features-light.png new file mode 100644 index 00000000..718c269b Binary files /dev/null and b/public/headers/pro-features-light.png differ