59 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import React from 'react';
 | |
| import Motion from 'flavours/glitch/util/optional_motion';
 | |
| import spring from 'react-motion/lib/spring';
 | |
| import { defineMessages, FormattedMessage } from 'react-intl';
 | |
| import { profileLink } from 'flavours/glitch/util/backend_links';
 | |
| 
 | |
| //  This is the spring used with our motion.
 | |
| const motionSpring = spring(1, { damping: 35, stiffness: 400 });
 | |
| 
 | |
| //  Messages.
 | |
| const messages = defineMessages({
 | |
|   disclaimer: {
 | |
|     defaultMessage: 'Your account is not {locked}. Anyone can follow you to view your follower-only posts.',
 | |
|     id: 'compose_form.lock_disclaimer',
 | |
|   },
 | |
|   locked: {
 | |
|     defaultMessage: 'locked',
 | |
|     id: 'compose_form.lock_disclaimer.lock',
 | |
|   },
 | |
| });
 | |
| 
 | |
| //  The component.
 | |
| export default function ComposerWarning () {
 | |
|   let lockedLink = <FormattedMessage {...messages.locked} />;
 | |
|   if (profileLink !== undefined) {
 | |
|     lockedLink = <a href={profileLink}>{lockedLink}</a>;
 | |
|   }
 | |
|   return (
 | |
|     <Motion
 | |
|       defaultStyle={{
 | |
|         opacity: 0,
 | |
|         scaleX: 0.85,
 | |
|         scaleY: 0.75,
 | |
|       }}
 | |
|       style={{
 | |
|         opacity: motionSpring,
 | |
|         scaleX: motionSpring,
 | |
|         scaleY: motionSpring,
 | |
|       }}
 | |
|     >
 | |
|       {({ opacity, scaleX, scaleY }) => (
 | |
|         <div
 | |
|           className='composer--warning'
 | |
|           style={{
 | |
|             opacity: opacity,
 | |
|             transform: `scale(${scaleX}, ${scaleY})`,
 | |
|           }}
 | |
|         >
 | |
|           <FormattedMessage
 | |
|             {...messages.disclaimer}
 | |
|             values={{ locked: lockedLink }}
 | |
|           />
 | |
|         </div>
 | |
|       )}
 | |
|     </Motion>
 | |
|   );
 | |
| }
 | |
| 
 | |
| ComposerWarning.propTypes = {};
 |