@{account.get('acct')} }} />,\n          confirm: intl.formatMessage(messages.unfollowConfirm),\n          onConfirm: () => dispatch(unfollowAccount(account.get('id'))),\n        }));\n      } else {\n        dispatch(unfollowAccount(account.get('id')));\n      }\n    } else {\n      dispatch(followAccount(account.get('id')));\n    }\n  },\n\n  onBlock (account) {\n    if (account.getIn(['relationship', 'blocking'])) {\n      dispatch(unblockAccount(account.get('id')));\n    } else {\n      dispatch(blockAccount(account.get('id')));\n    }\n  },\n\n  onMute (account) {\n    if (account.getIn(['relationship', 'muting'])) {\n      dispatch(unmuteAccount(account.get('id')));\n    } else {\n      dispatch(initMuteModal(account));\n    }\n  },\n\n\n  onMuteNotifications (account, notifications) {\n    dispatch(muteAccount(account.get('id'), notifications));\n  },\n});\n\nexport default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Account));\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/containers/account_container.js","import React, { Fragment } from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport PropTypes from 'prop-types';\nimport Avatar from './avatar';\nimport DisplayName from './display_name';\nimport Permalink from './permalink';\nimport IconButton from './icon_button';\nimport { defineMessages, injectIntl } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\nimport { me } from '../initial_state';\n\nconst messages = defineMessages({\n  follow: { id: 'account.follow', defaultMessage: 'Follow' },\n  unfollow: { id: 'account.unfollow', defaultMessage: 'Unfollow' },\n  requested: { id: 'account.requested', defaultMessage: 'Awaiting approval' },\n  unblock: { id: 'account.unblock', defaultMessage: 'Unblock @{name}' },\n  unmute: { id: 'account.unmute', defaultMessage: 'Unmute @{name}' },\n  mute_notifications: { id: 'account.mute_notifications', defaultMessage: 'Mute notifications from @{name}' },\n  unmute_notifications: { id: 'account.unmute_notifications', defaultMessage: 'Unmute notifications from @{name}' },\n});\n\n@injectIntl\nexport default class Account extends ImmutablePureComponent {\n\n  static propTypes = {\n    account: ImmutablePropTypes.map.isRequired,\n    onFollow: PropTypes.func.isRequired,\n    onBlock: PropTypes.func.isRequired,\n    onMute: PropTypes.func.isRequired,\n    onMuteNotifications: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n    hidden: PropTypes.bool,\n  };\n\n  handleFollow = () => {\n    this.props.onFollow(this.props.account);\n  }\n\n  handleBlock = () => {\n    this.props.onBlock(this.props.account);\n  }\n\n  handleMute = () => {\n    this.props.onMute(this.props.account);\n  }\n\n  handleMuteNotifications = () => {\n    this.props.onMuteNotifications(this.props.account, true);\n  }\n\n  handleUnmuteNotifications = () => {\n    this.props.onMuteNotifications(this.props.account, false);\n  }\n\n  render () {\n    const { account, intl, hidden } = this.props;\n\n    if (!account) {\n      return ;\n    }\n\n    if (hidden) {\n      return (\n        \n          {account.get('display_name')}\n          {account.get('username')}\n        
\n      );\n    }\n\n    let buttons;\n\n    if (account.get('id') !== me && account.get('relationship', null) !== null) {\n      const following = account.getIn(['relationship', 'following']);\n      const requested = account.getIn(['relationship', 'requested']);\n      const blocking  = account.getIn(['relationship', 'blocking']);\n      const muting  = account.getIn(['relationship', 'muting']);\n\n      if (requested) {\n        buttons = ;\n      } else if (blocking) {\n        buttons = ;\n      } else if (muting) {\n        let hidingNotificationsButton;\n        if (account.getIn(['relationship', 'muting_notifications'])) {\n          hidingNotificationsButton = ;\n        } else {\n          hidingNotificationsButton = ;\n        }\n        buttons = (\n          \n            \n            {hidingNotificationsButton}\n          \n        );\n      } else if (!account.get('moved') || following) {\n        buttons = ;\n      }\n    }\n\n    return (\n      \n        
\n          
\n            \n            \n          \n\n          
\n            {buttons}\n          
\n        
\n      
 \n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/components/account.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport Avatar from '../../../components/avatar';\nimport IconButton from '../../../components/icon_button';\nimport Permalink from '../../../components/permalink';\nimport { FormattedMessage } from 'react-intl';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class NavigationBar extends ImmutablePureComponent {\n\n  static propTypes = {\n    account: ImmutablePropTypes.map.isRequired,\n    onClose: PropTypes.func,\n  };\n\n  render () {\n    return (\n      \n        
\n          {this.props.account.get('acct')}\n          \n        \n\n        
\n          
\n            @{this.props.account.get('acct')}\n          \n\n          
\n        
\n\n        
\n      
 \n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/navigation_bar.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { defineMessages, injectIntl, FormattedMessage } from 'react-intl';\nimport Overlay from 'react-overlays/lib/Overlay';\nimport Motion from '../../ui/util/optional_motion';\nimport spring from 'react-motion/lib/spring';\nimport { searchEnabled } from '../../../initial_state';\n\nconst messages = defineMessages({\n  placeholder: { id: 'search.placeholder', defaultMessage: 'Search' },\n});\n\nclass SearchPopout extends React.PureComponent {\n\n  static propTypes = {\n    style: PropTypes.object,\n  };\n\n  render () {\n    const { style } = this.props;\n    const extraInformation = searchEnabled ?  : ;\n    return (\n      \n        
\n          {({ opacity, scaleX, scaleY }) => (\n            \n              
\n\n              
\n                - #example 
 \n                - @username@domain 
 \n                - URL 
 \n                - URL 
 \n              
\n\n              {extraInformation}\n            
 \n          )}\n        \n      
 \n    );\n  }\n\n}\n\n@injectIntl\nexport default class Search extends React.PureComponent {\n\n  static propTypes = {\n    value: PropTypes.string.isRequired,\n    submitted: PropTypes.bool,\n    onChange: PropTypes.func.isRequired,\n    onSubmit: PropTypes.func.isRequired,\n    onClear: PropTypes.func.isRequired,\n    onShow: PropTypes.func.isRequired,\n    intl: PropTypes.object.isRequired,\n  };\n\n  state = {\n    expanded: false,\n  };\n\n  handleChange = (e) => {\n    this.props.onChange(e.target.value);\n  }\n\n  handleClear = (e) => {\n    e.preventDefault();\n\n    if (this.props.value.length > 0 || this.props.submitted) {\n      this.props.onClear();\n    }\n  }\n\n  handleKeyDown = (e) => {\n    if (e.key === 'Enter') {\n      e.preventDefault();\n      this.props.onSubmit();\n    } else if (e.key === 'Escape') {\n      document.querySelector('.ui').parentElement.focus();\n    }\n  }\n\n  noop () {\n\n  }\n\n  handleFocus = () => {\n    this.setState({ expanded: true });\n    this.props.onShow();\n  }\n\n  handleBlur = () => {\n    this.setState({ expanded: false });\n  }\n\n  render () {\n    const { intl, value, submitted } = this.props;\n    const { expanded } = this.state;\n    const hasValue = value.length > 0 || submitted;\n\n    return (\n      \n        
\n\n        
\n          \n          \n        
\n\n        
\n          \n        \n      
 \n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search.js","import { connect }   from 'react-redux';\nimport NavigationBar from '../components/navigation_bar';\nimport { me } from '../../../initial_state';\n\nconst mapStateToProps = state => {\n  return {\n    account: state.getIn(['accounts', me]),\n  };\n};\n\nexport default connect(mapStateToProps)(NavigationBar);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/navigation_container.js","import { connect } from 'react-redux';\nimport {\n  changeSearch,\n  clearSearch,\n  submitSearch,\n  showSearch,\n} from '../../../actions/search';\nimport Search from '../components/search';\n\nconst mapStateToProps = state => ({\n  value: state.getIn(['search', 'value']),\n  submitted: state.getIn(['search', 'submitted']),\n});\n\nconst mapDispatchToProps = dispatch => ({\n\n  onChange (value) {\n    dispatch(changeSearch(value));\n  },\n\n  onClear () {\n    dispatch(clearSearch());\n  },\n\n  onSubmit () {\n    dispatch(submitSearch());\n  },\n\n  onShow () {\n    dispatch(showSearch());\n  },\n\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Search);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/search_container.js","import { connect } from 'react-redux';\nimport SearchResults from '../components/search_results';\n\nconst mapStateToProps = state => ({\n  results: state.getIn(['search', 'results']),\n});\n\nexport default connect(mapStateToProps)(SearchResults);\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/containers/search_results_container.js","import React from 'react';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\nimport { FormattedMessage } from 'react-intl';\nimport AccountContainer from '../../../containers/account_container';\nimport StatusContainer from '../../../containers/status_container';\nimport { Link } from 'react-router-dom';\nimport ImmutablePureComponent from 'react-immutable-pure-component';\n\nexport default class SearchResults extends ImmutablePureComponent {\n\n  static propTypes = {\n    results: ImmutablePropTypes.map.isRequired,\n  };\n\n  render () {\n    const { results } = this.props;\n\n    let accounts, statuses, hashtags;\n    let count = 0;\n\n    if (results.get('accounts') && results.get('accounts').size > 0) {\n      count   += results.get('accounts').size;\n      accounts = (\n        \n          
\n\n          {results.get('accounts').map(accountId => 
)}\n        
 \n      );\n    }\n\n    if (results.get('statuses') && results.get('statuses').size > 0) {\n      count   += results.get('statuses').size;\n      statuses = (\n        \n          
\n\n          {results.get('statuses').map(statusId => )}\n        \n      );\n    }\n\n    if (results.get('hashtags') && results.get('hashtags').size > 0) {\n      count += results.get('hashtags').size;\n      hashtags = (\n        \n          
\n\n          {results.get('hashtags').map(hashtag => (\n            \n              #{hashtag}\n            \n          ))}\n        \n      );\n    }\n\n    return (\n      \n        
\n          \n        
\n\n        {accounts}\n        {statuses}\n        {hashtags}\n      
 \n    );\n  }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./app/javascript/mastodon/features/compose/components/search_results.js"],"sourceRoot":""}