about summary refs log tree commit diff
path: root/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
diff options
context:
space:
mode:
authorYamagishi Kazutoshi <ykzts@desire.sh>2017-05-12 21:44:10 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-05-12 14:44:10 +0200
commit2991a7cfe685ca9b42230b7030b9e7d0ece94c88 (patch)
tree72da0f02bc6279aeab1e641fb7d51527efcb9066 /app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
parent44a3584e2d54488393e6f50e482ed61d2765e312 (diff)
Use ES Class Fields & Static Properties (#3008)
Use ES Class Fields & Static Properties (currently stage 2) for improve class outlook.

Added babel-plugin-transform-class-properties as a Babel plugin.
Diffstat (limited to 'app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js')
-rw-r--r--app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js33
1 files changed, 13 insertions, 20 deletions
diff --git a/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js b/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
index c95b4a279..9ad0ae296 100644
--- a/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
+++ b/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
@@ -40,28 +40,26 @@ let EmojiPicker; // load asynchronously
 
 class EmojiPickerDropdown extends React.PureComponent {
 
-  constructor (props, context) {
-    super(props, context);
-    this.setRef = this.setRef.bind(this);
-    this.handleChange = this.handleChange.bind(this);
-    this.onHideDropdown = this.onHideDropdown.bind(this);
-    this.onShowDropdown = this.onShowDropdown.bind(this);
-    this.state = {
-      active: false,
-      loading: false
-    };
-  }
+  static propTypes = {
+    intl: PropTypes.object.isRequired,
+    onPickEmoji: PropTypes.func.isRequired
+  };
+
+  state = {
+    active: false,
+    loading: false
+  };
 
-  setRef (c) {
+  setRef = (c) => {
     this.dropdown = c;
   }
 
-  handleChange (data) {
+  handleChange = (data) => {
     this.dropdown.hide();
     this.props.onPickEmoji(data);
   }
 
-  onShowDropdown () {
+  onShowDropdown = () => {
     this.setState({active: true});
     if (!EmojiPicker) {
       this.setState({loading: true});
@@ -75,7 +73,7 @@ class EmojiPickerDropdown extends React.PureComponent {
     }
   }
 
-  onHideDropdown () {
+  onHideDropdown = () => {
     this.setState({active: false});
   }
 
@@ -138,9 +136,4 @@ class EmojiPickerDropdown extends React.PureComponent {
 
 }
 
-EmojiPickerDropdown.propTypes = {
-  intl: PropTypes.object.isRequired,
-  onPickEmoji: PropTypes.func.isRequired
-};
-
 export default injectIntl(EmojiPickerDropdown);